码迷,mamicode.com
首页 > 其他好文 > 详细

TCP为什么会采用三次握手,若采用二次握手可以吗?

时间:2017-03-20 16:24:30      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:没有   为什么   报文   延迟   ati   目的   情况   成功   logs   

建立连接的过程是利用C/S(客户机/服务器)模式,假设A为客户端,B为服务器端。

TCP是采用三次握手进行连接的,简要说明该过程:

      (1) A向B发送连接请求

      (2) B对收的的A的报文段进行确认

      (3) A再对B的确认进行确认

 

采用“三次握手”的目的是,为了防止失效的连接请求报文段突然又传送到B,因而产生错误。失效的连接请求报文段是指:A发出的连接请求没有收到B的确认,于是经过一段时间后,A又重新向B发送连接请求,且建立成功,顺序完成数据传输。考虑这样一种特殊情况,A第一次发送的连接请求并没有丢失,而是因为网络节点导致延迟达到B,B以为A又发起的新连接,于是B同意连接,并向A发回确认,但是此时A根本不会理会,B就一直在等待A发送数据,导致B的资源浪费。

 

采用二次握手可以吗?

        不可以,原因就是上面说的失效的连接请求的特殊情况。

TCP为什么会采用三次握手,若采用二次握手可以吗?

标签:没有   为什么   报文   延迟   ati   目的   情况   成功   logs   

原文地址:http://www.cnblogs.com/jiqianqian/p/6589705.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!