作为整个TCP/IP协议簇中最重要的两个协议, 处于传输层的它们承载着整个信息流的导向工作, 那么, 它们的区别具体是怎样的?

更新


[2019-3-16]

  • Initial Release

[2019-10-28]

Added

  • 新增主要区别区块

UDP


单纯地作为数据的搬运工

  • 特性
    • 面向无连接
      • 不需要建立三次握手连接
    • 不可靠性
      • 不保证数据的完整性和准确性, 只是单纯的搬运工
    • 高效
      • 免除了三次握手的过程, 减少了传输时间
    • 传输方式
      • 一对多
  • 使用场景
    • 直播
    • 实时性强的游戏

TCP


主要区别


  1. 可靠性
    • TCP依靠自身的超时重传特性, 安全性较UDP
  2. 连接性
    • TCP建立连接需要进行三次握手, 断开连接需要四次分手, 而UDP则面向无连接
  3. 高效性
    • 由于UDP面向无连接, 以及不保证传输的可靠性, 所以传输数据的速率较TCP
  4. 应用范围
    • TCP服务于应用层的大部分协议(HTTPHTTPS), 而UDP则主要应用于DNS, HTTP/3QUIC特性也基于UDP的高效性, 不会阻塞后续的数据报文发送