简介
本文档介绍重叠管理协议(OMP)故障场景故障排除和在Cisco SD-WAN中提供网络恢复能力的最佳实践。
先决条件
要求
思科建议您了解思科软件定义广域网(SD-WAN)解决方案。
使用的组件
本文档中的信息基于以下软件和硬件版本:
- Cisco IOS Catalyst SD-WAN Manager,也称为vManage
- Cisco IOS Catalyst SD-WAN Validator aka vBond
- Cisco IOS Catalyst SD-WAN控制器,也称为vSmart
- vEdge设备
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解任何命令的潜在影响。
OMP概述
如您所知,思科SD-WAN边缘设备仅与Catalyst SD-WAN控制器共享路由。要使路由有效并安装到其转发表中:
- 下一跳传输定位器(TLOC)必须可访问,即边缘设备必须具有TLOC的有效路由。
- 它指向的TLOC处于活动状态。要使TLOC处于活动状态,活动双向转发(BFD)会话必须与该TLOC关联。BFD会话由每个设备建立,该设备与每个远程TLOC创建单独的BFD会话。如果BFD会话变为非活动状态,Cisco Catalyst SD-WAN控制器将从转发表中删除指向该TLOC的所有OMP路由。
- OMP路由必须计算为最佳路由。
尽管所有这些说法都合乎逻辑且直截了当,但在故障情况下,OMP与传统路由协议(如增强型内部网关路由协议(EIGRP)和开放最短路径优先(OSPF))之间仍存在显着差异。
EIGRP故障场景
在下一个网络中,有三个站点,即Site1、Site3和Site4,分别具有路由器RTR1/RTR2、RTR3和RTR4,且各具有一个WAN连接。传统路由协议EIGRP在IPSec上运行,IP1、IP2、IP3和IP4是各自位置的WAN接口IP地址。

网络必须中断,目前主要关注RTR3和RTR4。在RTR3上,到达10.1.4.0/24的路由通过RTR3-RTR4之间的直接隧道。如果隧道断开,EIGRP在此情况下如何反应?隧道关闭后,EIGRP将立即运行并向邻居路由器发送有关10.1.4.0/24网络的查询,并根据收到的回复检查该网络,并在最佳路径计算后在路由表中安装目标的新路径。
这是对传统路由协议收敛过程的非常简单的解释。因此,诸如EIGRP之类的整个传统路由协议能够执行网络重新计算:
- 当到目的地的当前路由中断时
- 当没有可行后继路由器到达目的地时
- 当拓扑发生变化时
OMP故障场景
下面讨论OMP的两个故障场景:
- 直接故障
- 间接故障
直接故障
在下一个拓扑中,有三个站点具有单个传输连接。
站点
|
路由器
|
传输定位器(TLOC)
|
系统IP
|
子网
|
SIte1
|
vEdge-1
vEdge-2
|
T1
T2
|
1.1.1.1
2.2.2.2
|
10.1.1.0/24
|
站点3
|
vEdge-3
|
T3
|
3.3.3.3
|
10.1.3.0/23
|
站点4
|
vEdge-4
|
T4
|
4.4.4.4
|
10.1.4.0/24
|

假设Catalyst SD-WAN控制器上的所有内容都设置为默认值。vEdge设备直接与Catalyst SD-WAN控制器共享路由信息,并且控制器与所有vEdge设备共享路由信息。下一个拓扑显示所有路由器的路由表:

目前,所有BFD会话都处于启用状态。
vEdge-DC1# show bfd sessions
SOURCE TLOC REMOTE TLOC DST PUBLIC DST PUBLIC DETECT TX
SYSTEM IP SITE ID STATE COLOR COLOR SOURCE IP IP PORT ENCAP MULTIPLIER INTERVAL(msec) UPTIME TRANSITIONS
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.1.1.1 1 up mpls mpls 60.1.1.1 20.1.1.1 12346 ipsec 7 1000 0:00:03:12 0
2.2.2.2 1 up mpls mpls 60.1.1.1 10.10.20.2 12406 ipsec 7 1000 0:06:28:51 0
4.4.4.4 2 up mpls mpls 60.1.1.1 30.1.1.1 12386 ipsec 7 1000 0:00:00:51 0
vEdge-DC1# show omp routes vpn 20 | t
Code:
C -> chosen
I -> installed
Red -> redistributed
Rej -> rejected
L -> looped
R -> resolved
S -> stale
Ext -> extranet
Inv -> invalid
Stg -> staged
IA -> On-demand inactive
U -> TLOC unresolved
PATH ATTRIBUTE
VPN PREFIX FROM PEER ID LABEL STATUS TYPE TLOC IP COLOR ENCAP PREFERENCE
--------------------------------------------------------------------------------------------------------------------------------------
20 10.1.1.0/24 2.2.2.2 43 1005 C,I,R installed 1.1.1.1 mpls ipsec -
2.2.2.2 37 1006 C,I,R installed 2.2.2.2 mpls ipsec -
20 10.1.3.0/24 0.0.0.0 66 1005 C,Red,R installed 3.3.3.3 mpls ipsec -
20 10.1.4.0/24 2.2.2.2 45 1006 C,I,R installed 4.4.4.4 mpls ipsec -
如果vEdge3和vEdge4之间的连接被禁用,当隧道关闭时,vEdge3和vEdge4的BFD会话也将关闭。这会导致它们将各自的路由标记为“无效”和“TLOC未解析”。 您可以在下一输出中看到:
vEdge3# show bfd sessions
SOURCE TLOC REMOTE TLOC DST PUBLIC DST PUBLIC DETECT TX
SYSTEM IP SITE ID STATE COLOR COLOR SOURCE IP IP PORT ENCAP MULTIPLIER INTERVAL(msec) UPTIME
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.1.1.1 1 up mpls mpls 60.1.1.1 20.1.1.1 12386 ipsec 7 1000 0:05:57:27
2.2.2.2 1 up mpls mpls 60.1.1.1 10.10.20.2 12426 ipsec 7 1000 0:05:57:27
4.4.4.4 4 down mpls mpls 60.1.1.1 30.1.1.1 12406 ipsec 7 1000 NA
vEdge3# show omp routes vpn 20 | t
Code:
C -> chosen
I -> installed
Red -> redistributed
Rej -> rejected
L -> looped
R -> resolved
S -> stale
Ext -> extranet
Inv -> invalid
Stg -> staged
IA -> On-demand inactive
U -> TLOC unresolved
PATH ATTRIBUTE
VPN PREFIX FROM PEER ID LABEL STATUS TYPE TLOC IP COLOR ENCAP PREFERENCE
--------------------------------------------------------------------------------------------------------------------------------------
1 10.1.1.0/24 2.2.2.2 43 1005 C,I,R installed 1.1.1.1 mpls ipsec -
2.2.2.2 37 1006 C,I,R installed 2.2.2.2 mpls ipsec -
1 10.1.3.0/24 0.0.0.0 66 1005 C,Red,R installed 3.3.3.3 mpls ipsec -
1 10.1.4.0/24 2.2.2.2 45 1006 Inv,U installed 4.4.4.4 mpls ipsec -
间接故障
为了理解“间接故障”,假设控制策略被定义为通过vEdge2更改路由10.1.4.0/24在vEdge3上的下一跳,而在vEdge4上,10.1.3.0/24的下一跳更改为vEdge1。换句话说,对于vEdge 3和4之间的流量,vEdge 2和1被插入为中间跳。您可以在下图中看到:

如果网络故障导致vEdge2和vEdge4之间失去连接,当T2-T4之间的重叠隧道关闭时,vEdge3仍然具有通过T2到达10.1.4.0的有效路由。因此,它会向vEdge2发送流量。vEdge2没有带vEdge4的有效隧道,因此路由将不再在其上处于活动状态,因此会丢弃流量。

根据之前的日志和测试,可以得出结论:
- 使用OMP时,不会自动发现路由对等体和下一跳
- 当隧道关闭时,不会重新计算拓扑
- 当隧道关闭时,通往目标前缀的OMP路由不会更改。发生的唯一变化是到下一跳(即TLOC)的可达性。
- 如果直接重叠失败,必须提供到同一目的地的多隧道隧道冗余。
- 在重叠路径中引入中间跃点/跃点时必须特别小心,并且必须提供隧道冗余以避免缺少流量。
现在您已经知道,默认情况下,OMP不会在重叠故障时重新计算或重新路由。要解决此问题,可以通过控制策略启用名为“TLOC-Action”的功能。
TLOC操作
- 在思科SD-WAN中,控制策略中的“TLOC操作”允许插入中间跃点(TLOC)用于流量转发,同时保持对从源到目标的完整路径的可视性。这意味着设置TLOC操作选项可使Cisco Catalyst SD-WAN控制器对通向最终目标设备的路径执行端到端跟踪。如果该路径断开,控制器将通知收到此OMP路由的WAN边缘路由器。
- 它在主链路发生故障时提供备用路径,从而增强SD-WAN重叠网络中的网络弹性和容错能力。这是一种通过控制用于到达目的地的TLOC来控制流量通过网络路由的方式。
- 在策略中定义TLOC操作时,会指示SD-WAN控制器将中间TLOC插入路由计算,这意味着流量将首先到达此指定的“备份”位置,然后根据需要到达最终目标。
- 这对于您想要通过自动重新路由不同路径(通过指定的TLOC)的流量,确保即使主链路断开也连通的场景尤其有用。
在下一个拓扑中,让我们重点介绍vEdge2、vEdge3和vEdge4,以更好地了解它。目前,未定义任何策略,并且vEdge3上的10.1.4.0/24的数据流量通过T3和T4之间的直接隧道传输。

为了提供容错和网络弹性,将控制策略配置为通过不同路径(通过指定的TLOC)重新路由流量。

- vEdge4将带有下一跳T4的直连网络10.1.4.0/24的OMP更新作为“通过T4发送10.1.4.0/24”发送到Catalyst SD-WAN控制器。
- 此路由匹配在SD-WAN控制器上配置的控制策略,并根据其上定义的策略设置新的TLOC和TLOC操作,即,插入新的“中间TLOC”。
- 控制器现在通过两个下一跳(中间TLOC(T3、3.3.3.3)和最终TLOC(原始路由的下一跳T4)向vEdge1通告OMP路由。 这为vEdge1提供了通过T2和T4可以到达目标前缀10.1.4.0/24的情报。
现在根据定义的TLOC-Action的vEdge1转发10.1.4.0/24的流量。因此,您可以在控制平面策略中定义以下四种类型的TLOC-Actions:
- Strict(默认值) — “TLOC-Action strict”(TLOC操作严格)定义了vEdge1和vEdge4之间的流量必须通过T3(中间跳),并且如果vEdge1和vEdge4之间的隧道断开,流量必须丢弃。
- 主要 — “TLOC-Action primary”定义了vEdge1和vEdge4之间的流量通过中间跃点T3(3.3.3.3),如果此重叠隧道断开,SD-WAN控制器会通知vEdge1并通过直接隧道路由到T4的流量。
- 备份 — “TLOC-Action backup”定义了vEdge1和vEdge4之间的流量直接进入最终LOC(原始路由的下一跳 — T4),如果vEdge1和vEdge4之间的直接重叠隧道断开,SD-WAN控制器会通知vEdge1,流量通过中间跳T3。
- 等价多路径(ECMP) — “TLOC-Action ECMP”指定在正常情况下,vEdge1和vEdge4之间的通信通过中间跃点T3和最终跃点T4进行负载均衡。