osnosn

  博客园 :: 首页 :: 博问 :: 闪存 :: :: 联系 :: 订阅 订阅 :: 管理 ::

OpenWRT23.05_装上_2.5G_USB3网卡_测速太慢

转载注明来源: 本文链接 来自osnosn的博客,写于 2024-04-29.

现象

  • Openwrt-23.05.3 裸装在机器 N3160 机器上。有 4核。
    原机有两个网卡,一个是板载,一个是mimiPCIE。都是千兆。
    使用没发现问题,两张网卡都能跑满千兆。
  • 升级2.5G网卡。把miniPCIE的网卡(rtl8111千兆)拔掉,换上螃蟹的rtl8125b 2.5G网卡。
    再插一个USB3.0的 usb转rtl8152b,2.5G网卡。
  • usb转rtl8125b 在openwrt下用的是 kmod-usb-net-rtl8152 驱动。
  • 分别对两个 2.5G 网卡测速。
    发现,miniPCIE的2.5G网卡,能跑到2.39Gbps左右。算是正常。
    USB的2.5G网卡,只能跑到500-600Mbps。很不正常。

排查

  • openwrt中,检查各种配置,没发现问题。
  • 关掉 openwrt中,各种服务,包括且不限于,防火墙,SQM-QOS,DDNS,... 测速还是600Mbps左右。
  • 检查网卡,也在双工状态下。
  • 在反复测速时,随手开了一个终端,运行了 htop。
    意外的发现 CPU0 占用100%,另外 3个核心占用很小。
    原来,usb网卡确实占用 CPU非常的高。
    而这台 N3160单核性能不太够。导致网卡速度上不去。
  • 上网一通搜索。发现可以安装 irqbalance 解决只占一个CPU核心的问题。
  • 安装 opkg install irqbalance, 再测速,还是不行。
    重启openwrt系统,再测,速度有2.3Gbps。usb的2.5G网卡速度终于正常了。
    看来,irqbalance需要 重启openwrt系统才生效
  • 对usb的 2.5G网卡测速,htop显示 4个核心的平均负载是 20-40%

再排查

  • 用了几天,速度还是不行。怀疑2.5G网卡驱动有问题。
  • 考虑用dkms装小螃蟹官版编译。
  • 建立openwrt的sdk 编译环境。
  • 从 LEAN的源码中,找到 8125b 和 8152b 的驱动目录。
    包含 Makefile 和 patches 目录。
    放入 sdk 环境编译。
  • 生成的kmod,安装替换掉原版的驱动。
  • 拆除 irqbanlance。
  • 目前使用正常。测速时,多个cpu都工作,不会只占用一个CPU。

----end----


转载注明来源: 本文链接 https://www.cnblogs.com/osnosn/p/18166483.html
来自 osnosn的博客 https://www.cnblogs.com/osnosn/ .


posted on 2024-04-29 19:59  osnosn  阅读(1205)  评论(0编辑  收藏  举报