Re: [re-ECN] RE-ECN without ECN.

Bob Briscoe <rbriscoe@jungle.bt.co.uk> Fri, 02 October 2009 15:41 UTC

Return-Path: <rbriscoe@jungle.bt.co.uk>
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 09E973A67D9 for <re-ecn@core3.amsl.com>; Fri, 2 Oct 2009 08:41:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.855
X-Spam-Level:
X-Spam-Status: No, score=-1.855 tagged_above=-999 required=5 tests=[AWL=0.262, BAYES_00=-2.599, DNS_FROM_RFC_BOGUSMX=1.482, 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 N3JRcVYTh9SS for <re-ecn@core3.amsl.com>; Fri, 2 Oct 2009 08:41:45 -0700 (PDT)
Received: from smtp3.smtp.bt.com (smtp3.smtp.bt.com [217.32.164.138]) by core3.amsl.com (Postfix) with ESMTP id CC1173A6783 for <re-ecn@ietf.org>; Fri, 2 Oct 2009 08:41:44 -0700 (PDT)
Received: from i2kc06-ukbr.domain1.systemhost.net ([193.113.197.70]) by smtp3.smtp.bt.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 2 Oct 2009 16:43:08 +0100
Received: from cbibipnt05.iuser.iroot.adidom.com ([147.149.196.177]) by i2kc06-ukbr.domain1.systemhost.net with Microsoft SMTPSVC(6.0.3790.3959); Fri, 2 Oct 2009 16:43:08 +0100
Received: From bagheera.jungle.bt.co.uk ([132.146.168.158]) by cbibipnt05.iuser.iroot.adidom.com (WebShield SMTP v4.5 MR1a P0803.399); id 1254498187819; Fri, 2 Oct 2009 16:43:07 +0100
Received: from MUT.jungle.bt.co.uk ([10.215.130.87]) by bagheera.jungle.bt.co.uk (8.13.5/8.12.8) with ESMTP id n92Fh4f2014818; Fri, 2 Oct 2009 16:43:04 +0100
Message-Id: <200910021543.n92Fh4f2014818@bagheera.jungle.bt.co.uk>
X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9
Date: Fri, 02 Oct 2009 16:43:05 +0100
To: Matt Mathis <matt.mathis@gmail.com>
From: Bob Briscoe <rbriscoe@jungle.bt.co.uk>
In-Reply-To: <4AC52108.4090004@ee.ucl.ac.uk>
References: <fc0ff13d0910010936i5aa26e6esd830c958422e340d@mail.gmail.com> <4AC52108.4090004@ee.ucl.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"; format=flowed
Content-Transfer-Encoding: quoted-printable
X-Scanned-By: MIMEDefang 2.56 on 132.146.168.158
X-OriginalArrivalTime: 02 Oct 2009 15:43:08.0305 (UTC) FILETIME=[0A18D810:01CA4377]
Cc: =?iso-8859-1?Q?Jo=E3o?=, re-ecn@ietf.org
Subject: Re: [re-ECN] RE-ECN without ECN.
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, 02 Oct 2009 15:41:52 -0000

Matt,

At 22:37 01/10/2009, João Taveira Araújo wrote:
>Inline
>
>Matt Mathis wrote:
>>Here is a fun little tidbit for people to think about, while others
>>resolve some of the non-technical issues surrounding launching the
>>conex.
>>
>>For all modern reliable protocols over non-ECN networks (where loss is
>>the primary congestion indicator), the amount of duplicate data is a
>>direct measure of the down stream congestion.    (e.g. If I observe
>>both a data packet and its retransmission, then the first transmission
>>was lost someplace downstream).    This is because for all modern
>>protocols, the sender almost never sends data that the receiver
>>already holds.
>>
>
>Except it's not transport oblivious, so you'd 
>have to a) redesign the solution for every new 
>transport protocol or b) expect a single 
>transport protocol to be all-encompassing. Won't 
>nitpick since this is a thought experiment though...
>
>>If you add the assumption that the network itself does not reorder
>>packets, then the number of out-of-order packets is a direct measure
>>of the upstream congestion.  (e.g. the first transmission was lost,
>>and I see the retransmission).

I think you mean a measure of e2e congestion, not upstream.


>>This is sufficient information to implement many of the proposed uses
>>for RE-ECN marking.

It took me a while to unpick the subject line, 
but I understand now. You mean the network 
viewing e2e congestion with neither ECN nor re-ECN protocols.

A related reference (viewing e2e congestion with only ECN):
[Purple] Pletka, R., Waldvogel, M., and S. 
Mannal, “PURPLE: Predictive Active Queue 
Management Utilizing Congestion Information,” 
Proc. Local Computer Networks (LCN 2003) , October 2003.



>>For example, the bottleneck for problematic flows can be moved
>>upstream so that they are less disruptive to other users, by
>>throttling the amount of duplicate data permitted through an ingress
>>router.  In the extreme case, when a particular flow exceeds its quota
>>for duplicate data, you drop the retransmissions which will
>>(eventually) cause it to run out of receive window and take a timeout.

We ought to try to get consensus on whether 
network-based policing of the amount of 
congestion per flow is desirable. It's not a goal 
I think we should aim for - it enforces a 
transport monoculture completely unnecessarily, 
as it's surely neither needed nor effective for 
any 'reasonable' form of fairness.

Flow policing was indeed a use proposed for 
re-ECN (in our original SIGCOMM'05 paper). But we 
were conflicted over whether to include it. We 
ended up highliting it to pander to the SIGCOMM 
committee - I now wish we hadn't. Since then, 
we've written "The Case Against Bottleneck 
Policing" (S.3.1.2 of 
draft-briscoe-tsvwg-re-ecn-tcp-motivation-01) and 
I now find the whole idea of flow policing unneeded and actually harmful.

But let's not throw out the baby with the 
bathwater. There may be something in what you're 
saying, even if we disagree how it might be used.

>>  More polite would be to pass the retransmission, but then discard the
>>next in-order packet on the same flow, normally causing it to slow
>>down.  There are some details to be worked out...

I'm concerned that using a feature that a 
protocol exhibits when it is behaving (TCP 
retransmissions) in order to police misbehaviour 
of another aspect of the protocol (too much 
congestion) requires us to suspend too much 
disbelief. If I'm going to modify the protocol to 
misbehave in one way, I can modify the retransmission semantics too.

Rather than per flow policing, a better framing 
might be bulk policing over time. Targeting 
misbehaviour of single flows presumes someone has 
modified the code. Whereas targeting excessive 
congestion caused by excessive use of unmodified 
TCP(s) is lower hanging fruit. Whether for 
excessive amounts of data over time, or excessive numbers of flows all at once.

Certainly apps or users can work round a 
re-transmission-based bulk policer by not using 
TCP, but they then have to hack an alternative 
that still does all the reliable delivery (or use IPsec).

>>The point being that for non-encrypted standard transports, many
>>RE-ECN like things can be implemented unilaterally, without global
>>deployment of complicated, subtitle and hard to verify new protocol
>>features.

I know what you're trying to achieve in terms of 
unlilateral deployment. However, I think this 
characterisation of re-ECN is a little uncharitable.
i) The point of the re-ECN design was that one 
network can deploy unilaterally without waiting 
for others, and one stack can deploy unilaterally 
without waiting for others. But you're right that 
not much can be achieved until a significant number of both have moved.
ii) re-ECN is designed for very simple verification (balance of two counters).
iii) I don't see complicated. I see simplicity 
relative to the complexity of any of the things 
it could replace, and the things that can't even be done at all any other way.

True, there might be simpler schemes that don't 
work, or can be bypassed. But network operators 
don't want the complexity of deploying many 
schemes one after the other as each one fails 
(they are driven to behave like this for lack of 
good solutions, but they don't want to).


Bob


>You'd be missing one of the most important 
>features however - that information is 
>verifiable across borders by both parties. An 
>ISP can throttle the duped packets, but why 
>would it voluntarily hinder its customers when 
>the downstream transit domain is unable to 
>verify whether such enforcement is taking place?
>
>Congestion may come from within the ISP itself, 
>but I'm not certain the ISP can reliably infer 
>the location of such congestion at the ingress. 
>Something like multipath TCP would also make it 
>very hard to figure out whether or not a packet 
>is retransmitted ... which would make a great incentive for deploying  mtcp.
>
>Joao.




________________________________________________________________
Bob Briscoe,                                BT Innovate & Design