握手的时候,ack 和 syn 一起发
为什么挥手的时候,fin 和 ack 不一起发?
为什么挥手的时候,fin 和 ack 不一起发?
|
2kCS5c0b0ITXE5k2Jan 21, 2019
1
当 Server 端收到 FIN 报文时,很可能并不会立即关闭 SOCKET,所以只能先回复一个 ACK 报文,告诉 Client 端,"你发的 FIN 报文我收到了"。只有等到我 Server 端所有的报文都发送完了,我才能发送 FIN 报文,因此不能一起发送。故需要四步握手。 ----来源 google
|
|
CallMeReznovJan 21, 2019
2
所以才叫 3 次握手 4 次挥手啊
|
|
hilbertzJan 21, 2019
3
因为 tcp 是全双工的传输协议,双向都要确认数据传输结束了
|
|
jasonyang9Jan 21, 2019
4
因为很可能一方是话痨,要等它说完
|