TCP三次握手四次挥手

三次握手

  客户端:你好!我想跟你建立连接(SYN=1),我随机生成一个号码(Seq=x)给你。
  服务端:你好!我确认(ACK=1)了,你真的要建立连接(SYN=1)吗?我把你给的随机号加1还给你(ack=x+1),我也给你生成一随机号(Seq=y)。
  客户端:你好!看到你确认了,我得核对(ack是否等于我第一次给你的随机号x加1,ACK是否等于1)一下,核对没问题,那我也确认(ACK=1)了,也把你给的随机号加1(ack=y+1)一起发给你。

最后服务端核对(ack是否等于y加1,ACK是否等于1),核对成功那么就可以建立连接了。

四次挥手

  客户端:你好!再见(FIN)了,给你说完这句话我就不会回你了,不过你还有什么想对我说的吗?我还是可以听到的,我随机生成一个号码(Seq=x)给你。
  服务端:你好!我确认(与握手的确认一样)看到你说的话了。我组织一下语言看看我还有什么想说的。我随机生成一个号码(Seq=y)给你。
  .....(服务端给客户端的信息,如果有的话)
  服务端:你好!我说完了,再见(FIN)!我随机生成一个号码(Seq=z)给你。
  客户端:你好!我也确认(与握手的确认一样)看到你说的话了。

最后服务端核对(ack是否等于z加1,ACK是否等于1),核对成功那么就可以建立连接了。

备注:每次都会生成随机号(Seq)与将接收到的随机号加一赋值给ack(ack=Seq+1),以上为了不冗余有省略。

念念不忘,必有回响。