MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

The MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session feature provides a method to advertise explicit null in a Border Gateway Protocol (BGP) label session for a carrier supporting carrier (CSC) customer edge (CE) device.

Prerequisites for MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

  • You must configure your network for Multiprotocol Label Switching (MPLS) Virtual Private Network (VPN).

  • You must configure the Border Gateway Protocol (BGP) to distribute labels between the carrier supporting carrier (CSC) customer edge (CE) device (CSC-CE) and CSC-provider edge (PE) devices.

Restrictions for MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

  • Configure an explicit null label only in a carrier supporting carrier (CSC) customer edge (CE) device (CSC-CE) topology.

  • Configure an explicit null label only on a per-neighbor basis.

Information About MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

Feature Design of MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

On a carrier supporting carrier (CSC) customer edge (CE) device (CSC-CE) with Border Gateway Protocol (BGP) IPv4 label distribution, BGP advertises an implicit null label for directly connected routes. This causes the previous hop (penultimate) device to do penultimate hop popping (PHP).

The MPLS VPN Explicit Null Label Support BGP IPv4 Label Session feature makes the penultimate device swap the incoming label for (or impose) the explicit null label. This action forces the egress device to process the explicit null label by popping it and inspecting the packet that remains.

Benefits of MPLS VPN Explicit Null Label Support BGP IPv4 Label Session

The explicit null label helps to preserve quality of service (QoS) bits from one Service Level Agreement (SLA) to another until the packets reach their carrier supporting carrier (CSC) customer edge (CE) destination.

How to Configure MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

Configuring CSC with BGP

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. router bgp autonomous-system-number
  4. address-family ipv4 [unicast ]
  5. neighbor ip-address send-label explicit-null
  6. neighbor {ip-address | peer-group-name} activate
  7. end

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Device> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:


Device# configure terminal

Enters global configuration mode.

Step 3

router bgp autonomous-system-number

Example:


Device(config)# router bgp 100 

Enters router configuration mode and configures the device to run a Border Gateway Protocol (BGP) process.

Step 4

address-family ipv4 [unicast ]

Example:


Device(config-router)# address-family ipv4 

Enters address family configuration mode for the IPv4 address family from which you can configure routing sessions that use standard IPv4 address prefixes.

Step 5

neighbor ip-address send-label explicit-null

Example:


Device(config-router-af)# neighbor 10.0.0.2 send-label explicit-null 

Advertises the capability of a device to send Multiprotocol Label Switching (MPLS) labels with BGP routes.

  • The explicit-null keyword allows a carrier supporting carrier (CSC) customer edge (CE) device to send labels with a value of 0 to its neighbor.

Step 6

neighbor {ip-address | peer-group-name} activate

Example:


Device(config-router-af)# neighbor 192.168.99.70 activate 

Enables the neighbor to exchange prefixes for the IPv4 address family with the local device.

Step 7

end

Example:


Device(config-router-af)# end

Returns to privileged EXEC mode.

Verifying the Explicit Null Configuration

SUMMARY STEPS

  1. enable
  2. show ip bgp neighbors [ip-address [advertised-routes | dampened-routes | flap-statistics | paths [regexp] | received prefix-filter | received-routes | routes ]]

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:

Device> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

show ip bgp neighbors [ip-address [advertised-routes | dampened-routes | flap-statistics | paths [regexp] | received prefix-filter | received-routes | routes ]]

Example:

Device# show ip bgp neighbors

Displays information about the TCP and Border Gateway Protocol (BGP) connections to neighbors including explicit null.

  • The optional ip-address argument displays the IP address of the neighbor whose routes you have learned If you omit this argument, all neighbors are displayed.

  • The optional advertised-routes keyword displays all the routes the device has advertised to the neighbor.

  • The optional dampened-routes keyword displays the dampened routes to the neighbor at the IP address specified.

  • The optional flap-statistics keyword displays the flap statistics of the routes learned from the specified neighbor (external BGP [eBGP] peers only).

  • The optional path regexp keyword and argument displays autonomous system paths learned from the specified neighbor. An optional regular expression can be used to filter the output.

  • The optional received prefix-filter keyword displays the configured prefix list filter for the specified IP address.

  • The optional received-routes keyword displays all received routes (both accepted and rejected) from the specified neighbor.

  • The optional routes keyword displays all routes that are received and accepted. This is a subset of the output from the received-routes keyword.

What to do next

Configuration Examples for MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

Example: Configuring CSC-CE with BGP

In the following example, the carrier supporting carrier (CSC) is configured with the Border Gateway Protocol (BGP) to distribute labels and to advertise explicit null for all its connected routes:

neighbor 10.0.0.0 send-label explicit-null
router bgp 100
 bgp log-neighbor-changes
 neighbor 10.0.0.0 remote-as 200
 !
address-family ipv4
 neighbor 10.0.0.0 activate
 neighbor 10.0.0.0 send-label explicit-null
 no auto-summary
 no synchronization
 exit-address-family 

Example: Verifying the Explicit Null Configuration

In this example, the show ip bgp neighbors command displays information about connected Border Gateway Protocol (BGP) neighbors, including IP addresses, version numbers, neighbor capabilities, message statistics, and address family statistics that show if explicit null is configured:

Device# show ip bgp neighbors 

BGP neighbor is 10.0.0.2,  remote AS 300, external link
  BGP version 4, remote router ID 10.0.0.20
  BGP state = Established, up for 00:45:16
  Last read 00:00:16, hold time is 180, keepalive interval is 60 seconds
  Neighbor capabilities:
    Route refresh: advertised and received(new)
    Address family IPv4 Unicast: advertised and received
    ipv4 MPLS Label capability: advertised and received
  Message statistics:
    InQ depth is 0
    OutQ depth is 0
                         Sent       Rcvd
    Opens:                  1          1
    Notifications:          0          0
    Updates:                1          2
    Keepalives:            47         47
    Route Refresh:          0          0
    Total:                 49         50
  Default minimum time between advertisement runs is 30 seconds

 For address family: IPv4 Unicast
  BGP table version 9, neighbor version 9/0
  Output queue sizes : 0 self, 0 replicated
  Index 1, Offset 0, Mask 0x2
  Member of update-group 1
  My AS number is allowed for 3 number of times
  AF-dependant capabilities:
    Outbound Route Filter (ORF) type (128) Prefix-list:
  Sending Prefix & Label(advertise explicit-null set)       !Explicit null is configured
                                 Sent       Rcvd
  Prefix activity:               ----       ----
    Prefixes Current:               3          3 (Consumes 144 bytes)
    Prefixes Total:                 3          6
    Implicit Withdraw:              0          3
    Explicit Withdraw:              0          0
    .........	
    .........

Additional References for MPLS VPN Explicit Null Label with BGP IPv4 Label Session

Related Documents

Related Topic

Document Title

Cisco IOS commands

Cisco IOS Master Commands List, All Releases

MPLS commands

Cisco IOS Multiprotocol Label Switching Command Reference

BGP configuration tasks

IP Routing: BGP Configuration Guide

BGP commands

Cisco IOS IP Routing: BGP Command Reference

RFCs

RFC

Title

RFC 1163

A Border Gateway Protocol

RFC 1164

Application of the Border Gateway Protocol in the Internet

RFC 2283

Multiprotocol Extensions for BGP-4

RFC 2547

BGP/MPLS VPNs

RFC 3107

Carrying Label Information in BGP-4

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 MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

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 MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

Feature Name

Releases

Feature Information

MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session

12.0(27)S

12.0(27)S1

12.2(27)SBA

12.2(33)SRA

12.2(33)SXH

Cisco IOS XE Release 2.3

The MPLS VPN Explicit Null Label Support with BGP IPv4 Label Session feature provides a method to advertise explicit null in a BGP label session for a carrier supporting carrier (CSC) customer edge (CE) device.

In 12.0(27)S, this feature was introduced.

In 12.0(27)S1, support was added for the Cisco 12000 series Internet routers.

In 12.2(27)SBA, support was added for the Cisco 10000 series router.

This feature was integrated into Cisco IOS Release 12.2(33)SRA.

This feature was integrated into Cisco IOS Release 12.2(33)SXH.

In Cisco IOS XE Release 2.3, support was added for the Cisco ASR 1000 Series Routers.

The following commands were introduced or modified: debug ip bgp , neighbor send-label explicit-null , show ip bgp neighbors , show ip bgp vpnv4 , show mpls forwarding-table

Glossary

BGP

Border Gateway Protocol. The exterior Border Gateway Protocol used to exchange routing information between devices in separate autonomous systems. BGP uses TCP. Because TCP is a reliable protocol, BGP does not experience problems with dropped or fragmented data packets.

CE device

customer edge device. A device on the border between a VPN provider and a VPN customer that belongs to the customer.

eBGP

external Border Gateway Protocol. A BGP session between devices in different autonomous systems. When a pair of devices in different autonomous systems are more than one IP hop away from each other, an external BGP session between those two devices is called multihop external BGP.

label

A short, fixed-length data identifier that tells switching nodes how to forward data (packets or cells).

label distribution

The techniques and processes used to cause routed traffic to travel through the network on a path other than the one that would have been chosen if standard routing methods had been used.

LDP

Label Distribution Protocol. The protocol that supports MPLS hop-by-hop forwarding by distributing bindings between labels and network prefixes. The Cisco proprietary version of this protocol is the Tag Distribution Protocol (TDP).

LSP

label switched path. A configured connection between two devices, in which MPLS is used to carry packets. A path created by the concatenation of one or more label switched hops, allowing a packet to be forwarded by swapping labels from an MPLS node to another MPLS node.

MPLS

Multiprotocol Label Switching. A method for directing packets primarily through Layer 2 switching rather than Layer 3 routing. In MPLS, packets are assigned short, fixed-length labels at the ingress to an MPLS cloud by using the concept of forwarding equivalence classes. Within the MPLS domain, the labels are used to make forwarding decisions mostly without recourse to the original packet headers; formerly known as tag switching.

NLRI

Network Layer Reachability Information. BGP sends routing update messages containing NLRI, which describes the route. In this context, an NLRI is a prefix. A BGP update message carries one or more NLRI prefixes and the attributes of a route for the NLRI prefixes. The route attributes include a BGP next hop gateway address, community values, and other information.

PE device

provider edge device. A device on the border between a VPN provider and a VPN customer that belongs to the provider.

QoS

quality of service. A measure of performance for a transmission system that reflects its transmission quality and service availability.

router

A network layer device that uses one or more metrics to determine the optimal path along which network traffic should be forwarded. Routers forward packets from one network to another based on network layer information.

VPN

Virtual Private Network. A secure IP-based network that shares resources on one or more physical networks. A VPN contains geographically dispersed sites that can communicate securely over a shared backbone.