OSPF : 开放式最短路径优先协议 无类别IGP协议;链路状态型;基于LSA收敛,更新量大;夸层封装,协议号89;30min周期更新;组播更新---224.0.0.5224.0.0.6;支持触发更新
OSPF 消息数据包
1.hello: 周期性发送,周期时间10s或30s
目的:建立并维持OSPF 邻居关系(邻居关系建立之后充当保活包功能)
2.DBD:数据库描述数据包
3.LSR: 链路状态请求
4.LSU:链路状态更新,携带LSA信息
5.LSACK:链路状态确认
OSPF状态机
Down:一旦接收到hello包进入下一个状态机
Init:初始化 接收到的hello包中,若存在本地的RID,进入下一状态
2way:双向通讯--邻居关系建立的标志
条件匹配:点到点网络直接进入下一个状态机MA网络将进行DR/BDR选举(40S)非DR/BDR之间不能进入下一个状态机
Exstart:预启动 使用不携带目录信息的DBD包进行主从关系选举,RID数值大为主,优先进入下一个状态机;主从目的主要在于信息交互的有序性,避免同时收发造成网络拥塞
Exchange:准交换 使用DBD携带目录信息,进行共享
Loading:加载 查看完邻接的目录信息后,针对本地未知的LSA,使用LSR包进行查询,对端使用LSU进行应答,本地接收到LSA后使用ack进行确认---获取未知的LSA信息
Full:转发邻接关系建立的标志
OSPF的工作过程
启动配置完成后,邻居间组播收发hello包,建立邻居关系;生成邻居表;邻居关系建立后,将进行条件的匹配,匹配失败将维持邻居关系,仅hello包周期保活即可;匹配成功可以建立邻接(毗邻)关系;邻接关系间将使用DBD/LSR/LSU/LSack来获取本地未知的LSA信息;获取完成后,邻接关系间数据库同步一致;---数据库表;之后本地基于本地的数据库所有内容整理出有向图--->最短路径树结构--->将本地到达所有未知网段的最短路径加载于本地的路由表中;收敛完成后,邻居间仅hello包周期保活即可;每30min邻接关系间周期比对数据库目录,若不一致将马上使用LSU和LSACK进行不一致部分收敛
网络类型以及OSPF接口的工作方式
环回:p2p (环回接口为虚拟接口,虽然显示工作方式为p2p,但实际上不是真正的p2p,而是环回的特有工作方式----无hello包收发以32位主机路由共享)
点到点(HDLC/PPP/GRE):p2p hellotime10s 不进行DR/BDR选举
BMA(以太网):Broadcast hellotime10s DR/BDR选举
NBMA(帧中继、MGRE):在MGRE中,由于MGRE和GRE均使用tunnel接口,故工作方式均默认为p2p在普通的GRE中,由于GRE本身就是点到点网络类型,所有p2p工作方式正常;而MGRE为多点的MA环境,再使用p2p公司将出现故障:p2p工作方式仅允许存在一个邻居;华为默认仅和最先接收到的hello邻居建立;Cisco为循环建立邻居关系;---均无法在该网段正常收敛
ospf不规则区域:1、远离了骨干的非骨干 2、不连续骨干
解决方案:多进程双向重发布
多进程---一台路由器上运行多个OSPF进程,可以分别建立自己的邻居,,每个进程拥有独立的数据库,不共享信息;只是将各自计算所得路由加载于同一张路由表中;类似于在同一台路由器上允许多种动态路由协议的效果;路由器单一一个接口只能工作在唯一一个进程中;
重发布:一个网路中,若同时运行多种路由协议;默认协议间不兼容,无法共享路由;可以在两种协议间配置ASBR,ASBR(自治系统边界路由器,协议边界路由器)必须用不同的接口工作不同的协议中;通过两种协议获取到两边的路由,默认这些路由不共享,重发布技术可以实现路由共享,最终全网可达;
故在不规则区域中,利用多进程加重发布机制,可以实现全网可达,且不存在选路问题和中间区域周期信息相关问题;
OSPF的LSA优化
【1】汇总
(1)域间汇总:ABR设备基于某个区域的1/2类LSA计算所得的最佳路由,共享给其他区域时,进行汇总传递
(2)域外汇总---ASBR重发布进入OSPF域路由进行汇总配置
【2】特殊区域
(1)末梢区域:该区域将拒绝4、5LSA的进入,同时由该区域连接骨干0区域的ABR向该区域,发布一条3类的缺省路由
(2)完全末梢:在末梢区域的基础上,进一步拒绝3类的LSA,仅保留ABR发送过来的3类缺省;先将该区域配置为末梢区域,然后仅在ABR上定义完全即可
(3)NSSA--非完全末梢区域:该区域拒绝4/5类的LSA;本地的ASBR产生的域外路由基于7类进行传输;当7类LSA需要通过NSSA区域的ABR进入骨干区域,将由该ABR进行7转5,以5类发现骨干区域,7转5的这台ABR同时成为一台ASBR华为设备由该区域连接骨干ABR自动产生7类缺省路由
(4)完全NSSA:在NSSA的基础上进一步拒绝3类的LSA,由该区域连接骨干的ABR发布一条3类缺省先将该区域配置为NSSA,然后仅在ABR定义完全即可