家庭 40G 内网搭建

疫情期间在家里做起了 Home IDC, 有台非常快的 NVMe SSD 储存阵列, 但是机器之间的速度肯定就跑不满了, 所以准备起了 40G 的内网 (事实上, 在本文发布的时候已经在看 100G 的设备了)

高速网络真爽

Intro

交换机

使用的是 Mellonex 的 SX6036 这个玩意洋垃圾在 Ebay 上只要 200 刀左右, 如果能海淘的话直接在 Ebay 上买就可以了, 但是要注意大部分都是没有 ETH License 的, 自己搜索 License key 吧(

不过垃圾 Ebay 一直不 Accept 我的 Payment, 没办法只能海鲜市场低价收了一台 不过还是比自己从 Ebay 买要贵一点(

网卡

海鲜市场收的 HP 544 FLR 40G 双口网卡,一张 170 块钱, 这个价格还可以 (可以到爆, 这个价格可能你正经的 10G 网卡都收不到)。卖家说是全新但事实上是不是全新就不知道了,但是到我手上的时候静电袋上还有 Shipping 的标签,应该是真的全新(

网卡

转接板是自己嫖捷配打的板子, 下单了五片实际上到了七片(果然捷配的下单到货板子的数量是抽奖的)实际上一个转接板的成本就 2 块钱左右 (* 只有一个 PCIe x8 的槽要两块钱)

然后挡板就直接打印出来仓库里的耳朵就好了 (我就是死外面, 从这里跳下去也不会买奸商的钣金挡板) 这样就可以直接安装到机箱里去了。300块不到的 双口 56G 以太网卡, 要什么自行车呢。

不灵车点的网卡

为了让自己不灵车一点(事实上是因为转接卡塞不进半高的 PCIe 插槽)我还额外买了几张官方的 Mellanox CX354A QCBT 网卡. Mellanox 的 ConnectX3 系列网卡都能通过硬刷固件的方式解锁速度限制

这张卡已经在机器上了,只能截个 IPMI 里的图了(

在 H3C 的 IPMI 中的图

可以看到这张卡已经给我刷成了 FCBT 的卡来解锁出了 56G 以太网

我是参考这个 STH 论坛上的回复 来进行刷机的, 如果你也想刷可以也看看(

光模块

闲鱼最近有一大批淘汰的光模块流出, 40G 的光模块只要 45 块钱一个, 是 MPO 的光模块, 然后就买了 一车 十个.

光模块到手成色还是可以的, 同时 40 块钱 2 米的 MPO 线也收了几根.

QSFP 线材

事实上, 如果买 LC-LC 的光模块 线材会更加的便宜 (毕竟 MPO 的光纤死贵) 但是这里应该 MPO 光纤价格也差不多的样子

接入现有网络

40G QSFP 事实上就是 4 个 SFP+ 捆在一起 (毕竟名字就是 Quad SFP 的意思), 所以我们事实上能把一个 QSFP 的模块分割成四个 SFP 的线

电商平台上也有 MPO 转 LC 的分光模块盒卖, 不过事实上也可以直接买 Split Cable, 大概 70 多块钱一条, 在 SX6036 上可以设定 module-type 为 qsfp-split-4 的模式, 具体命令可以参考 论坛的教程

拆分端口

不过这种情况下第一个口会被禁用, 是交换机的限制

第一个口被禁用

(然后插在 CRS305-1G-4S+IN 上这样的话 CRS305 的千兆 PoE 就有了 40G 的上连)

CRS305 40G Uplink

当然我这里是将 40G 分成两个接到了另外一台有 10G 接口的电口 1G 交换机上

家里使用的交换机是 Juniper 的 EX4200-48T

这玩意我改过风扇, 换了一个静音点的风扇. 反正都是淘汰下来的洋垃圾, 只要不烧起来都没问题

在管理页面上可以看到 10G 的接口已经 Up 了

10G Up

然后就可以让网络跑起来了, 把线都插上之后接口就起来了

交换机状态

插上网卡, 把两台机器连起来, ethtool 可以看到 40G 网络已经起来了

Ethtool Status

可以看到网卡是支持 56G network 的, 但是交换机暂时没有 56G 的 License, 所以只能暂时先跑在 40G 的模式下了, 到时候看看怎么搞一个 56G 的 License(X

使用 iperf2 测试内网速度, 也能达到标准

这里要提一下的是, iperf3 是单线程的, 但是单线程并不能跑满 40G 的线速, 需要安装 iperf2 使用多线程进行测试才能得到 40G 的结果

iperf test

故障排查

网卡达不到 40G 的速度

Mellonex 官方有一个脚本来检查 PCIe 速度之类的设定是否能达到相应的速度, 下载 脚本 并且使用 python2 运行

可以得到以下的结果

ConnectX-3Pro Device Status on PCI 01:00.0
FW version 2.42.5700
OK: PCI Width x8
OK: PCI Speed 8GT/s
PCI Max Payload Size 128
PCI Max Read Request 512
Local CPUs list [0, 1, 2, 3]

如果网卡不是跑在 PCIe 3.0 x8 的情况下是到不了 40G 的速度的, 一开始我的 R720 上的网卡跑在 x4 的情况下死活到不了 40G (很奇怪 我换了个槽就正常了, 但是我看文档我插的那个 riser 上是 PCIe 3.0x8 的但是检查出来是 x4)

同时也可以检查是否设定了 Jumbo frame, 我这边 MTU 设定 9000 没啥太大问题(

标题:家庭 40G 内网搭建

许可协议:知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

作者: Indexyz