下载
第12章 IP 多 播
12.1 引言
第8章讲到,D类I P 地址( 2 2 4 . 0 . 0 . 0 到2 3 9 . 2 5 5 . 2 5 5 . 2 5 5 )不识别互联网内的单个接口,但识别
接口组。因为这个原因, D类地址被称为多播组(multicast group)。具有D类目的地址的数据报
被提交给互联网内所有加入相应多播组的各个接口。
I n t e r n e t 上利用多播的实验性应用程序包括:音频和视频会议应用程序、资源发现工具和
共享白板等。
多播组的成员由于接口加入或离开组而动态地变化,这是根据各系统上运行的进程的请
求决定的。因为多播组成员与接口有关,所以多接口主机可能针对每个接口,都有不同的多
播组成员关系表。我们称一个特定接口上的组成员关系为一对 {接口,多播组}。
单个网络上的组成员利用 I G M P 协议(第1 3 章)在系统之间通信。多播路由器用多播选路协
议(第1 4章),如DVMRP(Distance Vector Multicast Routing Protocol,距离向量多播路由选择协
议)传播成员信息。标准I P路由器可能支持多播选路,或者用一专用路由器处理多播选路。
如以太网、令牌环和F D D I一类的网络直接支持硬件多播。在 N e t / 3 中,如果某个接口支持
多播,那么在接口的 i f n e t 结构(图3 - 7 ) 中的i f _ f l a g s标志的I F F _ M U L T I C A S T 比特就被打
开。因为以太网被广泛使用,并且 N e t / 3有以太网驱动器程序,所以我们将以以太网为例说明
硬件支持的I P多播。多播业务通常在如S L I P和环回接口等的点到点网络上实现。
如果本地网络不支持硬件级多播,那么在某个特定接口上就得不到 I P 多播业务。 R F C
11 2 2并不反对接口层提供软件级的多播业务,只要它对 I P是透明的。
RFC 1112 [Deering 1989] 描述了多播对主机的要求。分三个级别:
0级:主机不能发送或接收 I P 多播。
这种主机应该自动丢弃它收到的具有 D类目的地址的分组。
1级:主机能发送但不能接收 I P多播。
在向某个I P多播组发送数据报之前,并不要求主机加入该组。多播数据报的发送方
式与单播一样,除了多播数据报的目的地址是 I P多播组之外。网络驱动器必须能够
识别出这个地址,把在本地网络上多播数据报。
2级:主机能发送和接收I P多播。
为了接收I P多播,主机必须能够加入或离开多播组,而且必须支持I G M P,能够在至少
一个接口上交换组成员信息。多接口主机必须支持在它的接口的一个子网上的多播。
N e t / 3符合2级主机要求,可以完成多播路由器的工作。与单播 I P 选路一样,我们假
定所描述的系统是一个多播路由器,并加上了 N e t / 3 多播选路的程序。
知名的I P多播组
和U D P 、T C P 的端口号一样,互联网号授权机构 IANA(Internet Assigned Numbers