Subject: Re: napi layer and packet throttling

From: Holger Brunck <[email-masked]>
Date: Fri, 24 May 2013 09:28:24 +0200

Hi Ben,

On 05/24/2013 12:27 AM, Ben Hutchings wrote:
> On Thu, 2013-05-23 at 13:52 +0200, Holger Brunck wrote:
>> b) Packet-Throttling
>> Here the description says "NAPI-compliant drivers can often cause packets to be
>> dropped in the network adaptor itself, before the kernel sees them at all."
>>
>> This is exactly what I need for my usecase. But I don't see any hints how this
>> can be implemented with the napi layer.
> [...]
> 
> If the RX ring is not cleaned and refilled quickly enough, the network
> controller will naturally start to drop packets.  It's not something you
> should do explicitly in the driver.
> 

yes. But what if the remaining amount of packets which are getting through the
napi_poll function into the linux system are still to many and generate
therefore a to high softirq load on the system which leads to the problems I
see. Ok I could use a smaller amount of RX ring buffers, but then the system
would get more intolerant for RX bursts what I don't want. I would like to
protect the system if someone sends continuously a high packet rate to the
interface, similar to DoS attacks.

Regards
Holger