(嵌入式八股)第7章 计算机网络(二)(后续计算机网络相关持续补充在这里)
7.11 什么是UDP?
UDP(User Datagram Protocol),即用户数据报协议,是一种无连接的传输层协议。与TCP不同,UDP不提供可靠的连接管理、数据顺序控制或流量控制。它提供了一种面向事务的简单、不可靠的信息传送服务。UDP传输数据时,数据被打包成数据报进行发送,并且每个数据报的边界是明确的,应用层传输的数据不会被拆分或合并。
UDP的主要特点
- 无连接:UDP是无连接的协议,数据在传输之前不需要建立连接。它发送数据时无需确认接收方的准备状态,也不进行数据的重传。
- 不可靠传输:UDP不保证数据的可靠性。它不进行丢包重传、数据顺序控制等功能,因此某些数据可能丢失、重复或者乱序。
- 面向报文:UDP是面向报文的协议,对于应用层发送的报文段,它不会拆分或合并。每个应用层传递的报文都按原样交给网络层。
- 低延迟:由于UDP没有建立连接、数据确认等机制,所以它相对TCP更快速,适用于需要低延迟的实时通信应用,如音视频流、在线游戏等。
UDP报文格式
伪头部:
伪头部并不是UDP报文本身的一部分,它是为了进行校验而临时加上的。伪头部的结构包括:
伪头部和UDP头部一起参与校验和的计算。这个伪头部仅仅用于校验,不会被传输或存储。
UDP头部:
数据:
UDP的数据部分包含传输的实际数据。如果数据部分的长度为奇数,UDP会在数据的末尾补充一个字节(填充0)来确保数据长度为偶数。因为校验和的计算是基于16位(2字节)为单位,所以数据长度需要是16位的倍数。 UDP的应用
UDP因其快速传输的特点,广泛用于实时数据传输和不要求严格可靠性的应用。常见的应用包括:
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
工科女嵌入式开发秋招逆袭指南 文章被收录于专栏
作者简介:仅用几个月时间0基础天坑急转嵌入式开发,逆袭成功拿下华为、vivo、小米等15个offer,面试经验100+,收藏20+面经,分享求职历程与心得。 专栏内容:这是一份覆盖嵌入式求职过程中99%问题指南,详细讲解了嵌入式开发的学习路径、项目经验分享、简历优化技巧、面试心得及实习经验,从技术面,HR面,AI面,主管面,谈薪一站式服务,助你突破技术瓶颈、打破信息差,争取更多大厂offer。

