Showing results for 
Search instead for 
Did you mean: 

MPLS frame size vs Ethernet Frame size


I am working on some bandwidth requirement numbers and I keep finding contradicting information on the Internet.

I have a certain amount of UDP traffic and need to calculate the corresponding traffic via an MPLS cloud.

Now I know that the UDP traffic over my Ethernet II interface has an Ehernet frame overhead of 18 bytes (14 bytes for the MAC header, and 4 bytes for the CRC).

Now I know that an MPLS header is consisting of

• A 20-bit label value.

• a 3-bit Traffic Class field for QoS (quality of service) priority (experimental) and ECN (Explicit Congestion Notification).

• a 1-bit bottom of stack flag. If this is set, it signifies that the current label is the last in the stack.

• an 8-bit TTL (time to live) field.

What I am not clear on if the MPLS header is added to the entire UDP packet (including the Ethernet header), or if it replaces the header.

I have found contradicting information on this last point and would like to see what the experts here have to say to this.

In the end, I need to know how much larger or smaller the traffic over the MPLS cloud will be.



3 Replies 3

Rising star
Rising star

I'll take a stab.

"Layer 2 technologies cannot use their Layer 2 address fields to carry labels, These technologies cary labels in shim headers

The shim label header is inserted between the link layer and the network layer"

Advanced MPLS Design and Implementation,  Vivek Alwayn  Cisco Press 2002

Eugene Lau
Cisco Employee
Cisco Employee

Hey Joerg,

Here's a nice simple view of the MPLS frame

Easy way to look (same point is vmiller) at it is that the MPLS tag is "inserted" in between the ethernet header (L2) and the IP header (L3) - hence Layer 2.5

[Layer 2][mpls][upperlayer]

[18byte inc CRC][4byte per MPLS label/tag][1500byte upper no changes] = 1522bytes

Assuming on ethernet is the medium of transport - then you'd adjust the interface MTU's accordingly - don't forget 802.1q  - 4bytes (so Jumbo MTU's may be required).



Atif Awan
Cisco Employee
Cisco Employee


It depends on how your traffic is going to be carried over the MPLS cloud. Following are some possibilities:

  1. If it is going to be carried within a Layer-3 VPN over the MPLS cloud then the MTU within the MPLS core needs to accomodate an extra 8-bytes (two labels). If the MPLS core also deploys Traffic Engineering then an additional label can come into play. Let's say your IP packet size is 1500 bytes (including IP/UDP header) you would then add your Ethernet header on top of it (as usual), however, in case of MPLS additional labels will be inserted between the payload and Layer-2 header thereby increasing the core MTU requirements.
  2. If it is going to be just label switched then your MPLS core mtu will need to accommodate an extra 4-bytes. This is on top of the Ethernet/IP/UDP headers.
  3. If it is going to be carried within a Layer-2 VPN (pseudowire) then the mtu requirements increase considerably. This is because the entire frame is treated as payload (1514 bytes for example - 1500 IP mtu and 14 bytes of Ethernet header) and you add your MPLS core ethernet header and labels on top of that. So your core MTU requirement easily goes to around 1522 bytes or more.


Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Recognize Your Peers