为什么tcp要三次握手四次分手

2017-05-19  本文已影响0人  蒲编
来自http://www.jellythink.com/archives/705

我用自己的话总结一下吧。

三次握手

客户端发起请求,服务端确认收到请求,客户端再次确认收到服务器的确认,服务器收到客户端的确认后三次握手结束。

四次分手

tcp是全双工,所以任何一方都可能发起结束请求的信号。
A方发出结束请求的信号fin,表示自己不会再发送数据了,但可能还会接收数据,B方马上确认,发出信号ack,同时假如它不需要再发出数据了,就紧接着发出结束的信号fin。最后A发出确认信号ack,等待2mls后结束连接。

我也思考过,为什么B不在发出fin后直接断开连接,为什么A发出ack后还要等2mls?

答案很简单,因为发出的信号可能到达不了对面,假如你直接就关闭了,对面又一直在等你,那就gg了。

上一篇下一篇

猜你喜欢

热点阅读