Configuring Martini VLL by Using MPLS TE Tunnels



The public network tunnel of a Martini VLL can be an MPLS TE tunnel.

Networking Requirements

As shown in Figure 1, CE1 and CE2 belong to the same VPN. They access the MPLS backbone network through PE1 and PE2 respectively. OSPF is used as the IGP protocol on the MPLS backbone network.
In this scenario, you need to configure Martini VLL. An MPLS TE tunnel must be established between PE1 and PE2 through the dynamic signaling protocol RSVP-TE to forward the traffic of the VLL. The bandwidth of the tunnel is 20 Mbit/s. The maximum bandwidth of the link that the TE tunnel passes through is 100 Mbit/s, and the maximum reservable bandwidth is 50 Mbit/s.
Figure 1 Networking diagram of configuring Martini L2VPN using MPLS TE tunnels 

Configuration Roadmap

The configuration roadmap is as follows:
  1. Configure a routing protocol and enable MPLS on related devices (PEs and P) in the backbone network to implement interworking.
  2. Establish the MPLS TE tunnel and configure the tunnel policy. For the details of establishing an MPLS TE tunnel, refer to the chapter "MPLS TE Configuration" in the HUAWEI CX600 Metro Services Platform Configuration Guide - MPLS.
  3. Enable VLL on the PEs and establish VCs.

Data Preparation

To complete the configuration, you need the following data:
  • OSPF area enabled with TE
  • Name of the tunnel policy
  • Number of tunnels involved in load balancing (if load balancing is not performed, the number of tunnels is 1)

Procedure

  1. Configure an IP address for each interface and configure OSPF in the backbone network.
    The configuration details are not mentioned here.
  2. Enable MPLS, MPLS TE, MPLS RSVP-TE, and MPLS TE CSPF.
    Enable MPLS, MPLS TE, and MPLS RSVP-TE in the system view and the interface view of each node along the tunnel, and enable MPLS TE CSPF in the MPLS view of the ingress of the tunnel.
    # Configure PE1.
    [PE1] mpls lsr-id 1.1.1.9
    [PE1] mpls
    [PE1-mpls] mpls te
    [PE1-mpls] mpls rsvp-te
    [PE1-mpls] mpls te cspf
    [PE1-mpls] quit
    [PE1] interface pos1/0/0
    [PE1-Pos1/0/0] mpls
    [PE1-Pos1/0/0] mpls te
    [PE1-Pos1/0/0] mpls rsvp-te
    [PE1-Pos1/0/0] quit
    # Configure P.
    [P] mpls lsr-id 2.2.2.9
    [P] mpls
    [P-mpls] mpls te
    [P-mpls] mpls rsvp-te
    [P-mpls] quit
    [P] interface pos1/0/0
    [P-Pos1/0/0] mpls
    [P-Pos1/0/0] mpls te
    [P-Pos1/0/0] mpls rsvp-te
    [P-Pos1/0/0] quit
    [P] interface pos2/0/0
    [P-Pos2/0/0] mpls
    [P-Pos2/0/0] mpls te
    [P-Pos2/0/0] mpls rsvp-te
    [P-Pos2/0/0] quit
    # Configure PE2.
    [PE2] mpls lsr-id 3.3.3.9
    [PE2] mpls
    [PE2-mpls] mpls te
    [PE2-mpls] mpls rsvp-te
    [PE2-mpls] mpls te cspf
    [PE2-mpls] quit
    [PE2] interface pos1/0/0
    [PE2-Pos1/0/0] mpls
    [PE2-Pos1/0/0] mpls te
    [PE2-Pos1/0/0] mpls rsvp-te
    [PE2-Pos1/0/0] quit
  3. Configure OSPF TE on the backbone network.
    # Configure PE1.
    [PE1] ospf
    [PE1-ospf-1] opaque-capability enable
    [PE1-ospf-1] area 0.0.0.0
    [PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
    [PE1-ospf-1-area-0.0.0.0] network 100.1.1.0 0.0.0.255
    [PE1-ospf-1-area-0.0.0.0] mpls-te enable
    # Configure P.
    [P] ospf
    [P-ospf-1] opaque-capability enable
    [P-ospf-1] area 0.0.0.0
    [P-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
    [P-ospf-1-area-0.0.0.0] network 100.1.1.0 0.0.0.255
    [P-ospf-1-area-0.0.0.0] network 100.2.1.0 0.0.0.255
    [P-ospf-1-area-0.0.0.0] mpls-te enable
    # Configure PE2.
    [PE2] ospf
    [PE2-ospf-1] opaque-capability enable
    [PE2-ospf-1] area 0.0.0.0
    [PE2-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0
    [PE2-ospf-1-area-0.0.0.0] network 100.2.1.0 0.0.0.255
    [PE2-ospf-1-area-0.0.0.0] mpls-te enable
  4. Configure the MPLS TE attributes of the links.
    Configure the maximum bandwidth and the maximum reservable bandwidth of the link on the interface of each CX device along the tunnel.
    # Configure PE1.
    [PE1] interface pos 1/0/0
    [PE1-Pos1/0/0] mpls te bandwidth max-reservable-bandwidth 100000
    [PE1-Pos1/0/0] mpls te bandwidth bc0 50000
    [PE1-Pos1/0/0] quit
    # Configure P.
    [P] interface pos 1/0/0
    [P-Pos1/0/0] mpls te bandwidth max-reservable-bandwidth 100000
    [P-Pos1/0/0] mpls te bandwidth bc0 50000
    [P-Pos1/0/0] quit
    [P] interface pos 2/0/0
    [P-Pos2/0/0] mpls te bandwidth max-reservable-bandwidth 100000
    [P-Pos2/0/0] mpls te bandwidth bc0 50000
    [P-Pos2/0/0] quit
    # Configure PE2.
    [PE2] interface pos 1/0/0
    [PE2-Pos1/0/0] mpls te bandwidth max-reservable-bandwidth 100000
    [PE2-Pos1/0/0] mpls te bandwidth bc0 50000
    [PE2-Pos1/0/0] quit
  5. Configure a tunnel interface.
    # Create the tunnel interface on the PEs, specify the tunnel protocol as MPLS TE and the signaling protocol as RSVP-TE, and specify the bandwidth.
    # Configure PE1.
    <PE1> system-view
    [PE1] interface tunnel 1/0/0
    [PE1-Tunnel1/0/0] ip address unnumbered interface loopback1
    [PE1-Tunnel1/0/0] tunnel-protocol mpls te
    [PE1-Tunnel1/0/0] mpls te signal-protocol rsvp-te
    [PE1-Tunnel1/0/0] destination 3.3.3.9
    [PE1-Tunnel1/0/0] mpls te tunnel-id 100
    [PE1-Tunnel1/0/0] mpls te bandwidth ct0 20000
    [PE1-Tunnel1/0/0] mpls te commit
    # Configure PE2.
    <PE2> system-view
    [PE2] interface tunnel 1/0/0
    [PE2-Tunnel1/0/0] ip address unnumbered interface loopback1
    [PE2-Tunnel1/0/0] tunnel-protocol mpls te
    [PE2-Tunnel1/0/0] mpls te signal-protocol rsvp-te
    [PE2-Tunnel1/0/0] destination 1.1.1.9
    [PE2-Tunnel1/0/0] mpls te tunnel-id 101
    [PE2-Tunnel1/0/0] mpls te bandwidth ct0 20000
    [PE2-Tunnel1/0/0] mpls te commit
    After the configuration, run the display this interface command in the tunnel interface view. You can view that the MPLS TE tunnel is established successfully. That is, Line protocol current state displays UP.
    [PE1-Tunnel1/0/0] display this interface
    Tunnel1/0/0 current state : UP
    Line protocol current state : UP
    Last line protocol up time : 2009-02-23 14:46:57
    Description: Tunnel1/0/0 Interface
    Route Port,The Maximum Transmit Unit is 1500
    Internet Address is unnumbered, using address of LoopBack1(1.1.1.9/32)
    Encapsulation is TUNNEL, loopback not set
    Tunnel destination 3.3.3.9
    Tunnel up/down statistics 1
    Tunnel protocol/transport MPLS/MPLS, ILM is available,
    primary tunnel id is 0x1002002, secondary tunnel id is 0x0
        300 seconds output rate 0 bytes/sec, 0 packets/sec
        68 seconds output rate 0 bits/sec, 0 packets/sec
        22894187 packets output,  2958834536 bytes
        0 packets output error
        ct0:0 packets output,  0 bytes
        0 output error 
  6. Establish LDP sessions.
    Establish a remote peer session between PE1 and PE2.
    # Configure PE1.
    [PE1] mpls ldp
    [PE1-mpls-ldp] quit
    [PE1] mpls ldp remote-peer  3.3.3.9
    [PE1-mpls-ldp-remote-3.3.3.9] remote-ip 3.3.3.9
    [PE1-mpls-ldp-remote-3.3.3.9] quit
    # Configure PE2.
    [PE2] mpls ldp
    [PE2-mpls-ldp] quit
    [PE2] mpls ldp remote-peer 1.1.1.9
    [PE2-mpls-ldp-remote-1.1.1.9] remote-ip 1.1.1.9
    [PE2-mpls-ldp-remote-1.1.1.9] quit
    After the configuration, LDP sessions are established between the PEs.
    Take the display on PE1 as an example:
    [PE1] display mpls ldp session
    
    
     LDP Session(s) in Public Network
     Codes: LAM(Label Advertisement Mode), SsnAge Unit(DDDD:HH:MM)
     A '*' before a session means the session is being deleted.
     ------------------------------------------------------------------------------
     PeerID             Status      LAM  SsnRole  SsnAge      KASent/Rcv
     ------------------------------------------------------------------------------
     3.3.3.9:0          Operational DU   Passive  000:00:07   31/31
     ------------------------------------------------------------------------------
     TOTAL: 1 session(s) Found.
  7. Configure a tunnel policy and establish VC connections.
    # Configure PE1.
    [PE1] tunnel-policy policy1
    [PE1-tunnel-policy-policy1] tunnel select-seq cr-lsp load-balance-number 1
    [PE1-tunnel-policy-policy1] quit
    [PE1] mpls l2vpn
    [PE1-l2vpn] mpls l2vpn default martini
    [PE1-l2vpn] quit
    [PE1] interface pos2/0/0
    [PE1-Pos2/0/0] mpls l2vc 3.3.3.9 100 tunnel-policy policy1
    [PE1-Pos2/0/0] undo shutdown
    [PE1-Pos2/0/0] quit
    # Configure PE2.
    [PE2] tunnel-policy policy1
    [PE2-tunnel-policy-policy1] tunnel select-seq cr-lsp load-balance-number 1
    [PE2-tunnel-policy-policy1] quit
    [PE2] mpls l2vpn
    [PE2-l2vpn] mpls l2vpn default martini
    [PE2-l2vpn] quit
    [PE2] interface pos2/0/0
    [PE2-Pos2/0/0] mpls l2vc 1.1.1.9 100 tunnel-policy policy1
    [PE2-Pos2/0/0] undo shutdown
    [PE2-Pos2/0/0] quit
    # Configure CE1.
    <CE1> interface pos1/0/0
    [CE1-Pos1/0/0] ip address 10.1.1.1 24
    [CE1-Pos1/0/0] undo shutdown
    [CE1-Pos1/0/0] quit
    # Configure CE2.
    <CE2> interface pos1/0/0
    [CE2-Pos1/0/0] ip address 10.1.1.2 24
    [CE2-Pos1/0/0] undo shutdown
    [CE2-Pos1/0/0] quit

  8. Verify the configuration.
    Run the display mpls lsp verbose command on PE1. You can view that an MPLS RSVP-TE tunnel is established between 1.1.1.9 and 3.3.3.9. The LSP index of this tunnel is the same as the value in the MPLS forwarding table, which indicates that the local packets to 3.3.3.9 are forwarded through the MPLS TE tunnel.
    <PE1> display mpls lsp verbose
    ----------------------------------------------------------------------
                     LSP Information: RSVP LSP
    ----------------------------------------------------------------------
      No                  :  1
      SessionID           :  100
      IngressLsrID        :  1.1.1.9
      LocalLspID          :  1
      Tunnel-Interface    :  Tunnel1/0/0
      Fec                 :  3.3.3.9/32
      TunnelTableIndex    :  0x0     
      Nexthop             :  100.1.1.2
      In-Label            :  NULL
      Out-Label           :  13312
      In-Interface        :  ----------
      Out-Interface       :  Pos1/0/0
      LspIndex            :  4096
      Token               :  0x1002002
      LsrType             :  Ingress
      Mpls-Mtu            :  1500
      TimeStamp           :  396sec
      Bfd-State           :  ---
    Run the display mpls te tunnel-interface command on the PEs. You can view detailed information about the tunnel. Take the display on PE1 as an example:
    <PE1> display mpls te tunnel-interface
        Tunnel Name       :  Tunnel1/0/0
        Tunnel State Desc :  CR-LSP is Up
        Tunnel Attributes   :
        Session ID          :  100
        Ingress LSR ID      :  1.1.1.9               Egress LSR ID:  3.3.3.9
        Admin State         :  UP                    Oper State   :  UP
        Signaling Protocol  :  RSVP
        Tie-Breaking Policy :  None                  Metric Type  :  None
        Car Policy          :  Disabled              Bfd Cap      :  None
        BypassBW Flag       :  Not Supported
        BypassBW Type       :  -                     Bypass BW    :  -
        Retry Limit         :  5                     Retry Int    :  2 sec
        Reopt               :  Disabled              Reopt Freq   :  -
        Auto BW             :  Disabled
        Current Collected BW:  -                     Auto BW Freq :  -
        Min BW              :  -                     Max BW       :  -
        Tunnel  Group       :  Primary
        Interfaces Protected:  -
        Excluded IP Address :  -
        Is On Radix-Tree    :  Yes                   Referred LSP Count:  0
        Primary Tunnel      :  -                     Pri Tunn Sum :  -
        Backup Tunnel       :  -
        Group Status        :  Up                    Oam Status   :  Up
        IPTN InLabel        :  -
        BackUp Type         :  None                  BestEffort   :  Disabled
        Secondary HopLimit  :  -
        BestEffort HopLimit :  -
        Secondary Explicit Path Name:  -
        Secondary Affinity Prop/Mask:  0x0/0x0
        BestEffort Affinity Prop/Mask:  0x0/0x0
    
        Primary LSP ID      :  1.1.1.9:1
        Setup Priority      :  7                     Hold Priority:  7
        Affinity Prop/Mask  :  0x0/0x0               Resv Style   :  SE
        CT0 Bandwidth(Kbit/sec) :  20000             CT1 Bandwidth(Kbit/sec) :  0
        CT2 Bandwidth(Kbit/sec) :  0                 CT3 Bandwidth(Kbit/sec) :  0
        CT4 Bandwidth(Kbit/sec) :  0                 CT5 Bandwidth(Kbit/sec) :  0
        CT6 Bandwidth(Kbit/sec) :  0                 CT7 Bandwidth(Kbit/sec) :  0
        Actual Bandwidth(kbps):  -
        Explicit Path Name  :  -                     Hop Limit    :  -
        Record Route        :  Disabled              Record Label :  Disabled
        Route Pinning       :  Disabled
        FRR Flag            :  Disabled
        IdleTime Remain     :  -
    
    CE1 and CE2 can ping through each other.
    <CE1> ping 10.1.1.2
      PING 10.1.1.2: 56  data bytes, press CTRL_C to break
        Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=125 ms
        Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=125 ms
        Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=94 ms
        Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=125 ms
        Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=125 ms
    
    
      --- 10.1.1.2 ping statistics ---
        5 packet(s) transmitted
        5 packet(s) received
        0.00% packet loss
        round-trip min/avg/max = 94/118/125 ms

Configuration Files

  • Configuration file of CE1
    #
     sysname CE1
    #
    interface Pos1/0/0
     link-protocol ppp
     undo shutdown
     ip address 10.1.1.1 255.255.255.0
    #
    return
  • Configuration file of PE1
    #
     sysname PE1
    #
     mpls lsr-id 1.1.1.9
     mpls
      mpls te
      mpls rsvp-te
      mpls te cspf
    #
     mpls l2vpn
      mpls l2vpn default martini
    #
    mpls ldp
    #
     mpls ldp remote-peer 3.3.3.9
     remote-ip 3.3.3.9
    #
    interface Pos1/0/0
     link-protocol ppp
     undo shutdown
     ip address 100.1.1.1 255.255.255.0
     mpls
     mpls te
     mpls te bandwidth max-reservable-bandwidth 100000
     mpls te bandwidth bc0 50000
     mpls rsvp-te
    #
    interface Pos2/0/0
     link-protocol ppp
     undo shutdown
     mpls l2vc 3.3.3.9 100 tunnel-policy policy1
    #
    interface LoopBack1
     ip address 1.1.1.9 255.255.255.255
    #
    interface Tunnel1/0/0
     ip address unnumbered interface LoopBack1
     tunnel-protocol mpls te
     destination 3.3.3.9
     mpls te tunnel-id 100
     mpls te bandwidth ct0 20000
     mpls te commit
    #
    ospf 1
     opaque-capability enable
     area 0.0.0.0
      network 1.1.1.9 0.0.0.0
      network 100.1.1.0 0.0.0.255
      mpls-te enable
    #
    tunnel-policy  policy1
     tunnel select-seq  cr-lsp load-balance-number 1
    #
    return
  • Configuration file of P
    #
     sysname P
    #
    mpls lsr-id 2.2.2.9
     mpls
      mpls te
      mpls rsvp-te
    #
    interface Pos1/0/0
     link-protocol ppp
     undo shutdown
     ip address 100.1.1.2 255.255.255.0
     mpls
     mpls te
     mpls te bandwidth max-reservable-bandwidth 100000
     mpls te bandwidth bc0 50000
     mpls rsvp-te
    #
    interface Pos2/0/0
     link-protocol ppp
     undo shutdown
     ip address 100.2.1.1 255.255.255.0
     mpls
     mpls te
     mpls te bandwidth max-reservable-bandwidth 100000
     mpls te bandwidth bc0 50000
     mpls rsvp-te
    #
    interface LoopBack1
     ip address 2.2.2.9 255.255.255.255
    #
    ospf 1
     opaque-capability enable
     area 0.0.0.0
      network 2.2.2.9 0.0.0.0
      network 100.1.1.0 0.0.0.255
      network 100.2.1.0 0.0.0.255
      mpls-te enable
    #
    return
  • Configuration file of PE2
    #
     sysname PE2
    #
     mpls lsr-id 3.3.3.9
     mpls
      mpls te
      mpls rsvp-te
      mpls te cspf
    #
     mpls l2vpn
      mpls l2vpn default martini
    #
    mpls ldp
    #
     mpls ldp remote-peer 1.1.1.9
     remote-ip 1.1.1.9
    #
    interface Pos1/0/0
     link-protocol ppp
     undo shutdown
     ip address 100.2.1.2 255.255.255.0
     mpls
     mpls te
     mpls te bandwidth max-reservable-bandwidth 100000
     mpls te bandwidth bc0 50000
     mpls rsvp-te
    #
    interface Pos2/0/0
     link-protocol ppp
     undo shutdown
     mpls l2vc 1.1.1.9 100 tunnel-policy policy1
    #
    interface LoopBack1
     ip address 3.3.3.9 255.255.255.255
    #
    interface Tunnel1/0/0
     ip address unnumbered interface LoopBack1
     tunnel-protocol mpls te
     destination 1.1.1.9
     mpls te tunnel-id 101
     mpls te bandwidth ct0 20000
     mpls te commit
    #
    ospf 1
     opaque-capability enable
     area 0.0.0.0
      network 3.3.3.9 0.0.0.0
      network 100.2.1.0 0.0.0.255
      mpls-te enable
    #
    tunnel-policy  policy1
     tunnel select-seq  cr-lsp load-balance-number 1
    #
    return
  • Configuration file of CE2
    #
     sysname CE2
    #
    interface Pos1/0/0
     link-protocol ppp
     undo shutdown
     ip address 10.1.1.2 255.255.255.0
    #
    return

No comments:

Post a Comment