OSPF原理—详细!!

OSPF(open shortest path first):开放式最短路径优先

定义:是基于链路状态算法的路由协议
为什么要用OSPF?
  • 网络发生变化,静态路由需要手动配置,太麻烦
  • 无法响应网络变化,需要手动更改,工程量大
补充:距离矢量路由协议
  • 距离:距离目的网络多远
  • 矢量:通过哪个方向到达目的网络
  • 基于:工作在路由表上
  • 原理:路由器周期性的共享自己的路由表信息,通过矢量叠加路由表项,周期性的通过邻居扩散至整个网络
  • 缺点:容易环路;路由信息不一致;跳数无穷大

一、ospf原理

1. 链路状态路由协议(LSA Link State Advertisement)

  • 基于:工作在链路上
  • 原理:路由器之间建立邻居关系,交互链路状态通告/信息
  • 链路状态通告:每台路由器描述自己所直连接口的开销、与邻居路由器之间的关系等

2. LSDB(Link State Datebase)组建(链路状态数据库)

  • 原理:路由器将交互过的LSA放入到LSDB中,LSDB汇总了网络中每个路由器对自己接口的描述。

3. SPF(short path first)最短路径优先计算

  • 原理:每台路由器以自己为根,计算出与其他路由器之间的一条无环路、最短、最优的路径

4. 路由表生成

  • 原理:把得到的最优路径放入到本路由器的路由表中

二、ospf流程(步骤)

  1. 相邻路由器建立邻居关系
  2. 邻居之间交互链路状态信息并同步至LSDB
  3. 计算最优路径
  4. 将最优路径添加到路由表
图示
在这里插入图片描述

三、ospf基础术语

  1. 域(domain)
  • 自译:使用统一area的ospf设备所构成的网络

  • 缺点:“单个区域”设备规模大了之后路由表条目增多,路由器消耗资源多,spf重计负担重,于是衍生出“多域”

  • 区域(area)
    作用:标识ospf的作用区域;逻辑上将设备分组,每组用区域号(area id)标识
    区分:一般分为骨干区域和非骨干区域,骨干区域为area0,除area0其他都是非骨干区域
    注意:为了防环,非骨干区域之间不能互连,非骨干区域要跟骨干区域相连

  • 多区域
    优点:使ospf支持更大规模的组网,减小lsa泛洪范围,减小路由表规模
    在这里插入图片描述


  • 单/多区域组网示例

在这里插入图片描述


  1. 路由器标识(router-id)
  • 作用:在一个area中唯一的标识一台路由器
  • 配置方式:手动/自动
  • 实用:一般手动配置,为了避免配成一致,通常将router-id与该设备的某个接口的IP配成一致

3.度量值(cost)

  • 又叫开销
  • 背景:因为ospf计算最优路径是比较cost、优先级,所以每个激活ospf的路由器都会有cost值,该值可配置。
  • 缺省时cost值=100Mbit/s÷接口带宽
  • 宏观:一条ospf路由的cost值是从目的网段到本路由器 ”沿途“所有接口的cost值累加

四、ospf协议报文类型(5种)

在这里插入图片描述

五、ospf三张表

在这里插入图片描述

  1. 邻居表
  • 查看命令:display ospf peer
  • 主要参数:
    在这里插入图片描述
  1. 链路状态数据库表
  • 记录所有链路状态信息
  • 查看命令:display ospf lsdb
  1. 路由表
  • 记录最佳路由
  • 查看命令:display ospf routing

六、ospf路由器之间的关系

  • 邻居关系(2-way): 两台路由器交互hello报文,发现对方,称为邻居关系

  • 邻接关系(full): 称为邻居关系之后再交互LSR、LSA、DD、LS ACK。当LSDB同步完成,则成邻接关系(最终的关系)

建立流程

  1. 交互hello报文建立邻居
    接口状态:收到之前 down-->收到之后 init-->对方收到之后 2-way
  2. 协商主从路由器(router-id大的为主,反则为从)
    接口状态:主从路由器比较完,从路由器接口exstart-->exchange,从路由器发送lsdb到主,主路由器接口exstart-->exchange-->loading
  3. 交互各自LSDB
    接口状态:loading
  4. 更新LSA,同步LSDB
    接口状态:full

七、ospf网络类型(4种)

  1. BMA(broadcast multiple access)广播式多路访问
    指一个允许多台设备接入,支持广播的“环境”
  2. NBMA(Non broadcast multiple access)非广播式多路访问
    指允许多台设备接入,但不支持广播
  3. P2MP(point to multi point)点到多点
    等于多条p2p链路的一端捆绑到一起
  4. P2P==(点对点)==
    指一条链路只能连接两台设备的“环境”

注:一般情况下,链路两端的ospf接口网络类型必须一致,否则无法建立邻居关系

八、ospf路由器身份

为什么会分出路由器角色?

  • 背景:在广播式多路访问中,如果每一条路由器都与其他路由器建立邻接关系,会增加设备负担
  • 自译:路由器之间进行选举,选举出主路由器,当主路由器出故障,备用路由器顶上
  • 选举规则:比较优先级,优先级默认=1,高的优先,优先级相同则比较router-id,大的优先

3种身份

  • DR(Designated router)指定路由器
  • BDR(Backup Designated router)备用指定路由器
  • Drouter 路由器

九、ospf命令:

  • 创建进程,进入ospf视图
    命令:ospf+进程号+router-id
  • 创建区域 进入区域
    命令:area+区域数值
  • 宣告网络:
    命令network 接口 反掩码

猜你喜欢

转载自blog.csdn.net/Beyonod/article/details/130559513