[j-nsp] Broken Per-Flow load sharing
Nalkhande Tarique Abbas
ntarique at juniper.net
Thu Aug 20 12:15:53 EDT 2009
Beginning with JUNOS Release 9.3, you can enable router-specific load
balancing by configuring a unique, load balance hash value for each
Packet
Forwarding Engine slot.
To configure per-prefix load balancing. include the load-balance
statement
at the [edit forwarding-options] hierarchy level:
[edit forwarding-options]
load-balance {
indexed-next-hop;
per-flow {
hash-seed number; <---
}
}
To enable per-flow load balancing, you must include the hash-seed number
statement. The range that you can configure is 0 through 65,535. 0 is
the
default value; Though if no hash seed is configured, the elected
forwarding next hop should be the same as in previous releases.
Hope it helps!
Thanks & Regards,
Tarique A. Nalkhande
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Serge Vautour
Sent: Thursday, August 20, 2009 8:14 PM
To: juniper-nsp at puck.nether.net
Subject: [j-nsp] Broken Per-Flow load sharing
Hello,
We have several M320s & T640s in our network running 8.5R4.3. They are
all configured for per-flow load sharing:
RouterA> show configuration routing-options forwarding-table
export perDestinationLoadBalance;
RouterA> show configuration policy-options policy-statement
perDestinationLoadBalance
/* Policy exported against forwarding-table configuration to ensure
per-flow-destination load balance */
then {
load-balance per-packet;
}
The routers have 2x 10GEs via switches to reach Aggregation routers.
OSPF sees 2 equal cost paths to the BGP next hops and splits the traffic
across the links. This has been working fine for a few years (it worked
on 8.2 as well).
We recently upgraded to 9.3R2.8 and load sharing is no longer working:
RouterA> show interfaces xe-1/0/0 detail | match "Output packets.*pps"
Output packets: 6183879 7 pps
Output packets: 0 0 pps
Output packets: 52542 6 pps
Output packets: 19279 0 pps
Output packets: 3134 0 pps
Output packets: 0 0 pps
RouterA> show interfaces xe-2/0/0 detail | match "Output packets.*pps"
Output packets: 285078265156 228705 pps
Output packets: 0 0 pps
Output packets: 280511288646 221803 pps
Output packets: 4118406919 6075 pps
Output packets: 442607080 894 pps
Output packets: 0 0 pps
The first "Output" line is the 10GE aggregate. The other output lines
are the VLANs on the 10GE. Note that the xe-1/0/0 interface has next to
0 pps on output!! We have upgraded two M320s and they are both showing
the same problem.
My guess is that the per-flow load balancing hash has changed in the
newer release. The 9.3 manual talks about setting something like this:
[edit forwarding-options hash-key]
family inet {
layer-3;
layer-4;
}
But it's a bit unclear as to what happens if it isn't set. Can anyone
confirm that this will restore per-flow load sharing?
Any help would be appreciated.
Thanks,
Serge
__________________________________________________________________
Looking for the perfect gift? Give the gift of Flickr!
http://www.flickr.com/gift/
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
More information about the juniper-nsp
mailing list