一、引言
RIP协议使用矢量距离算法在网关和主机中传播路由信息,其最大的优点就
是简单。RIP通过限制从源地址到目的地址路径上的跳数,有效防止了路由选择循环的无限延续,从而保证了网络的稳定性。然而随着Internet规模的不断扩大,RIP协议的缺点就更加严重。首先就是RIP限制了网络的规模,它能使用的最大距离为15(16为不可达);其次路由器之间交换的完整路由信息开销太大。最后,“坏消息传播得慢”,使许多更新过程的收敛时间过长。
开放最短路径优先OSPF(Open Shortest Path First)使用链路状态算法来传播选路信息,它使用SPF算法(Dijkstra算法)。其要点如下:
1、所有的路由器都维持一个链路状态数据库,只有可达邻站的链路状态信
息才存入链路状态数据库,这个数据库实际上就是整个互连网的拓扑结构图。而使用RIP协议的路由器只各自知道到所有目的网络的下一站路由器,但却不知道全网的拓扑结构。
2、OSPF让每一个链路状态都带上一个32bit的序号(增长的速率不得超过每5秒1次),序号越大状态越新。每一个路由器用链路状态数据库中的数据,算出自己的路由表。
3、要网络拓扑发生任何变化,链路状态数据库就能很快地进行更新,使各
个路由器能够重新计算出新的路由表。
4、OSPF依靠各路由器之间的频繁交换信息来建立链路状态数据库,并维持这数据库在全网范围内的一致性(链路状态数据库的同步)。
5、OSPF不象RIP使用运输层的用户数据报UDP进行传送,而是直接用IP
数据报传送,并且数据报很短。(图1)
IP数据报首部(20字节)
OSPF报文首部(24字节)
类型1至5的OSPF报文
图1 OSPF使用IP数据报传送由于一个路由器的链路状态只涉及到与相邻路由器的连通状态,因而与整个互连网的规模无关。
二、基本概念
1、链路状态:所谓一个路由器的“链路状态”就是该路由器都和哪些网
络或路由器相邻,以及将数据发往这些网络或路由器所需的费用。
2、自治系统:一般简称为AS。一个自治系统是一个互连网络,其最重要的特点是它有权自主地决定在本系统内应采用何种路由选择协议。
3、内部网关协议IGP:即在一个自治系统内部使用的路由选择协议。
4、区域:OSPF允许进一步地将互连网划分成一些区域。每个区域都包含一
组相邻的网络及所连接的主机,每个网关都必须被放置在其中的一个区域中。每一区域内的拓扑结构对区域外是不可见的。由于保持了区域拓扑的独立性,因此路由选择交换信息量比AS未被分隔时小。带有多个接口的路由器可加入到多个区域,这些所谓的区域边界路由器为每个区域维护一个单独的拓扑数据库。
5、链路状态数据库:是与路由器相关的网络的整体结构图,它包含从同一
区域中所有路由器接收的LSA(链路状态通告:包含有关链路接口、所用计量标准及其他变量信息)。
6、OSPF主干:负责在两个区域之间发送路由选择信息,它由区域边界路由
器、跨区域网络及与其连接的路由器组成。运行OSPF的AS边界路由器通过外部网关协议或配置信息了解外部路由。
7、指定的路由器:如果某个网络上接有N个网关,则它们可形成N(N-1)/2个可能的邻接。每当某个网关传送一个报文时,它会向所有N-1个邻接网关发送该报文,因而共传送(N-1)?个链路状态。当指定一个网关作为指定路由器后,每个网关都变得与指定路由器有邻接关系,而与其它网关不存在邻接关系,与特定网络相连的N个网关之间仅有N-1个邻接,传送的信息量大为减少。指定路由器的另一项任务是为该网络发送链路状态通告,传送链路状态更新数据。
8、后备指定路由器:当多重接入网络上的网关没有选出指定路由器的时候,后备指定路由器成为指定路由器,再在余下的网关中选出新的后备指定路由器。此时N个网关之间可能有2N-3个邻接关系。
三、OSPF分组格式
版本号(1)
类型(1)
数据分组长度(2)
路由器ID(4)
区域ID(4)
校验和(2)
鉴别类型(2)
鉴别(8)
数据(可变)
图2 OSPF分组格式各字段含义如下(图2):
版本号字段:给出了OSPF的版本。
类型字段:OSPF共