首页 > 代码库 > 最通俗的三次握手
最通俗的三次握手
假如有一台客户机和一台服务器,现在客户机想要和服务器通信,那么首先客户机就会发送一个同步位等于1确认序列号有效位等于0的数据包给服务器,(syn(同步位)等于1表示请求建立链接)同时会随机产生一个sequence number(序列号),假如是100,当服务器接受到客户机发来的数据后,客户机从SYN(同步位)=1可知客户机是想要建立连接,第一次握手完成
第二次握手:服务器收到消息后肯定要进行确认,就像我和你打招呼的时候我说hello你肯定要回一个给我,所以这时候服务器就会向客户机发送一个确认报文ACK(确认序列号有效位)=1,SYN(同步位)=1,Acknowledge number=101,(确认序列号等于序列号+1)同时还会随机产生一个序列号sequence number假如等于200,这样就告诉了客户机可以进行连接,二次握手完成
第三次握手:当客户机收到服务器的确认信息后,客户机会检查Acknowledge number(确认序列号)是否等于序列号+1即101,以及ACK(确认序列号有效位)是否为1,若为1,客户机会发送一个ACK=1.Acknowledge number=201的确认报文,告诉服务器你的请求连接已经被确认,连接可以建立,客户机进入ESTABLISHED状态,TCP连接建立。三次握手完成
第二次握手:服务器收到消息后肯定要进行确认,就像我和你打招呼的时候我说hello你肯定要回一个给我,所以这时候服务器就会向客户机发送一个确认报文ACK(确认序列号有效位)=1,SYN(同步位)=1,Acknowledge number=101,(确认序列号等于序列号+1)同时还会随机产生一个序列号sequence number假如等于200,这样就告诉了客户机可以进行连接,二次握手完成
第三次握手:当客户机收到服务器的确认信息后,客户机会检查Acknowledge number(确认序列号)是否等于序列号+1即101,以及ACK(确认序列号有效位)是否为1,若为1,客户机会发送一个ACK=1.Acknowledge number=201的确认报文,告诉服务器你的请求连接已经被确认,连接可以建立,客户机进入ESTABLISHED状态,TCP连接建立。三次握手完成
最通俗的三次握手
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。