美文网首页
tcp三次握手

tcp三次握手

作者: ahqrt | 来源:发表于2020-02-24 15:47 被阅读0次

    tcp三次握手

    tcp有六种标示:SYN(建立连接), ACK(确认), PSH(传送), FIN(结束), RST(重置), URG(紧急)

    tcp三次握手.png
    一、第一次握手

    客户端向服务器发出连接请求报文,这时报文首部中的同步位SYN=1,同时随机生成初始序列号seq=x,此时,tcp客户端进程进入了SYN-SENT(同步已发送状态)状态。TCP规定,SYN报文段(STYN=1的报文段)不能携带数据,但需要消耗一个序列号。这个三次握手的开始,表示客户端想要和服务端建立连接。

    第二次握手

    TCP服务器收到请求以后,如果同意连接,则发出确认报文。确认报文中应该 ACK=1,SYN=1,确认号是ack=x+1,同时也要为自己随机初始化一个序列号 seq=y,此时,TCP服务器进程进入了SYN-RCVD(同步收到)状态。这个报文也不能携带数据,但是同样要消耗一个序号。这个报文带有SYN(建立连接)和ACK(确认标志),询问客户端是否准备好。

    第三次握手

    TCP客户端进程收到确认后,还要向服务器给出确认。确认报文的ACK=1,ack=y+1, 此时,TCP连接建立,客户端进入ESTABLISHED(已建立连接)状态。

    TCP规定,ACK报文段可以携带数据,但是如果不携带数据则不消耗序号,这里客户端表示我已经准备好。

    相关文章

      网友评论

          本文标题:tcp三次握手

          本文链接:https://www.haomeiwen.com/subject/skivqhtx.html