为什么DV逐渐让位于LS?

DV

 站的不高,看得不远

 完全相信邻居

LS

 想办法站得高,看更远

 多高、多远?

 怎么做?

链路状态路由(Link State)

主要思想

发现 它的邻居节点们,了解它们的网络地址

设置 到它的每个邻居的成本度量

构造 一个分组,包含它所了解到的所有信息

发送 这个分组给所有其他的路由器

计算 到每个路由器的最短路径

发现邻居节点

 当一个路由器启动的时候,在每个点到点的线路发送一个特

别的HELLO分组

设置链路成本

为了决定线路的开销,路由器发送一个特别的 ECHO 分组,

另一端立刻回送一个应答

 通过测量往返时间(round-trip time) ,发送路由器可以获得

一个合理的延迟估计值

为了得到更好的结果,可多次测量,取均值

 一种常用的选择

与链路带宽成反比

构造链路状态分组

链路状态分组构造后被发送给其他的路由器,分组中包含这些信息:

1 发送方的标识(ID of the sender)

2 序列号(sequence number )

3 年龄(age )

4 邻居列表(list of neighbors )

5 到邻居的成本/量度(delay to each neighbor )

应该什么时候构造分组?

周期性地构造和发送,或者有特别的事件发生时

构造,比如某条线路或邻居down掉了

发布链路状态分组

基本算法:

 每个分组都包含一个序列号,序列号随着新分组产生而递增

 路由器记录下他看见的所有 (源路由器,序列号)对

当一个的新的分组到达时,路由器根据它的记录:

如果该分组是新的,就被从除了来线路外的所有其他线路转

发出去 ( flooding,泛洪)

如果是重复分组,即被丢弃(喜新厌旧)

如果该分组的序列号比对应的源路由器发送的到过此地的分

组的最大序列号还小,则该分组被当作过时的信息而被拒绝

基本算法遇到的问题:

 序列号回转,引起新老分组识别混淆

解决办法:使用 32-bit 的序列号,即使每秒产生一个分组,也

需要137年才发生号码回转

 如果一台路由器崩溃,那么他将丢失自己的序列号记录,如果他

再从0开始,新分组将被当作旧分组被拒绝

 解决上述的路由器崩溃和序列号损坏的方法是:每个分组的

序列号之后是年龄(age) ,并且每秒钟年龄减1

 当年龄为零 ( zero )时,来自该路由器的信息被丢弃

 通常地,每隔一段时间,如10秒钟,一个新分组就会到来,

所以,只有路由器down机才可能导致超时( 或者,连续6个

间隔因为丢失,没有收到新的分组)

一些改进让基本算法更加健壮:

 当一个链路状态分组到达某个路由器时,它首先被放到一个保留

区中等待一段时间

 如果来自相同路由器的另一个分组到达了,这两个分组的序列号

会被比较:

如果相等,是重复分组,丢弃

如果不相等,旧的那个被丢弃

为了防止路由器到路由器的线路发生错误,所有的链路状态分组

都要被确认

 当一条线路空闲的时候,路由器扫描保留区,以便选择一个分组

或确认,并将其发送出去

计算新的路由路径

 一旦一个路由器获得了全部的链路状态分组就可以构造出全

网络图来了(Graph)

 现在,可以使用最短路径算法来计算路由器之间的最短路径

 计算结果是一棵树,会形成相应的路由,安装在路由表中,

引导数据分组的转发

链路状态路由选择的基本原理

发现邻居

设置成本

构造LSA

分发LSA

计算

s5-14 链路状态路由选择的更多相关文章

  1. OSPF(Open Shortest Path First开放式最短路径优先 -链路状态路由协议

    OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络 思科OSPF的协议管理距离(AD)是110,华为OSPF的协议管理距离是10 通告网络接 ...

  2. LwIP:处理链路状态改变

    [文/告别年代   Email:byeyear@hotmail.com] 重大修订记录 ----------------------------------------- 2016.11.03 感谢@ ...

  3. 【ISIS(中间系统到中间系统)路由链路状态信息协议初识】

    ISIS单区域的基本配置 一:根据项目需求,考虑到组网的规模和条件,部署ISIS单区域的拓扑图如下: 二:配置 1:首先对RTA进行配置,在系统视图创建ISIS进程:进入ISIS配置视图,指定IS的级 ...

  4. rip是典型的距离矢量动态路由协议。Ospf是链路状态型的协议

    网络工程师十个常见面试问题-看准网 https://m.kanzhun.com/k-mianshiwenti/1465113.html 两者都属于IGP协议,rip是典型的距离矢量动态路由协议.Osp ...

  5. 3.OSPF协议及链路状态算法

    OSPF的特点: 1.使用洪泛法向自治系统内所有路由器发送信息,即路由器通过输出端口向所有相邻的路由器发送信息,而每一个相邻路由器又再次将此信息发往其所有的相邻路由器.最终整个区域内所有路由器都得到了 ...

  6. Dijkstra链路状态选路算法

  7. ansible检测链路状态和切换状态

    控制机 ansible.cfg callback_plugins = /usr/share/ansible/plugins/callback:/opt/ansible/plugins/callback ...

  8. H3C 显示OSPF的链路状态数据库

  9. [Network] 计算机网络基础知识总结

    计算机网络学习的核心内容就是网络协议的学习.网络协议是为计算机网络中进行数据交换而建立的规则.标准或者说是约定的集合.因为不同用户的数据终端可能采取的字符集是不同的,两者需要进行通信,必须要在一定的标 ...

随机推荐

  1. 【校招面试 之 网络】第3题 HTTP请求行、请求头、请求体详解

    1.HTTP请求报文解剖 HTTP请求报文由3部分组成(请求行+请求头+请求体): 下面是一个实际的请求报文: ①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE.HEA ...

  2. eclipse 安装python后pydev不出现

    一.环境 windows 7 64bit eclipse 4.5.2 pydev jdk7u55 二.安装步骤 1. 安装JDK eclipse依赖于java环境,所以需要安装java运行环境JRE. ...

  3. XP下1433端口打不开

    问题:操作系统windows xp:数据库sql server 2000:安装后通过程序无法访问数据,原因是数据库的默认端口1433未打开. 原因:sql server 2000的bug,需要升级补丁 ...

  4. 微信小程序解密

    获取OpenId和SessionKey private string GetOpenIdAndSessionKeyString(string code) { string wxUrl = " ...

  5. SQL truncate 、delete与drop区别[z]

    [z]https://www.cnblogs.com/8765h/archive/2011/11/25/2374167.html 相同点: 1.truncate和不带where子句的delete.以及 ...

  6. Debian 中文环境设置

    编辑 /etc/apt/sources.list 添加163镜像源 apt-get update 进行更新 dpkg-reconfigure locales 选择  en_US.utf-8 utf-8 ...

  7. 17.Mysql分区

    17.Mysql分区分区是指根据一定的规则把一个表分解成多个部分,逻辑上仍是一张表,实际上由多个物理分区对象组成.分区对于应用是完全透明的,不影响业务逻辑和SQL编写.分区的优点: 可以存储更多的数据 ...

  8. Android开发之利用ViewPager实现在Activity或Fragment中引入别的布局文件实现滑动并进行页面跳转

    有些时候经常可以看到其他APP中有一排的图标,可以在一个界面中滑来滑去,并且图标可以进行点击事件进行页面的跳转.这里对这种方法的实现做出总结. 首先看一下图片: 下面这两种图片是在一个Fragment ...

  9. sqlserver自带的导入导出工具,分别导入大批量mysql和oracle数据时的感受

    sqlserver自带的导入导出工具,分别导入大批量mysql和oracle数据时,mysql经常出现格式转换出错,不好导入  导入的数据量比较大时,还不如自己写个工具导入 今天在导oracle时,想 ...

  10. (转)拉姆达表达式(Lambda Expressions) =>写法的涵义

      lambdaclass编译器 让我们先看一个简单的拉姆达表达式: x=>x/2 这个表达式的意思是:x为参数,对x进行相应的操作后的结果作为返回值. 通过这个拉姆达表达式,我们可以看到: 这 ...