Tag Archives: 4.1a

4.1.a Implement and troubleshoot MPLS operations

  • 4.1.a [i] Label stack, LSR, LSP
  • 4.1.a [ii] LDP
  • 4.1.a [iii] MPLS ping, MPLS traceroute

Stretch’s MPLS VPN Lab

http://packetlife.net/blog/2011/may/16/creating-mpls-vpn/

mpls_stretch

 down arrow smaller

 mpls_stretch_lab

i like this one, especially the use of ospf process id’s, and the redistribution of ospf into ospf.

Thanks Stretch…

4.1.a Implement and troubleshoot MPLS operations

4.1.a [i] Label stack, LSR, LSP

As packets are forwarded in a label-switching framework , MPLS routers encapsulate the packets with special headers called labels. A label basically tells the router which Label Switched Path (LSP) it belongs to. The router can then use the ingress port and the LSP information to determine where the next hop in the LSP is. You can actually add labels to packets that already have labels (known as label stacking).

A MPLS router that performs routing based only on the label is called a label switch router (LSR) or transit router.

An LSP is a path through an MPLS network, set up by a signaling protocol such as LDP, RSVP-TE, BGP or CR-LDP. The path is set up based on criteria in the Forwarding Equivalence Class (FEC).

In order to scale an MPLS network, where there are different types of platforms and services in parts of the network, it makes sense to split the network into different areas. A typical design introduces a hierarchy that has a core in the center with aggregation on the side. In order to scale, there can be different Interior Gateway Protocols (IGPs) in the the core versus the aggregation. In order to scale, you cannot distribute the IGP prefixes from one IGP into the other. If you do not distribute the IGP prefixes from one IGP into the other IGP, the end-to-end Label-Switched Paths (LSPs) are not possible. In order to deliver the MPLS services end-to-end, you need the LSP to be end-to-end. The goal is to keep the MPLS services (MPLS VPN, MPLS L2VPN) as they are, but introduce greater scalability. In order to do this, move some of the IGP prefixes into Border Gateway Protocol (BGP) (the loopback prefixes of the Provider Edge (PE) routers), which then distributes the prefixes end-to-end. This is called unified or seamless MPLS.

RRs advertise the BGP prefixes with the next hop set to themselves, they assign a local MPLS label to the BGP prefixes. This means that in the data plane, the packets forwarded on these end-to-end LSPs have an extra MPLS label in the label stack. The RRs are in the forwarding path. In order to set the next hop to self for reflected iBGP routes, you must configure the neighbor x.x.x.x next-hop-self all command.

Adam, Paul (2014-07-12). All-in-One CCIE V5 Written Exam Guide (Kindle Locations 4349-4360).  . Kindle Edition.

http://www.cisco.com/en/US/tech/tk436/tk428/technologies_q_and_a_item09186a00800949e5.shtml

4.1.a Implement and troubleshoot MPLS operations

4.1.a [ii] LDP

MPLS LDP provides the means for LSRs to request, distribute, and release label prefix binding information to peer routers in a network. LDP enables LSRs to discover potential peers and to establish LDP sessions with those peers for the purpose of exchanging label binding information.

MPLS LDP enables one LSR to inform another LSR of the label bindings it has made. Once a pair of routers communicate the LDP parameters, they establish a label-switched path (LSP). MPLS LDP enables LSRs to distribute labels along normally routed paths to support MPLS forwarding. This method of label distribution is also called hop-by-hop forwarding. With IP forwarding, when a packet arrives at a router the router looks at the destination address in the IP header, performs a route lookup, and forwards the packet to the next hop. With MPLS forwarding, when a packet arrives at a router the router looks at the incoming label, looks up the label in a table , and then forwards the packet to the next hop. MPLS LDP is useful for applications that require hop-by-hop forwarding, such as MPLS VPNs.

When you enable MPLS LDP, the LSRs send out messages to try to find other LSRs with which they can create LDP sessions. An LSR engages in discovery by periodically transmitting LDP Hello messages to signal its desire to advertise label bindings. The LSR sends the LDP Hello messages as UDP packets to the well known LDP port (646).

LDP defines two types of discovery:

● Basic discovery—Used to discover directly connected LDP LSRs. For basic discovery, an LSR sends Hellos messages to the “all routers on this subnet” multicast address on interfaces for which LDP has been configured.

● Extended discovery—Used between nondirectly connected LDP LSRs. For extended discovery, an LSR sends targeted Hello messages to a specific IP address.

The Hello messages carry the LDP ID of the label space that the sending LSR wants to advertise , as well as other information. When an LSR receives an LDP Hello message from another LSR, it considers that LSR and the specified label space to be “discovered.” After two LSRs discover each other in this manner, they attempt to establish an LDP session

Adam, Paul (2014-07-12). All-in-One CCIE V5 Written Exam Guide (Kindle Locations 4373-4384).  . Kindle Edition.

http://www.cisco.com/en/US/docs/ios/12_4t/12_4t2/ftldp41.html

 

 

4.1.a Implement and troubleshoot MPLS operations

4.1.a [iii] MPLS ping, MPLS traceroute

MPLS LSP ping uses MPLS echo request and reply packets to validate an LSP. You can use MPLS LSP ping to validate IPv4 LDP, AToM, and IPv4 RSVP FECs by using appropriate keywords and arguments with the ping mpls command. The MPLS echo request packet is sent to a target router through the use of the appropriate label stack associated with the LSP to be validated. Use of the label stack causes the packet to be forwarded over the LSP itself.

The destination IP address of the MPLS echo request packet is different from the address used to select the label stack. The destination IP address is defined as a 127. x.y.z/ 8 address. The 127 .x.y.z/ 8 address prevents the IP packet from being IP switched to its destination if the LSP is broken.

An MPLS echo reply is sent in response to an MPLS echo request. The reply is sent as an IP packet and it is forwarded using IP, MPLS, or a combination of both types of switching. The source address of the MPLS echo reply packet is an address obtained from the router generating the echo reply. The destination address is the source address of the router that originated the MPLS echo request packet. The MPLS echo reply destination port is set to the echo request source port.

MPLS LSP traceroute uses MPLS echo request and reply packets to validate an LSP. You can use MPLS LSP traceroute to validate IPv4 LDP and IPv4 RSVP FECs by using appropriate keywords and arguments with the trace mpls command.

The MPLS LSP Traceroute feature uses TTL settings to force expiration of the TTL along an LSP. MPLS LSP Traceroute incrementally increases the TTL value in its MPLS echo requests (TTL = 1, 2, 3, 4) to discover the downstream mapping of each successive hop . The success of the LSP traceroute depends on the transit router processing the MPLS echo request when it receives a labeled packet with a TTL = 1. On Cisco routers, when the TTL expires, the packet is sent to the Route Processor (RP) for processing. The transit router returns an MPLS echo reply containing information about the transit hop in response to the TTL-expired MPLS packet. The MPLS echo reply destination port is set to the echo request source port.

Adam, Paul (2014-07-12). All-in-One CCIE V5 Written Exam Guide (Kindle Locations 4399-4406).  . Kindle Edition.

http://www.cisco.com/c/en/us/support/docs/multiprotocol-label-switching-mpls/mpls/26585-mpls-traceroute.html

http://blog.ine.com/2008/11/24/mpls-ping-and-traceroute/

 

 

 

4.1.a Implement and troubleshoot MPLS operations

4.1.a [ii] LDP

looks funny… it threw me the first few times… at the interface level you more often type ip first, as in ip ospf network point-to-point, et al… then i just stopped thinking about it, until today…

right? now look at this…

PE1(config-if)#do sh mpls ldp disco
Local LDP Identifier:
2.2.2.2:0
Discovery Sources:
Interfaces:
FastEthernet0/0 (ldp): xmit/recv
LDP Id: 3.3.3.3:0; no host route

of course there’s no preceding ip because it’s layer 2, or two and a half as they say…

PE1#sh ip ospf int brie
Interface    PID   Area            IP Address/Mask    Cost  State Nbrs F/C
Lo0          1     0               2.2.2.2/24         1     P2P   0/0
Fa0/0        1     0               192.168.23.2/24    1     DR    1/1

PE1#sh mpls int f0/0
Interface              IP            Tunnel   Operational
FastEthernet0/0        Yes (ldp)     No       Yes

no shit…