与接口统计工具不同,tcpdump 不提供哪些数据?

与接口统计工具不同,tcpdump 不提供哪些数据?

我正在分析特定接口上的日志,并想知道为什么在小负载测试期间执行此命令:

tcpdump -i enp21s0f0 -s0 -w /tmp/dump2.cap`

只捕获了 75 MB,当时

ethtool -S enp21s0f0 / ifconfig enp21s0f0 

显示大约有80 MB的数据(我比较了测试前后的rx_bytes&tx_bytes来获得这个值)。

之后,我对一个 ARP 数据包进行了相同的测试(多次),tcpdump 捕获了 64 个字节,但 ethtool 显示 68 个字节。那么,这 4 个字节包含什么?是否可以捕获这些字节?或者,至少可以对它们进行预测?

答案1

原因是 NIC 驱动程序添加的流量,仅在两个接口之间可见:

  1. 大段卸载
  2. 帧校验序列

应用以下命令后,可以通过 tcpdump 获取此流量:

  • ethtool --offload enp21s0f0 rx 关闭 tx 关闭
  • ethtool -K enp21s0f0 rx-fcs 开启

相关内容