这个协议是作为“内部网关协议(interior gateway protocol)”而使用的。如当前Internet般的大型网络,是不可能在整个网络上使用一种单一的路由协议的。网络将被分成为一系列的“自治系统(autonomous systems)”。每个自治系统都被赋予为一个实体,提供技术上和治理上的控制。每个自治系统可以有不同的路由方式。在自治系统中使用的路由协议被称为内部网关协议(IGR)。另一种路由协议面向自治系统,最早的这类协议是“EGP(外部网关协议/exterior gateway protocol)”,目前还在Internet上使用。这些协议现在被叫做自治系统间(inter-AS)路由协议。RIP在同类协议中被设计为适合于中等规模网络使用。适合于那些网络间连接线路的速度差别不大的网络作为IGP。关于RIP适用条件的具体说明见:[3] Braden and Postel。
RIP使用一类叫做“距离向量”的算法。这类算法最早是由Ford and Fulkerson [6]提出的。所以这也被称为Ford-Fulkerson算法。有时也被称为Bellman-Ford算法,这是因为这一描述是基于Bellman公式。(这一领域的介绍见[1])其描述文档见[2],该文讲述了路由算法的数学模型,并描述且证实了算法中的变量,及其他相关内容。该算法的最初实现在1969年被用于ARPANET。这一协议家族还包括Xerox网络协议(XNS),PUP协议(见[4])。一个较新的版本使用了XNS的结构,并更名为路由信息协议(见[7])。Berkeley的算法与其大致相同,不过将XNS的地址转换为一种更通用的格式用以包括IP等地址,并将路由更新时间限定在30秒。因为其相似性,RIP这一名称被用于XNS协议和其他协议中。
问题在于:虽然B可以使用超时来去处失效的路径,但将使用太长的时间。一开始,A、C还是相信可以通过B可以到达目标,并使用尺度3。下面B错误的认为可以从A或C到达目标,而且没有办法来解决。A、C当发现B的路径失效后,它们之间还会认为可以通过对方到达目标。虽然最后系统可以汇聚,但这将花去太多的时间。在最坏的情况下,当一个网络与系统的其他部分彻底失去连接时,将花费相当长的时间来使其他网络知道这一情况。这个问题叫作“记数到无穷大(counting to infinity)”。
在请求和回应中,包中的其他内容是目标的信息。列表中的每一项都包括了目标网络或主机,以及它们的尺度。这一包格式可以使RIP能够处理多种协议的路由信息。不同的协议使用不同的协议簇号(address family identifier),本文档只描述IP协议,其协议簇号为2。(还没有关于其他类型的地址。)但为了将来,需要忽略不同协议簇号的信息(这些项的大小和IP协议一样)。在过滤掉不支持信息后开始信息处理。IP地址是4字节的,尺度用来说明目标,其值在1到15之间;对不可达的目标,尺度是16。 由一个网关发来的路径总将取代同一网关发来的到达同一目标的路径。
[1] Bellman, R. E., "Dynamic Programming", Princeton University Press, Princeton, N.J., 1957.
[2] Bertsekas, D. P., and Gallaher, R. G., "Data Networks", Prentice-Hall, Englewood Cliffs, N.J., 1987.
[3] Braden, R., and Postel, J., "Requirements for Internet Gateways", USC/Information Sciences Institute, RFC-1009, June 1987.
[4] Boggs, D. R., Shoch, J. F., Taft, E. A., and Metcalfe, R. M., "Pup: An Internetwork Architecture", IEEE Transactions on Communications, April 1980.
[5] Clark, D. D., "Fault Isolation and Recovery," MIT-LCS, RFC-816, July 1982.
[6] Ford, L. R. Jr., and Fulkerson, D. R., "Flows in Networks", Princeton University Press, Princeton, N.J., 1962.
[7] Xerox Corp., "Internet Transport Protocols", Xerox System Integration Standard XSIS 028112, December 1981. 文档附件 RFC 原文 ttp://www.ietf.org/rfc/rfc1058.txt