06-RSVP配置
本章节下载: 06-RSVP配置 (287.67 KB)
RSVP(Resource Reservation Protocol,资源预留协议)是一种用来在网络上请求预留资源的信令协议。RSVP经扩展后支持MPLS标签的分发,在传送标签绑定消息的同时携带资源预留信息。这种扩展后的RSVP可以作为MPLS TE的标签分发协议,沿着指定路径分发MPLS标签并预留资源,以建立CRLSP(Constraint-based Routed Label Switched Paths,基于约束路由的LSP)。扩展后的RSVP称为RSVP-TE。
RSVP消息分为以下几种:
· Path消息:由发送者沿数据报文传输的方向向下游发送,在沿途所有节点上保存路径状态。
· Resv消息:由接收者沿与数据报文传输相反的方向发送,在沿途所有节点上进行资源预留,并创建和维护预留状态。
· PathTear消息:由发送者或中间节点向下游发送,用来删除沿途节点的路径状态和相关的预留状态。
· ResvTear消息:由接收者或中间节点向上游发送,用来删除沿途节点的预留状态。
· PathErr消息:如果接收者或中间节点在处理Path消息的过程中发生了错误,就会向上游发送PathErr消息,PathErr消息不影响沿途节点的状态,只是把错误报告给发送者。
· ResvErr消息:如果发送者或中间节点在处理Resv消息的过程中发生了错误,或者由于抢占导致预留被破坏,就会向下游节点发送ResvErr消息。
· ResvConf消息:该消息发往接收者,用于对预留消息进行确认。
· Hello消息:用来在两个直连的RSVP邻居之间建立和维持邻居关系,以检测邻居的状态。只有开启RSVP的Hello扩展功能后,才会发送该消息。
RSVP-TE对RSVP消息的扩展主要是在Path消息和Resv消息中增加了新的对象。新增对象除了可以携带标签信息外,还可以携带在沿途寻找路径时的限制信息,从而实现对约束条件和快速重路由的支持。
Path消息新增的对象包括:
· LABEL_REQUEST:用来请求下游节点分配标签。
· EXPLICIT_ROUTE:用来携带Ingress节点计算出的路径信息,确保沿着该路径建立CRLSP。
· RECORD_ROUTE:用来记录CRLSP实际经过的路径及各个节点分配的标签。
· SESSION_ATTRIBUTE:用来携带MPLS TE隧道的属性信息,如建立优先级、保持优先级、亲和属性等。
Resv消息新增的对象包括:
· LABEL:用来将下游节点分配的标签通告给上游节点。
· RECORD_ROUTE:用来记录CRLSP实际经过的路径及各个节点分配的标签。
图1-1 CRLSP建立过程
如图1-1所示,使用RSVP-TE建立CRLSP的过程为:
(1) Ingress LSR产生携带LABEL_REQUEST对象的Path消息,沿着通过CSPF计算出的路径逐跳发送给Egress LSR。Path消息经过的LSR,都依据Path消息生成路径状态。
(2) Egress LSR收到Path消息后,产生携带预留信息和LABEL对象的Resv消息,沿着Path消息的相反路径逐跳发送给Ingress LSR。Resv消息通告标签的同时,在沿途的LSR上预留一定的资源,并生成预留状态。
(3) 当Ingress LSR收到Resv消息时,CRLSP建立成功。
由于RSVP是软状态协议,因此需要定时发送消息来维护节点上的资源预留状态。
资源预留状态包括路径状态和预留状态,分别保存在如下状态块中:
· PSB(Path State Block,路径状态块):由Path消息创建,用来保存LABEL_REQUEST对象。
· RSB(Reservation State Block,预留状态块):由Resv消息创建,用来保存LABEL对象。
路径状态和预留状态分别由周期性发送的Path消息和Resv消息来刷新。对于某个状态,如果在一定时间内没有收到刷新消息,则PSB或RSB中相应的状态将被删除,根据该状态建立的CRLSP也将被删除。
用来刷新资源预留状态的Path和Resv消息,统称为Refresh消息。Refresh消息除了刷新资源预留状态外,还可以用于恢复丢失的RSVP消息。
由于Refresh消息是周期性发送的,当网络中的RSVP会话比较多时,Refresh消息会加重网络负担,此时Path和Resv消息的刷新时间间隔不易过小;而对于时延敏感的应用,当RSVP消息丢失时,希望能够尽快通过Refresh消息恢复丢失的消息,此时Path和Resv消息的刷新时间间隔不易过大。简单地调整刷新间隔并不能同时解决这两类问题。
Srefresh(Summary Refresh,摘要刷新)和RSVP消息的可靠传递功能可以很好地解决上述问题。
摘要刷新功能的工作机制为:发送Path和Resv消息时,在消息中携带Message ID,用来唯一标识一个消息;RSVP通过发送携带待刷新消息Message ID的Srefresh消息,来刷新对应的Path和Resv消息。
采用摘要刷新功能后,不必传送标准的Path和Resv消息,只需传递携带Path和Resv消息摘要的Srefresh消息,即可实现对RSVP路径和预留状态进行刷新,减少了网络上的Refresh消息流量,并加快了节点对刷新消息的处理速度。
RSVP消息没有重传机制,消息丢失后发送端无法获悉,无法重传丢失的消息。通过RSVP消息的可靠性传递功能可以提高消息传递的可靠性。
RSVP消息的可靠传递功能是指对端设备需要应答本端发送的RSVP消息,否则将会重传此消息。其工作机制为:节点发送了携带Message_ID对象的消息,且Message_ID对象的ACK_Desired标识(是否需要应答标识)置位后,如果在重传时间Rf内没有收到携带对应Message_ID_ACK对象的消息,则重传时间Rf超时后重传此消息,并将重传时间置为(1+Delta)×Rf。节点持续按照上述方法重传此消息,直到节点在重传时间超时前接收到对应的应答消息,或消息传送次数达到3次。
RSVP认证功能可以用来确保RSVP消息不会被篡改,以防止伪造的资源预留请求非法占用网络资源。
RSVP认证功能是指:发送RSVP消息时使用MD5算法对认证密钥和消息内容计算出消息摘要,并将消息摘要添加到发送的RSVP消息中。对端接收到RSVP消息后,进行同样地计算,并将计算结果和消息中的摘要进行比较。如果一致,则认证通过,接收该消息;否则认证失败,丢弃该消息。
通过在消息中携带序列号,RSVP认证功能还可以用来防止报文重放攻击。设备记录接收到的RSVP消息的序列号,并根据记录的序列号判断后续消息是否符合要求。只有收到的消息的序列号在允许的范围内时,才接收该消息;否则,丢弃该消息。
RSVP GR(Graceful Restart,平滑重启)功能是指在信令协议或控制平面出现异常时,保持转发表项信息,以保证数据转发不中断。
参与RSVP GR过程的设备分为以下两种角色:
· GR Restarter:GR重启路由器,指由管理员手工或设备故障触发而重启协议的设备,它必须具备GR能力。
· GR Helper:GR Restarter的邻居,与重启的GR Restarter保持邻居关系,并协助其恢复重启前的转发状态,它也必须具备GR能力。
目前,设备只能作为RSVP GR的GR Helper。
RSVP GR依赖于RSVP的Hello扩展能力,通过Hello消息向邻居通告自己的GR能力和相关时间参数。设备和邻居如果都具备RSVP GR能力,那么在完成GR参数的交互后,就可以在检测到对方发生GR重启时,充当对方的GR Helper,保证在GR Restarter重启的过程中,数据转发不会中断。
当GR Restarter发生重启时,GR Helper连续丢失或错误的Hello消息次数达到了配置的值,GR Helper由此判定GR Restarter发生了重启。此时GR Helper会保留与该邻居相关的软状态信息,并保持向对方周期性发送Hello消息,直到重启定时器(Restart Timer)超时。
在重启定时器超时前,如果GR Helper接收到了GR Restarter发送的Hello消息,那么启动恢复定时器,并触发信令消息交互以恢复原有的软状态;否则,将删除与该邻居相关的所有RSVP软状态信息和转发表项。恢复定时器超时后,删除仍然没有恢复的软状态和转发表项。
与RSVP相关的协议规范有:
· RFC 2205:Resource ReSerVation Protocol
· RFC 3209:RSVP-TE: Extensions to RSVP for LSP Tunnels
· RFC 2961:RSVP Refresh Overhead Reduction Extensions
· RFC 4461:Signaling Requirements for Point-to-Multipoint Traffic-Engineered MPLS Label Switched Paths (LSPs)
· RFC 4875:Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE Label Switched Paths (LSPs)
配置RSVP,不能同时配置EVI或VXLAN。有关EVI和VXLAN的详细介绍,请参见“EVI配置指导”和“VXLAN配置指导”。
表1-1 RSVP配置任务简介
配置任务 |
说明 |
详细配置 |
开启RSVP能力 |
必选 |
|
配置RSVP的Refresh消息刷新功能 |
可选 请根据实际组网需求,在MPLS TE隧道经过的节点上选择配置各功能 |
|
配置RSVP摘要刷新和RSVP消息的可靠传递功能 |
||
配置RSVP的Hello扩展功能 |
||
配置RSVP认证功能 |
||
配置发送的RSVP报文的DSCP优先级 |
||
配置RSVP GR |
||
配置RSVP与BFD联动 |
为了建立MPLS TE隧道,在MPLS TE隧道经过的所有节点和接口上都需要开启RSVP能力。
表1-2 开启RSVP能力
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
全局开启RSVP能力,并进入RSVP视图 |
rsvp |
缺省情况下,全局RSVP能力处于关闭状态 |
退回系统视图 |
quit |
- |
进入接口视图 |
interface interface-type interface-number |
- |
开启接口的RSVP能力 |
rsvp enable |
缺省情况下,接口的RSVP能力处于关闭状态 |
表1-3 配置RSVP的Refresh消息刷新功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RSVP视图 |
rsvp |
- |
配置路径消息和预留消息的刷新时间间隔 |
refresh interval interval |
缺省情况下,路径消息和预留消息的刷新时间间隔为30秒 |
配置PSB和RSB的老化超时倍数 |
keep-multiplier number |
缺省情况下,PSB和RSB的老化超时倍数为3 |
开启摘要刷新功能后,将不会周期性发送Refresh消息维护路径和预留状态。
表1-4 配置RSVP摘要刷新和RSVP消息的可靠传递功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
开启摘要刷新功能和RSVP消息的可靠传递功能 |
rsvp reduction srefresh [ reliability ] |
缺省情况下,摘要刷新功能和RSVP消息的可靠传递功能处于关闭状态 |
配置RSVP消息可靠传递功能的重传增量 |
rsvp reduction retransmit increment increment-value |
缺省情况下,RSVP消息可靠传递功能的重传增量为1 通过rsvp reduction srefresh reliability命令开启RSVP消息的可靠传递功能后,本命令才会生效 |
配置RSVP消息可靠传递功能的重传时间间隔 |
rsvp reduction retransmit interval interval |
缺省情况下,RSVP消息可靠传递功能的重传时间间隔为500毫秒 通过rsvp reduction srefresh reliability命令开启RSVP消息的可靠传递功能后,本命令才会生效 |
在接口视图下开启RSVP的Hello扩展功能后,设备会通过该接口发送和接收Hello消息,通过Hello消息检测邻居的状态。
在hello interval命令指定的时间内,如果没有收到邻居发送的Hello Request消息,则主动向邻居发送Hello Request消息;如果收到了邻居发送的Hello Request消息,则立即向邻居回应Hello Ack消息。
当连续未收到Hello消息或收到错误的Hello消息的次数达到hello lost命令配置的次数时,认为邻居设备发生故障。如果配置了GR功能,则本地设备作为GR Helper协助邻居进行GR重启;如果没有配置GR功能,但配置了FRR(Fast Reroute,快速重路由)功能,则进行FRR切换。
FRR的详细介绍,请参见“MPLS配置指导”中的“MPLS TE”。
表1-5 配置RSVP的Hello扩展功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RSVP视图 |
rsvp |
- |
配置Hello消息连续丢失或错误的最大次数 |
hello lost times |
缺省情况下,Hello消息连续丢失或错误的最大次数为4次 |
配置Hello Request消息的发送时间间隔 |
hello interval interval |
缺省情况下,Hello Request消息的发送时间间隔为5秒 |
退回系统视图 |
quit |
- |
进入接口视图 |
interface interface-type interface-number |
- |
开启RSVP的Hello扩展功能 |
rsvp hello enable |
缺省情况下,RSVP的Hello扩展功能处于关闭状态 |
建议不要在同一个接口上同时配置快速重路由功能和RSVP认证功能。
为防止伪造的资源预留请求非法占用网络资源,RSVP采用逐跳认证机制来验证RSVP消息的合法性。一条链路两端的接口上需要配置相同的认证密钥,只有这样,接口之间才可以正确地交互RSVP消息。
RSVP认证功能可以在如下视图配置:
· RSVP视图:该视图下的配置对所有RSVP SA生效。
· RSVP邻居视图:该视图下的配置只对与指定RSVP邻居之间的RSVP SA生效。
· 接口视图:该视图下的配置只对根据指定接口下的配置生成的RSVP SA生效。
三个视图下配置的优先级从高到低依次为:RSVP邻居视图、接口视图、RSVP视图。
表1-6 配置RSVP认证功能(RSVP邻居视图)
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RSVP视图 |
rsvp |
- |
创建RSVP认证邻居,并进入RSVP邻居视图 |
peer ip-address |
缺省情况下,不存在RSVP认证邻居 |
为指定RSVP邻居开启RSVP认证功能,并配置认证密钥 |
authentication key { cipher | plain } string |
缺省情况下,RSVP认证功能处于关闭状态,即不进行RSVP认证 |
为指定RSVP邻居开启RSVP认证的challenge-response握手功能 |
缺省情况下,认证的challenge-response握手功能处于关闭状态 |
|
为指定RSVP邻居配置RSVP SA(Security Association,安全联盟)的空闲老化时间 |
authentication lifetime life-time |
缺省情况下,RSVP SA的空闲老化时间为1800秒(30分钟) |
为指定RSVP邻居配置对于带有认证信息的RSVP消息,最大可允许的乱序消息数量 |
authentication window-size number |
缺省情况下,对于带有认证信息的RSVP消息,最大可允许的乱序消息数量为1 |
表1-7 配置RSVP认证功能(接口视图)
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
在接口下开启RSVP认证功能,并配置认证密钥 |
rsvp authentication key { cipher | plain } string |
缺省情况下,RSVP认证功能处于关闭状态,即不进行RSVP认证 |
在接口下开启RSVP认证的challenge-response握手功能 |
rsvp authentication challenge |
缺省情况下,RSVP认证的challenge-response握手功能处于关闭状态 |
在接口下配置RSVP SA的空闲老化时间 |
rsvp authentication lifetime life-time |
缺省情况下,RSVP SA的空闲老化时间为1800秒(30分钟) |
在接口下配置对于带有认证信息的RSVP消息,最大可允许的乱序消息数量 |
rsvp authentication window-size number |
缺省情况下,对于带有认证信息的RSVP消息,最大可允许的乱序消息数量为1 |
表1-8 配置RSVP认证功能(RSVP视图)
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RSVP视图 |
rsvp |
- |
全局开启RSVP认证功能,并配置认证密钥 |
authentication key { cipher | plain } string |
缺省情况下,RSVP认证功能处于关闭状态,即不进行RSVP认证 |
全局开启RSVP认证的challenge-response握手功能 |
authentication challenge |
缺省情况下,认证的challenge-response握手功能处于关闭状态 |
全局配置RSVP SA的空闲老化时间 |
authentication lifetime life-time |
缺省情况下,RSVP SA的空闲老化时间为1800秒(30分钟) |
全局配置对于带有认证信息的RSVP消息,最大可允许的乱序消息数量 |
authentication window-size number |
缺省情况下,对于带有认证信息的RSVP消息,最大可允许的乱序消息数量为1 |
DSCP(Differentiated Services Code Point,区分服务编码点)携带在IP报文中的ToS字段,用来体现报文自身的优先等级,决定报文传输的优先程度。通过本配置可以指定发送的RSVP报文中携带的DSCP优先级的取值。
表1-9 配置发送的RSVP报文的DSCP优先级
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RSVP视图 |
rsvp |
- |
配置发送的RSVP报文的DSCP优先级 |
dscp dscp-value |
缺省情况下,RSVP报文的DSCP优先级为48 |
RSVP GR功能依赖于RSVP的Hello扩展能力,因此在配置RSVP GR功能时必须开启RSVP的Hello扩展能力。
在GR设备上进行以下配置。
表1-10 配置RSVP GR
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RSVP视图 |
rsvp |
- |
开启RSVP的GR功能 |
graceful-restart enable |
缺省情况下,RSVP的GR功能处于关闭状态 |
退回系统视图 |
quit |
- |
进入接口视图 |
interface interface-type interface-number |
- |
开启RSVP的Hello扩展功能 |
rsvp hello enable |
缺省情况下,RSVP的Hello扩展功能处于关闭状态 |
在MPLS TE网络中,LSR邻居之间的链路发生故障将导致MPLS TE转发报文失败,而MPLS TE本身无法快速检测到链路故障。通过在MPLS TE隧道内的两个RSVP邻居上分别配置RSVP与BFD(Bidirectional Forwarding Detection,双向转发检测)联动,可以快速地感知邻居之间链路的故障,确保链路出现故障时将业务从主路径切换到备份路径上。
表1-11 配置RSVP与BFD联动
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
该接口上需要开启RSVP能力 |
配置通过BFD检测本地设备和RSVP邻居之间链路的状态 |
rsvp bfd enable |
缺省情况下,不会通过BFD检测本地设备和RSVP邻居之间链路的状态 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后RSVP的运行情况,用户可以通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除RSVP统计信息。
表1-12 RSVP的显示和维护
操作 |
命令 |
显示RSVP的信息 |
display rsvp [ interface [ interface-type interface-number ] ] |
显示本地设备与RSVP邻居建立的RSVP SA信息 |
display rsvp authentication [ from ip-address ] [ to ip-address ] [ verbose ] |
显示RSVP建立的CR-LSP信息 |
display rsvp lsp [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ lsp-id lsp-id ] [ verbose ] |
显示RSVP邻居的信息 |
display rsvp peer [ interface interface-type interface-number ] [ ip ip-address ] [ verbose ] |
显示向上游设备发送的RSVP资源预留请求的信息 |
display rsvp request [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ prevhop ip-address ] [ verbose ] |
显示RSVP资源预留状态信息 |
display rsvp reservation [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ nexthop ip-address ] [ verbose ] |
显示RSVP路径状态信息 |
display rsvp sender [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ lsp-id lsp-id ] [ verbose ] |
显示RSVP统计信息 |
display rsvp statistics [ interface [ interface-type interface-number ] ] |
手工清除RSVP SA |
reset rsvp authentication [ from ip-address to ip-address ] |
清除RSVP的统计信息 |
reset rsvp statistics [ interface [ interface-type interface-number ] |
· 设备Switch A、Switch B、Switch C和Switch D运行IS-IS,都是Level-2设备;
· 使用RSVP-TE建立一条从Switch A到Switch D的MPLS TE隧道,实现两个IP网络通过MPLS TE隧道传输数据流量,该隧道需要的带宽为2000kbps;
· 隧道沿途的链路最大带宽为10000kbps,最大可预留带宽为5000kbps。
图1-2 RSVP-TE配置MPLS TE隧道组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
Switch A |
Loop0 |
1.1.1.9/32 |
Switch D |
Loop0 |
4.4.4.9/32 |
|
Vlan-int1 |
10.1.1.1/24 |
|
Vlan-int3 |
30.1.1.2/24 |
|
Vlan-int10 |
100.1.1.1/24 |
|
Vlan-int10 |
100.1.2.1/24 |
Switch B |
Loop0 |
2.2.2.9/32 |
Switch C |
Loop0 |
3.3.3.9/32 |
|
Vlan-int1 |
10.1.1.2/24 |
|
Vlan-int3 |
30.1.1.1/24 |
|
Vlan-int2 |
20.1.1.1/24 |
|
Vlan-int2 |
20.1.1.2/24 |
(1) 配置各接口的IP地址
按照图1-2配置各接口的IP地址和掩码,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] network-entity 00.0005.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] isis enable 1
[SwitchA-Vlan-interface1] isis circuit-level level-2
[SwitchA-Vlan-interface1] quit
[SwitchA] interface loopback 0
[SwitchA-LoopBack0] isis enable 1
[SwitchA-LoopBack0] isis circuit-level level-2
[SwitchA-LoopBack0] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] network-entity 00.0005.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] isis enable 1
[SwitchB-Vlan-interface1] isis circuit-level level-2
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] isis enable 1
[SwitchB-Vlan-interface2] isis circuit-level level-2
[SwitchB-Vlan-interface2] quit
[SwitchB] interface loopback 0
[SwitchB-LoopBack0] isis enable 1
[SwitchB-LoopBack0] isis circuit-level level-2
[SwitchB-LoopBack0] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 00.0005.0000.0000.0003.00
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] isis enable 1
[SwitchC-Vlan-interface3] isis circuit-level level-2
[SwitchC-Vlan-interface3] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] isis enable 1
[SwitchC-Vlan-interface2] isis circuit-level level-2
[SwitchC-Vlan-interface2] quit
[SwitchC] interface loopback 0
[SwitchC-LoopBack0] isis enable 1
[SwitchC-LoopBack0] isis circuit-level level-2
[SwitchC-LoopBack0] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] isis 1
[SwitchD-isis-1] network-entity 00.0005.0000.0000.0004.00
[SwitchD-isis-1] quit
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] isis enable 1
[SwitchD-Vlan-interface3] isis circuit-level level-2
[SwitchD-Vlan-interface3] quit
[SwitchD] interface loopback 0
[SwitchD-LoopBack0] isis enable 1
[SwitchD-LoopBack0] isis circuit-level level-2
[SwitchD-LoopBack0] quit
# 配置完成后,在各设备上执行display ip routing-table命令,可以看到相互之间都学到了到对方的路由,包括Loopback接口对应的主机路由。
(3) 配置LSR ID,开启MPLS、MPLS TE和RSVP能力
# 配置Switch A。
[SwitchA] mpls lsr-id 1.1.1.9
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B。
[SwitchB] mpls lsr-id 2.2.2.9
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] rsvp enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] rsvp enable
[SwitchB-Vlan-interface2] quit
# 配置Switch C。
[SwitchC] mpls lsr-id 3.3.3.9
[SwitchC] mpls te
[SwitchC-te] quit
[SwitchC] rsvp
[SwitchC-rsvp] quit
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] mpls enable
[SwitchC-Vlan-interface3] mpls te enable
[SwitchC-Vlan-interface3] rsvp eanble
[SwitchC-Vlan-interface3] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls enable
[SwitchC-Vlan-interface2] mpls te enable
[SwitchC-Vlan-interface2] rsvp enable
[SwitchC-Vlan-interface2] quit
# 配置Switch D。
[SwitchD] mpls lsr-id 4.4.4.9
[SwitchD] mpls te
[SwitchD-te] quit
[SwitchD] rsvp
[SwitchD-rsvp] quit
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] mpls enable
[SwitchD-Vlan-interface3] mpls te enable
[SwitchD-Vlan-interface3] rsvp enable
[SwitchD-Vlan-interface3] quit
(4) 配置IS-IS TE
# 配置Switch A。
[SwitchA] isis 1
[SwitchA-isis-1] cost-style wide
[SwitchA-isis-1] mpls te enable level-2
[SwitchA-isis-1] quit
# 配置Switch B。
[SwitchB] isis 1
[SwitchB-isis-1] cost-style wide
[SwitchB-isis-1] mpls te enable level-2
[SwitchB-isis-1] quit
# 配置Switch C。
[SwitchC] isis 1
[SwitchC-isis-1] cost-style wide
[SwitchC-isis-1] mpls te enable level-2
[SwitchC-isis-1] quit
# 配置SwitchD。
[SwitchD] isis 1
[SwitchD-isis-1] cost-style wide
[SwitchD-isis-1] mpls te enable level-2
[SwitchD-isis-1] quit
(5) 配置链路的MPLS TE属性
# 在Switch A上配置链路的最大带宽和最大可预留带宽。
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchA-Vlan-interface1] mpls te max-reservable-bandwidth 5000
[SwitchA-Vlan-interface1] quit
# 在Switch B上配置链路的最大带宽和最大可预留带宽。
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface1] mpls te max-reservable-bandwidth 5000
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface2] mpls te max-reservable-bandwidth 5000
[SwitchB-Vlan-interface2] quit
# 在Switch C上配置链路的最大带宽和最大可预留带宽。
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] mpls te max-link-bandwidth 10000
[SwitchC-Vlan-interface3] mpls te max-reservable-bandwidth 5000
[SwitchC-Vlan-interface3] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchC-Vlan-interface2] mpls te max-reservable-bandwidth 5000
[SwitchC-Vlan-interface2] quit
# 在Switch D上配置链路的最大带宽和最大可预留带宽。
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] mpls te max-link-bandwidth 10000
[SwitchD-Vlan-interface3] mpls te max-reservable-bandwidth 5000
[SwitchD-Vlan-interface3] quit
(6) 配置MPLS TE隧道
# 在Switch A上配置MPLS TE隧道Tunnel1:目的地址为Switch D的LSR ID(4.4.4.9);采用RSVP-TE信令协议建立MPLS TE隧道;隧道所需的带宽为2000kbps。
[SwitchA] interface tunnel 1 mode mpls-te
[SwitchA-Tunnel1] ip address 7.1.1.1 255.255.255.0
[SwitchA-Tunnel1] destination 4.4.4.9
[SwitchA-Tunnel1] mpls te signaling rsvp-te
[SwitchA-Tunnel1] mpls te bandwidth 2000
[SwitchA-Tunnel1] quit
(7) 配置静态路由使流量沿MPLS TE隧道转发
# 在Switch A上配置静态路由,使得到达网络100.1.2.0/24的流量通过MPLS TE隧道接口Tunnel1转发。
[SwitchA] ip route-static 100.1.2.0 24 tunnel 1 preference 1
# 配置完成后,在Switch A上执行display interface tunnel命令可以看到隧道接口状态为up。
[SwitchA] display interface tunnel
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64kbps
Maximum transmission unit: 64000
Internet address: 7.1.1.1/24 (primary)
Tunnel source unknown, destination 4.4.4.9
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 6 bytes/sec, 48 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 177 packets, 11428 bytes, 0 drops
# 在Switch A上执行display mpls te tunnel-interface命令可以看到隧道的详细信息。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 1
Tunnel State : Up (Main CRLSP up, Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 23331 Tunnel ID : 1
Admin State : Normal
Ingress LSR ID : 1.1.1.9 Egress LSR ID : 4.4.4.9
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 2000 kbps
Reserved Bandwidth : 2000 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : -
Backup Explicit Path : -
Metric Type : TE
Record Route : Disabled Record Label : Disabled
FRR Flag : Disabled Backup Bandwidth Flag: Disabled
Backup Bandwidth Type: - Backup Bandwidth : -
Route Pinning : Disabled
Retry Limit : 10 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : -
# 在Switch A上执行display ip routing-table命令,可以看到路由表中有以Tunnel1为出接口的静态路由信息。
· 设备Switch A、Switch B和Switch C运行IS-IS,都是Level-2设备;
· 使用RSVP-TE建立从Switch A到Switch C的MPLS TE隧道;
· 设备Switch A、Switch B和Switch C支持RSVP的Hello扩展能力;
· Switch A、Switch B和Switch C为RSVP邻居,通过开启GR能力,邻居之间可以在对方发生GR Restart的时候提供GR Helper支持。
图1-3 RSVP GR配置组网图
(1) 配置各接口的IP地址
按照图1-3配置各接口的IP地址和掩码,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口(具体配置过程略)
(3) 配置LSR ID,开启MPLS、MPLS TE、RSVP和RSVP的Hello扩展能力
# 配置Switch A
<SwitchA> system-view
[SwitchA] mpls lsr-id 1.1.1.9
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] rsvp hello enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B
<SwitchB> system-view
[SwitchB] mpls lsr-id 2.2.2.9
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB-mpls] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] rsvp enable
[SwitchB-Vlan-interface1] rsvp hello enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] rsvp enable
[SwitchB-Vlan-interface2] rsvp hello enable
[SwitchB-Vlan-interface2] quit
# 配置Switch C
<SwitchC> system-view
[SwitchC] mpls lsr-id 3.3.3.9
[SwitchC] mpls te
[SwitchC-te] quit
[SwitchC] rsvp
[SwitchC-rsvp] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls enable
[SwitchC-Vlan-interface2] mpls te enable
[SwitchC-Vlan-interface2] rsvp enable
[SwitchC-Vlan-interface2] rsvp hello enable
[SwitchC-Vlan-interface2] quit
(4) 配置IS-IS TE(具体配置过程略)
(5) 配置MPLS TE隧道(具体配置过程略)
(6) 配置RSVP GR
# 配置Switch A
[SwitchA] rsvp
[SwitchA-rsvp] graceful-restart enable
# 配置Switch B
[SwitchB] rsvp
[SwitchB-rsvp] graceful-restart enable
# 配置Switch C
[SwitchC] rsvp
[SwitchC-rsvp] graceful-restart enable
# 在Switch A和Switch C之间创建隧道且运行稳定后,通过命令可以看到邻居的GR状态已经为Ready状态。
<SwitchA> display rsvp peer verbose
Peer: 10.1.1.2 Interface: Vlan1
Hello state: Up Hello type: Active
P2P PSB count: 0 P2P RSB count: 1
Src instance: 0x1f08 Dst instance: 0x22
Summary refresh: Disabled Graceful Restart state: Ready
Peer GR restart time: 120000 ms Peer GR recovery time: 0 ms
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!