Re: Comment on draft-ietf-tsvwg-byte-pkt-congest-05.txt

Joe Touch <touch@isi.edu> Mon, 14 November 2011 10:00 UTC

Return-Path: <touch@isi.edu>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CA3B121F8F89 for <tsvwg@ietfa.amsl.com>; Mon, 14 Nov 2011 02:00:39 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.2
X-Spam-Level:
X-Spam-Status: No, score=-102.2 tagged_above=-999 required=5 tests=[AWL=0.400, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NCcaCA-x-jsD for <tsvwg@ietfa.amsl.com>; Mon, 14 Nov 2011 02:00:37 -0800 (PST)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) by ietfa.amsl.com (Postfix) with ESMTP id 37F9021F8F5A for <tsvwg@ietf.org>; Mon, 14 Nov 2011 01:51:47 -0800 (PST)
Received: from [130.129.66.136] (dhcp-4288.meeting.ietf.org [130.129.66.136]) (authenticated bits=0) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id pAE9nejs008616 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Mon, 14 Nov 2011 01:49:51 -0800 (PST)
Message-ID: <4EC0E434.1090107@isi.edu>
Date: Mon, 14 Nov 2011 01:49:40 -0800
From: Joe Touch <touch@isi.edu>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20111105 Thunderbird/8.0
MIME-Version: 1.0
To: Fred Baker <fred@cisco.com>
Subject: Re: Comment on draft-ietf-tsvwg-byte-pkt-congest-05.txt
References: <CA11D312-2132-49F0-A3CF-0A3049010BF8@cisco.com>
In-Reply-To: <CA11D312-2132-49F0-A3CF-0A3049010BF8@cisco.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: tsvwg list <tsvwg@ietf.org>
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tsvwg>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 14 Nov 2011 10:01:23 -0000

Hi, Fred,

On 11/13/2011 11:52 PM, Fred Baker wrote:
...
(existing text about bit/byte vs. packet congestion)
> I think the statement is fine as far as it goes, but it has two
> remaining issues. One is the question of when an interface is
> bit/byte congestible and when it is packet-congestible; I'm sure that
> means something specific to the authors, but will be far less clear
> to an implementer - every interface has a rate, and few if any
> measure their rates in packets per unit time, so specifically what is
> in view as a "packet-congestible interface"?

Some examples in the text might be useful.

Bit/byte congestion:
	- storage that assigns space based on the packet size
	- interfaces whose output bandwidth is overloaded
	- processing that is length-dependent (e.g., full packet
	hashes or encryption)

Packet congestion:
	- storage that assigns space on a per-packet basis,
	i.e., that has fixed slots (for max packets)
	- interfaces whose output slots are overloaded
	(with fixed slots per packet)
	- processing that is per-packet dependent (e.g.,
	header processing, header hashing, tunneling)

It is useful to note that there are some variants of these, e.g., where 
there are a small number of different buffer sizes (coarsely 
per-bit/byte), or ones with combined bottlenecks (there can be multiple 
places where resources are under contention!)

It's useful to explain what to do when there are combined bottlenecks in 
both places (alleviating only one might not suffice). I wonder what the 
algorithm should be in that case...

 > The other is that it
> only really applies to interfaces to a unique and non-blocking
> channel, like a serial line. When the congestible interface or queue
> is on a shared resource such as the fabric in an input-queued switch,
> an 802.11 interface, etc, the mathematics really involves two queues
> - the interface queues (in a statistical sense if not a hardware
> version) for access to the channel, and the packet is enqueued toward
> the interface, and both arrival/departure distributions are
> important.
>
> Consider, for example, an AQM implementation on a WiFi channel. We
> have all been on busy 802.11 networks; we have this experience in our
> own history at the IETF. The dynamics are fairly strange. At the IP
> layer, sessions are generally between hosts on the WiFi network and
> hosts somewhere else. At the WiFi layer the AP is a proxy for the
> remote hosts, and is therefore in essence an extremely busy member of
> the WiFi system that otherwise operates in an approximation to a
> round-robin fashion. The effect is to build a bufferbloat scenario
> into the AP. Due to the shared nature of the medium and the fact that
> retransmissions are driven by absolute time (an RTO happens after a
> certain point in time), what one is really looking for is a packet's
> queue occupancy being measured in time. Bytes are a reasonable analog
> to time (which is what makes bytes reasonable for a bit-congestible
> interface) for noncontested interfaces, but a shared interface can
> fail to emit a transmission for an arbitrary time interval. So I
> might find myself, if some variant on Blue is in use, bumping the
> mark/drop probability when the queue becomes full and *also* any time
> one dequeues a packet that has been waiting longer than some time
> interval.

This is the combined example I suggested above AFAICT.

Joe

> As to the "SHOULD NOT" regarding configuration, this probably makes a
> lot of sense in academic circles. Speaking as a vendor, I'm going to
> do what my customers tell me to. I'm happy enough with a default
> configuration following this recommendation, but if my customer wants
> it different, I'm not going to slap his hands.
>
> As a side note, I would generally suggest that we step aside from
> "RED" and talk about "AQM". Blue, SFQ-Blue, and AVP are AQM
> algorithms that are likely superior to RED from an operational
> viewpoint.