比如我们用i9的处理器,64G的DDR4内存,SSD硬碟做RAID 0,多个100G的网卡等等,软路由的转发效率能有多少Mpps?能有1000Mpps吗?或者说能超过华为的NE20E-S16A的水平(8个100G埠线速转发)吗?带机量能有多大?能达到几万台吗?


谢邀。

大家特别感兴趣的几个地方又重新编辑补充了下。

这块早几年给黑宽频做了不少方案,路由器基本全是x86 CPU+网卡的软路由,

根本原因就一个:同价位的条件下,软路由的性能是最高的

100G这块没跑过,没条件帮楼主测试下,就说说之前的那些黑宽频软路由的事儿吧:

先说明:这里的黑宽频泛指除了三大运营商以外的中小ISP,有证没证的都有。

和网上人云亦云的瞎扯不一样,给黑宽频用的软路由基本从来就不是拿二手低配电脑糊弄的。

CPU和主板x86平台里面都是都是高端的,E5200普及的时候,就开始用上Q9300+P45了,没用G41,一是集显的板子当时都是低端居多,供电跟不上,二是当时的集显都在北桥里面,持续跑容易过热虚焊。PCI介面的RAGE XL的显卡直接插上,方便调试,PCIe16x插槽留出来插四口网卡用。

网卡基本都是PCIe的,这点主要是延迟和效率考虑,Intel的8257x系列的千兆居多,也有BCM57xx之类的,后来达到几万户的时候,就开始用上X520这些万兆网卡。网卡TOL性能这块软路由是可以充分利用上的,所以基本不用百兆网卡,淘宝上吹到现在还在吹的82559/82550GY系列百兆实际上就从来没用过,没预算宁可拿千兆瑞昱8169凑合。为了保证网卡稳定,都是有显卡伴侣一样的8025风扇套件直接吹网卡来强制散热。

说下性能,Q9300最高同时在线3000户,这个时候CPU最多能跑到70%多些,这个时候软路由两个LAN口已经跑满,因为黑宽频也一样,用户下载玩游戏看视频都齐活,大包小包都有,所以可以认为同时跑满两个1000Mpbs是毫无压力

为什么拆两个LAN口,主要是当时管理交换机太贵,拆成两个区域网的话,根交换机可以选更便宜的,此外万兆网卡也不便宜,实际上单一个LAN口,CPU负载会更低。同样,当时一些大的黑宽频被要求有上网行为存储,需要做镜像口,当时千兆的网管交换机实在太贵了,也是放在路由器做了。对于当时网管交换机和硬路由几百MHz的主频,软路x86的几GHz的频率是可以捎带干交换机的活儿了。

看到评论里面说「硬体加速」,x86平台对于这个问题的解决思路同重负荷转发时的延迟抖动一样,都是「力大出奇迹」,重负载延迟抖动不好解决是吧?CPU配置余量大点,双核能干的上四核,Q6600就行的,开始就上Q9300。毕竟比起三大ISP用的天价BRAS,CPU贵上几百几千真不算啥大成本。

黑宽频的软路由除了NAT以外,通常还兼做认证计费,一般都是pppoe协议,二次解包封包,更吃CPU,有的黑宽频为了降低负载,单独一台PC做BRAS用。

那时软体这块主要有:海蜘蛛、ROS、爱快、碧海威、PA。转发效率这块很出乎大家意料,爱快最高。现在活得最好的是技术流PA(派网/Panabit),碧海威网吧混的也还可以,跟Pa的马甲流控大师不知道现在掐架咋样了,海蜘蛛后续无人,原版人家分家各起炉灶,ROS是x86盗版太多,官方更专注CCR之类的自家硬体,爱快是专心鼓捣中小企业这块,卖AP之余,还在瞎折微信吸粉、腾繁星这种的miniCDN之类的玩。

当时向华为、中兴和烽火询过价,还没等到厂家报价,电信、联通负责采购的伙计们告诉了一台ME60几十上百的市面价格(ISP采购东西水分有多少都明白),就吓跑了准备「硬路由+正规化」黑宽频们,呵呵,百分之一价码干一样的事儿,当然继续软路由了,再说软路由基于web的中文界面,总比串口线挂上弄个黑漆漆的超级终端简单易用吧。

后续黑宽频的顶峰,大概单机有八万户的,同时活跃在线最高的有五万户靠上,这个时候OLT已经便宜到不到一万一套了,黑宽频们也终于受够了交换机、光电收发器、网线这种稀烂糖葫芦串联法的对自家装维工的折磨,碰巧熔纤机也全面国产化,纷纷鸟枪换炮,全面PON化。

这个时候的软路由已经是E3起步了,大部分都是E5 16xx,因为单路的E5主频更高,当时软路由大部分软体都是主频比核心数更敏感,八核以上的优化不算太理想。

网卡都是万兆的,直通OLT的上联,因为OLT性能理想,很多需要镜像埠保存上网记录的,直接做在OLT上,之前都是让路由上做镜像口,比较占CPU。

有了这几点,高峰期带宽上就有跑满10G的时候,但持续时间很短,太长了肯定也是要分开带的,有用vrrp协议做集群的,后来发现还不如拆开了单独负载客户。

这个时候BRAS便宜了不少,可惜黑宽频们又有新的痛点需求——「流控」,紧张有限的出口带宽优先保证游戏、语音的低延迟。几大ISP供应商的类似百万级别的产品,又让黑宽频们通过PA、碧海威之类的软体以百分之几的成本搞定。

在线视频的流行,又让黑宽频们纷纷上架部署近端缓存,一堆硬碟外加一台大内存PC,一些热播剧流行的时候,能省下不少出口带宽,配合软路由的防火墙,还捎带坑了把视频网站,片头广告都给折腾没了。

后来这招被广电和移动给发扬光大,当然人家是土豪,用的大都是华为iCache,效果对P2P这块支持更好,知乎上大企业的网管可以关注下。

看看,黑宽频也不全是坑货,做生意嘛,他们也是在努力改善客户体验的,当然实力所限,肯定不能全面满足,比如一堆用户非得给他们要个公网IP,那就真的哈哈了。

很可惜这已是黑宽频们最后的得意+嚣张欢乐时光了。

后来因为移动带头」免费「送,外加宏观上ZF拿提速降费代替搞定医保和房价来刷政绩,这边的黑宽频们就陆陆续续关门的关门、卖身给移动的下嫁,很遗憾,没演进到100Gpbs好表演给楼主看,呵呵。

据一些同行说,部分地市的移动和「鸟」博士家还有继续用软路由折腾的,不知道知乎上有没有他们家的人士,具体情况就不得而知了。

所以说,可以依据事实说话,软路由跑满10Gpbs是毫无问题的,带机量可以几万户,要每户的电脑、平板、手机算上,按十几万台也不算夸张。

至于CPU,100G的网卡单卡需要16x带宽,八卡的话这么多PCIe通道,恐怕得四路平台了,i9肯定不行。

内存这块软路由主要是跟会话数路由规则数有点关系,当时负载几万户的时候,也就8-16G,64G估计100G可能真用的到。

硬碟这块真的跟SSD没关系。实际上这些方案里面大小规模的就没有用到一块SSD,主要是丢数据,而且软路由装载很快,机械盘也慢有限,跑起来以后在内存里面运行,除了日志往硬碟上写,当时SSD试过了,稳定性堪忧,加上写寿命这块是越来越差,所以不会优先考虑SSD,更不会SSD RAID0。路由专用DOM盘,实际上是SLC/eMLC的小容量SSD,用在网吧之类的写入很小的软路由上还是很不错的,如果需要日志存储,还是要外挂机械盘。

当然现在有傲腾了,题主可以试试看。

再补充下:现在骨干网路由趋势也是Xeon CPU+FPGA/ASIC。定制的晶元来实现线速转发,intel家的CPU来实现路由策略,某种程度上这个也算软路由吧,实际上软硬路由本质上也没太多区别。

有网友关心缓存系统,这里补充说明下:黑宽频这些中小ISP用的主流Panabit+iXCache,

是Panabit的缓存软体,可以配合PA工作在牵引模式,此外标准版是免费的。下面是官方链接,可以了解下。

一键安装与使用_Panabit官方网站

此外还有武汉秒开,免费的带缓存路由,但bug比较多点。

秒开加速路由系统下载 - 秒开网路


我是他们家产品的用户,下面这个截图的设备cpu是赛扬的,2GB内存,一台设备nat+pppoeserver+vlan扩wan

x86架构。60G下行,可能有其他更大流量没公布吧。

纯国产,www.panabit.com

抖音号不是我的,可能是官方工作人员的。


如果是一般家用那种esxi或者pve虚拟化的软路由,单纯网路性能上其实性能跟同价位的硬路由差不了多少,这还是网口直通的前提下。如果是采用虚拟网卡,那性能根本不如同价位的硬路由。

软路由的强项其实是在于全能,x86 cpu有较强的通用处理能力,所以在流控,不可描述这种需求上比arm的硬路由要强一点。

但是软路由最主要的问题在于,没有交换晶元,没有硬体加速,所有网路流量都要走cpu,这是一件很难受的事,而且越是高端就越是如此,到了i9或者e5这个级别,高端的硬路由都会有专门的晶元做流控,vpn等等。那么这时候软路由基本上是一点性价比都没有了。


供你参考一下:

之前看过一个使用 酷睿E5200 2G内存做软路由的测试报告,

1518的包 大概有1000Mbps

64的包大概有60Mbps ,

具体多少Mpps你可以自己换算一下。


交换性能这块建议参考下OVS的测试资料。


推荐阅读:
相关文章