UDP协议的特点以及它的首部格式

齐天大圣
Freigeben: 2020-12-21 11:27:23
Original
3716 人浏览过

UDP的特点

UDP协议非常的简单,它几乎没在IP层上增加什么功能。下面来看看UDP协议的一些特点:

  • UDP是无连接的,尽最大努力的交付。发送数据之前不会提前通知,它只管发,你能不能接受到它是不管的。

  • UDP是面向报文的,应用程序给它什么内容,它在内容前封装一个首部就转发给下面的IP层。它是不管内容的多或少的,你给我什么,我就发什么。对于,它的无脑操作,那么应用进程就需要选择好合适的大小了。以免过大的数据包,在IP层被拆分,营销效率。

  • UDP支持一对一、一对多和多对多的通信,对于TCP仅支持点对点的通信这点来看,UDP这点好像还算干的不错。

  • UDP首部简单,是固定的8字节。

基于UDP的上述特点,可以猜想出它的一些应用场景:

  • 适用于网络比较好的环境,对丢包不敏感。

  • 需要进行广播的场景,比如DHCP协议就需要使用广播,所以它使用的UDP协议。

  • 传输效率高、速度快的场景,比如视频直播,一般视频直播丢失了几帧是无关痛痒的。

UDP首部格式

上述已经说过,UDP首部时固定的8字节。相对于TCP,它的首部开销是非常小的。

QQ截图20201215103220.jpg

  • 源端口号,占2字节

  • 目的端口号,占2字节

  • 首部长度,占2字节

  • 校验和,占2字节

目的主机如果接受到了非法端口号的UDP数据包,就会丢弃该数据包,然后向源主机发送ICMP的差错报文“端口不可达”。traceroute命令就是利用该特点来获取两个主机之间的路径信息的。

UDP的校验方式有些特殊,它在校验时,需要零时在首部添加12字节的伪首部。伪首部是在只校验时用到,校验完成后就丢弃。另外,它和IP数据报只校验首部不同,它会校验首部以及数据部分。

相关推荐:《linux视频教程

以上是UDP协议的特点以及它的首部格式的详细内容。更多信息请关注PHP中文网其他相关文章!

Verwandte Etiketten:
udp
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!