tcp三次握手和四次握手的理解

Posted dcli-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tcp三次握手和四次握手的理解相关的知识,希望对你有一定的参考价值。

三次握手:发生在建立tcp的时候

  1、客户端:发送一个syn包给服务端(同步)

  2、服务端:发送一个ack包再加一个syn包给客户端(应答+同步)

  3、客户端:发送一个ack包给服务端(应答)

 

四次握手:发生在断开tcp连接的时候

  1、客户端:发送一个FIN包给服务端

  2、服务端:发送一个ACK包给客户端

  3、服务端:发送一个FIN包给客户端(延时一会发送)

  4、客户端:发送一个ACK包给服务端(延时最大时延2ms,再断开连接)

 

答疑:

  1、最后一次握手,为什么要延时2ms?

    原因1-1:发送的ACK包给服务端,由于网络的原因,有可能会丢失。服务端会不断发FIN包给客户端,此时客户端不能断开连接

 

以上是关于tcp三次握手和四次握手的理解的主要内容,如果未能解决你的问题,请参考以下文章

TCP三次握手和四次挥手

tcp三次握手和四次握手的理解

理解TCP中的三次握手和四次分手

三次握手&&四次挥手

TCP三次握手和四次挥手

三次握手和四次挥手