-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class=Apple-style-span>RIP协议
RIP协议简介
RIP 是Routing Information Protocol(路由信息协议)的简称,是一种基于D-V算法的简单动态路由协议,主要用于小型网络。它通过UDP交换路由信息,每隔30秒向外发送一 次更新报文(将自己所有的路由表都发送给邻居)。如果路由器经过180秒没有收到来自对方端的路由更新报文,则将所有来自此路由器的路由信息标志为不可 达,如果在其后120 秒内仍未收到更新报文,就将该条路由从路由表中删除。
RIP使用跳数来衡量到达目的网络的距离,路由器到与它直接相连网络的跳数为0,通过一个路由器可达网络的跳数为1,其余依此类推。为限制收敛时间,RIP规定metric最大跳数为15,高于此的都不可达,这是限制RIP不能用于大型网络的主要因素。
RIP协议处于UDP协议的上层,RIP所接收的路由信息都封装在UDP的数据报中,RIP在520号端口上接收来自远程路由器的路由修改信息,并对本地的路由表做相应地修改,同时通知其他路由器。通过这种方式,达到全局路由的同步。
RIP协议的实现
系统初始化
1.RIP启动时的初始路由表仅包含本路由器的一些直连接口路由。
2.RIP协议启动后向各接口广播一个Request报文。
3.邻居路由器的RIP协议从某接口收到Request报文后,根据自己的路由表,形成Response报文向该接口对应的网络广播。
4.RIP接收邻居路由器回复的包含邻居路由器路由表的Response报文,形成自己的路由表。
路由更新
RIP协议以30秒为周期用Response报文广播自己的路由表。
收到邻居发送而来的Response报文后,RIP协议计算报文中路由项的度量值,比较其与本地路由表路由项度量值的差别,更新自己的路由表。
报文中路由项度量值的计算公式为:metric=MIN(metric + cost, 16)。其中metric为报文中携带的度量值信息,cost为接收报文的网络的度量值开销,缺省为 1(1 跳),16代表不可达。
RIP配置(以Cisco的路由器为例)
Router(config)#router rip—启动RIP路由协议
AH_CZ_TC_2500(config-router)# network [network range | all]—指定工作网段,RIP只在指定网段上的接口工作;对于不在指定网段上的接口,RIP既不在它上面接收和发送路由,也不将它的接口路由转发出去。
AH_CZ_TC_2500(config-router)# version  [1|2—指定RIP的版本
AH_CZ_TC_2500(config-router)# maximum-paths [1-6]—指定等价路由的最多使用条数
AH_CZ_TC_2500(config-router)# passive-interface e0—可以使eth0口只接收RIP分组,但不发送rip分组,这个命令只有在需要的时候才配置。
AH_CZ_TC_2500(config-router)#int s0—进入单独的接口进行配置
AH_CZ_TC_2500(config-if)#ip rip [send|receive] version [1|2]—可以指定某个接口做发送或接口功能,并且执行哪一个版本的RIP
AH_CZ_TC_2500(config-if)#ip split-horizon—可以设置是否启用水平分割
由于此处命令太多,不一一例举,具体命令格式可以参考Cisco网站或其他命令参考手册。

注意:RIP-1采用广播形式发送报文;RIP-2有两种传送方式,广播方式和多播方式,缺省将采用多播发送报文。多播发送报文的好处是在同一网 络中那些未运行RIP的主机可以避免接收RIP的广播报文。当接口运行RIP-1时,只接收和发送RIP-1与RIP-2广播报文,不接收RIP-2多播 报文;当接口运行在RIP-2多播方式时,只接收和发送RIP-2多播报文,不接收RIP-1与RIP-2广播报文。在缺省情况下,一个接口既可接收 RIP更新报文,也可发送RIP更新报文。
IGRP协议
由 于RIP协议Metric最大只能是15,严重制约了RIP协议不能在中、大型的网络上使用,于是Cisco推出了IGRP(Interior Gateway Routing Protocol)协议。这是一种Cisco的私有协议,目前只能在Cisco的路由器上使用。该协议的路由算法也是D-V算法,但是该协议影响路由选择 的不再是单纯RIP中的跳数,带宽、网络时延、负载、可靠性都被用于路由选择,可以为每一种Metric设置权值。IGRP不仅支持等值路由的带宽均衡或 主备用,而且支持不等值带宽的负载均衡(负载百分比均衡),例如如果一条线路是另外一条线路是四倍,则它所承载的通信数据量也是另外一条线路的四倍。该协 议允许跳数最大可达255,这样就能在中等或者大型网络上使用。
IGRP的Metrics计算方法
在IGRP中Metrics是由时延(Delay)、带宽(BandWidth,简称BW)、负载(Load)和可靠性(Reliability)四个要素组成。
在 IGRP中,前两个要素都是单独用一个24bit的字段来存储,后两个要素是用8bit的字段来存储。带宽单位是Kbps(IGRP中的 BW=10000000/实际带宽),如果实际带宽为10M,则IGRP中的BW=10000000/10240;时延的单位是微秒,IGRP中的时延 DLY=实际时延/10,0xFFFFFF为不可达,这个值大约为167.8秒,因此IGRP支持的最大时延约为167秒;负载和可靠性因为用8bit字 段来存储,所以最大值都是0xFF,实际值=该值/255这点也不难理解了。
IGRP的Metric完整公式为:
Metric=[k1*BW( IGRP)+k2*BW(IGRP)/(256-load)+k3*DLY(IGRP)]*[k5/(RELY+k4)]
其 中BW是取到目标地址所经出口的最小,DLY(IGRP)是沿途的DLY(IGRP)的总和。k1,k2,k3,k4和k5 是可配置的加权(weight)值,默认这些值是k1=k3=1,k2=k4=k5=0,这就是为什么默认也只有带宽(BW)和延时(DLY)两个要素起 作用的原因,可以通过下面的命令进行修改:
metric weights {tos k1 k2 k3 k4 k5}
tos 参数目前没有使用,设置为0。
如果k1到k5使用默认值,那么公式简化为:
metric=k1*BW(IGRP)+k3*DLY(IGRP)
IGRP也支持水平分割、路由中毒、触发更新等预防路由环路的机制。

路由更新机制
由于RIP更新太快(默认30秒),而且是将路由表所有内容都全部广播或组播发出去,严 重影响网络性能,IGRP增大了更新周期,在缺省情况下,IGRP每90秒发送一次路由信息广播,如果在3个周期内没有收到该路由的路由更新,则设置该路 由为不可达,在7个周期内没收到,则从路由表中删除该路由。
负载均衡
和RIP一样,IGRP也支持最多六条用于负载均衡的等价路由,而且IGRP还扩展了负载均衡的概念。比RIP等价路由更先进的是,它还支持多条不等价路由,能够对那些在多条路径上流动、而对各自目的地又有不同度量的数据流做负载均衡,这样给负载均衡提供了更多的灵活性。
IGRP 设置方法稍微有点复杂。首先根据上面的公式计算各自路由的Metric,再将求出的各Metric比较倍数,然后通过variance命令来配置。例如如 果A网络到B网络最优路由的Metric值为1000,系统中分别还有2000、3000、4000、5000的四条路由,这时想使得Metric为 2000和3000的也能同时被负载均衡所使用,则用命令variance 3来设置,表示在最优路由Metric的3倍之内的其他路由都能同时被使用,通过设置这个参数来避免质量极差的路由参与负载均衡,不仅不能达到效果,而且 还会占用CPU资源。
简单配置
router igrp [Autonomous system number]—Autonomous system number为自治号,只有在相同Autonomous system number内的路由器才相互交换路由信息。
Variance 5—在最优路由Metric值5倍之内的其他路由都能被同时使用,以做负载均衡。
Network—[network range]指定工作网段,IGRP只在指定网段的接口工作;对于不在指定网段上的接口,RIP既不在它上面接收和发送路由,也不将它的接口路由转发出去。
AH_CZ_TC_2500(config-router)# passive-interface eth0—将接口eth 0设置为被动接口。在IGRP协议中,如果将接口设置为被动的,则该接口会接收更新分组,但是不会发布任何更新分组。这个命令只有在需要的时候才这样设 置。
AH_CZ_TC_2500(config-router)# default-metric 100 2000 255 1 1500—设置IGRP默认的Metric值
AH_CZ_TC_2500(config-router)# metric weights 0 1 1 1 1 1—设置k1到k2的权值。
简单配置这样就可以了,更复杂的参考Cisco网站内容。
以 上两个协议是距离矢量路由协议的典范,也是路由协议中最简单的两个。RIP协议出现最早,最大跳数只支持15跳,只适合小型网络;IGRP是Cisco公 司为了弥补RIP的缺陷而开发设计,适合更大的网络,最大支持255跳,为了减轻网络的负担,将默认的更新周期从RIP的30秒改为90秒,但是这也造成 了网络拓扑变化时收敛速度变迟缓了。RIP和IGRP都支持最多达6条等价路由,IGRP还支持非等价路由,增加了负载均衡的灵活性。IGRP为 Cisco公司所私有,目前只能在Cisco的路由器上使用。

转载于:https://blog.51cto.com/showings/821299

盘点路由协议之RIP协议及IGRP协议相关推荐

  1. [网络工程师]-路由协议-IGRP协议

    内部网关路由协议(Interior Gateway Routing Protocol,IGRP)是Cisco公司发布的路由选择协议,它的目标是:(1)大型互联网络的稳定.最佳路由.不产生路由循环(2) ...

  2. 路由协议重分发之RIP协议和EIGEP协议

    在现实的生活中我们配置路由器要用到不同的路由协议,如果这样的话,总不能我们配置什么协议就要求对方也配置什么协议吧!显然很不现实,这个时候我们就要想办法让两种不同的协议之间能够实现正常的通讯.今天我们就 ...

  3. 什么是rip协议其优缺点_南京课工场IT培训:常见动态路由协议之———RIP动态路由实验...

    动态路由简述: 1.动态路由是与静态路由相对的一个概念,指路由器能够根据路由器之间的交换的特定路由信息自动地建立自己的路由表,并且能够根据链路和节点的变化适时地进行自动调整 2.当网络中节点或节点间的 ...

  4. 【学习笔记】路由算法与路由协议:RIP协议与距离向量算法、OSPF协议与链路状态算法、BGP协议

    文章目录 一. 路由算法与路由协议概述 ① 路由算法的分类 ② 分层次的路由选择协议 二. RIP协议和距离向量算法 ① RIP协议定义 ② RIP协议:交换对象.交换周期.交换内容 ③ 距离向量算法 ...

  5. linux 路由协议,路由协议之RIP协议

    路由协议之RIP协议 RIP协议简介: RIP协议的全称是一种内部网关协议(IGP),是一种动态路由选择,用于一个自治系统(AS)内的路由信息的传递.RIP协议是基于距离矢量算法(DistanceVe ...

  6. 理解IGRP协议-ielab

    IGRP (Interior Gateway Routing Protocol)是一种内部网关路由协议,它由Cisco公司八十年代中期设计.使用组合用户配置尺度,包括延迟.带宽.可靠性和负载.缺省情况 ...

  7. IELAB网络实验室 理解IGRP协议

    IGRP (Interior Gateway Routing Protocol)是一种内部网关路由协议,它由Cisco公司八十年代中期设计.使用组合用户配置尺度,包括延迟.带宽.可靠性和负载.缺省情况 ...

  8. 多路径路由算法选择(2)——回顾传统的动态路由协议(RIP、OSPF、BGP、IGRP、EIGRP、IS-IS)

    路由协议:用于路由器动态寻找网络最佳路径,保证所有路由器拥有相同的路由表,一般路由协议决定数据包在网络上的行走路径. 路由协议简单分为静态路由协议和动态路由协议. 静态路由协议简单说就是手工配置路由选 ...

  9. IP路由协议(RIP、IGRP、OSPF、IS-IS、BGP)

    文章目录 1.路由分类 2.RIP协议 1)RIP的工作原理 2)RIP路由表的更新过程 3)RIP路由表的更新原则 4)RIP的特性 5)RIP协议的版本 4.IGRP协议 1)IGRP路由表的更新 ...

最新文章

  1. ajax async:false不管用_js 网络请求框架 ajax和axios、fetch的区别
  2. 2008年10月热点问题!(Platform)
  3. java通过异常处理错误_java 通过异常处理错误
  4. STM32的I2C特性及架构
  5. HDU - 6156 Palindrome Function(数位dp)
  6. 程序员,你恐慌的到底是什么?
  7. Spring Data JPA 从入门到精通~JpaSpecificationExecutor的使用方法
  8. 65lbc184应用电路原理_75lbc184应用电路
  9. java程序设计是选修课_Java程序设计_中国大学 MOOC_章节考试选修课答案
  10. 2021-03-14Java大数据Week2
  11. Android 开发工具集合 - (Android Dev Tools)
  12. ubuntu 12.04 修改 grub 启动参数
  13. chrome腾讯视频网页版HTML5,谷歌浏览器无软件爬取腾讯视频源MP4视频
  14. jsp高校学科竞赛管理系统ssh
  15. 华为机试题202205
  16. 中信证券显示连接服务器,我的中信证券的交易软件真不好用
  17. 【HITB GSEC CTF 2017】1000levels
  18. 工科学生计算机二级报什么类别,学科门类(二级类)工学.doc
  19. 五分钟教你学会写产品需求文档(PRD)
  20. 数据库实验--存储过程实验

热门文章

  1. matlab 实现分行读取
  2. Vivado 随笔(3) 其他综合属性 dont_touch、fsm_encoding?
  3. 【 English 】与个人品质有关的英语词汇
  4. Kafka系列一之架构介绍和安装
  5. 在maven中引用github上的资源
  6. How to POST JSON data with Curl from Terminal/Commandline to Test Spring REST?
  7. Haproxy+Keepalived实现网站双主高可用-理论篇
  8. 在学习一门编程语言时要特别注意以下三个方面
  9. 【循序渐进学Python】1. Python基础知识
  10. linux 系统基础知识 - fdisk命令