LDP Entropy Label

If a network device uses deep packet inspection for load balancing, it is recommended to use entropy label in LDP to improve load balancing in MPLS networks by providing sufficient entropy in the label stack itself.

Configuring LDP Entropy Label

Use the entropy-label command to enable the MPLS LDP entropy labelling on the switch. Use the no form of the command to disable the MPLS LDP entropy labelling. By default, the entropy label knob is disabled.
switch(config)# mpls ldp
switch(config-mpls-ldp)# entropy-label
switch(config-mpls-ldp)# exit

Show Commands

The show running-config all command displays the Entropy Label Signaling status.
switch# show running-config all
!
mpls ldp
   ...
   no entropy-label
   ...
!
The show mpls ldp bindings detail command displays whether the ELC is advertised or not for a given FEC for both local/remote bindings.
switch# show mpls ldp bindings 1.1.1.1/32 detail
1.1.1.1/32
     Local binding:    Label: imp-null, ELC: False 
          Uptime:   1:51:14
          Advertised to: 2.2.2.2:0, 3.3.3.3:0
     Remote binding: Peer ID: 2.2.2.2:0, Label: 100001, ELC: True
          Uptime:   1:51:57
     Remote binding: Peer ID: 3.3.3.3:0, Label: 100002, ELC: True
          Uptime:   1:52:05
Following debug commands are modified to incorporate Entropy label and Entropy label indicator information in label stack for debugging on ingress router.
switch> show platform fap fec <idx>
Tunnel Type: Mpop(mpls pop), Mpush(mpls push), Mswap(mpls swap),
             MoG(mpls-over-gre), T(IPv4 tunnels GRE/VXLAN)
 'CW  - Control word',
 'FL  - Flow label',
 'EL  - Entropy label',
 'ELI - Entropy label indicator',
 'D   - ECMP is divergent across switching chips',
 ' -----------------------------------------------------------------------------------',
 '|                                 FEC Entry                                         |',
 '|-----------------------------------------------------------------------------------',
 '|     |      |     |                    |     |       |                   |',
 '| ECMP|  FEC |     |                    |     |       |                   | Tunnel',
 '|Index| Index| Cmd |     Destination    | VID |Outlif |   MAC / CPU Code  |T Value',
 ' ----------------------------------------------------------------------------------',
 '|  -  |353896|ROUTE| Et1/1              |0    |20480  | 00:00:00:00:00:01 |Mpush 501 401 301 ELI EL 201'

B. show platform fap ip route
Tunnel Type: M(mpls), G(gre), MoG(mpls-over-gre),
             vxlan-o(vxlan outer-rewrite info), vxlan-i(vxlan inner-rewrite info)
 'CW  - Control word',
 'FL  - Flow label',
 'EL  - Entropy label',
 'ELI - Entropy label indicator',
 '*   - Routes in LEM',
 'D   - ECMP is divergent across switching chips',
 ' ---------------------------------------------------------------------------------------------------------',
 '|                                 Routing Table                                           |              |',
 '|---------------------------------------------------------------------------------------------------------',
 '|VRF|   Destination    |     |                    |     |       |                   | ECMP|  FEC | Tunnel',
 '| ID|      Subnet      | Cmd |     Destination    | VID |Outlif |   MAC / CPU Code  |Index| Index|T Value',
 ' ---------------------------------------------------------------------------------------------------------',
 '|0  |192.168.1.3/32    |ROUTE| Et1/2              |100  |8188   | 00:00:00:00:00:02 |  -  |353897|   -   ',
 '|0  |200.0.0.0/24      |ROUTE| Et1/2              |100  |20484  | 00:00:00:00:00:02 |  -  |353898|M 501 401 301 ELI EL 201',
 '|0  |0.0.0.0/0         |TRAP | CoppSystemL3LpmOver|0    |  -    | SlowReceive       |  -  |576815|   -   ',

Limitations

  • When the Transit LSR is acting as a PHP hop for a given LDP tunnel with entropy label pushed onto it by an Ingress LSR, only the LDP tunnel label will be popped at PHP whenever the Egress LSR has signaled implicit-null in LDP.
  • Egress LSR should be capable of handling ELI as top label in the label stack like [ ELI, EL, VPN, Payload ].