0101 MPLS LDP故障处理.docx
- 文档编号:29863805
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:26
- 大小:149.81KB
0101 MPLS LDP故障处理.docx
《0101 MPLS LDP故障处理.docx》由会员分享,可在线阅读,更多相关《0101 MPLS LDP故障处理.docx(26页珍藏版)》请在冰豆网上搜索。
0101MPLSLDP故障处理
插图目录
表格目录
1MPLSLDP故障处理
关于本章
本章描述内容如下表所示。
标题
内容
1.1MPLSLDP简介
介绍了进行MPLSLDP故障处理时所需的知识要点
1.2MPLSLDP故障处理
针对典型的MPLSLDP组网环境,介绍配置MPLSLDP时要注意的事项,故障处理的流程和详细的故障处理步骤。
1.3故障处理案例
介绍了若干实际的故障处理案例。
1.4FAQ
列出了用户常问的问题,并给出了相应的解答。
1.5故障诊断工具
介绍了进行故障处理所使用的故障诊断工具,包括display命令和debugging命令、告警信息、日志信息等。
1.1
MPLSLDP简介
LDP(LabelDistributionProtocol)是一种以路由为基础的信令协议,主要功能是为MPLS转发提供简单的、不带任何约束信息的隧道。
LDP所提供的隧道LSP不涉及到TE,完全由路由触发,是一种besteffort的隧道。
目前LSP主要用于VPN,为VPN提供公网隧道。
1.1.1LDPAdjacency和LDPPeer
本节对LDP中Adjacency和Peer的概念进行简单介绍。
●LDPPeer是建立了LDP会话的两台路由器;LDPAdjacency则是两台路由器之间的连接线。
●两台路由器之间可以有多条连接线,即一对LDPPeer之间可以有多个LDPAdjacency。
●一条连接线只能连接一对路由器,即一个LDPAdjacency只能对应一对LDPPeer。
图1-1LDPAdjacency
如图1-1,RouterA和RouterB之间有3条链路可以互通,所以,RouterA对于RouterB存在3个LDPAdjacency。
由于3条链路连接到同一台路由器RouterB,所以RouterA只有一个LDPPeer。
在RouterA上执行命令displaymplsldppeer,显示结果如下:
LDPPeerInformationinPublicnetwork
------------------------------------------------------------------------
Peer-IDTransport-AddressDiscovery-Source
------------------------------------------------------------------------
2.2.2.2:
02.2.2.2GigabitEthernet1/0/0
GigabitEthernet2/0/0
GigabitEthernet3/0/0
LDPAdjacency和LDPPeer的详细解释请参考RFC3036(LDPSpecification)。
1.1.2LDP会话
LDP会话(LDPSession)是LDP的一个重要概念,LDP会话用于LDP建立LSP时,在LSR之间交换各种消息(如标签映射、标签释放等消息)。
LSP的连通性、有效性由TCP来保证。
LDP会话分为两种类型:
●本地LDP会话(LocalLDPSession):
建立会话的两个LSR之间是直连的;
●远端LDP会话(RemoteLDPSession):
建立会话的两个LSR之间是非直连的。
LDP的各种功能都是基于会话的。
在当前的实现中,对于建立了LDPPeer的两台路由器,不管它们之间有多少个LDPAdjacency,只建一个会话。
1.1.3VRPMPLS系统架构
为了定位MPLS故障,应该熟悉VRP中MPLS相关的框架结构,明确各个模块之间的关系和基本的处理流程。
图1-1MPLS系统框架
从图1-2可以了解以下流程:
●路由的基本流程:
BGP/IGPàRMàFIBàFIB转发
●MPLS的基本流程:
BGP/LDP/RSVP-TEàLSPMàMPLS转发
●路由与MPLS的交叉流程:
−路由触发LDP建立LSP:
RMàLSPMàLDP
−入口LSP需要生成FTN表项,LSPM需要向对应的路由设置TOKEN。
LDPàLSPMàRMàFIB/FTNàFTN转发
−BGPLSP的FTN表项(包括公网和私网)由BGP直接通知路由生成。
BGPàRMàFIB/FTNàFTN转发
1.2MPLSLDP故障处理
本节介绍如下的内容:
●典型组网环境
●配置注意事项
●故障诊断流程
●故障处理步骤
1.2.1典型组网环境
本节的介绍基于图1-3。
图1-1MPLSLDP典型组网图
1.2.2配置注意事项
配置项
子项
注意事项
MPLS配置
MPLSLSRID
LSRID在MPLS域中唯一标识一台路由器。
若要更改系统的LSR-ID,需要在全局配置undompls命令,把所有与MPLS相关的配置全清除。
因此,不要轻易修改系统的LSR-ID
MPLS
需在系统视图和接口视图下使能MPLS能力
MPLSLSP的建立策略
对路由进行过滤,通过策略的路由会触发LDP建立Ingress或者Egress的LSP
LDP全局配置
MPLSLDP
使能LDP能力
MPLSLDP标签保持方式
保守方式或者自由方式(可选,缺省为自由方式)
MPLSLDP标签控制方式
独立方式或者有序方式(可选,缺省为有序方式)
LDP接口配置
MPLSLDP
在接口上使能LDP能力
MPLSLDP标签分发方式
LDP对等体两端配置的标签分发方式一定要一致,可配置为DOD或者DU方式(可选,缺省为DU方式)
MPLSLDP接口传输地址配置
用于和对端建立LDP会话的地址(可选,缺省为MPLSLSR-ID)
下面以RouterA的配置为例,说明配置MPLSLDP时需要注意的事项。
以下所列的配置命令只包含MPLSLDP相关部分的命令。
详细的配置请参见《VRP配置指南MPLS》。
MPLS部分的配置
#指定本机的MPLS标识,在MPLS域中此标识唯一标识一台路由器
[Quidway]mplslsr-id1.1.1.9
#使能MPLS功能
[Quidway]mpls
#指定触发ldp建立lsp的策略
[Quidway-mpls]lsp-triggerall
MPLSLDP部分的配置
#全局使能MPLSLDP
[Quidway]mplsldp
#在接口POS1/0/0上使能MPLS和MPLSLDP
[Quidway-Pos1/0/0]mpls
[Quidway-Pos1/0/0]mplsldp
#在接口POS2/0/0上使能MPLS和MPLSLDP
[Quidway-Pos2/0/0]mpls
[Quidway-Pos2/0/0]mplsldp
1.2.3故障诊断流程
图1-1MPLSLDP故障诊断流程图
1.2.4故障处理步骤
详细的故障处理步骤如下:
步骤1LDP会话反复Up/Down:
检查对端路由是否可达
通过displaymplsldppeer命令得到和本端建立连接的对端地址:
PeerInformationinPublicnetwork
--------------------------------------------------------------------------
Peer-IDTransport-AddressDiscovery-Source
--------------------------------------------------------------------------2.2.2.2:
02.2.2.2Pos1/0/0
以上显示信息中,“Transport-Address”就是对端建立会话使用的地址。
执行ping命令检查此地址是否可达。
如果ping不通,可能是转发问题。
请检查到对端的“Transport-Address”路由是否可达,并且检查本端FIB表中是否有对应的转发表项。
如果没有路由或转发项,请检查链路层和网络层。
步骤2LDP会话反复Up/Down:
是否收到对端发来的hello和keepalive报文
如果网络中存在拥塞,将可能导致LDP的hello消息报文和keepalive消息报文被延迟处理或者被丢弃。
执行displaymplsldpsession命令可以查看keepalive报文的收发情况。
--------------------------------------------------------------------------
Peer-IDStatusLAMSsnRoleSsnAgeKA-Sent/Rcv
--------------------------------------------------------------------------2.2.2.2:
0OperationalDUActive001:
00:
375671/5671
--------------------------------------------------------------------------
LDP依靠hello消息维护peer关系,如果peer的状态为Down,LDP会话也会被关闭。
可以执行displaymplsldpinterface命令查看hello报文的收发情况:
--------------------------------------------------------------------------
IF-NameStatusLAMTransport-AddressHello-Sent/Rcv
--------------------------------------------------------------------------
POS1/0/0ActiveDU2.2.2.217667/17059
--------------------------------------------------------------------------
LAM:
LabelAdvertisementModeIF-Name:
Interfacename
步骤3LDP会话反复Up/Down:
根据debugging信息定位
当故障比较复杂难以定位时,可以执行debuggingmplsldpnotification命令查看调试信息。
下面给出一些常见调试信息的分析:
TrytoSendnotificationHOLD_TIMER_EXPIREDtoPeer1.1.1.1,ReturnPDU3
上述信息表示本端路由器的“hello-hold-timer”超时,即在“hello-hold-timer”时间内没有收到hello报文。
TrytoSendnotificationKEEPALIVE_EXPIREDtoPeer1.1.1.1,ReturnPDU3
上述信息表示本端路由器的“session-hold-timer”超时,即在“session-hold-timer”时间内没有收到keepalive报文。
“TrytoSendnotificationBAD_LDPIDtoPeer1.1.1.1,ReturnPDU3”
上述调试信息经常在LDP会话状态改变时出现,一般不是会话Down的原因。
TrytoSendnotificationMALFORMED_TLVtoPeer1.1.1.1,ReturnPDU3
上述信息表明LDP收到TCP报文后,不能正确解码。
在与其他厂商设备互通时可能出现此问题。
TrytoSendnotificationBAD_PDU_LENGTHtoPeer1.1.1.1,ReturnPDU3
上述信息表明LDP收到的报文长度有问题,需要在实际环境上进行分析。
以上都是相对本端发送到对端的错误信息;对端发来的错误信息类似。
步骤4MPLSLDPLSP无法建立:
检查触发路由是否存在
LDPLSP的建立是严格由路由触发的,所以首先要检查到对端LSR-ID的路由是否存在。
Destination/MaskProtoPreCostNextHopInterface
2.2.2.2/32OSPF102100.3.4.3Pos1/0/0
如果触发路由存在,进入下一步。
步骤5MPLSLDPLSP无法建立:
检查LDP对等体的建立情况
通过displaymplsldppeer命令察看LDP对等体的建立情况。
LDPPeerInformationinPublicnetwork
--------------------------------------------------------------------
Peer-IDTransport-AddressDiscovery-Source
--------------------------------------------------------------------
3.3.3.3:
03.3.3.3POS1/0/0
4.4.4.4:
04.4.4.4GigabitEthernet2/0/0
---------------------------------------------------------------------
这一步主要是检查转发数据流对应路由的下一跳出接口是否和LDPPeer中Discovery-Source指示的接口一致。
步骤6MPLSLDPLSP震荡:
检查路由是否震荡
检查路由是否震荡,即执行displayfibip-addressverbose命令查看显示结果中的Age指示的时间。
如果该时间没有稳定增加,表明路由在震荡。
RouteEntryCount:
1
Destination:
3.3.3.3Mask:
255.255.255.255
Nexthop:
127.0.0.1OutIf:
InLoopBack0
LocalAddr:
127.0.0.1LocalMask:
0.0.0.0
Flags:
HUAge:
1258sec
ATIndex:
0Slot:
5
LspFwdFlag:
0LspToken:
0x0
InLabel:
NULLOriginAs:
0
BGPNextHop:
0.0.0.0PeerAs:
0
QosInfo:
0x0OriginQos:
0x0
NexthopBak:
0.0.0.0OutIfBak:
[NoIntf]
LspTokenBak:
0x0InLabelBak:
NULL
LspToken_ForInLabelBak:
0x0
LspTokenBak_ForInLabelBak:
0x0
EntryRefCount:
1
rt_ulVlanId:
0x0
也可以多次执行displayiprouting-table命令,检查是否存在稳定的去往目的地3.3.3.3的路由。
路由震荡的故障诊断方法请参见《VRP故障处理IP路由篇》。
步骤7MPLSLDPLSP震荡:
检查LDP会话是否稳定
如果路由存在且不存在路由震荡,请使用displaymplsldpsession命令检查LDP会话是否稳定。
LDPSession(s)inPublicNetwork
------------------------------------------------------------------------
Peer-IDStatusLAMSsnRoleSsnAgeKA-Sent/Rcv
------------------------------------------------------------------------
3.3.3.3:
0OperationalDUActive002:
17:
1315019/15019
------------------------------------------------------------------------
查看输出信息中的会话时间是否稳定增加。
如果会话不稳定,请继续从步骤1LDP会话反复Up/Down:
检查对端路由是否可达开始检查。
----结束
1.3故障处理案例
本节列出了常见的故障处理案例,如下:
●LSP震荡
●无法创建特定FEC的LDPLSP
●创建了一定数量的LDPLSP后,无法继续创建
●不能建立LDP会话
1.3.1LSP震荡
网络环境
图1-1LSP震荡组网图
RouterA和RouterB之间存在多条链路,通过POS1/0/0—POS1/0/0建立LDP会话,POS2/0/0—POS2/0/0没有配置LDP。
故障分析
故障现象:
●执行命令displaymplslspstatistics查看LSP数量,发现LSP数量在震荡。
●执行命令displaymplslspinclude10.10.20.024,发现此条LSP的状态在震荡。
●打开调试开关debuggingmplsldpadvertisement,发现LDPLSP在不停的创建和删除。
原因:
当采用DU方式建立LDP会话时:
●对于RouterA,LSPM发现10.10.20.0/24是本地路由,它触发LDP建立一条Egress的LSP,并向RouterB发送一条mapping信息。
此时,在RouterA上执行命令displaymplslsp,会发现此条LSP建立成功。
●当RouterB收到mapping消息后,LDP发现10.10.20.0/24是本地路由,向RouterA发送一个LabelRelease消息。
●RouterA收到LabelRelease消息后,删除此LSP。
此时,在RouterA上执行命令displaymplslsp,会发现LSP已经被删除。
●经过一段很短的时间后,LSPM又会触发建立此LSP。
如此循环,产生LSP震荡。
●RouterB上的处理与RouterA相同。
所以,RouterA和RouterB上的LSP都在震荡。
处理步骤
步骤1使用命令lsp-triggerip-prefixip-prefix-name,根据IP地址前缀列表所示的特定网段路由触发建立LSP。
步骤2或在多条链路上都配置LDP,建立LDP会话。
步骤3在多条链路上建立LDP会话需要配置相同的传输地址,建议使用LSRID(Loopback接口地址)作为传输地址
----结束
案例总结
仔细分析网络拓扑,充分利用调试信息。
1.3.2无法创建特定FEC的LDPLSP
网络环境
图1-1建立LSP组网图
RouterA和RouterB之间存在一条PPP链路,通过POS1/0/0—POS1/0/0建立LDP会话。
发现无法创建特定FEC的LDPLSP。
故障分析
如果发现无法创建特定FEC的LDPLSP,则针对该FEC打开MPLS控制平面的LSP调试信息开关,即执行以下命令:
debuggingmplsmanagementprocess
debuggingmplsmanagementfecip-addressmask-length
如果发现输出中包含如下错误信息:
Error:
StaticLSPexistsforthesameFEC。
表明LDPLSP无法建立的原因是已经配置了去往同一FEC的静态LSP。
删除配置的静态LSP后,故障消除。
案例总结
正确选用调试信息开关可以帮助快速定位问题。
1.3.3创建了一定数量的LDPLSP后,无法继续创建
网络环境
图1-1MPLSLDP组网图
RouterA与RouterB之间通过POS接口建立LDPLSP,创建一定数量的LDPLSP后,新的LDPLSP不能再建立。
故障分析
使用debuggingmplsmanagementfec命令打开MPLS控制平面的LSP调试信息开关。
输出以下错误信息:
Error:
Licensevaluelimitreached
表示LDPLSP无法建立的原因是已经达到许可证允许的最大LSP数目。
案例总结
设备上所能建立的LSP数目受到许可证文件的限制。
如果打开debugging输出调试信息,可以查找关键字Error快速发现故障信息。
1.3.4不能建立LDP会话
网络环境
接口使能LDP后,不能与对端建立LDP会话。
故障分析
建立LDP会话包括两个阶段:
●建立TCP连接;
●进行会话初始化,协商会话参数。
这两个阶段任何一个失败都将导致LDP会话不能建立。
建立TCP连接时,缺省使用的地址是LSRID,因此,必须将LSRID的路由发布给对端。
建立LDP会话后,由于网络拥塞或故障等原因,本地和对端在网络层上不能互通,会话保持定时器超时的时候没有收到任何LDPPDU报文,LDP会话中断。
处理步骤
步骤1执行displayiprouting-table命令,检查本节点是否得到了对端LSRID的路由。
步骤2在LSP路径沿途经过的所有接口上执行displaythis命令,检查LSP沿途节点的标签发布方式是否一致。
步骤3如果标签发布方式不一致,执行mplsldpadvertisement命令修改使其一致。
----结束
1.4FAQ
●问:
当前LDP主要有哪些应用?
答:
LDP是基于路由的标签分发协议,其最初目的是为了实现MPLS转发。
当前LDP主要应用于L3VPN和L2VPN,为VPN提供公网隧道以穿越MPLS域。
●问:
LDP会话建立不成功是否都是LDP的问题?
答:
LDP会话依赖于TCP连接,一般来说,如果LDP会话建立不成功,多数是TCP连接问题。
建立LDP会话包括两个阶段:
−建立TCP连接;
−进行会话初始化,协商会话参数。
这两个阶段任何一个失败都将导致LD
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 0101 MPLS LDP故障处理 LDP 故障 处理