RIP ( route information protocol )协议是基于 V-D 算法(又称为 Bellman-Ford 算法)的内部动态路由协议。 V-D 是 Vector-Distance 的缩写,因此 V-D 算法又称为距离向量算法。这种算法在 ARPARNET 早期就用于计算机网络的路由的计算。 RIP 协议在目前已成为路由器、主机路由信息传递的标准之一,就因为这个原因, RIP 协议被大多数 IP 路由器商业卖主广泛使用。
先大致解释一下什么是内部路由协议。由于历史的原因,当前的 INTERNET 网被组成一系列的自治系统,各自治系统通过一个核心路由器连到主干网上。而一个自治系统往往对应一个组织实体(比如一个公司或大学)内部的网络与路由器集合。每个自治系统都有自己的路由技术,对不同的自治系统路由技术是不相同的。用于自治系统间接口上的单独的协议称为外部路由器协议,简称 EGP ( Exterior Gateway Protocol )。用于自治系统内部的路由协议称为内部路由器协议,简称 IGP ( Interior Gateway Protocol )。 内部路由器与外部路由器协议 EGP 不同,外部路由协议只有一个,而内部路由器协议则是一族。各内部路由器协议的区别在于距离制式( distance metric, 即距离度量标准)不同,和路由刷新算法不同。 RIP 协议是最广泛使用的 IGP 之一,著名的路径刷新程序 Routed 便是根据 RIP 实现的。 RIP 协议被设计用于使用同种技术的中型网络,因此适应于大多数的校园网和使用速率变化不是很大的连续线的地区性网络。对于更复杂的环境,一般不使用 RIP 协议。
在实现时, RIP 作为一个系统长驻进程( daemon )而存在于路由器中,它负责从网络系统的其它路由器接收路由信息,从而对本地 IP 层路由表作动态的维护,保证 IP 层发送报文时选择正确的路由,同时广播本路由器的路由信息,通知相邻路由器作相应的修改。 RIP 协议处于 UDP 协议的上层(如图 1.1 ), RIP 所接收的路由信息都封装在 UDP 的数据报中, RIP 在 520 号端口上接收来自远程路由器的路由修改信息,并对本地的路由表做相应的修改,同时通知其它路由器。通过这种方式,达到全局路由的有效。
RIP 协议分为传统 RIP 协议、需求 RIP 协议( Demand RIP )和触发 RIP ,而传统 RIP 协议又分为 RIP-1 ,和 RIP-2 两个版本。需求 RIP 协议和触发 RIP 协议与传统 RIP 协议的区别在于需求 RIP 协议和触发 RIP 协议支持对拨号网的路由的维护,增添了几种相应的报文命令,增加了报文发送确认方式。 quidway2501 上目前的 RIP-2 不是采取需求 RIP 协议和触发 RIP 的方式,但为了支持拨号网的路由的维护 2 ,也汲取了这两种协议的一些处理方式。其中主要改进在于对拨号网的路由进行处理时,并不象对局域网的路由一样设置一定的生存周期,当然为此而付出的代价也是很大的。