5.3.3 矢量距离组播路由协议

矢量距离组播路由协议DVMRP(Distance Vector Multicast Routing Protocol)是Internet上最早的组播路由协议之一,目前仍然在广泛使用。

该协议允许组播路由器在相互之间传递群组成员关系和路由信息。

它采用类似RIP协议矢量距离算法,但是进行了一定扩展。路由器间交换的信息中不仅包含路由器间的费用,而且包含当前组播群组成员关系。

当路由器收到发往一个IP组播群组的数据报时,通过相应于组播树中各分枝的网络链路,发送数据报的副本。

DVMRP定义了IGMP的一种扩展形式和额外的IGMP报文类型,允许路由器声明组播群组中的成员关系、退出一个组播群组以及询问其他路由器。该扩展还提供了携带路由信息的报文。

mrouted是UNIX操作系统下实现DVMRP的著名程序。它的功能包括:

■ 路由传播。mrouted使用DVMRP在各个路由器之间传播组播路由信息。

■ 组播隧道技术(multicast tunneling)。mrouted使用隧道技术,将一个组播数据报以隧道方式从一个路由器穿过许多中间路由器(这些路由器并不参加组播路由),送到另一个路由器,如下图所示。

组播隧道构成了Internet组播主干网MBONE(Multicast Backbone)的基础。许多网点都参与了MBONE,MBONE允许特定网点的主机收发组播数据报,然后转发到其他参与的网点。MBONE常用于传播音频和视频数据。