我们正在捕获通过 Wireshark 从机器 1 到机器 2 的文件传输。虽然我无法捕获任何/少数重传错误,但其他人能够捕获大约 10 到 15 个重传错误和欠载错误。
在分析 wire-shark 捕获时,我发现主要区别在于我的捕获中未设置 SACK_PERM
标志,而在其他捕获中未设置 SACK_PERM=1
。
下面是
8535 7.272671 172.23.165.254 10.108.32.29 TCP 62
[TCP 重传] 29537 → 389 [SYN] Seq=0 Win=8192 Len=0 MSS=1460 SACK_PERM=1
谁能解释一下 SACK_PERM
flag
在网络传输中的作用?
提前致谢。
最佳答案
这是 RFC 2018 中的“Sack-Permitted”选项,“TCP 选择性确认选项”。它说两台机器可以使用“选择性确认”,这意味着,而不是仅仅说“我得到了这个序列号之前的所有字节”,他们可以说“我得到了这个范围内的所有字节和这个范围内的所有字节other range”,这意味着未列出的范围内的字节未收到,因此他们可以说他们在某些范围之前和之后获得了字节,但不是范围中间的字节.
关于networking - Wireshark - SACK_PERM=1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35623192/