《第4节RIP路由信息协议》由会员分享,可在线阅读,更多相关《第4节RIP路由信息协议(31页珍藏版)》请在金锄头文库上搜索。
1、第第4节节 RIP路由信息协议路由信息协议一、一、RIP的由来的由来v使用最广泛的一种使用最广泛的一种IGP是路由信息协议是路由信息协议RIP(Routing Information Protocol),),RIP的另一个名字是的另一个名字是routed(路由守护神),(路由守护神),来自一个实现它的程序。这个程序最初由加来自一个实现它的程序。这个程序最初由加利福尼亚大学伯克利分校设计,用于给他们利福尼亚大学伯克利分校设计,用于给他们在局域网上的机器提供一致的选路和可达信在局域网上的机器提供一致的选路和可达信息。它依靠物理网络的广播功能来迅速交换息。它依靠物理网络的广播功能来迅速交换选路信息。
2、它并不是被设计来用于大型广域选路信息。它并不是被设计来用于大型广域网的(尽管现在的确这么用)。网的(尽管现在的确这么用)。v在施乐(在施乐(Xerox)公司的)公司的Palo Alto研究中心研究中心PARC早期所作的关于网络互连的研究的基早期所作的关于网络互连的研究的基础上,础上,routed实现了起源于实现了起源于Xerox NS RIP的的一个新协议,它更为通用化,能够适应多种一个新协议,它更为通用化,能够适应多种网络。网络。v尽管在其前辈上做了一些小改动,尽管在其前辈上做了一些小改动,RIP作为作为IGP流行起来并非技术上有过人之处,而是由流行起来并非技术上有过人之处,而是由于伯克利分
3、校把路由守护神软件附加在流行于伯克利分校把路由守护神软件附加在流行的的4BSD UNIX系统上一起分发,从而使得许系统上一起分发,从而使得许多多TCP/IP网点根本没考虑其技术上的优劣就网点根本没考虑其技术上的优劣就采用采用routed并开始使用并开始使用RIP。一旦安装并使。一旦安装并使用了这个软件,它就成为本地选路的基础,用了这个软件,它就成为本地选路的基础,研究人员也开始在大型网络上使用它。研究人员也开始在大型网络上使用它。v关于关于RIP的最令人吃惊的事可能就是它在还没的最令人吃惊的事可能就是它在还没有正式标准之前就已经广泛流行了。大多数有正式标准之前就已经广泛流行了。大多数的实现都脱
4、胎于伯克利分校的程序,但是由的实现都脱胎于伯克利分校的程序,但是由于编程人员对未形成文档的微妙细节理解不于编程人员对未形成文档的微妙细节理解不同而造成了它们之间互操作性限制。协议出同而造成了它们之间互操作性限制。协议出现新版本后,出现了更多的问题。在现新版本后,出现了更多的问题。在1988年年6月形成了一个月形成了一个RFC标准,这才使软件商解决标准,这才使软件商解决了互操作性问题。了互操作性问题。二、二、RIP协议基于距离矢量算法协议基于距离矢量算法v RIP协议的基础就是基于本地网的距离矢量协议的基础就是基于本地网的距离矢量算法的直接而简单的实现。它把参加通信的算法的直接而简单的实现。它把
5、参加通信的机器分为主机的(机器分为主机的(active)和被动的)和被动的(passive或或silent)。主动路由器向其他路)。主动路由器向其他路由器通告其路由,而被动路由器接收通告并由器通告其路由,而被动路由器接收通告并在此基础上更新其路由,它们自己并不通告在此基础上更新其路由,它们自己并不通告路由。只有路由器能以主动方式使用路由。只有路由器能以主动方式使用RIP,而,而主机只能使用被动方式。主机只能使用被动方式。三、三、RIP报文的广播报文的广播v以主动方式运行以主动方式运行RIP的路由器每隔的路由器每隔30秒广播秒广播一次报文,该报文包含了路由器当前的选路一次报文,该报文包含了路由器
6、当前的选路数据库中的信息。每个报文由序偶构成,每数据库中的信息。每个报文由序偶构成,每个序偶由一个个序偶由一个IP网络地址和一个代表到达该网络地址和一个代表到达该网络的距离的整数构成。网络的距离的整数构成。 vRIP使用使用UDP报文来封装自己的协议报文。报文来封装自己的协议报文。四、四、RIP的跳数的跳数v RIP使用跳数度量(使用跳数度量(hop count metric)来)来衡量到达目的站的距离。在衡量到达目的站的距离。在RIP度量标准中,度量标准中,路由器到它直接相连的网络的跳数被定义为路由器到它直接相连的网络的跳数被定义为0,到通过另一个路由器可达的网络的距离为,到通过另一个路由器
7、可达的网络的距离为1跳,其余依此类推。因此从给定源站到目的跳,其余依此类推。因此从给定源站到目的站的一条路径的跳数(站的一条路径的跳数(number of hops或或hop count)对应于数据报沿该路传输时所)对应于数据报沿该路传输时所经过的路由器数。经过的路由器数。 v显然,使用跳数作为衡量最短路径并不一定显然,使用跳数作为衡量最短路径并不一定会得到最佳结果。例如,一条经过三个以太会得到最佳结果。例如,一条经过三个以太网的跳数为网的跳数为3的路径,可能比经过两条低速串的路径,可能比经过两条低速串行线的跳数为行线的跳数为2的路径要快得多。为了补偿传的路径要快得多。为了补偿传输技术上的差距
8、,许多输技术上的差距,许多RIP软件在通告低速网软件在通告低速网络路由时人为地增加了跳数。络路由时人为地增加了跳数。v运行运行RIP的主动机器和被动机器都要监听所有的主动机器和被动机器都要监听所有的广播报文,并根据前面所说的矢量距离算的广播报文,并根据前面所说的矢量距离算法来更新其选路表。法来更新其选路表。 五、五、RIP协议路由发现协议路由发现RIP每隔每隔30秒向外广播一次路由报文,内容包秒向外广播一次路由报文,内容包括本路由器已知的路由信息。括本路由器已知的路由信息。六、六、RIP协议路由表的更新协议路由表的更新举例举例v路由器路由器R1在网络在网络2上广播的选路信息报文中上广播的选路信
9、息报文中包含了序偶(包含了序偶(1,0),即它能够以费用值),即它能够以费用值0到到达网络达网络1。路由器。路由器R2和和R5收到这个广播报收到这个广播报文之后,建立一个通过文之后,建立一个通过R1到达网络到达网络1的路由的路由(费用为(费用为1)。然后,路由器)。然后,路由器R2和和R5在网在网络络3上广播它们的上广播它们的RIP报文时就会包含序偶报文时就会包含序偶(1,1)。最终,所有的路由器和主机都会)。最终,所有的路由器和主机都会建立到网络建立到网络1的路由。的路由。七、七、RIP性能和可靠性的改进规则性能和可靠性的改进规则vRIP规定了少量的规则来改进其性能和可靠性。规定了少量的规则
10、来改进其性能和可靠性。例如,当路由器收到另一个路由器传来的路例如,当路由器收到另一个路由器传来的路由时,它将保留该路由直到收到更好的路由。由时,它将保留该路由直到收到更好的路由。在所举的例子中,如果路由器在所举的例子中,如果路由器R2和和R5都以费都以费用用2来广播到网络来广播到网络1的路由,那么的路由,那么R3和和R4就会就会将路由设置为经过先广播的那个路由器到达将路由设置为经过先广播的那个路由器到达网络网络1。即:为了防止路由在两个或多个费用。即:为了防止路由在两个或多个费用相等的路径之间振荡不定,相等的路径之间振荡不定,RIP规定在得到费规定在得到费用更小的路由之前保留原有路由不变。用更
11、小的路由之前保留原有路由不变。某路由器故障的后果某路由器故障的后果v如果第一个广播路由的路由器出故障(如崩如果第一个广播路由的路由器出故障(如崩溃)会有什么后果?溃)会有什么后果?RIP规定所有收听者必须规定所有收听者必须对通过对通过RIP获得的路由设置定时器。当路由器获得的路由设置定时器。当路由器在选路表中安置新路由时,它也为之设定了在选路表中安置新路由时,它也为之设定了定时器。当该路由器又收到关于该路由的另定时器。当该路由器又收到关于该路由的另一个广播报文后,定时器也要重新设置。如一个广播报文后,定时器也要重新设置。如果经过果经过180秒后还没有下一次通告该路由,它秒后还没有下一次通告该路
12、由,它就变为无效路由。就变为无效路由。八、八、RIP协议处理常见错误的方法协议处理常见错误的方法 RIP必须处理下层算法的三类错误。必须处理下层算法的三类错误。v第一,由于算法不能明确地检测出路由的回第一,由于算法不能明确地检测出路由的回路,路,RIP要么假定参与者是可信赖的,要么采要么假定参与者是可信赖的,要么采取一定的预防措施。取一定的预防措施。v第二,第二,RIP必须对可能的距离使用一个较小的必须对可能的距离使用一个较小的最大值来防止出现不稳定的现象(最大值来防止出现不稳定的现象(RIP使用的使用的值是值是16)。因而对于那些实际跳数值在)。因而对于那些实际跳数值在16左左右的互连网络,
13、管理者要么把它划分为若干右的互连网络,管理者要么把它划分为若干部分,要么采用其他的协议。部分,要么采用其他的协议。 v第三,路由更新报文在网络之间的传输速度第三,路由更新报文在网络之间的传输速度很慢,很慢,RIP所使用的矢量距离算法会产生慢收所使用的矢量距离算法会产生慢收敛(敛(slow convergence)或无限计数)或无限计数(count to infinity)问题从而引发不一致性。)问题从而引发不一致性。选择一个小的无限大值(选择一个小的无限大值(16),可以限制慢),可以限制慢收敛问题,但不能彻底解决客观存在。收敛问题,但不能彻底解决客观存在。 九、路由自环九、路由自环跳数累加到
14、无限跳数累加到无限v16既解决了跳数无限大的问题,也是网络不既解决了跳数无限大的问题,也是网络不 可达的标记。优点:一定程度上解决了产生可达的标记。优点:一定程度上解决了产生自环的问题。缺点:限制了网络规模。自环的问题。缺点:限制了网络规模。解决方案解决方案1定义一个最大值定义一个最大值解决方案解决方案2水平分割水平分割v在使用水平分割技术时,路由器记录下收到在使用水平分割技术时,路由器记录下收到各路由的接口,而当这路由器通告路由时,各路由的接口,而当这路由器通告路由时,就不会把该路由再通过那个接口送回去。在就不会把该路由再通过那个接口送回去。在上例中,路由器上例中,路由器B不会把它到网络不会
15、把它到网络4的距离为的距离为1的路由再通告给的路由再通告给C,因此一旦,因此一旦C与网络与网络4的连的连接失效,它就不会再通告该路由。经过几轮接失效,它就不会再通告该路由。经过几轮选路更新之后,所有的机器都会知道网络选路更新之后,所有的机器都会知道网络4是是不可达的。但是水平分割技术不能解决所有不可达的。但是水平分割技术不能解决所有的拓扑结构中的问题的拓扑结构中的问题 。 v从分析自环产生的原因来解决问题。从分析自环产生的原因来解决问题。v缺点是只对两台路由器之间的自环问题有效,缺点是只对两台路由器之间的自环问题有效,对三台及以上路由器无效。对三台及以上路由器无效。解决方案解决方案3触发更新触
16、发更新当网络结构发生变化的时候,路由器立即广播当网络结构发生变化的时候,路由器立即广播该信息,而不是等待该信息,而不是等待30秒周期到达时再发送。秒周期到达时再发送。v从减少自环发生的概率来解决问题。但不能从减少自环发生的概率来解决问题。但不能从根本解决自环问题。从根本解决自环问题。解决方案解决方案4抑制时间抑制时间v抑制时间迫使参与协议工作的路由器,在收抑制时间迫使参与协议工作的路由器,在收到关于某网络不可达的信息后的一段固定时到关于某网络不可达的信息后的一段固定时间内,忽略任何关于该网络的路由信息。这间内,忽略任何关于该网络的路由信息。这段抑制时间的典型长度是段抑制时间的典型长度是60秒。
17、该技术的思秒。该技术的思路是等待足够的时间以便确信所有的机器都路是等待足够的时间以便确信所有的机器都收到坏消息,并且不会错误地接受内容过时收到坏消息,并且不会错误地接受内容过时的报文。在抑制时间结束后,如果有关该网的报文。在抑制时间结束后,如果有关该网络的信息仍然被广播,则接收到该信息的路络的信息仍然被广播,则接收到该信息的路由器才会重新计算更改路由表。由器才会重新计算更改路由表。 需要指出的是,所有参与需要指出的是,所有参与RIP的机器都要遵循的机器都要遵循抑制策略,否则仍然会发生选路回路现象。抑制策略,否则仍然会发生选路回路现象。抑制技术的缺点是:如果出现了路由回路,抑制技术的缺点是:如果
18、出现了路由回路,那么在抑制期间内这些路由回路仍然会维持那么在抑制期间内这些路由回路仍然会维持下去。更严重的是,在抑制期间所有不正确下去。更严重的是,在抑制期间所有不正确的路由也保留下来了,即使是有替代路由的的路由也保留下来了,即使是有替代路由的存在。存在。v从减少自环发生的概率来解决问题。从减少自环发生的概率来解决问题。v缺点是在一些特殊的情况下会导致慢收敛。缺点是在一些特殊的情况下会导致慢收敛。在多路径情况下的解决方案在多路径情况下的解决方案 v不幸的是,虽然水平分割、触发更新、抑制不幸的是,虽然水平分割、触发更新、抑制技术能够解决一些问题,但它们又带来了一技术能够解决一些问题,但它们又带来
19、了一些新的问题。例如,在许多路由器共享一个些新的问题。例如,在许多路由器共享一个公共网络的结构中采用触发更新技术的情况公共网络的结构中采用触发更新技术的情况下,一个广播就能改变这些路由器的路由表,下,一个广播就能改变这些路由器的路由表,引发一轮新的广播。如果第二轮广播改变了引发一轮新的广播。如果第二轮广播改变了路由表,它又会引起更多的广播。这就产生路由表,它又会引起更多的广播。这就产生了广播雪崩。了广播雪崩。 v即便不出现广播雪崩现象,所有机器周期性即便不出现广播雪崩现象,所有机器周期性地进行广播也意味着网络流量随着路由器数地进行广播也意味着网络流量随着路由器数目的增加而增加。而可能出现的路由
20、回路在目的增加而增加。而可能出现的路由回路在线路容量有限的情况下可能就是致命的问题。线路容量有限的情况下可能就是致命的问题。当兜圈子的分组使得线路的容量饱和后,路当兜圈子的分组使得线路的容量饱和后,路由器要交换一些路由报文来打破这种回路,由器要交换一些路由报文来打破这种回路,就变得很困难甚至是不可能的。同样,在广就变得很困难甚至是不可能的。同样,在广域网中,抑制期间可能太长,使得高层协议域网中,抑制期间可能太长,使得高层协议使用的定时器超时从而中断连接。尽管有这使用的定时器超时从而中断连接。尽管有这些熟知的问题,但还是有许多的组织在广域些熟知的问题,但还是有许多的组织在广域网上使用网上使用RIP作为作为IGP。