为什么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. mysql之 安装(Mac)

    1.官网下载安装包:https://dev.mysql.com/downloads/mysql/ 2.设置环境变量:(1)首先mysql的安装位置为:/usr/local/mysql/bin (2)在 ...

  2. day 21 封装,多态,类的其他属性

    封装 封装:将一些数据,重要的信息等等放到一个地方(空间中) class A: country = 'China' area = '深圳' def __init__(self,name,age): s ...

  3. cloudera-hdfs 告警处理

    2018-03-13 11:15:17,215 WARN [org.apache.flume.sink.hdfs.HDFSEventSink] - HDFS IO error org.apache.h ...

  4. mysql 事务中如果有sql语句出错,会导致自动回滚吗?

    事务,我们都知道具有原子性,操作要么全部成功,要么全部失败.但是有可能会造成误解. 我们先准备一张表,来进行测试 CREATE TABLE `name` ( `id` int(11) unsigned ...

  5. Sqlserver的身份验证模式

    1.服务器名称: . 在服务器名称这里,我们有以下几种选择来连接到本地: (1)默认的服务器名称:也就是电脑主机的名称 (2)".",“.”就表示主机. (3)localhost ...

  6. poj 2886 (线段树+反素数打表) Who Gets the Most Candies?

    http://poj.org/problem?id=2886 一群孩子从编号1到n按顺时针的方向围成一个圆,每个孩子手中卡片上有一个数字,首先是编号为k的孩子出去,如果他手上的数字m是正数,那么从他左 ...

  7. Java的OOP三大特征之一——继承

    Java的OOP三大特征之一——继承 子类继承父类的特征和行为(属性和方法),使得子类具有父类的各种属性和方法.或子类从父类继承方法,使得子类具有父类相同的行为. 特点:在继承关系中,父类更通用.子类 ...

  8. Window7安装tensorflow整套环境详细流程

    安装tensorflow方式有好多种,为了方便编译环境以及包管理,这里采用Anaconda平台安装tensorflow. tensorflow官网:http://www.tensorflow.org/ ...

  9. Struts问题

    1.struts框架的5大组件:mvc,标签库,校验框架,国际化,tiles; 2.struts的9大核心类以及与mvc对应的关系: C ActionServlet RequestProcessor ...

  10. React中使用CSS

    第一种: 在组件中直接使用style 不需要组件从外部引入css文件,直接在组件中书写. import React, { Component } from "react"; con ...