Re: [PATCH RFC/RFT net-next 00/17] net: Convert neighbor tables to per-namespace

From: David Ahern
Date: Wed Jul 25 2018 - 14:23:15 EST


On 7/24/18 11:14 AM, David Miller wrote:
> From: David Ahern <dsahern@xxxxxxxxx>
> Date: Tue, 24 Jul 2018 09:14:01 -0600
>
>> I get the impression there is no longer a strong resistance against
>> moving the tables to per namespace, but deciding what is the right
>> approach to handle backwards compatibility. Correct? Changing the
>> accounting is inevitably going to be noticeable to some use case(s), but
>> with sysctl settings it is a simple runtime update once the user knows
>> to make the change.
>>
>> neighbor entries round up to 512 byte allocations, so with the current
>> gc_thresh defaults (128/512/1024) 512k can be consumed. Using those
>> limits per namespace seems high which is why I suggested a per-namespace
>> default of (16/32/64) which amounts to 32k per namespace limit by
>> default. Open to other suggestions as well.
>
> No objection from me about going to per-ns neigh tables.
>
> About the defaults, I wonder if we can scale them to the amount of
> memory given to the ns or something like that? I bet this will better
> match the intended use of the ns.
>

Not sure how to do that. I am not aware of memory allocations to a
network namespace. As I understand it containers use cgroups to control
memory use, but I am not aware of any direct ties to namespace.