免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 16498 | 回复: 20

网卡软中断不能分发到CPU多核,导致服务器瓶颈 [复制链接]

论坛徽章:
0
发表于 2010-07-18 16:28 |显示全部楼层
请教各位高人一个问题,关于Linux服务器的网络吞吐能力的:

最近发现LVS服务器出现瓶颈,网卡软中断不能分发到CPU多核

网卡硬件是支持RSS的,不明白为什么不能分发到多核上,操作系统是CentOS5.4 64。

详细过程请参见:
http://hi.baidu.com/higkoo/blog/ ... 6843d28cb10d17.html

论坛徽章:
0
发表于 2010-07-18 18:17 |显示全部楼层
修改设备中断方式。通过修改设置中断/proc/irq/${网卡中断号}/smp_affinity:

测试服务器CPU为四核,理论上网卡的smp_affinity值为1、2、4、8分别对应cpu0、cpu1、cpu2、cpu3。

结果:

                 1、网卡的smp_affinity默认值为8,测试过程中软中断全部由cpu3处理。正确

                 2、设置smp_affinity = 1,测试过程中软中断全部由cpu0处理。正确

                 3、设置smp_affinity = 2,测试过程中软中断全部由cpu1处理。正确

                 4、设置smp_affinity = 4,测试过程中软中断全部由cpu2处理。正确

                 5、设置smp_affinity = 5,测试过程中软中断全部由cpu0处理,预期应该分配给cpu0和cpu2处理。无效

                 6、设置smp_affinity = f,测试过程中软中断全部由cpu0处理,预期应该分配给cpu0、cpu1、cpu2和cpu2处理。无效

        即:修改smp_affinity的功能只针对单核有效。

论坛徽章:
0
发表于 2010-07-20 20:52 |显示全部楼层
有没人知道的?沉了

论坛徽章:
0
发表于 2010-08-11 14:32 |显示全部楼层
我也想知道,帮你顶一下,别沉了:wink:

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2010-08-11 15:22 |显示全部楼层
这个是RSS网卡,应该可以支持多队列的。软中断还不能均衡啊

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2010-08-11 15:24 |显示全部楼层
修改设备中断方式。通过修改设置中断/proc/irq/${网卡中断号}/smp_affinity:

这个值的修改实际上是调整硬中断的CPU。

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2010-08-11 15:25 |显示全部楼层
LZ给出的连接中,说明了多网卡负载的方式是可行的。

论坛徽章:
0
发表于 2010-08-12 11:07 |显示全部楼层
哥们,试试新的内核2.6.35-rc6.
我的git库中的代码显示新的内核支持RPS(Remote Packet Steering)
用于你说的多CPU负载均衡,你可以等一等,
2.6.35.1版本的内核应该就会有这个功能了。

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2010-08-12 11:47 |显示全部楼层
如果已经支持RSS的话,应该已经包括了RPS的功能了

论坛徽章:
0
发表于 2010-08-13 09:03 |显示全部楼层
他支持了RSS,就不需要RPS了。

修改设备中断方式。通过修改设置中断/proc/irq/${网卡中断号}/smp_affinity:

测试服务器CPU为四核,理论上网卡的smp_affinity值为1、2、4、8分别对应cpu0、cpu1、cpu2、cpu3。


楼主估计是调错了:支持RSS的网卡,同一个网卡有多个硬件中断(每个队列一个中断,你可以把每个队列想像成单个逻辑网卡),所以,要调整也是每个队列的中断号的中断亲和。

1、楼主应该首先检查你的系统的硬件清单中每个队列的中断号,再来调整;
2、如果发现每个网卡没有队列对应的中断,则有可能是内核或驱动不支持;
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP