路由器小包转发能力探讨

2022-05-21 09:54:01 +08:00
 huangya

路由器评测中经常提到小包转发能力,我知道这是一个衡量标准。但在真实世界中这个有多重要呢?特别上对大多数的家庭用户。不知道有人是否做过比较严谨的测试,或者有些相关经历。好像对游戏比较重要,那只有 2-3 个人玩游戏呢?真实带宽大概需要多少呢?另外还有时延影响怎么样。发帖的目的是希望能按需选择一些路由器

20126 次点击
所在节点    宽带症候群
85 条回复
bosonx
2022-05-21 20:36:25 +08:00
@465456
我的软路由 CPU I9900 网卡 X550T2 ,X710DA4 都是直通的,而且都是用万兆交换机交换数据,不用虚拟网卡,应该可以吧,没测试过。。
veSir
2022-05-21 21:30:14 +08:00
根据 youtube 洋葱的测试,sfe 对小包转发提升很明显.
oovveeaarr
2022-05-21 22:21:16 +08:00
说软路由没意义就太夸张了,硬件路由如果刷三方固件( OpenWRT 没支持几个设备的硬件转发),或者进用户态一样是软转发的,尤其是大家现在这种用法,科学、Qos 、去广告啥的一起上,全部都妥妥的是软转发。

X86 我最喜欢的一点倒是通用性,驱动开源,硬件随意搭配,能上最新的内核,系统随意挑;从低性能到高性能都有对应的硬件选择,后续升级线路都很清晰。

对于购买硬件路由来说,就没有通用性和选择的余地了,也完全没有扩展性。对应的系统选择范围非常窄,自行编译固件又非常麻烦,还有奇奇怪怪的 BUG ,比较难折腾满意。(尤其是赠送的 WiFi6 无线,不要想省点钱还不行)

至于电费差距嘛,可能确实有,但是也就那小 5W ,一年下来其实也没几个钱,比起软路由,硬件路由器的溢价都可以用好几年了,更别说后续的升级剩下的钱。
oovveeaarr
2022-05-21 22:27:59 +08:00
另外,其实家用真的很难通过小包打满路由,毕竟 UDP 的 Qos 也这么严重。考虑下复杂规则下的大包转发率会比较好,尤其是用了桥的情况。
1Gbps * 4 的情况下这个问题不是很明显,但是到 10Gbps*2/*4 的这个等级下来,CPU 和内存的整体要求就非常高了。
(当然到了 10GE-100GE ,现在也只能选软路由了)
wm5d8b
2022-05-21 22:46:30 +08:00
那么有没有推荐的千元以下的不带 wifi 的硬路由呢?最好带 sfp+口
ToBeHacker
2022-05-22 01:08:59 +08:00
没有测试过,不过小包很容易把路由器打挂倒是真的
geekvcn
2022-05-22 10:03:32 +08:00
@oovveeaarr 高通 qsdk 就是基于 openwrt ,联发科 openwrt 下主线分支就支持有线硬件转发。到你那不支持了,你用的什么芯片?
465456
2022-05-22 12:35:23 +08:00
@geekvcn qos 和自己写的 iptables 限制连接数,硬件支不支持
neroxps
2022-05-22 12:38:07 +08:00
@geekvcn 请教个问题,策略路由用上的话,转发还会是硬件转发?

例如基于五元组转发等规则。
huangya
2022-05-22 13:16:24 +08:00
@neroxps 是不是硬件转发,只要在 br-lan 上抓一下包,看看能否抓到完整的 tcp 数据流就可以。如果只有3次握手,后续数据交互部分没有,就表示走了硬件转发
oovveeaarr
2022-05-22 13:49:58 +08:00
@geekvcn 高通的 NSS 并未合并进 Openwrt 主线,Openwrt 的 hardware offload 仅测试过 MTK 的部分 soc 。
这与我说的“OpenWRT 没支持几个设备的硬件转发”有何冲突?大部分的 target 就是不支持。
建议把别人说的话看清楚,不要整天就想搞个大新闻。
oovveeaarr
2022-05-22 13:51:22 +08:00
@465456 #48
@neroxps #49
这些都是不支持的,只要涉及了 netfilter (包括 nftable/iptables ),基本都可以认定不支持。
oovveeaarr
2022-05-22 13:54:04 +08:00
@huangya #50 这个其实也有可能抓的到的,我的建议是查一下 nf_conntrack ,一般只有 bypass 了 nf 才能做 hwnat
geekvcn
2022-05-22 13:55:23 +08:00
@oovveeaarr qsdk 知道吗?
oovveeaarr
2022-05-22 13:57:00 +08:00
@geekvcn #54 openwrt 知道吗?不知道的话可以看看 github.com/openwrt/openwrt
geekvcn
2022-05-22 14:04:12 +08:00
@oovveeaarr 只会用主线只能说你没救了
cwbsw
2022-05-22 14:04:39 +08:00
首先只有包转发率,并没有什么小包转发率。
其次家庭网络关注包转发率没啥意义,又不是核心网骨干网。
太多商家带节奏了,卖软路由的鼓吹千兆科学,卖硬路由的鼓吹包转发率。
其实都是扯淡。
oovveeaarr
2022-05-22 14:09:30 +08:00
@geekvcn #56 连主线都用不了,可太惨了
bosonx
2022-05-22 15:36:11 +08:00
@cwbsw 千兆科学很容易,问题是有啥应用呢
neroxps
2022-05-22 18:39:34 +08:00
@huangya @geekvcn 因为没环境所以想问问 qsdk 这种是不是支持 五元组策略路由这种或者 iptables mangle mark router 那种转发是否也可以硬件加速。

粗略搜索了下好像没找到相关文档。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/854303

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX