【问题标题】:Disabling LRO using ethtool?使用 ethtool 禁用 LRO?
【发布时间】:2011-05-26 04:45:06
【问题描述】:

我的 NIC 驱动程序不支持 H/W LRO,但在驱动程序中模拟 LRO。现在可以使用“ethtool -k ethx gro off”禁用 GRO(这是一个 linux 网络堆栈功能)。 LRO也可以使用吗?我知道大多数发行版都有 LRO 或 GRO。因此,如果使用 ethtool 禁用了 LRO,是否意味着关闭了我在驱动程序中执行的 H/W LRO 功能或 LRO 仿真功能?

【问题讨论】:

  • 对于读者:LRO 代表Large receive offload。这是一种通过快速传输来减少网卡中断次数的方法,但是thereareknownissueswithrouting或者桥接
  • 仅供参考,在非 linux 协议栈中也存在此问题。由于不会重新计算校验和(至少 gro 是这种情况),某些网络堆栈(如 cisco 的 tcp)会检查校验和,而不是像 linux tcp 那样宽松并忽略错误。

标签: linux networking


【解决方案1】:

是的,如果你的 ethtool 足够新的话。

在我的 Ubuntu 机器上(Natty Narwhal),“man ethtool”和“ethtool --help”表明 LRO 的控制方式与 GRO 一样;即

ethtool -K ethX lro off

运行“ethtool --help | grep lro”看看你的是否支持。

【讨论】:

    【解决方案2】:
    ethtool -k ethx lro off
    

    它应该阻止系统执行 lro。但是,许多仍然使用 LRO 的驱动程序已损坏并且不支持 ethtool。

    http://www.spinics.net/lists/netdev/msg149013.html

    【讨论】:

    • 这是错误的,-k(小写)显示设置。 Nemo 的答案是正确的用法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-06
    • 2021-05-22
    • 1970-01-01
    相关资源
    最近更新 更多