Loading

Network系列:OSPF路由器类型、LSA类型、防环、特殊区域(三)

8. OSPF路由器类型

image-20220908150800093

OSPF路由器根据其位置或功能不同,有这样几种类型:

  • 区域内路由器(Internal Router):该类路由器的所有接口都属于同一个OSPF区域。
  • 区域边界路由器ABR(Area Border Router):该类路由器的接口同时属于两个以上的区域,但至少有一个接口属于骨干区域。
  • 骨干路由器(Backbone Router):该类路由器至少有一个接口属于骨干区域。
  • 自治系统边界路由器ASBR(AS Boundary Router):该类路由器与其他AS交换路由信息。只要一台OSPF路由器引入了外部路由的信息,它就成为ASBR。

9. LSA类型

9.1 LSA的基本概念

  • LSA是OSPF进行路由计算的关键依据。
  • OSPF的LSU报文可以携带多种不同类型的LSA。
  • 各种类型的LSA拥有相同的报文头部。

image-20220914163647329

image-20220914163834253

链路状态类型、链路状态ID、通告路由器三元组唯一地标识了一个LSA。

链路状态老化时间 、链路状态序列号 、校验和用于判断LSA的新旧。


9.2 常见LSA的类型

image-20220914164137338


9.2.1 Router LSA

Router LSA(1类LSA):每台OSPF路由器都会产生。它描述了该路由器直连接口的信息。

Router LSA只能在所属的区域内泛洪。


image-20220914171638833


每条Link均包含“链路类型”、“链路ID”、“链路数据”以及“度量值”这几个关键信息。

路由器可能会采用一个或者多个Link来描述某个接口。

image-20220914171724668


Router LSA描述P2P网络

因为R1-R3之间是P2P网络,不需要DR选举,所以没有2类LSA,在1类LSA中就描述了拓扑信息和网段信息。

image-20220914171924121


Router LSA描述TransNet

在TransNet网络类型中,1类LSA只有拓扑信息,缺乏网络掩码信息,在TransNet网络中,如何完整地描述网段信息呢?在2类LSA中就会描述该网络信息。

image-20220914172305900


9.2.2 Network LSA

Network LSA(2类LSA) :由DR产生,描述本网段的链路状态,在所属的区域内传播。Network LSA 记录了该网段内所有与DR建立了邻接关系的OSPF路由器,同时携带了该网段的网络掩码。


image-20220914173241723

image-20220914173310306


Network LSA描述MA网络

image-20220914174522893


9.2.3 Network Summary LSA

Network Summary LSA(3类LSA)由ABR产生,用于向一个区域通告到达另一个区域的路由。


单区域OSPF存在的问题

  1. 一系列连续的OSPF路由器构成的网络称为OSPF域(Domain)。
  2. OSPF要求网络内的路由器同步LSDB,实现对于网络的一致认知。
  3. 当网络规模越来越大时,LSDB将变得非常臃肿,设备基于该LSDB进行路由计算,其负担也极大地增加了,此外路由器的路由表规模也变大了,这些无疑都将加大路由器的性能损耗。
  4. 当网络拓扑发生变更时,这些变更需要被扩散到整个网络,并可能引发整网的路由重计算。
  5. 单区域的设计,使得OSPF无法部署路由汇总。

解决单区域出现的问题

Router LSA和Network LSA只在区域内泛洪,因此通过区域划分在一定程度上降低网络设备的内存及CPU的消耗。


image-20220918135344120

划分区域后,路由器可以分为两种角色:

  • 区域内部路由器(Internal Router):该类设备的所有接口都属于同一个OSPF区域。如R1、R4、R5。
  • 区域边界路由器(Area Border Router):该类设备接口分别连接两个及两个以上的不同区域。如R2、R3。

区域间路由信息传递方式

image-20220918140324881

以192.168.1.0/24路由信息为例:

  1. R2依据Area 1内所泛洪的Router LSA及Network LSA计算得出192.168.1.0/24路由(区域内路由),并将该路由通过Network Summary LSA通告到Area 0。R3根据该LSA可计算出到达192.168.1.0/24的区域间路由。
  2. R3重新生成一份Network Summary LSA通告到Area 2中,至此所有OSPF区域都能学习到去192.168.1.0/24的路由。

LSA重要字段解释

image-20220918140522476

image-20220918140532527


Network Summary LSA示例

image-20220918140756844


9.2.4 ASBR-Summary LSA

ASBR-Summary LSA(4类LSA):由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。

image-20220918165222744


LSA重要字段解释

image-20220918165248060


ASBR-Summary LSA示例

image-20220918165323757

  1. 根据5类LSA的Advertising Router,R5判断5类LSA是由R1产生的,但是在R5的SPF树干中并不存在R1。
  2. 根据R3产生的4类LSA,R5将到达外部网络的下一跳路由设置为R3。

9.2.5 AS-external LSA

AS-external LSA(5类LSA):由ASBR产生,描述到达AS外部的路由,该LSA会被通告到所有的区域(除了Stub区域和NSSA区域)。

image-20220918170255065

image-20220918170320000


AS-external LSA示例

image-20220918170436222

  1. 根据5类LSA的Advertising Router,R3判断到达外部路由,需要先经过R1。
  2. R3经过区域内SPF计算,已经将R1添加到SPF树干,R3 将到达外部路由的下一跳路由器设置为R1。

9.3 总结

关于一、二类LSA

  • OSPF根据LSDB计算路由表,LSDB中可能存在多种类型的LSA,并且所有的LSA有相同的报文头部格式。
  • 同一区域的OSPF路由器拥有完全一致的LSDB。在只有一个区域的情况下,区域内部主要存在两种类型的LSA,即Router-LSA和Network-LSA。
  • 每台路由器都会产生Router-LSA,描述了路由器的直连接口信息。
  • 在MA网络中,DR会产生Network-LSA来描述接入该MA网络的所有路由器的Router-ID(其中包括DR自身),以及这个网络的掩码。

关于三类LSA

  • OSPF引入了多区域的概念,使得该协议能够支持更大规模的组网。
  • OSPF使用3类LSA来描述区域间的路由信息。
  • 为了避免出现区域间路由环路,OSPF设计了多个规则。
  • OSPF Virtual Link是一种虚拟的、逻辑的链路,被部署在两台OSPF路由器之间,它穿越某个非骨干区域,用于实现另一个非骨干区域与Area0的连接。Virtual Link应该始终作为一种临时的技术手段来解决非骨干区域没有与Area0直接相连的情况。

关于四、五类LSA

  • 在一个大规模网络中,可能存在多种不同的路由协议,OSPF支持将AS外部路由引入本AS,使得AS内的路由器能够获知到达AS外部的路由。
  • ASBR将外部路由引入OSPF后,使用5类LSA描述它们,与ASBR同属一个区域的路由器能够根据5类LSA以及区域内的1类、2类LSA完成外部路由计算;与ASBR不在同一个区域的路由器还需借助4类LSA才能完成外部路由计算。
  • OSPF将外部路由引入OSPF后,可以设置路由的度量值类型:Metric-Type-1或Metric-Type-2,不同度量值类型的外部路由,其开销的计算方式不同,其路由的优先级也不相同,Metric-Type-1路由的优先级高于Metric-Type-2路由。

OSPF路由遵循以下优先级顺序,区域内路由>区域间路由>Metric-Type-1外部路由>Metric-Type-2外部路由。


10. 路由防环机制

10.1 域间路由环路的产生

image-20220918141511166


10.2 防环机制

image-20220918141639158

  1. OSPF要求所有的非骨干区域必须与Area0直接相连,区域间路由需经由Area0中转。
  2. 区域间的路由传递不能发生在两个非骨干区域之间,这使得OSPF的区域架构在逻辑上形成了一个类似星型的拓扑。

image-20220918141724262

ABR不会将描述到达某个区域内网段路由的3类LSA再注入回该区域。


image-20220918142607955

ABR从非骨干区域收到的3类LSA不能用于区域间路由的计算。


R1和R2、R3和R4之间的链路中断导致骨干区域不连续。

  1. R4将10.0.2.2/32路由以3类LSA的形式发送到Area 1。
  2. R5和R6可以根据上述3类LSA计算出10.0.2.2/32路由。
  3. R3从非骨干区域收到3类LSA,不进行路由计算,也不会将此3类LSA发送到其他区域。
  4. 此时,R1和R3都无法和10.0.2.2/32通信。

11. 特殊区域

11.1 网络规模变大引发的问题

image-20220921090009206

OSPF路由器计算区域内、区域间、外部路由都需要依靠网络中的LSA,当网络规模变大时,设备的LSDB规模也变大,设备的路由计算变得更加吃力,造成设备性能浪费。


11.2 传输区域和末端区域

image-20220921090414316

OSPF的区域可分为两种类型:

  • 传输区域(Transit Area):除了承载本区域发起的流量和访问本区域的流量外,还承载了源IP和目的IP都不属于本区域的流量,即“穿越型流量”,如本例中的Area 0。
  • 末端区域(Stub Area):只承载本区域发起的流量和访问本区域的流量,如本例中的Area 1和Area 2。

11.3 Stub区域

image-20220921091037027

  • Stub区域的ABR不向Stub区域内传播它接收到的AS外部路由,Stub区域中路由器的LSDB、路由表规模都会大大减小。
  • 为保证Stub区域能够到达AS外部,Stub区域的ABR将生成一条缺省路由(使用3类LSA描述)。

配置Stub区域时需要注意下列几点:

  1. 骨干区域不能被配置为Stub区域。
  2. Stub区域中的所有路由器都必须将该区域配置为Stub。
  3. Stub区域内不能引入也不接收AS外部路由。
  4. 虚连接不能穿越Stub区域。

Stub区域的路由表及3类LSA

image-20220921091412585

image-20220921091445563

R1作为ASBR引入多个外部网段,如果Area 2是普通区域,则R3将向该区域注入5类和4类LSA。当把Area 2配置为Stub区域后:

  1. R3不会将五类LSA和四类LSA注入Area 2。
  2. R3向Area 2发送用于描述缺省路由的三类LSA,Area 2内的路由器虽然不知道到达AS外部的具体路由,但是可以通过该默认路由到达AS外部。

11.4 Totally Stub区域

image-20220921091913032

  • Totally Stub区域既不允许AS外部路由在本区域内传播,也不允许区域间路由在本区域内传播。
  • Totally Stub区域内的路由器通过本区域ABR下发的缺省路由(使用3类LSA描述)到达其他区域,以及AS外部。

image-20220921092342981

image-20220921092357862

  • Totally Stub区域访问其他区域及AS外部是通过默认路由实现的。
  • AS外部、其他OSPF区域的拓扑及路由变化不会导致Totally Stub区域内的路由器进行路由重计算,减少了设备性能浪费。

当Area 2配置为Totally Stub区域后:

  1. R3不会将五类LSA和四类LSA注入Area 2。
  2. R3不会将三类LSA注入Area 2,但是会向该区域注入一条使用三类LSA描述的缺省路由。
  3. R5通过缺省路由到达AS外部网络和其他OSPF区域。

Stub区域、Totally Stub区域解决了末端区域维护过大LSDB带来的问题,但对于某些特定场景,它们并不是最佳解决方案。接下来还有NSSA、Totally NSSA区域。


11.5 NSSA区域与Totally NSSA区域

Stub区域与Totally Stub区域存在的问题

image-20220921093150684

  • OSPF规定Stub区域是不能引入外部路由的,这样可以避免大量外部路由引入造成设备资源消耗。
  • 对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,Stub和Totally Stub区域就不能满足需求了。

NSSA区域与Totally NSSA区域的LSDB

image-20220921100026601

image-20220921100041020

posted @ 2023-09-18 09:44  YinJayChen  阅读(784)  评论(0编辑  收藏  举报