网络:RIP协议

news/2025/2/6 9:45:08/

1. RIP协议原理介绍

        RIP是一种比较简单的内部网关协议(IGP协议),RIP基于距离矢量的贝尔曼-福特算法(Bellman - Ford)来计算到达目的网络的最佳路径。最初的RIP协议开发时间较早,所以在带宽、配置和管理方面的要求也较低。

        路由器运行RIP协议后,首先路由器发送更新请求(Request 报文),收到请求的路由器会发送自己的RIP路由进行响应(Response报文)。路由器在收到Requese报文后,会与自身的路由表做比较,将自身不存在的路由表添加到自己的路由表中。

        网络稳定后,路由器会周期性(周期为30s)发送路由更新信息。邻居路由器根据收到的路由信息刷新自己的路由表。

        RIP协议是一个应用层协议,RIP = UDP + 520端口。

2. RIP的版本

        目前一共三个版本:

        Version 1 不支持VLSM和CIDR,用广播传递RIP消息,且不支持认证。

        Version 2,支持VLSM和CIDR,支持认证,传送报文的时候携带掩码,用组播地址 224.0.0.9传递RIP消息。

        Version 1 2 华为默认是这个版本。混合版本。

        建议修改为Version 2版本。

3. RIP的开销

        即Cost值。RIP使用跳数作为度量值来衡量到达目的网络的距离。缺省情况下,直连网络的路由跳数为0。当路由器发送路由更新时,会把度量值加1。RIP规定超过15跳为网络不可达。当传到第15个路由器时,是可达。但当传到第16个路由器,则会丢弃,即第16跳不可达。不适用于大型网络。

        这种计算开销方式存在不合理,很有可能会绕过高速链路而走低速链路。

        跳数越少,越优先选择。是以跳数作为一个衡量值。
 

4. RIP当中计时器

        * 更新计时器(Update timer)30s

        在RIP启动之后,平均每30秒(实际上为25.5~30秒间的随机数时间,之所以这样也是为了错峰发送更新,以防止所有路由器同时发送路由更新造成太大流量)启用了RIP的接口会发送自己的除了被水平分割(split horizon)抑制的路由选择表的完整副本给所有相邻路由器的时间间隔,并且update的目标地址为255.255.255.255。

        * 失效计时器(invalid timer)180s

        如果180秒(默认值)后还未收到可刷新现有路由的更新,则将该路由的度量设置为16,路由表项将被标记为“x.x.x.x is possibly down”。在清除计时器超时以前,该路由仍将保留在路由表中。(此时RIP路由仍然用来转发数据包)。

        * 刷新计时器(flush timer)240s

        默认情况下,清除计时器设置为240秒,比无效计时器长60秒。当清除计时器超时后,该路由将从路由表中删除。

        * 抑制计时器(holddown timer)180s

        该计时器用于稳定路由信息,并有助于在拓扑结构根据新信息收敛的过程中防止路由环路。在某条路由被标记为不可达后,它处于抑制状态的时间必须足够长,以便拓扑结构中所有路由器能在此期间获知该不可达网络。默认情况下,抑制计时器设置为180秒。

5. RIP协议配置


http://www.ppmy.cn/news/1053510.html

相关文章

@RefreshScope静态变量注入

RefreshScope注解通常用于注入实例变量,而不是静态变量。由于静态变量与类直接关联,刷新操作无法直接影响它们。 如果你需要动态刷新静态变量的值,一种可行的方案是使用一个通过Value注解注入的实例变量,并在该实例变量的getter方…

Hutool工具包的工具类和方法整理

基础工具类: StrUtil/StringUtils -字符串工具类 判空:isEmpty/isNotEmpty/isAllBlank/isBlank/isNotBlank/isEmptyXXX/isEmptyXXX/isBlankXXX/isNullXXX/hasBlank/hasEmpty/ 转换:blankToXXX/nullToXXX/emptyIfNull/emptyToXXX/toCamelCase/toSymbolC…

15,左值和右值、左引用和右引用

左值和右值、左引用和右引用 左值和右值左引用和右引用 左值和右值 左值是可以被修改并多次引用的表达式或变量,而右值是一次性使用的临时值。 是以等号为判断,如下,a在等号左边是左值,b1在等号右边是右值 int a 0; int b 2;…

C++ vector模拟实现

建议将vector的模拟实现写在头文件中&#xff0c;测试使用部分写在.cpp文件中 vector是类模板&#xff0c;被封装在命名空间中 部分源码&#xff1a;&#xff08;删除某些内容后&#xff09; vector模拟实现的代码&#xff1a; #include<assert.h> namespace djx {tem…

第五讲:常见的BeanPostProcessor

常见的BeanPostProcessor 一、入门Demo二、添加BeanPostProcessor1. AutowiredAnnotationBeanPostProcessor2. CommonAnnotationBeanPostProcessor3. ConfigurationPropertiesBindingPostProcessor 前文我们简单讲了Bean的生命周期&#xff0c;以及生命周期的前后&#xff0c;本…

OpenLayers 瓦片图层放大显示

OpenLayers 瓦片图层放大显示 天地图的影像地图的显示层级最大是18级&#xff0c;超出18级时天地图的影像服务会返回超限的水印瓦片。 在特定的&#xff08;caodande&#xff09;需求场景下&#xff0c;需要将地图层级显示到18级以上&#xff0c;超出18级时仍然使用18级的瓦片进…

Chrome谷歌浏览器修改输入框自动填充样式

Chrome谷歌浏览器修改输入框自动填充样式 背景字体 背景 input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff inset !important; }字体 input:-internal-autofill-selected {-webkit-text-fill-color: #000 !important; }

MySQL高级篇——MySQL架构篇2(MySQL的数据目录)

目录 1 MySQL8的主要目录结构1.1 数据库文件的存放路径1.2 相关命令目录1.3 配置文件目录 2 数据库和文件系统的关系2.1 查看默认数据库2.2 数据库在文件系统中的表示2.3.1 InnoDB存储引擎模式2.3.2 MyISAM存储引擎模式 2.4 总结2.5 视图在文件系统中的表示2.6 其他的文件 1 My…