Stub区域算法
STUB区域就是一个对区域概念的最典型的应用。STUB区域的设计思想在于:在划分了区域以后,非骨干区域中的路由器对于区域外的路由,必定要经过ABR(区域边界路由器)来转发,或者说对于区域内的路由器来讲ABR是一个通往外部世界的必经之路。既然如此,对于区域内的路由器来讲,就没有必要知道通往外部世界的详细的路由了,代之以由ABR向该区域发布一条缺省路由来指导报文的发送。这样在区域内的路由器中就只有为数很少的区域内路由和一条指向ABR的缺省路由。并且不管区域外的路由如何变化,都不会影响到区域内路由器的路由表。因为区域内的路由器一般是由一些处理能力有限的低端路由器组成,因此处于STUB区域内的这些低端设备既不须要保存庞大的路由表,也不须要常常性的进行路由计算。有了STUB属性以后,网络的规划更符合实际的设备特色。
服务器
以上描述的只是STUB区域的设计思想,在协议文本中,对STUB区域的精肯定义是:STUB区域必定是非骨干区域和非转换区域(能够配置虚链接的区域),而且在该区域中不可传递Type 5类型的LSA。因为OSPF是链路状态算法的路由协议,LSA就是用来描述网络拓扑结构的一种数据结构。在OSPF中将LSA分为5类:type一、2两种用来描述区域内的路由信息;type3用来描述区域间的路由信息;type四、5用来描述自治系统外部的路由信息。由于协议的设计者认为路由表中的绝大部分路由均是来自自治系统外部的引入的路由。
网络
须要注意的是定义中对于过滤TYPE5类型的LSA使用的描述语言是“不可传递”,这就意味着不只区域外的ASE(自治系统外部)路由没法传递到STUB区域中,同时STUB区域内部的ASE路由也没法传递到本区域以外。换一句更通俗的话来描述:STUB区域内的路由器都不可引入任何外部的路由(包括静态路由)。这样的定义未免太过严厉了。由于在实际的组网中,并非全部的设备都会运行OSPF协议。例如:用户拨号上网时使用的接入服务器就须要链接路由器上因特网,但一般接入服务器上并不支持(也不须要)OSPF协议,而是经过配置静态路由实现路由功能。不少时候ISP为了保密或易于管理的须要,在链接用户侧的路由器时使用静态路由。总之:在一个网络中全部的路由器上都配置OSPF,而不使用静态路由的状况几乎是不存在的。——也就是说STUB区域的适用条件也是不存在的数据结构
NSSA区域并发
STUB区域虽然为合理的规划网络描绘了美好的前景,但她在实际的组网中又不具有可操做性,未免遗憾。但此时的OSPF协议已经基本成型,不可能再作大的修改。为了弥补缺陷,协议设计者提出了一种新的概念NSSA,而且做为OSPF协议的一种扩展属性单独在RFC 1587中描述。
ide
NSSA须要完成以下任务:spa
自治系统外的ASE路由不能够进入到NSSA区域中,可是NSSA区域内的路由器引入的ASE路由能够在NSSA中传播并发送到区域以外。即:取消了STUB关于ASE的双向传播的限制(区域外的进不来,区域里的也出不去),改成单向限制(区域外的进不来,区域里的能出去)。
因为是做为OSPF标准协议的一种扩展属性,应尽可能减小与不支持该属性的路由器协调工做时的冲突和兼容性问题。为了解决ASE单向传递的问题,NSSA中从新定义了一种LSA——Type 7类型的LSA,做为区域内的路由器引入外部路由时使用,该类型的LSA除了类型标识与Type 5不相同以外,其它内容基本同样。这样区域内的路由器就能够经过LSA的类型来判断是否该路由来自本区域内。但因为Type 7类的LSA是
新定义的,对于不支持NSSA属性的路由器没法识别,因此协议规定:在NSSA的ABR上将NSSA内部产生的Type 7类型的LSA转化为Type 5类型的LSA再发布出去,并同时更改LSA的发布者为ABR本身。这样NSSA区域外的路由器就能够彻底不用支持该属性。从上述描述能够看出:在NSSA区域内的全部路由器必须支持该属性(包括NSSA的ABR),而自治系统中的其余路由器则不须要。因为NSSA是由STUB区域的概念改进得来,因此她的名字叫作:"not-so-stubby" area ,本意是:不是那么STUB的区域。设计