链路状态路由协议,开放式最短路径优先协议,协议号:89,基于SPF算法,OSPF使用cost“开销”作为路由度量值。内部网关协议,网络层。
优点
无环路:区域内部采用树形算法;区域间采用星型拓扑 收敛快:相比于其他路由协议能更快速的收敛网络 扩展性好:当网络规模扩大的时候, OPSF支持多区域可以将一些设备划分在一个区域 支持认证:增加了网络的安全性
5个报文
hello报文:建立和维护邻居关系
作用:设备之间第一次交互学习对端的router-id
在建立稳定的邻接关系之后,维护设备的邻接
DD报文:链路状态数据库描述信息
作用:描述LSDB有多LSA
LSR报文:链路状态请求包
作用:向OSPF邻居请求链路状态信息
LSU报文:链路状态更新包
作用:响应对端LSR应答请求,发送LSA的更新内容
LSACK报文:链路状态确认包
作用:确认收到对端包
3个表
邻居表:dis ospf peer
OSPF路由表:dis ospf routing
链路状态数据库(LSDB)表:dis ospf lsdb
8种状态
down:
下面几种情况会出现down:
没有宣告OSPF邻居
40S时间都未收到Hello包超时。
跳转条件
已经宣告OSPF,收到对端发送的OSPF Hello,进入到init
Attempt
该状态仅发生在NBMA网络中,表明对端在邻居失效时间间隔(dead interval)超时前仍然没有回复Hello报文。此时路由器依然每发送轮询Hello报文的时间间隔(poll interval)向对端发送Hello报文。
init:作用:确认对端的router-id
收到Hello报文后状态为Init。
跳转条件
已经宣告OSPF,但对端发送的OSPF Hello包中未包含本机的router-id(active neighbor)
已经宣告OSPF,对端发送的OSPF Hello包中包含本机的router-id(active neighbor),进入到two way
two way:作用:选举DR和BDR
收到的Hello报文中包含有自己的Router ID,则状态为2-way;如果不需要形成邻接关系则邻居状态机就停留在此状态,否则进入Exstart状态。
跳转条件
当Hello中DR已经确定选举出来,这时候跳到exstart状态。
exstart:作用:主从选举,确定OSPF LSA的序列号
开始协商主从关系,并确定DD的序列号,此时状态为Exstart。
跳转条件
I=0,MS=1 此时发送DBD的设备为主设备的时候,跳转到exchange
exchange:作用:传输DBD包
主从关系协商完毕后开始交换DD报文,此时状态为Exchange。
跳转条件
当DBD包发送完了之后,M=0,跳转到loading状态
loading:作用:发送LSR、LSU、LSACK
DD报文交换完成即Exchange done,此时状态为Loading。
跳转条件
当所有的LSR请求更新LSU都完成,跳转到full
full:作用:10s发送一个hello包,邻接
LSR重传列表为空,此时状态为Full。
区域类型
普通区域(骨干区域(area 0)是里面比较特殊的一种)
stub区域(末梢区域)
totally stub区域(完全末梢区域)
NSSA区域
totally NSSA区域(绝对末节NSSA)
Type1-7:
Type1:由区域内的路由器发出,描述链路信息;
Type2:由区域内的DR发出,描述网络的链路信息;
Type3:ABR发出,描述网络汇总的链路信息
Type4:ABR发出,描述ASBR汇总的链路信息;
Type5:ASBR发出,描述AS(区域)外部链路信息;
Type7:NSSA区域内的ASBR发出,描述NSSA外部的链路信息。
|