距离矢量组播路由选择协议(DVMRP)是一种互联网路由协议,为互联网络的主机组提供了一种面向无连接信息组播的有效机制。DVMRP 是一个“内部网关协议”,适合在自治系统内的使用,不适合在不同的自治系统之间使用。当前开发的 DVMRP 不能用于为非组播数据报路由,因此要想一个路由器既能为多播数据报又能为单播数据报路由,则它必须运行两个不同的路由选择进程。
DVMRP 的开发基于路由选择信息协议(RIP)。DVMRP 整合 RIP 中的许多特性和截断方向路径广播(TRPB:Truncated Reverse Path Broadcasting)算法。另外,为了试验跨越不支持多播的网络可行性,开发了一种叫“隧道”的机制。DVMRP 和 RIP 的主要不同之处在于:RIP 路由和转发数据报到明确的目的地。DVMRP 的目的是为了跟踪到组播数据报出发地的返回路径。
DVMRP 数据包封装于 IP 数据报中,使用的 IP 协议号为 2 ,这点与 Internet 组管理协议(IGMP)相同。
协议结构
DVMRP 通过 IGMP 交换路由选择数据报。DVMRP 数据报由两部分组成:一个小型定长的 IGMP 头和一个标志数据流。
| 4 | 8 | 16 | 24 | 32bit |
| Version | Type | Sub-Type | Checksum | |
| DVMRP Data stream | ||||
- Version ― 版本号为1。
Type ― DVMRP 类型为3。 - Sub-Type ― 子类型有:1 = Response,提供一些目的地路线。2 = Request,请求到达目的地的路线。3 = Non-Membership Report,提供非会员报告。4 = Non-Membership Cancellation,取消先前的非会员报告。
- Checksum ― Checksum必须基于传输进行计算并且基于数据包的接收而生效。DVMRP 信息的 Checksum 计算前提是 Checksum 字段设置为0。
组织来源:DVMRP 由 IETF(www.ietf.org)定义在 RFC 1075 中。
相关链接:http://www.javvin.com/protocol/rfc1075.pdf:Distance Vector Multicast Routing Protocol


