iKuai爱快流控路由

标题: 爱快软路由CPU&网卡超复杂环境搭配的经验分享 [打印本页]

作者: sd607858    时间: 2018-3-17 16:35
标题: 爱快软路由CPU&网卡超复杂环境搭配的经验分享
本帖最后由 sd607858 于 2020-9-3 22:12 编辑

因为有一个长期测试的时期,才能通过不同的硬件了解性能,本人的发表皆用客观的,事实的,有根据的进行描叙,文章版权归原作者和爱快论坛所有,转载请注明。
--笔名:酷酷蛇ID sd607858

    我不是专业的硬件设计师,但是严谨的说明书阅读者。
(, 下载次数: 168)
先看一张intel 的网卡图,博通和小螃蟹以及杀手网卡等其他网卡硬功能皆为类似。
1.0首先说说网卡队列及中断绑定对CPU的影响:
1.0.1默认队列绑定CPU物理核心,现在好的编程人员会对超线程虚拟核心也进行绑定。
1.0.2单核CPU配合2个以上队列的网卡会很快遇到瓶颈,且不能发挥网卡最高效能。比如82546最高8个队列,与之合理搭配的是8核心CPU(包含4C8T CPU,当然你可以选i7,默认选低功耗版本)
1.0.3爆发式连接数对于多核CPU与之配套的网卡会明显的减轻负载。比如网吧所有的机器同时下载(热门资源),那么连接数就会爆炸,这时用超多队列的网卡搭配低功耗超多核CPU几乎不会有明显的性能瓶颈。
1.0.4一个牛X的CPU搭配很差的低队列网卡,比如E5 2648L带82543GC,那么会出现网卡性能瓶颈(等待队列,等待区超出硬件限制就会出现丢包),此时负载增加比较严重的时候,游戏断线,网页打开延时,ping值不稳定出现。
1.0.5 ISP宽带满载情况下,多队列网卡丢包数量低于少队列网卡。
1.0.6 网卡队列和CPU频率无关。
1.0.7 超多队列网卡在P2P环境下的优势就是让你告别之前下载速度缓慢提升的现象(稀有资源除外),当然,迅雷会员也能缓解以上现象,但低队列的会看到CPU负载飙升,数据交换需要更多的CPU中断导致负载提高。
1.0.8 PC端的网卡队列受爱快WAN口网卡队列的影响,请用最好的网卡作为爱快WAN口。
1.0.9  未达到ISP宽带极限情况下,低队列的网卡ping值会低于高队列网卡。
1.0.10 队列起作用的是爱快WAN口,PC端网卡,而Lan口对队列只有队列累加,只要不超过WAN口队列即可。
1.0.11写一写部分网卡队列和CPU最佳搭配(发挥网卡全部性能)

2.0再说说CPU缓存性能机制
2.0.1 CPU缓存--简单的说缓存越大,同时运算量就大,支持的公式就多(指令集)。
2.0.2 部分有L3的AMD CPU缓存在爱快上只显示L2,并不完全了解未显示的L3是否被爱快利用(intel的单路没问题,双路也只显示单路缓存)。
2.0.3 CPU缓存直接导致同时使用的功能为多少,太小的缓存不能同时使用很多功能,比如增加流控、端口转发、VPN等负载。
2.0.4 缓存小了带机量会是瓶颈,连接数也是瓶颈。(详见官方CPU型号带机量参考)
2.0.5 CPU架构和缓存机制无关。(intel漏洞补丁目前只对SSD性能有严重影响,补漏后带来了功耗增加)
2.0.6 只要是x86架构的,一般都死在中断上,所以购买时,同价位的功耗差不多的情况下优先看缓存大小(不要在意品牌)。
3.0CPU频率及核心对网卡的影响
3.0.1 老CPU频率及其核心组成的带宽受主板前端总线影响,毕竟多一个北桥。
3.0.2 10G网卡单口最低要求Xeon服务器LGA1156级别或类似1366及其以上。
3.0.3 连接数吃核心,不吃频率。(多核高频肯定最好,频率低的情况下最好能有更多的内核)
3.0.4 CPU频率和核心多少直接告知了它的最大吞吐量,网卡总带宽会有固定的上限,比如10G网卡不能达到峰值你就要考虑CPU带宽因素。
4.0硬件优化手记
4.0.1 X58之前的主板,网卡交换数据要经过北桥,而不是直接在内存读取。
4.0.2 2011 X79 C200之后的服务器CPU的L3可以和网卡直接通讯(
英特尔®DDIO,包含2011第一代服务器平台,但不包括i3 i5 i7 E3等桌面型号,E5是最好的选择。
4.0.3 非“硬”网卡是需要CPU运算的,当你内网传输数据的时候CPU负载明显提升,请考虑更换“硬”网卡(RSS功能及其RXTX卸载)
4.0.4
支持2011平台新特性的网卡有:i210 i218 i350 x710等新型号,至于8257x,8258x,8259x都不支持2011的 英特尔®数据直接I/O技术(英特尔®DDIO


5.0 主板插槽速度详解
红字部分是你在这个接口使用的最高型号的网卡,不然网卡就不能全速咯~~!
注:网卡后带*及其颜色的有轻微损失。
32位PCI
33MHz 133M/s  1000Mbps 单口网卡*
66MHz 266M/s 1000Mbps 单口网卡

64位PCI-X                                     
66MHZ  4.096GT 1000MHz 4口网卡
100Mhz 6.400GT 1000MHZ 6口网卡
133MHz 8.192GT  8000MHz 单口光纤网卡或
10000Mbps 单口光纤网卡(半双工)

PCI Express 1.1双向速度:单向传输:带宽 此速度下最高型号网卡
PCI Express 1X       500MT/S:  250MT/S     4Gbps  1000Mbps 单口网卡
PCI Express 4X       2GT/S:        1GT/S       16Gbps 1000Mbps 4口网卡 4000Mbps单口光口网卡 10000Mbps 单口光网卡*
PCI Express 8X       4GT/S:        2GT/S       32Gbps 10000Mbps 单-双口网卡* 8000Mbps单口光网卡
PCI Express16X      8GT/S:        4GT/S       64Gbps

PCI Express 2.0 双向速度:单向传输:带宽 此速度下最高型号网卡
PCI Express 1X       1GT/S:         500MT/S   16Gbps   1000Mbps 双口网卡
PCI Express 4X       4GT/S:          2GT/S      32Gbps  1000Mbps 4-6口网卡  10000Mbps 单口网卡
PCI Express 8X       8GT/S:          4GT/S      64Gbps  10000Mbps 双口-四口网卡*
PCI Express16X      16GT/S:        8GT/S      128Gbps

PCI Express 3.0 双向速度:单向传输:总带宽
此速度下最高型号网卡
PCI Express 1X       2GT/S:          1GT/S      32Gbps   1000Mbps 双口网卡
PCI Express 4X       8GT/S:          4GT/S      64Gbps  1000Mbps 4-6口网卡  10Gbps 单口-双口网卡
PCI Express 8X       16GT/S:        8GT/S      128Gbps   10Gbps 四口网卡 40Gbps 单-双口网卡
PCI Express16X      32GT/S:      16GT/S       256Gbps  100Gbps 双口 56Gbps双口

PCI Express 4.0 双向速度:单向传输:总带宽 此速度下最高型号网卡
PCI Express 1X       8GT/S:          2GT/S       64Gbps   10Gbps 双口网卡
PCI Express 4X       16GT/S:        8GT/S       128Gbps  40Gbps 双口网卡
PCI Express 8X       32GT/S:        16GT/S     256Gbps  100Gbps 口网卡 56Gbps 2口网卡
PCI Express16X      64GT/S:        32GT/S      512Gbps

PCI Express 5.0 双向速度:单向传输:总带宽 此速度下最高型号网卡
PCI Express 1X       8GT/S:          4GT/S       128Gbps   40Gbps  单口网卡
PCI Express 4X       32GT/S:        16GT/S      256Gbps  40Gbps  4口网卡
PCI Express 8X       64GT/S:        32GT/S      512Gbps  200Gbps 2口网卡 100Gbps 4口网卡  
PCI Express16X      128GT/S:       64GT/S      1024Gbps  

为什么不提16x接口呢,因为部分服务器的物理16x接口只有8x,特别是超威。
PCI 1.0多为 10Mbps网卡
PCI 2.0多为 100Mbps网卡
PCI 2.2多为 1000Mbps网卡
PCI-X 64bit 多为2-6口千兆网卡或单口10G网卡
PCIe 1.0多为 1000Mbps网卡 千兆网卡
PCIe 2.0多为 10000Mbps网卡 10G万兆网卡
PCIe 3.0多为 40000Mbps网卡 40-56G网卡
PCIe 4.0多为 100000Mbps网卡 100G网卡
PCIe 5.0多为 200000Mbps网卡 200G网卡




PCIe 规范向上兼容,也向下兼容,向下兼容带宽有损失。
也有特例:部分博通的10Gbps网卡也有PCI-e1.1规范的

6.0网卡天梯图表


网卡天梯图表
CPU
千兆以上
千兆
百兆
型号(由弱到强)
最佳品牌
最佳品牌
最佳品牌
ATOM N270/N230
BCM5782,82543
3COM 905系列
ATOM N330/D525
BCM5789,82544
Intel82559
Intel P4 CPU
BCM57766,3C996B-T
Atom d2xxx/n2xxx
i225-LM
BCM5722,82545,82572
1037U/N3050
i225-LM
82579V
J1900/N3150/N3700
i225-LM
i210
Intel 775 4核
i225-V
82573L,BCM5704
Intel 115x i3 T/U/S
Mellanox cx341a
82574L,82583,i218
-
Intel 115x i5 T/U/S
Emulex 11101
BCM5708,82575
Intel 115x i7/E3 T/U/S
BCM57810
Intel82546,82580,i340
Intel 115x i9/Xeon-D
BCM82040
BCM5709C,82576
Xeon-E5 16c32t
82599,XXV710
i350-T4
Xeon-E5 32c64t
XL710,100HFA018
I350-T6
Platinum 56c112t
100HFA016

列表中红字就是CPU网卡对线的最佳选择,此图网卡推荐作为Wan口


7.0推荐网友对于网卡的选择

7.01 intel XEON CPU一定要搭配intel网卡,i系列最佳选择,10G以上尤为突出。
7.02 非intel的cpu也可以选择intel网卡,只是非TCP以太网数据传输性能没有intel的U性能好而已(iSCSI,HBA等)。
7.03 上图网卡队列已经尽力对应同型号或核心数量与之匹配的网卡
7.04 如果你拿i3搭配82576 BCM5709C 就会出现某一个CPU核心使用率90-100%(网卡队列排队,一个CPU核心对应多个网卡队列现象表达)
7.05 在i7搭配82576 BCM5709C就会看到各个核心均衡负载(每一个网卡队列都有对应核心握手,没有排队现象)
7.06 低使用率的软路由上,你甚至可以把10G网卡插到N3700上,没准还能跑个满速,当然前提是得有一个10G的ISP作为ADSL上网(指日可待,但是用软路由的网友,使用率一般不会低;P)
7.07 多层交换上,lan口网卡还是需要更加强劲的型号。
7.08 只有一级路由普通用户在lan口上不需要考虑很多,1-2个队列硬网卡就行。(82574L,82579V,i210,i211,i217,i218,杀手网卡,小螃蟹8111等都是2个队列的硬网卡)
7.09 目前市面上的10G网卡如X520,BCM57810等网卡生产较早,和2.5Gbps 的新网卡兼容性是需要模块支持的,在光纤上没有自动速率匹配一说,
7.10 你可以理解为10G网卡,线路,模块都是10G才能兼容10G网络
7.11 千万别指望2.5Gbps 的网卡在10G的线路上能跑2.5Gbps,模块(XFP)识别不到10G协议,下一跳就是1Gbps(XFP),如果要搭配2.5Gbps的网路,交换机,路由,网线均支持2.5Gbps,才会正常跑出 2.5Gbps 的速率



若有积累,继续更新。










作者: lingdongly    时间: 2018-3-17 17:00
好文:):):):):D:D:D
作者: cimo    时间: 2018-3-17 18:09
楼主这边文章不错  是原创的么?如果是的话给你加个精哦  :lol
作者: sd607858    时间: 2018-3-17 18:51
cimo 发表于 2018-3-17 18:09
楼主这边文章不错  是原创的么?如果是的话给你加个精哦

当然原创,网卡和cpu搭配百度都找不到几个呢。证明大众小瞧了网卡的厉害。
作者: hzjcsina    时间: 2018-3-17 19:10
给你点赞。不错。。。。。。。
作者: mxf882    时间: 2018-3-17 21:59
本帖最后由 mxf882 于 2018-3-17 22:09 编辑

这么说新的Gemini Lake架构缓存翻倍,对低功耗软路由蛮有用喽

赛扬J4105 四核心四线程,CPU主频降为1.5-2.5GHz,4MB缓存,核芯显卡UHD 600 250-750MHz,内存升级支持双通道DDR4/LPDDR4-2400,最大8GB,热设计功耗保持在10W,107美元。

赛扬N4100 四核心四线程,CPU频率降至1.1-2.4GHz,4MB缓存,核芯显卡UHD 600 200-470MHz,内存升级支持双通道DDR4/LPDDR4-2400,最大8GB,热设计功耗6W,场景设计功耗4.8W,107美元。
作者: 秀字营    时间: 2018-3-17 22:20
实话说,有很多看不明白,不过收藏了,细细品味
果然爱快论坛能人辈出,大神云集啊~
作者: 61888008    时间: 2018-3-17 22:40
给你点赞。。。。。
作者: mxf882    时间: 2018-3-17 22:47
秀字营 发表于 2018-3-17 22:20
实话说,有很多看不明白,不过收藏了,细细品味
果然爱快论坛能人辈出,大神云集啊~ ...

不知道爱快对AMD ryzen的支持如何?核心多缓存大 价格也便宜
作者: diaoni1616    时间: 2018-3-17 23:05
谢谢楼主这么详细 其实一直想了解 网卡之间的差异资料
作者: xiaowei    时间: 2018-3-17 23:17
秀字营 发表于 2018-3-17 22:20
实话说,有很多看不明白,不过收藏了,细细品味
果然爱快论坛能人辈出,大神云集啊~ ...

你离研发最近,拥有现成的资源,他们都没跟你讲这些,做底层开发的应该有懂硬件
作者: xiaowei    时间: 2018-3-17 23:19
看完后,在同样是82599网卡下,在u的选择上是不是更倾向于E5-2650v4,而不是i7-8700k
作者: linnan2004    时间: 2018-3-17 23:19
我擦,这个真NB了
作者: mxf882    时间: 2018-3-17 23:26
本帖最后由 mxf882 于 2018-3-17 23:28 编辑
xiaowei 发表于 2018-3-17 23:19
看完后,在同样是82599网卡下,在u的选择上是不是更倾向于E5-2650v4,而不是i7-8700k ...

如果AMD兼容没问题  EPYC 3000我觉得是最合适的。。 4核到16核全覆盖 针对嵌入式 功耗也低

作者: sd607858    时间: 2018-3-17 23:29
xiaowei 发表于 2018-3-17 23:19
看完后,在同样是82599网卡下,在u的选择上是不是更倾向于E5-2650v4,而不是i7-8700k ...

是的,图片上已经明确标示了,82599顶配是支持128队列的,那么双光口的82599在4路服务器上完全能胜任了。
作者: xiaowei    时间: 2018-3-17 23:38
sd607858 发表于 2018-3-17 23:29
是的,图片上已经明确标示了,82599顶配是支持128队列的,那么双光口的82599在4路服务器上完全能胜任了。 ...

其实,实际上,也是如此,留意了好久,使用服务器平台的处理器开销低于桌面处理器平台,一直在研究硬件这块,看到此文,略表赞同,静下心来研究学文的不多了,难得一篇有参考意义的好文
作者: 28817432    时间: 2018-3-18 01:09
好文。。。。。。。。。。。。。。。。。。
作者: doymll    时间: 2018-3-18 09:50
看得不是非常懂.关注下
不过这个CPU搭配网卡的对应思路很新奇.
作者: 秀字营    时间: 2018-3-18 10:40
mxf882 发表于 2018-3-17 22:47
不知道爱快对AMD ryzen的支持如何?核心多缓存大 价格也便宜

未来都被锐龙取代了,肯定会很好的应用了~
作者: 秀字营    时间: 2018-3-18 10:44
xiaowei 发表于 2018-3-17 23:17
你离研发最近,拥有现成的资源,他们都没跟你讲这些,做底层开发的应该有懂硬件 ...

实际环境中,谁又对应处理这么细, 也相信没有哪个cpu会比网卡差的硬件出现
没人会呆着没事抓着你给你讲些知识的。
所有人都是老师,讲的对的,都值得学习和借鉴。
但让也不知道这个文章会为之后的问题处理之路带来什么ing,摸索学习ing
作者: mxf882    时间: 2018-3-18 11:05
秀字营 发表于 2018-3-18 10:40
未来都被锐龙取代了,肯定会很好的应用了~

挺好 AMD的桌面接口寿命长   嵌入式的不了解了。应该也差不多
作者: poder    时间: 2018-3-18 17:00
E5系列CPU 用在低内存开销软路由上,CPU缓存都用不完,超快
作者: 小坏    时间: 2018-3-18 17:38
呵呵,菜鸟压根没看懂什么东西
作者: 333ccc3c    时间: 2018-3-18 18:01
好       记号
作者: metuly    时间: 2018-3-19 10:37
喵喵喵喵(=^・ェ・^=)~~
作者: ivi001    时间: 2018-3-24 20:31
做个记号。。。。。。。。。。
作者: gundamwing01    时间: 2018-3-24 21:05
这篇文章写得太棒了,很清晰的列出了不同网卡的核心数以及队列的差别。请教一下楼主,我现在用的是INTEL 82574L的网卡,看参数是双核的。但看到你列出的82580系列网卡要好于82574L的,但市面上82583v的网卡却比82574L的便宜很多,所以想知道一下这两者有什么差异,谢谢。
作者: sd607858    时间: 2018-3-25 01:28
gundamwing01 发表于 2018-3-24 21:05
这篇文章写得太棒了,很清晰的列出了不同网卡的核心数以及队列的差别。请教一下楼主,我现在用的是INTEL 82 ...

如图 (, 下载次数: 125) 所示,既然82583V有这么便宜的,那么这就是82574L的官方马甲。

作者: mxf882    时间: 2018-3-25 11:09
gundamwing01 发表于 2018-3-24 21:05
这篇文章写得太棒了,很清晰的列出了不同网卡的核心数以及队列的差别。请教一下楼主,我现在用的是INTEL 82 ...

82574L阉割部分功能就是82583V了 都是90NM工艺 9*9mm封装 物理DIE应该是同一块芯片
作者: 极地枫    时间: 2018-3-25 17:40
这样的高性能,是否意味着较高的功耗?
作者: luo0527    时间: 2018-3-25 18:03
好文。


反正CPU核心越多越好。
作者: snowfoxdd    时间: 2018-3-28 19:32
反正CPU核心越多越好。总结到位!
作者: ckmaster    时间: 2018-3-28 20:00
收藏了~备用
作者: 13373863    时间: 2018-3-29 15:06
收藏,还有个问题,64位系统真的比32位系统在流控上效率高吗?(同样的CPU)
作者: gundamwing01    时间: 2018-3-29 19:35
sd607858 发表于 2018-3-25 01:28
如图所示,既然82583V有这么便宜的,那么这就是82574L的官方马甲。

谢谢解惑
作者: gundamwing01    时间: 2018-3-29 19:36
mxf882 发表于 2018-3-25 11:09
82574L阉割部分功能就是82583V了 都是90NM工艺 9*9mm封装 物理DIE应该是同一块芯片 ...

非常感谢解惑
作者: kmicq    时间: 2018-3-30 09:47
楼主厉害。
作者: greedy    时间: 2018-4-12 15:32
用心讨论,共获提升!
作者: lee11010    时间: 2018-8-7 17:53
看到这样务实且参考价值很高的文章,心里就是高兴!谢谢楼主的辛勤总结,准备进行转载,让更多人参考!:victory:
作者: asdkfjaadsfadsf    时间: 2018-8-7 23:08
mxf882 发表于 2018-3-17 21:59
这么说新的Gemini Lake架构缓存翻倍,对低功耗软路由蛮有用喽

赛扬J4105 四核心四线程,CPU主频降为1.5-2. ...

那么新的J5005呢:lol
作者: zzhl    时间: 2018-10-26 15:58
好文章顶一下
作者: 18846239919    时间: 2018-10-26 19:58
绝对的好帖 绝对的好帖 绝对的好帖绝对的好帖
作者: Fuyun    时间: 2019-1-6 20:31
多谢分享哦
作者: skyp76    时间: 2019-1-9 10:24
你有个重点没说,DPDK
https://www.intel.cn/content/www ... evelopment-kit.html
很多路由器都用这个重写了
作者: gggpsj    时间: 2019-1-20 21:06
zzzzzzzzzzzzzzzzzzzzzzzz
作者: icy    时间: 2019-5-29 10:13
感谢老师的分享,学习了
作者: shengdi    时间: 2019-10-31 09:48
爱快支持 博通BCM57810S。了吗

作者: g5wh    时间: 2020-3-16 00:51
好文章,怎么收藏啊
作者: xsjdnljj    时间: 2020-3-16 08:18
谢谢楼主分享,解释的很专业,很到位,收藏了:lol
作者: saycpt    时间: 2020-5-31 16:33
收藏了:):):):)
作者: 半个四季    时间: 2020-5-31 22:13
全面,学习下
作者: 15205944044    时间: 2020-9-15 09:57
学习了,不晓得i5 3470用82576对性能影响是不是很大?会不会出现某一个CPU核心使用率很高的现象?
作者: haitao2008    时间: 2021-1-10 19:33
请教下 wan口和lan口哪个对网卡要求高?因为板载的wan口不是很好82574L 单加的是I350T4,想听听您的建议,谢谢
作者: haitao2008    时间: 2021-1-10 19:35
请教下 wan口和lan口哪个对网卡要求高?因为板载的wan口不是很好82574L 单加的是I350T4,想听听您的建议,谢谢
作者: 爱快星小宇    时间: 2021-1-11 18:39
干货有用收藏
作者: k-777    时间: 2021-11-13 11:21
学习了,不错
作者: zrhj2020    时间: 2021-11-29 16:04
学习了,不知道到了2021年底了,楼主可否有什么更新的内容,比如新的CPU,新的网卡搭配建议什么的
作者: haitao2008    时间: 2021-12-5 11:56
您好 想了解下 I3 2120处理器的软路由机器上有82574L网卡和I30网卡,哪个口做为lan口性能会更好些?
作者: 小C    时间: 2023-5-17 18:18
刚发现这个神贴
作者: pumcpc    时间: 2023-5-17 19:16
文章硬件有点老了,现在英特尔i350和x540如此便宜,根本不需要犹豫,不知道爱快对mellanox网卡支持怎么样,什么rdma,40g啥的,让内网带宽富裕



消息来自爱快e云





欢迎光临 iKuai爱快流控路由 (https://bbs.ikuai8.com/) Powered by Discuz! X3.3