扫码阅读
手机扫码阅读

TCP 握手两次不行吗?

5 2024-11-27

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:TCP 握手两次不行吗?
文章来源:
江南一点雨
扫码关注公众号

摘要

TCP(传输控制协议)是一个面向连接的、可靠的、基于字节流的传输层通信协议。它在建立和终止连接时采用三次握手和四次挥手的机制。

一 三握

三次握手包括:

  1. 客户端发送SYN段给服务器,请求建立连接并包含一个初始序列号。
  2. 服务器以SYN-ACK段响应,确认客户端的SYN并提供自己的序列号。
  3. 客户端发送ACK段,确认服务器的SYN-ACK,完成连接建立。

二 四挥

四次挥手包括:

  1. 发起关闭的一方发送FIN段,表示完成数据发送。
  2. 接收FIN的一方用ACK段响应,确认收到。
  3. 接收FIN的一方发送自己的FIN段,表示数据发送完成。
  4. 发起关闭的一方发送ACK段,完成连接终止。

三 为什么三握

三次握手的目的是为了:

  • 交换初始化序列号,为数据传输建立基础。
  • 防止失效的连接请求导致的问题。
  • 确保双方准备好数据传输。
  • 避免资源浪费。
  • 防止重复连接。
  • 确认全双工通信通道的建立。

四 为什么四挥

四次挥手的目的是为了:

  • 确保数据传输的完成。
  • 防止数据丢失。
  • 减少数据重复的可能性。
  • 防止资源泄露。
  • 确认双方同意关闭连接。
  • 处理延迟或丢失的确认。
  • 处理不同步的关闭请求。
  • 允许半关闭状态。

本文由拥有9年编程经验的松哥撰写,松哥是华为云最具价值专家,Java畅销书作者,GitHub知名项目作者,已帮助超过500名程序员获得offer,其中1/4进入国内顶尖公司,薪资大幅提升。

想要了解更多内容?

查看原文:TCP 握手两次不行吗?
文章来源:
江南一点雨
扫码关注公众号