On 07/29/2015 07:51 AM, Stephen Hemminger wrote: > On Tue, 28 Jul 2015 02:27:57 +0000 > Richard Laing <richard.la...@alliedtelesis.co.nz> wrote: > >> From: Richard Laing <richard.la...@alliedtelesis.co.nz> >> >> Enable flow-based ECMP. >> >> Currently if equal-cost multipath is enabled the kernel chooses between >> equal cost paths for each matching packet, essentially packets are >> round-robined between the routes. This means that packets from a single >> flow can traverse different routes. If one of the routes experiences >> congestion this can result in delayed or out of order packets arriving >> at the destination. >> >> This patch allows packets to be routed based on their >> flow - packets in the same flow will always use the same route. This >> prevents out of order packets. There are other issues with round-robin >> based ECMP routing related to variable path MTU handling and debugging. >> See RFC2991 for more details on the problems associated with packet >> based ECMP routing. >> >> This patch relies on the skb hash value to select between routes. The >> selection uses a hash-threshold algorithm (see RFC2992). >> >> Signed-off-by: Richard Laing <richard.la...@alliedtelesis.co.nz> > ECMP needs some work, glad to see someone has started again. > A little bit of history, the original ECMP algorithm selection code was > dropped years ago > because it was buggy. The API was good, but the implemenation had problems. > > Somewhere in my dustbin, I have some patches from internal stuff that allows > selecting the algorithm at runtime. > > Your implementation makes it a compile time choice. Although this is good > for testing, it really needs to be a sysctl or route attribute to be > useful in a distro environment. > > As others said, your mailer is mangling the lines by wrapping.
Thanks Stephen, not sure what happened with the formatting, I'll try and find out. I will look at a sysctl option to enable the flow based ECMP option. Cheers Richard -- Richard Laing Software Team Leader Allied Telesis Labs| 27 Nazareth Ave | Christchurch 8024 | New Zealand Phone: +64 3 339 9248 Web: www.alliedtelesis.com -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html