Entropy Label

An entropy label is used only to improve load balancing performance. It is not assigned through protocol negotiation and is not used to forward packets. The entropy label is generated using IP information on the ingress. The entropy label value cannot be set to a reserved label value in the range of 0 to 15. The LDP or RSVP protocol is extended by adding an entropy label between the LDP/RSVP label (inner label) and VPN label (outer label) during LDP or RSVP negotiation. The entropy label can then be used to equalize and improve the performance of load balancing.

Background

As user networks and the scope of network services continue to expand, load-balancing techniques are used to improve bandwidth between nodes. If tunnels are used for load balancing, transit nodes (P) obtain IP content carried in MPLS packets as a hash key. If a transit node cannot obtain the IP content from MPLS packets, the transit node can only use the top label in the MPLS label stack as a hash key. The top label in the MPLS label stack cannot differentiate underlying-layer protocols in packets in detail. As a result, the top MPLS labels are not distinguished when being used as hash keys, resulting in load imbalance. Per-packet load balancing can be used to prevent load imbalance but results in packets being delivered out of sequence. This drawback adversely affects user experience. To address these problems, use the entropy label capability to improve load balancing performance.

Implementation

On the network shown in Figure 1, load balancing is performed on ASBRs (transit nodes) and the result is uneven. To achieve even load balancing, you can configure the entropy label capability of the BGP LSP.

The entropy label is generated by the ingress solely for the purpose of load balancing. To help the egress distinguish the entropy label generated by the ingress from application labels, an identifier label of 7 is added before an entropy label in the MPLS label stack.

Figure 1 Load balancing performed among transit nodes

The ingress generates an entropy label and encapsulates it into the MPLS label stack. If packets are not encapsulated with MPLS labels on the ingress, the ingress can easily obtain IP or Layer 2 protocol data for use as a hash key. If the ingress detects the entropy label capability enabled for tunnels, the ingress uses IP information carried in packets to compute an entropy label, adds it to the MPLS label stack, and advertises it to an ASBR. The ASBR uses the entropy label as a hash key to load-balance traffic and does not need to parse IP data inside MPLS packets.

The entropy label is pushed into packets by the ingress and removed by the egress. Therefore, the egress needs to notify the ingress of the support for the entropy label capability.

Each node in Figure 1 processes the entropy label as follows:
  • Egress: If the egress can parse an entropy label, the egress adds the entropy label to Path Attributes in BGP routes and then advertises the BGP routes to notify upstream nodes, including the ingress of the local entropy label capability.
  • Transit node: A transit node needs to be enabled with the entropy label advertisement capability so that the transit node can advertise the BGP routes to notify upstream nodes of the local entropy label capability.
  • Ingress: determines whether to add an entropy label into packets to improve load balancing based on the entropy label capability advertised by the egress.

Usage Scenario

  • In Figure 1, entropy labels are used when load balancing is performed among transit nodes.
  • In Figure 2, entropy labels are used in the BGP LSP RR scenario where load balancing is performed. PE1 and ASBR1 exchange labeled BGP routes through the RR. If the RR needs to advertise BGP routes carrying the entropy label, the RR, PE1, and ASBR1 all need to be enabled to add the entropy label to BGP routes before advertising them. In addition, the RR also needs to be enabled to forward traffic carrying the entropy label information. If this capability is not enabled, the RR discards the entropy label carried in the received BGP routes.
    Figure 2 BGP LSP RR scenario

Benefits

Entropy labels help achieve more even load balancing.

Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
< Previous topic Next topic >