Linux 什么';TCP包中的冗余数据是什么?

Linux 什么';TCP包中的冗余数据是什么?,linux,tcp,sockets,tcpdump,Linux,Tcp,Sockets,Tcpdump,我正在阅读“Unix网络编程”和tcpdump示例生成的数据包。示例是发送一个包含字符串“liha”的数据包 我读了TCP/IPRFC,发现正常的IP头是20B。除数据外,正常TCP报头为24B 因此,在捕获的数据包中,字符串“liha”前面有8B。“0121 3d2a 0120 b43e”是否无用 这些是最重要的。您的分析器已经为您解析了它们: options [nop,nop,TS val 18955562 ecr 18920510], 它们通常很重要,通信方使用它们来协商哪些额外的增强功

我正在阅读“Unix网络编程”和tcpdump示例生成的数据包。示例是发送一个包含字符串“liha”的数据包

我读了TCP/IPRFC,发现正常的IP头是20B。除数据外,正常TCP报头为24B

因此,在捕获的数据包中,字符串“liha”前面有8B。“0121 3d2a 0120 b43e”是否无用

这些是最重要的。您的分析器已经为您解析了它们:

options [nop,nop,TS val 18955562 ecr 18920510],

它们通常很重要,通信方使用它们来协商哪些额外的增强功能可用于TCP连接。

Dummy00001,谢谢,但在RFC793图3中,选项在21B~23B中,而不是在本例中的25B~28B中?有什么建议吗?选项有动态大小(我不知道如何精确定义)。这就是TCP标头具有数据偏移量字段的原因:前20个字节是固定的,其余直到数据偏移量都是选项。选项解析示例:
options [nop,nop,TS val 18955562 ecr 18920510],