OSPF特征
OSPF(Open Shortest Path First,开发最短链路优先)作为一种内部网关协议(Interior Gateway Protocl,IGP),用于在同一个自治系统(AS)中的路由器之间交换路由信息。OSPF的特征如下:
- 收敛速度快,适应规模较大的网络
- 是无类别的路由协议,支持不连续子网、VLSM和CIDR以及手工路由汇总。
- 支持等价负载均衡
- 支持区域划分,构成结构化的网络,提供路由分级管理,从而使得SPF的计算频率更低,链路状态数据库和路由表更小,链路状态更新的开销更低,同时可以将不稳定的网络限制在特定的区域。
- 支持简单的口令和MD5验证。
- 采用触发更新,无路由环路,平且可以使用路由标记(Tag)对外部路由进行跟踪,便于监控和控制。
- OSPF路由协议的管理距离是110
- OSPF路由协议采用开销(Cost)作为度量标准
- OSPF维护邻居表(邻接数据库)、拓扑表(链路状态数据库)和路由表(转发数据库)
- 为了确保LSDB(链路状态数据库)同步,OSPF每隔30分钟进行一次链路状态刷新。
OSPF术语
- 链路:路由器上的一个接口。
- 链路状态:有关各条链路的状态的信息,用来描述路由器接口及其与邻居路由器的关系,这些信息包括接口的IP地址和子网掩码、网络类型、链路的开销以及链路上的所有相邻路由器。所有链路状态信息构成链路状态数据库。
- 区域:共享链路状态信息的一组路由器。在同一个区域内路由器有相同的链路状态数据库。
- 自治系统:采用同一种路由协议交换路由信息的路由器及其网络构成一个自治系统。
- 链路状态通告(LSA)和链路状态更新(LSU):LSA用来描述路由器和链路的状态,LSA包括的信息有路由器接口的状态和所形成的邻接状态;LSU可以包含一个或多个LSA。
- 最短路径优先(SPF)算法:是OSPF路由协议的基础。SPF算法也被称文Dijkstra算法,这是因为最短路径优先算法(SPF)是Dijkstra发明的。OSPF路由器利用SPF独立地计算出到达目标网络的最佳路由。
- 邻居关系:如果两台路由器共享出一条公共数据链路,并且能够协商Hello数据包中所指定的某些参数,它们就形成邻居关系。
- 邻接关系:相互交换LSA的OSPF的邻居建立的关系,一般说,在点到点、点到多点的网络上邻居路由器都能形成邻接关系,而在广播多路访问和NBMA网络上,要选举DR和BDR,DR和BDR路由器与所有的邻居路由器形成邻接关系,但是DRother路由器之间不能形成邻接关系,只能形成邻居关系。
- 指定路由器(Designated Router,DR)和备份指定路由器(Backup Designated Router,BDR):为了避免路由器之间建立完全邻接关系而引起的大量开销,OSPF要求在多路访问的网络中选举一个DR,每个路由器都与之建立邻接关系。选举DR的同时也选举一个BDR,当DR失效时,BD担负起DR的职责,而且所有其他路由器只能与DR和BDR建立邻接关系。
OSPF路由器类型
当一个AS划分成几个OSPF区域时,根据一个路由器在相应的区域的作用,可以将OSPF路由器作如下分类
- 内部路由器:OSPF路由器上所有直连的链路都处于同一个区域。
- 主干路由器:具有连接区域0接口的路由器
- 区域边界路由器(ABR):路由器于多个区域相连,对于连接的每个区域,路由器都有一个独立的链路状态数据库。cisco建议每台路由器所属区域最多不要超过3个。
- 自治系统边界路由器(ASBR):于·AS外部路由器相连并互相交换路由信息。同一台路由器可能属于多种类型,比如,可能即是ABR,同时又是ASBR。
OSPF LSA 类型
一台路由器中所有有效的LSA通告都被存放在它的链路状态数据库中,正确的LSA通告可以描述一个OSPF区域的网络拓扑结构。OSPFv2中中常见的LSA有六类,相应的描述如下表所示:
类型代码 | 名称及路由代码 | 描述 |
1 | 路由器LSA(O) | 所有的OSPF路由器都会产生这种LSA,用于描述路由器上连接到某一个区域的链路或某一接口的状态信息,该LSA只在区域内扩散,而不会开始值至其他区域。链路状态ID为本路由器ID |
2 | 网络LSA(O) | 由DR产生,用来描述一个多路访问网络和与之相连的所有路由器,只会在包含DR所属的多路访问网络的区域中扩散,不会扩散至其他OSPF区域区域。链路状态ID为DR接口的IP地址 |
3 | 网络汇总LSA(OIA) | 由ABR产生,它将一个区域内的网络通告给OSPF自治系统中其他区域,这些条目通过主干区域被扩散到其他的ABR,链路状态ID为目标网络的地址 |
4 | ASBR汇总LSA(OIA) | 由ABR产生,描述到ASBR的可达性,由主干区域发送到其他ABR,链路状态ID为ASBR路由器ID |
5 | 外部LSA(OEI或E2) | 由ASBR产生,含由关于自治系统外的链路信息,链路状态ID为外部网络地址 |
7 | NSSA外部LSA(ON1或N2) | 由ASBR产生的关于NSSA的信息,可以在NSSA区域内扩散,ABR可以将类型7的LSA转换为类型5的LSA,链路状态ID为外部ID为ID为外部网络的地址 |
OSPF 区域类型
OSPF区域采用两级结构,一个区域所设置的特性控制着它所能接收到的链路状态信息的类型。区分不同OSPF区域类型的关键在于它们对于区域外部路由的处理方式。OSPF区域类型如下所述:
- 标准区域:可以接收链路更新信息以及相同区域的路由、区域间路由和外部AS的路由信息。标准区域通常与区域0连接。
- 主干区域:连接各个区域的中心实体,可以快速高效地传输IP数据包,其他区域都要连接到区域交换路由信息。主干区域也交区域0。
- 末节区域(Stub Area):不接收外部自治系统的路由信息。
- 完全末节区域(totally Stubby Area):它不接收外部自治系统的路由信息及自治系统内部其他区域的路由汇总信息,完全末节区域是cisco专有的特性。
- 次末节区域(Not-So-Stubby Area,NSSA):允许接收以7类LSA发送的外部路由信息,并且ABR要负责把类型7的LSA转换成类型5的LSA。