UDP 的全称是 User Datagram Protocol,中文名是用户数据报协议。
UDP 提供面向无连接的通信服务,是不具有可靠性的数据报协议。
UDP 虽然可以确保发送消息的大小,但不能保证消息一定会到达,传输途中如果出现丢包,UDP 不负责进行重发。因此,应用有时候会根据自己的需要进行重发处理。甚至当包的到达顺序错乱时,UDP 也没有纠正功能。
此外,UDP 也不提供复杂的控制机制,即使出现网络拥堵,UDP 也无法进行流量控制等避免避免网络拥塞的行为。
不过,由于 UDP 面向无连接,可以随时发送数据,本身的处理逻辑简单高效,因此,常用于以下场景:
UDP 报文首部由源端口号、目标端口号、包长和校验和组成: