动态路由 IGRP
IGRP,内部网关路由协议(Interior Gateway Routing Protocol),是由Cisco公司在八十年代中期设计。内部网关路由协议使用复合度量,复合度量包括下列五个方面:
1、带宽(Bandwidth)
2、延迟(Delay)
3、负荷(load)
4、可靠性(Reliability)
5、最大传输单元(MTU)
IGRP的两个局限:
1、 IGRP是Cisco私有路由协议,不能在其他厂家的设备中使用。
2、 IGRP是一个有类距离向量路由协议,不能很好地扩展。
IGRP发送整个路由表的定期广播。 IGRP初始化时,类似于RIP,通过接口向广播地址发送路由请求。然后IGRP检查收到的更新,并周期性发送更新。
IGRP更新中认识三种路由:
1、内部(Interior) 路由:直接与路由器接口连接的网络。
2、系统(system)路由:在同一IGRP自治系统内部,其他邻居通知的路由。
3、外部(Exterior)路由:从不同自治系统学习的路由。
IGRP的度量
Bellman-Ford算法用下列方程计算路由的总度量。
Metric=[K1 ×带宽+(K2 ×带宽)/(256-负载)+K3 ×延迟] ×[K5/(可靠性+K4) ]默认情况下, K2、 K4、 K5取值为0, K1、 K3取值为1,计算公式简化为Metric=107/MinBW+∑Delay/10
从公式可以看出,如果带宽越小、延时越大,则度量值越大,路径越差。
K值可通过该语句修改,但如果相邻路由器的K值取值不同,两台路由器将不能交换路由信息。
Router(config-router)#metric weights tos k1 k2 k3 k4 k5
Router(config-router)#default-metric bandwidth delay reliability load
mtu
IGRP默认的最大跳数为100,最大可改为255
Router(config-router)#metric maximum-hops
IGRP的默认管理距离为100
Router(config-router)#distance
IGRP计时器(Timers)
Router(config-router)#TIMERS BASIC update invalid holddown flush
默认的计时器为 90 270 280 630
要关闭保持定时器,在路由器配置方式中输入下列命令:
Router(config-router)#no metric holddown
负载均衡(Load Balancing)
负载均衡就是路由器采用多条路径发送同一目标的数据,提高发送速度,减少在单一路径上的流量。要改变负荷平衡IGRP的路径数,在路由器配置方式中输入下列命令:
Router(config-router)#maximum-paths
和RIP类似, IGRP和EIGRP默认可在4条路径上做负载均衡,最大可修改为6条。
但和RIP不同, IGRP与EIGRP可以在不等值路径上做负载均衡,而其他路由协议只能在等值路径上负载均衡。
如图配置网络,以RA为例,首先开启debug:
Ra#debug ip igrp events
Ra(config)#router igrp 10
Ra(config-router)#network 10.0.0.0
01:29:42: IGRP: broadcasting request on Ethernet0
01:29:42: IGRP: sending update to 255.255.255.255 via Serial0 (10.0.0.1)
类似RIP, IGPR被启用后通过接口以广播地址向邻居发送路由请求
01:29:42: IGRP: Update contains 0 interior, 0 system, and 0 exterior
routes.
IGRP的三种路由:内部路由、系统路由、外部路由
Ra#show ip route igrp
I 20.0.0.0/8 [100/10476] via 10.0.0.2, 00:00:02, Serial0
I 通过IGRP学习到的路由
20.0.0.0/8 远程网络
100 IGRP的管理距离
10476 到达20.0.0.0网络的度量值,计算如下:
10476=107/1544+20000*2/10
1544为到达目标网络的链路的带宽
20000为Serial接口的延时,经过两个Serial接口
10.0.0.2 下一跳地址
00:00:02 学习到的时间或上一次更新是在2秒之前
修改网络拓朴如图,重新查看三台路由器的路由表,如下:
Ra: I 20.0.0.0/8 [100/8576] via 30.0.0.2, 00:00:01, Ethernet0
Rb: I 30.0.0.0/8 [100/8576] via 20.0.0.2, 00:00:03, Serial1
[100/8576] via 10.0.0.1, 00:00:03, Serial0
Rc#: I 10.0.0.0/8 [100/8576] via 30.0.0.1, 00:00:02, Ethernet0
注意到Ra到达20.0.0.0网络的路径发生了变化,改由Ethernet0接口发
送。
原因:
Ra到达20.0.0.0/8网络的路由
原来的度量值=107/1544+2*2000(两个串口延时) =10476
新的度量值=107/1544+2000(串口延时) +100(以太口延时) =8576
由于延时发生了改变,引起度量值的变化, Ra发现了一条度量值更小
的更好的路径。
而Rb发现从Serial 0和Serial 1接口到达30.0.0.0网络的两条路径的度量
值相等,在路由表中出现两条等值路径。
Rc同Ra。
Ra#show ip protocols
Routing Protocol is "igrp 10"
Sending updates every 90 seconds, next due in 19 seconds //计时器
Invalid after 270 seconds, hold down 280, flushed after 630
…
IGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0 //K值
IGRP maximum hopcount 100 //默认最大跳数为100跳
IGRP maximum metric variance 1 //变化值默认为1
Redistributing: igrp 10 //重分布
Maximum path: 4 //默认最大路径数为4
Routing for Networks: //路由了哪些网络
20.0.0.0
30.0.0.0
Routing Information Sources:
Gateway Distance Last Update
20.0.0.1 100 00:01:08
30.0.0.1 100 00:00:00
Distance: (default is 100) //管理距离默认为100
Variance取值范围从1到128,默认为1。根据Variance取值的不同,可
以决定有哪些路径能够进入到路由表。
当前从Ra出发,经E0到达20/8网络的度量值为8576;经S0到达20/8网
络的度量值为10476。
由于默认情况下Variance=1,此时只有具有最小度量值的路由表项才
能进入到路由表,所以在Ra和Rc的路由表中只能查看到一条最好的路
径。而Rb的两条路径的度量值相等,都是最小度量,所以路由表中有
两条路径。
最小度量值≤ 可能进入到路由表的路径度量值 ≤最小度量值*Variance
此时,若修改Variance值取2,则度量值在8576到17152(即8576×2)之
间的,均可进入到路由表。
Ra(config-router)#variance 2
Ra#show ip route igrp
I 20.0.0.0/8 [100/8576] via 30.0.0.2, 00:00:03, Ethernet0
[100/10476] via 20.0.0.2, 00:00:03, Serial1
发现Ra此时的路由表中,到达20网络有两条不等值路径,可以利用这两
条路径实现负载均衡。
领取专属 10元无门槛券
私享最新 技术干货