zoukankan      html  css  js  c++  java
  • OSPF协议基础

    一、OSPF 简介

      OSPF(Open Shortest Path First,开放最短路径优先)是IETF(Internet Engineering Task Force,互联网工程任务组)组织开发的一个基于链路状态的 IGP(Interior Gateway Protocol,内部网关协议)。目前针对IPv4协议使用的是OSPF Version 2

      在一个自治系统AS(Autonomouse System)内,运行OSPF路由协议的路由器,将LSA(LinkState Advertisement,链路状态通告)传递给在某一区域内的所有设备,所有设备共同维护着LSDB(LinkState Database,链路状态数据库),链路状态数据库存放着自治系统AS中链路的拓扑信息,路由器基于LSDB使用SPF(Shortest Path First,最短路径算法),从而计算出OSPF路由表,OSPF路由与其他路由比较后优的加入全局路由表,OSPF基于IP,协议号为89,采用组播方式交换OSPF包,OSPF的组播地址为224.0.0.5(全部OSPF路由器)和224.0.0.6(指定路由器)

     二、Router ID

      Router ID 用于在OSPF domain 中唯一地标识一台OSPF路由器,而且禁止在域内出现两台路由器拥有相同的Router ID,Router ID可以通过手工配置也可能通过协议自动选取的方式。

    三、OSPF Cost

      (1)OSPF使用 Cost “开销” 作为路由度量值,每一个激活OSPF的接口都有一个Cost值。

      (2)一条OSPF路由的Cost值,由该路由从起源一路到达本地的所有入接口Cost值的总和。

    四、OSPF的邻居表、链路状态数据库、OSPF路由表

      邻居表(Peer Table):在路由器之间传递链路状态通告之前,需要建立OSPF邻居关系,hello报文用于发现链路上的OSPF路由器,经过一系列的OSPF消息交互最终建立毗邻的关系。

      链路状态数据库(LinkState Advertisement,LSDB):OSPF协议通过LSA(LinkState Advertisement,链路状态通告)描述网络拓扑结构,OSPF路由器用链路状态数据库来存储LSA。

       OSPF路由表(Routing Table):基于LSDB进行SPF计算(Dijkstra算法),得出OSPF路由表。

    五、OSPF 报文类型 

      Hello  周期性发送,用于发现和维持OSPF邻居关系。

      DBD        描述本地LSDB的摘要信息,用于两台设备进行数据库同步。

      LSR    用于向邻居请求所需的LSA,设备只有在OSPF邻居成功建立后,交换DBD报文后才会发出LSR报文。  

      LSU    对LSR请求,进行回应,把完整信息发给邻居(包含一条或多条LSA)。

      LSAck   对LSU中的LSA进行确认。

      注:Hello报文的发达间隔时间是10秒,默认无效时间间隔是Hello时间间隔的4倍,即如果在40秒内没有从特定的邻居接收到这种分组,路由器就认为邻居不存在了。 支持路由器发现邻接路由器(Hello)学习其本身链路状态库中没有的LSA(DD)请求并交换LSA(LSR/LSU),监测邻接路由器是否发生拓扑改变,LSA每30分钟重传1次。 

      

    六、OSPF邻居关系建立的过程

      (1)通过发现直连链路上的OSPF路由器,建立双向关系(通过Hello报文)

      (2)协商主/从关系,交换LSA头部摘要信息(通过DBD报文)

      (3)同步LSA,请求(通过LSR报文)/发送(通过LSU报文,LSAs)

      (4)完成同步,进入OSPF全毗邻状态  

    七、DR、BDR

      指定路由器(DR):负责把信息更新到其它OSPF路由器。

      备用指定路由器(BDR):BDR会监控DR的状态,并在当DR发生故障时接替其角色。

      其它路由器(DRother):只允许与DR路由器建立邻居关系,彼此之间不相互建立邻居关系,这样可以大大减少LSA的泛洪。 

      注:(1)DR选举规则是,具有最高OSPF接口优先级的路由器被选作DR,如果优先级相等(默认为1),具有最高的OSPF Router-ID的路由器被选择成为DR另外DR具有非抢占性

        (2)OSPF接口优先级为0,则路由器不参与DR和BDR的选举。

        (3)OSPF为 接口敏感型协议,DR及BDR的身份状态是基于OSPF接口的。

      

     八、OSPF 区域

       OSPF协议 特殊区域

     九、OSPF协议 LSAs

      OSPF协议 LSAs

    十、OSPF路由器的角色

      区域内路由器             Internal Router

      区域边界路由器ABR  Area Border Router

      骨干路由器                 Backone Router

      AS边界路由器ASBR  AS Boundary Router

      

    十一、相关命令

       dis ospf                   //查看OSPF运行参数  
      dis ospf interface         //查看OSPF本地接口
      dis ospf peer              //查看OSPF邻居表
      dis ospf lsdb              //查看LSDB表
      dis ospf routing           //查看OSPF路由
      dis ospf statistics error  //查看OSPF错误信息
    
      [接口]ospf cost XX           //修改cost值
      [接口]ospf dr-priority       //修改DR优先级
    

      

  • 相关阅读:
    sql 删除表数据并使ID自增重置
    PHP的常用字符串处理
    一个http请求的详细过程
    elasticsearch7.7-postman-json脚本
    elasticsearch7.7入门三-小试牛刀-批量导入json数据
    elasticsearch7.7入门三-小试牛刀
    elasticsearch7.7入门二-安装
    elasticsearch7.7入门一-介绍
    java8新特性七-Date Time API
    java8新特性五-Stream
  • 原文地址:https://www.cnblogs.com/PBDragon/p/12969702.html
Copyright © 2011-2022 走看看