• OSPF协议---进阶篇


    链路状态和LSA的理解

    链路状态信息的理解

    OSPF作为链路状态路由协议,不直接传递各路由器的路由表,而传递链路状态信息,各路由器基于链路状态信息独立计算路由。所有路由器各自维护一个链路状态数据库。邻居路由器间先同步链路状态数据库,再各自基于SPF(Shortest Path First)算法计算最优路由,从而提高收敛速度
    所谓Link State(链路状态)指的就是路由器的接口状态。在OSPF中路由器的某一接口的链路状态包含了如下信息
    ① 该接口的IP地址及掩码
    ② 该接口的带宽(开销)
    ③ 该接口所连接的邻居
    ④ 链路的类型
    OSPF路由器同步的是最原始的链路状态信息,而且对于邻居路由器发来的链路状态信息,仅作转发。最终所有路由器都将拥有一份相同且完整的原始链路状态信息
    精通企业网络当中网红协议OSPF协议---进阶篇

    LSA头部理解

    LSA(Link State Advertisement)是路由器之间链路状态信息的载体。LSA是LSDB的最小组成单位,也就是说LSDB由一条条LSA构成的。所有的LSA都拥有相同的头部,关键字段的含义如下:
     LS age:此字段表示LSA已经生存的时间,单位是秒。3600s为老化时间,从lsdb中清除 通告的时候是0开始增长 更新时间1800s通告一次(通过LSU维护更新状态)
     LS type:此字段标识了LSA的格式和功能。常用的LSA类型有五种
     Link State ID:此字段是该LSA所描述的那部分链路的标识,例如Router ID等
     Advertising Router:此字段是产生此LSA的路由器的Router ID
     LS sequence number:此字段用于检测旧的和重复的LSA。32位有符号数 默认从0x80000001开始 最大0x7fffffff
    精通企业网络当中网红协议OSPF协议---进阶篇

    如何标识唯一一条LSA

    LS type,Link State ID和Advertising Router的组合共同标识一条LSA

    如何比较一条LSA的新旧

    1.如序列号越大越新
    ① 当路由器生成一条新的LSA时,使用序列号0x80000001做为该LSA的初始序列号,此后,每次更新该LSA,序列号加1
    2.比较checksum 越大越新
    3.比较age 越小越新
    ① 如果age=max age即3600s认为该条lsa是最新的立即更新
    ② 每条LSA都有一个年龄字段,LSA驻留在OSPF的数据库中,已经LSA的传播过程中年龄字段不断增加。OSPF有一个MaxAgeDiff的值,如果两条LSA的序列号相同,而年龄不同,如果年龄差值超过MaxAgeDiff值,那么认为是不同的两条LSA,将进行更新过程。如果小于MaxAgeDiff值,那么认为是相同的LSA,将丢弃后续收到的那条LSA
    ③ OSPF还有一个MaxAge的值,如果LSA的年龄超过该值,那么这条LSA会被从数据库中清除,并将该老化的LSA扩散出去,导致从所有的路由器数据库中清除
    LSRefeshTime是LSA的定期刷新定时器,该定时器控制定期刷新LSA
    MaxAgeDiff 15分钟
    MaxAge 1小时
    LSRefeshTime 30分钟

    OSPF更新机制

    定时更新

    OSPF为每个LSA条目维持一个老化计时器(3600s),当计时器超时,此LSA将从LSDB中删除
    为了防止LSA条目达到最大生存时间而被删除,OSPF通过定期更新(每1800s刷新一次)机制来刷新LSA。OSPF路由器每1800s会重新生成LSA,并通告给其他路由器

    触发更新

    当链路状态发生变化后,路由器立即发送更新消息,其他路由器收到更新消息后立即进行路由计算,快速完成收敛
    精通企业网络当中网红协议OSPF协议---进阶篇

    OSPF的SPF算法

    在同一个区域当中,OSPF使用SPF算法来实现破除环路和最优路径的计算,其中在一个OSPF区域里面会有Router-LSA(LSA-1)和Network-LSA(LSA-2)泛洪,Router-LSA(LSA-1)由每一台运行OSPF的路由器为每一个区域产生一份LSA,Network-LSA(LSA-2)由MA网络里面的DR产生
    精通企业网络当中网红协议OSPF协议---进阶篇

    Router-LSA(LSA-1)

    描述P2P网络

    每台OSPF路由器使用一条Router-LSA描述本区域内的链路状态信息
     LSA头部的三个字段含义如下
    ① Type:LSA类型,Router代表是LSA-1
    ② LS id:链路状态ID(也就是产生该LSA的Router ID)
    ③ Adv rtr:产生此Router-LSA的路由器Router ID
    精通企业网络当中网红协议OSPF协议---进阶篇
    精通企业网络当中网红协议OSPF协议---进阶篇
    一条Router-LSA可以描述多条链路,每条链路描述信息由Link ID,Data,Link Type和Metric组成,其关键字含义如下
     Link Type:链路类型,Router LSA描述的链路类型主要有4种
    ① Point-to-Point:描述一个从本路由器到邻居路由器之间的点到点链接,属于拓扑信息
    ② TransNet:描述一个从本路由器到一个Transit网段(例如MA网段或者NBMA网段)的链接,属于拓扑信息
    ③ StubNet:描述一个从本路由器到一个Stub网段(例如Loopback接口)的链接,属于路由信息
     Link ID:此链路的对端标识,不同链路类型的Link ID表示的意义也不同
     Data:用于描述此链路的附加信息,不同的链路类型所描述的信息也不同
     Metric:描述此链路的开销

    描述MA网络

    在描述MA网络类型的Router-LSA中,Link ID为DR的接口IP地址,Data为本地接口的IP地址
    RTB、RTC、RTE之间通过以太链路互连,以RTC产生的LSA为例,Link ID为DR的接口IP地址(10.1.235.2),Data为本地路由器连接此MA网络的接口IP地址(10.1.235.3),Link Type为TransNet,Metric表示到达DR的开销值
    TransNet描述的链接中仅包括与DR的连接关系及开销,没有网络号/掩码及共享链路上其他路由器的任何信息
    精通企业网络当中网红协议OSPF协议---进阶篇
    精通企业网络当中网红协议OSPF协议---进阶篇
    LSA-1的总结
    精通企业网络当中网红协议OSPF协议---进阶篇

    Network-LSA

    MA共享网段或NBMA共享网段中网络号/掩码及路由器间的链接关系,可以通过Network-LSA来呈现。在Network-LSA中关键字的含义如下
    精通企业网络当中网红协议OSPF协议---进阶篇
    精通企业网络当中网红协议OSPF协议---进阶篇
    ① Type:LSA类型,Network-LSA是二类LSA
    ② LS id:DR的接口IP地址
    ③ Adv rtr:产生此Network-LSA的路由器Router ID,即DR的Router ID
    ④ Net mask:该网段的网络掩码
    ⑤ Attached Router:连接到该网段的路由器列表,呈现了此网段的拓扑信息
    基于上述字段表达的信息,Ls id和Net mask做与运算,即可得出该网段的IP网络号,另外,从DR路由器到其所连接的路由器的开销为0
    从Attached Router部分可以看出,2.2.2.2、3.3.3.3、5.5.5.5共同连接到该共享MA网段中,DR路由器为2.2.2.2,网络号10.1.235.0,掩码255.255.255.0

    实战演练

    计算最短路径树-物理拓扑

    精通企业网络当中网红协议OSPF协议---进阶篇

    由LSDB描述的有向图

    精通企业网络当中网红协议OSPF协议---进阶篇

    描述RTA的LSA计算完成后的SPF树

    精通企业网络当中网红协议OSPF协议---进阶篇

    最终的最短路径树

    精通企业网络当中网红协议OSPF协议---进阶篇

  • 相关阅读:
    win7 64位下 mongodb安装及命令运行
    CYQ.Data 快速开发EasyUI
    面试杂记:三个月的面试回忆录(携程、腾讯等)
    那点你不知道的XHtml(Xml+Html)语法知识(DTD、XSD)
    .NET各大平台数据列表控件绑定原理及比较(WebForm、Winform、WPF)
    CYQ.Data 支持WPF相关的数据控件绑定(2013-08-09)
    CYQ.Data V4系列全面开源(2013-08-04)
    C#与Java对比学习:类型判断、类与接口继承、代码规范与编码习惯、常量定义
    C#与Java对比学习:数据类型、集合类、栈与队列、迭达、可变参数、枚举
    突破瓶颈,对比学习:Eclipse开发环境与VS开发环境的调试对比
  • 原文地址:https://www.cnblogs.com/liujunjun/p/13513566.html
Copyright © 2020-2023  润新知