Re: [PATCH] Improve behaviour of Netlink Sockets
From: jamal <hidden>
Date: 2004-09-27 12:46:30
On Thu, 2004-09-23 at 23:24, Herbert Xu wrote:
There are three possible netlink usages: 1) Request/response: No overruns should occur.
Cant assume this. A request for an ACK is fine. A get is a different ball game.
2) Dump: No overruns should occur because of dump only fills in the next one when the previous one is taken off the queue by the user. 3) Async messages: Overruns may occur if the arrival rate exceeds the application's processing capacity or if the queue is too small for a burst. Now we were discussing about how we can do congestion control for 3). But to do that we need to know exactly what these messages are. For example if they're coming from an external source as is the case in ip_queue then you can't congestion control it at all. Oh and never use the same socket for 1+2) and 3) together. You can use the socket for 1) and 2), but 3) must be in its own socket.
I think the discussion to have a mini-slab-like allocator for netlink that i see going on in other thread is what we need. However, so far that seems to be only useful for 2). cheers, jamal