首页 百科知识 开放式最短路径优先

开放式最短路径优先

时间:2022-10-18 百科知识 版权反馈
【摘要】:OSPF是一种基于链路状态的路由协议,需要每个路由器向其同一管理域的所有其他路由器发送链路状态广播信息。利用OSPF的路由器首先必须收集有关的链路状态信息,并根据一定的算法计算出到每个节点的最短路径。开销为1的路径认为是最佳的路径。OSPF协议数据包的接收及发送正是在一对OSPF的adjacency间进行的。①用于发现和维护邻居关系的是定期发送的是不含路由信息的hello报文,非常短小。

7.3.2 开放式最短路径优先———OSPF

OSPF(Open Shortest Path First,开放式最短路径优先)是一种基于链路状态的路由协议,需要每个路由器向其同一管理域的所有其他路由器发送链路状态广播信息。在OSPF的链路状态广播中包括所有接口信息、所有的量度和其他一些变量。利用OSPF的路由器首先必须收集有关的链路状态信息,并根据一定的算法计算出到每个节点的最短路径。而基于距离向量的路由协议仅向其邻接路由器发送有关路由更新信息。

OSPF采用一种路径开销cost值作为路径选择的依据,其取值与接口带宽成反比,因此开销越小,表示路径越好。开销为1的路径认为是最佳的路径。

与RIP不同,OSPF将一个自治域再划分为区,相应地即有两种类型的路由选择方式:当源和目的地在同一区时,采用区内路由选择;当源和目的地在不同区时,则采用区间路由选择。这就大大减少了网络开销,并增加了网络的稳定性。当一个区内的路由器出了故障时并不影响自治域内其他区路由器的正常工作,这也给网络的管理、维护带来方便。

OSPF路由协议针对每一个区域分别运行一套独立的计算法则,对于区域边界路由器(ABR)来说,由于一个区域边界路由器同时与几个区域相联,因此一个区域边界路由器上会同时运行几套OSPF计算方法,每一个方法针对一个OSPF区域。下面对区域内部OSPF协议运算的全过程作概括性的描述。

第一步,当一个OSPF路由器初始化时,首先初始化路由器自身的协议数据库,然后等待低层次协议(数据链路层)提示端口是否处于工作状态。

如果低层协议得知一个端口处于工作状态时,OSPF会通过其Hello协议数据包与其余的OSPF路由器建立交互关系。

第二步,OSPF路由器向其相邻路由器发送Hello数据包,如果接收到某一路由器返回的Hello数据包,则在这两个OSPF路由器之间建立起OSPF交互关系,这个过程在OSPF中被称为邻接(adjacency)。在广播性网络或是在点对点的网络环境中,OSPF协议通过Hello数据包自动地发现其相邻路由器,在这时,OSPF路由器将Hello数据包发送至一个特殊的多点广播地址

第三步,OSPF路由器会与其新发现的相邻路由器建立OSPF的adjacency,并且在一对OSPF路由器之间作链路状态数据库的同步。在多接入的网络环境中,必须先选出指定路由器(DR)和备份指定路由器(BDR),非指定路由器(Drother)的OSPF路由器只会与指定路由器(DR)建立adjacency,并且作数据库的同步。OSPF协议数据包的接收及发送正是在一对OSPF的adjacency间进行的。

第四步,OSPF路由器周期性地产生与其相联的所有链路的状态信息(LSA)。当路由器相联接的链路状态发生改变时,路由器也会产生链路状态广播信息,所有这些广播数据是通过泛洪(Flood)的方式在某一个OSPF区域内进行的。Flooding算法是一个非常可靠的计算过程,它保证在同一个OSPF区域内的所有路由器都具有一个相同的OSPF数据库。根据这个数据库,OSPF路由器会将自身作为根,采用Dijkstra算法计算出一个最短路径树(SPF),然后,该路由器会根据最短路径树产生自己的OSPF路由表

第五步,OSPF协议是通过Hello协议数据包来维护邻接关系的,同时也用其来保证相邻路由器之间的双向通信。

OSPF有以下一些特点:

(1)链路状态算法;

(2)无类域协议(支持VLSM,CIDR);

(3)度量值为cost(基于接口带宽);

(4)仅当发生变化时发送局部路由更新信息;

(5)支持认证;

(6)使用组播地址224.0.0.5(全部ospf路由器)和224.0.0.6(全部DR路由器);

(7)使用Dijkstra算法保证不会出现路由环路。

OSPF协议主要优点:

(1)OSPF是真正的LOOP-FREE(无路由自环)路由协议。源自其算法本身的优点。

(2)OSPF收敛速度快:能够在最短的时间内将路由变化传递到整个自治系统。

(3)提出区域(area)划分的概念,将自治系统划分为不同区域后,通过区域之间的对路由信息的摘要,大大减少了需传递的路由信息数量。也使得路由信息不会随网络规模的扩大而急剧膨胀。

(4)将协议自身的开销控制到最小。主要是因为:

①用于发现和维护邻居关系的是定期发送的是不含路由信息的hello报文,非常短小。包含路由信息的报文时是触发更新的机制。(有路由变化时才会发送)。但为了增强协议的健壮性,每1800秒全部重发一次。

②在广播网络中,使用组播地址(而非广播)发送报文,减少对其他不运行ospf的网络设备的干扰。

③在各类可以多址访问的网络中(广播,NBMA),通过选举DR,使同网段的路由器之间的路由交换(同步)次数由O(N* N)次减少为O(N)次。

④提出STUB区域的概念,使得STUB区域内不再传播引入的ASE路由。

⑤在ABR(区域边界路由器)上支持路由聚合,进一步减少区域间的路由信息传递。

⑥在点到点接口类型中,通过配置按需播号属性(OSPF over On Demand Circuits),使得ospf不再定时发送hello报文及定期更新路由信息。只在网络拓扑真正变化时才发送更新信息。

(5)通过严格划分路由的级别(共分四极),提供更可信的路由选择。

(6)良好的安全性,ospf支持基于接口的明文及md5验证。

(7)OSPF适应各种规模的网络,最多可达数千台。

OSPF路由协议的优越性能,使其成为了目前的内部网关路由中使用最广泛的路由协议。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈