cpu负载均衡与网络

这篇具有很好参考价值的文章主要介绍了cpu负载均衡与网络。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

当数据包到达时,网卡通过DMA复制数据包并发送中断,Linux内核收集这些数据包并完成中断处理。
随着网卡越来越快,基于中断会因大量传入数据包而导致 IRQ 瘫痪,消耗大部分 CPU 功率。

NAPI(中断+轮训)与现在常见的 1 Gbps 网卡配合使用。
但是,对于10Gbps、20Gbps甚至40Gbps的网卡,NAPI可能还不够Receive Side Scaling(RSS)多个RX / TX队列过程的数据包当接收到数据包时,会对数据包应用过滤器并将数据包分发到RX 队列。
echo 3 > /proc/irq/xxx/smp_affinity

RSS提供硬件队列

Receive Packet Steering 散列是所谓的第 4 层散列(l4 散列),它基于源 IP、源端口、目的 IP 和目的端口,由网卡或__skb_set_sw_hash() 计算。

设置rps在cpu0/1上均衡
echo 3 > /sys/class/net /eth0/queues/rx-0/rps_cpus
从 eth0 中队列 0 接收的数据包进入 CPU 1~3。

驱动程序在 sk_buff 中包装一个数据包后,它将到达netif_rx_internal()或netif_receive_skb_internal(),然后到达 get_rps_cpu可以在 CPU 之间分担数据包处理的负载

Receive Flow Steering(RFS)基于流分发数据包
echo 32768 > /proc/sys/net/core/rps_sock_flow_entries
当调度器将应用程序迁移到新 CPU 时,旧 CPU 队列中剩余的数据包变得未完成,应用程序可能会得到乱序的数据包。
为了解决这个问题,RFS 使用每个队列的rps_dev_flow_table来跟踪未完成的数据包。

ARFS加速接收流量转向SO_REUSEPORT支持多个进程或者线程绑定到同一端口

/proc/interrupt查看硬中断次数
/proc/softirq查看软中断次数

RPS由单一CPU核响应硬件中断,将大量网络接收包,通过多核间中断方式分发给其他空闲核文章来源地址https://www.toymoban.com/news/detail-516434.html

到了这里,关于cpu负载均衡与网络的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全---负载均衡案例

    为了方便解释,我们只用两个节点,启动之后,大家可以看到有 3 个容器(可想像成有 3 台服务器就成)。   因为两台节点都在相同的位置存在 ant.jsp,所以连接的时候也没出现什么异常。  一旦有一台机器上没有ant.jsap,那再次请求的时候,就会出现 404 错误,就是一会正常

    2024年02月11日
    浏览(39)
  • 网络负载均衡配置教程

    我们以虚拟机做实验来说明这个配置过程. 1. 确保三台服务器的操作系统一致,IP地址设置正确,最好在同一网段,服务器之间Ping没有问题。 假设三台服务器的IP分别为 1). 192.168.0.253 2). 192.168.0.254 3). 192.168.0.255 了网掩码:255.255.255.0 2. 配置三台服务器的网卡,确保“网络负载

    2024年02月05日
    浏览(29)
  • 网络安全01--负载均衡

    目录 一、环境准备 1.1三台虚拟机 二、开始搭建负载均衡: 2.1准备一下源 2.2正式安装 2.3Nginx安装情况 三、负载均衡--轮询(round robin) 3.1在 http 部分添加如下负载均衡配置: 3.2简单解释一下server端: 3.3最终实现结果: 3.2.1第一次访问: 4.2刷新: 四、负载均衡-权重(weigh

    2024年02月19日
    浏览(52)
  • 高并发负载均衡:网络协议原理(三)

    实验手册 步骤: 1)在node01中(作为LVS负载均衡服务器) ifconfig eth0:8 192.168.150.100/24 配置eth0网卡的2子接口虚拟地址为192.168.150.100,/24代表三个255一个0,因为一个255代表8个1,所以3*8的1,为24,设置子网掩码255.255.255.0。 上面是简写,全写为: ifconfig eth0:8 192.168.150.100 netmask

    2024年04月15日
    浏览(37)
  • Linux lvs负载均衡

    Linux Virtual Server(LVS)是一个基于Linux内核的开源软件项目,用于构建高性能、高可用性的服务器群集。LVS通过将客户端请求分发到一组后端服务器上的不同节点来实现负载均衡,从而提高系统的可扩展性和可靠性。 LVS的核心组件: IPVS(IP Virtual Server):IPVS是LVS的核心模块,

    2024年02月14日
    浏览(61)
  • 华为网络篇 RIP的负载均衡-29

    难度 2 复杂度 2 目录 一、实验原理 二、实验拓扑 三、实验步骤 四、实验过程 总结       RIP是使用跳数(经过路由的数量)作为metric值的,当网络上存在去往目标的路由有两条以上都是相同metric时,就出现了流量负载均衡。负载均衡有等价与非等价两种方式,路径的metric是

    2024年02月11日
    浏览(27)
  • 【云计算】云数据中心网络(七):负载均衡

    《 云网络 》系列,共包含以下文章: 云网络是未来的网络基础设施 云网络产品体系概述 云数据中心网络(一):VPC 云数据中心网络(二):弹性公网 IP 云数据中心网络(三):NAT 网关 云数据中心网络(四):IPv6 网关 云数据中心网络(五):对等连接 云数据中心网络(

    2024年04月28日
    浏览(31)
  • linux系统nginx做负载均衡

    作用 upstream配置 负载均衡算法 upstream 支持4种负载均衡调度算法 配置分类 热备 轮询 加权轮询 ip_hash 负载均衡配置状态参数 nginx配置7层协议及4层协议 七层协议做负载均衡 四层协议做负载均衡 nginx增加了一个 stream 模块,用来实现四层协议(网络层和传输层)的转发、代理、

    2024年01月17日
    浏览(38)
  • Linux--部署 Tomcat 及其负载均衡

    1.案例前置知识点 1)Tomcat简介        名称由来:Tomcat最初是由 Sun的软件构架师詹姆斯·邓肯·戴维森开发的。后来他帮助将其变 为开源项目,并由Sun贡献给Apache软件基金会。由于大部分开源项目O\\\'Reilly都会出一本相关的 书,并且将其封面设计成某个动物的素描,因此他希望

    2024年01月17日
    浏览(33)
  • 网络安全02--负载均衡下的webshell连接

    目录 一、环境准备 1.1ubentu虚拟机一台,docker环境,蚁剑 1.2环境压缩包(文件已上传资源): 二、开始复原 2.1上传ubentu: 2.2解压缩 2.3版本20没有docker-compose手动下载,包已上传资源 ​编辑 2.4问题:下载无法连接 2.5解决方法:ubentu上做代理,或xftp自己上传,我这里使用ub

    2024年02月19日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包