OSPF协议详解:11种LSA类型的功能与应用
OSPF协议详解:11种LSA类型的功能与应用
OSPF(开放最短路径优先)协议是链路状态路由协议中最常用的一种,其核心机制之一就是通过LSA(链路状态通告)来实现网络状态的同步。本文将详细介绍OSPF协议中的11种LSA类型及其功能,帮助读者深入理解OSPF的工作原理。
在上一篇文章中,我们解释了链路状态更新(LSU)数据包的目的,并分析了包含在LSU数据包中的链路状态通告(LSA)信息。我们还看到了在OSPF网络中最常见的LSA数据包。在本文中,我们将深入分析所有11种OSPF LSA类型,使用网络拓扑图和示例来帮助理解每种LSA类型何时使用以及它们如何保持OSPF网络的更新。
LSA类型 - 快速概述
在开始之前,让我们快速浏览一下我们将要讨论的不同类型的OSPF LSA数据包:
- LSA类型1:OSPF路由器LSA
- LSA类型2:OSPF网络LSA
- LSA类型3:OSPF汇总LSA
- LSA类型4:OSPF ASBR汇总LSA
- LSA类型5:OSPF ASBR外部LSA
- LSA类型6:OSPF组成员LSA
- LSA类型7:OSPF非纯区域(NSSA)外部LSA
- LSA类型8:OSPF外部属性LSA(OSPFv2)/链路本地LSA(OSPFv3)
- LSA类型9:OSPF链路范围不透明(OSPFv2)/区域内前缀LSA(OSPFv3)
- LSA类型10:OSPF区域范围不透明LSA
- LSA类型11:OSPF自治系统范围不透明LSA
下表列出了我们的OSPF系列文章:
- 第1部分:介绍、OSPF数据包结构、OSPF消息和特征。
- 第2部分:OSPF协议的工作原理和基本概念:OSPF邻居、拓扑和路由表、OSPF区域和路由器角色、理论和概述。
- 第3部分:OSPF邻接和邻居形成过程。OSPF Hello消息,通过链路状态请求(LSR和LSU)进行OSPF数据库更新。
- 第4部分:OSPF邻居状态 - OSPF邻居形成过程。
- 第5部分:分析OSPF链路状态更新(LSU)- 链路状态通告(LSA)数据包结构。常见LSA类型。
- 第6部分(本文)- OSPF LSA类型 - 每个OSPF LSA的目的和功能。
LSA负载的大小根据LSA类型及其包含的信息而变化。下图清楚地显示了LSA如何包含在LSU中:
图1. OSPF LSU数据包中包含的LSA类型
如上所述,OSPF目前支持11种类型的LSA。每种LSA都在OSPF网络的特定边界内使用。
OSPF概念,包括路由器角色,如指定路由器(DR)、区域边界路由器(ABR)、自治系统边界路由器(ASBR)、OSPF区域等,在我们的文章《OSPF基本概念 - OSPF区域 - 路由器角色》中有深入分析。本文假设读者对基本的OSPF理论有很好的理解,并熟悉OSPF概念。
LSA类型1 - OSPF路由器LSA
LSA类型1(路由器LSA)数据包在同一个区域内的路由器之间发送,不会离开该区域。一个OSPF路由器使用LSA类型1数据包描述其自身的接口,同时也携带有关其邻居的信息,向同一区域内的相邻路由器发送。
图2. 同一区域内OSPF路由器之间交换的LSA类型1数据包
LSA类型2 - OSPF网络LSA
LSA类型2(网络LSA)数据包由指定路由器(DR)生成,用于描述直接连接到其段的所有路由器。LSA类型2数据包在同一个区域的邻居之间泛洪,并保留在该区域。
图3. OSPF DR和邻居路由器之间交换的LSA类型2数据包
LSA类型3 - OSPF汇总LSA
LSA类型3(汇总LSA)数据包由区域边界路由器(ABR)生成,用于汇总其直接连接的区域,并使用汇总前缀(例如192.168.0.0/22)向其连接的其他区域广告跨区域路由器信息。LSA类型3数据包在整个网络的多个区域中泛洪,有助于使用汇总前缀的OSPF可扩展性。
图4. OSPF ABR路由器向区域0广告汇总路由192.168.2.0/24
查看上图,ABR路由器R2创建一个类型3汇总LSA并将其泛洪到区域0。类似地,ABR路由器R3创建一个类型3汇总LSA并将其泛洪到区域2。类型3汇总LSA在路由器路由表中显示为O IA条目。
LSA类型4 - OSPF ASBR汇总LSA
LSA类型4(ASBR汇总LSA)数据包是用于广告自治系统边界路由器(ASBR)存在的LSA。在下面的示例中,当R2(ABR)从R1接收LSA类型1数据包时,它将创建一个LSA类型4(汇总ASBR LSA)数据包,该数据包广告从区域1接收到的ASBR路由,并将其注入到区域0。
图5. 由R2 ABR和R3 ABR注入到区域0和2的LSA类型4数据包
虽然LSA类型4数据包由ABR用于在它们的区域中广告ASBR路由,但它不会由ASBR本身在其本地区域(区域1)中使用;ASBR使用LSA类型1向其邻居(在这种情况下为R2)通知其网络中的邻居。
LSA类型5 - OSPF ASBR外部LSA
LSA类型5(ASBR外部LSA)数据包由ASBR生成,用于将外部重分布路由广告到OSPF的AS中。一个典型的LSA类型5示例是外部前缀,例如192.168.10.0/24或默认路由(互联网),如下所示:
图6. LSA类型5数据包向所有OSPF路由器广告默认路由
此外部路由/前缀由ASBR(R1)重分布到OSPF网络中,并在其他OSPF路由器的路由表中显示为O E1或E2条目。
LSA类型6 - OSPF组成员LSA
LSA类型6(组成员LSA)数据包是为组播OSPF(MOSPF)设计的,这是一种支持通过OSPF进行组播路由的协议。MOSPF不被思科支持,使用也不广泛,预计很快就会被淘汰。
LSA类型7 - OSPF非纯区域(NSSA)外部LSA
LSA类型7(NSSA外部LSA)数据包用于一些特殊区域类型,这些区域不允许外部重分布路由通过,因此阻止LSA类型5数据包通过它们泛洪。LSA类型7数据包充当LSA类型5数据包的掩码,允许它们通过这些特殊区域并到达能够将LSA类型7数据包转换回LSA类型5数据包的ABR。
图7. LSA类型7数据包通过NSSA传递并在ABR处转换为LSA类型5
在上面的示例中,ABR R2将LSA类型7转换为LSA类型5并将其泛洪到OSPF网络中。
LSA类型8 - OSPF外部属性LSA(OSPFv2)/链路本地LSA(OSPFv3)
LSA类型8数据包(外部属性LSA - OSPFv2 - /链路本地LSA - OSPFv3 -)在OSPFv2(IPv4)中称为外部属性LSA,用于在OSPF网络中传输BGP属性,而BGP目的地通过LSA类型5数据包传达,然而,这个功能不被大多数路由器支持。对于OSPFv3 IPv6),LSA类型8被重新定义为通过OSPF网络承载IPv6信息。
LSA类型9、10和11
通常,不透明LSA(LSA类型9、10和11)用于扩展OSPF的能力,允许协议携带OSPF不一定关心的信息。不透明LSA的实际应用是在MPLS流量工程中,它们用于通信接口参数,如最大带宽、未预留带宽等。以下是这三个不透明LSA的简要分析。
LSA类型9 - OSPF链路范围不透明(OSPFv2)/区域内前缀LSA(OSPFv3)
LSA类型9在OSPFv2(IPv4)中定义为链路范围不透明LSA,用于承载OSPF信息。对于OSPFv3,它被重新定义为处理称为Stub区域的特殊区域类型的通信前缀。
LSA类型10 - OSPF区域范围不透明LSA
LSA类型10数据包用于在其他区域路由器之间泛洪OSPF信息,即使这些路由器不处理此信息,以扩展OSPF功能。此LSA用于流量工程,以广告MPLS和其他协议。
LSA类型11 - OSPF自治系统范围不透明LSA
LSA类型11数据包与LSA类型10数据包具有相同的目的,但不会泛洪到特殊区域类型(Stub区域)。
总结
在本文中,我们分析了所有11种OSPF LSA数据包类型并解释了它们的目的。我们还分析了LSA数据包的结构,并使用网络拓扑图帮助说明LSA数据包如何在路由器和OSPF区域之间流动。要了解更多高质量的OSPF文章,请访问我们的OSPF部分。
本文原文来自firewall.cx