From: dpreed@reed.com
To: "Jonathan Morton" <chromatix99@gmail.com>
Cc: make-wifi-fast@lists.bufferbloat.net,
cerowrt-devel@lists.bufferbloat.net
Subject: Re: [Make-wifi-fast] [Cerowrt-devel] [tsvwg] Comments on draft-szigeti-tsvwg-ieee-802-11e
Date: Mon, 3 Aug 2015 11:44:30 -0400 (EDT) [thread overview]
Message-ID: <1438616670.710822730@apps.rackspace.com> (raw)
In-Reply-To: <CAJq5cE1CmHjhkmG-_c3yLEX-uViTMk7OVf9trS+gEB6Djpw4gQ@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2863 bytes --]
It's not infeasible to make queues shorter. In any case, the throughput of a link does not increase above the point where there is always one packet ready to go by the time the currently outgoing packet is completed. It physically cannot do better than that.
If hardware designers can't create an interface that achieves that bound I'd be suspicious that they understand how to design hardware. In the case of WiFi, this also includes the MAC protocol being designed so that when the current packet on the air terminates, the next packet can be immediately begun - that's a little more subtle.
But my point here is that one needs to look at the efficiency of the system as a whole (in context), and paradoxically to the hardware designer mindset, the proper way to think about that efficiency is NOT about link throughput maximization - instead it is an end-to-end property. One has very little to do with the other. Queueing doesn't affect link throughput beyond the "double buffering" effect noted above: at most one packet queued behind the currently transmitting packet.
Regarding TXOP overhead - rather than complicated queueing, just allow packets to be placed in line *while the currently transmitting packet is going out*, and changed up to the point in time when they begin transmitting. This is trivial in hardware.
On Friday, July 31, 2015 1:04pm, "Jonathan Morton" <chromatix99@gmail.com> said:
> I think that is achievable, *even if there is a WiFi network in the middle*, by thinking about the fact that the shared airwaves in a WiFi network behaves like a single link, so all the queues on individual stations are really *one queue*, and that the optimal behavior of that link will be achieved if there is at most one packet queued at a time.
I agree that queues should be kept short in general. However I don't think single packet queues are achievable in the general case.
The general case includes Wi-Fi networks, whose TXOP overhead is so ruinously heavy that sending single MTU sized packets is inefficient. Aggregating multiple packets into one TXOP requires those several packets to be present in the buffer at that moment.
The general case includes links which vary in throughput frequently, perhaps on shorter timescales than an RTT, so either packets must be buffered or capacity is left unused. This also happens to include Wi-Fi, but could easily include a standard wired link whose competing load varies.
The endpoints do not have and do not receive sufficient information in sufficient time to reliably make packets arrive at nodes just in time to be transmitted. Not even with ECN, not even with the wet dreams of the DCTCP folks, and not even with ELR (though ELR should be able to make it happen under steady conditions, there are still transient conditions in the general case).
- Jonathan Morton
[-- Attachment #2: Type: text/html, Size: 4207 bytes --]
next prev parent reply other threads:[~2015-08-03 15:44 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <E9C29602-7F1D-43AD-980C-050B58FA0AC6@iii.ca>
2015-07-23 6:48 ` [Make-wifi-fast] Fwd: " Dave Taht
2015-07-23 7:44 ` [Make-wifi-fast] [Cerowrt-devel] " Jonathan Morton
2015-07-23 7:49 ` Alan Jenkins
2015-07-24 10:38 ` Sebastian Moeller
2015-07-30 20:29 ` [Make-wifi-fast] [Cerowrt-devel] " Jonathan Morton
2015-07-30 21:35 ` Sebastian Moeller
2015-07-30 21:56 ` Jonathan Morton
2015-07-31 3:27 ` Sebastian Moeller
2015-07-31 16:47 ` dpreed
2015-07-31 17:04 ` Jonathan Morton
2015-07-31 20:23 ` Michael Richardson
2015-07-31 20:45 ` Jonathan Morton
2015-08-03 15:44 ` dpreed [this message]
2015-08-03 16:14 ` David Lang
2015-08-03 23:37 ` dpreed
2015-08-03 23:52 ` Jonathan Morton
2015-08-04 0:13 ` David Lang
2015-08-04 16:55 ` dpreed
2015-08-04 3:20 ` Simon Barber
2015-08-07 8:28 ` Mikael Abrahamsson
2015-08-07 13:22 ` Rich Brown
2015-08-07 13:28 ` Jonathan Morton
2015-08-07 17:35 ` Rich Brown
2015-08-08 14:25 ` Simon Barber
2015-08-07 20:03 ` David Lang
2015-08-07 21:46 ` dpreed
2015-08-07 22:31 ` David Lang
2015-08-08 20:46 ` dpreed
2015-08-08 23:23 ` David Lang
2015-08-09 19:31 ` Jonathan Morton
2015-08-09 20:27 ` Simon Barber
2015-08-09 21:43 ` David Lang
2015-08-10 14:00 ` Simon Barber
2015-08-10 18:44 ` David Lang
2015-08-10 19:21 ` Jonathan Morton
2015-08-10 21:18 ` Simon Barber
2015-08-09 21:50 ` David Lang
2015-08-10 5:39 ` Mikael Abrahamsson
2015-08-13 21:48 ` David Lang
2015-08-13 22:14 ` Jonathan Morton
2015-08-13 22:25 ` David Lang
2015-08-13 22:30 ` Jonathan Morton
2015-08-09 22:09 ` David Lang
2015-08-10 13:48 ` Simon Barber
2015-08-04 3:26 ` Simon Barber
2015-08-04 3:16 ` Simon Barber
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
List information: https://lists.bufferbloat.net/postorius/lists/make-wifi-fast.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1438616670.710822730@apps.rackspace.com \
--to=dpreed@reed.com \
--cc=cerowrt-devel@lists.bufferbloat.net \
--cc=chromatix99@gmail.com \
--cc=make-wifi-fast@lists.bufferbloat.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