全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 6625|回复: 27
打印 上一主题 下一主题

[疑问] 螃蟹卡 RTL8168 更新驱动解决 BBR 单线程限速

  [复制链接]
跳转到指定楼层
1#
发表于 2018-10-18 20:49:05 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 airium 于 2018-11-3 18:53 编辑

警告:收到过一例失联汇报和一例失败汇报,请小心修改驱动,测试过再部署到主力机器上

书接 https://www.loc.888543.xyz/forum.php?mod=redirect&goto=findpost&ptid=466923&pid=
@suantong 提到螃蟹卡开 BBR 导致单线程掉速 4MB/s 的问题

这个东西最后确定只是驱动的锅,与网卡是否支持合并包无关
一般内核自带的螃蟹卡驱动模块是 r8169,这个驱动在 RTL8111/8168/8411 上只是兼容,而 TSO 等其实工作不正常
因此需要更换驱动,更新驱动的过程见:
https://www.unixblogger.com/how-to-get-your-realtek-rtl8111rtl8168-working-updated-guide/

这份过程里有坑,修订如下:

1. 安装依赖
  1. apt update && apt install build-essential libelf-dev linux-headers-$(uname -r)
复制代码

如果是 ppa 源的 kernel,请回去自己装 headers

2. 从 Realtek 官网下载驱动
http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=13&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false#2
然后解压
  1. tar xfvj 0012-r8168-8.046.00.tar.bz2 && cd r8168-8.046.00
复制代码


3. 运行官方脚本即可:
  1. ./autorun.sh || modprobe r8169
复制代码

官方脚本会自动编译驱动模块至当前内核,过程中会断网(但不需要screen)
典型等待时间为 3-5min (g3900 [email protected]),编译完成后 SSH 会自动恢复
如果超过 10min 网络还是没有回来,请到面板手动重启

4. 检查驱动状态,比如:
  1. ethtool -i eth0
复制代码

成功结果,比如:
r8168.jpg (33.39 KB, 下载次数: 22)
如果失败会在该目录下留下log,大多是缺依赖,请根据其中的报错自行操作
不需要手动禁用 r8169 驱动模块,官方脚本会做这件事

如果需要更换内核请重新按以上操作,一般内核都自带 r8169,换内核后重启不会掉网
本教程适用于使用 RTL8111/8168/8411 螃蟹网卡的机器,比如部分 ikoula 10o,hetzner 非 iNIC 的机器 等
请 lspci 检查自己的网卡适用修改驱动:
realtek_8168.jpg (8.23 KB, 下载次数: 18)

更新驱动后启用 BBR 不会导致单线程被卡 4MB/s,网络性能提高 pt.jpg (19.97 KB, 下载次数: 19)

suzizi 该用户已被删除
推荐
发表于 2018-10-18 20:56:17 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
28#
发表于 2018-10-20 20:56:14 | 只看该作者
airium 发表于 2018-10-20 20:16
讲道理不应该 我在 Debian 8 上测试是没问题的

我也不知道 要不是重装太麻烦我就帮你一探究竟了
27#
 楼主| 发表于 2018-10-20 20:16:17 | 只看该作者
杰克王 发表于 2018-10-20 19:37
我用的debian 9

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PC ...

讲道理不应该 我在 Debian 8 上测试是没问题的
26#
 楼主| 发表于 2018-10-20 20:05:25 | 只看该作者
YunLan 发表于 2018-10-20 18:04
我查了主板型号,是微星h87-g43,官网写这个主板型号是rtl8111e,后面导出安装日志显示完成,但是重启还是 ...

emmmm 那我也没什么办法了
25#
发表于 2018-10-20 19:37:21 | 只看该作者
本帖最后由 杰克王 于 2018-10-20 19:42 编辑
airium 发表于 2018-10-20 17:32
你用的是什么系统?能不能 lspci 看看网卡型号?


我用的debian 9

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)

然后驱动是r8169
24#
发表于 2018-10-20 18:04:11 来自手机 | 只看该作者
我查了主板型号,是微星h87-g43,官网写这个主板型号是rtl8111e,后面导出安装日志显示完成,但是重启还是老驱动,lsmod可以同时看到8169和8168的模块,手动移除8169,加入blacklist还是会加载8169,不知道为什么
23#
 楼主| 发表于 2018-10-20 17:32:56 | 只看该作者
杰克王 发表于 2018-10-20 09:02
救援和重装都不好使了。
最后问客服,客服告诉我network模块出现故障,人工帮我重装了。 ...

你用的是什么系统?能不能 lspci 看看网卡型号?
22#
发表于 2018-10-20 09:02:13 | 只看该作者
airium 发表于 2018-10-20 00:14
有救援模式吗 能不能进去看看 log?顺便可以 mount 上分区 chroot 一波把网救回来 ...

救援和重装都不好使了。
最后问客服,客服告诉我network模块出现故障,人工帮我重装了。
21#
 楼主| 发表于 2018-10-20 00:14:25 | 只看该作者
杰克王 发表于 2018-10-19 22:47
谢谢大佬! 我按照教程给波兰服务器安装完以后失联了

有救援模式吗 能不能进去看看 log?顺便可以 mount 上分区 chroot 一波把网救回来
20#
发表于 2018-10-19 22:47:16 来自手机 | 只看该作者
谢谢大佬! 我按照教程给波兰服务器安装完以后失联了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2026-1-13 21:49 , Processed in 0.076869 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表