17-分析TCP三次握手的过程

NO1

135650_TNCq_3613309.png

客户端发送  SYN=1,ACK=0给服务端.

syn代表同步标志位,ACK代表询问标志位.

syn是synchronize的缩写,ack是acknowlege的缩写.

NO2,

140912_kNJE_3613309.png

第二次握手,

server接到 client的请求后,发送 ACK=1,SYN=0给客户端.

服务端发送的ACK值等于客户端发来的值+1,syn值和客户端相同.

NO3,

141115_9bsn_3613309.png

第三次握手协议:

客户端收到服务端发来的ACK=1的包,进入通信状态,然后根据服务端发来的SYN包,返回给服务端

ACK=1的包,三次握手完成,客户端和服务端进入通信状态.

为什么要进行三次握手?而不是两次或一次,或者是四次五次握手??

client,server端进行通信,目的都是要确认自己的发信能力和接受能力都没有问题,

第一次握手:

    client向server发送请求,server收到请求,

只能确认:

1,server端确认,client的发送没有问题,

2,server端确认,server的接受没有问题.

不能确认的是:

1,client端不知道client的发送问题,

2,client不知道自己的接受问题.

3,client不知道server的发送和接受问题.

接下来进行二次握手:

server向client发送请求,client接受请求..

可以确认:

1,client确认自己的发送和接受都没有问题.

2,client确认server的接受和发送没有问题.

不可以确认的是:

1,server端不知道自己的发送是否有问题.

所以需要进行第三次握手.

才可以解决

server端确认自己的发送没有问题.

四次分手

 

 

参考如下文章

https://github.com/jawil/blog/issues/14

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://my.oschina.net/u/3613309/blog/1563756

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值