1

我正在使用带有“tcp src localhost”之类的过滤器的libpcap过滤数据包。它过滤所有来源为 localhost(我的主机)的数据包。
当 localhost 没有收到已发送数据包的 TCP 确认时,localhost 将转发该数据包。
并非所有被 libpcap 过滤的数据包都会到达其目的地,我需要识别数据包何时是“转发数据包”。libpcap 有什么方法可以识别转发的数据包吗?

4

1 回答 1

1

据我了解,您正在寻找 TCP 重传。这些可以在捕获后通过wireshark中的显示装配工找到。这两个应该可以帮助您:

  • 可以通过显示过滤器tcp.analysis.retransmission更多这样的过滤器)找到重新传输的数据包。
  • 当接收方收到乱序包(通常表示丢包)时,它会为丢失的 seq 号发送一个 ACK​​。这是一个重复的 ACK,可以使用tcp.analysis.duplicate_ack( details ) 找到。
于 2013-07-23T17:43:27.543 回答