Sunday, April 21, 2024

Internet Traffic Management Using MPLS

- Advertisement -

MPLS label
A label in MPLS is used as the routing code like an STD code in circuit switching. It identifies the path a packet should traverse in MPLS domain. The label is encapsulated in a data-link layer 2 header. So, a new layer called MPLS SHIM layer is formed between the network layer and data-link layer in OSI layer concept.

MPLS header has this name because an additional header is placed, or shimmed, between the existing data-link layer and network layers. Function of this layer is to bind MPLS label over the IP packet received from CE. The label contains information about the next hop address. Value of the label has local significance only. So, the same label number could be reused in some other area of MPLS domain.

Generic MPLS label format
MPLS layer works between the network layer and data-link layer (Fig. 3). MPLS SHIM layer is created in between L3 header and L2 header in all LERs for insertion of the label to IP packets received from CE. The first element of MPLS SHIM is a label field of 20-bit length that represents the label used to switch a packet. Label 0 through 15 are reserved by IETF (label 0 – IPv4 explicit null, label 1 – router alert, label 2 – IPv6 explicit null and label 3 – IPv4 implicit null).

- Advertisement -

All other labels may be allocated at random. Label binding and popping is done by ingress and egress LERs, respectively, while LSR does label swapping. MPLS label can be reused simultaneously within MPLS network, because the label has only local significance between the two LSRs.

Second portion of MPLS header is reserved for class of service (3 bits) and is used for the purposes of classifying LSPs based on differentiated services, and is also referred to as experimental portion.

The third portion (stack – 1-bit) is used for indicating the bottom of the stack. This bit is set to 1 for the last entry in the stack and 0 for all other label stack entries.

The last element in the header is an 8-bit field called time-to-live.

Label binding
Once a packet has been identified as a new or existing FEC, a label value from the underlying data-link layer is assigned to the packet. MPLS supports ATM, frame relay, PPP IP/Ethernet (T1/E1) because these have common characteristics like connection-oriented protocols, association with frame-level functioning and transfer of IP packets between adjacent nodes only.

So data-link layers (such as frame relay or ATM), layer-2 identifiers, such as data-link connection identifiers (DLCIs) in the case of frame-relay networks, or virtual path identifiers (VPIs)/virtual channel identifiers (VCIs) in case of ATM networks, or MAC headers in the case of PPP/Ethernet, can be used directly as labels. Packets are then forwarded based on their label value.

Labels are bound to an FEC as a result of some event or policy that indicates a need for such binding. These events can either be data-driven bindings or control-driven bindings. The latter is preferable because of their advanced scaling properties that can be used in MPLS. Policy of label binding is based on destination unicast routing, traffic engineering, multicast and quality of service.

Label merging and stacking
Label merging is the replacement of multiple incoming labels for a particular FEC with a single outgoing label (Fig. 4). It is achieved by stacking the label at LSR based on the instant of arrival of packets through incoming LSPs. It is organised as a last-in, first-out stack.


Unique DIY Projects

Electronics News

Truly Innovative Tech

MOst Popular Videos

Electronics Components