首页 > 其他分享 >OSPF高级特性

OSPF高级特性

时间:2023-10-22 17:06:20浏览次数:29  
标签:LSA ospf 高级 特性 网络 OSPF 路由 路由器

前言

OSPF和IS-IS都是基于链路状态的内部网关路由协议,运行这两种协议的路由器通过同步LSDB,采用SPF算法计算最优路由。

当网络拓扑发生变化时,OSPF和IS-IS支持多种快速收敛和保护机制,能够降低网络故障导致的流量丢失。

,为了实现对路由表规模的控制,OSPF和IS-IS支持路由选路及路由信息的控制,能够减少特定路由器路由表的大小。

本文章将介绍OSPF和IS-IS的高级特性,包括:快速收敛机制、路由控制、其他特性等。


OSPF快速收敛机制

概述:

快速收敛是指网络在出现拓扑变化(比如链路故障)时,能够尽快地更新路由表,确保网络恢复到稳定的状态。包括:PRC,智能定时器,OSPF IP FRR,也可以和BFD联动


PRC:

当网络上路由发生故障的时候,PRC计算只对发生变化的路由进行计算。而原本的节点和路由是不会发生变化的,以此来加快路由的计算。


OSPF高级特性_链路


如图场景所示:是以R1为根的最短路径树。此时R1访问节点R5时,通过黄线路段到达该目的地。R5将环回口LoopbackO开启OSPF,即OSPF网络内有新增网段。


PRC计算后:R5全网泛洪新增LSA。

R1收到该LSA后会创建新的路由,继承原有访问节点R5的路径及下一跳,即最短路径树不变,只在节点R5上新增叶子。


智能定时器:

智能定时器是在进行PF计算和产生LSA的时候用到的一种定时器。它既可以对少量的外界突发事件进行快速响应,又可以避免过度地占用CPU。


控制LSA的生成与接收:

①同一条LSA在1秒内不能再次生成,即LSA的更新时间间隔5秒。

②LSA被接收的时间间隔为1秒。

③通过智能定时器指定LSA的更新时间间隔为0来取消LSA的更新时间间隔,使得拓扑或者路由的变化可以立即通过LSA发布到网络中,或者立即被感知到,从而加快网络中路由的收敛速度。


控制路由计算:

当网络发生变化时,OSPF的LSDB会发生改变,需要重新计算最短路径。如果网络频繁变化,由于不断地计算最短路径,会占用大量系统资源,影响设备的效率。


通过配置智能定时器,设置合理的SPF计算的间隔时间,可以避免占用过多的路由器内存和带宽资源。


设置LSA的更新时间间隔:

[Huawei-ospf-1]lsa-originate-interval intelligent-timer 3000 300 500  

3000  最大更新时间max-interval

300   初始更新时间start-interval

500      每次更新时间间隔hold-interval

初次更新LSA的间隔时间由start-interval参数指定。

第n(n≥2)次更新LSA的间隔时间为hold-interval×2(n-2)。

当hold-interval×2(n-2)达到指定的最长间隔时间max-interval时,OSPF连续三次更新LSA的时间间隔都是最长间隔时间,之后,再次返回步骤1,按照初始间隔时间start-interval更新LSA。

对LSA接收时间间隔设置:

[Huawei-ospf-1] lsa-arrival-interval { interval | intelligent-timer max-interval start-interval hold-interval }

对SPF计算时间间隔设置:

[Huawei-ospf-1] spf-schedule-interval { interval1 | intelligent-timer max-interval start-interval hold-interval | millisecond interval2 }

OSPF IP FRR:

利用LFA(Loop-Free Alternates)算法预先计算出备份路径,保存在转发表中,以备在故障时将流量快速切换到备份链路上,保证流量不中断,从而达到流量保护的目的,该功能可将故障恢复时间降低到50 ms以内。


OSPF IP FRR的流量保护分为链路保护和节点链路双保护。


链路保护:

OSPF高级特性_OSPF_02

链路保护公式:(N~D)< N~S)+(S~D)


流量从设备S到D进行转发,网络开销值满足链路保护公式可保证当主链路故障后,设备S将流量切换到备份链路S到N后可以继续向下游转发,确保流量中断小于50 ms。


节点链路双保护:

OSPF高级特性_OSPF_03

链路保护公式:(N,D)<(N,S)+(S,D)


节点保护公式:(N,D)<(N,E)+(E,D)


节点链路双保护必须同时满足两个公式。


配置命令:

ospf 1 router-id 1.1.1.1

frr

 loop-free-alternate

OSPF与BDF联动

OSPF与BFD联动就是将BFD和OSPF关联起来,一旦与邻居之间的链路出现故障,BFD对链路故障的快速感应能够加快OSPF对于网络拓扑变化的响应。


配置命令:

[R1-ospf-1]bfd  all-interfaces  enable  协议视图下开启BFD功能:(所有接口生效)

[R1-GigabitEthernet0/0/1]ospf bfd enable    接口视图下开启BFD功能

OSPF收敛优先级:

概述:

配置OSPF路由的收敛优先级后,OSPF路由可以按照优先级来计算和泛洪LSA、同步LSDB,从而提高路由收敛速度。当一个LSA满足多个策略优先级时,最高优先级生效。OSPF依次按区域内路由、区域间路由、自治系统外部路由顺序进行LSA计算,该命令可以计算OSPF的收敛优先级。收敛优先级的优先级顺序为:critical>high>medium>low。为了加速处理高优先级的LSA,泛洪过程中,需要按照优先级将相应的LSA分别存放在对应的critical、high、medium和low的队列中。默认LSA优先级为low。


配置:

[R1-ospf-1] prefix-priority { critical | high | medium } ip-prefix ip-prefix-name

配置接口发送Hello报文的时间间隔

前提:

Hello报文是最常用的一种报文,其作用为建立和维护邻接关系,周期性的在使能了OSPF的接口上发送。OSPF邻居之间的Hello定时器的时间间隔要保持一致,否则不能协商为邻居。


P2P、Broadcast类型接口发送Hello报文的时间间隔的值为10秒;P2MP、NBMA类型接口发送Hello报文的时间间隔的值为30秒;且同一接口上邻居失效时间是Hello间隔时间的4倍。


配置命令:

[R1-GigabitEthernet0/0/0]ospf timer hello/dead  + time

在网络中,如果只有两台路由器,也可以调整网络类型为P2P,可以不用进行DR和BDR的选举,从而收敛速度。


配置Smart-discover

概述:

通过配置Smart-discover,网络中邻居状态,或者DR、BDR发生变化时,设备不必等到Hello定时器到就可以立刻主动的向邻居发送Hello报文。从而提高建立邻居的速度,达到网络快速收敛的目的。


配置命令:

[R1-GigabitEthernet0/0/0]ospf smart-discover

OSPF路由控制

调整OSPF的接口开销

在OSPF中,每个接口都有一个开销(Cost)值,用于计算最短路径。较小的接口开销表示较好的链路质量,因此OSPF路由器在计算最短路径时倾向于选择开销较低的路径。OSPF接口开销是一个非常重要的参数,可以通过调整它来影响路由的选择和网络性能。


配置命令:

[R1-GigabitEthernet0/0/0]ospf cost 2

设置等价路由

在OSPF中,等价路由是一种技术,允许在到达目标网络的路径具有相同的开销时,将流量分发到多条等价的路径上,从而实现负载均衡和冗余。等价路由提供了更好的网络性能和冗余容错能力。


条件:

确保到达目标网络的多条路径具有相同的开销。

启用OSPF等价路由功能。

配置命令:

[R1-ospf-1]maximum load-balancing 8

引入外部路由

引入外部路由是指将来自其他自治系统(AS)或其他动态路由协议的路由信息引入到OSPF域内,使得OSPF路由器可以学习和使用这些外部路由来进行跨自治系统或跨协议的网络通信。这种能力使得OSPF可以与其他路由协议和其他自治系统进行互联和互操作。


路由聚合

路由聚合(Route Aggregation),也称为路由汇总,是一种网络路由优化技术,用于减少路由表的大小和复杂性,提高路由协议的性能和减少路由信息的洪泛。在IP网络中,路由聚合将一组具有相同最长前缀的IP地址合并为一个较大的网络块,从而减少路由表中的条目数量。这样可以有效地减小路由表的规模,提高路由查找和选择的速度,并降低路由器内存和处理负担。


配置命令:

区域间路由汇总:ABR上配置

ospf 1

area 0.0.0.1

 abr-summary 172.16.1.0 255.255.255.0

外部路由汇总:ASBR上配置

ospf 1 router-id 1.1.1.1

asbr-summary 192.168.1.0 255.255.255.0

缺省路由通告

缺省路由通告是指在网络中配置默认路由,用于将所有未知目的地的数据包发送到默认网关。当路由器或主机无法确定目标网络的具体路径时,会使用默认路由来转发数据包。


[R2-ospf-1]default-route-advertise

[R2-ospf-1]default-route-advertise always   //强制下发缺省路由

Filter-Policy

Filter Policy是网络中的一种安全措施,用于限制、过滤或控制网络流量的传输。通过定义特定的过滤规则和条件,Filter Policy可以对流经网络设备(如路由器、防火墙、交换机等)的数据包进行检查和处理,从而实现对流量的精确控制和管理。


import:不会过滤LSA,对所有加入到IP路由表的路由条目生效。在ABR设备上配置可以过滤三类LSA的。


export:针对引入的路由生效,需要在ASBR设备上进行配置


详细内容自行复习IP知识点。


对发送的LSA进行过滤

发送的LSA(Link State Advertisement)过滤是一种控制机制,用于限制在OSPF域内传播的LSA。这种过滤机制可以帮助网络管理员在特定情况下控制LSA的传播范围,从而实现对网络的灵活控制和优化。


[R2-GigabitEthernet0/0/0]ospf filter-lsa-out ?

 all      Filter all types of LSAs    //过滤所有的类型LSA

 ase      Filter type-5 ASE LSAs    //过滤五类LSA

 nssa     Filter type-7 NSSA LSAs       //过滤七类LSA

 summary  Filter type-3 Summary LSAs   //过滤三类LSA

对ABR Type3 LSA进行过滤

在OSPF中,ABR会产生Type 3 LSA,用于将来自一个区域的路由信息汇总传递给其他区域。对ABR产生的Type 3 LSA进行过滤是一种在区域边界控制LSA传播的技术,可以帮助网络管理员精确控制路由信息的传递范围,优化网络的路由表和收敛速度。


配置命令:

ospf 1

area 0.0.0.0

 filter 2000 import

或:

area 0.0.0.1

 filter 2000 export

数据库超限

在OSPF协议中,LSDB中的Type 5 LSA的最大数量是由OSPF实现所在的设备或软件决定的,通常根据设备的硬件资源和操作系统的限制来设置。


当OSPF的数据库超出设备的最大容量限制时,会发生数据库超限问题。这通常会导致OSPF路由器无法处理更多的,从而影响路由表的更新和网络的正常运行,这种状态就被称为数据库超限。


设置LSDB中 External LSA最大条目:


[Huawei-ospf-1] lsdb-overflow-limit number

OSPF其他特性

OSPF多进程

OSPF支持多进程,在同一台路由器上可以运行多个不同的OSPF进程,它们之间互不影响,彼此独立。不同OSPF进程之间的路由交互相当于不同路由协议之间的路由交互。

路由器的一个接口只能属于某一个OSPF进程。

[PE] ospf 100 vpn-instance VPN1

[PE] ospf 200 vpn-instance VPN2

由于其应用场景为大都VPN场景,大家可以去了解IE中VPN的知识。


OSPF与BGP协议联动:

前提:

当有新的设备加入到网络中,或者设备重启时,可能会出现在BGP收敛期间内网络流量丢失的现象。这是lGP收敛速度比BGP快造成的。

OSPF高级特性_链路_04



当网络环境稳定时,R1访问10.1.5.5/32的流量路径为:R1-R2-R4-R5。


当R2故障时,流量路径切换到:R1-R3-R4-R5。


当R2故障恢复后,由于IGP收敛速度比BGP快,因此OSPF先收敛。此时R1若要访问10.1.5.5/32,先查BGP路由,下一跳为R5;再查lGP路由,会根据IGP路由传递给R2。


R2收到该流量后,会查BGP路由。由于BGP还未完成收敛,发现没有到达10.1.5.5/32的路由,则不会转发数据,造成流量丢失。


解决方法

将R2设置为STUB路由器,STUB路由器可以将OSPF重启后,设置在规定时间的内,发送给邻居的LSA开销值为最大值65535。


[Huawei-ospf-1] stub-router

OSPF的转发地址

当ASBR引入外部路由时,若Type5 LSA中的FA字段为0,表示路由器认为到达目的网段的数据包应该发往该ASBR;若Type5 LSA中的FA字段不为0,表示路由器认为到达目的网段的数据包应该发往这个FA所标识的设备。

当以下条件全部满足时,FA字段才可以被设置为非0:

ASBR在其连接外部网络的接口(外部路由的出接口)上激活了OSPF;

该接口没有被配置为Silent-Interface;

该接口的OSPF网络类型为Broadcast或NBMA;

该接口的IP地址在OSPF配置的network命令指定的网段范围内;

到达FA地址的路由必须是OSPF区域内部路由或区域间路由,这样接收到该外部LSA的路由器才能够加载该LSA进入路由表。加载的外部LSA生成的路由条目下一跳与到达FA地址的下一跳相同。

GR

在网络通信中,GR是"Graceful Restart"(优雅重启)的缩写。GR是一种用于路由协议(如BGP、OSPF等)的功能,它允许路由器在发生软件升级、重启或维护时,不中断或最小化数据包的转发,从而保持网络的连通性和稳定性。


当路由器进行软件升级或重启时,传统上会导致路由表重新计算和更新,这可能需要较长的时间,期间网络可能会出现短暂的不稳定性或数据包的丢失。而GR功能允许路由器在维护过程中保持某些信息,以快速恢复路由表,减少网络的震荡和数据包的丢失。  


NSR

是一个网络路由协议中的功能,旨在确保在设备发生控制平面(如路由引擎)故障或重新启动时,路由信息不会丢失,并保持数据平面(如数据包转发)的连通性。NSR通常与GR(Graceful Restart,优雅重启)功能结合使用,以提供更强大的路由高可用性。


工作原理

当路由器发生控制平面故障或需要重新启动时,它会通知相邻的路由器,表明它正在执行NSR过程。


相邻的路由器会继续将流量转发到该路由器,同时暂时接管路由表的计算和转发功能。


在路由器完成控制平面的重启或故障修复后,它会恢复并重新计算路由表。通过保留一部分信息,它可以更快地将路由表恢复到之前的状态,从而减少网络震荡和数据包的丢失。


比较

OSPF高级特性_链路_05


配置命令

[Huawei] switchover mode { nonstop-routing | nonstop-forwarding }

                                NSR                NSF


标签:LSA,ospf,高级,特性,网络,OSPF,路由,路由器
From: https://blog.51cto.com/u_16316569/7977524

相关文章

  • 【C#9.0篇】Switch匹配模式新特性
    概述C#9.0中的switch匹配模式引入了许多新特性,其中一些特性是C#8.0中不存在的,比如以下特性:关系模式:可以使用关系运算符模式匹配+逻辑模式:可以使用模式匹配+逻辑模式(如and、or)来组合多个模式模式匹配+关系模式:可以使用模式匹配+关系运算符(如<、>、<=、>=、==、!=)默认的匹配......
  • OSPFV3
    配置流程1)启用ipv6系统视图模式:ipv62)启用端口link-localinterfaceg0/0/0ipv6enableipv6addressautolink-local3)创建ospfv3进程ospfv3100//100为进程号router-id1.1.1.1//唯一标识,不能有重复area0//进程规划为area0中4)将端口分配给area0interfaceLoopBack0ipv6enabl......
  • 18_JDK8-17新特性
    ......
  • 08_面向对象编程(高级)
    ......
  • 探索数据库的世界:从基础到高级
    数据库是现代计算机科学中不可或缺的重要组成部分。无论是在商业领域中管理海量数据,还是在科学研究中处理复杂的实验数据,数据库都扮演着关键的角色。本篇博文将带你深入探索数据库的世界,从基础知识到高级应用,帮助你更好地理解和应用数据库技术。第一部分:数据库基础在介绍数据库的......
  • OSPF组播地址理解
    OSPF(OpenShortestPathFirst)使用组播地址来进行邻居发现和LSA(LinkStateAdvertisement)更新的通信。OSPF的组播地址是224.0.0.5。以下是对OSPF组播地址的详细说明及其工作过程:组播地址:IPv4组播地址用于将数据报发送到一个组中的所有成员。OSPF使用组播地址224.0.0.5作为邻居发现......
  • G1垃圾回收器特性
    G1具备以下几种特性1、并行与并发G1能充利用CPU、多核环境下的硬件优势,使用多个CPU(CPU或者CPU核心)来缩短Stop-The-World停顿时间。G1收集器可以通过并行和并发的方式让应用程序继续执行。2、分代收集虽然G1可以不需要其他收集器配合就能独立管理整个GC堆,但是还是保留了分代的概念。......
  • 面向对象(高级篇)
    面向对象(高级篇)1.关键字:static静态变量,所有的类可以共享该变量static:静态的用来修饰结构:属性、方法、代码块、内部类static修饰属性:成员变量:按照是否使用static修饰:使用static修饰的:静态变量、类变量(属性)jdk6及以前存放在方法区、jdk7以后存放在堆内存所有对......
  • 山东省实验中学 2023 秋提高级友好学校赛前联测 3 T4
    子序列(sequence)题目描述给定一个长度为\(N\)的序列\(A\)。对于一个子序列,若任意两个在子序列中相邻的元素\(A_x,A_y(x<y)\),都满足\(A_x<A_y\),且原序列的区间\([x,y)\)中不存在严格大于\(A_x\)的值,那么我们就说这个子序列是"贪心上升"的。定义一个子序列的权......
  • 山东省实验中学 2023 秋提高级友好学校赛前联测 3 T2
    琼玉牌(qiongyu)题目描述青雀正在玩「帝垣琼玉」牌。「帝垣琼玉」牌有\(3\)种不同花色的琼玉牌,青雀的桌子上有\(4\)个放牌的位置,最开始青雀的牌桌上没有琼玉牌。青雀会进行\(n\)回合的抽牌。每个回合开始时,青雀会从牌堆里立即随机抽取\(2\)次牌(牌堆里每种牌都有无......