UDP 协议简介
UDP 的全称是 User Datagram Protocol,中文名是用户数据报协议。
UDP 提供面向无连接的通信服务,是不具有可靠性的数据报协议。
UDP 虽然可以确保发送消息的大小,但不能保证消息一定会到达,传输途中如果出现丢包,UDP 不负责进行重发。因此,应用有时候会根据自己的需要进行重发处理。甚至当包的到达顺序错乱时,UDP 也没有纠正功能。
此外,UDP 也不提供复杂的控制机制,即使出现网络拥堵,UDP 也无法进行流量控制等避免避免网络拥塞的行为。
由于 UDP 面向无连接,可以随时发送数据,本身的处理逻辑简单高效,因此,常用于以下场景:
- 包总量较少(DNS、DHCP)
- 视频、音频等多媒体即时通信(少量的丢包不影响通信质量)
- 广播通信(广播、多播)
UDP 报文首部由源端口号、目标端口号、包长和校验和组成:
- 源端口号:发送端端口号,该字段有可能为空(不需要返回的通信)
- 目标端口号:接收端端口号
- 包长度:UDP 首部的长度跟数据的长度之和
- 校验和:为了提供可靠的 UDP 首部和数据而设计,不一定会用到
标签:协议,UDP,首部,通信,传输层,长度,端口号 来源: https://www.cnblogs.com/stringarray/p/12960541.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。