2.5G 网卡是千兆与万兆之间的一档,单口净荷大约 280 MB/s 量级,放在视觉工位上正好落在 500 万到 1200 万像素、中速节拍这一段,正好落在 500 万到 1200 万像素、中速节拍的 AOI 工位这一段需求上。本文按工程手册的方式写,给出三组可执行的判据、一份带宽预算表、一份复测清单,以及一笔 TCO 账,供选型、施工与验收三个阶段直接取用。所有具体数值一律以整机规格与整机复测记录为准,本文只提供算法与判据,不提供可以直接抄的配置单。
一、适用范围与结论先行
适用:面阵相机、中速节拍、单工位数路到十余路、现有千兆链路已经吃紧而万兆明显过剩的场合。
不适用:线扫相机、多路密集工位、单机聚合净荷已经超过 250 MB/s 的场合。这几类应直接上万兆链路,2.5G 只会把瓶颈往后挪一步。
三条判据,缺一条这张卡就退化成一块更贵的千兆卡:
- 相机侧端口速率是否到 2.5G;
- 链路(线缆、两端端口、驱动)能否协商到 2.5G;
- 整机能否扛住翻倍的中断、缓冲与 PCIe 开销。
工程上最容易出错的地方不是"算错",而是"没算"。配置单按"网卡写 2.5G、相机写满帧"就签了,实际跑起来一路千兆、偶发丢帧,回头查才发现相机端口只有千兆。所以下面三节都按"判据 + 判定方法 + 不合格处置"来写。
还有一个顺序问题值得单独说:先定档位,再选硬件,最后才做优化。反过来做——先买了一堆 2.5G 网卡,再去现场找办法把它们跑满——几乎必然演变成"改驱动、调参数、加缓存"的长期消耗战,而根因(相机只到千兆、聚合净荷超过阈值)一条都没解决。选型阶段多花半天核这三条判据,比联调阶段多花两周救火便宜得多。
最后要明确这一档的边界位置:2.5G 不是"千兆的加强版",也不是"万兆的省钱版",它是一条独立的中间档。把它的定位说清楚,才不会出现"拿它当万兆用"或"拿它当千兆的免费升级"两种误用。
二、带宽预算:把"够不够"算成一张表
带宽预算的作用是先确定档位,再选具体硬件。算法是:
单路原始带宽 = 分辨率 × 位深 × 帧率
单路有效带宽 = 单路原始带宽 ÷(1 + 协议开销比例)
整机聚合净荷 = 单路有效带宽 × 路数 × 同时到达系数 × 余量系数
其中协议开销、同时到达系数、余量系数都必须按整机规格与现场节拍核定,不要用"大概 1.2 倍"这种拍脑袋的系数。表 1 是一个核算表模板,把每一路的数值填进去再求和。
| 项目 | 符号 | 取值来源 | 备注 |
|---|---|---|---|
| 分辨率(像素) | R | 相机规格 | 宽 × 高 |
| 位深(bit) | D | 相机输出格式 | 8/10/12 位 |
| 帧率(fps) | F | 现场节拍反推 | 按节拍上限取 |
| 路数 | N | 工位相机数量 | 含预留 |
| 协议开销 | k | 整机实测 | 含包头、重传、编码 |
| 同时到达系数 | a | 现场触发方式 | 同步触发取 1 |
| 余量 | m | 经验 + 复测 | 建议不低于 1.2 |
| 聚合净荷 | Q | 上式计算 | 与 280/250 MB/s 比较 |
以 500 万像素、8 位、30 帧为例,单路原始带宽约 150 MB/s 量级(按 5,000,000 × 8 × 30 估算,实际以像素规格与帧率为准)。这个量级放在千兆上是一定不够的,放在 2.5G 上刚好有余量;但如果是四路同时触发,聚合后就逼近 600 MB/s,已经越过 2.5G 的能力,必须上万兆。
档位判定规则:聚合净荷低于千兆能力 → 不必上 2.5G;落在千兆与 2.5G 之间 → 2.5G 是最经济的一档;超过 250 MB/s → 直接万兆,不要在 2.5G 上做局部优化。
把同一套算法换到 1200 万像素、12 位、20 帧,单路原始带宽就落在 360 MB/s 量级(按 12,000,000 × 12 × 20 估算),已经越过 2.5G 的单口能力——同样的相机档位,位深和帧率一改,结论就反转。这也是为什么本文坚持按算法核算、不提供现成配置单:脱离分辨率、位深、帧率与路数的"2.5G 够不够",是一个没有答案的问题。
预算表要留一列给"触发方式"。多相机如果是硬同步触发,同时到达系数接近 1,峰值就是各路之和;如果是轮询或错峰触发,实际峰值会低一些,但低多少必须用现场节拍量出来,不能假设。工程上宁可把同时到达系数按最坏情况取,也不要按平均值取——平均值好看的机器,峰值丢帧的概率最高。
三、判据一:相机侧端口速率
这是三条判据中最先决的一条。工业 GigE 相机绝大多数仍是千兆口,接到 2.5G 网卡上会协商回千兆,帧率不涨。这不是网卡故障,是链路两端取小的必然结果。
判定方法:
- 查相机规格书里的接口速率一栏,不要查型号宣传页;
- 上电后用链路状态确认实际协商速率,而不是看配置单;
- 多相机工位逐路确认,不要因为"同一批次的相机"就默认一致——同型号不同批次混用接口版本的情况并不罕见。
判定结果与处置:
- 相机千兆口 → 2.5G 网卡只保留"端口密度 / 多相机聚合"的价值,单路提速的预期必须删掉;
- 相机 2.5G 口 → 链路两端能对上,单路净荷才有机会到 280 MB/s 量级;
- 相机万兆口 → 用万兆链路,2.5G 变瓶颈。
顺带一条工程经验:多相机工位要把相机分散到不同的卡或不同的 PCIe 根端口上。全部压在一块多口卡上,单路测试全过、整机一跑就丢帧,这类问题在现场排查成本极高,因为它不在任何一根线缆上。
再补一条容易被当成"个别坏件"的现象:双口相机的两个口如果分别接到不同速率的网口上,相机侧的运行模式可能按较慢的那条链路来定,表现为"两台一模一样的相机,一台跑得快一台跑得慢"。遇到这种情况先查拓扑,不要先返修相机。
四、判据二:链路协商的线缆、端口与驱动
即便两端都是 2.5G,链路仍可能停在千兆。判据是三件套同时成立,缺一即降速:
| 要素 | 合格判据 | 不合格的典型现象 |
|---|---|---|
| 线缆等级 | 满足 2.5G 的双绞线等级,整段同批次同等级 | 协商不上、退回千兆,外观完全正常 |
| 两端端口 | 网卡口与中间交换机口都是 2.5G | 千兆交换机夹在中间,两端再快也没用 |
| 驱动与固件 | 驱动已打开 2.5G 档位,固件版本匹配 | 默认只跑千兆,需要显式设置 |
判定方法:读链路状态里的协商速率与双工模式;再看错包、CRC 错误与重传统计。三个判据都成立之后再谈性能,否则谈的是幻觉。
不合格处置:链路反复在 2.5G 与千兆之间跳动,通常不是"运气不好",而是线缆或接插件处在临界状态。这类链路即使某次协商成功,长时间跑也会偶发丢帧,处置方式是换线、换口、换接插件,逐段二分定位,不要靠改驱动参数掩盖。
还有一处常被忽略:机箱内部的走线如果经过转接板或延长线,等效等级会下降。验收时要把这一段算进链路,而不是只看机箱外面那一段。
五、判据三:整机的中断、缓冲与 PCIe 余量
这条判据最少被写进选型文档,却最常在联调后期爆出来。
速率从千兆提到 2.5G,单位时间内的数据包数量、中断次数、需要拷贝与校验的缓冲都在成倍增加。以太网相机普遍是小包、高频的流量模型,包越小,单位数据量对应的中断越多。中断一多,CPU 花在收包上的时间上升,留给图像处理与运动控制的余量被吃掉。
三处余量,逐项核:
- 中断与软中断:看各核分布,不只看总占用率;单核打满而总占用不高,是最常见的假健康。
- 缓冲与内存带宽:多路同时到达时的缓冲深度与内存带宽,决定"偶发丢帧",而不是"平均帧率"。
- PCIe 通道:多口卡共享上游通道,几路同时满速会不会在总线上排队,从相机侧完全看不出来。
判定方法:在峰值工况下连续跑,而不是空载点一下。记录最长连续无丢帧时长、峰值时的中断占用、以及温升。这三项没有统一的合格线,必须按整机规格与现场复测记录确定。
处置方向(按代价从低到高):先调中断合并与队列分配,让收包分散到多个核;再看缓冲深度是否够;再看相机是否过于集中在一块卡上;最后才考虑换卡或换平台。顺序反了就会陷入"换硬件解决软件问题"的循环。中断合并的代价是时延,对节拍敏感的场景要单独权衡——合并得越狠,单帧到达的延迟抖动越大,这一点在运动控制联动时会直接体现出来。
还要留一列给温升。2.5G 网卡的功耗比千兆高,密闭无风扇机箱里连续跑,温升会传导到整机内部。温升本身不直接丢帧,但它会让网卡与交换机的链路稳定性下降,最终表现为"跑几个小时之后开始偶发丢帧"。复测时至少要覆盖一个完整的连续运行周期,而不是开机十分钟的抽测。
六、复测清单与 TCO:验收怎么留痕、钱花在哪
复测清单(验收阶段逐条留痕,缺项不许签字):
- 相机端口速率实测值与规格书一致
- 每条链路协商速率达到 2.5G,双工模式正确
- 错包、CRC 错误、重传计数在长时间运行后无异常增长
- 多相机是否分散到不同卡 / 不同 PCIe 根端口,已记录拓扑
- 峰值工况下各核中断占用、缓冲与内存带宽留有余量
- 连续运行无丢帧的最长时长已记录
- 机箱内走线与转接段的等效线缆等级已核
- 聚合净荷与 250 MB/s 阈值的比较结论已写入验收单
- PoE 的功率预算与压降单独核算(不并入网卡档位讨论)
TCO 账要把五项一起算,不能只比网卡单价:
- 网卡本身的差价;
- 交换机档位差价(2.5G 与万兆的交换机不是同一个价位);
- 线缆与布线成本(等级上去,线材与施工都变贵);
- 主机侧 CPU 与内存的余量成本——2.5G 省下的那点网卡钱,可能被更高的 CPU 配置吃掉;
- 扩容成本:一年后路数翻倍时,2.5G 是否需要整体换掉。
多数工位的结论是:2.5G 在"千兆不够、万兆过剩"这一段上确实最经济,但前提是三条判据都成立、聚合净荷没有越过 250 MB/s。越过这条线,省下来的钱会在第二次扩容时连本带利还回去。
TCO 里最容易被低估的是第 4 项。2.5G 把压力从链路挪到了主机:收包更密、中断更多、缓冲更深。如果为了扛住这些而在整机上加了配置,那么"省下来的网卡差价"其实是被转移进了整机预算,而不是消失了。做这笔记账时,要把整机配置差异一起拉进对比表,而不是只比较两块网卡的价格。
同样容易被低估的是第 3 项。2.5G 对线缆等级的要求比千兆高一档,老厂房里那些"当年按千兆布的、现在还能用"的线,换档时往往要整段替换。一段几十米的桥架拆改,成本可能超过网卡与交换机差价的总和。所以现场评估时,先数线,再数卡。
把复测留痕做扎实,还有一层价值:下一次同类工位可以直接复用这次的判据结果,不必重新踩一遍坑。工程手册的意义就在于此——它不是把结论写死,而是把"怎么得出结论"写清楚,让下一个人能按同样步骤得到自己的答案。
七、收口:一句话的选型口径
把三组判据合成一句话:相机有 2.5G 口、链路能协商到 2.5G、整机在峰值工况下留有余量,三条同时成立,2.5G 才值得上;聚合净荷逼近或超过 250 MB/s,直接上万兆。
视觉工位的选型文档里,建议把这三条写成三个"是/否"的勾选项,而不是一段描述。可勾选的判据能被执行,描述性的判据只会被跳过。