TCP错误解释

网络工程 tcp 协议论
2022-02-19 23:06:31

谁能解释这些错误:

TCP 确认的看不见的段
TCP 重复确认
TCP 上一个段未捕获
TCP 乱序
TCP 重传
1个回答

似乎这些是来自 Wireshark 的数据包捕获描述。

TCP 确认的看不见的段

表示此数据包确认未捕获的数据。传输正常,接收方确认,但 Wireshark 无法在捕获中找到数据包。这通常发生在捕获设备不够快时。

TCP Dup ACK在这里回答

TCP 上一个段未捕获

如果数据包 N 标有未捕获的前一个段,则表示在捕获中没有来自同一 TCP 会话的数据包,其 seq + 长度与数据包 N 的 seq 匹配。最典型的原因是数据包丢失和/或延迟启动捕获,这就是使用有问题的措辞的原因。但最终可能还有其他原因(发送方的 TCP 堆栈有问题,多路径网络结构允许属于同一 TCP 会话的数据包通过不同的网络接口,因此数据包确实到达目的地但 Wireshark 看不到它们,...),因此,您有责任检查在您的特定情况下发生这种情况的真正原因。

TCP 乱序

它只是意味着以不同的顺序接收特定帧(在序列中的后续数据包之后)。这通常不是问题。它可能表明源和目的地之间有多条路径 - 并且一个人会通过更长的路径。这意味着 TCP 需要做更多的工作来以正确的顺序重新组装段。

TCP 重传

当接收套接字检测到传入的数据段时,它使用 TCP 标头中的确认号来指示接收。发送数据包后,发送方将启动一个可变长度的重传定时器。如果在计时器到期之前它没有收到确认,发送方将假定该段已丢失并重新传输它。TCP 重传机制确保数据可靠地从端到端发送。如果在 TCP 连接中检测到重传,则逻辑上假设在客户端和服务器之间的某个网络上发生了数据包丢失。

您可以在此处找到有关 wireshark 的更多有用信息