[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <593cc423-c510-b67b-de43-be6cac662bc1@gmail.com>
Date: Fri, 22 Feb 2019 22:19:41 -0500
From: David Ahern <dsahern@...il.com>
To: wenxu@...oud.cn, davem@...emloft.net
Cc: netdev@...r.kernel.org, Ido Schimmel <idosch@...lanox.com>
Subject: Re: [PATCH net-next] route: Add a new fib_multipath_hash_policy base
on cpu id for tunnel packet
On 2/21/19 10:52 PM, wenxu@...oud.cn wrote:
> From: wenxu <wenxu@...oud.cn>
>
> Current fib_multipath_hash_policy can make hash based on the L3 or
> L4. But it only work on the outer IP. So a specific tunnel always
> has the same hash value. But a specific tunnel may contain so many
> inner connection. However there is no good ways for tunnel packet.
> A specific tunnel route based on the percpu dst_cache, It will not
> lookup route table each packet.
>
> This patch provide a based cpu id hash policy. The different
> connection run on differnt cpu and There will differnet hash
> value for percpu dst_cache.
>
> Signed-off-by: wenxu <wenxu@...oud.cn>
> ---
> net/ipv4/route.c | 6 ++++++
> net/ipv4/sysctl_net_ipv4.c | 2 +-
> 2 files changed, 7 insertions(+), 1 deletion(-)
>
This multipath hash policy is global - for all fib lookups, not just
tunnels.
The suggestion by Nik is worth exploring - an option to add the mark to
the hash (e.g., L3 header + mark) which makes this more generic.
If the policy options are changed, the call to call_netevent_notifiers
needs to be updated to handle a failure. For example, the mlxsw handler
needs to be able to veto an option it does not support.
Powered by blists - more mailing lists