>> Local tag 30 Outgoing tag 35. I put 30 on if I send to 10.1.1.0/24 and I advertise tag 35 to upstream neighbours to get to 10.1.1.0/24. Is that correct ?
It is just the opposite:
outgoing label = it is the label received by the device that is in the path to the destination prefix
local label= it is the label assigned by local node to the prefix and advertised to all LDP neighbors and used by neighbors that use local node to reach the destination.
if an MPLS frame with label 30 is received on an interface of local node it is swapped to label 35 and sent out the interface where this label binding has been received, that is on the best path to destination according to IGP metric.
the signalling protocol for MPLS builds other tables.
CEF builds the FIB forwarding information table.
LDP builds LFIB = label forwarding information table.
the routers in the MPLS cloud build LDP sessions between them.
In MPLS framed mode the labels are assigned in unsolicited mode: they are assigned to prefixes in the FIB before traffic for that prefix is seen. Each router sends out its label assignments towards its LDP neighbors. On each router each label value is used only once and associated to a prefix or other FEC.
the labels actually travel in the opposite direction of traffic: from nearest to farest node. Thi is called downstream.
unsolicited downstream indipendent
indipendent means that a node is free to associate a label to a prefix in FIB before receiving the label binding from the router that is on the path to the prefix.
note that all prefixes to be in CEF FIB have to be advertised by an IPV4 routing protocol like OSPF, EIGRP or IS-IS. Also the LDP sessions are built using loopback interfaces so they can be setup only after the routing protocol convergence.
the end result that can be checked with
sh mpls forwarding
is that a local label is associated to the prefix, the label received by the router upstream (nearest to the destination ) is used to send out MPLS packets the local label is used by the router downstream (farer from destination) the current node when sending frame to this node
the mpls forwarding table says
if an incoming packet with label local-label is received I will send out a specific interface with label= action or outgoing label.
The edge nodes are the routers with at least one non mpls interface. These nodes when sending traffic to a prefix perform label imposition by looking at LFIB if an entry is found is used to build the outgoing label.
when the edge routers receive packets destinated to their non mpls connected interaces they do the opposite by extracting the packet.
IOS uses normally penultimate hop popping: actually the last router before the edge node receives a special label (implicit-null) that instructs it to send packets for the prefix untagged to the edge node. This is an optimization.
To be noted that MPLS support multiple label stacks and these are used for many applications: L3 VPN, L2 VPN, MPLS TE protection, 6PE, 6VPE.
when moving in the MPLS cloud only the more external label is changed at each node hop. Inner labels travel unchanged end-to-end.
Guislar has answered very well. I would like to add one more label that is aggregate label which means remove all the tags and forwards the pure IP packet. Normally this label is shown at egress PE or where the global route leaking scenarios come in picture like serve vpn customers with internet vrf.
Introduction: The "external-out enable" command is available for
configuration under the "router ospf process" in case of the IOS-XR
operating system. This command basically enables advertisement of
intra-area routes on the device as external routes in th...
IntroductionIn this article we'll discuss how to troubleshoot packet
loss in the asr9000 and specifically understanding the NP drop counters,
what they mean and what you can do to mitigate them. This document will
be an ongoing effort to improve troublesh...