From: Neil Spring <nspring@cs.washington.edu>
To: Linux-kernel <linux-kernel@vger.kernel.org>
Cc: raul@pleyades.net
Subject: Re: bandwidth 'depredation'
Date: Wed, 12 Jun 2002 00:28:41 -0700 [thread overview]
Message-ID: <20020612072840.GB29843@cs.washington.edu> (raw)
In-Reply-To: <Pine.LNX.4.44.0206111628280.17534-100000@Megathlon.ESI> <E17I2FN-0006y7-00@the-village.bc.nu>
On Wed, Jun 12, 2002 at 08:08:49AM +0100, Alan Cox wrote:
>> But so how is QoS going to change things? It's the output queue of
>> the router on the other side of the ADLS link that needs management
>> (and maybe you need to speak some protocol like RSVP), or am I missing
>> something? How can you control the rate of *incoming* packets per
>> connection / protocol?
> For tcp it works fine. You drop stuff late but it still triggers
> backoffs as needed
Some queues (like my dialup access queue once upon a time)
are pathologically overprovisioned, making for too much
delay and poor sharing, before drops bring the tcp flow in
line.
Since nobody runs TCP Vegas, my personal favorite trick is
to play with the receiver's advertised window size. With a
256kbps downstream rate DSL line, one could assert "I'll
never talk to anyone more than 0.2 seconds round trip away"
and decide that 256,000/8/5 = 6400 bytes is as large a
window as TCP needs, and that the default of 64K is
excessive. So, "echo 16636 >
/proc/sys/net/core/rmem_default" and experience lower
latency, higher-fairness networking. The bandwidth
available to the remote server is the same (limited by the
access link) but the extra packets it can queue in flight
are limited. Note that there may be a better way to set the
receive buffer space, and I forget if there's a halving in
there, which is part of why I said 'echo 16k', so you may
want to play around with some different values.
Or, do ugly things to the kernel to automatically tune the
advertised window based on the traffic mix and round trip
times to get a sort of managed receiver-side Vegas as in
http://www.ieee-infocom.org/2000/papers/600.ps (shameless
plug, but a fun little project when you want to read mail
and update Debian at the same time over a poorly managed
modem).
It's just an idea; people forget that the receiver does have
a way to limit the sender's rate in TCP without waiting for
a loss.
enjoy,
-neil
next prev parent reply other threads:[~2002-06-12 7:28 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-06-11 7:44 DervishD
2002-06-11 7:26 ` Zwane Mwaikambo
2002-06-11 7:47 ` Sean Hunter
2002-06-11 10:26 ` DervishD
2002-06-11 10:23 ` Sean Hunter
2002-06-11 7:54 ` Kristian Peters
2002-06-11 10:36 ` DervishD
2002-06-11 13:17 ` Giuliano Pochini
2002-06-11 14:38 ` Marco Colombo
2002-06-12 7:08 ` Alan Cox
2002-06-12 7:28 ` Neil Spring [this message]
2002-06-12 8:53 ` DervishD
2002-06-11 17:07 ` DervishD
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020612072840.GB29843@cs.washington.edu \
--to=nspring@cs.washington.edu \
--cc=linux-kernel@vger.kernel.org \
--cc=raul@pleyades.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®