LDP treetrace commands

ldp-treetrace

Syntax

ldp-treetrace {prefix ip-prefix/mask} [max-ttl ttl-value] [max-path max-paths] [timeout timeout] [retry-count retry-count] [fc fc-name [profile profile]] [downstream-map-tlv {dsmap|ddmap}]

Context

oam

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE (standalone and standalone-VC), 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures LDP treetrace to perform a single run of the LDP ECMP OAM tree trace. LDP treetrace tests are run to discover all ECMP paths of an LDP FEC

Parameters

prefix ip-prefix/mask

Specifies the address prefix and subnet mask of the target BGP IPv4 label route.

max-ttl max-label-ttl

Specifies the maximum TTL value in the MPLS label for the LSP trace test, expressed as a decimal integer.

Values

1 to 255

Default

30

max-paths max-paths

Specifies the maximum number of paths for an LDP treetrace test, expressed as a decimal integer.

Values

1 to 255

Default

128

timeout timeout

Specifies the timeout, in seconds, expressed as a decimal integer. This value overrides the default timeout value. It specifies the amount of time the router will wait for a message reply after sending the message request. When the message timeout expires, the requesting router assumes that the message response will not be received. Any response received after the request times out is silently discarded.

Values

1 to 60

Default

3

fc fc-name

Specifies the forwarding class of the MPLS echo request packet.

When an MPLS echo request packet is generated in the CPM and forwarded to the outgoing interface, the packet is queued in the egress network queue corresponding to the specified fc and profile parameter values. The LSP-EXP mappings on the outgoing interface control the marking of the packet EXP.

When the MPLS echo request packet is received on the responding node, the LSP-EXP mappings of the incoming interface determine the fc parameter values.

When an MPLS echo reply packet is generated in the CPM and forwarded to the outgoing interface, the packet is queued in the egress network queue corresponding to the fc parameter. The parameter values is determined by the classification of the echo request packet being replied to at the incoming interface control the marking of the packet. The LSP-EXP mappings on the outgoing interface. The TOS byte is not modified. The following table summarizes the MPLS echo request packet behavior.

Table: Request packet and behavior for sender and responder nodes
Node Packet and description of behavior

CPM (sender node)

echo request packet:

  • packet{tos=1, fc1}

  • fc1 and profile1 are as entered by user in OAM command or default values

  • tos1 as per mapping of {fc1} to IP precedence in network egress QoS policy of outgoing interface

Outgoing interface (sender node)

echo request packet:

  • pkt queued as {fc1}

  • ToS field=tos1 not remarked

  • EXP=exp1, as per mapping of {fc1} to EXP in network egress QoS policy of outgoing interface

Incoming interface (responder node)

echo request packet:

  • packet{tos1, exp1}

  • exp1 mapped to {fc2} as per classification in network QoS policy of incoming interface

CPM (responder node)

echo reply packet:

  • packet{tos=1, fc2}

Outgoing interface (responder node)

echo reply packet:

  • pkt queued as {fc2}

  • ToS filed= tos1 not remarked (reply inband or out-of-band)

  • EXP=exp2, if reply is inband, remarked as per mapping of {fc2, profile2} to EXP in network egress QoS policy of outgoing interface

Incoming interface (sender node)

echo reply packet:

  • packet{tos1, exp2}

  • exp2 mapped to {fc1, profile1} as per classification in network QoS policy of incoming interface

Values

be, l2, af, l1, h2, ef, h1, nc

Default

be

profile profile

Specifies the profile state of the MPLS echo request packet.

Values

in, out

Default

out

retry-count retry-count

Specifies the maximum number of consecutive MPLS echo requests, expressed as a decimal integer, that do not receive a reply before the trace operation fails for a specific TTL.

Values

1 to 255

Default

5

downstream-map-tlv {dsmap | ddmap}

Specifies which format of the Downstream Mapping TLV to use in the LSP trace packet. Use dsmap for the original DSMAP TLV format defined in RFC 4379. Use ddmap for the enhanced DDMAP TLV format defined in RFC 6424.

Default

inherited from global configuration of downsteamn mapping TLV in option mpls-echo-request-downstream-map {dsmap | ddmap}

Output

The following output is an example of LDP treetrace information.

Sample output
*A:Dut-A# oam ldp-treetrace prefix 10.20.1.6/32 

ldp-treetrace for Prefix 10.20.1.6/32:

         127.0.0.1, ttl =   3 dst =      127.1.0.255 rc = EgressRtr status = Done
    Hops:         127.0.0.1         127.0.0.1

         127.0.0.1, ttl =   3 dst =      127.2.0.255 rc = EgressRtr status = Done
    Hops:         127.0.0.1         127.0.0.1

ldp-treetrace discovery state: Done
ldp-treetrace discovery status: ' OK '
Total number of discovered paths: 2
Total number of failed traces: 0

test-oam

Syntax

test-oam

Context

config

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE (standalone and standalone-VC), 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

Commands in this context configure Operations, Administration, and Maintenance test parameters.

ldp-treetrace

Syntax

[no] ldp-treetrace

Context

config>test-oam

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE (standalone and standalone-VC), 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures the LDP ECMP OAM tree trace which consists of an LDP ECMP path discovery and an LDP ECMP path probing features.

The no option deletes the configuration for the LDP ECMP OAM tree discovery and path probing under this context.

Output

The following outputs are examples of LDP treetrace information over a numbered IP interface.

Sample output
*A:Dut-B# oam ldp-treetrace prefix 10.20.1.5/32 

ldp-treetrace for Prefix 10.20.1.5/32:

       10.10.131.2, ttl =   2 dst =      127.1.0.253 rc = EgressRtr status = Done
    Hops:          11.1.0.2

       10.10.132.2, ttl =   2 dst =      127.1.0.255 rc = EgressRtr status = Done
    Hops:          11.1.0.2

       10.10.131.2, ttl =   2 dst =      127.2.0.255 rc = EgressRtr status = Done
    Hops:          11.2.0.2

       10.10.132.2, ttl =   2 dst =      127.2.0.253 rc = EgressRtr status = Done
    Hops:          11.2.0.2

ldp-treetrace discovery state: Done
ldp-treetrace discovery status: ' OK '
Total number of discovered paths: 4
Total number of failed traces: 0

fc

Syntax

fc fc-name

no fc

Context

config>test-oam>ldp-treetrace

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE (standalone and standalone-VC), 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures the forwarding class of the MPLS echo request packet.

When an MPLS echo request packet is generated in the CPM and forwarded to the outgoing interface, the packet is queued in the egress network queue corresponding to the specified fc parameter values. The LSP-EXP mappings on the outgoing interface control the marking of the packet EXP.

When the MPLS echo request packet is received on the responding node, the LSP-EXP mappings of the incoming interface determine the fc parameter values.

When an MPLS echo reply packet is generated in the CPM and forwarded to the outgoing interface, the packet is queued in the egress network queue corresponding to the fc parameter. The classification of the echo request packet being replied to at the incoming interface determines the value of the fc parameter. The LSP-EXP mappings on the outgoing interface control the marking of the packet EXP. The TOS byte is not modified. Table: Request packet and behavior for sender and responder nodes summarizes this behavior.

The no form of this command reverts the FC type to the default value.

Default

be

Parameters

fc-name

Specifies the forwarding class of the MPLS echo request packets.

Values

be, l2, af, l1, h2, ef, h1, nc

path-discovery

Syntax

path-discovery

Context

config>test-oam>ldp-treetrace

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE (standalone and standalone-VC), 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

Commands in this context configure LDP ECMP OAM path discovery.

The ingress LER sends LSP Trace messages, including the LDP IPv4 Prefix FEC TLV and DSMAP TLV to the downstream LSR to build the ECMP tree for a specific FEC (egress FEC). It also inserts an IP address range drawn from the 127/8 space. The downstream LSR uses the address range to determine the ECMP path exercised by an IP address or a subrange of addresses within the specified range based on its internal hash routine. When the ingress LER receives the MPLS echo reply, it records this information and proceeds with the next echo request message targeted for a node downstream of the first LSR node along one of the ECMP paths. The subrange of IP addresses indicated in the initial reply allows the LSR downstream of the ingress LER to pass this message to its downstream node along the first ECMP path.

Use the interval command to configure the frequency of running tree discovery.

The ingress LER gets the list of FECs from the LDP FEC database. New FECs are added to the discovery list at the next tree discovery, and not when they are learned and added into the FEC database. Use the policy-statement command to configure FECs to include or exclude the use of a policy profile.

interval

Syntax

interval minutes

no interval

Context

config>test-oam>ldp-treetrace>path-discovery

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE (standalone and standalone-VC), 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures the frequency of the LDP ECMP OAM path-discovery process. At every interval, the node sends LSP trace messages to discover the entire ECMP path tree for a specific destination FEC.

The no form of this command reverts the interval to its default value.

Default

60

Parameters

minutes

Specifies the number of minutes to wait before repeating the LDP tree auto-discovery process.

Values

60 to 1440

max-path

Syntax

max-path max-paths

Context

config>test-oam>ldp-treetrace>path-discovery

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE (standalone and standalone-VC), 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12.

Description

This command configures the maximum number of ECMP paths the path discovery attempts to discover for each run every interval minutes.

The no form of this command reverts to the default value.

Default

16

Parameters

max-paths

Specifies the maximum number of paths for the tree discovery.

Values

1 to 16

max-ttl

Syntax

max-ttl ttl-value

Context

config>test-oam>ldp-treetrace>path-discovery

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE: standalone and standalone-VC, 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures the maximum number of hops that are traced in the path of each FEC to be discovered.

The no form of this command reverts to the maximum time-to-live (TTL) default value.

Default

255

Parameters

ttl-value

Specifies the maximum label TTL value for an LSP trace request during the tree discovery.

Values

1 to 255

policy-statement

Syntax

policy-statement policy-name [...(up to 5 max)]

Context

config>test-oam>ldp-treetrace>path-discovery

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE: standalone and standalone-VC, 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures FEC policy to determine which routes are imported from the LDP FEC database for the purpose of discovering its paths and probing them.

If no policy is specified, the ingress LER imports the full list of FECs from the LDP FEC database. New FECs are added to the discovery list at the next path discovery, and not when they are learned and added into the FEC database. A maximum of 500 FECs can be discovered using path discovery.

The user can configure the FECs to include or exclude.

Policies are configured in the config>router>policy-options context. A maximum of five policy names can be specified.

The no form of this command removes the policy from the configuration.

Default

no policy-statement

Parameters

policy-name

Specifies the route policy name to filter LDP imported address FECs. Allowed values are any string up to 32 characters composed of printable, 7-bit ASCII characters. If the string contains special characters (#, $, spaces, and so on), the entire string must be enclosed within double quotes. The specified policy names must already be defined.

retry-count

Syntax

retry-count retry-count

no retry-count

Context

config>oam-test>ldp-treetrace>path-discovery

config>oam-test>ldp-treetrace>path-probing

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE: standalone and standalone-VC, 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

In the config>oam-test>ldp-treetrace>path-discovery context, this command configures the number of retransmissions of an LSP trace message to discover the path of an LDP FEC when no response is received within the timeout period.

In the config>oam-test>ldp-treetrace>path-probing context, this command configures the number of retransmissions of an LSP ping message to probe the path of an LDP FEC when no response is received within the timeout period.

The no form of this command reverts to the default value.

Default

3

Parameters

retry-count

Specifies the maximum number of consecutive timeouts allowed before failing a path probe (ping).

Values

1 to 10

timeout

Syntax

timeout timeout

no timeout

Context

config>test-oam>ldp-treetrace>path-discovery

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE: standalone and standalone-VC, 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures the maximum amount of time, in seconds, that the node will wait for a response after sending an LSP Trace message sent to discover the path of an LDP FEC before it declares failure. After consecutive failures equal to the value configured for the retry-count command, the node gives up.

The no form of this command reverts the timeout period to the default value.

Default

30

Parameters

timeout

Specifies the timeout period, in seconds.

Values

1 to 60

path-probing

Syntax

path-probing

Context

config>test-oam>ldp-treetrace

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE: standalone and standalone-VC, 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

Commands in this context configure LDP tree trace path probing.

The periodic path exercising runs in the background to test the LDP ECMP paths discovered by the path discovery capability. The probe used is an LSP Ping message with an IP address drawn from the subrange of 127/8 addresses indicated by the output of the tree discovery for this FEC.

Use the interval command to configure the frequency of running path probes. If an interface is down on the ingress LER that is performing the LDP tree trace, LSP ping probes tfrom the interface are not sent, but the ingress LER node does not raise alarms.

The LSP ping routine updates the content of the MPLS echo request message, specifically the IP address, as soon as the LDP ECMP path discovery phase has output the results of a new computation for the path in question.

interval

Syntax

interval minutes

no interval

Context

config>test-oam>ldp-treetrace>path-probing

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE: standalone and standalone-VC, 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures the frequency of the LSP Ping messages used to probe the paths of all LDP FECs discovered by the LDP tree trace path discovery.

The no option resets the interval to its default value.

Default

1

Parameters

minutes

Specifies the number of minutes to wait between probing all active ECMP paths for each LDP FEC.

Values

1 to 60

timeout

Syntax

timeout timeout

no timeout

Context

config>test-oam>ldp-treetrace>path-probing

Platforms

7210 SAS-T, 7210 SAS-Mxp, 7210 SAS-Sx/S 1/10GE: standalone and standalone-VC, 7210 SAS-Sx 10/100GE, 7210 SAS-R6, and 7210 SAS-R12

Description

This command configures the maximum amount of time, in minutes, that the node waits for a response after sending an LSP Ping message to probe the path of an LDP FEC before declaring failure. After consecutive failures equal to the value configured for the retry-count command, the node gives up.

The no form of this command resets the timeout period to its default value.

Default

1

Parameters

timeout

Specifies the timeout parameter, in minutes.

Values

1 to 3

mpls-echo-request-downstream-map

Syntax

mpls-echo-request-downstream-map {dsmap | ddmap}

no mpls-echo-request-downstream-map

Context

config>test-oam

Platforms

Supported on all 7210 SAS platforms as described in this document

Description

This command specifies which format of the DSMAP TLV to use in all LSP trace packets and LDP tree trace packets originated on this node. The DSMAP TLV is the original format defined in RFC 4379 and is the default value. The Downstream Detailed Mapping (DDMAP) TLV is the enhanced format, as defined in RFC 6424.

This command applies to the LSP trace of an RSVP P2P LSP, MPLS-TP LSP, or LDP unicast FEC, and to LDP tree trace of a unicast LDP FEC. It does not apply to LSP trace of an RSVP P2MP LSP, which always uses the DDMAP TLV.

The global DSMAP and DDMAP setting impacts the behavior of both OAM LSP trace packets and SAA test packets of type lsp-trace and is used by the sender node when one of the following events occurs.

  1. An SAA test of type lsp-trace is created (not modified) and no value is specified for the per-test downstream-map-tlv {dsmap | ddmap | none} option. In this case, the SAA test downstream-map-tlv value defaults to the global mpls-echo-request-downstream-map value.

  2. An OAM test of type lsp-trace test is executed and no value is specified for the per-test downstream-map-tlv {dsmap | ddmap | none} option. In this case, the OAM test downstream-map-tlv value defaults to the global mpls-echo-request-downstream-map value.

A consequence of the preceding rules is that a change to the value of mpls-echo-request-downstream-map does not affect the value inserted in the DSMAP TLV of existing tests.

The following are the details of the processing of the new DDMAP TLV.

  1. When either the DSMAP TLV or the DDMAP TLV is received in an echo request message, the responder node includes the same type of TLV in the echo reply message with the correct downstream interface and label stack information.

  2. If an echo request message without a DSMAP or DDMAP TLV expires at a node that is not the egress for the target FEC stack, the responder node always includes the DSMAP TLV in the echo reply message. This can occur in the following cases.

    1. The user issues an LSP trace from a sender node with a min-ttl value higher than 1 and a max-ttl value lower than the number of hops to reach the egress of the target FEC stack. This is the sender node behavior when the global configuration or the per-test setting of the DSMAP or DDMAP is set to DSMAP.

    2. The user issues an LSP ping from a sender node with a ttl value lower than the number of hops to reach the egress of the target FEC stack. This is the sender node behavior when the global configuration of the DSMAP or DDMAP is set to DSMAP.

    3. The behavior in 2.a is changed when the global configuration or the per-test setting of the DSMAP TLV is set to DDMAP. In this case, the sender node includes the DDMAP TLV with the Downstream IP address field set to the all-routers multicast address, as defined in Section 3.3 of RFC 4379. The responder node bypasses the interface and label stack validation and replies with a DDMAP TLV with the correct downstream information for the target FEC stack.

  3. A sender node never includes the DSMAP or DDMAP TLV in an LSP Ping message.

In addition to performing the same features as the DSMAP TLV, the new DDMAP TLV addresses the following scenarios:

  1. full validation of an LDP FEC stitched to a BGP IPv4 label route; in this case, the LSP trace message is inserted from the LDP LSP segment or from the stitching point

  2. full validation of a BGP IPv4 label route stitched to an LDP FEC

  3. full validation of an LDP FEC that is stitched to a BGP LSP and stitched back into an LDP FEC; in this case, the LSP trace message is inserted from the LDP segments or the or from the stitching points

  4. full validation of an LDP FEC tunneled over an RSVP LSP using LSP trace

To correctly check a target FEC that is stitched to another FEC (stitching FEC) of the same or a different type, or that is tunneled over another FEC (tunneling FEC), the responding nodes must provide details about the FEC manipulation back to the sender node. This is achieved using the FEC stack change sub-TLV in the DDMAP TLV, as defined in RFC 6424.

When the user configures the use of the DDMAP TLV on a trace for an LSP that does not undergo stitching or tunneling in the network, the procedures at the sender and responder nodes are the same as for the DSMAP TLV.

This feature introduces changes to the target FEC stack validation procedures at the sender and responder nodes in the case of LSP stitching and LSP hierarchy. These changes pertain to the processing of the new FEC stack change sub-TLV in the new DDMAP TLV and the new return code of value 15 Label switched with FEC change.

The no form of this command reverts to the default behavior of using the DSMAP TLV in a LSP trace packet and LDP tree trace packet.

Default

dsmap

Output

The following output is an example of DSMAP TLV information.

LDP-over-RSVP
A          B          D          F          E          C  
o -------- o -------- o -------- o -------- o -------- o  
| \______/ | \____________________________/ | \______/ |  
 \  RSVP  /               LDP                \  RSVP  /   
  \______/                                    \______/    
    LDP                                         LDP       

Testing LDP FEC of Node C with DSMAP TLV
----------------------------------------
*A:Dut-A# 
*A:Dut-A# oam lsp-trace prefix 10.20.1.3/32 downstream-map-tlv dsmap detail 
lsp-trace to 10.20.1.3/32: 0 hops min, 0 hops max, 104 byte packets
1  10.20.1.2  rtt=3.90ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.4.4 ifaddr=10.10.4.4 iftype=ipv4Numbered MRU=1500 
           label[1]=131068 protocol=3(LDP)
2  10.20.1.4  rtt=5.69ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.9.6 ifaddr=10.10.9.6 iftype=ipv4Numbered MRU=1500 
           label[1]=131066 protocol=3(LDP)
3  10.20.1.6  rtt=7.88ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.10.5 ifaddr=10.10.10.5 iftype=ipv4Numbered MRU=1500 
           label[1]=131060 protocol=3(LDP)
4  10.20.1.5  rtt=23.2ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.5.3 ifaddr=10.10.5.3 iftype=ipv4Numbered MRU=1496 
           label[1]=131071 protocol=3(LDP)
5  10.20.1.3  rtt=12.0ms rc=3(EgressRtr) rsc=1 
*A:Dut-A# 


Testing LDP FEC of Node C with DDMAP TLV
----------------------------------------
*A:Dut-A# oam lsp-trace prefix 10.20.1.3/32 downstream-map-tlv ddmap detail 
lsp-trace to 10.20.1.3/32: 0 hops min, 0 hops max, 136 byte packets
1  10.20.1.2  rtt=4.00ms rc=3(EgressRtr) rsc=2 
1  10.20.1.2  rtt=3.48ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.4.4 ifaddr=10.10.4.4 iftype=ipv4Numbered MRU=1500 
           label[1]=131068 protocol=3(LDP)
2  10.20.1.4  rtt=5.34ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.9.6 ifaddr=10.10.9.6 iftype=ipv4Numbered MRU=1500 
           label[1]=131066 protocol=3(LDP)
3  10.20.1.6  rtt=7.78ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.10.5 ifaddr=10.10.10.5 iftype=ipv4Numbered MRU=1500 
           label[1]=131060 protocol=3(LDP)
4  10.20.1.5  rtt=12.8ms rc=15(LabelSwitchedWithFecChange) rsc=1 
     DS 1: ipaddr=10.10.5.3 ifaddr=10.10.5.3 iftype=ipv4Numbered MRU=1496 
           label[1]=131054 protocol=4(RSVP-TE)
           label[2]=131071 protocol=3(LDP)
           fecchange[1]=PUSH fectype=RSVP IPv4 prefix=10.20.1.3 remotepeer=10.10.5.3

5  10.20.1.3  rtt=12.8ms rc=3(EgressRtr) rsc=2 
5  10.20.1.3  rtt=13.4ms rc=3(EgressRtr) rsc=1 
*A:Dut-A# 



D          F          E          C          A          B  
o -------- o -------- o -------- o -------- o -------- o  
  \_________________/ | \_________________/ | \______/ |  
          LDP          \     RSVP ECA      / \  RSVP  /   
                        \_________________/   \______/    
                                LDP             LDP       

Testing LDP FEC of Node B with DDMAP TLV
----------------------------------------
*A:Dut-D# 
*A:Dut-D# oam lsp-trace prefix 10.20.1.2/32 downstream-map-tlv ddmap detail 
lsp-trace to 10.20.1.2/32: 0 hops min, 0 hops max, 108 byte packets
1  10.20.1.6  rtt=3.17ms rc=8(DSRtrMatchLabel) rsc=1 
     DS 1: ipaddr=10.10.10.5 ifaddr=10.10.10.5 iftype=ipv4Numbered MRU=1500 
           label[1]=131065 protocol=3(LDP)
2  10.20.1.5  rtt=8.27ms rc=15(LabelSwitchedWithFecChange) rsc=1 
     DS 1: ipaddr=10.10.5.3 ifaddr=10.10.5.3 iftype=ipv4Numbered MRU=1496 
           label[1]=131068 protocol=4(RSVP-TE)
           label[2]=131065 protocol=3(LDP)
           fecchange[1]=PUSH fectype=RSVP IPv4 prefix=10.20.1.1 remotepeer=10.10.5.

3  10.20.1.3  rtt=9.50ms rc=8(DSRtrMatchLabel) rsc=2 
     DS 1: ipaddr=10.10.2.1 ifaddr=10.10.2.1 iftype=ipv4Numbered MRU=1500 
           label[1]=131068 protocol=4(RSVP-TE)
4  10.20.1.1  rtt=10.4ms rc=3(EgressRtr) rsc=2 
4  10.20.1.1  rtt=10.2ms rc=15(LabelSwitchedWithFecChange) rsc=1 
     DS 1: ipaddr=10.10.1.2 ifaddr=10.10.1.2 iftype=ipv4Numbered MRU=1496 
           label[1]=131066 protocol=4(RSVP-TE)
           label[2]=131071 protocol=3(LDP)
           fecchange[1]=PUSH fectype=RSVP IPv4 prefix=10.20.1.2 remotepeer=10.10.1.

5  10.20.1.2  rtt=13.7ms rc=3(EgressRtr) rsc=2 
5  10.20.1.2  rtt=13.6ms rc=3(EgressRtr) rsc=1 
*A:Dut-D# 

Testing LDP FEC of Node F with DSMAP TLV
----------------------------------------
*A:Dut-A# *A:Dut-A# oam lsp-trace prefix 10.20.1.6/32 downstream-map-
tlv dsmap detail lsp-trace to 10.20.1.6/32: 0 hops min, 0 hops max, 104 byte packets
1  10.20.1.2  rtt=2.65ms rc=8(DSRtrMatchLabel) rsc=1
2  10.20.1.3  rtt=4.89ms rc=8(DSRtrMatchLabel) rsc=1
3  10.20.1.4  rtt=6.49ms rc=5(DSMappingMismatched) rsc=1 
*A:Dut-A#

Testing LDP FEC of Node F with DDMAP TLV
----------------------------------------
*A:Dut-A# oam lsp-trace prefix 10.20.1.6/32 downstream-map-tlv ddmap detail lsp-
trace to 10.20.1.6/32: 0 hops min, 0 hops max, 108 byte packets
1  10.20.1.2  rtt=3.50ms rc=15(LabelSwitchedWithFecChange) rsc=1
      DS 1: ipaddr=10.10.3.3 ifaddr=10.10.3.3 iftype=ipv4Numbered MRU=1496
            label[1]=131068 protocol=3(LDP)
            label[2]=131060 protocol=2(BGP)
            fecchange[1]=POP  fectype=LDP IPv4 prefix=10.20.1.6 remotepeer=0.0.0.0 (
Unknown)
            fecchange[2]=PUSH fectype=BGP IPv4 prefix=10.20.1.6 remotepeer=10.20.1.5
            fecchange[3]=PUSH fectype=LDP IPv4 prefix=10.20.1.5 remotepeer=10.10.3.3
2  10.20.1.3  rtt=6.53ms rc=15(LabelSwitchedWithFecChange) rsc=2
      DS 1: ipaddr=10.10.11.4 ifaddr=10.10.11.4 iftype=ipv4Numbered MRU=1496
            label[1]=131060 protocol=4(RSVP-TE)
            label[2]=131070 protocol=3(LDP)
            label[3]=131060 protocol=2(BGP)
            fecchange[1]=PUSH fectype=RSVP IPv4 prefix=10.20.1.4 remotepeer=10.10.11
.4
3  10.20.1.4  rtt=7.94ms rc=3(EgressRtr) rsc=3
3  10.20.1.4  rtt=6.69ms rc=8(DSRtrMatchLabel) rsc=2
      DS 1: ipaddr=10.10.6.5 ifaddr=10.10.6.5 iftype=ipv4Numbered MRU=1500
            label[1]=131071 protocol=3(LDP)
            label[2]=131060 protocol=2(BGP)
4  10.20.1.5  rtt=10.1ms rc=3(EgressRtr) rsc=2
4  10.20.1.5  rtt=8.97ms rc=15(LabelSwitchedWithFecChange) rsc=1
      DS 1: ipaddr=10.10.10.6 ifaddr=10.10.10.6 iftype=ipv4Numbered MRU=1500
            label[1]=131071 protocol=3(LDP)
            fecchange[1]=POP  fectype=BGP IPv4 prefix=10.20.1.6 remotepeer=0.0.0.0 (
Unknown)
            fecchange[2]=PUSH fectype=LDP IPv4 prefix=10.20.1.6 remotepeer=10.10.10.
6
5  10.20.1.6  rtt=11.8ms rc=3(EgressRtr) rsc=1 *A:Dut-A#


A         B          C           D         E 
o ------- o -------- o --------- o ---3--- o 
  \_____/ |            \_______/           | 
    LDP   |              RSVP              |             
          |\______________________________/|             
          |              LDP               |             
           \______________________________/              
                         BGP                             
Testing BGP Label Route of Node E with DDMAP TLV
-------------------------------------------------
*A:Dut-B# oam lsp-trace prefix 11.20.1.5/32 bgp-label downstream-map-
tlv ddmap detail lsp-trace to 11.20.1.5/32: 0 hops min, 0 hops max, 124 byte packets
1  10.20.1.3  rtt=2.35ms rc=15(LabelSwitchedWithFecChange) rsc=2
      DS 1: ipaddr=10.10.11.4 ifaddr=10.10.11.4 iftype=ipv4Numbered MRU=1496
            label[1]=131060 protocol=4(RSVP-TE)
            label[2]=131070 protocol=3(LDP)
            label[3]=131070 protocol=2(BGP)
            fecchange[1]=PUSH fectype=RSVP IPv4 prefix=10.20.1.4 remotepeer=10.10.11
.4
2  10.20.1.4  rtt=4.17ms rc=3(EgressRtr) rsc=3
2  10.20.1.4  rtt=4.50ms rc=8(DSRtrMatchLabel) rsc=2
      DS 1: ipaddr=10.10.6.5 ifaddr=10.10.6.5 iftype=ipv4Numbered MRU=1500
            label[1]=131071 protocol=3(LDP)
            label[2]=131070 protocol=2(BGP)
3  10.20.1.5  rtt=7.78ms rc=3(EgressRtr) rsc=2
3  10.20.1.5  rtt=6.80ms rc=3(EgressRtr) rsc=1 *A:Dut-B#

B          C           D         E         F   
o -------- o --------- o ---3--- o ---3--- o   
|            \_______/           | \_____/     
|              RSVP              |             
|\______________________________/|             
|              LDP               |             
 \______________________________/              
               BGP                             

Testing with DDMAP TLV LDP FEC of Node F when stitched to a BGP Label Route
----------------------------------------------------------------------------

*A:Dut-B# oam lsp-trace prefix 10.20.1.6/32 bgp-label downstream-map-
tlv ddmap detail lsp-trace to 10.20.1.6/32: 0 hops min, 0 hops max, 124 byte packets
1  10.20.1.3  rtt=3.21ms rc=15(LabelSwitchedWithFecChange) rsc=2
      DS 1: ipaddr=10.10.11.4 ifaddr=10.10.11.4 iftype=ipv4Numbered MRU=1496
            label[1]=131060 protocol=4(RSVP-TE)
            label[2]=131070 protocol=3(LDP)
            label[3]=131060 protocol=2(BGP)
            fecchange[1]=PUSH fectype=RSVP IPv4 prefix=10.20.1.4 remotepeer=10.10.11
.4
2  10.20.1.4  rtt=5.50ms rc=3(EgressRtr) rsc=3
2  10.20.1.4  rtt=5.37ms rc=8(DSRtrMatchLabel) rsc=2
      DS 1: ipaddr=10.10.6.5 ifaddr=10.10.6.5 iftype=ipv4Numbered MRU=1500
            label[1]=131071 protocol=3(LDP)
            label[2]=131060 protocol=2(BGP)
3  10.20.1.5  rtt=7.82ms rc=3(EgressRtr) rsc=2
3  10.20.1.5  rtt=6.11ms rc=15(LabelSwitchedWithFecChange) rsc=1
      DS 1: ipaddr=10.10.10.6 ifaddr=10.10.10.6 iftype=ipv4Numbered MRU=1500
            label[1]=131071 protocol=3(LDP)
            fecchange[1]=POP  fectype=BGP IPv4 prefix=10.20.1.6 remotepeer=0.0.0.0 (
Unknown)
           fecchange[2]=PUSH fectype=LDP IPv4 prefix=10.20.1.6 remotepeer=10.10.10.6
4  10.20.1.6  rtt=10.2ms rc=3(EgressRtr) rsc=1 *A:Dut-B#