距离矢量组播路由选择协议
(dvmrp:distancevectormulticastroutingprotocol)
距离矢量组播路由选择协议(dvmrp)是一种互联网路由协议,为互联网络的主机组提供了一种面向无连接信息组播的有效机制。dvmrp是一个“内部网关议”;适合在自治系统内的使用,不适合在不同的自治系统之间使用。当前开发的dvmrp不能用于为非组播数据报路由,因此要想一个路由器既能为多播数据报又能为单播数据报路由,则它必须运行两个不同的路由选择进程。
dvmrp的开发基于路由选择信息协议(rip)。dvmrpdvmrp整合rip中的许多特性和截断方向路径广播(trpb:truncatedreversepathbroadcasting)算法。另外,为了试验跨越不支持多播的网络可行性,开发了一种叫“隧道”的机制。dvmrp和rip的主要不同之处在于:rip路由和转发数据报到明确的目的地。dvmrp的目的是为了跟踪到组播数据报出发地的返回路径。
dvmrp数据包封装于ip数据报中,使用的ip协议号为2,这点与internet组管理协议(igmp)相同。
协议结构
dvmrp通过igmp交换路由选择数据报。dvmrp数据报由两部分组成:一个小型定长的igmp头和一个标志数据流。
________________________________________________________________
|4|8|16|24|32bit|
|--------|------------|--------------|---------------------------|
|version|type|sub-type|checksum|
|--------|------------|--------------|---------------------------|
|dvmrpdatastream|
----------------------------------------------------------------
version╠版本号为1。
type╠dvmrp类型为3。
sub-type╠子类型有:1=response,提供一些目的地路线。2=request,请求到达目的地的路线。3=non-membershipreport,提供非会员报告。4=non-membershipcancellation,取消先前的非会员报告。
checksum╠checksum必须基于传输进行计算并且基于数据包的接收而生效。dvmrp信息的checksum计算前提是checksum字段设置为0。