[LARTC] Re: More on qdiscs - about dangling backlogs

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Patrick McHardy writes:
 > I don't think this is a good example.
 > Why use SFQ for only SYNs ?
Ok, use pfifo instead.

 > What if the Synflood lasts longer / your connection request happens 
 > during the synflood ? It will expire like the others.
I wasn't trying to solve the flooding problem in this example.
(As it turns out, I am trying to solve that problem, and this is
related to that subject, but I won't go into details here.  Anyone
who wants to know more should see http://www.cs3-inc.com/ddos.html)

 > Syncookies provide a much better protection against synfloods, you won't 
 > have to wait at all.
Ok, change syn to ping.

 > I think maybe we misunderstood.
 > What i want to achieve is that flows respond more quickly to changes in 
 > available bandwidth.
In the case of tcp this adjustment happens automatically because the
acks slow down (or speed up).  It's much better for tcp to adjust the
rate without having to drop.

 > > I don't think I understand what you're proposing.  If we enqueue 50
 > > packets from one flow all at once, and after sending 10 they all
 > > expire (since they're all about the same age), then you want to drop
 > > one?  Why is it worth sending the rest?
 > 
 > I don't want to drop unneccasary much. If i drop the first one, the 
 > sender will receive notification of congestion as soon as possible and 
 > slow down. But i haven't put very much thought in this so it will 
 > probably not work like this.
Dropping has a pretty drastic effect on tcp.  If the communicating
tcp's support various features, dropping one packet might not cause
any significant slowdown, whereas in other implementations dropping
one could cause a major slowdown with lots of stuff having to be
retransmitted.  It's not the case that you can expect a small number
of drops to cause a small amount of slowdown.


[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux