O S P F快速收敛的一个要害原因是它使用了区。I E T F使用O S P F想达到的两个主要目标是:改善网络的可扩展性和 快速收敛。
取得两个目标的要害是把网络分成更小的区。一个区是一些网络端系统、路由器以及传输线路的集合体。每个区由一个惟一的区号定义,这个区号配置在每一个路由器内。定义了相同区号的路由器接口成为相同区的组成部分。理想情况下,这些区号不是任意定义的。相反,应该选择区的边界以使不同区之间的流量最小。每个区应反映实际的交通模式而非地理或政治边界。当然,这是理论上的理想情况,在特定环境下可能是不实用的。
O S P F网络中能支持的区数量受限于区I D的大小。这个域是3 2位的二进制数。因此, 3 2位二进制数的理论最大值应是每一位置为1,其对应的十进制数为4 294 967 295。显然,能支持的实际最大数比这个理论上的最大数小得多。实际上,网络设计的好坏将决定能在其中支持的最大区数。图1显示了一个相当简单的O S P F网络,其中只有3个区,编号为0、1和2。
1. 路由器类型
需要重点记住的是O S P F是一个链路-状态协议。因此,链路以及与链路相接的路由器端口定义为区号。基于区成员关系,O S P F网络中有三种不同类型的路由器:内部路由器、区边界路由器和骨干路由器。图2使用图1给出的网络图来标识三种不同类型的路由器。
图1 具有3个区的小型OSPF网络
图2 OSPF网络中的区边界路由器、内部路由器、骨干路由器
图2所示,具有多个接口的路由器可以属于两个或多个区。这样的路由器成为区边界路由器。也就是说,它们把自身的区号与骨干互联起来。骨干路由器是至少有一个接口定义为属于区0的路由器。一个区边界路由器也可能是一个骨干路由器。任何一个与区0互联的区边界路由器也将成为骨干路由器。内部路由器使其所有定义接口属于同一区,但这个区不是0区。使用这三种基本的路由器,可以建造高效且可扩展的O S P F网络。
2. 路由类型
考虑图2中显示的三种不同类型的O S P F路由器,需要重点注重的是O S P F支持两种不同类型的路由:区内路由和区间路由。
它们的名字含义相当明显。区内路由是自含的,只限于一个区内部的路由器之间的路由。使用显示在图1 3 - 1中的例子网络,图 3给出了O S P F网络内中的区内通信。
区间路由需要在不同的区之间交换数据。所有的区间路由必须经过区0传输,不答应非0区直接和其他区通信。这个层次限制确保了O S P F具有良好的可扩展性,而不会导致链路和路由器的混乱。图4显示了恰当地使用区0能使O S P F网络中的区间通信轻易进行。
图3 OSPF网络中的区内通信
图4 OSPF网络中的区间路由
前面的例子显示了在高层,一个O S P F网络中通信是如何工作的。然而, O S P F也能用于在O S P F网络之间交流路由信息,而不仅仅在一个网络的区之间。下面将讨论O S P F的这一用法。
3. 网络之间路由
O S P F可以用于互联不同的网络。这个网络可以是另一个完整的O S P F网络或是一个实现了完全不同路由协议的网络。把O S P F网络与其他不同的路由协议相互联是一项复杂的工作,并要使用一种称为路由再分配的技术。这个术语描述了从一个网络到另一个网络路由信息的汇总和重新分布。从非O S P F网络来的路由信息汇总和重新分布到O S P F网络内。
O S P F网络把所有以这种方式学习来的路由标记为外部的。互联两个不同的O S P F网络更简单一些,因为无需把一种路由信息耗费转变为另一协议能理解的形式。而且, O S P F使建造自治系统成为可能,一个自治系统( A S )是一个自含网络。字面上讲,A S是一个网络治理员或一组网络治理员使用一个路由协议的系统。
A S的实际定义有些不固定。这其实没有关系。真正重要的是O S P F答应为一个网络分配自治系统号。一个非常大的O S P F网络能分成两个或多个自治系统。这些系统可以通过第四种类型的O S P F路由器—自治系统边界路由器(autonomous system border router ASBR)来进行互联。A S B R汇总所有自身A S的路由信息并把汇总情况转发给对应相邻的A S B R。A S B R的作用非常类似于一个区边界路由器。显然,二者的区别是它们组成了自治系统之间的边界而不是一个自治系统或网络内的区边界。图5显示了利用A S B R进行自治系统互联的情形。
图5 互联OSPF自治系统