TCP(Transmission Control Protocol)是一种面向连接、可靠的传输协议,它保证了数据能够完整、顺序、不重复地传输。
TCP报文是在应用层数据的基础上添加TCP头部而成的数据包。TCP头部包括20字节的固定部分和可选的选项部分,共有40个字节。下面列出了TCP报文头各字段的含义:
-
源端口号(Source Port):源端口号是占用2字节,指明发送端口的端口号。
-
目的端口号(Destination Port):目的端口号也占用2字节,指明接收端口的端口号。
-
序号号(Sequence Number):占用4字节,用于序列化TCP报文,保证数据能够有序传输。
-
确认号(Acknowledgement Number):占用4字节,用于确认数据已经被接收。
-
数据偏移(Data Offset):占用4位,指明TCP头部占用多少个32位的字。
-
保留位(Reserved):占用6位,保留以备将来使用。
-
控制位(Flags):占用6位,用于标识TCP报文的类型,包括URG、ACK、PSH、RST、SYN、FIN这六个标志位。
-
窗口大小(Window):占用2字节,表示接收端还可以接收多少字节的数据。
-
检验和(Checksum):占用2字节,用于检验