远距离矢量多播选路协议

【远距离矢量多播选路协议】1备忘录状态
本RFC描述了一个距离矢量形式的路由选择协议 , 这个协议用于在互联网上为多播数
据报选路 。它起源于选路信息协议(RIP)[1] , 并实现了RFC1054中所描述的多播 。这是
一个实验性协议 , 这次并不推荐它的实现方式 。该备忘录可以任意发布 。
2简介
在IP网络上多播的草拟标准目前存在[2] , 但没有支持网间多播的路由选择协议 。本备
忘录描述了实验性的路由选择协议 , 叫做DVMRP , 它实现了网间多播 。DVMRP使RIP中
的许多特性和在Deering[3]中所描述的截断方向路径广播(TRPB)算法相结合 。
DVMRP是一个“内部网关协议”;适合在自治系统内的使用 , 但不能在不同的自治系
统之间使用 。当前开发的DVMRP不能用于为非多播数据报选路 , 因此要想一个路由器既
能为多播数据报又能为单播数据报选路 , 则它必须运行两个分离的路由选择进程 。DVMRP
被设计成易于扩展的 , 可以扩展成为单播数据报选路 。
开发DVMRP是为了试验[3]中所描述的算法 。RIP用作这次开发的起始点是因为有一个
实现版本可用 , 而且距离矢量算法与连接状态类算法[4]相比较简单的 。另外 , 为了试验穿
越不支持多播的网络可行性 , 开发了一种叫“隧道”的机制
多播转发算法需要构建基于路由信息的树 。构建这颗树需要的状态信息比RIP被设计
能提供的要多 。因为DVMRP在某些方面比RIP复杂的多 。已经具有许多所需要的状态的
连接状态算法 , 可能为Internet上多播选路和转发提供了更好的基础 。
DVMRP在一个非常重要的方面与RIP有不同之处 。RIP按照路由和转发数据报的方
式思考 。DVMRP的目的是为了了解到多播数据报出发地的返回路径 。为了将DVMRP解释
的和RIP一致 , 单词“目的地”用来代替更恰当的“出发地”但读者应该记住数据报并不
被转发到这些目的地 , 而是起源于那里 。
本备忘录被组织为下列部分:
—对DVMRP进行描述 。
—解释隧道 。
—展示路由算法 。
—展示转发算法 。
—列出不同的时间值 。
—说明配置信息 。
本备忘录不分析距离矢量路由 , 也不充分解释距离矢量算法;要想获得这方面主题
的更多信息 , 请参看[1] 。在本备忘录中执行路由和转发功能的一个进程或多个进程被称
作“路由器” 。
3协议描述
DVMRP使用Internet组治理协议(IGMP)交换路由数据报[2] 。DVMRP数据报由
两部分组成:一个短的、固定长度的IGMP头部 , 和一个特征数据流 。
固定长度的DVMRP报文的IGMP头部是:
0123
01234567890123456789012345678901
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
版本类型子类型校验和
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
版本是1 。
DVMRP的类型是3 。
子类型是以下之一:
1=应答;报文提供了到一些目的地的路由 。
2=请求;报文询问到一些目的地的路由 。
3=非成员报告;报文提供非成员报告 。
4=非成员取消;报文取消先前非成员报告 。
校验和是除了IP头部以外 , 以16位对齐的全部报文的反码和的反码 。计算校验和
时 , 校验和字段为零 。
DVMRP报文的剩余部分是特征数据流 。使用特征数据流的原因是提供易扩充性(通
过增加新标签来开发新命令)和减少报文中冗余数据的数量 。数据流中的成分被叫做命
令 , 为了便于对齐 , 它的长度是16位的倍数 。命令被组织为八位命令数字代码 , 并至

推荐阅读