TCP传输的三次握手四次挥手策略。

   TCP建立连接需要三次握手,也就是指建立一个TCP连接的时候,客户端和服务器总共传送三个数据包,目的是客户端连接服务器的指定端口。握手过程中使用了TCP的标志:SYNACK

第一次握手:首先客户端发送一个带有标志位为1SYN标志的数据包给服务器。

第二次握手:服务器接收后,返回一个带有ACK标志的数据包应答,即SYNACK标志位为1,并确认序列号为+1

第三次握手:最后客户端再次发送确认包(ACK),SYN的标志位为0ACK标志位为1,并把服务器发送来的ACK的序号+1,代表握手结束。

TCP断开连接需要四次挥手。也就是指断开一个TCP连接的时候,客户端和服务器总共传送四个数据包,服务器和客户端都可以主动发起挥手(断开连接)。

第一次挥手:主动关闭方发送一个标志位为1FIN的数据包,用来关闭主动方到被动关闭方的数据传输,也就是主动关闭方告知被动关闭方,不会再给被动方发送数据。但是在FIN包发送之前发送出去的数据,如果没有收到对应的ACK确认报文,主动关闭方依然会重发这些数据,此时主动关闭方还可以接受数据。

第二次挥手:被动方收到FIN包后,发送一个标志位为1ACK数据包,确认序号为收到的序号+1

第三次挥手:被动方发送一个标志位为1FIN包,用来关闭被动方到主动方的数据传输,告知主动方,数据发送完毕,不会再发送数据。

第四次挥手:主动关闭方收到FIN包后,发送一个标志位为1ACK包,确认序号为收到的序号+1,到这里,四次挥手完成。

  参考链接:https://www.cnblogs.com/zmlctt/p/3690998.html   

版权声明:本文为PrayLs原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/PrayLs/p/10258696.html