TCP & UDP

TCP & UDP

本篇记录 TCP 与 UDP 常用知识点。

  1. TCP 连接建立与断开
  2. TCP 与UDP 区别

[TOC]

TCP 连接建立与断开

TCP 建立连接和断开连接需要两个节点间进行多次消息传输,通常建立连接需要三次、断开连接需要四次。

三次握手🤝

TCP 建立连接的过程需要进行三次消息通信,俗称”三次握手“。

  • 客户端向服务器发起建立连接的请求。
  • 服务器收到客户端的请求后,如果同意建立连接,则回发给客户端确认报文,同时带上和客户端建立连接的请求。
  • 客户端收到服务器的确认报文后,完成客户端这边连接的建立,并回应给服务器,客户端已就绪,可以和服务器建立连接。
  • 服务器收到客户端的确认响应后,完成服务器这边连接的建立。

TCP 三次握手重在理解,至于三次握手过程中报文携带的信息可参考下图(图源来自于CSDN@IT界的泥石流):

TCP连接建立

四次挥手👋🏻

TCP 是全双工模式工作,所以断开连接时,需要连接双方都要确认是否已准备好断开,从而导致了 TCP 连接断开需要四次信息通信,俗称”四次挥手“。

  • 客户端发起断开连接请求,告知服务器断开连接,客户端无新的数据发送。
  • 服务器收到客户端断开连接请求后,回应客户端确认关闭,但是服务器还有收尾工作正在处理。
  • 等服务器完成收尾工作时,则发送消息给客户端,服务器端已准备关闭连接。
  • 客户端收到服务器的消息后,回应给服务器,确认客户端这边连接已关闭。
  • 服务器收到客户端确认关闭消息,关闭服务器端连接。

断开连接四次挥手发送报文携带的信息参考下图。(图源开源博客@运维小白)

TCP连接断开

TCP 与 UDP 的区别

  • TCP 是面向连接的传输协议,而 UDP 是无连接的传输协议。
  • TCP 传输字节流数据,而 UDP 传输报文数据。
  • TCP 只能一对一通信,而 UDP 可以一对一、一对多、多对一、多对多各种通信。
  • TCP 是可靠传输,有丢失重传机制,而 UDP 是不可靠传输,数据可能会丢。
  • TCP 首部比 UDP 大,所以 TCP 传输效率没有 UDP 高。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。