第3章 路由器应用
距离矢量路由协议
RIP
Routing Information Protocol
本章内容
距离矢量路由协议基础
距离矢量路由协议防止环路的六种方法
配置RIP路由协议
距离矢量的路由协议
•距离矢量算法运用矢量叠加的方式来获取和计算路由信息。把每一条路
由信息看作由目的网络和距离(用metric来度量)组成的矢量,每个路
由器从其邻居获得路由信息,并在获得的每一条路由信息上叠加从自己
到达这个邻居的距离矢量,从而形成自己的路由信息。
CC
DD
BB
AA
CC BB AADD
Routing
Table
Routing
Table
Routing
Table
Routing
Table
Distance—How far
Vector—In which direction
距离矢量路由协议的特点
•距离矢量路由协议在相邻路由器之间进行路由信息的传递,路由器周期性地
把自己的路由表routing table传送给邻居路由器neighbor routers 。距离矢
量协议路由器直接传递各自的路由表信息,路由器从邻居得到路由信息后更新
自己的路由表,并把自己更新后的路由表传给邻居,这样一级一级的传递下下
达到整个网络的同步。
•每个路由器都不知道整个网络的拓补结构,只知道与自己直接相连的网络情
况,并根据从邻居得到的路由信息来更新自己的路由表,然后周期性地发给自
己的邻居。
•类似于十字路口的路标指示牌告诉行车者到达目标走哪个方向、还有多远
•实现和管理都比较简单
•收敛速度比较慢,周期更新报文数据量大,消耗较多的带宽
•为避免路由环路必须进行各种特殊处理
•基于距离矢量算法的路由协议有:rip、igrp等。
AA BB CC
E0 S0 S0 S1 S0 E0
Routing Table
0
0
S0
S1
Routing Table
S0 0
E0 0
Routing Table
E0
S0
0
0
距离矢量—源信息的获得
•每个路由器的路由表在最初只有与之直连的网络
•路由器从邻居发现到达目的网络的最佳路径
•路由器从收集到的源信息中选择到达目标地址的最佳路径
•过一段时间后路由器收到邻居发来的网络信息,并将距离加1
AA BB CC
E0 S0 S0 S1 S0 E0
Routing Table
Routing Table
0
0
1
1
S0
S1
S1
S0
Routing Table
S0 0
E0 0
S0
1
E0
S0
S0 1
0
0
距离矢量—源信息的获得
距离矢量—源信息的获得
AA BB CC
E0 S0 S0 S1 S0 E0
Routing Table
Routing Table
0
0
1
1
S0
S1
S1
S0
Routing Table
S0 0
E0 0
S0
S0
1
2
E0
S0
S0
S0
1
2
0
0
•路由器从收集到的源信息中选择到达目标地址的最佳路径
•过一段时间后路由器收到邻居发来的网络信息,并将距离加1
距离矢量—管理路由信息
路由表的更新过程将通过路由器之间一步一步来完成
AA
更新路由表
网络结构的网络结构的
改变将导致改变将导致
路由表的路由表的
更新更新
距离矢量—管理路由信息
路由表的更新过程将通过路由器之间一步一步来完成
AA
更新路由表
在下一个周期后
路由器A发送更新
过的路由表
网络结构的网络结构的
改变将导致改变将导致
路由表的路由表的
更新更新
距离矢量—管理路由信息
路由表的更新过程将通过路由器之间一步一步来完成
AABB
更新路由表 更新路由表
网络结构的网络结构的
改变将导致改变将导致
路由表的路由表的
更新更新
在下一个周期后
路由器A发送更新
过的路由表
收敛convergence
•同一网络中的每个路由器对整个网络拓补结构有一致
的认识这样一种状态称为收敛,即网络设备的路由表与
网络拓扑结构保持一致 。
•快速收敛是网络所期望的。当网络路由信息从一个稳
定状态由于拓补结构的变化而导致不稳定,经过自学习
到达又一个稳定状态所需的时间称为收敛时间。收敛时
间成为衡量路由选择协议好坏的一个重要指标。
本章内容
距离矢量路由协议基础
距离矢量路由协议防止环路的六种方法
配置RIP路由协议
路 由 回 环
每一个节点管理着与之相连的所有网络
AA BB CC
E0 S0 S0 S1 S0 E0
Routing Table
S0
E0
S0
S0
1
0
0
Routing Table
E0
S0
S0
S0
1
0
0
Routing Table
S0
S1
S1
S0
1
0
0
路 由 回 环
缓慢的收敛容易造成路由信息的不一致
上图中,RouterC的E0口发生故障,网络成为不可达,但是RouterA
还没有收到通知,仍然以为可以通过RouterB到达网络,RouterB也
以为自己可以到达网络。
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
E0
S0
S0
1
2
0
Down
Routing Table
E0
S0
S0
S0
1
2
0
0
Routing Table
S0
S1
S1
S0
1
1
0
0
•B在收到C的更新新信息之前,把自己的路由表发送给C,
于是,C就认为到达 的最佳路径是通过B
路 由 回 环
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
S0
S0
S0
1
2
0
2
Routing Table
E0
S0
S0
S0
1
2
0
0
Routing Table
S0
S1
S1
S1
1
1
0
0
路由器 A 根据错误的信息升级它的路由表
•在RC->RB,RB->RA发送路由更新后,RA和RB中到达的
距离加1,然后, RA->RB,RB->RC,多次循环,导致hop
counts无限大
路 由 回 环
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
S0
S0
S0
1
2
0
2
Routing Table
E0
S0
S0
S0
1
4
0
0
Routing Table
S0
S1
S1
S0
3
1
0
0
无 限 计 数
• 网络的数据将在路由器 A, B, 和 C 之间循环
• 网络的跳数将无限大
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
S0
S0
S0
1
2
0
4
Routing Table
E0
S0
S0
S0
1
6
0
0
Routing Table
S0
S1
S1
S0
5
1
0
0
解决方法1:定义最大跳数
指定最大跳数来防止路由回环
定义最大条数只是在路由环路产生之后才有效的一个策略,我们需
要另一个策略来尽量制止路由环路的产生,这就是水平分割。
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
S0
S0
S0
1
0
16
Routing Table
E0
S0
S0
S0
1
16
0
0
Routing Table
S0
S1
S1
S0
16
1
0
0
解决方法2:水平分割
不会接收到由自身传达出去的路由信息:C向B通告网络,B向A通
告网络,因此,A就不能向B,B也不能向C发送关于网络的路由
信息。
水平分割只能避免出现环路,但如图,故障出现后A、B的路由表里关于故障网段
的路由依然存在,需要一种策略使当C发现故障时,可以通知邻居该网段
不可用,这就是路由中毒。
AA BB CC
E0 S0 S0 S1 S0 E0 X
XX
Routing Table
S0
S0
S0
S0
1
2
0
Down
Routing Table
E0
S0
S0
S0
1
2
0
0
Routing Table
S0
S1
S1
E1
1
2
0
0
解决方法3:路由中毒
路由器将该路由信息的跳数标记为无穷大:第一个发现网络故障的路由器直
接把到该网络的距离设为无限大(给自己下毒),即不可达,然后向其它路由器来宣告
这一信息(给邻居下毒)。
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
S0
S0
S0
1
0
无穷大
Routing Table
E0
S0
S0
S0
1
可能
0
0
Routing Table
S0
S1
S1
E1
可能down
0
0
Update包,下毒 Update包,下毒
解决方法4:毒性逆转
毒性逆转可以超越水平分割
•为了保证所有的邻居都被“下毒”,它们会向“毒源”的方向反向“下
毒”。
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
S0
S0
S0
1
0
无穷大
Routing Table
E0
S0
S0
S0
1
可能
0
0
Routing Table
S0
S1
S1
E1
可能down
0
0
Update包,反下毒 Update包,反下毒
解决方法5:Hold-Down 计时(抑制计时)
为了保证B和C不受A的影响,就出现了抑制计时,即在路由器学习到某个网段出现故障,使自己路由表里关于该网段的路由变为“
可能down”之后,还要保持该状态一段时间;
一条路由信息无效之后,一段时间内这条路由都处于抑制状态,即在一定时间内不再接收关于同一目的
地址的路由更新。
如果从另一个路由器收到一条比以前记录具有更好度量的路径,路由器立即更新该网络的路由并关闭抑制定时器。
如果在抑制定时器期满前的任何时刻,从另一个路由器收到一条不比以前记录度量值好的路径,则路由器忽略这个更
新。
AA BB CC
E0 S0 S0 S1 S0 E0 X
Routing Table
S0
S0
S0
S0
1
0
无穷大
Routing Table
E0
S0
S0
S0
1
0
0
Routing Table
S0
S1
S1
E1
可能down
0
0
正准备下毒时,
A的update包先到了 Update包,下毒
XX
解决方法6:触发更新
当路由表发生变化时路由器立即发送更新信息
•常规路由更新按照既定的时间间隔周期性发送,即使路由器检测到网
络变化,也不会立即发送更新,需等到发送周期才发更新。
•触发更新一般与抑制定时器配合使用,才能有更好的效果
AA BB CC
E0 S0 S0 S1 S0 E0 XX
Network
is unreachable
Network
is unreachable
Network
is unreachable
一个完整的方案
DD
BBEE
AA
XX CC
触发更新
路由中毒
最大度量值
触发更新
路由中毒
最大度量值
一个完整的方案
DD
BBEE
AA
CCXX
Holddown
Holddown
Holddown
一个完整的方案
DD
BBEE
AA
CCXX
Holddown
Holddown
Holddown
Poison Reverse
Poison Reverse
Poison Reverse
Poison Reverse
一个完整的方案
DD
BBEE
AA
CCXX
Holddown
Holddown
Holddown
Packet for
Network
Packet for
Network
在Hold-down有效期内,路由器
A, D, E 仍然企图向网络
转发数据包。B会丢弃。
数据包被丢弃
一个完整的方案
DD
BBEE
AA
CC
解除Hold-down
解除Hold-down
解除Hold-down
触发更新
如果该网段在Hold-down时间里恢
复,B会向A和D再向C发送触发更
新数据包,通知他们已经恢
复。
Link up!Link up!
XX
XX
XX
触发更新
触发更新
触发更新
本章内容
距离矢量路由协议基础
距离矢量路由协议防止环路的六种方法
配置RIP路由协议
RIP的特点: 一 依靠跳数来决定次优路由,16跳就
不可达.
二 管理距离是120
三 平均30秒更新路由表一次
(会有随机变量)
四 会产生环路
五 有两个版本
六 V1不支持VLSM,广播更新
七 V2支持VLSM,组播更新
八 支持协议认证
RIP的特点
100Mbps
100Mbps
RIP 的负载均衡
•Maximum 6 paths (default = 4), 在代价最小的等代价路径之间进行负
载均衡,RIP不支持 非等价负载均衡。
100Mbps
100Mbps
• 激活RIP协议
Router(config)#router rip
Router(config-router)#network network-number
RIP 配 置
•选择所能到达的网络
•必须是有效的网络即A、B、C类网络号,不包括子网号和子
网掩码
RIP 配置举例
S2E0 S3
S2 S3
A B C
E0
查看RIP信息
RouterA#sh ip protocols
Routing Protocol is "rip"
Sending updates every 30 seconds, next due in 0 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Outgoing update filter list for all interfaces is
Incoming update filter list for all interfaces is
Redistributing: rip
Default version control: send version 1, receive any version
Interface Send Recv Key-chain
Ethernet0 1 1 2
Serial2 1 1 2
Routing for Networks:
Routing Information Sources:
Gateway Distance Last Update
120 00:00:10
Distance: (default is 120)
S2E0 S3
S2 S3
A B C
E0
查看路由表
S2E0 S3
S2 S3
A B C
E0
RouterA#sh ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR
T - traffic engineered route
Gateway of last resort is not set
is subnetted, 1 subnets
C is directly connected, Ethernet0
is subnetted, 2 subnets
R [120/1] via , 00:00:07, Serial2
C is directly connected, Serial2
R [120/2] via , 00:00:07, Serial2
本章小结
完成本章的学习后,你应该能够掌握:
描述距离矢量的路由协议的工作原理以及防环的
机制
在Cisco路由器上设置RIP路由协议
利用show ip route、show ip protocols 和其他的调
试命查看路由信息