万兆家庭网络改造:由 TP 全家桶 至 mikrotik CCR2004 方案分享

127 天前
 piero66

去年 3 月决定新家的网络环境做规划选择了 tplink ER2260T 作为主路由。参照( https://www.chiphell.com/thread-2532730-1-1.html

原计划组网篇去年就发,但因为 2260T 自身问题无奈雪藏至今。

tplink ER2260T 为 tplink 商用产品线。刚到手的测试还行,随着时间推移,去年年底到今年年后这大半年间问题不断。如果经常看帖子也能看到有部分贴或者楼中楼也有反映到。接下来部分内容会引起某些人不适 [叠甲] 反映的问题只代表个例,只代表我手中 tplink er2260t 这一款产品的使用体验,我从未联系 tplink 支持获得所谓“内部固件”来解决问题,从上线到下线整个大半年期间 er2260t 只接收官方 ota 更新。

以我大半年的使用体验来说,tplink er2260t 作为「企业级」路由器是不合格的,以「消费级」产品来评价 2260t 也同样不合格。罗列几条问题:

1 、网络进行重拨号之后 LAN 掉线,解决只能用手机上的 tplink 商云 app 强制重启 er2260t 。这个问题是去年底的最新版本才开始明显被观察到,到我的 2260t 下线也没有推送新固件。

2 、网络的间歇性断开一直存在,每个固件版本都有观察到,去年秋天的版本稍微稳定了一点,这符合大多数网工对 tplink 的刻板印象()

3 、单一设备跑大连接请求场景下(比方 PT 刷流)其他设备网络几乎瘫痪,反映到实际就是打开个网页都要等大几秒或者是直接没网,手机直接回退数据网络。对于我本人来说是难以接受的。

4 、自带的多宽带流量均衡很简陋,1.0 固件就给一个开关,1.1 固件多给一个很简陋的优先级选项;单用户多线程没法利用双宽,而且流量均衡疑似会影响网络稳定性。

5 、nat 端口映射随时爆炸。该问题只有 1.1+固件存在。1.0 固件升级 1.1 固件后所有端口映射都失效。且一段时间后端口映射就会爆炸,重新配置后只能不断重启来让几十条规则能生效,或者一条条删掉重新手动创建端口映射,现在机器里还有启用的但莫名不生效的十几条端口映射规则;

6 、自带的 ddns 解析不是很稳定,并发测试全国只有约 2/3 的省份可以 ping 通

我真正意识到问题是今年 3 月帕鲁火的时候在 lab 上开了个 vm 给客户进行测试,客户跑了一周探针测出来 er2260t 这套网络的 sla 在线率只有 90%,因为这件事情当时也闹的很不愉快,该事件加速推动了替换掉 tplink 全家桶。

在深受 tplink 设备困扰期间本人也在不断寻找替代品,最终看上了 mikrotik 的 ccr2004 ;同时在看 ubnt 的 UDM SE 设备在硬件层面接近,但 udm se 的 2.5g 网口有稳定性问题,能搜到负面反馈。

MikroTik CCR2004 有至少三个版本:标准版 25G 速率 MikroTik CCR2004-1G-12S+2XS 、10g 速率 CCR2004-16G-2S+(分主动被动散热两款)和一个使用 PCIe 插槽取电且 25g 速率的 CCR2004-1G-2XS-PCIe ,该款类似于 Nvidia bluefield DPU 的设计思路。在产品形态也很接近 DPU ;

并且 CCR2004-1G-2XS-PCIe 具有双口 25gbps 的 spf28 端口以及一个 1gbps 的 rj45 端口,如果只有两条宽带的话刚好够用,

回收本帖标题:万兆指主路由的硬件端口最大速率,所以本次升级实际上是 10G → 25G

拆机可以看到 ccr2004-pcie 采用了板载 ecc 内存,容量 4GB ,核心是亚马逊 aws 同款的 alc52400 ,四核 a57 。虽然形态上类似 pcie 网卡,但其是一台完整的路由器,除了没有千兆交换芯片和其他 ccr2004 无异。到手即插即用路由界扛把子 routerOS 且正版 L6 授权。

需注意 CCR2004-1G-2XS-PCIe 对宿主有要求,仅支持 5.15 内核以上的 Linux ,也就是说,CCR2004-1G-2XS-PCIe 不支持 Windows 以及 esxi 系统。但严格意义来说,该卡仅需要 pcie 供电,宿主和其完全脱钩也是能正常运行的。也可以将其插到 pcie 底座上,只供电这玩意也可以跑。

关于 CCR2004-1G-2XS-PCIe 的合适宿主。在去年确组网方案时还考虑过一款体积小巧的 1L 小主机:戴尔 wyse 5070 。

购入时考虑是配置为软路由旁路模式配合 2260t 使用。ccr2004 以独立形式运行 ros 系统保证系统的稳健性,wyse5070 本体使用 pve 虚拟化平台切出不同的 kvm 虚拟机以及 docker 、lxc 等形式运行自定义化的服务。网络出口和服务层解耦,可以稳定和扩展——达到:既要、也要

关于 wyse5070 ,这货原本是长这样的,原本定位是一个云服务的瘦客户机。

换用由 @AlphaArea_开源的 diy 方案后体积可以压缩很多,且保留扩展性,开源项目地址:github.com/KCORES/KCORES-5070 ,包含亚克力外壳,和 riser 的 pcb 设计,铜柱尺寸 M3x14mm 四枚 M3x6mm 四枚,在这里感谢原作者的贡献。 原作者也设计了一个铝铣的被动散热,如果进弱电箱建议用原装主动散热。唯一缺点就是不能使用原装 19v 电源,只能使用 12vdc 电源,使用第三方供电会导致 wyse5070 的 cpu 被禁止睿频,降低性能。 wyse5070 很挑内存,我这里两条 8g 2r*8 内存能进 bios 但是开不了机,拔掉一条就可以正常使用

wyse5070 本身的扩展性在同级里也较好,标准的 pcie2.04 外加 pcie2.01 的 m2wifi ,存储上支持 emmc 芯片或 ngff ( m2sata )硬盘一块。

改造前后的网络拓扑图:

原方案是使用 2260t 主路由兼作 ac ,管理 xap3022 ,xap4500 ,xap6300 三个 2.5g 端口的 86 面板 ap 。2260t 先使用 sfp+光口连接到万兆 poe 交换机,再接入若干 ap 。

关于 ap 的选择。2.5g 上联端口 ap 现在可选项很少,除 tplink 外只有顶级旗舰产品才会配备。价差 2.5g 较 g 口可达 2-3 倍,所以暂且不替换掉 tplink 的 ap 。

可以看到拓扑图中,改造后是 MikroTik CCR2004 使用 sfp+光口连接到万兆 poe 交换机,再接入 tplink ac100 控制器和 tplink ap 。poe 交换机到 homelab 的交换机是 2.5g 电口的链路,后续视情况有留空间可以随时升级 10g 。

在三个月实际使用中,没有遇到任何 ap 掉线或者不稳定的问题。

一个隐藏优势,MikroTik CCR2004 PCIe 的涡轮扇可以给自带 sfp28 光口提供有效的风道,如果你使用猫棒来拨号,散热能力 ccr2004pcie 比被动散热的光口管理交换机好不少。我这里使用 g7615 v2 光猫,就不需要折腾猫棒了。

实测 web 浏览加载速度快且稳定,体感能察觉比 tplink 更快。推测和 ros 内置 dns 缓存有关。

实测双宽带。routeros 使用内置 pcc 负载均衡对比 tplink ”企业级“负载均衡很明显的优势就是测速软件可叠加,可以跑出很漂亮的 1+1=2 的测速成绩,不过 tplink 负载均衡可以把每条宽带 ipv4 和 ipv6 同时拉满,pt 可以 30 兆上行跑出 60 兆的效果。ros 就不行了,是负载均衡策略的取向不同。

速度 or 稳定,必选 → 稳定 再快意义不大,因为瓶颈在 wifi 数据链路上,wifi6 ( 160mhz 2*2mu-mimo )实用带宽是 1800mbps (有干扰会跌到不足 1600mbps ),现在的状态就是几乎跑满无线带宽。

所以家宽现在如果有「跑满强迫症」,只推荐 1500m 套餐或者开 1000 兆和 500 兆两条宽带。或者拿全尺寸 ccr2004 拨三条 500 兆宽带也挺好,只要有足够多的入户纤

之前的大连接场景问题也特意实测,pt 刷流 20 万包每秒拉满 1000mbps 下 100mbps 上的同时进行网页、app 浏览测试。没有任何问题,和空载加载速度完全一致。

1300 兆拉满 cpu 负载 45 ~ 50%,ccr2004 pppoe 拨号没有硬件加速全靠 cpu 硬刚,也不具备任何的 L3 卸载功能。极限就只适用 2000 兆宽带了。假设您是高贵的万兆宽带用户或者 ptn 专线,推荐你购买 mikrotik 的 ccr2216 系列旗舰路由,内置 16*a72 核心,可以暴力拉满万兆 pppoe ,且有 L3 硬件卸载。或使用「正品」 DPU 刷固件安装 ros 也不错。

关于温度。在密闭的弱电箱里:j5005 处理器温度 49.C ,ccr2004 路由器核心温度 58.C,风扇转速 3000 转左右,万兆光转电模块温度 51.C 。

声音关上盖板后近乎为零。

功耗。wyse5070 功耗极低,只有 5w 不到,具体移步视频 BV1JY4y117vH 查看。ccr2004 从上图能看出,功耗闲置是 3w 满载大概 4-5w 。

很节能环保,和本人的 epyc homelab 动辄上百瓦「五级能耗」强到不知道哪里去()

另附 alc52400 核心特写:

如果有补充和讨论请至评论区。
后续预告:

3557 次点击
所在节点    宽带症候群
41 条回复
tywtyw2002
127 天前
家用的话 你真的不如用个 10g/25g 交换机 支持 pcie8x/16x 的工控主机装 vyos ,在给工控机配个 hp 的转接网卡

MikroTik 的 mini 路由卡 性能真不如 x86 软路由。
aa51513
127 天前
我现在用的就是 TPLINK 家的 ER2260T ,一直隐隐约约感觉有点问题,看了楼主的帖子才恍然大悟。也许我应该抄个作业?
povsister
127 天前
写的很细致,ROS 上没做 QoS 流控吗?我看你好像单纯是只用了 interface hardware queue

我当时从 hapac2 升级的时候考虑 CCR 还是 RB 想了好久,最后还是决定入 rb5009 。

但现在发现,rb5009 只在 interface 挂了个 CAKE 的 queueTree ,搭配 mangle mark wan traffic ,内网流量 bypass queueTree 的情况下,千兆 wan 下载会把 cpu 干到 80-90%…

测试了一下发现原因在 slowpath 上,因为 mangle mark packets+queueTree 根据包标记 QoS ,就用不了 fasttrack 。
只用 fasttrack+interface queue CAKE 的情况下 cpu 负载并不高,但这样会导致内网流量一并被 CAKE qos 掉。
现在就是脑壳疼…
piero66
127 天前
@povsister ccr2004 的处理能力比 rb5009 高不少
jdjingdian
127 天前
哈哈哈,之前就看到 CCR2004 这款路由器了,简直是 ALL IN ONE 福音
jdjingdian
127 天前
请教一下,这段话是什么意思呢 “或使用「正品」 DPU 刷固件安装 ros 也不错。”

是有 DPU 能刷 RouteOS 的系统吗?能麻烦帮忙指个路?
piero66
127 天前
@jdjingdian 「正品」 DPU 就是 nvidia bluefield DPU ,现在二代可以破解刷入 debian 了,性能比 ccr2004 强不知道多少
piero66
127 天前
@tywtyw2002 wyse5070 宿主就可以跑,你猜我为啥没拿来跑软路由()
piero66
127 天前
@jdjingdian 但要考虑到还需要另买 license ,ccr2004pcie 自带 L6 授权,如果性能够用就没必要折腾
povsister
127 天前
@piero66 没办法,rb5009 被动散热+颜值。挪不动道了已经
huangya
127 天前
mikrotik 很多产品使用了亚马逊收购的 annapurna labs 的 soc 。他们家的 soc 最大的问题是没有硬件加速。跑大包没有问题,小包就跑不了线速,不过一般家用也没有这么多小包,也够用了。
Greenm
127 天前
果然符合我对 TPLINK 的印象
Ipsum
127 天前
2260 问题很多,特别开了 qos 就是一条虫,upnp 还有问题,虚拟 vlan 拨号还不能改 mac 地址。另外这种 pcie 的网卡需要 bios 支持延迟启动,不然进了系统 ros 还没启动好,又得再来一遍。
tywtyw2002
127 天前
@piero66 #8 我是猜不出来。

家用,又不跑 bgp ,小包根本跑不到线速,主要还是看 nat 性能,一个 X86 低功耗足够了,还便宜。路由我是不打算虚拟化,直接 host 跑。交换机上还可以起个 3 层 interface 做备用,VRRP 跑着,路由挂了也没事。

设计重点还是二层交换,毕竟核心还是 nas ,做点 4K 剪辑什么的,打底万兆光网。
piero66
127 天前
@tywtyw2002 pt 跑满千兆宽带没几台消费级路由器撑得住的,除了御三家也就 mikrotik 这档扛得住了
piero66
127 天前
@tywtyw2002 朋友拿小主机跑爱快的,和我使用环境很接近,我们经常交流,这几个月实测下来爱快软路由稳定性是不如 ccr2004 的
ccde8259
127 天前
直接 2260T 刷 OP 了……原厂固件是真的菜
huangya
127 天前
>单一设备跑大连接请求场景下(比方 PT 刷流)其他设备网络几乎瘫痪,反映到实际就是打开个网页都要等大几秒或者是直接没网,手机直接回退数据网络。对于我本人来说是难以接受的。

楼主,pt 刷流出现问题的时候,你有看连接数目吗?
root@OpenWrt:/# wc -l /proc/net/nf_conntrack
0 /proc/net/nf_conntrack
tywtyw2002
127 天前
@piero66 #16
软路由好歹也要企业级的啊。vyos pfSense 打底啊,再不济海蜘蛛也行。

我 vyos 1.3 运行了几年 除了停电重启外,没有发现什么问题。 上下行满千兆,cpu 也才 0.7 左右。连 1 都没上。
piero66
127 天前
@huangya 至少 2000 个连接

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

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

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

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

© 2021 V2EX