侧边栏壁纸
  • 累计撰写 244 篇文章
  • 累计创建 16 个标签
  • 累计收到 0 条评论
隐藏侧边栏

UDP 协议

kaixindeken
2021-04-20 / 0 评论 / 0 点赞 / 77 阅读 / 581 字

UDP 的全称是 User Datagram Protocol,中文名是用户数据报协议。

UDP 提供面向无连接的通信服务,是不具有可靠性的数据报协议。

UDP 虽然可以确保发送消息的大小,但不能保证消息一定会到达,传输途中如果出现丢包,UDP 不负责进行重发。因此,应用有时候会根据自己的需要进行重发处理。甚至当包的到达顺序错乱时,UDP 也没有纠正功能。

此外,UDP 也不提供复杂的控制机制,即使出现网络拥堵,UDP 也无法进行流量控制等避免避免网络拥塞的行为。

由于 UDP 面向无连接,可以随时发送数据,本身的处理逻辑简单高效,因此,常用于以下场景:

  • 包总量较少(DNS、DHCP)
  • 视频、音频等多媒体即时通信(少量的丢包不影响通信质量)
  • 广播通信(广播、多播)

UDP 报文首部由源端口号、目标端口号、包长和校验和组成:

1.png

  • 源端口号:发送端端口号,该字段有可能为空(不需要返回的通信)
  • 目标端口号:接收端端口号
  • 包长度:UDP 首部的长度跟数据的长度之和
  • 校验和:为了提供可靠的 UDP 首部和数据而设计,不一定会用到
0

评论区