一、 简介
OSPF:(Open Shortest Path First,开放最短路径优先)是一种链路状态路由协议,无路由循环(全局拓扑),“开放”意味着非私有的。每一台路由器拥有整个拓扑结构,能根据网络拓扑信息独立地做出决策。OSPF采用SPF算法计算到达目的地的最短路径,所谓“链路”,即指路由器接口,所谓“状态”,即指描述接口以及其与邻居路由器之间的关系。
二、优点
- 收敛速度快
- 选择路径佳(前提防环)
- 占用资源少
三、数据包
OSPF的数据包共有5种,分别为:
hello包 -- 组播收发,用于邻居、邻接关系的发现、建立、周期保活
DBD -- 数据库描述包-- 本地LSDB(链路状态数据库)目录
LSR---链路状态请求 -- 用于询问对端本地未知的LSA信息
LSU-- 链路状态更新 -- 用于共享具体的每一条LSA信息
LSack 链路状态确认 -- 确认包
其中LSA--链路状态通告--具体的一条一条 路由或者拓扑信息,不是一种数据包,所有的LSA是使用LSU这种包来转发的;
四、OSPF的工作过程
①、路由器上启动OSPF协议后,直连的邻居间,开始组播收发hello包,hello包中将存储本地已知邻居的RID,在双方RID均已知的情况下,建立邻居关系,生成邻居表;
②、邻居关系建立后,邻居间将进行条件匹配,匹配失败将停留为邻居关系,仅hello周期保活即可;匹配成功者间将进行邻接关系的建立;
③、邻接关系间的路由器,将使用DBD/LSR/LSU/LSack来获取本地未知的所有LSA信息;使得同一区域内所有路由器的数据库完全一致;---- 数据库表;
④、当本地数据库完成同步后,将数据库-->有向图-->树型结构图-->将本地到达所有未知网段的最短路径加载于本地路由表中;
⑤、收敛完成,仅hello包周期保活即可;正常每30min,邻接关系间再进行一次DBD的对比,若一致及正常;若不一致将马上进行同步;
结构突变:触发更新
- 断开网段 直连断开网段的设备,直接使用LSU告知邻接,需确认
- 新增网段 直连新增网段的设备,直接使用LSU告知邻接,需确认
- 无法沟通 hello time 对应的 dead time ;dead time 到时时,断开邻居关系,去除基于该邻接共享的LSA计算所得路由;
五、OSPF的数据库表
<r1>display ospf lsdb 查看LSDB目录
ospf协议在不同的条件环境下,将使用不同类别的LSA来传输拓扑或路由信息;
<r1>display ospf lsdb router 2.2.2.2 具体查看某条LSA信息
类别名 link-id(页面)
所有类别LSA均携带的信息:
Type | Router | 类别名 此处为1类 |
---|---|---|
Ls id | 2.2.2.2 | link-id 在目录中的页码号 |
Adv rtr | 2.2.2.2 | 通 |