OSPF——链路状态路由(开发的最短路径优先协议)

一.OSPF概述
OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。著名的迪克斯彻(Dijkstra)算法被用来计算最短路径树。OSPF支持负载均衡和基于服务类型的选路,也支持多种路由形式,如特定主机路由和子网路由等。

AS:同一个技术管理机构管理、使用统一选路策略的一些路由器的集合

二.协议的分类
1.按自治系统分为

  • IGP:内部网关路由协议,运行在AS内部的路由协议,主要解决AS内部的选路问题,发现、计算路由。
    主要的协议:RIP1/RIP2、OSPF、ISIS、EIGRP(思科私有协议)
  • EGP:外部网关路由协议,运行在AS与AS之间的路由协议,他解决AS之间选路问题
    通常:BGP

2.按协议类型分类

  • 距离矢量路由协议:RIP1/2、BGP(路径矢量协议)、EIGRP(高级距离矢量协议
    路由器对全网拓扑不完全了解。是“传说的路由”,A发路由信息给B,B加上自己的度量值又发给C,路由表里的条目是听来的。

3.链路状态路由协议:OSPF,ISIS

  • 路由器对全网拓扑完全了解。是“传信的路由”,A将信息放在一封信里发给B,B对其不做任何改变,拷贝下来,并将自己的信息放在另一封信里,两封信一起给C,这样,信息没有任何改变和丢失,最后所有路由器都收到相同的一堆信,这一堆信就是LSDB。然后,每个路由器运用相同的SPF算法,以自己为根,计算出SPF Tree(即将到达目的地的各个方案),选出最佳路径,放入路由表中。

三.OSPF的工作过程

  • 邻居列表
  • 链路状态数据库
  • 路由表
  1. 建立邻接关系
  2. 学习链路状态信息
  3. 链路状态数据库
  4. Dijkstra算法
  5. 最短路径树
  6. 路由表

四.OSPF基本概念

1.OSPF区域

  • 为了适应大型的网络,OSPF在AS内划分多个区域
  • 每个OSPF路由器只维护所在区域的完整链路状态信息

2.区域ID

  • 区域ID可以表示成一个十进制的数字
  • 也可以表示成一个IP

3.骨干区域Area 0

  • 负责区域间路由信息传播

4.非骨干区域

5.Router ID

  • OSPF区域内唯一标识路由器的IP地址

6.Router ID选取规则

  • 选取路由器loopback接口上数值最高的IP地址
  • 如果没有loopback接口,在物理端口中选取IP地址最高的
  • 也可以使用router-id命令指定Router ID

五.OSPF原理

  • OSPF的简单说就是两个相邻的路由器通过发报文的形式成为邻居关系,邻居再相互发送链路状态信息形成邻接关系,之后各自根据最短路径算法算出路由,放在OSPF路由表,OSPF路由与其他路由比较后优的加入全局路由表。

(一)五个包

  • Hello包:
    发现和维持邻居关系、选举DR和BDR
  • 数据库描述包(DBD)
    向邻居发送摘要信息以同步链路状态数据库
  • 链路状态请求包(LSR)
    路由器收到新信息的DBD发送,请求更详细的信息
  • 链路状态更新包(LSU)
    将LSR请求的头部信息对应的完整信息发给邻居。
  • 链路状态确认包(LSAck)
    收到LSU报文后确认DBD/LSU

(二)七种状态

  • down:初始化
  • init:收到第一个Hello包
  • 2-way:双向建立会话
  • Exstart:建立主从关系
  • Exchange:交换摘要信息
  • Loading:加载详细信息
  • full:完全连接

六.OSPF的区域类型

  • 骨干区域Area 0

  • 非骨干区域—根据能够学习的路由种类来区分

    -标准区域
    -末梢区域(stub)
    -完全末梢(Totally stubby)区域
    -非纯末梢区域(NSSA)

七.链路状态通告(LSA)类型

类型代码 描述 用途
Type 1 路由器LSA 由区域内的路由器发出,描述了路由器的链路状态和花费,传递到整个区域内
Type 2 网络LSA 由区域内的DR发出,描述了区域内变更信息,传递到整个区域内
Type 3 网络汇总LSA ABR发出,其他区域的汇总链路通告,描述了其他区域内某一网段的路由,区域间传递
Type 4 ASBR汇总LSA ABR发出,用于通告ASBR信息,确定ASBR的位置,不会出现在ASBR所属区域之内
Type 5 AS外部LSA ASBR发出,用于通告外部路由,告诉相同AS的路由器通往外部AS的路径,在整个AS中进行泛洪
Type 7 NSSA外部LAS NSSA区域内的ASBR发出的,用于通告本区域连接的外部路由,与Type 5 类似,仅在非纯末梢区域内进行泛洪,传递时会被ABR转换为LSA5

八.末梢区域和完全末梢区域

(一)满足以下条件的区域

  • 只有一个默认路由作为其区域的出口
  • 区域不能作为虚链路的穿越区域
  • Stub区域里无自治系统边界路由器ASBR
  • 不是骨干区域Area 0

(二)末梢区域

  • 没有LSA4、5、7通告

(三).完全末梢区域

  • 除一条LSA3的默认路由通告外,没有LSA3、4、5、7的通告

四)末梢与完全末梢的作用

  1. 减少区域内的LSA条目以及路由条目
  2. 减少对设备CPU和内存的占用

你可能感兴趣的:(计算机网络)