网卡TSO功能测试

测试目的

测试网卡在IPv4/IPv6场景下的TSO功能。

预置条件

按组网方式1搭建测试环境。

测试步骤

  1. 开启网卡tso卸载功能:

    ethtool -K enp7s0f0 tso on

  2. 获取网卡的MTU值(一般默认为1500):

    ifconfig enp7s0f0

  3. 本端使用iperf工具TCP/IPv4向对端发送大文件,

    参考命令:

    本端发包:iperf -c 对端IP地址 -n 10000

    对端收包:iperf -s

  4. 同时在本端使用tcpdump抓取发送的报文(在驱动层抓的包,到网卡硬件之前的报文),有结果1。

    tcpdump -e -i enp7s0f0 -w 文件名.pcap

  5. 关闭网卡tso卸载功能:

    ethtool -K <ifname> tso off

  6. 本端使用iperf工具TCP/IPv4向对端发送大文件,

    参考命令:

    本端发包:iperf -c 对端IP地址 -n 10000

    对端收包:iperf -s

    同时在本端使用tcpdump抓取发送的报文(在驱动层抓的包,到网卡硬件之前的报文),有结果2。

    tcpdump -e -i enp7s0f0 -w 文件名.pcap

  7. 重复上述步骤1-6且步骤3、步骤5改为本端使用TCP/IPv6发送大块数据,查看预期结果1、2。

预期结果

  1. 抓取到报文的长度远大于MTU值。
  2. 抓取到报文的长度为1514字节。

测试结果

-

备注

由于网卡会代替TCP/IP协议栈完成TCP Segmentation,所以tcpdump 抓到的包校验值和错误。