一 .TCP:(Transmission Control Protocol,传输控制协议)是一种面向连接的可靠传输协议。
在完成传输层的基本工作之上,还需要进一步的保障传输的可靠性,数据在传输之前需要建立连接,在数据传输完毕之后还要断开连接。
二.TCP的数据报结构
TCP的标志符:
URG:紧急指针(urgent pointer)
ACK:确认序号有效。
PSH:催促接收方将报文尽快交给应用层。
RST:重置连接
SYN:建立一个新的连接。
FIN:断开一个连接。
三.TPC的三次握手
TCP建立连接时要传输三个数据包,俗称三次握手
第一次握手:由客户端发出SYN标志符请求与服务器建立连接。
第二次握手:由服务端回复ACK确认报文给客户端,确认服务端的接收能力与客户端器的发送能力没有问题并为此次链接分配资源。
第三次握手:再次由客户端来发出ACK报文回复服务端,确认客户端的接受能力与服务器的发送能力没有问题并建立连接。
四.TCP的四次挥手
TCP的四次挥手是断开连接时的四个过程,它让计算机释放不再使用的资源。如果连接不能正常断开,不仅会造成数据传输错误,还会导致套接字不能关闭,持续占用资源,如果并发量高,服务器压力堪忧。
过程概述
a(数据传送完毕,请求断开连接。)
b(收到断开请求,请给我一点时间准备。)
b(我已经准备好了,可以断开连接了。)
a( 好的,谢谢合作。)
第一次挥手:客户端发送一个FIN结束标志符用来断开客户端到服务器的数据传送。
第二次挥手:服务器收到FIN结束标志符后,发送ACK确认报文回复给客户端。
第三次挥手:服务器发送FIN结束标志符给客户端,用来断开服务器到客户端的数据传送。
第四次挥手:客户端收到FIN结束标志符后,发送ACK确认报文回复给服务器。