网络硬件选型:网卡、交换机、线缆与服务器优化

各位同学,咱们今天聊点实在的。低延迟交易网络,说白了就是跟时间赛跑。硬件选型这块,我踩过的坑比你们走过的路还多(笑)。不过别担心,我把这些经验掰开揉碎了讲给你们听。

一、网卡(NIC)选型:你的数据高速公路入口

网卡这东西,很多人觉得随便买块千兆的就行。嗯,如果你做的是普通业务,确实够用。但做低延迟交易?差之毫厘,谬以千里。

核心指标:延迟、吞吐量、CPU卸载能力

我个人习惯把网卡分成三个梯队:

  • 第一梯队:Solarflare/Mellanox —— 低延迟领域的王者。我曾在某交易所项目中,把普通Intel网卡换成Solarflare X2522,延迟直接从10微秒降到2微秒。你想想看,这5倍的差距,在抢单时意味着什么?
  • 第二梯队:Intel XXV710/800系列 —— 性价比之选。如果预算有限,Intel的XXV710是个不错的选择。但要注意,它需要配合DPDK才能发挥低延迟优势。
  • 第三梯队:Broadcom/其他 —— 说实话,做交易系统我不推荐。我在一个回测项目里试过,同样的代码,Broadcom网卡比Solarflare多出30%的抖动。

避坑指南:我曾经在选型时只看带宽,忽略了网卡上的硬件时间戳功能。结果做PTP同步时,精度死活上不去。后来换了带硬件时间戳的网卡,问题迎刃而解。所以,硬件时间戳是低延迟网卡的必备功能,千万别省。

二、交换机选型:网络的中枢神经

交换机选型,说白了就是三个字:低延迟、零丢包、高吞吐。但实际选型时,你会发现厂商宣传的「线速转发」其实是个坑。

特性 推荐配置 我的经验
端口密度 48口25G + 8口100G 别贪多,端口多了散热和功耗都是问题
延迟 < 500ns(Cut-through模式) Arista 7130系列我实测过,延迟在350ns左右
缓存 至少8MB共享缓存 缓存太小,突发流量时直接丢包,血泪教训
PTP支持 IEEE 1588v2,透明时钟 没有PTP的交换机,别考虑做交易网络

为什么Cut-through模式这么重要?因为Store-and-forward模式要等整个包收完才转发,而Cut-through只要读到目标MAC地址就开始转发。在25G速率下,这能省下几百纳秒。几百纳秒,在交易世界里就是真金白银。

注意:我曾经遇到过一个案例,某厂商宣称支持Cut-through,但实际上只在特定端口组合下生效。所以选型时,一定要让厂商提供全端口满载下的Cut-through延迟数据,别被宣传页忽悠了。

三、线缆与光模块选型:细节决定成败

线缆和光模块,很多人觉得这是「小件」,随便买买就行。我告诉你,这是最大的误区。

先看一张图,帮你理清选型逻辑:

线缆与光模块选型决策树 传输距离 ≤ 7米 > 7米 DAC直连铜缆 延迟最低,成本最优 单模光纤 + 光模块 注意:光模块延迟差异大 注:DAC铜缆在7米内延迟最低,超过7米建议用单模光纤

说说我的具体建议:

  • 7米以内:无脑选DAC直连铜缆。为什么?因为它不需要光电转换,延迟最低。我在机柜内部互联时,全部用DAC,延迟比光模块低20-30纳秒。
  • 7-30米:用多模光纤 + SR4光模块。注意,多模光纤的传输距离有限,别超了。
  • 30米以上:单模光纤 + LR4光模块。这里有个坑——光模块的延迟差异很大。我测过不同品牌,最差的比最好的多了100纳秒。所以选光模块时,一定要看延迟指标,别只看价格。

小技巧:我曾经在部署时发现,同一批DAC线缆,有些插上去就丢包。后来排查发现是线缆的弯曲半径太小了。记住,DAC线缆的弯曲半径不能小于线缆直径的4倍,否则内部信号会受损。

四、服务器硬件优化:把每一纳秒榨干

服务器硬件优化,说白了就是「把能关的都关了,能开的都开了」。我见过太多人,网卡和交换机都选对了,结果服务器配置一塌糊涂,延迟还是下不来。

我的优化清单:

  1. BIOS设置:
    • 关闭CPU节能(C-States、P-States)—— 节能模式会让CPU频率动态调整,引入不可预测的延迟
    • 开启性能模式(Performance Mode)
    • 关闭超线程(Hyper-Threading)—— 这个有争议,但我实测关闭后延迟抖动更小
    • 设置NUMA节点亲和性 —— 让网卡和CPU在同一个NUMA节点上
  2. 操作系统调优:
    • 使用isolcpus隔离核心 —— 把业务进程绑定到隔离核心上,避免被其他进程干扰
    • 设置中断亲和性 —— 网卡中断绑定到指定CPU核心
    • 关闭透明大页(Transparent Hugepages)—— 用显式大页替代
    • 调整网络缓冲区大小 —— 别用默认值,太小了会丢包
  3. PCIe配置:
    • 确保网卡插在CPU直连的PCIe插槽上,别走PCH桥接
    • 检查PCIe链路宽度和速率 —— 用lspci -vvv查看,确保是x16 Gen3或更高
    • 开启PCIe ASPM(主动状态电源管理)?不,低延迟场景下要关闭它

血的教训:我曾经在一个项目中,所有硬件都选对了,但延迟就是比预期高30%。排查了三天,最后发现是BIOS里有个「CPU Power Management」选项没关。关了之后,延迟直接降了40%。所以,BIOS调优是性价比最高的优化手段,千万别偷懒。

五、选型总结:一张表搞定

组件 推荐方案 预算方案 避坑要点
网卡 Solarflare X2522 Intel XXV710 + DPDK 必须有硬件时间戳
交换机 Arista 7130系列 Mellanox SN2010 确认全端口Cut-through
线缆 DAC(≤7m)/ 单模光纤 多模光纤 + SR4 注意弯曲半径
服务器 Dell R750 / HPE DL380 超微定制服务器 BIOS调优是核心

好了,硬件选型这块就讲到这里。记住一句话:低延迟网络没有银弹,每个环节都要抠细节。你省下的每一纳秒,都是交易系统的竞争力。

专注资料整理