L2VPN Multisegment Pseudowires

Last Updated: November 29, 2011

The L2VPN Multisegment Pseudowires feature enables you to configure two or more Layer 2 pseudowire segments that function as a single pseudowire. The L2VPN Multisegment Pseudowires feature span multiple cores or autonomous systems of the same or different carrier networks.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the Feature Information Table at the end of this document.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Prerequisites for L2VPN Multisegment Pseudowires

Before configuring this feature, see the following documents:

Restrictions for L2VPN Multisegment Pseudowires

  • Only Mutliprotocol (MPLS) Layer 2 pseudowires are supported.
  • Only manual configuration of the pseudowires (including S-PE and T-PE routers) is supported.
  • The L2VPN Pseudowire Switching feature is supported for pseudowires advertised with FEC 128. FEC 129 is not supported.
  • The S-PE router is limited to 1600 pseudowires.

Information About L2VPN Multisegment Pseudowires

L2VPN Pseudowire Defined

An L2VPN pseudowire (PW) is a tunnel established between two provider edge (PE) routers across the core carrying the Layer 2 payload encapsulated as MPLS data, as shown in the figure below. This helps carriers migrate from traditional Layer 2 networks such as Frame Relay and ATM to an MPLS core. In the L2VPN pseudowire shown in the figure, the PWs between two PE routers are located within the same autonomous system. Routers PE1 and PE2 are called terminating PE routers (T-PEs). Attachment circuits are bounded to the PW on these PE routers.



L2VPN Multisegment Pseudowire Defined

An L2VPN multisegment pseudowire (MS-PW) is a set of two or more PW segments that function as a single PW. It is also known as switched PW. MS-PWs span multiple cores or autonomous systems of the same or different carrier networks. A L2VPN MS-PW can include up to 254 PW segments.

The figure below is an example of a Multisegment Pseudowire topology.



The end routers are called terminating PE routers (T-PEs), and the switching routers are called S-PE routers. The S-PE router terminates the tunnels of the preceding and succeeding PW segments in an MS-PW. The S-PE router can switch the control and data planes of the preceding and succeeding PW segments of the MS-PW. An MS-PW is declared to be up when all the single-segment PWs are up. For more information, see the L2VPN Pseudowire Switching document.

How to Configure L2VPN Multisegment Pseudowires

Configuring L2VPN Multisegment Pseudowires

Perform the following steps on the S-PE routers to create L2VPN Multisegment Pseudowires.

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    mpls label protocol ldp

4.    mpls ldp router-id interface force

5.    pseudowire-class name

6.    encapsulation mpls

7.    switching tlv

8.    exit

9.    l2 vfi name point-to-point

10.    description string

11.    neighbor ip-address vcid { encapsulation mpls pw-class pw-class-name}


DETAILED STEPS
  Command or Action Purpose
Step 1
enable


Example:

Router> enable

 

Enables privileged EXEC mode.

  • Enter your password if prompted.
 
Step 2
configure terminal


Example:

Router# configure terminal

 

Enters global configuration mode.

 
Step 3
mpls label protocol ldp

Example:

Router(config)# mpls label protocol ldp

 

Configures the use of Label Distribution Protocol (LDP) on all interfaces.

 
Step 4
mpls ldp router-id interface force


Example:

Router(config)# mpls ldp router-id loopback0 force

 

Specifies the preferred interface for determining the LDP router ID.

 
Step 5
pseudowire-class name


Example:

Router(config)# pseudowire-class atom

 

Establishes a pseudowire class with a name that you specify, and enters pseudowire class configuration mode.

 
Step 6
encapsulation mpls


Example:

Router(config-pw-class)# encapsulation mpls

 

Specifies the tunneling encapsulation.

  • For MPLS L2VPNs, the encapsulation type is mpls.
 
Step 7
switching tlv


Example:

Router(config-pw-class)# switching tlv

 

(Optional) Enables the advertisement of the switching point type-length variable (TLV) in the label binding.

  • This command is enabled by default.
 
Step 8
exit


Example:

Router(config-pw-class)# exit

 

Exits pseudowire class configuration mode.

 
Step 9
l2 vfi name point-to-point


Example:

Router(config)# l2 vfi atomtunnel point-to-point

 

Creates a point-to-point Layer 2 virtual forwarding interface (VFI) and enters VFI configuration mode.

 
Step 10
description string


Example:

Router(config-vfi)# description segment1

 

Provides a description of the switching provider edge router for a multisegment pseudowire.

 
Step 11
neighbor ip-address vcid { encapsulation mpls pw-class pw-class-name}


Example:

Router(config-vfi)# neighbor 10.0.0.1 100 pw-class mpls

 

Sets up an emulated VC.

  • Specify the IP address and the VC ID of the peer router. Also specify the pseudowire class to use for the emulated VC.
Note    Only two neighborcommands are allowed for each l2 vfi point-to-point command.
 

Displaying Information About the L2VPN Multisegment Pseudowires

SUMMARY STEPS

1.    show mpls l2transport binding

2.    show mpls l2transport vc detail


DETAILED STEPS
Step 1   show mpls l2transport binding

Use the show mpls l2transport binding command to display information about the pseudowire switching point, as shown in bold in the output. (In the following examples PE1 and PE4 are the T-PE routers.)



Example:
Router# show mpls l2transport binding
 
  Destination Address: 10.1.1.1,  VC ID: 102
    Local Label:  17
        Cbit: 1,    VC Type: FastEthernet,    GroupID: 0
        MTU: 1500,   Interface Desc: n/a
        VCCV: CC Type: CW [1], RA [2], TTL [3]
              CV Type: LSPV [2]
    Remote Label: 16
        Cbit: 1,    VC Type: FastEthernet,    GroupID: 0
        MTU: 1500,   Interface Desc: n/a
        VCCV: CC Type: CW [1], RA [2], TTL [3]
              CV Type: LSPV [2]
        PW Switching Point:
             Vcid   local IP addr      remote IP addr      Description
             101    10.11.11.11        10.20.20.20         PW Switching Point PE3
             100    10.20.20.20        10.11.11.11         PW Switching Point PE2

Step 2   show mpls l2transport vc detail

Use the show mpls l2transport vc detail command to display status of the pseudowire switching point. In the following example, the output (shown in bold) displays the segment that is the source of the fault of the multisegment pseudowire:



Example:
Router# show mpls l2transport vc detail
Local interface: Se3/0/0 up, line protocol up, HDLC up
  Destination address: 12.1.1.1, VC ID: 100, VC status: down
    Output interface: Se2/0, imposed label stack {23}
    Preferred path: not configured  
    Default path: active
    Next hop: point2point
  Create time: 00:03:02, last status change time: 00:01:41
  Signaling protocol: LDP, peer 10.1.1.1:0 up
    Targeted Hello: 10.1.1.4(LDP Id) -> 10.1.1.1, LDP is UP
    Status TLV support (local/remote)   : enabled/supported
      LDP route watch                   : enabled
      Label/status state machine        : established, LruRrd
      Last local dataplane   status rcvd: No fault
      Last local SSS circuit status rcvd: No fault
      Last local SSS circuit status sent: DOWN(PW-tx-fault)
      Last local  LDP TLV    status sent: No fault
      Last remote LDP TLV    status rcvd: DOWN(PW-tx-fault)
       PW Switching Point:
       Fault type  Vcid   local IP addr   remote IP addr   Description
       PW-tx-fault  101   10.1.1.1        10.1.1.1         S-PE2
      Last remote LDP ADJ    status rcvd: No fault
    MPLS VC labels: local 19, remote 23 
    Group ID: local 0, remote 0
    MTU: local 1500, remote 1500
    Remote interface description: 
  Sequencing: receive disabled, send disabled
  VC statistics:
    packet totals: receive 16, send 27
    byte totals:   receive 2506, send 3098
    packet drops:  receive 0, seq error 0, send 0

Performing ping mpls and trace mpls Operations on the L2VPN Multisegment Pseudowires

You can use the ping mpls and trace mplscommands to verify that all the segments of the MPLS multisegment pseudowire are operating.

You can use the ping mpls command to verify connectivity at the following pseudowire points:

  • From one end of the pseudowire to the other
  • From one of the pseudowires to a specific segment
  • The segment between two adjacent S-PE routers

You can use the trace mplscommand to verify connectivity at the following pseudowire points:

  • From one end of the pseudowire to the other
  • From one of the pseudowires to a specific segment
  • The segment between two adjacent S-PE routers
  • A range of segments
SUMMARY STEPS

1.    ping mpls pseudowire destination-address vc-id [segment segment-number]

2.    trace mpls pseudowire destination-address vc-id segment segment-number segment-number


DETAILED STEPS
Step 1   ping mpls pseudowire destination-address vc-id [segment segment-number]

Where:

  • destination-address is the address of the S-PE router, which is the end of the segment from the direction of the source.
  • vc-id is the VC ID of the segment from the source to the next PE router.
  • segment segment-number is optional and specifies the segment you want to ping.

The following examples use the topology shown in the second figure above :

  • To perform an end-to-end ping operation from T-PE1 to T-PE2, enter the following command:

ping mpls pseudowire <addr-of-S-PE1> <vc-id between T-PE1 and S-PE1>

  • To perform a ping operation from T-PE1 to segment 2, enter the following command:

ping mpls pseudowire <addr-of-S-PE1> <vc-id between T-PE1 and S-PE1> segment 2



Example:
 
Step 2   trace mpls pseudowire destination-address vc-id segment segment-number segment-number

Where:

  • destination-address is the address of the next S-PE router from the original of the trace.
  • vc-id is the VC ID of the segment from which the trace command is issued.
  • segment-number indicates the segment upon which the trace operation will act. If you enter two segment numbers, the traceroute operation will perform a trace on that range of routers.

The following examples use the topology shown in the second figure above :

  • To perform a trace operation from T-PE1 to segment 2 of the multisegment pseudowire, enter the following command:

trace mpls pseudowire <addr-of-S-PE1> <vc-id between T-PE1 and S-PE1> segment 2

This example performs a trace from T-PE1 to S-PE2.

  • To perform a trace operation on a range of segments, enter the following command. This example performs a trace from S-PE2 to T-PE2.

trace mpls pseudowire <addr-of-S-PE1> <vc-id between T-PE1 and S-PE1> segment 2 4

The following command performs a trace operation on S-PE router 10.10.10.9, on segment 1 and then on segment 2:



Example:
router# trace mpls pseudowire 10.10.10.9 220 segment 1
Tracing MS-PW segments within range [1-1] peer address 10.10.10.9 and timeout 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' - unlabeled output interface,
  'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
  'P' - no rx intf label prot, 'p' - premature termination of LSP,
  'R' - transit router, 'I' - unknown upstream index,
  'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
L 1 10.10.9.9 0 ms [Labels: 18 Exp: 0]
    local 10.10.10.22 remote 10.10.10.9 vc id 220
router# trace mpls pseudowire 10.10.10.9 220 segment 2
Tracing MS-PW segments within range [1-2] peer address 10.10.10.9 and timeout 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' - unlabeled output interface,
  'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
  'P' - no rx intf label prot, 'p' - premature termination of LSP,
  'R' - transit router, 'I' - unknown upstream index,
  'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
L 1 10.10.9.9 4 ms [Labels: 18 Exp: 0]
    local 10.10.10.22 remote 10.10.10.9 vc id 220
! 2 10.10.3.3 4 ms [Labels: 16 Exp: 0]
    local 10.10.10.9 remote 10.10.10.3 vc id 220

Additional References

Related Documents

Related Topic

Document Title

Cisco IOS commands

Cisco IOS Master Commands List, All Releases

Description of commands associated with MPLS and MPLS applications

Cisco IOS Multiprotocol Label Switching Command Reference

Layer 2 VPNS

  • Any Transport over MPLS
  • L2VPN Pseudowire Switching
  • MPLS LSP Ping/Traceroute for LDP/TE, and LSP Ping for VCCV

Standards

Standard

Title

RFC 4777

Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)

MIBs

MIB

MIBs Link

No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature.

To locate and download MIBs for selected platforms, Cisco software releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://www.cisco.com/go/mibs

RFCs

RFC

Title

No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.

--

Technical Assistance

Description

Link

The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html

Feature Information for L2VPN Multisegment Pseudowires

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Table 1 Feature Information for L2VPN Multisegment Pseudowires

Feature Name

Releases

Feature Information

MPLS Support for Multisegment PWs-MPLS OAM/VCCV

Cisco IOS XE Release 2.3

The L2VPN Multisegment Pseudowires feature enables you to configure two or more Layer 2 pseudowire segments that function as a single pseudowire. The L2VPN Multisegment Pseudowires feature span multiple cores or autonomous systems of the same or different carrier networks.

The following commands were introduced or modified: description (l2 vfi), ping mpls, show mpls l2transport binding, show mpls l2transport vc, switching tlv, trace mpls.

Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)

Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.

© 2011 Cisco Systems, Inc. All rights reserved.