On Thu, 3 Mar 2005 13:32:37 -0800
"David S. Miller" <davem@xxxxxxxxxxxxx> wrote:
> On 03 Mar 2005 16:24:25 -0500
> jamal <hadi@xxxxxxxxxx> wrote:
>
> > Ok, this does sound more reasonable. Out of curiosity, are packets being
> > dropped at the socket queue? Why is "dump till empty" behaviour screwing
> > over TCP.
>
> Because it does the same thing tail-drop in routers do.
> It makes everything back off a lot and go into slow start.
> If we'd just drop 1 packet per flow or something like that
> (so it could be fixed with a quick fast retransmit), TCP
> would avoid regressing into slow start.
Maybe a simple Random Exponential Drop (RED) would be more friendly.
> You say "use a NAPI driver", but netif_rx() _IS_ a NAPI driver.
> process_backlog() adheres to quotas and every other stabilizing
> effect NAPI drivers use, the only missing part is the RX interrupt
> disabling.
>
> We should eliminate the max backlog thing completely. There is
> no need for it.
Still need some bound, because if process_backlog is running slower
than the net; then the queue could grow till memory exhausted from
skbuff's.
|