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包给客户端,此时客户端不能断开连接

      1-2:客户端需要时间把该次的所有报文消除掉,不能影响下一次连接的建立。

 

posted @ 2019-10-24 08:55  dcli  阅读(145)  评论(0)    收藏  举报