30th
为什么 TCP 建立连接要经过三次握手?
Last updated
Was this helpful?
为什么 TCP 建立连接要经过三次握手?
Last updated
Was this helpful?
为什么 TCP 建立连接是经过三次握手,而不是两次或者四次五次甚至更多次?
首先两次握手肯定不行,虽然两次握手在客户端的角度看是发送-接收成功,但是对服务端而言只是接收成功,无法确定是否发送成功。而三次握手对客户端和服务端双方而言,都做到了发送-接收成功,只要双方的消息都有去有回,就基本可以认为连接可靠。理论上四次握手是可以的,四十次都行,关键就算是四百次也不能百分之百保证连接可靠。如果说三次握手能保证连接的可靠度在 99.99%,那么更多次的握手只是增加小数点后面 9 的个数,不仅意义不大,还会耗费时间和资源,所以三次握手可以看作是一个平衡方案吧。