23
2024
08
11:17:17

Intel I226-V 2.5G 网卡在 Esxi 软路由虚拟机中发生断流问题的处理

一、什么叫断流

简单来说,就是在日常使用过程中,出现有信号无网络、卡顿、下载速度慢、网络延迟高等情况。

比如说,网络信号明明满格,但是登陆微信仍显示当前网络不可用;再比如听在线音乐,突然断断续续一直缓冲等等。

二、原因分析

查阅网上资料,经过分析,可以确定基本上是跟 TSO 服务有关。

TSO 全称 TCP Segmentation Offload,即 TCP 分段卸载,通常也称为大型发送分载(LSO, Large Send Offload)。分段是指将大数据块分割成更小的数据段,卸载是指将工作负载从 CPU 移至网卡上的做法。卸载这项工作可以节省 CPU 周期,并且通常可以提高数据包处理性能。即 TSO 是一种利用网卡的少量处理能力,降低 CPU 发送数据包负载的技术,需要网卡硬件及驱动的支持

简单来说,因为驱动或硬件问题,比如散热不够等等,导致 TSO 服务异常,此时只要关闭 TSO 服务即可。

三、操作命令

I、Esxi 内核

即 VMKernel,通过 SSH 连接到 Esxi 母机执行。

1、查看命令

列出网卡清单:

[root@vn:~] esxcli network nic list
Name    PCI Device    Driver         Admin Status  Link Status  Speed  Duplex  MAC Address         MTU  Description
------  ------------  -------------  ------------  -----------  -----  ------  -----------------  ----  -----------
vmnic0  0000:01:00.0  igc-community  Up            Up            1000  Full    *  1500  Intel Corporation Ethernet Controller I226-V
vmnic1  0000:02:00.0  igc-community  Up            Up            1000  Full    *  1500  Intel Corporation Ethernet Controller I226-V

查看指定网卡的 TSO 服务状态:

[root@vn:~] esxcli network nic tso get -n vmnic0
NIC     Value
------  -----
vmnic0  on

2、关闭命令

[root@vn:~] esxcli network nic software set --ipv4tso=0 -n vmnic0
[root@vn:~] esxcli network nic software set --ipv6tso=0 -n vmnic0

3、开启命令

[root@vn:~] esxcli network nic software set --ipv4tso=1 -n vmnic0
[root@vn:~] esxcli network nic software set --ipv6tso=1 -n vmnic0

II、Esxi 控制台服务

通过网页登陆到 Esxi 控制台,找到管理 - 系统 - 高级设置。

1、查看命令

搜索关键字 TSO,可以搜到两个参数,分别是 Net.UseHwTSO 和 Net.UseHwTSO6,若参数值为 1 则表示启用,0 则表示禁用。

2、关闭命令

选中上述两个参数,点击编辑,设置参数值为 0 表示关闭(禁用)。

3、开启命令

选中上述两个参数,点击编辑,设置参数值为 1 表示开启(启用)。

III、VM 虚拟机

针对 Linux 系统,可以使用 ethtool 命令。

1、查看命令

# ethtool --show-offload eth7
Features for eth7:
......
tcp-segmentation-offload: on
    tx-tcp-segmentation: on
    tx-tcp-ecn-segmentation: off [fixed]
    tx-tcp6-segmentation: on
udp-fragmentation-offload: off [fixed]
.......

其中的 tcp-segmentation-offload 就是 TSO 服务。

2、关闭命令

# ethtool -K eth7 tso off
# ethtool -K eth7 gso off

注意,这里多了开启 gso,相当于是全局控制,同步设置。

3、开启命令

# ethtool -K eth0 tso on
# ethtool -K eth0 gso on

针对 Windows 系统,可以直接图形化查看修改。

在控制面板 - 网络和 Internet 连接,选中要配置的网卡,点右键再点属性,再点配置,切换到 高级 选项卡,找到 大量传送减负 v2(IPv4) 和 大量传送减负 v2(IPv6),设置开启或 关闭 保存即可。




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/7750.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: