开放式最短路径优先(OSPF)
OSPF是一种基于链路状态的路由协议,在设计上就保证了无路由环路。
优点:1.无环路 2.收敛好 3.扩展性好 4.支持认证
LSDB:链路状态数据库
OSPF报文
ospf的ip协议号为89
1.hello报文:最常用的一种报文,用于发现、维护邻居关系。在广播和NBMA类型的网络中选举指定路由器DR和备份指路由器BDR。
2.dd报文:用来做数据库同步,内容包括LSDB中每一条LSA的头部。
3.LSR报文: 包含了LSA的摘要信息。
4.LSU报文:用来向对端路由器发送所需要的LSA。
5.LSACK报文:用来对接受到的LSU报文进行确认。
邻居状态机
邻居和邻接关系建立的过程:
1.Down:邻居的初始状态。
2.Attempt:只在NBMA网络上存在,表示没有收到邻居的任何信息,但是已经周期性的向邻居发送报文。
3.Init:路由器已经从邻居收到了Hello报文,但是自己不在所收到的Hello报文的邻居列表中,尚未于邻居建立双向通信关系。
4.2-way:双向通信已经建立,但是没有与邻居建立邻接关系。(建立邻接关系之前的最高级状态)
5.ExStart:建立邻接的第一个步骤,路由器开始向邻居发送DD报文。
6.Exchange:路由器相互发送包含链路状态信息摘要的DD报文,描述本地LSDB的内容。
7.loading:相互发送LSR报文请求LSA,发送LSU报文通告LSA。
8.Full:路由器的LSDB已经同步。
Router ID、邻居和邻接
Roter ID是一个32位的值,它唯一标识了一个自治系统内的路由器,管理员可以为每台运行OSPF的路由器手动配置一个Router ID。
数据库同步
路由器使用DD报文进行主从路由器的选择和数据库摘要信息的交互。
DD报文包含LSA的头部信息,用来描述LSDB的摘要信息。
建立完全邻接关系
LSR:用于向对方请求所需的LSA。
LSU:用于向对方发送其所需要的LSA。
LSACK:用于向对方发送收到LSA的确认。
OSPF支持的网络类型
OSPF定义了四种网络类型:点对点网络、广播型网络、NBMA网络和点到多点网络。
1.点对点网络:两台路由器直接相连的网络。
2.广播型网络:两台以上路由器,并且具有广播能力的网络。
3.NBMA:在NBMA网络上,OSPF模拟在广播型网络上的操作,但是每个路由器的邻接需要手动配置。
4.P2MP:将整个网络看成是一组点到点网络。
OSPF区域
OSPF支持将一组网段组合在一起,这样的一个组合称为一个区域。
划分OSPF区域可以缩小路由器的LSDB规模,减少网络流量。
OSPF开销
OSPF基于接口带宽计算开销,计算公式为:接口开销=带宽参考值÷带宽。带宽参考值可配置,缺省为100Mbit/s。一个64kbit/s串口的开销值为1562。
OSPF开销值范围是1-65535,缺省值为1。
OSPF配置