计网第四章(网络层)(七)

news2024/9/20 18:53:36

一、路由信息协议RIP

路由信息协议RIP是互联网中最早使用的协议,他是基于距离向量的。

1.距离向量:

RIP要求自治系统AS内的每一个路由器都要维护从它自己到AS内其他每一个网络距离的记录,这是一组距离,称为“距离向量D-V”。

2.跳数:

RIP使用跳数作为度量来衡量到目的网络的距离。

如果是直连网络,那么距离就等于1。

如果是非直连网络,那么每经过一个路由器距离就加1。

RIP协议中一条路径最多只能包含15个路由器,距离等于16时就相当于不可达。所以,RIP协议只适合用于小型网络。

也就是说距离最小为1,最大为15。

比如:

图中对于R1路由器,要到达目的网络192.168.1.0/24和目的网络10.0.0.0/30,因为都是直连网络,所以距离都等于1;要到达目的网络10.0.1.0/30,因为是非直连网络,中间经过路由器R2,所以在1的基础上加1,所以距离为2,同样地,到达目的地网络192.168.2.0/24的距离为3。

注意:有些路由器的RIP将路由器到直连网络的距离定为0。 

3.基本工作原理:

RIP认为到达目的网络的路径中通过的路由器数量最少的路径最好,即距离最小。

如果到达同一目的网络有多条距离相等的路由时,就会进行等价负载均衡,即将通信量均衡地分布到多条等价的路由上。

三个要点:

RIP协议的三个要点是和谁交换信息,交换什么信息以及何时交换信息。

和谁交换信息:RIP协议中,仅和相邻的路由器交换信息。

例如上图中,路由器R1和R2会交换信息,同时R2还会和R3交换信息,但是R1和R3不是相邻路由器,所以不会交换信息。

交换什么信息:交换自己的路由表。

何时交换信息:周期性交换信息(如:每隔30秒发送一次RIP更新报文)。

综上所述,RIP协议中仅相邻的路由器周期性交换并更新自己的路由表。

4.基本工作过程:

(1)初始状态:

我们之前有提到过,在路由器刚开始工作时只知道与自己直连的网络,所以路由器只知道自己到直连网络的距离为1。

(2)交换并更新信息 

图中,对于路由器R1,路由器R2和路由器R3都为它的相邻路由器;

对于路由器R2,路由器R1和路由器R3和路由器R4都为它的相邻路由器;

对于路由器R3,路由器R1和路由器R2和路由器R4都为它的相邻路由器;

对于路由器R4,路由器R2和路由器R3都为它的相邻路由器。

根据RIP协议的要点可以得出,每个路由器会若干次交换并更新自己的路由信息。

(3)收敛

在若干次交换和更新后,每个路由器都可以知道在本AS内到达各网络的最短距离和下一跳地址。这就是收敛。

5.更新规则

前面提到路由器会交换并更新自己的路由信息,那么具体是怎么交换和更新的?

A、B各自的路由表如图,假设现在路由器A的RIP更新报文的发送周期到了,则路由器A将自己路由表的信息封装到更新报文中发送给路由器B。

 

图中我们故意将A的路由表的下一跳全部写为问号,这是因为A将自己的路由表信息给B时会将表中的下一跳都改为A,也就是说B无需关心A路由表里的这些内容。 

B接收到的A的路由表如图:其中距离在原有基础上都加1,因为这个过程相当于通过了路由器A,下一跳统一变为A。

随后B根据收到的改造后的A的路由表(后面简称为A路由表,但要注意这是改造后的A路由表)更新自己的信息。如图:

首先我们可以看到在B的路由表里面没有关于到达N1网络的条目,现在发现可以通过路由器A到达N1网络,于是将该条目加进去。这条规则叫“发现新的网络直接添加” 。

其次,我们在B的路由表的下一跳里面发现了有关于A的下一跳,即到达N7网络的条目,距离为6。在传来的A的路由表里面也有关于N7的条目,但是距离变为了7,于是将R2的路由表中的该条目的距离改为7。这条规则叫“到达目的网络,相同的下一跳,更新为最新信息” 。

现在A的路由条目还剩N3、N5、N9三条,很明显可以看到在B的路由表里里面,它们的下一跳都不是A。首先关于N3的条目,可以看到N3条目在B的路由表里面的距离为9,但是在A的路由表里面距离为6;在工作原理部分,我们有说RIP协议认为好的路由就是到达同一个目的网络通过的路由器数量最少的路径,所以应该把B路由表里的N3条目距离更新为6,且下一跳更新为A。这条规则叫“到达目的网络,不同的下一跳,新路由有优势,更新” 。

N5条目在两个路由表里虽然下一跳不同,但是距离都为5,在基本原理部分有提到过,有到达同一目的网络多条距离相等的路由时进行等价负载均衡。于是将A中关于N5网络的条目直接添加到B中。这条规则叫“到达目的网络,不同的下一跳,等价负载均衡” 。

最后,N9条目在A路由表里面的距离为6,但是在B路由表里面为5,秉持着好的路由原则,B路由表关于该条目的信息不发生变化。这条规则叫“到达目的网络,不同的下一跳,新路由有劣势,不更新” 。于是,最终的B更新后的路由表就如图所示:

总结RIP协议中,一个路由器A给相邻的路由器B发送装有自己路由表信息的RIP更新报文,路由器B会接受到改造后的路由表A,即距离全部加1,并且下一跳全部变为A。

更新可以先从到达的目的网络入手,如果发现新网络直接进行添加;如果是B表中已有的网络,则从下一跳入手,下一跳相同就进行更新;下一跳不同就从距离入手,谁距离短就用谁,距离一样就进行添加。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/948496.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TypeScript的魔法:如何轻松提升JavaScript项目的稳定性

引言:JavaScript的灵活性与挑战 JavaScript,作为Web开发的核心语言,因其灵活性和广泛的应用受到开发者的喜爱。然而,这种灵活性也带来了挑战,尤其是在大型项目中,代码的维护和错误的追踪变得越来越困难。 …

pdf转换成图片免费软件用哪个?pdf转换成图片就用它

随着技术的发展,现在企业办公运用到的电子文档各种各样,我们日常需要掌握的技能越来越高要求,其中pdf和图片是我们经常接触的文件格式之一,而且这两个文件格式我们会经常将它们进行转换,那么pdf转换成图片怎么操作呢?…

JavaScript 复习

第三章 JavaScript 1 JavaScript的起源 在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。Netscape在最初将其脚本语言命名为LiveScript,因为Netscape与Sun合作,网景公司管理层希望蹭Java的热度…

详解Vue 3 的 Composition API

Vue 3 的 Composition API 是一种新的组合式 API 风格,它可以更好地组织和复用组件逻辑。相比于 Vue 2 的 Options API,Composition API 提供了更灵活和可组合的方式来编写组件。 下面是 Composition API 的一些特点和优势: 函数式组件&…

docker与phpstudy两种方式部署wordpress 并 开启伪静态

实际测试,可能是docker内存限制的缘故,docker部署的会比较卡 下载 wordpress phpstudy phpstudy中伪静态配置 伪静态 正常访问 WordPress 文章页的 URL 地址为 http://asa/index.php?p123。变成伪静态就是http://asa/123.html 。 伪静态是相对真实静…

IDEA2021之后没有Show in Explorer,无法直接打开文件夹,被迁移了

2020版本和更早的版本 目录右键之后,可以出现Show in Explorer。 2021版本和更新的版本 快捷键直接到文件的地址 参考文档

CRM线索公海如何管理?

对于销售和CRM客户管理而言,公海线索的管理极为重要,今天本文将告诉大家: 1、如何合理设置公海线索规则和流程?2、手把手教你完成公海管理系统的搭建 关于CRM的公海管理问题,需要根据企业的具体情况和销售流程来设置…

【网络BSP开发经验】Linux gmac驱动调试

文章目录 Linux网络设备驱动简介Linux网卡驱动网络协议接口层网络设备接口层设备驱动功能层网络设备与媒介层linux驱动数据结构linux驱动注册过程网络设备驱动的注册与注销linux驱动数据包收发流程 Linux PHY驱动MDIO接口PHY简介PHY关联过程PHY状态机对端MAC情况(接…

多个pdf怎么合并成一个pdf?几个超实用方法分享

多个pdf怎么合并成一个pdf?合并多个PDF文件可以使得它们更容易管理和分享。这特别是那些需要以PDF格式与其他人共享文件的人来说是非常有用的。例如,如果你需要将多个文档或报告打包为一个文件并发送给客户或同事,将它们合并为一个PDF文件是非…

14、监测数据采集物联网应用开发步骤(10)

监测数据采集物联网应用开发步骤(9.2) Modbus rtu协议开发 本章节在《监测数据采集物联网应用开发步骤(7)》基础上实现可参考《...开发步骤(7)》调试工具,本章节代码需要调用modbus_tk组件,阅读本章节前建议baidu熟悉modbus rtu协议内容 组件安装modb…

【同步异步可并发日志系统】设计及实现

1. 项⽬介绍2. 开发环境3. 项目核⼼技术4. 环境搭建5. ⽇志系统介绍5.1 为什么需要⽇志系统5.2⽇志系统技术实现5.2.1 同步写⽇志5.2.2 异步写⽇志 6. ⽇志系统框架设计7. 代码设计7.1 实⽤类设计7.2 ⽇志等级类设计7.3 ⽇志消息类设计7.4 ⽇志格式化输出设计思想7.4.1FormatIt…

OpenLayers7官方文档翻译,OpenLayers7中文文档,OpenLayers快速入门

快速入门 这个入门文档向您展示如何放一张地图在web网页上。 开发设置使用 NodeJS(至少需要Nodejs 14 或更高版本),并要求安装 git。 设置新项目 开始使用OpenLayers构建项目的最简单方法是运行:npm create ol-app npm create…

中大许少辉博士后畅销榜《乡村振兴战略下传统村落文化旅游设计》自由营 ​​​

中大许少辉博士后畅销榜《乡村振兴战略下传统村落文化旅游设计》自由营 ​​​

Visual Studio(2022)生成链接过程的.map映射文件以及.map映射文件的内容说明

微软的官方说明 /MAP(生成映射文件) | Microsoft Learn 设置步骤 1. 右键项目属性, 连接器 -> 常规 -> 启用增量链接,设置为否。如下图: 2. 连接器 -> 调试 生成调试信息 设置为 生成调试信息 (/DEBUG) 生成程序数据库…

这一天,中国企业一同吹响数字化集结号

买一双袜子平均只要3天就可以收到货。 点一份外卖最快20分钟就可以送达。 消费互联网十年轰轰烈烈的发展,带来了全国商品的大流通,极大丰富了我们的物质消费生活,也为传统线下商家带来成百上千倍的增长。 消费互联网的流量鼎盛期过后&#xf…

无入侵接口文档smart-doc

Smart-doc优点&#xff1a; 1.非侵入式生成接口文档 2.减少接口文档的手动更新麻烦&保证了接口文档和代码的一致 3.随时可生成最新的接口文档 4.保持团队代码风格一致:smart-doc支持javadoc&#xff0c;必须按照这个才能生成有注释的接口文档 最终效果 1.导入依赖 <pl…

ssm+vue人力资源管理系统源码和论文

ssmvue人力资源管理系统源码和论文098 开发工具&#xff1a;idea 数据库mysql5.7 数据库链接工具&#xff1a;navcat,小海豚等 技术&#xff1a;ssm 系统目标 本系统主要目标是对大中型公司所设计&#xff0c;是对人力资源的科学化的管理&#xff0c;使信息存储达到精确…

2024年java面试(四)--spring篇

文章目录 1.BeanFactory 和 FactoryBean 的区别2.BeanFactory和ApplicationContext有什么区别?3.RequestBody、RequestParam、ResponseBody4.cookie和session的区别5.Servlet的生命周期6.Jsp和Servlet的区别7.SpringMvc执行流程8.RequestMapping是怎么使用9.如果一个接口有多个…

Android 蓝牙开发( 二 )

前言 上一篇文章给大家分享了Android蓝牙的基础知识和基础用法&#xff0c;不过上一篇都是一些零散碎片化的程序&#xff0c;这一篇给大家分享Android蓝牙开发实战项目的初步使用 效果演示 : Android蓝牙搜索&#xff0c;配对&#xff0c;连接&#xff0c;通信 Android蓝牙实…