No relevant resource is found in the selected language.

This site uses cookies. By continuing to browse the site you are agreeing to our use of cookies. Read our privacy policy>

Reminder

To have a better experience, please upgrade your IE browser.

upgrade

Load Balancing over Tunnels Fails.

Publication Date:  2013-01-07 Views:  52 Downloads:  0
Issue Description

NE40E-1 and NE40E-2 are directly connected through three physical interfaces. A TE tunnel is established over each link. The MPLS LDP over TE peer relationship is established between NE40E-1 and NE40E-2.

A remarkable imbalance in traffic forwarding occurs over the three TE tunnels. However, the traffic can be load balanced over two of the TE tunnels.

Handling Process

The on-site Huawei technical support personnel log in to the NE40Es.

1.         They check the load balancing table on the control plane and find that equal-cost load balancing is implemented across the three TE tunnels.

[1-hidecmd]dis mpls ls include 10.12.40.3 32                                                                            

-------------------------------------------------------------------------------                                                    

                 LSP Information: RSVP LSP                                                                                         

-------------------------------------------------------------------------------                                                    

FEC                In/Out Label  In/Out IF                      Vrf Name                                                           

10.12.40.3/32      NULL/0        -/GE2/0/6                                                                                          

10.12.40.3/32      NULL/0        -/GE2/0/6 

10.12.40.3/32      NULL/0        -/Mp-group5/1/3                                                                                       

-------------------------------------------------------------------------------                                                    

                 LSP Information: LDP LSP                                                                                          

-------------------------------------------------------------------------------                                                    

FEC                In/Out Label  In/Out IF                      Vrf Name                                                           

10.12.40.3/32      NULL/3        -/Tun0/0/4059                                                                                      

10.12.40.3/32      NULL/3        -/Tun0/0/4058

10.12.40.3/32      NULL/3        -/Tun0/0/4068                                                                                      

10.12.40.3/32      1270/3        -/Tun0/0/4059                                                                                     

10.12.40.3/32      1270/3        -/Tun0/ /4058

10.12.40.3/32      1270/3        -/Tun0/0/4068

2.         They check the forwarding table on the forwarding plane.

The result shows that load balancing is implemented at the bottom layer. Traffic is load balanced at the bottom layer.

[1-hidecmd]display pe-entry 2 0 insegment 1270                                                                          

All below number is hex.                                                                                                            

Table:NHLFE (DdrNum=0, Address:0x5f8f6)                                                                                            

---------------------------------------------------------------------------                                                        

  a0000800   00080004   200001f0   94000000                                                                                        

---------------------------------------------------------------------------                                                        

         V(1) = 1  Opcode(3) = 2(SWAP)      CARID(16) = 0   EnaTTLDec(1) = 1                                                       

    PriCmd(1) = 0     LspType(1) = 0         TID(3) = 0     StatID(16) = 0                                                         

   EncapOp(1) = 1  OPortInf(15) = 0(tb=0x0,tp=0x0)                                                                                 

     RtAlert(1) = 0          CW(1) = 0                                                                                             

      ECMP(1) = 1      OutCnt(6) = 2         CNT(1) = 0  NHP_PTR(20) = 7c25                                                         

   PushLbl(1) = 0      SetExp(1) = 0  DSIC2EXPTID(3) = 0      SetTTL(1) = 0                                                        

   Label1(20) = 0                                                                                                                  

                                                                                                                                    

Explanation                                                                                                                        

---------------------------------------------------------------------------                                                        

PriCmd(1): 0 = TrustDSIC, 1=TrustExp                                                                                                

SetExp(1): 0 = DSIC2EXPTID valid, 1 = EXP valid

 

 [Z2101IPBBP03-hidecmd]display pe-entry 2 0 lbtv4 31781                                                                             

                                                                                                                                   

NhpIndex = 31781                                                                                                                   

00 20 C0 20 9C 00 00 00  00 20 C0 2A C4 00 00 00     ---------- NHP-DRAM                                                           

All below number is decimal.                                                                                                       

Master: M/S = 0          Opcode = 0(ME)          isVlanIF = 0                                                                      

         OportInfo = 262  (tb=0x4,tp=0x6)                                                                                          

         AID = 5474      RtAlert = 0     SetQidx = 0     Qindex = 0                                                                

Slave : EnFRR = 0        Opcode = 0(ME)          isVlanIF = 0                                                                      

         OportInfo = 262  (tb=0x4,tp=0x6)

AID = 4174      RtAlert = 0     SetQidx = 0     Qindex = 0

 

 [Z2101IPBBP03-hidecmd]display pe-entry 2 0 lbtv4 31782                                                                             

                                                                                                                                    

NhpIndex = 31782                                                                                                                   

00 80 02 36 00 00 00 00  00 20 E2 00 1C 00 00 00     ---------- NHP-DRAM                                                           

All below number is decimal.                                                                                                       

Master: M/S = 0          Opcode = 0(ME)          isVlanIF = 0                                                                      

         OportInfo = 263  (tb=0x4,tp=0x7)                                                                                          

         AID = 65550     RtAlert = 0     SetQidx = 0     Qindex = 0                                                                

Slave : EnFRR = 0        Opcode = 0(ME)          isVlanIF = 0                                                                      

         OportInfo = 1024 (tb=0x10,tp=0x0)

AID = 72448     RtAlert = 0     SetQidx = 0     Qindex = 0

3.         Traffic reaches the NE40E through an LPUK. They capture the packets on the LPUK for analysis.

The incoming traffic takes the format of packets carrying MAC address+two layer MPLS labels+IP address. In this case, load balancing is implemented using the hash algorithm with the source and destination IP addresses as the hash keys.

If there are not many IP addresses in the data flows, some data flows involve large traffic volume, or a large number of pairs of data flows are transmitted, load imbalance will occur.

[1-hidecmd]display pe-p 2 0 iphp-data                                                                                   

  01848000  0819a627  4acc001c  0f5cdb40                                                                                            

  8847004f  6a7f0001  3b7f45b8  004b6416                                                                                           

  00008011  514d0a0f  ea320a0f  863605c0                                                                                            

  39180037  00008066  a97c4e85  6f501590                                                                                           

  a8e40707  2a5e54fd  1fb66679  e1e001e7                                                                                            

  cff00000  00800000  00000000  00000000                                                                                           

  00000000  00000000  00000000  00000000                                                                                            

  00000000  00000000  00000000  00000000                                                                                           

  00000000  00000000  00000000  00000000                                                                                            

  00000000  00000000  00000000  00000000                                                                                           

  00000000  00000000  00000000  00000000                                                                                            

  00000000  00000000  00000000  00000000                                     

Based on the preceding analysis, the NE40Es have performed load balancing. The cause for the load imbalance lies in that the traffic model on the live network does not match the hash algorithm used for load balancing.

To analyze the data flows in the traffic on the live network, they capture the packets sent from the NE40-4 outgoing interface through mirroring. The statistics about the captured packets are shown as follows.

The statistics show that three bulk flows take nearly half of the total traffic volume. There are multiple flow pairs in the bulk flows and other data flows.

SIP

DIP

Quantity

10.12.0.11

10.12.40.3

93

10.12.0.12

10.12.40.3

92

10.12.0.31

10.12.40.3

364

10.12.0.32

10.12.40.3

402

10.12.0.9

10.12.40.3

459

10.12.15.11

10.12.40.3

2888

10.12.15.12

10.12.40.3

2743

10.12.15.3

10.12.40.3

1328

10.12.15.4

10.12.40.3

320

10.12.16.1

10.12.40.3

459

10.12.24.1

10.12.40.3

408

10.12.41.45

10.12.41.46

209

10.12.41.45

224.0.0.2

481

10.12.41.45

224.0.0.5

691

10.12.8.1

10.12.40.3

408

10.12.8.2

10.12.40.3

408

5.5.5.2

224.0.0.252

14

5.5.5.2

239.255.255.250

14

5.5.5.2

5.5.5.3

405

 

The Huawei technical support personnel replicate the preceding traffic model and calculate the data using analysis tools. The calculated results using different data are shown as follows.

The calculated result based on the three bulk flows is as follows.

Number of Flows

Ratio in Load Balancing

2

33:67

3

67:33:0

 

The calculated result based on the data flows except the bulk flows is as follows.

Number of Flows

Ratio in Load Balancing

2

50:50

3

24:44:31

 

The result obtained by dividing the three bulk flows into minor flows and calculating all flows is as follows.

Number of Flows

Ratio in Load Balancing

2

44:46

3

48:44:12

 

Based on the analysis and calculation, they confirm that the hash algorithm with the source and destination IP addresses as the hash keys cannot ensure that the traffic using the current traffic model is load balanced on the three tunnels. However, the traffic can be load balanced on two of the three TE tunnels using the hash algorithm.

Root Cause

the hash algorithm with the source and destination IP addresses as the hash keys cannot ensure that the traffic using the current traffic model is load balanced on the three tunnels. However, the traffic can be load balanced on two of the three TE tunnels using the hash algorithm.

Solution

There are three solutions to resolve the problem:

Replace the LPUK on which the inbound interface is located with a 2800 LPU that supports the hash algorithm with the quintuple information as the hash key. The quintuple information includes the protocol type, source and destination IP addresses, source and destination port numbers.

Upgrade the software version running on the NE40E to V600R001. Replace the LPUK on which the inbound interface is located with an LPUF-41 that supports the hash algorithm with the quintuple information as the hash key. The quintuple information includes the protocol type, source and destination IP addresses, source and destination port numbers.

Modify the traffic model to match the hash algorithm based on the source and destination IP addresses. Distribute more IP traffic to bulk flows.

END