首先是路由的分类
- 按照工作区域分类
- IGP(内部网关协议)
- RIP
- OSPF
- IS-IS
- EGP(外部网关协议)
- BGP
- IGP(内部网关协议)
- 按照工作机制
- 距离矢量路由协议
- RIP
- 链路状态路由协议
- OSPF
- IS-IS
- 距离矢量路由协议
链路状态路由协议
链路状态路由协议通告的是链路状态而不是路由信息
路由转发的基本顺序
- LSA泛洪 --链路状态通告
- 描述接口开销 连接的对象等信息
- LSDB ---链路状态数据库
- 全网的LSA都会储存在 LSDB 中
- SPF计算 ---最短路径优先算法
- 每台路由器都会以自己为根,无环,拥有在最短路径的树
- 路由表
- 为用户转发 提供优路由表 SPF计算后储存到此
OSPF
基于链路状态的内部网关协议
IPV4 OSPF 2
IPV6 OSPF 3
- LSDB 链路数据库表
- 保存自己产生的及其邻居收到的LSA信息
- type标识LSA的类型
- Display ospf lsdb
- Ospf 路由表
- Display ospf routing
- 报文格式和类型 IP头部协议号89
- Hello ---发现和维护邻居关系
- Database Description 交互链路状态数据库摘要
- Link State Request 请求特定的链路信息
- Link State Update 发送详细的链路状态信息
- Link State Ack 确定LSA
- Router ID---标识一台运行OSPF的路由器
- 手动分配
- 自动分配
- 选择路由器使用的Loopback接口中最大IP地址作为Router ID
- 没有Loopback接口,使用武力接口最大的IP作为Router ID
- Area----区域ID
- 从逻辑上将设备划分为不同的组
- 分区规划
- 0标识骨干分区
- 剩下的标识非骨干区域
- 标识不可更改 便于网络条例清晰 便于维护
- 度量值---开销 cost
- 从原到目的的开销
- Cost=100Mbit/s / 接口带宽 100为ospf指定的缺省参考值(可自定义)
- 接口cost----不同接口类型的带宽值不同
- 累计cost----累计路上所有的cost值
- Cost 度量值修改
- 查看到达目的IP的cost值 display IP routing-table 【目的IP】
- Ospf 邻居表
- 邻居关系通过hello报文建立
- Display ospf peer
OSPF(开放最短路径优先)协议中的链路状态通告(LSA,Link - State Advertisement)是其核心概念之一,用于在网络中传播路由信息,让路由器构建和维护准确的网络拓扑视图。以下是关于OA的详细介绍:
- LSA的类型
- 1类LSA(Router LSA)
- 产生者:每台运行OSPF的路由器都会产生。
- 内容:描述路由器自身的链路状态,包括路由器的每个直连链路(接口)的状态、开销、连接的邻居路由器等信息。这些信息仅在产生该LSA的路由器所属的区域内传播。
- 作用:帮助区域内的其他路由器了解该路由器的连接情况,从而构建区域内的网络拓扑。
- 2类LSA(Network LSA)
- 产生者:由指定路由器(DR,Designated Router)产生,DR是在广播型网络(如以太网)或非广播多路访问(NBMA)网络中选举出来的.
- 内容:描述该广播型或NBMA网络中所有连接到该网络的路由器(包括DR和BDR,备份指定路由器)的集合。其中包含网络的掩码、连接到该网络的路由器的Router ID等信息。同样,2类LSA也只在所属区域内传播。
- 作用:使区域内其他路由器能够了解该多路访问网络的拓扑结构.
- 3类LSA(Summary LSA)
- 产生者:区域边界路由器(ABR,Area Border Router)产生。ABR连接多个区域,会将一个区域的1类和2类LSA信息汇总后,以3类LSA的形式发布到其他区域。
- 内容:包含目的网络地址、子网掩码、通告该LSA的ABR的Router ID等信息。3类LSA在除了源区域之外的其他区域传播。
- 作用:实现区域间的路由信息传递,使不同区域的路由器能够知道如何到达其他区域的网络。
- 4类LSA(ASBR Summary LSA)
- 产生者:也是由ABR产生。当一个区域内存在自治系统边界路由器(ASBR,Autonomous System Boundary Router),ABR会产生4类LSA。
- 内容:用于描述如何到达ASBR,包含ASBR的Router ID和到ASBR的开销等信息。4类LSA在除了ASBR所在区域之外的其他区域传播。
- 作用:帮助其他区域的路由器找到通往ASBR的路径,以便访问外部自治系统的网络。
- 5类LSA(External LSA)
- 产生者:由ASBR产生,用于通告外部自治系统的路由信息。
- 内容:包含外部网络的目的地址、子网掩码、外部路由的开销等信息。5类LSA在整个OSPF自治系统内传播(除了末梢区域和完全末梢区域)。
- 作用:使OSPF网络内的路由器能够知道如何到达外部自治系统的网络。
- 7类LSA(NSSA External LSA)
- 产生者:由NSSA区域内的ASBR产生。NSSA(Not - So - Stubby Area)是一种特殊的OSPF区域,允许引入少量外部路由。
- 内容:与5类LSA类似,用于通告NSSA区域外部的路由信息。7类LSA只在NSSA区域内传播,当7类LSA到达NSSA区域的ABR时,ABR会将其转换为5类LSA,再传播到其他区域。
- 作用:为NSSA区域提供引入外部路由的能力,同时又能限制外部路由对区域内的影响。
- 1类LSA(Router LSA)
- LSA的结构
- 通用头部:所有类型的LSA都包含一个20字节的通用头部,包含以下字段:
- LS Age:LSA的生存时间,以秒为单位。随着LSA在网络中传播,该值会逐渐增加,当达到最大老化时间(通常为3600秒)时,LSA将失效。
- Options:8位字段,用于指定一些可选的功能和特性。
- LS Type:LSA的类型,1 - 7分别对应上述不同类型的LSA。
- Link State ID:根据LSA类型的不同而有不同的含义。例如,对于1类LSA,它是产生该LSA的路由器的Router ID;对于2类LSA,它是DR的接口IP地址。
- Advertising Router:产生该LSA的路由器的Router ID。
- LS Sequence Number:用于检测LSA的新旧版本,每次LSA更新时,该序列号会递增。
- LS Checksum:对整个LSA内容(除了LS Age字段)进行校验和计算,用于检测LSA在传输过程中是否发生错误。
- Length:LSA的总长度,以字节为单位。
- 特定类型字段:除了通用头部,每种类型的LSA还包含特定的字段来描述其对应的链路状态信息。例如,1类LSA会包含链路数量、每条链路的类型、邻居路由器ID等信息;5类LSA会包含外部网络的目的地址、掩码、外部路由开销等信息。
- 通用头部:所有类型的LSA都包含一个20字节的通用头部,包含以下字段:
- . LSA的更新与老化机制
- 更新机制:当网络拓扑发生变化时,如路由器接口状态改变、新增或删除链路等,相关路由器会生成新的LSA,并使用洪泛的方式将其传播到整个区域(或整个自治系统,取决于LSA类型)。新的LSA具有更高的序列号,接收路由器通过比较序列号来判断LSA是否更新,并据此更新自己的链路状态数据库。
- 老化机制:如前文所述,LSA有一个生存时间(LS Age)。当LSA的生存时间达到最大老化时间(3600秒)时,该LSA将从链路状态数据库中删除。同时,路由器会定期(通常为1800秒)刷新自己产生的LSA,通过增加序列号的方式重新洪泛,以确保其在网络中的有效性。
- OSPF 工作机制
- hello报文发现邻居(组播 224.0.0.5)
- 邻居状态变迁
- Down 初始状态
- Lnit 收到邻居的hello报文 但没有收到自己的router ID
- 2-way 发现了自己router ID 成功建立邻居关系
- Hellolnterval 发送hello报文的时间间隔 (默认10s)
- RouterDeadInterval 失效时间(默认与hellointerval四倍关系)
- 邻居状态变迁
- DD报文 协商 主/从 MS
- 相互描述各自的LSDB
- 更新LSA 同步LSDB
- 计算路由
- hello报文发现邻居(组播 224.0.0.5)
- DR与BDR作用(在hello报文时已经产生)
- DR负责在MA网络建立和维护邻接关系 负责LSA的同步
- DR故障BDR接替
- DR/BDR是非抢占式(在网络稳定时 新增网络设备不参与选举)
- 选举规则是优先级越大越优先
- 接口优先级相等 Router ID越大越优先
- 优先级为 0 不参与
- 更改网络类型
- ospf network {p2p|p2mp|broadcast|nbma}
OSPF 快速收敛概述
- PRC---部分路由计算(只关注变化,加快了路由的计算)
- 当网络上的路由发生变化时 只对发生变化的路由进行重新计算
- PRC不计算节点路径,是根据SPF算法算出来的最短路径树跟新路由
- 智能定时器---进行SFP计算和产生LSA的时候用到的一种定时器
- 可以对少量的外界突发事件进行快速响应,又可以避免过度占用CPU
- OSPF 避免网络连接或者路由频繁动荡引起的过多占用的两个规则
- 同一条LSA在1秒内不能再次生成,即LSA的更新
时间间隔5秒
- LSA被接收的时间间隔为1秒。
- 通过智能定时器指定LSA的更新时间间隔为0来取消间隔,使得拓扑或路由的变化可以立即通过LSA发布到网络中。
- 通过智能定时器合理定时,设置合理的SPF计算间隔时间,可以避免占用过多的路由器资源
- OSPF IP FRR----快速重路由
- 实现备份链路的快速切换
- 利用LFA算法预先计算出备份路径
- 以可提供备份链路的邻居为根节点,利用SPF算法计算出到目的节点的最短距离。
- OSPF与BFD联动实现对故障的快速感知
OSPF控制
- 等价路由
- 在路由表中存在到达同一地址,且同一路由协议发现的多条路由时,几条路由的开销值也相同,可以实现负载分担
- 设备按照负载分担的方式从多条等价路由发送报文到同一目的地址
- [Huawei-ospf-1] maximum load-balancing number 设置进行负载分担的等价路由最大数量
- 缺省路由
- 区域边界和自治系统边界通常都是由多个路由组成的多出口冗余备份或者负载分担。为了减少路由表的容量,可以配置缺省路由,保证网络的高可用性
- 对发送的LSA进行过滤
- 在多条链路,可以在某些链路上通过对发送的LSA进行过滤,减少不必要的重传
[Huawei-GigabitEthernet0/0/1] ospf filter-lsa-out { all |{ summary [ acl { acl-number | acl-name } ] | ase [ acl { acl-number | aclname } ] | nssa [ acl { acl-number | acl-name } ] } }
- OSPF Database Overflow概述
- 解决路由信息不断增加导致路由器系统资源耗尽而失效的问题
- 为了解决数据库超限引发的问题,通过设置LSDB External LSA的最大条目数,可以动态限制数据库的规模。
- [Huawei-ospf-1] lsdb-overflow-limit number
ospf的基本配置
frr
进入OSPF FRR视图
loop-free-alternate
使用OSPF IP FRR 功能,利用LFA 算法计算备份吓一跳和备份出接口
ospf frr block
阻止OSPF接口的FRR能力
bdf all-interfaces enable
在ospf进程下使能BFD特性
bfd all-interfaces { min-rx-interval receive-interval |min-tx-interval transmit-interval | detect-multiplier multiplier-value | frr-binding }
[Huawei-GigabitEthernet0/0/1] ospf filter-lsa-out { all |{ summary [ acl { acl-number | acl-name } ] | ase [ acl { acl-number | aclname } ] | nssa [ acl { acl-number | acl-name } ] } }
[Huawei-ospf-1] lsdb-overflow-limit number
- OSPF Database Overflow
- 为了避免数据库超限,可以设置路由器上非缺省外部路由数量的上限。
- 等价路由
- [Huawei-ospf-1] maximum load-balancing number 设置进行负载分担的等价路由最大数量
- 对发送的LSA进行过滤
- min-rx-interval 表示接收BDF报文的最小时间间隔
- mini-tx-interval 表示发送BDF报文的最小间隔
- detect-multiplier表示检测倍数选项
- frr-binding 这是用于和快速重路由(FRR,Fast Reroute)绑定相关的配置。它使得 BFD 能够和 FRR 联动,当 BFD 检测到链路故障时,快速触发 FRR 进行流量的快速切换,以减少网络中断时间。
- OSPF 的 BDF 特性
- lsa-arrival-interval{inerval | intelligent-timer (max-interval start-interval hold-interval)}
- 设置OSPF LSA接受的时间间隔
- Interval 是一个简单的时间间隔(1000ms)(0-10000ms)
- max - interval 接收LSA的最长间隔时间 (1000ms) (1-120000ms)
- start-interval 初始间隔时间 (500ms)(0-60000ms)
- hold-interval 基数间隔时间 (1000ms)(1-60000ms)
- spf-schedule-interval {intervall | intelligent-timer(max-interval start-interval hold-interval)| millisecond interval2}
- 设置OSPF路由计算时间间隔。
- max - interval 接收LSA的最长间隔时间 (1000ms) (1-120000ms)
- start-interval 初始间隔时间 (500ms)(0-60000ms)
- hold-interval 基数间隔时间 (1000ms)(1-60000ms)
- OSPF IP FRR
- ospf [process-id | Router ID]
- Process-id 进程号
- Router ID 一般选用路由器lookback接口IP
- area area-id
- 进入区域试图
- network [ip] [子网掩码]
- ospf enable process-id area area-id
- 在接口下使用
- 优先级高于network
- ospf dr-priority [优先级](1-255)
- 缺省时,优先级为1,越大越优先
- ospf timer hello [时间间隔]
- 失效时间是时间间隔的四倍
- ospf network {p2p|p2mp|broadcast|nbma}
- 更改网络类型
- lsa-originate-interval {0 | intelligent-timer(max-interval start-interval hold-interval) | other-type(interval)}
- 设置OSPF LSA 更新的时间间隔
- 设置为 0 时
- intelligent-timer:指定通过智能定时器设置 OSPF Router LSA 和 Network LSA 的更新间隔时间。
- max - interval 更新LSA的最长间隔时间 (5000ms) (1-120000ms)
- start-interval 初始间隔时间 (500ms)(0-60000ms)
- hold-interval 基数间隔时间 (1000ms)(1-60000ms)
- other-type:指定设置除 OSPF Router LSA 和 Network LSA 外 LSA 的更新间隔时间。
- interval:指定 LSA 更新的时间间隔。整数形式,取值范围是 0~10,单位是秒。缺省值是 5。
1547

被折叠的 条评论
为什么被折叠?



