You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MACsec速率无法突破2Gbps的原因分析及优化配置咨询

MACsec速率无法突破2Gbps的原因分析及优化配置咨询

兄弟,你遇到的这个问题太典型了——10G网卡跑MACsec却卡在2G以下,还伴随着ksoftirqd占满CPU,核心原因十有八九是MACsec默认走了软件加密路径,没用到你的BCM57416网卡的硬件加速能力。我给你梳理下具体的排查和优化步骤:

先搞懂问题根源

MACsec的加密解密操作如果靠CPU软中断处理,10G带宽的运算量会直接把单核CPU打满(你看到的ksoftirqd就是处理软中断的内核线程)。而你的BCM57416属于Broadcom NetXtreme-E系列,本身是支持MACsec硬件加速的,但大概率是内核配置或网卡设置没开启这个特性,导致只能用软件兜底,自然跑不满10G带宽。

一步步优化配置

1. 确认网卡硬件加速支持状态

先检查你的网卡是否已经加载了MACsec硬件加速相关的功能:

  • 用ethtool -k <你的网卡名>查看输出,找hw-macsec选项,如果显示off,说明硬件加速没开;
  • 再看macsec模块的参数:cat /sys/module/macsec/parameters/hw_accel,如果输出是N,说明模块默认没启用硬件加速。

2. 开启MACsec硬件加速

这是解决问题的核心步骤:

  • 先卸载再重新加载macsec模块,强制启用硬件加速:
    rmmod macsec
    modprobe macsec hw_accel=Y
    
  • 然后用ethtool开启网卡的硬件MACsec支持:
    ethtool -K <你的网卡名> hw-macsec on
    
    如果提示不支持这个选项,大概率是网卡固件版本太低,需要去Broadcom官网下载BCM57416的最新固件更新(注意备份原有固件,按官方步骤操作)。

3. 调整中断亲和性(硬件加速临时不可用时的兜底方案)

如果暂时没法启用硬件加速,把网卡的中断绑定到独立的CPU核心,避免和其他进程抢资源:

  • 用cat /proc/interrupts找到你的网卡对应的中断号(比如开头是<网卡名>-rx-0的那行);
  • 把中断绑定到空闲的CPU核心,比如绑定到CPU2和CPU3:
    echo 2-3 > /proc/irq/<中断号>/smp_affinity_list
    
    这样可以让软中断的负载分散到多核,提升处理能力。

4. 优化MACsec配置细节

  • 调整加密算法:有些硬件加速只支持特定的加密套件,试试换成gcm-aes-256(两端必须一致),配置命令示例:
    ip macsec add dev <网卡名> tx sa 0 pn 1000 cipher gcm-aes-256 key 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff
    
  • 关闭ESN(扩展序列号):如果你的场景不需要防重放的长序列,关闭ESN可以减少一点开销,配置时加no-esn参数:
    ip macsec add dev <网卡名> rx port 1 address <对端MAC> no-esn
    

5. 内核网络参数调优

针对高带宽网络场景调整内核参数,提升数据包处理能力:

# 增大网络设备接收队列的最大长度
sysctl -w net.core.netdev_max_backlog=10000
# 启用接收端缩放(RPS),把数据包分发到多个CPU核心
sysctl -w net.core.rps_sock_flow_entries=32768
# 允许网卡的接收队列使用CPU0-3(根据你的CPU核心数调整)
echo f > /sys/class/net/<网卡名>/queues/rx-0/rps_cpus

可以把这些参数写入/etc/sysctl.conf,重启后自动生效。

验证优化效果

配置完成后,用ethtool -S <网卡名>查看MACsec相关统计,比如hw_macsec_tx_packets和hw_macsec_rx_packets,如果这些数值在iperf3测试时持续增长,说明硬件加速已经生效。此时再跑iperf3,应该能看到速率大幅提升,同时ksoftirqd的CPU占用会明显下降。

备注:内容来源于stack exchange,提问作者RandomUser8888

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 08:24:29