Cisco LDP over RSVP
配置指导
技术应用背景
随着
MPLS TE
技术的成熟,在运营商核心网络中部署
TE
的应用越来越多,比如
TE FRR
、
Hot-standby
甚至
DS-TE
。但是在并不是网络中的所有设备都支持
MPLS TE
,可能仅有核心网络设备支持
TE
,而在网络边缘使用
LDP
。因此产生了
LDP over RSVP
的应用场景,即使用
TE
隧道作为
LDP
中的一跳。
应用场景示例
上图是一个
LDP over RSVP
的典型拓扑,其中
R1
和
R5
代表网络边缘接入路由器,不支持
TE
功能,而
R2
、
R3
和
R4
代表网络核心部分,部署
TE
功能,这里采用这个最简单的网络拓扑对于
LDP over RSVP
的配置以及在整个网络中的标签分配情况以及数据的转发情况进行简单的分析,以达到对
LDP over RSVP
功能有一个基本的认识。
网络分析
整个网络中部署
IGP
;
R1
和
R2
、
R4
和
R5
之间建立
LDP Session
,而
R2
和
R4
之间通过双向的
TE
隧道建立
LDP Session
或者
Target LDP Session
;
R2
、
R3
和
R4
之间不使能
LDP
,只使能
RSVP
在
R2
和
R4
之间建立双向的
TE
隧道;
由于
LDP Session
有直连
Session
和
Target Session
之分,这样对应对
TE
隧道的处理略有不同,在直连
Session
的方式下,
TE
隧道配置
mpls ip
,将其作为一个普通的
LDP
接口;在
Target Session
的方式下,
TE
隧道不用配置
mpls ip
,只用在全局下建立
Target Session
的配置即可;
对于
TE
隧道,使能自动路由宣告,这样可以使得标签映射能够和路由下一跳匹配,使
LDP
标签流量能够通过
LDP over RSVP
引入
TE
隧道(这里如果不用自动路由宣告而改用静态路由方式也是可以的)。
数据设计
Loopback
地址:
202.1.1.X/32
,
X=1
、
2
、
3
、
4
、
5
,即路由器序号;
接口地址:
80.X.Y.Z/24
,
X/Y=
路由器序号,
Z
=
1
、
2
,路由器序号小的为
1
,大的为
2
;
IGP
:全程部署
OSPF
,并在
R2
、
R3
和
R4
上使能
OSPF
支持
MPLS TE
;
LDP/TE
部署:
R1-R2
、
R4-R5
部署
LDP
,
R2-R4
通过双向
TE
隧道部署
Target LDP
,
R2-R3-R4
部署
TE
;
配置步骤
配置
LSR
的各接口地址;
配置
OSPF
保证
LSR
之间可达;
配置
MPLS
基本能力;
配置
LDP Target Session
;
配置
MPLS TE
隧道;
配置自动路由宣告。
详细配置以及显示信息
参看下面的第一个附件。
标签分配情况
标签分配情况分析
在
R2
上分别查看
LDP
邻居,可以看到有两个
LDP
邻居:
R2#show mpls ldp neighbor
Peer LDP Ident: 202.1.1.1:0; Local LDP Ident 202.1.1.2:0
TCP connection: 202.1.1.1.646 - 202.1.1.2.56248
State: Oper; Msgs sent/rcvd: 28/29; Downstream
Up time: 00:15:17
LDP discovery sources:
Ethernet4/1, Src IP addr: 80.1.2.1
Addresses bound to peer LDP Ident:
80.1.2.1 202.1.1.1
Peer LDP Ident: 202.1.1.4:0; Local LDP Ident 202.1.1.2:0
TCP connection: 202.1.1.4.11024 - 202.1.1.2.646
State: Oper; Msgs sent/rcvd: 28/31; Downstream
Up time: 00:15:00
LDP discovery sources:
Targeted Hello 202.1.1.2 -> 202.1.1.4, active, passive
Addresses bound to peer LDP Ident:
202.1.1.4 80.3.4.2 80.4.5.1
其中
202.1.1.4
为通过
TE
隧道和
202.1.1.4
建立的
Target LDP Session
,如果去掉该
TE
隧道,那么在
R2
上只会存在
202.1.1.1
这一个
LDP
邻居;
R4
同理。
这样,通过
TE
域建立起了一段完整连续的
LDP Session
。
具体的标签分配情况已经标在上面的拓扑图中,蓝色的数值为
LDP
标签,红色的数值为
RSVP
标签,举例而言,在
R5
上以源地址
202.1.1.5 ping 202.1.1.1
:
R5
上为该报文
push
标签
18
发送到
R4
。
R4
收到该报文后,执行
swap
标签
16
,由于
TE
隧道的自动路由宣告,到
202.1.1.1
的路由指向
Tunnel
,故在该报文外层继续
push
隧道的出标签
17
,走
RSVP
的标签转发,发送到
R3
;此时该报文就封装了
2
层标签,内层为
LDP
标签,外层为
RSVP
标签(具体的标签报文详情可以参看下面捕获的
R3-R4
之间的报文)。
R3
为
TE
域的中间节点,收到
R4
发来的报文,根据外层
RSVP
标签执行
swap
,获得出标签为
3
,
3
为隐式空标签,本地执行
pop
(
3
标签)后将报文发给
R2
。
R2
收到的报文只带了
LDP
标签,最外层的
RSVP
标签已经在
TE
域的倒数第二跳
R3
弹出了,此时走
LDP
域的标签交换,同时由于
R2
为
LDP
域的倒数第二跳,故
pop
(
3
标签)后,将报文(
IP
)发给
R1
。
R1
响应报文。
捕获报文验证标签正确性
参看下面第二个附件。
查看
enc
文件中的
ICMP
报文,可以清楚的看到
request echo
为两层标签,
reply echo
为一层标签,验证了上面的分析。
PS
:由于现在工作很忙
,时间很紧,写的比较匆忙,主要是做个记录,避免之后遗忘,待后续继续补充。
本文出自 “AnyService” 博客,转载请与作者联系!