OSPF详解-2 区域结构

在小型网络中,路由器链路构成的结构并不复杂,很容易确定前往各个目的地的路径。然而,在大型网络中,路由器链路组成的结构极其复杂,前往每个目的地的潜在路径为数众多。因此对所有可能路由进行比较的SPF算法非常复杂,需要很长时间。

一、区域扩大的问题

OSPF区域扩大的问题

1)最短路径优先(SPF)算法的频繁计算:在大型网络中,变化是不可避免的,路由器将大量的CPU周期用来重新计算SPF算法和更新路由表。

2)路由表庞大:默认情况下,OSPF不进行路由汇总,这样路由表可能非常大,这取决于网络的规模。

3)链路状态数据库(LSDB)庞大:LSDB包含有关整个网络的拓扑信息,每台路由器都需要保存前往其所在区域中每个网络的路由,虽然并非所有这些路由都将加入到路由表中。

二、解决OSPF区域扩大的方式

1.减少SPF计算量

链路状态路由协议通常将网络划分成区域如下图所示,以减少SPF算法的计算量。区域内的路由器数量以及在区域内扩散的LSA数量较少,这一位置区域内的LSDB(拓扑数据库)较小。其结果是,SPF算法的计算量更小,需要的时间更短。在这种情况下,仍可进行区域间路由选择,但很多内部路由操作(如SPF计算)实在各个区域内进行的。例如,如果区域1存储链路时好时坏的问题,不会导致其他区域内的路由器不断运行SPF算法,因为它们不受区域1内这种问题的影响。

OSPF多区域

2.OSPF多区域优点

在使用了正确的IP编址层次结构和OSPF配置的情况下,使用多个OSPF区域具有下述重要优点。

OSPF多区域优点

1)SPF计算频率更低:详细的路由信息被限制在区域内,因此无需将所有链路状态的变化扩散到其他区域。这样,当网络拓扑发生变化时,只有受影响的路由器需要重新计算SPF,从而将影响限制在当前区域内。

2)路由表更小:使用很多这个区域时,前往区域内具体网络的路由被限制在区域内。可对路由进行配置,使其将这些细路由打包成汇总信息(细路由LSA1、LSA2,汇总信息LSA3),而不是将它们直接通告到其他区域。通过通告汇总信息,可减少区域间传播的LSA,同时确保所有的网络是可达的。

注意:LSA1和LSA2在跨区域的时候打包为LSA3而减少LSA条目,这里的汇总信息指的是LSA3在思科官方文档中称为Summary LSA。

3)降低了链路状态更新(LSU)开销:LSU可包含多种类型的LSA,其中包括链路状态信息和摘要信息。路由器在区域间通告一条路由或少量路由,而不发送针对区域内每个网络的LSU,从而降低在区域间传输LSU的开销。

三、OPSF的两层次区域结构

1.骨干区域和非骨干区域

OSPF两层次区域

1)骨干区域:主要功能为快速、高效地传输IP分组的OSPF区域。骨干区域将其他类型的OSPF区域连接起来,通常没有终端用户。骨干区域也叫OSPF区域0,它是网络核心,其他区域都与它直接相连。

注意:在一些CISCO文档中,将骨干区域称为中转区域。然而在OSPF RFC中,中转区域是一个与虚链路相关的术语。虚链路在后续的文章中介绍。

2)常规(非骨干)区域:主要功能为连接用户和资源的OSPF区域。常规区域通常是根据职能或地理位置划分的。默认情况下,常规区域不允许另一个区域使用其连接将数据流传输到其他区域。默认情况下,来自其他区域的所有数据流都必须经过骨干区域0.常规区域又分为几类,包括标准区域、末节区域、完全末节区域和次末节区域(NSSA)和绝对末节NSSA。文章后续的文章中介绍这些区域类型。

OSPF采用严格的两层区域结构。网络的底层物理连接必须与两层区域结构匹配,即所有非骨干区域都直接与区域0相连。

2.分区域后SPF的特点

使用链路状态路由协议时,所有路由器都必须保存一个LSDB。OSPF路由器及其连接的链路越多,LSDB将越大。在所有的路由器中保存所有信息有它的优点,但这种方法在大型网络中没有可扩展性。区域概念是一种折衷:区域内的路由器保存该区域中所有链路和路由器的详细信息,可以将OSPF配置成只保存有关其他区域中路由器和链路的摘要信息。

正确配置OSPF后,当路由器或链路出现故障时,相应的信息只会被扩散到当前区域中的路由器,区域外的路由器不会受到这种信息。通过采用层次结构并控制区域内的路由器数量,OSPF自治系统(AS)可扩展到非常大。

正如前面指出的,OSPF区域必须构成层次结构,这意味着所有区域都必须与区域0相连。在下图中,区域1中的路由器不能与区域2或3中的路由器直接相连。区域之间传输的数据流必须经过骨干区域0。每个区域包含多少台路由器最合适呢?这随着诸如网络稳定性等因素而异,Cisco的建议如下:

1)每个区域包含的路由器数量不应超过50台;

2)每台路由器所属的区域最多不要超过3个。

这些推荐值旨在避免OSPF计算让路由器不堪重负。当然,网络设计和链路稳定性也会影响路由器的负载。

3.OSPF路由器的角色

OSPF路由器的类型决定了什么样的数据流能够进入和离开区域。下面是4种路由器类型如下图。

OSPF的路由器类型

1)内部路由器:所有接口都位于同一个区域中的路由器,同一个区域中所有内部路由器的LSDB都相同。

2)骨干路由器:位于骨干区域0边缘的路由器,至少有一个接口与区域0相连。骨干路由器在维护OSPF路由信息时采用的步骤和算法与内部路由器相同。

3)区域边界路由器(ABR):连接多个区域的路由器,为其连接的每个区域维护一个LSDB,并路由器前往/来自其他区域的数据流。ABR将区域0连接到非骨干区域,因此是区域的出口,这意味着前往其他区域的路由信息必须经过当前区域的ABR。ABR将这些路由选择信息通告给骨干,骨干路由器再将其转发给其他的ABR。只能在ABR对其连接的区域的地址进行汇总(对其连接的区域的LSDB种的路由选择信息进行汇总)。ABR分离LSA泛洪区,还可能提供默认路由。一个区域肯能有一台或多台ABR。

理想的设计是只让每个ABR连接两个区域:骨干区域和另一个区域。正如前面指出的,建议ABR最多不要连接3个以上的区域。

4)自治系统边界路由器(ASBR):至少有一个接口与其他域(如另一个OSPF自治区域系统或使用其他网络协议的域)相连。OSPF自治系统由所有OSPF区域及其中的路由器组成。ASBR可将外部路由重分发到OSPF域中,反之亦然。

注意:同一台路由器可属于多种类型。例如,如果路由器同时连接区域0、区域1和一个非OSPF网络,则它既是ABR又是ASBR。

对于它连接的每个区域,路由器都有一个独立的LSDB。因此,ABR有两个LSDB,一个针对的是区域0,另一个针对的是它连接的非骨干区域。属于同一区域的两台路由器中针对该区域的LSDB相同。两台路由器之间建立邻接关系后,它们的LSDB将是同步的,这将在下篇文章中介绍。

原文地址:http://blog.51cto.com/zxteach/2124994

时间: 2024-10-29 00:32:45

OSPF详解-2 区域结构的相关文章

OSPF详解二之OSPF邻接关系剖析

OSPF邻接关系建立过程剖析 在OSPF网络中,为了交换路由信息,邻居设备之间首先要建立邻接关系,邻居(Neighbors)关系和邻接(Adjacencies)关系是两个不同的概念. 邻居关系:OSPF设备启动后,会通过OSPF接口向外发送Hello报文,收到Hello报文的OSPF设备会检查报文中所定义的参数,如果双方一致就会形成邻居关系,两端设备互为邻居. 邻接关系:形成邻居关系后,如果两端设备成功交换DD报文和LSA,才建立邻接关系. OSPF状态机 OSPF共有8种状态机,分别是:Dow

Spring IOC源码详解之总体结构

Spring ICO详解之总体结构 IOC介绍 IOC, spring的核心,贯穿Spring始终.直观的来说,就是由spring来负责控制对象的生命周期和对象间的关系,将对象之间的关系抽象出来,通过spring容器控制对象生成时机,减少对象之间的耦合度. 开启Spring IOC源码学习 SpringIOC 的主要依赖源码是 spring-beans 和 spring-context两个包.前面文章中曾今讲到了如何编译spring源码,接下来将maven后的工程导入eclipse里面. 一.s

OSPF详解之三:OSPF LSA详解

OSPF LSA详解 OSPF V2版本中常用的主要有6类LSA,分别是Router-LSA.Network-LSA.Network-summary-LSA.ASBR-summary-LSA.AS-External-LSA.NSSA-LSA,接下来我将一步一步为大家解析. Type 1:Router-LSA 每个设备都会产生,描述了设备的链路状态和开销,在所属的区域内传播. 谈到1类LSA,大家必然会想到它的链路类型,链路类型分为4类:P2P.Stub.Transit.Vritual link.

Java虚拟机详解02----JVM内存结构

主要内容如下: JVM启动流程 JVM基本结构 内存模型 编译和解释运行的概念 一.JVM启动流程: JVM启动时,是由java命令/javaw命令来启动的. 二.JVM基本结构: JVM基本结构图: <深入理解Java虚拟机(第二版)>中的描述是下面这个样子的: Java中的内存分配: Java程序在运行时,需要在内存中的分配空间.为了提高运算效率,就对数据进行了不同空间的划分,因为每一片区域都有特定的处理数据方式和内存管理方式. 具体划分为如下5个内存空间:(非常重要) 栈:存放局部变量

详解Oracle存储结构 掌握基本操作管理

2018.10.14那天我写了Oracle12C 的安装并初步了解了一下Oracle体系结构中数据库和实例.从中我们知道: 数据库是磁盘上数据的集合,位于收集和维护相关信息的数据库服务器上的一个或多个文件中.数据库由各种物理和逻辑结构组成,而表则是数据库中最重要的逻辑结构.表由包含数据的相关行和列组成. 组成数据库的文件主要分为两类:数据库文件和非数据库文件.两者之间的区别在于存储何种数据.数据库文件包含数据和元数据,非数据库文件则包含初始参数和日志记录信息等.数据库文件对于每时每刻正在进行的数

PE详解之IMAGE_DOS_HEADER结构定义即各个属性的作用(PE详解01)

小甲鱼在这里为大家做好了详细的注释,免得大家一头雾水,另外可以结合小甲鱼<加密系列>-系统篇-PE结构详解视频教程学习~若有纰漏之处还望大家不吝指正. (视频教程:http://fishc.com/a/shipin/jiemixilie/) (注:最左边是文件头的偏移量.) IMAGE_DOS_HEADER STRUCT { +0h WORD e_magic   // Magic DOS signature MZ(4Dh 5Ah)     DOS可执行文件标记 +2h   WORD  e_cb

OSPF详解

OSPF绝对无环的原因:SPT生成一张地图,将整张拓扑记录下来 初始化配置 检查是否配置完成,通过检查三张表"路由表"."邻居表"."拓扑表" 路由认证 跟前面学习的认证过程有些区别,没有所谓的key chain等信息 链路认证 在接口下开启认证 在R1-R2之间建立一个基本的认证,其实这个也是没办法建立邻居的原因之一 区域认证 在进程下开启认证 在同一个区域里面的密码是共享的,配置起来跟链路认证没啥区别 完整过程 注意: 不同接口的密钥可以不同

详解HTML5网页结构

HTML5的网页结构 <!DOCTYPE html><html><head> <meta charset="UTF-8"> <title></title></head><body> <header>...</header> <nav>...</nav> <article>...</article> <section

OSPF详解-3 邻接、度量值

**一.OSPF邻接关系 运行链路状态路由协议的路由器必须首先与选定的邻居路由器建立邻接关系,这是通过与邻居路由器交换Hello分组来实现的. 1.邻接路由器建立步骤 路由器建立邻接关系的步骤如下: 1)路由器将Hello分组发送给邻居路由器,并接收来自邻居路由器的Hello分组.Hello分组的目标地址通常是组播地址. 2)路由器通过交换Hello分组来获悉协议特定的参数,如检查邻居是否位于同一个区域中,Hello间隔是否相等.交换完Hello分组后,路由器宣称邻居处于正常运行状态. 3)两台