技术解决方案

用户数据报协议 (UDP)

添加时间:2022-03-06 22:03:01
评分:
浏览:

用户数据报协议 (UDP)是一种传输层协议。UDP 是 Internet 协议套件的一部分,称为 UDP/IP 套件。与 TCP 不同,它是一种不可靠且无连接的协议。因此,无需在数据传输之前建立连接。 


尽管传输控制协议 (TCP) 是与大多数 Internet 服务一起使用的主要传输层协议;提供有保证的交付、可靠性等等,但所有这些服务都会给我们带来额外的开销和延迟。在这里,UDP 出现了。用于计算机游戏、语音或视频通信、现场会议等实时服务;我们需要UDP。由于需要高性能,UDP 允许丢弃数据包而不是处理延迟的数据包。UDP 没有错误检查,因此也节省了带宽。 

用户数据报协议 (UDP) 在延迟和带宽方面都更有效。 


UDP 标头 – 


UDP 标头是一个8 字节的固定且简单的标头,而对于 TCP,它可能从 20 字节到 60 字节不等。前 8 个字节包含所有必要的标头信息,其余部分由数据组成。UDP 端口号字段均为 16 位长,因此端口号的范围定义为 0 到 65535;端口号 0 被保留。端口号有助于区分不同的用户请求或进程。 


源端口:源端口是一个 2 字节长的字段,用于标识源的端口号。

目的端口:是一个2字节长的字段,用于标识目的数据包的端口。

长度:长度是UDP的长度,包括头和数据。它是一个 16 位的字段。

校验和:校验和是 2 字节长的字段。它是 UDP 报头的补码和的 16 位补码,来自 IP 报头的信息的伪报头和数据,最后用零八位字节填充(如果需要)以形成 2 的倍数八位字节。

注意 –与 TCP 不同,校验和计算在 UDP 中不是强制性的。UDP 不提供错误控制或流量控制。因此,UDP 依赖于 IP 和 ICMP 进行错误报告。 


UDP的应用: 


当数据量较小时用于简单的请求-响应通信,因此对流量和错误控制的关注较少。

它是适合多播的协议,因为 UDP 支持数据包交换。

UDP 用于一些路由更新协议,如 RIP(路由信息协议)。

通常用于不能容忍接收消息部分之间的不均匀延迟的实时应用程序。

以下实现使用 UDP 作为传输层协议: 

NTP(网络时间协议)

DNS(域名服务)

引导,DHCP。

NNP(网络新闻协议)

每日报价单

TFTP、RTSP、RIP。

应用层可以通过UDP来完成一些任务—— 

追踪路线

记录路线

时间戳

UDP 从网络层获取数据报,附加它的报头,并将其发送给用户。所以,它工作得很快。

实际上,如果您删除校验和字段,UDP 是一个空协议。

减少对计算机资源的需求。

使用组播或广播进行传输时。

实时数据包的传输,主要在多媒体应用中。


来源: