一、概述
前面路由基础学习了路由的类型可以按照动静态路由分类,静态路由就是直连和手动配置的路由,而动态路由协议是各路由器相互动态学习的一种路由协议,现在常用的有OSPF和ISIS路由协议,前面在基础篇我们也已经对OSPF有一个简单的了解了,现在开始继续深入地学习。
参考文章:OSPF路由协议基础
二、动态路由协议
协议是什么?在网络领域我认为是设备间遵循的一种规则,比如相互连接的设备必须要RID,需要通告路由,路由的格式等等,就是在一个范围内的设备统一的标准,基于这些标准能够实现设备间信息传递。
动态路由协议是一种用于路由器之间交换路由信息的机制,它允许路由器动态地生成和维护路由表,以决定数据传输的最佳路径。当网络拓扑结构发生变化时,动态路由协议能够自动更新路由表,以适应网络状态的变化。
OSPF就属于动态的链路状态路由协议,以及OSPF的标准和SPF算法进行路由传递,邻居的维护等。
三、OSPF概述
OSPF(Open Shortest Path First,开放式最短路径优先)是典型的链路状态路由协议,是目前业内使用非常广泛的IGP协议之一。目前针对IPv4协议使用的是OSPF Version 2(RFC2328);针对IPv6协议使用OSPF Version 3(RFC2740)。
简单总结如下:
-
运行OSPF路由器之间交互的是LS(Link State,链路状态)信息,而不是直接交互路由。LS信息是OSPF能够正常进行拓扑及路由计算的关键信息。 -
OSPF路由器将网络中的LS信息收集起来,存储在LSDB中。路由器都清楚区域内的网络拓扑结构,这有助于路由器计算无环路径。 -
每台OSPF路由器都采用SPF算法计算达到目的地的最短路径。路由器依据这些路径形成路由加载到路由表中。 -
OSPF支持VLSM(Variable Length Subnet Mask,可变长子网掩码),支持手工路由汇总。 -
多区域的设计使得OSPF能够支持更大规模的网络。
OSPF报文类型:
OSPF有五种类型的协议报文。这些报文在OSPF路由器之间交互中起不同的作用。
报文名称 | 报文功能 |
---|---|
Hello | 周期性发送,用来发现和维护OSPF邻居关系。 |
Database Description (DD报文) | 描述本地LSDB的摘要信息,用于两台设备进行数据库同步。 |
Link State Request (LSR报文) | 用于向对方请求所需要的LSA。设备只有在OSPF邻居双方成功交换DD报文后才会向对方发出LSR报文。 |
Link State Update (LSU报文) | 用于向对方发送其所需要的LSA。 |
Link State ACK (LS ACK) | 用来对收到的LSA进行确认。 |
OSPF经过一系列报文交互形成邻接关系之后就是通过LSU类型的报文里面携带的LSA进行路由信息的传递和更新,因此这里需要重点学习LSA的相关知识。
四、LSA概述
LSA是OSPF进行路由计算的关键依据。OSPF的LSU报文可以携带多种不同类型的LSA。各种类型的LSA拥有相同的报文头部。
相关字段说明:
-
LS Age(链路状态老化时间):此字段表示LSA已经生存的时间,单位是秒。 -
Options(可选项):每一个bit都对应了OSPF所支持的某种特性。 -
LS Type(链路状态类型):指示本LSA的类型。 -
Link State ID(链路状态ID):不同的LSA,对该字段的定义不同。 -
Advertising Router(通告路由器):产生该LSA的路由器的Router ID。 -
LS Sequence Number(链路状态序列号):当LSA每次有新的实例产生时,序列号就会增加。LS Checksum(校验和):用于保证数据的完整性和准确性。判断新旧,越大越新。 -
Length:是一个包含LSA头部在内的LSA的总长度值。
链路状态类型、链路状态ID、通告路由器三元组唯一地标识了一个LSA。
链路状态老化时间 、链路状态序列号 、校验和用于判断LSA的新旧
常见LSA类型:
类型 | 名称 | 描述 |
---|---|---|
1 | 路由器LSA(Router LSA) | 每个设备都会产生,描述了设备的链路状态和开销,该LSA只能在接口所属的区域内泛洪 |
2 | 网络LSA(Network LSA) | 由DR产生,描述该DR所接入的MA网络中所有与之形成邻接关系的路由器,以及DR自己。该LSA只能在接口所属区域内泛洪 |
3 | 网络汇总LSA(Network Summary LSA) | 由ABR产生,描述区域内某个网段的路由,该类LSA主要用于区域间路由的传递 |
4 | ASBR汇总LSA(ASBR Summary LSA) | 由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。 |
5 | AS外部LSA(AS External LSA) | 由ASBR产生,用于描述到达OSPF域外的路由 |
7 | 非完全末梢区域LSA(NSSA LSA) | 由ASBR产生,用于描述到达OSPF域外的路由。NSSA LSA与AS外部LSA功能类似,但是泛洪范围不同。NSSA LSA只能在始发的NSSA内泛洪,并且不能直接进入Area0。NSSA的ABR会将7类LSA转换成5类LSA注入到Area0 |
区域:
在许多场合中,我们习惯使用类型值来称呼对应的LSA,例如1类LSA等同于Router LSA,2类LSA等同于Network LSA,以此类推。
-
区域内:设备所属的OSPF Area id相同,那么这些设备是属于区域内的关系; -
区域间:设备所属的OSPF Area id不同,那么这些设备是属于区域间的关系; -
区域外:有设备属于OSPF区域,但是另外一些设备不属于OSPF协议的范围,区域外;
总结:复习了动态路由协议OSPF,简单了解LSA的类型及区域概念,后面再详细学习。
本文由 mdnice 多平台发布