Re: [re-ECN] VIability issue #2

<toby.moncaster@bt.com> Fri, 06 November 2009 11:46 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 43FC93A683B for <re-ecn@core3.amsl.com>; Fri, 6 Nov 2009 03:46:45 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.275
X-Spam-Level:
X-Spam-Status: No, score=-3.275 tagged_above=-999 required=5 tests=[AWL=0.323, BAYES_00=-2.599, HTML_MESSAGE=0.001, 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 x2pEQZpripHJ for <re-ecn@core3.amsl.com>; Fri, 6 Nov 2009 03:46:43 -0800 (PST)
Received: from smtp4.smtp.bt.com (smtp4.smtp.bt.com [217.32.164.151]) by core3.amsl.com (Postfix) with ESMTP id 4A1073A67A6 for <re-ecn@ietf.org>; Fri, 6 Nov 2009 03:46:42 -0800 (PST)
Received: from E03MVZ1-UKDY.domain1.systemhost.net ([193.113.30.61]) by smtp4.smtp.bt.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 6 Nov 2009 11:47:05 +0000
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01CA5ED6.CDC7E2F9"
Date: Fri, 6 Nov 2009 11:46:37 -0000
Message-ID: <AEDCAF87EEC94F49BA92EBDD49854CC70DD2F822@E03MVZ1-UKDY.domain1.systemhost.net>
In-Reply-To: <c22.6dd3f8e3.3825639c@aol.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [re-ECN] VIability issue #2
Thread-Index: Acpe1Q+wDZbvCEFiTDW+Mg3RhFPRPgAAHq+g
References: <c22.6dd3f8e3.3825639c@aol.com>
From: <toby.moncaster@bt.com>
To: <HeinerHummel@aol.com>, <leslie@thinkingcat.com>, <re-ecn@ietf.org>
X-OriginalArrivalTime: 06 Nov 2009 11:47:05.0381 (UTC) FILETIME=[DCCB6550:01CA5ED6]
Subject: Re: [re-ECN] VIability issue #2
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, 06 Nov 2009 11:46:45 -0000

comments inline marked {TM}

 

Toby

____________________________________________________________________ 
Toby Moncaster, Senior Researcher, Network Infrastructure Practice
B54/70 Adastral Park, Ipswich, IP53RE, UK.  +44 7918 901170 

 

 

 

From: re-ecn-bounces@ietf.org [mailto:re-ecn-bounces@ietf.org] On Behalf Of HeinerHummel@aol.com
Sent: 06 November 2009 11:34
To: leslie@thinkingcat.com; re-ecn@ietf.org
Subject: Re: [re-ECN] VIability issue #2

 

In einer eMail vom 05.11.2009 07:07:20 Westeuropäische Normalzeit schreibt leslie@thinkingcat.com:

	Viability Issue #2
	
	The expectation is that congestion exposure information will be carried 
	in IP packet headers.  Is there really enough room to do that 
	effectively (in IPv4)?
	
	
	For discussion:
	This assumes tight timing -- that feedback is received and acted upon 
	such that subsequent flows will experience the same or similar network 
	state.  What are the implications (or likelihood) of different paths? 
	Or, are there other network state changes that will (could) change in 
	that timeframe (now or in future developments).

 

1)     Congestion should be signalled only to those upstream (not downstream !) routers which are tempted to use this congested router for transit.

{TM} This is exactly what re-ECN achieves. There are only two possible ways in which a router can signal to routers upstream that it is congested. It could do this directly by trying to send messages back along the path to say it is congested, but such approaches have long been shown to be unworkable for a number of reasons (and are getting more difficult not less). The other alternative is to inform downstream nodes and for the receiver to pass this back to the sender. The sender can then insert this and thus a router that is upstream can calculate how much congestion is being caused downstream of it.

 

Routers ALREADY inform downstream nodes that they are congested. They either do this implicitly by drop (requiring some digging into flow state to be spotted) or they do it explicitly by ECN.

 

This is not an information per single ip-packet, instead an information from time to time informing about the degree of congestion. I.e. it needs to be a message of some other protocol type. Also some mechanism must guide the notification message as to progress in a tree-way fashion upstream  but  not beyond the points where flows wouldn't use the actually congested node anyway. 

 

{TM} Congestion varies on near RTT scales. It is pointless to send periodic notifications of congestion levels because these would simply miss the potentially enormous short-term fluctuations. Ideally therefore the information should be carried with every packet.

 

 

This (upstream) area to be informed can easily be identified with respect to flows to some distinct destination node. Hence  congestions due to flows to one and the same destination node can easily and properly be handled. More patient work is needed if the congestion is due to flows destined to different destination nodes (that's what a working group is for, isn't it ?).

 

{TM} I am not sure what you are getting at here. As far as I know it is pretty hard to identify the reverse path for a given flow given paths are often asymmetric. Even if it were possible why would the upstream node trust the downstream node. What would prevent an attacker spoofing pushback messages? And it sounds like you are suggesting using flow state in the core?

 

I am afraid re-ECN has something else in mind :-(

 

2) The few bits in the IP-header are definitely needed and should be saved for routing, e.g. for extending multipath such that even crankback (which is de facto a loop) becomes ok, i.e.  so that endless-loops can be avoided hereby.  

 

{TM} Is there any firm proposal yet which makes use of these bits in such a fashion? If so, please could you send a link to a relevant paper or ID to this list?

 

Heiner