1. 是否面向连接:TCP 会建立一个一对一的连接,而 UDP 直接以包的形式传递数据
  2. 接收者数量:TCP 只能一对一通信,而 UDP 可以做到一对多
  3. 可靠性:TCP 保证可靠性,而 UDP 不保证
  4. 流量控制:TCP 应对网络拥堵,接收者缓存不足等情况可以调整发送速率,UDP 不行
  5. 首部开销:TCP: UDP, 20 byte: 8 byte
  6. 传输方式:保证顺序的流传输和不保证顺序的包传输
  7. 分片:TCP 以收发双方协定的 MSS(MTU - TCP.header.length - IP.header.length),UDP 由 IP 层依据 MTU 进行分片。MTU:数据链路层支持的一个包的最大长度。

一些解释

为什么TCP要设MSS? - 知乎
我们先来认识下 MTU 和 MSSMTU:一个网络包的最大长度,以太网中一般为 1500 字节;MSS:除去 IP 和 TCP …