UDP 用户数据报格式(单播+组播)

UDP单播:
UDP的主要特点是:UDP是无连接的;UDP使用最大努力交付;UDP是面向报文的。

Wireshark抓取一个UDP单播数据报在以太网的传输,截图如下:

从上往下分别是:
(1)数据链路层,以太网MAC帧的格式如下:


前两个字段分别为6个字节的目的地址MAC和源地址MAC字段,第三个字段是2字节的类型字段。
(2)网络层,IP数据报格式如下

各字段内容如图所示。

(3)运输层,UDP数据报格式如下:

UDP首部格式:
数据字段和首部字段,首部字段很简单,只有8个字节,有四个字段组成,每个字段的长度都是两个字节。各字段意义如下:
(1)源端口     源端口号。在需要对方回信时选用。不需要时可用全0。
(2)目的端口 目的地端口号。这在终点交付报文时必须要用到。
(3)长度        UDP数据报的长度,其最小值是8(仅有首部)。有错就丢弃。
(4)检验和     检测UDP用户数据在传输中是够有错。有错就丢弃。

UDP校验和区间:首部和数据部分一起校验。

UDP伪首部:第3字段全是零,第4个字段是IP首部中的协议字段的值。对于UDP,此协议字段值为17。

UDP组播:

组播报文的目的地址使用D类IP地址, D类地址不能出现在IP报文的源IP地址字段。单播数据传输过程中,一个数据包传输的路径是从源地址路由到目的地址,利用“逐跳”的原理[路由选择]在IP网络中传输。
组播地址:
组播组可以是永久的也可以是临时的。组播组地址中,有一部分由官方分配的,称为永久组播组。永久组播组保持不变的是它的ip地址,组中的成员构成可以发生变化。永久组播组中成员的数量都可以是任意的,甚至可以为零。那些没有保留下来供永久组播组使用的ip组播地址,可以被临时组播组利用。

224.0.0.0~224.0.0.255为预留的组播地址(永久组地址),地址224.0.0.0保留不做分配,其它地址供路由协议使用;
224.0.1.0~224.0.1.255是公用组播地址,可以用于Internet;
224.0.2.0~238.255.255.255为用户可用的组播地址(临时组地址),全网范围内有效;

239.0.0.0~239.255.255.255为本地管理组播地址,仅在特定的本地范围内有效。

组播是一对多的传输方式,其中有个组播组的 概念,发送端将数据向一个组内发送,网络中的路由器通过底层的IGMP协议自动将数据发送到所有监听这个组的终端。至于广播则和组播有一些相似,区别是路由器向子网内的每一个终端都投递一份数据包,不论这些终端是否乐于接收该数据包。UDP广播只能在内网(同一网段)有效,而组播可以较好实现跨网段群发数据。

UDP组播是采用的无连接,数据报的连接方式,所以是不可靠的。也就是数据能不能到达接受端和数据到达的顺序都是不能保证的。但是由于UDP不用保证数据 的可靠性,所有数据的传送效率是很快的。


Wireshark抓取一个UDP组播数据报在以太网的传输,截图如下:
Wireshark过滤UDP组播报的方法:(eth.dst[0]&1)

猜你喜欢

转载自blog.csdn.net/u010018619/article/details/79415128
今日推荐