更新路由表

更新时间:2007年09月19日 10:22:02   作者:

R I P为每个目的地只记录一条路由的事实要求R I P积极地维护路由表的完整性。通过要求所有活跃的R I P路由器在固定时间间隔广播其路由表内容至相邻的R I P路由器来做到这一点,所有收到的更新自动代替已经存储在路由表中的信息。

R I P依赖3个计时器来维护路由表:

·更新计时器

·路由超时计时器

·路由刷新计时器

更新计时器用于在节点一级初始化路由表更新。每个R I P节点只使用一个更新计时器。相反的,路由超时计时器和路由刷新计时器为每一个路由维护一个。

如此看来,不同的超时和路由刷新计时器可以在每个路由表项中结合在一起。这些计时器一起能使R I P节点维护路由的完整性并且通过基于时间的触发行为使网络从故障中得到恢复。

1. 初始化表更新

R I P路由器每隔3 0秒触发一次表更新。更新计时器用于记录时间量。一旦时间到, R I P节点就会产生一系列包含自身全部路由表的报文。

这些报文广播到每一个相邻节点。因此,每一个R I P路由器大约每隔3 0秒钟应收到从每个相邻R I P节点发来的更新。

注意在更大的基于R I P的自治系统中,这些周期性的更新会产生不能接受的流量。因此,一个节点一个节点地交错进行更新更理想一些。R I P自动完成更新,每一次更新计时器会被复位,一个小的、任意的时间值加到时钟上。

如果更新并没有如所希望的一样出现,说明互联网络中的某个地方发生了故障或错误。故障可能是简单的如把包含更新内容的报文丢掉了。故障也可能是严重的如路由器故障,或者是介于这两个极端之间的情况。显然,采取合适的措施会因不同的故障而有很大区别。由

于更新报文丢失而作废一系列路由是不明智的(记住, R I P更新报文使用不可靠的传输协议以最小化开销)。因此,当一个更新丢失时,不采取更正行为是合理的。为了帮助区别故障和错误的重要程度,R I P使用多个计时器来标识无效路由。

2. 标识无效路由

有两种方式使路由变为无效:

? 路由终止。

? 路由器从其他路由器处学习到路由不可用。

在任何一种情形下, R I P路由器需要改变路由表以反映给定路由已不可达。

一个路由如果在一个给定时间之内没有收到更新就中止。比如,路由超时计时器通常设为1 8 0秒。当路由变为活跃或被更新时,这个时钟被初始化。

1 8 0秒是大致估计的时间,这个时间足以令一台路由器从它的相邻路由器处收到6个路由表更新报文(假设它们每隔3 0秒发送一次路由更新),如果1 8 0秒消逝之后, R I P路由器没收到关于那条路由的更新, R I P路由器就认为那个目的I P地址不再是可达的。因此,路由器就会把那条路由表项标记为无效。通过设置它的路由度量值为1 6来实现,并且要设置路由变化标志。这个信息可以通过周期性的路由表更新来与其相邻路由器交流。

注意    对于R I P节点而言,1 6等于无穷。因此,简单的设置耗费度量值为1 6能作废一条路由。

接到路由新的无效状态通知的相邻节点使用此信息来更新它们自己的路由表。这是路由变为无效的第二种方式。

无效项在路由表中存在很短时间,路由器决定是否应该删除它。即使表项保持在路由表中,报文也不能发送到那个表项的目的地址: R I P不能把报文转发至无效的目的地。

3. 删除无效路由

一旦路由器认识到路由已无效,它会初始化一个秒计时器:路由刷新计时器。因此,在最后一次超时计时器初始化后1 8 0秒,路由刷新计时器被初始化。这个计时器通常设为9 0秒。

如果路由更新在2 7 0秒之后仍未收到( 1 8 0秒超时加上9 0秒路由刷新时间),就从路由表中移去此路由(也就是刷新)。而为了路由刷新递减计数的计时器称为路由刷新计时器。这个计时器对于R I P从网络故障中恢复的能力绝对必要。

主动和被动站点

注意到为了使R I P互联网络正常工作,网络中的每一个网关必须参与进去这一点很重要。参与可以是主动参与也可以是被动参与,但所有的网关必须参与。主动节点是那些主动地进行共享路由信息的节点。它们从相邻者处接收更新,并且转发它们的路由表项拷贝至那些相

邻节点。

被动站点从相邻者处接收更新,并且使用那些更新来维护它们的路由表。然而被动节点不主动地发布它们自己路由表项的拷贝。

被动维护路由表的能力在硬件路由器出现之前的日子里是特别有用的特性,那时路由是一个运行在U N I X处理器下的后台程序,这样会使U N I X主机上的路由开销达到最小。

文章录入:csh    责任编辑:csh

相关文章

配置三层交换的综合事例...2007-09-09

MPLS路由和控制结构...2007-09-09

教你读懂路由表...2007-09-09

主流6类数据布线技术的思考...2007-09-09

网吧路由器产品推荐...2007-09-09

华为路由器单臂路由实例...2007-09-09

解析Windows中的帐户和权限功能...2007-09-09

防火墙专题...2007-09-09

路由信息协议RIP...2007-09-09

用QFunction-0.txt实现传奇世界回城石脚本...2007-09-09

最新评论

java编程实现ip路由表的更新_更新路由表相关推荐

  1. java 数据库的更新_更新了数据库[update ... set] java

    我的java代码有问题 . 当我进行数据库更新但它们无法正常工作时 . 我使用了我在互联网上找到的三种方法,但仍然无法使用!请帮我提前谢谢你 package HLR_SERVEUR; public c ...

  2. java map 更新_更新Map键的值java

    好的,我有这个代码: TreeMap tree2 = getDatesTreeMap(); DateTime startx = new DateTime(startDate.getTime()); D ...

  3. java编程用户输入两个数字_编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不...

    导航:网站首页 > 编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不 编写一个Java应用程序,要求从键盘输入 ...

  4. java编程10以内随机数字乘除_随机生成10个长度为10以内的字符串并排序(Java入门第三季集合下作...

    作业要求: 实现代码: package JiHe; import java.util.List; import java.util.Collections; import java.util.Arra ...

  5. 在java编程中会使用汉字字符_在java程序中将中文字符写入文件中或者是将文件中的中文字符读入程序时会出现乱码或者一串“?”,求...

    /** 现在不用qq了. */ /** * 写出文件 * @param content * @param fileName * @param charsetName */ public  void w ...

  6. pve 不订阅更新_更新公告 | 2.1.0全新版本“龙争虎斗”明日登场!

    ___亲爱的各位少年:2.1.0版本"龙争虎斗"将于明日与各位少年们见面,请查收小乔总结的主要的更新内容:1.全服匹配PVP玩法"王者竞技"火热上线2.挑战副本 ...

  7. flyme禁止系统更新_更新安卓底层还是全新手表系统?魅族Flyme再来预热中的预热...

    Flyme可以说是魅族的灵魂所在了,无论是规模还是用户数量,魅族Flyme在MIUI和EMUI面前都没有什么优势,但是凭借着其美观的UI界面,以及Aicy建议.小窗模式等独有的人性化功能,让Flyme ...

  8. java与数据类型相关的十个关键字_乐字节Java变量与数据类型之一:Java编程规范,关键字与标识符...

    大家好,这次要给大家带来的是Java变量与数据类型.本文是第一集:Java编程规范,关键字与标识符. 一.编程规范 任何地方的名字都需要见名知意: 代码适当缩进 书写过程成对编程 对代码进行合理注释 ...

  9. 交换最大数与最小数java编程_善知教育笔记之JavaSE_Java编程基础

    1 Java编程基础 1.1 变量 1.1.1 变量 变量是什么?为什么为用变量? 变量就是系统为程序分配的一块内存单元,用来存储各种类型的数据.根据所存储的数据类型的不同,有各种不同类型的变量.变量 ...

最新文章

  1. R语言嵌套的ifelse语距:将一条If语句放在另一条If语句中,该语句作为嵌套的If else调用。If else语句允许我们根据表达式结果(TRUE或FALSE)打印不同的语句,执行不同的语句块
  2. 【c语言】测量字符串长度
  3. We can all choose freedom over a job
  4. Bootstrap学习遇到的role属性--- 无障碍网页应用属性
  5. Flutter 基础Widgets之AppBar详解
  6. Javascript你必须要知道的面试题
  7. ubuntu16.04 将cuda10.1降为cuda10.0
  8. [工具]实现文件夹和文件名称批量修改
  9. 两种方法去除页眉页脚:基于OCR识别后的文本/基于图片切割
  10. 计算机组成原理---指令系统
  11. 烟雨PHP图床程序源码
  12. sql中的dbl的含义
  13. 【Java余元面向对象】(23)抽象方法/抽象类
  14. rancher导入集群时证书报错
  15. 【愚公系列】2023年02月 WMS智能仓储系统-012.登录功能的实现
  16. 墨卡托坐标以及 墨卡托坐标转经纬度
  17. mac计算机怎么算,Mac系统默认计算器使用大全
  18. 关键词展现量低时怎么办?
  19. 时序分析creat_clock约束命令
  20. android 字符串换行符,\ n(换行符)删除Android

热门文章

  1. 10年内,这三大领域将被人工智能和大数据重塑!
  2. 【数据安全】3. Android 文件级加密(File-based Encryption)技术介绍
  3. 软件测试人员的简历~~
  4. Unity_基础知识_界面菜单翻译
  5. vue项目和jeccg开源文档
  6. 信息加密----现在给定一个字符串,对其进行加密处理
  7. Prototype 原型模式之深 克隆 与浅 克隆
  8. google paly过审问题汇总
  9. 软件开发Linux环境下,java通过JNA调用so报错,求大神解答,感激不尽。
  10. 深入理解Java中的不可变对象