现象:
设置了网卡mtu为1500,用tcpdump抓包,发现抓到的包大小有大于1500的,但在网卡连接的交换机上抓包,没有抓到大于1500的包。这是什么原因?
原因:
后来发现这跟网卡的tso功能有关,tso(TCP Segment Offload)是一种利用网卡替代cpu对大数据包进行tcp分片,降低cpu负载的技术。因为开启了网卡的tso功能,tcpdump又是在内核协议栈层面抓包,内核协议栈是不会tcp分片的,所以tcpdump会抓到大于mtu的包;因为tcp分片交给了网卡来处理,所以在交换机上抓包,抓到的包都是不大于mtu的包了。

查看网卡是否开启tso功能:

tso与mtu

关闭tso功能:

tso与mtu

当然要充分利用网卡的特性,提升cpu性能,需要打开tso。

 

相关文章:

  • 2021-07-09
  • 2021-07-17
  • 2021-08-06
  • 2021-11-29
  • 2021-12-08
猜你喜欢
  • 2021-11-08
  • 2021-10-18
  • 2021-04-19
  • 2021-11-22
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案