简介
TCP协议(Transmission Control Protocol, 传输控制协议),为应用层提供可靠的、面向连接的、基于流的服务。在OSI七层模型中,属于传输层。如果对OSI七层模型不了解的小伙伴,请参考OSI七层网络参考模型
TCP报文格式说明
TCP报文字段说明:
端口号:用来标识同一台计算机的不同的应用进程。
源端口号: 源端口和IP地址的作用是标识报文的返回地址,本机应用程序用来通信的端口。
目的端口号: 接收计算机上的应用程序进行通信使用的端口。
注意: TCP报头中的源端口号和目的端口号同IP数据报中的源IP与目的IP唯一确定一条TCP连接。
序号和确认号:是TCP可靠传输的关键部分。
序号: 每次数据报发送时都会生成一个唯一的序列号(第一个次是随机生成的32位数,以后每次的序号都是上一次的序号加1)。例如: 需要发送的数据,被分成了1000个报文发送,如果第一次随机生产的序号是10000,那么第1000个报文发送时,那么序号就是11000。
确认号: 即ack,指明下一个期待收到的字节序号,表明该序号之前的所有数据已经正确无误的收到。确认号只有当ACK标志为1时才有效。比如建立连接时,SYN报文的ACK标志位为0。
数据偏移/首部长度:4bits。由于首部可能含有