MPLS Ping/Tracert (MPLS Echo)报文格式

MPLS LSP Ping/Tracert通过发送MPLS Echo消息实现。MPLS Echo消息使用IPv4/IPv6的UDP协议封装,UDP端口为3503,只有使能MPLS的路由器才能够识别该端口号。

MPLS LSP Traceroute和传统的Traceroute类似,通过连续发送一个TTL步进为1的Echo Request报文,让LSP沿途的每一个LSR都会收到TTL超时的Echo Request报文,同时回送一个携带下游信息(可选)以及相应返回码的Echo Reply给发送者。这样发送者就会得到该LSP沿途每一个节点的信息。

报文格式

MPLS Echo消息封装在IPv4/IPv6的UDP报文中,可能还带有MPLS标签。MPLS Echo消息中,UDP负载的格式如下:

图1 MPLS LSP Echo报文格式
字段 长度 含义
Version Number 2字节 标识MPLS Echo的版本号,目前为1。
Must Be Zero 2字节 必须填全0,接收时忽略。.
Message Type 1字节 标识该MPLS Echo消息的类型:
  • 1: MPLS Echo请求消息
  • 2: MPLS Echo响应消息
Reply mode 1字节 指示Reply Router采用什么方式回应这个消息:
  • 1: Do Not Reply
  • 2: Reply via an IPv4 UDP Packet
  • 3: Reply via an IPv4 UDP packet with Router Alert
Return Code 1字节 发送端设置为0,接收端可以设置为如下值之一:
  • 0: No return code
  • 1: Malformed Echo Request Received
  • 2: One Or More of the TLVs Was Not Understood
  • 3: Replying Router Is an Egress for the FEC at stack-depth <RSC>
  • 4: Replying Router Has No Mapping for the FEC at stack-depth <RSC>
  • 5: Downstream Mapping Mismatch
  • 6: Upstream Interface Index Unknown
  • 7: Reserved
Return subcode 1字节 Return Subcode字段包含了标签栈的处理结束的指针。如果Return subcode值为0,标识报文没有携带标签,不需要处理标签。否则,报文携带了标签。
Sender's Handle 4字节 发送者句柄,是用来标识一个MPLS Echo的,其值是在应用程序发送一个MPLS Echo Request时随机生成的。单次的LSP Ping操作可以产生多个Echo Request,但是这些Echo Request所包含的Sender’s Handle的值是相同,即单次LSP Ping操作仅能产生一个Sender’s Handle的Echo Request。
Sequence Number 4字节 序列号,Sequence Number同样是用来标识MPLS Echo的,它是一个进程的概念,进程内有效,可以用来检测丢失的Reply的个数,从而可以对网络进行延时和抖动统计。单次LSP Ping操作可以产生多个Sequence Number,其值一般从零开始逐一递增。
Timestamp 4字节 时间戳,采用NTP协议的时间格式,包含两部分:收到的时间戳和发送时间戳;可以用来计算报文从一个节点到另一个节点所需要花费的时间。
TLVs 可变 TLV (Type, Length, Value):
  • Type = 1: Target FEC Stack TLV
  • Type = 2: Downstream mapping TLV
  • Type = 3: PAD TLV
  • Type = 4: Error Code TLV
  • Type = 5: Vendor Enterprise Code TLV

Length: Value字段的长度,字节为计数单位。

Value: 取决于Type的取值,如果TLV不足4字节的整数倍,需要填充。

报文示例

图2 MPLS LSP ping request
图3 MPLS LSP ping reply
图4 MPLS TE ping request
图5 MPLS TE ping reply
图6 VCCV ping request
图7 VCCV ping request alert
图8 VPLS MAC Ping Request
图9 VPLS MAC Ping Reply
图10 VPLS PW Ping Request
图11 VPLS Multi-Hop Ping Request
图12 VPLS Multi-Hop Ping Reply

参考标准

标准 描述
RFC 4379 Detecting Multi-Protocol Label Switched (MPLS) Data Plane Failures
RFC 4377 Operations and Management (OAM) Requirements for Multi-Protocol Label Switched (MPLS) Networks
RFC 5085 Pseudowire Virtual Circuit Connectivity Verification (VCCV): A Control Channel for Pseudowires
RFC 4447 Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)

本资料收集于互联网
2016 ©