⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc1075.txt

📁 RFC规范的翻译稿
💻 TXT
📖 第 1 页 / 共 3 页
字号:
组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:田金勇( tany   tjy308@263.net)
译文发布时间:2001-6-15
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须
保留本文档的翻译及版权信息。

Network Working Group                                                D. Waitzman 
Request For Comments: 1075                                             C. Partridge
                                                                      BBN STC
                                                                      S. Deering
Stanford University
     November 1988  
远距离矢量多播选路协议
(RFC 1075  Distance Vector  Multicast Routing Protocol)
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头部是:
       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |版本   | 类型  |  子类型       |          校验和               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
版本是1。

DVMRP的类型是3。

子类型是以下之一:
1=应答;报文提供了到一些目的地的路由。
2=请求;  报文询问到一些目的地的路由。
3=非成员报告;报文提供非成员报告。
4=非成员取消;报文取消先前非成员报告。

校验和是除了IP头部以外,以16位对齐的全部报文的反码和的反码。计算校验和
时,校验和字段为零。
DVMRP报文的剩余部分是特征数据流。使用特征数据流的原因是提供易扩充性(通
过增加新标签来开发新命令)和减少报文中冗余数据的数量。数据流中的成分被叫做命
令,为了便于对齐,它的长度是16位的倍数。命令被组织为八位命令数字代码,并至
少带有一个八位数据部分。要求所有命令按16位对齐。
出现错误的报文将在处理过程中检测到错误的地方被丢弃。任何在错误出现之前由
于报文的内容而发生的状态改变,将不会恢复到它原来的值。
某些命令在它们的规范说明中定义了缺省的值。因为缺省值可能会因为协议向前发
展而改变。一个谨慎的实现不会发送依赖缺省值的报文。
DVMRP报文的长度被限制为512字节,这不包括IP头部。
3.1 NULL命令
 
 
格式: 0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        0      |  |      忽略     |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
 描述:NULL命令用来提供附加对齐或填充到32位。
3.2 地址家族指示符(AFI)命令
     格式:  0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        2      |  |    家族       |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
家族的值:
            2=IP地址家族,它的地址是32位长。
缺省:家族(Family)=2
描述:AFI命令为数据流中后继地址提供了地址家族(直到出现不同的AFI命令)。
如果接受者不支持地址家族会出现错误。
3.3 子网掩码(Subnetmask)命令
 格式:  0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        3      |  | 计数(count) |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
附加参数,AFI=IP:
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | 子网掩码                                                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
计数(count)为0或1。
缺省:假定跟随的路由是到网络的,使用每条路由的目的地网络掩码的一个掩码。
描述:子网掩码命令提供了用于后继路由的子网掩码。对子网掩码中的位有一些要求:
0到7位必须为1,所有位不应为1。
如果计数为0,则没有子网掩码适用,假设跟随的路由是到网络的,使用每个路径的目
的地的网络掩码的一个掩码。如果计数是1,则子网掩码应该出现在数据流中,并且具有在
给定地址族下的合适的长度。
如果计数不为0或1,则出错。
子网掩码不应该被送到适合的网络之外。
要想了解有关IP子网的更多的信息请参考[6]。
3.4 度量(Metric)命令 
格式: 0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        4      |  | 值(value)   |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
值(value)是度量单位,它是一个在1到255之间的无符号值。
缺省:无。
描述:度量命令提供了后继目的地的度量。度量与发送DVMRP路由更新的路由器有
关。
3.5 flag0命令
     格式:  0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        5      |  |    值(value)|
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
值(value)中位的意义:
    位7:目的地不可达。
    位6:分裂水平隐藏路径。
缺省:所有位为零。
描述:flags0命令提供一个设置许多标志的方式。唯一定义的标志——位6和位7——
能被用来提供带有无穷大的度量的路由的更多的信息。如果路由器收到了一个它不支持的标
志,则应该忽略这个标志。该命令之所以叫做flag0,是为了允许将来定义附加的标志命令
(flags1,等等)。
    这是一个实验性命令,可能将来会改变。
3.6 无穷大(Infinity)命令
格式:   0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        6      |  |  值(value)  |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
值(value)是无穷大(Infinity),它是一个在1到255之间的无符号值。
缺省:值为16。
描述:infinity命令定义流中的后继度量无穷大性。
如果infinity为0,或少于当前的度量值,则出错。
3.7目的地址(DA)命令
 
 格式:     0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        7      |  |    计数       |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
计数(count)的附加参数数组,AFI=IP:
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | 目的地址1                                                    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | 目的地址2                                          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
计数提供的地址的数目,从1到255。地址的长度依赖于当前地址家族。提供的地址数
目受到512字节的报文长度限制。
缺省:无。
描述:DA命令提供了一个目的地列表。尽管这种格式能表达到主机的路由,路由算法
仅仅支持网络和子网路由。当前度量(metric),无穷大(infinity),flags0,子网掩码(subnetmask)
与一个单一的目的地址结合,定义了一条路由。当前度量必须少于或等于当前无穷大
(infinity)。
当计数等于零时,出错。
3.8 请求目的地址(RDA)命令
格式:   0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        8      |  | 计数(count) |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
“计数”附加参数数组,AFI=IP:
0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | 请求目的地址1                                                 |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | 请求目的地址2                                                 |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
计数是指提供的地址的数目,从0到255。地址长度依赖于当前地址家族。提供的地址
数目受512字节报文长度的限制。
缺省:无。
描述:RDA命令提供了一个路由请求的目的地列表。为所有路由的路由请求被编码为
count=0。
3.9 非成员报告(NMR)命令
    格式 :  0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
           |        9      |  | 计数(count) |
           +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
计数(count)的附加参数数组,AFI=IP:
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | 多播地址1                                                     |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

    0                   1                   2                   3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -