.NET面试题系列(27)网络

随笔2个月前发布 静默
36 0 0

序言

.NET面试题系列(27)网络

为什么握手只有三次,而挥手却要四次

这是因为 TCP 不允许连接处于半打开状态时就单向传输数据,所以在三次握手建立连接时,服务器会把 ACK 和 SYN 放在一起发给客户端,其中,ACK 用来打开客户端的发送通道,SYN 用来打开服务器的发送通道。这样,原本的四次握手就降为三次握手了。

但是当连接处于半关闭状态时,TCP 是允许单向传输数据的。当主动方关闭连接时,被动方仍然可以在不调用 close 函数的状态下,长时间发送数据,此时连接处于半关闭状态。这一特性是 TCP 的双向通道互相独立所致,却也使得关闭连接必须通过四次挥手才能做到。

https://zhuanlan.zhihu.com/p/599912694

资料

深入分析四层/七层网关

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...