OSPF允许连续的网络和主机集合被组织在一起。这样一个组,与那些具有到所包括的网络中任一接口的路由器一起被称为一个区域。每一区域运行一个基本链接状态路由算法的独立拷贝。如前所述,这意味着每一区域有其自身的链接状态数据库及对应的图。
一个区域的拓扑对区域外是不可见的。相应的,对一指定区域内部路由器来说,区域外拓扑细节也是不可知的。与把整个自治系统当作一个单链接状态域比较而言,这一知识的分离使得协议可以显著减少路由选择数据流量。由于区域的引入,所有路由器具有相同链接状态数据库这一说法不再正确。路由器实际上对它每一个所连区域都有一个独立链接状态数据库(连接到多个区域的路由器被称为区域边界路由器)。属于同一区域的路由器,对该区域具有相同的链接状态数据库。
在自治系统内的路由选择在两个级别上发生,这取决于一个包的源和目的地址是否处于相同的区域中(使用域内路由选择)或者处于的区域中(使用域间路由)。在域内路由选择时,包仅依靠在域内获得的消息进行路由,不能使用从区域外获得的路由选择信息。这可以保护域内路由选择不受注入的坏路由信息的影响。在3.3 节中对域间路由进行讨论。
一、 自治系统的主干
OSPF主干是特殊的OSPF区域0(通常写为区域0.0.0.0,因为OSPF区域ID典型的以IP地址格式表示)。OSPF主干总是包含所有区域边界路由器。主干负责在非主干区域间分配路由信息。主干必须连续。然而,它不需要物理连续;主干的连接性可以通过虚链的配置得以建立和维护。
虚链可以在任何具有到相同非主干区域的接口的路由器上配置。虚链同样属于主干。协议把用虚链链接起来的两个路由器看作是由点到点主干网络连接起来。在主干的图上,这样两个路由器有一段弧连接,其代价是这两个路由器之间的区域内距离。沿虚链的路由选择协议流量仅使用域内路由选择。
二、域间路由选择
当在两个非主干区域之间进行路由选择时,使用主干。包走过的路径可以被划分为三个连续段:从源到区域边界路由器的域内路由,在源和目的区域之间的主干路径,然后是另一个到目标的域内路径。算法会找出具有最小代价的相应路径。以另一种方式来看,域间路由选择可以看作是一个对自治系统的强制星型配置——主干作为HUB,而非主干区域作为轮辐。
主干的拓扑指出在区域间使用的网络路径。主干拓扑可以通过添加虚链路得到增强。这一方法为系统管理员提供了控制域间流量的方法。
选择包离开源区域的正确区域边界路由器和选择通告外部路由的路由器使用相同方法。每一区域边界路由器为本区域汇总到所有处于区域之外的网络代价。在SPF树计算之后,可以通过检查区域边界路由器汇总计算到所有域间目标的路由。