此配置示例显示如何使用帧中继和 Intermediate System-to-Intermediate System (IS-IS),在现有的多协议标签交换 (MPLS) 网络上实现 Traffic Engineering (TE)。 此示例实现两条动态隧道(由入口标签交换路由器 [LSR] 自动设置)和两条使用明确路径的隧道。
TE 是一个通称,是指使用不同的技术优化指定骨干容量和拓扑的利用率。
MPLS TE 提供了一种方法,可将 TE 功能(如用于类似 ATM 的第 2 层协议的功能)整合到第 3 层协议 (IP) 中。MPLS TE 使用现有协议(Resource Reservation Protocol [RSVP]、IS-IS、Open Shortest Path First [OSPF])的扩展,根据网络限制条件,计算和建立单向隧道。通信流根据其目的地不同,被映射到不同的隧道上。
本文档没有任何特定的要求。
本文档中的信息基于以下软件和硬件版本:
Cisco IOS® 软件版本 12.0(11)S 和 12.1(3a)T
Cisco 3600 路由器
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
组件 | 描述 |
---|---|
IP 隧道接口 | 第 2 层:MPLS 隧道接口是标签交换路径 (LSP) 的前端。 它配置有一组资源需求,例如带宽和优先级。第 3 层:LSP 隧道接口是指向隧道目标的单向虚拟链路的前端。 |
具有 TE 扩展的 RSVP | 使用 RSVP,可通过 PATH 和 RESV 消息根据计算出的路径建立和维护 LSP 隧道。RSVP 协议规范已扩展,使 RESV 消息也分发标签信息。 |
链路状态 IGP(具有 TE 扩展的 IS-IS 或 OSPF) | 用于对来自链路管理模块的拓扑和资源信息进行泛洪。IS-IS 使用新的类型长度值 (TLV),OSPF 使用类型 10 链路状态通告(也称为不透明 LSA)。 |
MPLS TE 路径计算模块 | 仅在 LSP 前端运行,用于使用来自链路状态数据库的信息确定路径。 |
MPLS TE 链路管理模块 | 在每个 LSP 跳,此模块对 RSVP 信令消息执行链路呼叫准入,并对要由 OSPF 或 IS-IS 泛洪的拓扑和资源信息进行登记。 |
标签交换转发 | 基于标签的基本 MPLS 转发机制。 |
本文档使用此图所示的网络设置。
此过程可用于执行快速配置。有关更多详细信息,请参阅 MPLS Traffic Engineering 和增强功能。
使用通常的配置(在这种情况下,可使用帧中继)设置您的网络。
注意:必须设置IP掩码为32位的环回接口。
此地址将用于按照路由协议设置 MPLS 网络和 TE。此环回地址必须是可通过全局路由表到达的地址。
为 MPLS 网络设置路由协议。它必须是链路状态协议(IS-IS 或 OSPF)。 在路由协议配置模式下,输入:
对于 IS-IS:
metric-style wide (or metric-style both) mpls traffic-eng router-id LoopbackN mpls traffic-eng [level-1 | level-2 |]
对于 OSPF:
mpls traffic-eng area X mpls traffic-eng router-id LoopbackN (must have a 255.255.255.255 mask)
启用 MPLS TE。在一般配置模式下输入 ip cef(如果 ip cef distributed 可用,也可输入以提高性能)。为每个相关接口启用 MPLS (tag-switching ip)。输入 mpls traffic-engineering tunnel 以启用 MPLS TE,以及零带宽 TE 隧道的 RSVP。
在非零带宽隧道的每个相关接口通过输入 ip rsvp bandwidth XXX 启用 RSVP。
设置要用于 TE 的隧道。针对 MPLS TE 隧道可以配置许多选项,但 tunnel mode mpls traffic-eng 命令是必需的。tunnel mpls traffic-eng autoroute announce 命令按照路由协议宣布隧道的存在。
注意:不要忘记将ip unnumbered loopbackN用于隧道接口的IP地址。
此配置示例显示了两条从 Pescara 路由器通往 Pesaro 路由器的不同带宽(和优先级)的动态隧道,以及两条使用了明确路径,从 Pesaro 通往 Pescara 的隧道。
仅包括配置文件的相关部分。用于启用 MPLS 的命令显示为斜体,特定于 TE 的命令(包括 RSVP)显示为粗体。
佩萨罗 |
---|
Current configuration: ! version 12.1 ! hostname Pesaro ! ip cef mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.6 255.255.255.255 ip router isis ! interface Tunnel158 ip unnumbered Loopback0 tunnel destination 10.10.10.4 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 2 2 tunnel mpls traffic-eng bandwidth 158 tunnel mpls traffic-eng path-option 1 explicit name low ! interface Tunnel159 ip unnumbered Loopback0 tunnel destination 10.10.10.4 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 4 4 tunnel mpls traffic-eng bandwidth 159 tunnel mpls traffic-eng path-option 1 explicit name straight ! interface Serial0/0 no ip address encapsulation frame-relay ! interface Serial0/0.1 point-to-point bandwidth 512 ip address 10.1.1.22 255.255.255.252 ip router isis tag-switching ip mpls traffic-eng tunnels frame-relay interface-dlci 603 ip rsvp bandwidth 512 512 ! router isis net 49.0001.0000.0000.0006.00 is-type level-1 metric-style wide mpls traffic-eng router-id Loopback0 mpls traffic-eng level-1 ! ! ip classless ! ip explicit-path name low enable next-address 10.1.1.21 next-address 10.1.1.10 next-address 10.1.1.1 next-address 10.1.1.14 ! ip explicit-path name straight enable next-address 10.1.1.21 next-address 10.1.1.5 next-address 10.1.1.14 ! end |
佩斯卡拉 |
---|
Current configuration: ! version 12.0 ! hostname Pescara ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.4 255.255.255.255 ip router isis ! interface Tunnel1 ip unnumbered Loopback0 tunnel destination 10.10.10.6 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 5 5 tunnel mpls traffic-eng bandwidth 25 tunnel mpls traffic-eng path-option 2 dynamic ! interface Tunnel3 ip unnumbered Loopback0 tunnel destination 10.10.10.6 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 6 6 tunnel mpls traffic-eng bandwidth 69 tunnel mpls traffic-eng path-option 1 dynamic ! interface Serial0/1 no ip address encapsulation frame-relay ! interface Serial0/1.1 point-to-point bandwidth 512 ip address 10.1.1.14 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 401 ip rsvp bandwidth 512 512 ! router isis net 49.0001.0000.0000.0004.00 is-type level-1 metric-style wide mpls traffic-eng router-id Loopback0 mpls traffic-eng level-1 ! end |
波梅罗 |
---|
Current configuration: version 12.0 ! hostname Pomerol ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.3 255.255.255.255 ip router isis ! interface Serial0/1 no ip address encapsulation frame-relay ! interface Serial0/1.1 point-to-point bandwidth 512 ip address 10.1.1.6 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 301 ip rsvp bandwidth 512 512 ! interface Serial0/1.2 point-to-point bandwidth 512 ip address 10.1.1.9 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 302 ip rsvp bandwidth 512 512 ! interface Serial0/1.3 point-to-point bandwidth 512 ip address 10.1.1.21 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 306 ip rsvp bandwidth 512 512 ! router isis net 49.0001.0000.0000.0003.00 is-type level-1 metric-style wide mpls traffic-eng router-id Loopback0 mpls traffic-eng level-1 ! ip classless ! end |
普利尼 |
---|
Current configuration: ! version 12.1 ! hostname Pulligny ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.2 255.255.255.255 ! interface Serial0/1 no ip address encapsulation frame-relay ! interface Serial0/1.1 point-to-point bandwidth 512 ip address 10.1.1.2 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 201 ip rsvp bandwidth 512 512 ! interface Serial0/1.2 point-to-point bandwidth 512 ip address 10.1.1.10 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 203 ip rsvp bandwidth 512 512 ! router isis passive-interface Loopback0 net 49.0001.0000.0000.0002.00 is-type level-1 metric-style wide mpls traffic-eng router-id Loopback0 mpls traffic-eng level-1 ! ip classless ! end |
波亚克 |
---|
! version 12.1 ! hostname pauillac ! ip cef mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.1 255.255.255.255 ip router isis ! interface Serial0/0 no ip address encapsulation frame-relay ! interface Serial0/0.1 point-to-point bandwidth 512 ip address 10.1.1.1 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 102 ip rsvp bandwidth 512 512 ! interface Serial0/0.2 point-to-point bandwidth 512 ip address 10.1.1.5 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 103 ip rsvp bandwidth 512 512 ! interface Serial0/0.3 point-to-point bandwidth 512 ip address 10.1.1.13 255.255.255.252 ip router isis mpls traffic-eng tunnels tag-switching ip frame-relay interface-dlci 104 ip rsvp bandwidth 512 512 ! router isis net 49.0001.0000.0000.0001.00 is-type level-1 metric-style wide mpls traffic-eng router-id Loopback0 mpls traffic-eng level-1 ! ip classless ! end |
本部分所提供的信息可用于确认您的配置是否正常工作。
命令输出解释程序(仅限注册用户)(OIT) 支持某些 show 命令。使用 OIT 可查看对 show 命令输出的分析。
show mpls traffic-eng tunnels brief
show mpls traffic-eng tunnels name Pesaro_t158
show ip rsvp interface
show mpls traffic-eng topology path destination 10.10.10.6 bandwidth 75
其他有用命令(未在此处阐述)包括:
show isis mpls traffic-eng advertisements
show tag-switching forwarding-table
show ip cef
show mpls traffic-eng tunnels summary
在所有 LSR 上,您都可以使用 show mpls traffic-eng tunnels 检查隧道的存在和状态。例如,在 Pesaro 上,您可以看到总共四条隧道,两条到达 Pesaro(Pescara_t1 和 t3),两条从 Pesaro(t158 和 t159)开始:
Pesaro#show mpls traffic-eng tunnels brief Signaling Summary: LSP Tunnels Process: running RSVP Process: running Forwarding: enabled Periodic reoptimization: every 3600 seconds, next in 606 seconds TUNNEL NAME DESTINATION UP IF DOWN IF STATE/PROT Pesaro_t158 10.10.10.4 - Se0/0.1 up/up Pesaro_t159 10.10.10.4 - Se0/0.1 up/up Pescara_t1 10.10.10.6 Se0/0.1 - up/up Pescara_t3 10.10.10.6 Se0/0.1 - up/up Displayed 2 (of 2) heads, 0 (of 0) midpoints,2 (of 2) tails
这是在中间路由器上看到的输出:
Pulligny#show mpls traffic-eng tunnels brief Signaling Summary: LSP Tunnels Process: running RSVP Process: running Forwarding: enabled Periodic reoptimization: every 3600 seconds, next in 406 seconds TUNNEL NAME DESTINATION UP IF DOWN IF STATE/PROT Pescara_t3 10.10.10.6 Se0/1.1 Se0/1.2 up/up Pesaro_t158 10.10.10.4 Se0/1.2 Se0/1.1 up/up Displayed 0 (of 0) heads, 2 (of 2) midpoints, 0 (of 0) tails
可以使用以下命令查看所有隧道的详细配置:
Pesaro#show mpls traffic-eng tunnels name Pesaro_t158 Name: Pesaro_t158 (Tunnel158) Destination: 10.10.10.4 Status: Admin: up Oper: up Path: valid Signaling: connected path option 1, type explicit low (Basis for Setup, path weight 40) Config Parameters: Bandwidth: 158 kbps Priority: 2 2 Affinity: 0x0/0xFFFF AutoRoute: enabled LockDown: disabled InLabel : - OutLabel : Serial0/0.1, 17 RSVP Signaling Info: Src 10.10.10.6, Dst 10.10.10.4, Tun_Id 158, Tun_Instance 1601 RSVP Path Info: My Address: 10.10.10.6 Explicit Route: 10.1.1.21 10.1.1.10 10.1.1.1 10.1.1.14 10.10.10.4 Record Route: NONE Tspec: ave rate=158 kbits, burst=8000 bytes, peak rate=158 kbits RSVP Resv Info: Record Route: NONE Fspec: ave rate=158 kbits, burst=8000 bytes, peak rate=4294967 kbits History: Current LSP: Uptime: 3 hours, 33 minutes Selection: reoptimation Prior LSP: ID: path option 1 [1600] Removal Trigger: configuration changed
在此情况下,路径在 RSVP 消息中是明确的并且是在其中指定的(承载路径的字段也称为显式路由对象 [ERO])。 如果无法跟随此路径,MPLS TE 引擎会使用下一个路径选项,它可以是另一个显式路由或动态路由。
RSVP 特定信息可以使用标准 RSVP 命令查看。在此输出中,在 Pulligny 上有两个预留,一个是 Pesaro_t158 (158K) 请求的,另一个是 Pescara_t3 (69k) 请求的。
Pulligny#show ip rsvp interface interface allocated i/f max flow max pct UDP IP UDP_IP UDP M/C Se0/1 0M 0M 0M 0 0 0 0 0 Se0/1.1 158K 512K 512K 30 0 1 0 0 Se0/1.2 69K 512K 512K 13 0 1 0 0
如果要知道在不创建隧道的情况下,特定目的地(和特定带宽)使用了哪个 TE 路径,可使用以下命令:
注意:请注意,出于空间原因,此命令被包装到第二行。
Pescara#show mpls traffic-eng topology path destination 10.10.10.6 bandwidth 75 Query Parameters: Destination: 10.10.10.6 Bandwidth: 75 Priorities: 0 (setup), 0 (hold) Affinity: 0x0 (value), 0xFFFFFFFF (mask) Query Results: Min Bandwidth Along Path: 385 (kbps) Max Bandwidth Along Path: 512 (kbps) Hop 0: 10.1.1.14 : affinity 00000000, bandwidth 512 (kbps) Hop 1: 10.1.1.5 : affinity 00000000, bandwidth 385 (kbps) Hop 2: 10.1.1.21 : affinity 00000000, bandwidth 512 (kbps) Hop 3: 10.10.10.6
如果网络执行 IP TTL 传播(请参阅 mpls ip ttl propagate),请发出 traceroute 命令,并查看跟随的路径是否为隧道以及隧道是否根据配置的内容进行路由:
Pescara#traceroute 10.10.10.6 Type escape sequence to abort. Tracing the route to 10.10.10.6 1 10.1.1.13 [MPLS: Label 29 Exp 0] 540 msec 312 msec 448 msec 2 10.1.1.2 [MPLS: Label 27 Exp 0] 260 msec 276 msec 556 msec 3 10.1.1.9 [MPLS: Label 29 Exp 0] 228 msec 244 msec 228 msec 4 10.1.1.22 112 msec * 104 msec
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
10-Aug-2005 |
初始版本 |