Re: [re-ECN] CONEX Principles & Constraints

<toby.moncaster@bt.com> Fri, 30 October 2009 12:05 UTC

Return-Path: <toby.moncaster@bt.com>
X-Original-To: re-ecn@core3.amsl.com
Delivered-To: re-ecn@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id DBB693A6A8E for <re-ecn@core3.amsl.com>; Fri, 30 Oct 2009 05:05:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.182
X-Spam-Level:
X-Spam-Status: No, score=-3.182 tagged_above=-999 required=5 tests=[AWL=0.417, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1qxtCzf-kL15 for <re-ecn@core3.amsl.com>; Fri, 30 Oct 2009 05:05:16 -0700 (PDT)
Received: from smtp3.smtp.bt.com (smtp3.smtp.bt.com [217.32.164.138]) by core3.amsl.com (Postfix) with ESMTP id 5ED193A6814 for <re-ecn@ietf.org>; Fri, 30 Oct 2009 05:05:16 -0700 (PDT)
Received: from E03MVZ1-UKDY.domain1.systemhost.net ([193.113.30.61]) by smtp3.smtp.bt.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 30 Oct 2009 12:05:32 +0000
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Fri, 30 Oct 2009 12:04:46 -0000
Message-ID: <AEDCAF87EEC94F49BA92EBDD49854CC70DB7C3E3@E03MVZ1-UKDY.domain1.systemhost.net>
In-Reply-To: <AEDCAF87EEC94F49BA92EBDD49854CC70DB7C39B@E03MVZ1-UKDY.domain1.systemhost.net>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [re-ECN] CONEX Principles & Constraints
Thread-Index: AcpW8rVzQhb7wlDsTTucwrzbg9FgLQAK/WvwAGffmEAAJhxVUAAAClbQ
References: <4A916DBC72536E419A0BD955EDECEDEC06363A38@E03MVB1-UKBR.domain1.systemhost.net> <AEDCAF87EEC94F49BA92EBDD49854CC70DB7C39B@E03MVZ1-UKDY.domain1.systemhost.net>
From: <toby.moncaster@bt.com>
To: <philip.eardley@bt.com>, <re-ecn@ietf.org>
X-OriginalArrivalTime: 30 Oct 2009 12:05:32.0059 (UTC) FILETIME=[4788CEB0:01CA5959]
Subject: Re: [re-ECN] CONEX Principles & Constraints
X-BeenThere: re-ecn@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: re-inserted explicit congestion notification <re-ecn.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/re-ecn>, <mailto:re-ecn-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/re-ecn>
List-Post: <mailto:re-ecn@ietf.org>
List-Help: <mailto:re-ecn-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/re-ecn>, <mailto:re-ecn-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Oct 2009 12:05:17 -0000

In general I think these are a good starting point. Some comments
inline...

> -----Original Message-----
> From: re-ecn-bounces@ietf.org [mailto:re-ecn-bounces@ietf.org] On
> Behalf Of philip.eardley@bt.com
> Sent: 29 October 2009 18:03
> To: re-ecn@ietf.org
> Subject: [re-ECN] CONEX Principles & Constraints
> 
> We wanted to start some discussion on "principles" and "constraints"
ie
> what we want to do in the proposed WG and how would its scope would be
> restricted (building especially on emails from John (about
> "principles") and Rich (about "requirements"). Eventually this would
> feed into the Charter. This is just a first guess, so please bash.
> Something on these lines would be in the "Constraints" part of the
> Agenda.
> 
> 1. the purpose is to standardise the conex protocol - this exposes
> congestion information along the forwarding path of the Internet
> ("rest-of-path congestion"). (This is in addition to the current
> capability that exposes the congestion on the "path-so-far".). Note,
> the purpose doesn't include studying how the conex information could
be
> used. Reason: there are lots of potential uses for the information. In
> order to reduce the scope of the proposed WG, we concentrate on the
> underlying information protocol.

I might even go so far as saying "Potential uses for such information
are explicitly beyond the scope of this initial
{WG/BoF/protocol/whatever}"

> 2. The protocol should be open about the responses it allows to the
> conex information. For example, it should not make assumptions about
> the behaviour of a particular application, and it should allow a
> diversity of potential traffic management practices (of networks and
> end-hosts).
> 3. the conex information needs to be easily visible to all network
> elements, and be application-independent (including encrypted apps).
> Reason: this ensures widest possible applicability -- it is visible to
> both end-systems (to help them control their sending rate) and to
> network managers (to help them manage a bottleneck, whether traffic
> originates from their own users or from other networks).

I would either merge this with the later points about IP or at least
re-order the list so they occur in a row.

> 4. the conex information needs to be sufficiently up-to-date, for
> example so that it can usefully assist congestion control by end
> systems. Reason: stale information is little use. [Question: instead
of
> "sufficiently up-to-date", would "real-time" or "near real-time" be
> better?]

How about "Sufficiently up-to-date to enable near-real-time traffic
management". 

Incidentally this is nothing to do with congestion control at
end-systems - the end-system already sees congestion! So the only link
to congestion control is if this in turn allows the network to be more
lenient towards end-systems.


> 5. the conex information needs to be sufficiently granular, to allow
> identification of those sending traffic to the bottleneck [Comment:
> this is trying to get a point that John made about 'granular enough
for
> cost allocation' but in a more generic way. "Identification" is a bad
> word as, for some readers, it might be imply more than intended - but
I
> can't think of a better one at the moment. I hope that the following
> bullet about conex information in the IP header solves how to do it.]

The information needs to granular enough to hold the originator of the
traffic accountable?


> 6. the conex information is carried in the IP header. Note: it is in
> scope to work out which IP header bits to use (and the implications
for
> other stuff that may already be using those bits).

Better: "This may require defining new codepoints in the IP header or
possibly even the re-definition of existing codepoints. We will be
careful to consider the impact of our choices both on existing protocols
and on deployability.

> 7. a protocol will be developed for both IPv4 and IPv6. Reason: both
> are needed for full applicability. (There was push-back on an earlier
> suggestion of narrowing the scope to IPv4.)

I might consider phrasing this "although on the face of it an IPv6
protocol may be easier, we will also develop solutions for IPv4 as it is
still the dominant network-layer protocol.."

> 8. TCP options will be used to inform the sender about congestion
> received at the receiver. (Note, current proposals require this
> information transfer.) Reason: narrow the scope by looking only at
TCP,
> which is used by the vast majority of the traffic (~85-90%).

Do we want to specify using TCP options at the moment? Option space is
limited and already used for lots of other things + MPTCP will be using
even more (and there is a very high chance of eventual overlap between
conex and MPTCP). I would prefer to leave this as "we will concentrate
on TCP as this provides a feedback path..."

> 9. a baseline assumption is that routers are unmodified. Reason:
> deployment viability

"This MUST work with unmodified routers, even if they don't do ECN...
although modifying routers may allow additional refinements...

> 10. a baseline assumption is that conex information is signalled
> explicitly (through the IP header) and not implicitly signalled
through
> packet loss, delay or jitter. Reason: explicit signalling allows a
> "better" reaction, for example faster, without impairment

In theory implicit signalling already exists - if you observe a TCP
source halving its rate you can assume it was (probably) in response to
a loss event...

> 11. but we will also develop a solution where the conex information is
> signalled through packet loss. Reason: ECN is not enabled in most
> routers today; incremental deployment is critical

No! - we may develop a solution that informs the network of congestion
the sender has learnt about both as a result of explicit notification
(ECN) and implicit notification (loss). However we DON'T use loss to
signal ConEx information (which is surely impossible anyway?)! 

> 12. (possibly) we will study an incremental deployment step where only
> the sender is conex-enabled [Step suggested by Matt]

We certainly need to leave this open as a possible step

> 13. (possibly) another incremental deployment step?

Proxy?

> 14. we will describe threats, especially from falsifying or
suppressing
> the conex information - whether by ISPs or end-hosts. The protocol
> needs to allow such threats to be dealt with (in as simple a manner as
> possible), but the actual mechanisms to tackle those threats (using
> policer boxes, for instance) are out of scope. Reason: such mechanisms
> are about uses of conex, rather than exposing the information.
> 15. anything else?

Probably :)

> 
> Thanks
> phil