OSPF协议原理

开放最短路径优先协议 OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP)   ,能够自行创建网络拓扑图并独立计算通向每个网络的最短路径。
一,OSPF协议基本概念
1.链路状态协议介绍
     链路状态路由协议是层次式的,网络中的路由器并不向邻居传递‘路由项’ ,而是通告给邻居一些链路状态。与距离矢量路由协议相比,链路状态协议对;对路由的计算方法有本质的差别。距离矢量协议是平面式的,所有的路由学习完全依靠邻居,交换的是路由项。链路状态协议只是通告给邻居一些链路状态。运行该路由协议的路由器不是简单地从相邻的路由器学习路由,而是把路由器分成区域,收集区域的所有路由器的链路状态信息,根据状态信息生成网络拓扑结构,每一个路由器再根据拓扑结构计算出路由。

2.OSPF协议介绍
OSPF是一种典型的链路状态路由协议,采用OSPF路由协议的路由器彼此交换并保存整个网络的链路信息,从而掌握全网的拓扑结构。并独立计算路由。生成链路库。
OSPF特点
①区域划分:允许AS的网络被划分成区域来管理,区域间传送的路由信息被进一步抽象,从而减少了占用的网络带宽。
②无自环:OSPF根据收集到的链路状态用最短路径树算法来计算路由,从算法本身保证了不会生存自环路由。
③快速收敛:在网络的拓扑结构发生变化后立即发送更新报文,使这一变化在AS中同步。
④试应范围广:支持各种规模的网络,最多可支持几百台路由器。
⑤路由分级划分:使用4类不同的路由,按优先顺序来说分别是区域内路由,区域间路由,第一类外部路由,第二类外部路由。
⑥支持验证:支持基于接口的报文认证,以保证报文交互和路由计算的安全性。
⑦支持组播发送:在某些类型的链路上可以以组播地址发送协议报文,减少对其他设备的干扰。
3.OSPF协议报文交换过程
① 在OSPF网络中,为了交换路由信息,邻居设备之间首先要建立邻接关系,邻居关系和邻接关系是不同的概念。
邻居关系:OSPF设备启动后,会通过OSPF接口向外发送Hello报文,收到Hello报文的OSPF设备会检查报文中所定义的参数,如果双方一致就会建立邻居关系,两端设备互为邻居。
邻接关系:形成邻居关系后,如果两端设备成功交换DD报文和LSA,才建立邻接关系。
OSPF通过发送报文类型进行路由学习
Hello报文:周期性发送,用来发现和维护OSPF邻居关系。
DD报文:描述本地LSDBD 的摘要信息,用于两台设备数据库同步。
LSR报文:用于向对方发送请求所需的LSA,设备只有在OSPF邻居双方成功交换DD报文后才会向对方发送LSR报文。
LSU报文:用于向对方发送请求所需要的LSA。
LSAck报文:用来对收到的LSA进行确认。
② 设备建立邻居关系和邻接关系
Down:OSPF初始状态。还没有开始交换信息。
Init:交换信息初期。表示已经收到了邻居的Hello报文,但是报文中没有列出本路由的RID(Hello报文中NEIGHBOR字段),也就说对方还没有收到本路由发出的Hello报文。
Two-Way:双向阶段。双方都收到了对方的Hello报文,也就说在收到的报文中含有NEIGHBOR字段,并且为本路由的 Router ID,此时建立了邻居关系。在多路访问的网络中,两个接口状态是DR Other的路由器之间将停留在此状态,其他情况将继续转入高级状态。在此状态下的路由器是不能共享路由信息的,想要共享路由信息,必须建立邻接关系(注意邻居关系和邻接关系的区别)。
Exstart:准备开始交换阶段。双方通过Hello报文决定主从关系,最高Router ID的路由将成为主路由,并最先发起交换。主从关系确立后进入下一个阶段。(提示:这个阶段也是DR和BDR选举阶段,主要是在多路访问的网路中,减少相互间建立邻接关系的通信流量,后面章节会详细介绍)。
Exchange:开始交换阶段。路由器将本地“路由状态数据库(LSDB)”用“数据库描述(DBD)”报文来描述,然后发给邻路由。如果这个阶段中的路由收到不在其数据库中有关链路的信息,那么在下一个阶段中将通过“链路状态请求(LSR)”报文,来请求对方发送该路由条目的完成信息。
Loading:加载阶段。路由器通过发送“链路状态请求(LSR)”报文,来向邻居请求一些路由条目的详细信息。邻居则会使用“链路状态更新(LSU)”报文来回复LSR请求,收到邻居返回的LSU后,再返回LSAck向发送LSU的路由进行确认。
FULL:完全邻接状态。Loading结束后,路由器之间就成了“Full Adjacency”状态。
4.OSPF协议路由器类型
OSPF定义了四种路由器类型,
①内部路由器(IR):所有接口都处于一个OSPF区域;
②区域边界路由器(ABR):可以同时属于两个以上的区域,但其中一个必须是骨干区域。ABR用来连接骨干区域和非骨干区域,她与骨干区域之间既可以是物理连接,也可以是逻辑上的链接。
③骨干路由器(BR):该类设备至少有一个接口属于骨干区域所有的ABR和位于Area0的内部设备都是骨干路由器。
④自治系统边界路由器(ASBR),与其他AS交换路由信息的设备称为ASBR,ASBR并不一定位于AS的边界,它可能是区域内设备,也可能是ABR。只要一台OSPF设备引入外部路由的信息,它就成为ASBR. 可以认为是OSPF外部的通信进入区域的网关路由器。
5.OSPF协议网络类型
OSPF根据物理链路的类型,定义了几种网络类型。在每种网络类型中,OSPF的邻居建立方式、配置命令有所不同。下面简单介绍一下这些网络类型。
①点到点网络:即Point-to-point(P2P)型网络,是指该接口通过点到点的方式与一台路由器相连。此类型网络不需要进行OSPF的DR、BDR选举。
当链路层协议是PPP或HDLC时,OSPF缺省认为网络类型是P2P。在此类型的网络中,OSPF以组播方式(224.0.0.5)发送协议报文。
②广播型多路访问网络:即Broadcast型网络,网络本身支持广播功能。当链路层协议是Ethernet、FDDI时,OSPF缺省认为网络类型是广播型。此类型网络需要进行OSPF的DR、BDR选举。在该类型的网络中,OSPF通常以组播方式(224.0.0.5和224.0.0.6)发送协议报文。
③非广播型多路访问网络:即NBMA(Non-Broadcast Multiple Access)型网络,虽然从一个接口可以到达多个目的节点,但是网络本身不支持广播功能,当链路层协议是帧中继、ATM或X.25时,OSPF缺省认为网络类型是NBMA。此时OSPF的邻居需要管理员手工指定。在该类型的网络中,以单播方式发送协议报文。
④点到多点网络:即Point-to-multipoint(P2MP)型网络,是指该接口通过点到多点的网络与多台路由器相连。
P2MP型网络比较特殊,没有一种链路层协议会被缺省地认为是点到多点类型。点到多点必须是由其他网络类型强制更改而来。常用做法是将NBMA改为点到多点的网络。在该类型的网络中,缺省情况下以组播方式(224.0.0.5)发送协议报文,也可以根据用户需要,以单播形式发送协议报文。
6.DR/BDR的作用
①减少邻居关系的数量,从而减少链路状态信息和路由信息的次数。Drother只与DR/BDR建立完全邻接关系。DR与BDR之间建立完全邻接关系。
DR产生网络LSA来描述NBMA网段或者广播网段信息。
②DR/BDR选举规则
DR/BDR由OSPF的Hello协议选举,选举是根据端口的路由器优先级(Router Priority)进行的。
如果Router Priority被设置为0,那么该路由器将不允许被选举成DR或者BDR。
Router Priority越大越优先。如果相同,Router ID大者优先。
DR/BDR不能抢占。
如果当前DR故障,当前BDR自动成为新的DR,网络中重新选举BDR;如果当前BDR故障,则DR不变,重新选举BDR。
7.OSPF协议路由扩展特性
①路由器的验证方式
OSPF支持报文验证功能,只有通过验证的OSPF报文才能被接收,否则将不能正常建立邻居。路由器支持两种验证方式,区域验证方式和接口验证方式。当两种验证方式都存在时,优先使用接口验证方式。
②路由聚合
路由聚合是指ABR可以将具有相同前缀的路由信息聚合到一起,只发布一条路由到其他区域。区域间通过路由聚合,可以减少路由信息,从而减少路由表的规模,提高设备的性能。
③虚连接
虚连接是指在两台ABR之间通过一个非骨干区域建立的一条逻辑上的通道,是非骨干区域逻辑上与骨干区域相连。为虚连接两段提供一条非骨干区域内部路由的区域称为传输区域,传输区域不能是末节。

你可能感兴趣的:(企业路由技术)