首页
科技
网络性能提升实战:单队列vs多队列性能实测对比

网络性能提升实战:单队列vs多队列性能实测对比

热心网友
转载
2025-09-05

本文通过单队列与多队列网卡配置对比,观察丢包率、延迟和 CPU 利用率的差异,对比两种模式下的性能差异。

在某项目上线后,用户访问量激增,Kubernetes 集群承载的网络压力骤升。通过 Prometheus 监控发现,高峰期丢包严重;结合top命令观察,部分 CPU 核心软中断SI占用率飙升至 100%,成为系统性能瓶颈。

图片

本文通过单队列与多队列网卡配置对比,观察丢包率、延迟和 CPU 利用率的差异,对比两种模式下的性能差异。

一、实验准备

1️⃣ 主机角色与软件环境

服务器端 IP:10.xx.16.103客户端 IP:10.xx.16.102安装工具:

yum install -y iperf3 # 压测网络吞吐量yum install -y sysstat # CPU 性能监控 (mpstat)

2️⃣ 网卡队列模式

查看当前网卡队列数

ethtool -l enp1s0

输出示例:

Channel parameters for enp1s0:Pre-set maximums:RX: 0TX: 0Other: 0Combined: 1Current hardware settings:RX: 0TX: 0Other: 0单队列→ RX:1 / TX:1多队列→ RX/TX 可大于 1,如 4 或 8

二、单队列压测

1️⃣ iperf3 测试带宽

UDP 模式,4 并发连接:

iperf3 -c 10.xx.16.103 -u -b 1G -P 4

测试结果:

[root@reg ~]#iperf3 -c 10.xx.16.103 -u -b 1G -P 4- - - - - - - - - - - - - - - - - - - - - - - - -[SUM] 0.00-10.00 sec 1.71 GBytes 1.47 Gbits/sec 0.000 ms 0/1267733 (0%) sender[SUM] 0.00-10.22 sec 1.13 GBytes 952 Mbits/sec 0.067 ms 427544/1267651 (34%) receiver

2️⃣ ping 测试丢包

[root@reg ~]# ping 10.xx.16.103PING 10.xx.16.103 (10.xx.16.103) 56(84) bytes of data.64 bytes from 10.xx.16.103: icmp_seq=3 ttl=64 time=0.276 ms64 bytes from 10.xx.16.103: icmp_seq=5 ttl=64 time=17.7 ms64 bytes from 10.xx.16.103: icmp_seq=6 ttl=64 time=14.7 ms64 bytes from 10.xx.16.103: icmp_seq=7 ttl=64 time=12.4 ms64 bytes from 10.xx.16.103: icmp_seq=8 ttl=64 time=16.1 ms64 bytes from 10.xx.16.103: icmp_seq=12 ttl=64 time=16.6 ms64 bytes from 10.217.16.103: icmp_seq=14 ttl=64 time=0.439 ms64 bytes from 10.xx.16.103: icmp_seq=15 ttl=64 time=0.398 ms--- 10.xx.16.103 ping statistics ---17 packets transmitted, 12 received, 29.4118% packet loss, time 16458msrtt min/avg/max/mdev = 0.276/6.674/17.705/7.558 ms丢包率 29%延迟波动大(最大达到 17ms)

3️⃣ CPU 负载分析

[root@localhost ~]# mpstat -P ALL 1.....11时29分07秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle11时29分08秒 all 20.81 0.00 17.84 0.00 0.00 6.82 0.00 0.00 0.00 54.5311时29分08秒 0 30.43 0.00 20.65 0.00 0.00 1.09 0.00 0.00 0.00 47.8311时29分08秒 1 13.64 0.00 15.91 0.00 0.00 0.00 0.00 0.00 0.00 70.4511时29分08秒 2 18.56 0.00 19.59 0.00 0.00 0.00 0.00 0.00 0.00 61.8611时29分08秒 3 25.00 0.00 22.92 0.00 0.00 1.04 0.00 0.00 0.00 51.0411时29分08秒 4 13.10 0.00 34.52 0.00 0.00 0.00 0.00 0.00 0.00 52.3811时29分08秒 5 17.71 0.00 21.88 0.00 0.00 0.00 0.00 0.00 0.00 60.4211时29分08秒 6 29.03 0.00 19.35 0.00 0.00 0.00 0.00 0.00 0.00 51.6111时29分08秒 7 25.77 0.00 20.62 0.00 0.00 0.00 0.00 0.00 0.00 53.6111时29分08秒 8 30.39 0.00 23.53 0.00 0.00 0.00 0.00 0.00 0.00 46.0811时29分08秒 9 21.11 0.00 12.22 0.00 0.00 0.00 0.00 0.00 0.00 66.6711时29分08秒 10 25.00 0.00 10.71 0.00 0.00 1.19 0.00 0.00 0.00 63.1011时29分08秒 11 0.00 0.00 1.01 0.00 0.00 98.99 0.00 0.00 0.00 0.0011时29分08秒 12 23.16 0.00 18.95 0.00 0.00 0.00 0.00 0.00 0.00 57.8911时29分08秒 13 26.04 0.00 18.75 0.00 0.00 0.00 0.00 0.00 0.00 55.2111时29分08秒 14 9.76 0.00 12.20 0.00 0.00 0.00 0.00 0.00 0.00 78.0511时29分08秒 15 22.47 0.00 12.36 0.00 0.00 0.00 0.00 0.00 0.00 65.17%soft(软中断)高达 98% 在单核(第11核)说明网络中断处理高度集中,成为性能瓶颈

网卡队列利用率(看是否有单个队列打满)

[root@localhost ~]# ethtool -i enp1s0driver: virtio_net #检查驱动类型version: 1.0.0firmware-version: expansion-rom-version: bus-info: 0000:01:00.0supports-statistics: yessupports-test: nosupports-eeprom-access: nosupports-register-dump: nosupports-priv-flags: no[root@localhost ~]# cat /proc/interrupts |grep -i virtio288 Edge virtio0-config 69: 0 0 0 0 0 0 0 23 0 0 0 3367977005 0 0 0 0 ITS-MSI 524289 Edge virtio0-input.0 70: 0 0 0 0 0 0 0 0 1 185898 0 0 0 0 0 0 ITS-MSI 524

三、多队列压测

1️⃣ 修改网卡队列数(KVM 虚拟机示例)

首先修改网卡为多队列

virsh console 10.xx.xx.103-host.... #新增队列为8,不要超过cpu核数

验证:

Channel parameters for enp1s0:Pre-set maximums:RX: 0TX: 0Other: 0Combined: 8Current hardware settings:RX: 0TX: 0Other: 0Combined: 8

2️⃣ iperf3 与 ping 测试

UDP 模式压测:

iperf3 -c 10.xx.16.103 -u -b 1G -P 4丢包率降为0%

64 bytes from 10.xx.16.103: icmp_seq=158 ttl=64 time=0.368 ms64 bytes from 10.xx.16.103: icmp_seq=159 ttl=64 time=0.451 ms64 bytes from 10.xx.16.103: icmp_seq=160 ttl=64 time=1.33 ms64 bytes from 10.xx.16.103: icmp_seq=161 ttl=64 time=0.428 ms--- 10.xx.16.103 ping statistics ---161 packets transmitted, 161 received, 0% packet loss, time 165183msrtt min/avg/max/mdev = 0.295/1.329/42.263/3.980 msping 测试也无丢包,延迟稳定 <1.5ms

3️⃣ CPU 负载分析

检查cpu负载

[root@localhost ~]# mpstat -P ALL 1......12时04分31秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle12时04分32秒 all 55.94 0.00 17.79 0.00 0.00 22.54 0.00 0.00 0.00 3.7312时04分32秒 0 46.67 0.00 33.33 0.00 0.00 0.00 0.00 0.00 0.00 20.0012时04分32秒 1 68.04 0.00 24.74 0.00 0.00 7.22 0.00 0.00 0.00 0.0012时04分32秒 2 65.66 0.00 19.19 0.00 0.00 5.05 0.00 0.00 0.00 10.1012时04分32秒 3 85.86 0.00 12.12 0.00 0.00 1.01 0.00 0.00 0.00 1.0112时04分32秒 4 18.00 0.00 3.00 0.00 0.00 79.00 0.00 0.00 0.00 0.0012时04分32秒 5 73.74 0.00 25.25 0.00 0.00 0.00 0.00 0.00 0.00 1.0112时04分32秒 6 74.49 0.00 19.39 0.00 0.00 6.12 0.00 0.00 0.00 0.0012时04分32秒 7 64.89 0.00 26.60 0.00 0.00 2.13 0.00 0.00 0.00 6.3812时04分32秒 8 50.51 0.00 37.37 0.00 0.00 7.07 0.00 0.00 0.00 5.0512时04分32秒 9 87.76 0.00 12.24 0.00 0.00 0.00 0.00 0.00 0.00 0.0012时04分32秒 10 9.09 0.00 7.07 0.00 0.00 82.83 0.00 0.00 0.00 1.0112时04分32秒 11 15.46 0.00 6.19 0.00 0.00 77.32 0.00 0.00 0.00 1.0312时04分32秒 12 73.91 0.00 20.65 0.00 0.00 0.00 0.00 0.00 0.00 5.4312时04分32秒 13 82.47 0.00 16.49 0.00 0.00 1.03 0.00 0.00 0.00 0.0012时04分32秒 14 75.51 0.00 19.39 0.00 0.00 1.02 0.00 0.00 0.00 4.0812时04分32秒 15 5.94 0.00 3.96 0.00 0.00 84.16 0.00 0.00 0.00 5.94%soft 分布在多个核上网络中断处理负载均衡,单核压力显著降低

图片

四、性能瓶颈分析

结论:

1. 单队列模式下,中断处理集中在单核,导致软中断 CPU 饱和、丢包和延迟高。

2. 多队列模式通过多核并行处理网络流量,显著提升吞吐量,降低延迟和丢包。

3. 高并发、高速网络环境下,多队列几乎是网络性能优化的必备手段。

五、配置命令汇总

修改为单队列:

ethtool -L eth0 rx 1 tx 1修改为多队列(示例 4 个队列):

ethtool -L eth0 rx 4 tx 4查看队列数:

ethtool -l eth0

六、总结

单队列:适合低速、低并发场景,CPU 负载集中,容易成为瓶颈。多队列:充分利用多核 CPU,提高吞吐量、降低延迟和丢包率,适用于高性能场景、虚拟化环境和大流量应用。实践中,合理配置队列数并结合 RSS/RPS/XPS 可以让网络性能发挥到极致。

来源:https://www.51cto.com/article/822961.html

免责声明

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章

代号三国曝甄宓实机影像,王星辰出演引爆期待

全新实机影像曝光,UE5打造的真人互动影游代号三国:龙起近日展示了由演员王星辰饰演的甄宓角色形象。视频中,人物造型精致,场景表现力十足,充分展现了项目在视觉呈现上的高水准。本作是一款以穿越三国为背景

2025-10-28.

小米14 Ultra或提前发布:圆形Deco配2亿像素潜望长焦

近日,数码领域传来新消息,一款备受瞩目的超大杯旗舰新机有了更多影像细节曝光,多方推测其极有可能是全新的小米17 Ultra。知名数码博主@数码闲聊站 发布的信息显示,这款新机将搭载第五代骁龙8至尊版

2025-10-28.

2025商务视频转文字工具挑选指南:实用与安全的关键要点

商务场景中,视频转文字工具已成为提升效率的关键助手,但数据安全始终是核心考量。无论是客户需求的保密记录、项目方案的细节讨论,还是报价信息的敏感内容,一旦泄露都可能对企业造成严重损失。2025年,商务

2025-10-28.

华为Mate70 Air或10月29日预售:轻薄设计+亲民价,11月开售

华为Mate系列即将迎来一位新成员——Mate 70 Air。这款以轻薄设计为核心卖点的旗舰机型,近日被数码圈广泛热议。据业内消息,该机有望于10月29日开启预热活动,正式开售时间则预计在11月6日

2025-10-28.

三星Galaxy智能生态双十一攻略:实用贴心选购指南

又是一年“购物狂欢季”,有人早早加好购物车,有人还在纠结到底该冲哪一单。其实,比起盲目扫货,今年更流行的是——买点真正能提升幸福感的好东西。例如包含了耳机、手表和平板电脑的三星Galaxy智能生态产

2025-10-28.

热门教程

更多
  • 游戏攻略
  • 安卓教程
  • 苹果教程
  • 电脑教程

最新下载

更多
决战平安京oppo
决战平安京oppo 角色扮演 2025-10-28更新
查看
忘仙2
忘仙2 角色扮演 2025-10-28更新
查看
暗黑高校
暗黑高校 动作冒险 2025-10-28更新
查看
妖鸡三国手游
妖鸡三国手游 棋牌策略 2025-10-28更新
查看
战地模拟器2
战地模拟器2 飞行射击 2025-10-28更新
查看
奇妙碰碰车
奇妙碰碰车 休闲益智 2025-10-28更新
查看
镜花奇缘手游
镜花奇缘手游 角色扮演 2025-10-28更新
查看
不休骑士2手游
不休骑士2手游 角色扮演 2025-10-28更新
查看
极无双
极无双 角色扮演 2025-10-28更新
查看
蘑菇战争2
蘑菇战争2 棋牌策略 2025-10-28更新
查看