第一章 RIP 协议简介
路由器的关键作用是用于网络的互连,每个路由器与两个以上的实际网络
相连,负责在这些网络之间转发数据报。在讨论 IP 进行选路和对报文进行转发
时,我们总是假设路由器包含了正确的路由,而且路由器可以利用 ICMP 重定
向机制来要求与之相连的主机更改路由(具体请看 IP 部分的相应章节)。但在
实际情况下 ,IP 进行选路之前必须先通过某种方法获取正确的路由表。在小型
的、变化缓慢的互连网络中,管理者可以用手工方式来建立和更改路由表。而
在大型的、迅速变化的环境下,人工更新的办法慢得不能接受。这就需要自动
更新路由表的方法,即所谓的动态路由协议,RIP 是其中最简单的一种。
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 号端口上
接收来自远程路由器的路由修改信息,并对本地的路由表做相应的修改,同时
通知其它路由器。通过这种方式,达到全局路由的有效。