一、概述
    1、开放最短路径优先OSPF协议是为克服RIP的缺点在1989年开发出来的
    (1)“开放”表明OSPF协议不是受某一家厂商控制,而是公开发表的
    (2)“最短路径优先”是因为使用了Dijkstra提出的最短路径算法SPF
    2、OSPF是基于链路状态的,而不像RIP那样是基于距离向量的
    3、OSPF采用SPF算法计算路由,从算法上保证了不会产生路由环路
    4、OSPF不限制网络规模,更新效率高,收敛速度快
    5、链路状态是指本路由器都和哪些路由器相邻,以及相应链路的“代价”
    (1)“代价”用来表示费用、距离、时延、带宽等。这些都由网络管理人员来决定
    image.png
    6、OSPF相邻路由器之间通过交互问候(Hello)分组,建立和维护邻居关系
    (1)Hello分组封装在IP数据报中,发往组播地址224.0.0.5
    image.png
    (2)发送周期为10秒
    (3)40秒未收到来自邻居路由器的Hello分组则认为该邻居路由器不可达
    image.png
    7、使用OSPF的每个路由器都会产生链路状态通告LSA。LSA中包含以下内容:
    (1)直连网络的链路状态信息
    (2)邻居路由器的链路状态信息
    8、LSA被封装在链路状态更新分组LSU中,采用洪泛法发送
    image.png
    9、使用OSPF的每个路由器都有一个链路状态数据库LSDB,用于存储LSA
    10、通告各路由器洪泛发送封装由自己LSA的LSU分组,各路由器的LSDB最终将达到一致
    image.png
    11、使用OSPF的各路由器基于LSDB进行最短路径优先SPF计算,构建出各自到达其他各路由器的最短路径,即构建各自的路由表
    image.png
    12、OSPF有以下五种分组类型
    (1)类型1,问候分组。用来发现和维护邻居路由器的可达性
    (2)类型2,数据库描述分组。向邻居路由器给出自己的链路状态数据库中的所有链路状态项目的摘要信息
    (3)类型3,链路状态请求分组。向邻居路由器请求发送某些链路状态项目的详细信息。
    (4)类型4,链路状态更新分组。路由器使用这种分组将其链路状态进行洪泛发送,即用洪泛法对全网更新链路状态
    (5)类型5,链路状态确认分组。这是对链路状态更新分组的确认分组。
    image.png
    13、OSPF的基本工作过程
    image.png
    14、OSPF在多点接入网络中路由器邻居关系的建立
    (1)选举指定路由器DR和BDR
    (2)所有的非DR/BDR只与DR/BDR建立邻居关系
    (3)非DR/BDR之间通过DR/BDR交换信息
    image.png
    15、为了使OSPF能够用于规模很大的网络,OSPF把一个自治系统划分为若干个更小的范围,叫做区域
    image.png