3次握手 和 4次挥手
为什么发起 HTTP 请求前需要 TCP 三次握手?
- 为了让客户端和服务端都能确定彼此发起和响应的能力是否靠谱。
- 客户端首先发送证明客户端有发送的能力,服务端接受后返回证明服务端有响应和发送的能力,但这个时候还不能知道客户端的响应能力,所以客户端再响应之后,表明彼此连接的通道是顺畅的,然后 HTTP 请求就可以传输数据了。
为什么关闭 HTTP 请求前需要 TCP 四次挥手?
- 关闭连接是双向的,客户端和服务器都可以提出,四次挥手是为了不让关闭太仓促,保证可靠性。
- 如客户端首先会告知服务器申请关闭连接,服务器收到后告诉客户端收到了,不过我还没有准备好,让客户端等等。服务端数据发送数据完毕后,再次告诉客户端,我准备关闭连接了。客户端收到后怕网络不好,服务器不知道要关闭,所以第四次发送信息确认,服务器收到后断开连接,客户端也断开连接。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论