UDP协议

UDP协议

UDP协议全称 User Datagram Protocol (用户数据报协议),是一种没有复杂控制无连接传输层协议,它是一种在收到应用程序发来数据的那一刻,立即将数据按原样发送到网络上的机制。

结构

[16位源端口号][16位目的端口号][16位UDP长度][16位UDP校验和][UDP数据]

前64位即为UDP首部,其中各段意义如下:

  • 源端口:源端口号。在需要对方回信时选用。不需要时可用全0。
  • 目的端口:目的端口号。这在终点交付报文时必须要使用到。
  • 长度:UDP用户数据报的长度,其最小值是8(仅首部)。
  • 校验和:检测UDP用户数据报在传输中是否有错。有错就丢弃。

特性

  • 无连接,采用UDP协议不需要提前通知对方建立连接,可以直接发送数据
  • 不保证可靠的交付数据,由于UDP协议发送的数据在网络中的丢失是无法感知的,因此也不能保证数据能可靠的到达对方。
  • 面向报文传输,它不会对用户发送的数据做任何处理,而是直接作为UDP数据报传输。
  • 没有拥塞控制,可能会造成网络拥塞。
  • 首部开销很小,只有8个字节。

因此对于流量拥塞控制,丢包重传等传输通信的控制都是没有的,UDP协议的适用场景在以下几个方面:

  • 包总量较少的通信(TFTP、SNMP、NFS、DNS、BOOTP)
  • 即时通信
  • 限定于LAN等特定网络中的通信
  • 广播通信(广播,多播)

种一棵树最好的时间是在十年前,而后是现在。

Loading Disqus comments...
Table of Contents