当前位置: 首页 > article >正文

计算机网络之路由表更新

1.解题思路

对新接收到的路由表进行更新,全部"距离"+1,且"下一跳路由器"都写成发送方路由器的名称。

开始对比新表和原来的路由表

1.看目的网络

如果是新的目的网络,则直接把对应的各项信息填入表中;如果是相同的目的网络,继续看下一跳路由器。

2.看下一跳路由器

如果下一跳路由器相同,就更新(用新表的)。如果下一跳路由器不同,继续看距离。

3.看距离

如果距离不同,谁距离短,选谁来更新;如果距离相同,不更新。

2.实例解析

B的路由表

目的网络

距离

下一跳路由器

N1

7

A

N2

2

C

N6

8

F

N8

4

E

N9

4

F

B收到C发来的路由信息

目的网络

距离

N2

4

N3

8

N6

4

N8

3

N9

5

B收到C发来的路由信息(新表,对新接收到的路由表进行更新,全部"距离"+1,且"下一跳路由器"都写成发送方路由器的名称)

目的网络

距离

下一跳路由器

N2

5

C

N3

9

C

N6

5

C

N8

4

C

N9

6

C

 路由器B更新后的路由表

目的网络

距离

下一跳路由器

解释说明

N1

7

A

无新信息,不改变

N2

5

C

相同的下一跳,更新

N3

9

C

新的目的网络,添加进来

N6

5

C

不同的下一跳,距离更短,更新

N8

4

E

不同的下一跳,距离一样,不改变

N9

4

F

不同的下一跳,距离更大,不改变

3.进阶训练

在假定网络中的路由器R1的路由表有如图1所示的项目,图1中三列分别表示目的网络、距离和下一跳路由器。现在R1收到从R2发来的路由信息如图2所示,图2中两列分别表示目的网络和距离。试求出路由器R1更新后的路由表(详细说明每一个步骤)。

R1的原路由表

目的网络

距离

下一跳

10.0.0.0

0

直接

30.0.0.0

7

R7

40.0.0.0

3

R2

45.0.0.0

4

R8

180.0.0.0

5

R2

190.0.0.0

10

R5

R2的广播报文

目的网络

距离

10.0.0.0

4

30.0.0.0

4

40.0.0.0

2

41.0.0.0

3

180.0.0.0

5

R2更新后的路由表

目的网络

距离

下一跳

10.0.0.0

5

R2

30.0.0.0

5

R2

40.0.0.0

3

R2

41.0.0.0

4

R2

180.0.0.0

6

R2

R1更新后的路由表

目的网络

距离

下一跳

解释说明

10.0.0.0

0

直接

不变

30.0.0.0

5

R2

下一跳不同,选距离短的

40.0.0.0

3

R2

下一跳相同,更新

41.0.0.0

4

R2

添加新的

45.0.0.0

4

R8

不变

180.0.0.0

6

R2

下一跳相同,无条件更新

190.0.0.0

10

R5

不变

 

在距离 - 向量路由协议(如 RIP )中,“下一跳相同,即使距离更长,也无条件更新” 主要基于以下原因:

1.路由信息的可靠性

当路由器从某个邻居(下一跳相同意味着从同一邻居获取信息 )收到路由更新时,认为该邻居提供的是它所掌握的最新、最准确的路由信息。邻居路由器基于自身的网络连接情况和计算得出距离值,即使新距离变长,也表示其网络状态发生了变化,可能存在链路开销调整等情况。接收路由器没有理由怀疑该邻居提供信息的可靠性,所以选择更新。

2.避免路由环路

若不进行更新,可能会造成路由不一致。例如,若网络中某条链路出现故障,导致通过某一下一跳的路径距离变长。如果接收路由器不接受该更新,仍然使用旧的距离信息,就可能继续向该路径转发数据包。而发送更新的邻居路由器已经更新了距离,不再向这条不可达路径转发。这样就可能导致数据包在网络中兜圈子,形成路由环路。更新路由表,能让所有路由器对网络拓扑的认知保持一致,减少路由环路出现的可能性。

4.真题实践

 

求R2的路由表,采用路由聚合技术 

首先对路由器R1的两个子网进行聚合网络

最后为153.14.5.0/24

接着对路由器R3的两个子网进行聚合网络

最后为194.17.20.0/23

R2的路由表

目的网络

下一跳

接口

153.14.5.0/24

153.14.3.2

S0

194.17.20.0/23

194.17.24.2

S1

194.17.20.128/25

直接

E0

 

http://www.lryc.cn/news/2395537.html

相关文章:

  • 万兴PDF手机版
  • Qt -使用OpenCV得到SDF
  • Python 中Vector类的格式化实现,重点拆解其超球面坐标系的设计精髓
  • DDR5 ECC详细原理介绍与基于协议讲解
  • Linux系统之gettext详解
  • 基于Qt封装数据库基本增删改查操作,支持多线程,并实现SQLite数据库单例访问
  • EC800X QuecDuino开发板介绍
  • ARM P15协处理器指令详解:架构、编程与应用实践
  • PHP轻量级聊天室源码(源码下载)
  • MySQL数据表添加字段(三种方式)
  • leetcode hot100刷题日记——33.二叉树的层序遍历
  • 2、PyTorch基础教程:从张量到神经网络训练
  • 《数据结构初阶》【番外篇:快速排序的前世今生】
  • 【笔记】基于 MSYS2(MINGW64)的 Poetry 虚拟环境创建指南
  • PINNs案例——二维磁场计算
  • Hive SQL 中 BY 系列关键字全解析:从排序、分发到分组的核心用法
  • 数据类型检测有哪些方式?
  • 算法打开13天
  • Freeqwq 世界首个免费无限制 分布式 AI 算力平台 https://qwq.aigpu.cn/
  • 广告拦截器:全方位拦截,畅享无广告体验
  • .net Avalonia应用程序生命周期
  • 主数据编码体系全景解析:从基础到高级的编码策略全指南
  • Selenium操作指南(全)
  • Go语言中的数据类型转换
  • 35、请求处理-【源码分析】-自定义参数绑定原理
  • 智绅科技——科技赋能健康养老,构建智慧晚年新生态
  • STM32通过KEIL pack包轻松移植LVGL,并学会使用GUI guider
  • day43 python Grad-CAM
  • 在 Ubuntu 上挂载其他硬盘的步骤
  • SQL的查询优化