免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 9209 | 回复: 17
打印 上一主题 下一主题

请教:linux网卡驱动改造--64字节小包转发率千兆线速 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-08-19 14:23 |只看该作者 |倒序浏览
请教大侠,
采用5000P工控平台,网卡芯片组是Eight Intel 82571EB 。操作系统是linux2.6.30,网卡驱动默认。

经过测试,64字节小包的吞吐率只有线速的30%-40%,为了提高到90%-100%的转发率,请问有什么好办法?(NAPI好像已经在e1000网卡驱动中了。)

论坛徽章:
0
2 [报告]
发表于 2009-08-19 19:44 |只看该作者

回复 #1 xiaomagee 的帖子

有做过网络性能优化的吗?欢迎指点

论坛徽章:
0
3 [报告]
发表于 2009-08-19 21:20 |只看该作者
我看了一下代码,你如何确定napi已经打开了?
e1000的驱动中,需要选择CONFIG_NET_POLL_CONTROLLER,这样他的poll函数才编译的。
最好确认一下是否已经打开了。

我也很关心如何优化网络,等待高手解答。

论坛徽章:
0
4 [报告]
发表于 2009-08-19 23:06 |只看该作者
这个很正常,小包的带宽的利用率低。这是无法提高的。

论坛徽章:
0
5 [报告]
发表于 2009-08-19 23:25 |只看该作者

回复 #4 emmoblin 的帖子

难道没有专对小包的优化方法吗?

论坛徽章:
0
6 [报告]
发表于 2009-08-20 13:09 |只看该作者
我知道有人做过在内核中处理GE线速,而且是带了NAT的;不过有没有支持最小包不太确定。

这种东西首先要想办法分析出瓶颈在哪吧,看一下CPU占用率,如果已经近100%了,则说明CPU可能支撑不了,或者处理上过于复杂了,或锁碰撞比较多。NAPI是不是中断加轮循?GE线速的pps是1.488Mpps,要求还是比较苛刻的。

论坛徽章:
0
7 [报告]
发表于 2009-08-20 20:41 |只看该作者

回复 #6 Cyberman.Wu 的帖子

NAPI 我觉的更应该是轮询加中断。
轮询函数被系统调用,轮询的时候关闭中断,其他时间可以相应中断。e1000的驱动是这样做得。

论坛徽章:
0
8 [报告]
发表于 2009-08-21 10:18 |只看该作者
e1000的NAPI确定打开了,重新编译内核即可。


CPU利用率和小包转发率是互为因果的关系。小包转发没有优化好,才会造成CPU100%。


确信小包的转发性能可以接近线速,只是现在还不知道具体优化方法。  望有经验的高手指点。

论坛徽章:
0
9 [报告]
发表于 2009-08-21 22:57 |只看该作者
这个看看加入debug信息,打印出个个函数的用时,,方法比较笨,但是没经验,只能一点一点挖了。

论坛徽章:
0
10 [报告]
发表于 2009-08-23 12:23 |只看该作者
原帖由 xiaomagee 于 2009-8-21 10:18 发表
e1000的NAPI确定打开了,重新编译内核即可。


CPU利用率和小包转发率是互为因果的关系。小包转发没有优化好,才会造成CPU100%。


确信小包的转发性能可以接近线速,只是现在还不知道具体优化方法。  望 ...


CPU利用率和小包转发率并不是绝对的因果关系,有可能CPU用得不多但转发率就上不去,这种情况多数是一些互斥机制等方面设计上有问题。如果确认CPU已经跑到近100%了,那要利用一些手段去做统计了,看时间花在哪个地方了。Intel平台有一个VTun,但没用过,你可以查一下有没有帮助。另外Linux的OProfile能不能统计内核的使用也需要自己去看一看。效率的优化往往不是能只靠分析和设计搞定的,更多需要去根据实际的运行情况去分析和优化。

你的转发是怎么做的,利用Linux的Brigde功能,还是自己简单封装在两个网卡之间直接转发?

[ 本帖最后由 Cyberman.Wu 于 2009-8-23 12:24 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP