TCP是传输控制协议,需要建立链接,通过三次握手和四次挥手保证数据传输的可靠性
三次握手过程
三次握手的目的在于,确认双方的通信能力是否正常
第一次握手,客户端发送连接请求的报文给服务端
第二次握手,服务端接收请求后回复一个ACK报文,并为连接分配资源
第三次握手,客户端收到ACK报文后,也向服务端发送ACK报文,并分配资源,至此,链接建立完成
四次挥手过程
四次挥手的目的在于,终止数据传输并回收资源,必须等待双方都没有数据传输时才能断开连接
第一次挥手,客户端向服务端发送报文,请求关闭数据传送,并进入等待状态
第二次挥手,服务端收到报文后,发送ACK确认,此时客户端到服务端的链接断开
第三次挥手,服务端数据传输完毕后,向客户端发送报文,请求关闭数据,并进入等待状态
第四次挥手,客户端收到报文后,发送确认报文,链接完全断开
数据格式
TCP协议的数据分为报头和数据两部分,报头包括
16位源端口号
16位目标端口号
32位序号
32位确认序号
4位首部长度
16位窗口大小
16位紧急指针