RTL8153国产替代方案:CH398实测与选型参考

RTL8153是USB千兆网卡应用最广的芯片之一,网卡、扩展坞、工控主板都在用。信创和供应链安全的背景下,找一颗能直接替换的国产芯片是很多客户的实际需求。CH398是沁恒的方案之一,其中CH398X引脚兼容RTL8153B/E。这篇文章把替换RTL8153的决策依据——兼容性、性能、驱动、采购——用实测数据讲清楚。

一、能不能不改板

替换芯片,第一件事是电路要不要动。CH398X引脚兼容RTL8153B/E,功能上可替代AX88179,现有RTL8153方案的PCB不用改。除此之外还有两件事降低了替换成本:

  • 内置Flash:替换RTL8153后外部Flash器件可省掉,外围更精简
  • 固化唯一MAC:出厂已烧好,量产免二次烧录,也提供配置工具自由配置

供电上内置LDO和DC-DC,单一5V或3.3V即可,外围器件少。封装QFN40,工业级-40~85℃。

USB转千兆网卡芯片CH398兼容替代RTL8153,USB转百兆网卡芯片CH397兼容替代RTL8152_ch397a-CSDN博客https://blog.csdn.net/OIDCAT/article/details/134705500?spm=1001.2014.3001.5501

二、替换后性能会不会缩水

替换最怕性能打折,先看吞吐。测试环境:Windows平台,iperf3单向TCP打流100秒。


四组iperf3实测汇总:CH398发送945/接收942Mbps,RTL8153发送946/接收945Mbps,性能处于同一梯队

下面两张是测速结果:
CH398单向发送速率 & 单向接收速率

RTL8153单向发送速率 & 单向接收速率

结论直接:替换RTL8153后吞吐不缩水。

三、硬件offload:替换之外多出来的能力

RTL8153本身也支持校验卸载、TSO、VLAN等offload,替换过去这些能力不能丢。这一节把CH398的offload逐项实测摆开——替换后功能不缺,还有广播风暴抑制这类额外项。需要注意的是offload功能依赖厂商驱动。


发送加速流水线:CPU只参与起始的send()调用,聚合、切包、算校验、插标签全在芯片硬件完成,千兆满载CPU约11%(CPU占用率根据不同平台能力有所区别)

TSO开关与小主控的差异

TSO(TCP分段卸载)的开关对比在两个平台上结果不一样:

平台TSO开TSO关说明
x86(Xeon E5-2666 v3)946.6Mbps,softirq 0.58%946.6Mbps,softirq 0.88%吞吐相同,CPU只差0.3个百分点
地平线X3(4核Cortex-A53 @1.2GHz)926.65Mbps,发送CPU 14.33%,softirq 2.38%907.61Mbps,发送CPU 19.45%,softirq 4.01%关TSO后吞吐掉19Mbps,CPU涨5.1个百分点

两组测试TCP重传都是0、收发错误都是0。这个结果说明:x86上offload开关感知不强,因为CPU本来就宽裕;CH398硬件offload的真正价值在CPU紧张的小主控——分片、校验这些活由硬件接住,Cortex-A53这类核才腾得出手。

校验和卸载功能

每个TCP/IP报文收发都要算校验和,千兆满载下大包场景每秒约16万次,64字节小包密集负载可达每秒298万次。CH398把IPv4/IPv6的TCP/UDP校验全部卸载到硬件,收发双向,且是芯片级固化,驱动加载即生效。

收益跟报文密度挂钩:

场景帧大小每秒校验次数节省CPU(x86估算)
大文件传输1518B约16万不到1%
Web混合流量512B约48万2~3%
VoIP/工控采集64B约298万8~15%

包越小越密,硬件校验越值钱;换到ARM嵌入式平台,这个比例还要再往上。

VLAN:硬件插剥标签,吞吐无损

802.1Q标签的插入和剥离在芯片硬件层完成,一条物理链路隔离多个逻辑网络。实测(Ubuntu 22.04,CH398走eth1.10子接口直连对端):

测试项结果
iperf3 TCP上传946Mbps,0重传
iperf3 TCP下载946Mbps,0重传
CPU使用率10.8%,与无VLAN物理口一致
VLAN标签操作开销0%(硬件offload)
跨VLAN隔离VLAN 10互通0%丢包,VLAN 20访问目标100%丢包,硬件层阻断生效

Wireshark抓物理口可见发出帧携带VLAN ID:10,确认标签由硬件插入而非软件。

国产USB转千兆网卡芯片CH398 VLAN应用-CSDN博客https://blog.csdn.net/OIDCAT/article/details/161722710?spm=1001.2014.3001.5501

巨型帧:MTU9000吞吐991Mbps,报文数减82.5%

CH398最大支持MTU9000(设9216会被驱动拒绝)。相同环境只改MTU:

指标MTU1500MTU9000
TCP吞吐947Mbps991Mbps
帧效率94.9%99.1%
10秒tx报文计数805,093137,897(-82.9%)
10秒rx报文计数376,32768,560(-81.8%)
重传00

吞吐提升来自帧效率:帧头占比从约5%降到不足1%,报文数减82.5%。

国产USB转千兆网卡芯片CH398X-巨型帧(Jumbo Frame)应用-CSDN博客https://blog.csdn.net/OIDCAT/article/details/162847796?spm=1001.2014.3001.5501

广播风暴抑制:芯片级切断,CPU零参与

网络环路、设备故障、恶意攻击都可能让广播帧速率失控,普通网卡来者不拒——每包一次中断淹掉CPU,业务流量被挤占。CH398在MAC层硬件监控广播/组播帧速率,超阈值自动屏蔽,风暴结束自动恢复。

实测:对端以约19000pps灌广播帧,阈值设1000pps:

阶段实测
抑制关闭广播帧全量涌入协议栈,Wireshark可见洪水
抑制开启超阈值帧在芯片层被屏蔽,应用层完全不可见
风暴中业务ping 0%丢包,iperf3 922/927Mbps零波动
风暴结束自动恢复广播接收

与软件过滤的本质差别:软件方案是逐包中断之后在协议栈里丢弃,中断照样发生;硬件抑制是帧根本进不了协议栈,CPU全程零参与。

USB转千兆网卡 CH398 广播风暴抑制功能验证-CSDN博客https://blog.csdn.net/OIDCAT/article/details/162915297?spm=1001.2014.3001.5501

四、驱动和系统兼容性

  • 协议支持:支持CDC-NCM、CDC-ECM、RNDIS三种主流USB网络类协议,适配多样化的网络接入场景。

  • 操作系统免驱支持:在Linux(含统信UOS、麒麟)、Android、iOS/iPadOS、macOS、HarmonyOS等系统上实现即插即用,免驱直连;在Windows系统上同样免驱,同时额外提供专用厂商驱动,以解锁高级功能。

  • 高级功能(需加载厂商驱动)

    • 支持校验卸载(Checksum Offload)、VLAN配置、巨型帧(Jumbo Frame)、TSO(大包分段卸载)、广播抑制等网络加速与管控功能;

    • Windows端驱动支持MAC地址直通(MAC Address Pass-Through),可实现设备MAC地址与主机网卡地址的智能同步。

  • 扩展驱动支持:提供适用于uboot、UEFI及iPXE环境的预启动驱动,便于无盘启动、网络引导等特殊场景部署。

⚠️ 高级功能依赖厂商驱动。内核CDC-NCM免驱提供基础连通性,不含硬件offload。

五、选型参考

维度CH398
接口USB3.2 Gen1,10/100/1000M自适应
内核自研RISC-V内核
封装QFN40,工业级-40~85℃
兼容CH398X引脚兼容RTL8153B/E,功能替代AX88179
供电单一5V或3.3V,内置LDO + DC-DC
吞吐单向TCP发送/接收均贴近950Mbps(x86实测945/942Mbps,测试结果随平台波动)
高级功能校验卸载(硬件固化)、TSO、VLAN、巨型帧MTU9000、广播风暴抑制
采购立创商城有CH398X系列在售

六、小结

替换RTL8153要过的三关,这篇都用实测过了:

硬件上CH398X引脚兼容RTL8153B/E,内置Flash加出厂固化MAC,不改板、免二次烧录;

性能上吞吐贴着950Mbps线速上限跑,x86和Cortex-A53两个平台TCP重传都是0;

驱动上三种协议默认免驱,offload功能走厂商驱动。offload能力与RTL8153对齐,校验卸载、TSO、VLAN、巨型帧逐项实测,另有硬件广播风暴抑制——对小主控的嵌入式场景,这些省下来的CPU就是系统余量。

设计资料和驱动见参考链接。

参考

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐