MPLS Load Balancing Based on the IP Header and MPLS Labels
Juniper Networks routers can load-balance on a per-packet basis in MPLS. Load balancing can be performed on information in both the IP header and on up to three MPLS labels, providing a more uniform distribution of MPLS traffic to next hops. This feature is enabled on supported platforms by default and requires no configuration.
![]() | Note: This feature is only available on M320 and T Series Core Routers with enhanced Flexible PIC Concentrators (FPCs). |
The following information is extracted from the packet and used to load-balance the MPLS traffic:
- Interface index—24 bits
- MPLS label stack—bits 0 through 23 (the TTL bits are not examined)
- IPv4 header information:
- Protocol—8 bits
- Destination address—32 bits
- Source address—32 bits
- Source port—16 bits
- Destination port—16 bits
- IPv6 header information:
- Next header—8 bits
- Least significant 4 bytes of destination address
- Least significant 4 bytes of source address
- Source port—16 bits
- Destination port—16 bits
In summary, MPLS load balancing is performed using the following fields:
Interface index + MPLS label+ IP header (IPv4 or IPv6)

