您好,欢迎访问三七文档
一、内部网关协议RIP(RoutingInformationProtocol)1.工作原理•路由信息协议RIP是内部网关协议IGP中最先得到广泛使用的协议。•RIP是一种分布式的基于距离向量的路由选择协议。•RIP协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录。“距离”的定义•从一路由器到直接连接的网络的距离定义为1。•从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加1。•RIP协议中的“距离”也称为“跳数”(hopcount),因为每经过一个路由器,跳数就加1。“距离”的定义•RIP认为一个好的路由就是它通过的路由器的数目少,即“距离短”。•RIP允许一条路径最多只能包含15个路由器。•“距离”的最大值为16时即相当于不可达。可见RIP只适用于小型互联网。•RIP不能在两个网络之间同时使用多条路由。RIP选择一个具有最少路由器的路由(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由。RIP协议的三个要点•仅和相邻路由器交换信息。•交换的信息是当前本路由器所知道的全部信息,即自己的路由表。•按固定的时间间隔交换路由信息,例如,每隔30秒。路由表的建立•路由器在刚刚开始工作时,只知道到直接连接的网络的距离(此距离定义为1)。•以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。•经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。•RIP协议的收敛(convergence)过程较快,即在自治系统中所有的结点都得到正确的路由选择信息的过程。2.距离向量算法•收到相邻路由器(其地址为X)的一个RIP报文:•(1)先修改此RIP报文中的所有项目:将“下一跳”字段中的地址都改为X,并将所有的“距离”字段的值加1。•(2)对修改后的RIP报文中的每一个项目,重复以下步骤:•若项目中的目的网络不在路由表中,则将该项目加到路由表中。•否则•若下一跳字段给出的路由器地址是同样的,则将收到的项目替换原路由表中的项目。•否则•若收到项目中的距离小于路由表中的距离,则进行更新,•否则,什么也不做。•(3)若3分钟还没有收到相邻路由器的更新路由表,则将此相邻路由器记为不可达的路由器,即将距离置为16(距离为16表示不可达)。•(4)返回。路由器之间交换信息•RIP协议让互联网中的所有路由器都和自己的相邻路由器不断交换路由信息,并不断更新其路由表,使得从每一个路由器到每一个目的网络的路由都是最短的(即跳数最少)。•虽然所有的路由器最终都拥有了整个自治系统的全局路由信息,但由于每一个路由器的位置不同,它们的路由表当然也应当是不同的。112131FEDCBA51612151314141611151一开始,各路由表只有到相邻路由器的信息网3网2网4网6网5网1“4”表示“从本路由器到网4”“1”表示“距离是1”“”表示“直接交付”112131FEDCBA51612151314141611151路由器B收到相邻路由器A和C的路由表网3网2网4网6网5网1112131416112A22A314162C更新后A说:“我到网1的距离是1。”因此B现在也可以到网1,距离是2,经过A。”112131FEDCBA51612151314141611151路由器B收到相邻路由器A和C的路由表网3网2网4网6网5网1112131416112A22A314162C更新后A说:“我到网2的距离是1。”因此B现在也可以到网2,距离是2,经过A。”112131FEDCBA51612151314141611151路由器B收到相邻路由器A和C的路由表网3网2网4网6网5网1112131416112A22A314162C更新后A说:“我到网3的距离是1。”但B没有必要绕道经过路由器A再到达网3,因此这一项目不变。112131FEDCBA51612151314141611151路由器B收到相邻路由器A和C的路由表网3网2网4网6网5网1112131416112A22A314162C更新后C说:“我到网4的距离是1。”但B没有必要绕道经过路由器C再到达网4,因此这一项目不变。112131FEDCBA51612151314141611151路由器B收到相邻路由器A和C的路由表网3网2网4网6网5网1112131416112A22A314162C更新后C说:“我到网6的距离是1。”因此B现在也可以到网6,距离是2,经过C。”最终所有的路由器的路由表都更新了FEDCBA11213142B52E63B1122A32A43A5162F12E22D33C42C516113B23B32B4152F61网2网6网5网1网3网412A2132A43A5162F12A22A314153C62CRIP协议的位置•RIP协议使用运输层的用户数据报UDP进行传送(使用UDP的端口520)。•因此RIP协议的位置应当在应用层。但转发IP数据报的过程是在网络层完成的。4字节RIP报文3.RIP2协议的报文格式路由信息(20字节/路由)可重复出现最多25个IP数据报路由标记网络地址地址族标识符距离(1-16)IP首部UDP首部首部路由部分必为0版本命令4字节子网掩码下一跳路由器地址UDP用户数据报RIP2的报文由首部和路由部分组成。•RIP2报文中的路由部分由若干个路由信息组成。每个路由信息需要用20个字节。地址族标识符(又称为地址类别)字段用来标志所使用的地址协议。•路由标记填入自治系统的号码,这是考虑使RIP有可能收到本自治系统以外的路由选择信息。再后面指出某个网络地址、该网络的子网掩码、下一跳路由器地址以及到此网络的距离。RIP协议的优缺点•RIP存在的一个问题是当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器。•RIP协议最大的优点就是实现简单,开销较小。•RIP限制了网络的规模,它能使用的最大距离为15(16表示不可达)。•路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增加。R2R1网1网3网2正常情况1112R1R1说:“我到网1的距离是1,是直接交付。”“1”表示“从本路由器到网1”“1”表示“距离是1”“”表示“直接交付”R2R1网1网3网2正常情况1112R1R2说:“我到网1的距离是2,是经过R1。”“1”表示“从本路由器到网1”“2”表示“距离是2”“R1”表示经过R1R2R1网1网3网2R2R1网1网3网2网1出了故障正常情况1111612R112R1R1说:“我到网1的距离是16(表示无法到达),是直接交付。”但R2在收到R1的更新报文之前,还发送原来的报文,因为这时R2并不知道R1出了故障。R2R1网1网3网2R2R1网1网3网2网1出了故障正常情况1111612R112R1R1收到R2的更新报文后,误认为可经过R2到达网1,于是更新自己的路由表,说:“我到网1的距离是3,下一跳经过R2”。然后将此更新信息发送给R2。13R2R2R1网1网3网2R2R1网1网3网2网1出了故障正常情况1111612R112R1R2以后又更新自己的路由表为“1,4,R1”,表明“我到网1距离是4,下一跳经过R1”。13R214R1课件制作人:谢希仁R2R1网1网3网2R2R1网1网3网2网1出了故障正常情况11…11613R215R2116R212R112R114R1116R1…这样不断更新下去,直到R1和R2到网1的距离都增大到16时,R1和R2才知道网1是不可达的。这就是好消息传播得快,而坏消息传播得慢。网络出故障的传播时间往往需要较长的时间(例如数分钟)。这是RIP的一个主要缺点。
本文标题:RIP协议
链接地址:https://www.777doc.com/doc-3260392 .html