在2018年1月的MUM和后面更新的《RouterOS入门到精通》教程中,都写过关于PPPoE认证的多平台测试(21.8章节),由于实际应用较少,对此深入了解的不多,在后来的过程中,重新认识和分析了结果,大致我重新归纳如下:

以上的配置网络环境是运营商级别,用户账号带宽分布比例如下图:

在这样网络下基于三款设备,做相同配置的PPPoE认证,具体性能测试情况供大家参考:

CCR1036-8G-2S+ CCR1072-1G-8S+ RouterOS x86
硬件配置 2个SFP+和8个1G电口 8个SFP+和1个1G电口 4个1G电口,2个SFP+网卡
RouterOS 6.33.3 6.33.3 6.33.2
CPU Tilera 1.2G 36核心 Tilera 1G 72核心 x86 Dell620 Intel E5-2609×2 2.4G 8核心
登录测试 850人同时登录完成,使用5分钟,CPU无异常  -  -
QinQ配置 QinQ:5000条 QinQ:5000条 QinQ:5000条
路由协议 OSPF OSPF OSPF
SNMP 开启 开启,由于VLAN接口过多snmp响应延迟,甚至无响应 开启
RADIUS 账号验证 账号验证 账号验证
流控策略 通过address-list分类账号带宽做PCQ 通过address-list分类账号带宽做PCQ 通过address-list分类账号带宽做PCQ
运用环境 PPPoE server 5000条 PPPoE server 5000条 PPPoE server 5000条
在线571人,CPU平均18%,流量448Mb 在线1380人,CPU平均9%,流量288Mb 在线463人,CPU平均30%,流量最高412Mb
在线919人,CPU平均15%,流量285Mb 在线1740人,CPU平均40%(短时间70%),流量1.1Gb
冗余电源 不支持 支持 支持
最大功耗 78w 125w >180w
总结 转发和软件优化比较出色 转发和软件优化比较出色 IRQ网卡对应与实际网卡有差别
流量增长CPU变化不大(多CPU平均结果) 流量增长CPU变化不大(多CPU平均结果) 流量增长CPU增长较明显

 

以上对比是在实际环境得到,当时有大量QinQ配置,添加cacti监控时,都是在没有创建QinQ的情况下先添加接口,因为5000条QinQ在cacit获取接口SNMP时会卡死。还要初始化大量认证配置包括5000条PPPoE认证服务规则,整机达到了1万多条规则,基于x86服务器的RouterOS,启动加载要比CCR慢,也是问题。

由于测试时间短只有一周多,而且大型运营商网络用户反馈问题,不如小宽带及时,也没有拿到一线情况,只能看到用户认证都正常。所以得到的结论也是不完整的。后续又对RouterOS自己开发的CCR系列和x86平台做了评估,并不能说明CCR系列比x86平台占有多少优势,其实CCR存在的问题也比较多。(对于之前在2018年MUM提到的CCR更好,其实是片面的结论,对此表示抱歉)。

我再次总结下:

  CCR平台 x86平台
CPU Tilera 9-72核心 1.2G x86构架 2.0GHz,6核心以上
三层转发 有fastpath优势 无fastpath
处理能力 1、 在CCR1036上发现转发延迟大问题(ping延迟不稳定),初步排除是多CPU负载不均衡导致,部分CPU负载100%

2、 在做大量脚本处理时,几百用户的策略修改,个别CPU负载高,处理速度慢

3、 同时剔除上百在线用户时,CPU异常90%

1、 转发延迟无异常

2、 CPU性能高,脚本处理速度快

3、 同时剔除上百在线用户,CPU处理无异常

从以上对比,CCR构架平台通过多CPU(9~72核心)频率在1~1.2GHz,但单核性能是无法和x86平台媲美的,差距是非常明显,虽然有fastpath功能,但开启该功能受限制较多,当遇到大量数据处理时,很容易造成单个CPU负载100%,会对正在转发的网络造成一定影响,因此CCR自身构架上存在一些弊端,通常我们查看到到的CPU负载是平均值,当点开Resource下的CPU选项,可以看到每个CPU的利用率,可以看到利用率并不均衡。

当前x86平台的多CPU发展也非常快,开启超线程后也能到72核心,因此,如果基于大型的PPPoE认证,还是建议选择x86服务器平台,但x86平台MikroTik基本已放弃更新,转向VM平台,因此以上内容仅供大家参考。