Re: [tcpm] Using the ECN Nonce to detect spurious loss events
"Scheffenegger, Richard" <rs@netapp.com> Wed, 16 March 2011 12:05 UTC
Return-Path: <rs@netapp.com>
X-Original-To: tcpm@core3.amsl.com
Delivered-To: tcpm@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3D8D63A697E for <tcpm@core3.amsl.com>; Wed, 16 Mar 2011 05:05:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.556
X-Spam-Level:
X-Spam-Status: No, score=-10.556 tagged_above=-999 required=5 tests=[AWL=0.043, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
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 sF+amVhAykpb for <tcpm@core3.amsl.com>; Wed, 16 Mar 2011 05:05:51 -0700 (PDT)
Received: from mx4.netapp.com (mx4.netapp.com [217.70.210.8]) by core3.amsl.com (Postfix) with ESMTP id 3F5513A6977 for <tcpm@ietf.org>; Wed, 16 Mar 2011 05:05:51 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.63,193,1299484800"; d="scan'208";a="246014529"
Received: from smtp3.europe.netapp.com ([10.64.2.67]) by mx4-out.netapp.com with ESMTP; 16 Mar 2011 05:07:16 -0700
Received: from ldcrsexc1-prd.hq.netapp.com (ldcrsexc1-prd.hq.netapp.com [10.65.251.109]) by smtp3.europe.netapp.com (8.13.1/8.13.1/NTAP-1.6) with ESMTP id p2GC7Fct003280; Wed, 16 Mar 2011 05:07:16 -0700 (PDT)
Received: from LDCMVEXC1-PRD.hq.netapp.com ([10.65.251.107]) by ldcrsexc1-prd.hq.netapp.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 16 Mar 2011 12:06:01 +0000
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Date: Wed, 16 Mar 2011 12:05:45 -0000
Message-ID: <5FDC413D5FA246468C200652D63E627A0D5F20BE@LDCMVEXC1-PRD.hq.netapp.com>
In-Reply-To: <F93BAD94-39D8-414A-8364-9129B459A2CD@ifi.uio.no>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [tcpm] Using the ECN Nonce to detect spurious loss events
Thread-Index: AcvjvYRhw1JwKBv9RXCQu+o3Yu8eSwAC12Ew
References: <F93BAD94-39D8-414A-8364-9129B459A2CD@ifi.uio.no>
From: "Scheffenegger, Richard" <rs@netapp.com>
To: michawe <michawe@ifi.uio.no>, tcpm@ietf.org
X-OriginalArrivalTime: 16 Mar 2011 12:06:01.0056 (UTC) FILETIME=[842FE600:01CBE3D2]
Subject: Re: [tcpm] Using the ECN Nonce to detect spurious loss events
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Mar 2011 12:05:53 -0000
Hi Michael, I believe that your goal is very worthwhile - detecting spurious retransmissions and fixing the CC reaction. But neither ECN nor ECN-nounce are very widely deployed (in comparison with Timestamp - Eifel; SACK - DSACK). Hopefully, the state of ECN will improve with IPv6 (and now, that a number of major OS allow enabling ECN, even though it's not enabled by default). However, as the number of SACK (DSACK) enabled sessions is already quite high, and there is less (no) state required in the server to discriminate spurious retransmissions with very high probability. I think documenting the proper response to DSACK (only the signaling is currently documented, IIRC) may be more valuable to drive adoption with commercial stacks - often stacks actively signal DSACK, but don't process that feedback themselves... Overall, I'm afraid I don't see that efforts to improve your scheme would see much deployment because of all these reasons. On a related topic, I would like to hear your and the groups feedback on the (sketchy) draft around TCP timestamp negotiation - when in use with SACK, it asks for immediate, unconditional reflection of the last received timestamp on the receiver side. This allows the unwind of misdirected CC reaction to be done faster than the RTT of the retransmission (current timestamp / DSACK can only signal back the spurious retransmission 1 RTT after the spurious retransmission, but not 1 RTT (+reorder delay) after the original segment). (The other main features this signaling would allow are one-way-delay variance measurements, and also faster lost retransmission detection (than Linux; not a IETF RFC yet) without violating packet conservation principles, plus provide a means of transparently allowing integrity checks of timestamps without breaking timestamp-based algorithms). http://www.ietf.org/id/draft-scheffenegger-tcpm-timestamp-negotiation-01.txt Best regards, Richard Scheffenegger > -----Original Message----- > From: michawe [mailto:michawe@ifi.uio.no] > Sent: Mittwoch, 16. März 2011 10:34 > To: tcpm@ietf.org > Subject: [tcpm] Using the ECN Nonce to detect spurious loss events > > Hi all, > > This is about an idea that I've been carrying around with me for a long > time now. The plan was to continue the work - which is so far only > based on simulations - with a real-life implementation, and then one > day write a draft and suggest it to TCPM... but, having treated this as > a low-priority item because of the ECN Nonce's shaky situation, time > worked against me, and now I find myself wondering whether I should > continue this at all or simply dump it. So I'd like to ask what the > group thinks - continue or dump? > > The idea is to update RFC 3540 (ECN Signaling with Nonces) to include a > method for spurious loss event detection. > > Here's how it works: > Say, we send a packet, and expect the nonce sum to be 1 in return. The > packet is lost, we retransmit => this retransmission carries no nonce > (by definition). The nonce sum in the ACK that was caused by this > retransmitted packet should then be 0. So, if we get an ACK for the > retransmitted packet which carries the nonce sum 1, this indicates that > the loss event that led to this retransmission was spurious. > > We probably can't rely on the receiver to send a 0 nonce sum on all > ACKs that are caused by packets carrying no nonce; also, if the above > is the only check done, a receiver would have a 50% chance of tricking > a sender into believing that a loss event was spurious, thereby > eliminating the very benefit that the nonce provides. We therefore have > to wait for a sequence of correct nonce sums to come back - e.g. 4 > would already give a reliability of around 94% (i.e. the receiver has a > 6% chance of lying). > > I see this mechanism as complementary to the other spurious loss event > detection schemes (minus Eifel, of course) - it would sometimes kick in > when the others don't. One of the nice things about it is that it seems > to be easy to implement: it doesn't change anything about the nonce > specification on the wire, it only adds a little more intelligence to > how we interpret the nonce sums that come back. > > I have a small page about this here: > http://heim.ifi.uio.no/~michawe/research/projects/spurious/index.html > where you can get the Globecom'08 paper that gives more details, and an > updated implementation of the ECN Nonce for the Linux kernel (that was > preparatory work towards a real-life implementation of the mechanism). > > Of course, the big problem with this whole scheme is that it is based > on the ECN Nonce, which is (it seems to me) probably going to be > eliminated by conex (for a cause that I personally consider more > valuable than the combination of the ECN nonce + my scheme). So - dump? > Opinions? > > Cheers, > Michael > > _______________________________________________ > tcpm mailing list > tcpm@ietf.org > https://www.ietf.org/mailman/listinfo/tcpm
- [tcpm] Using the ECN Nonce to detect spurious los… michawe
- Re: [tcpm] Using the ECN Nonce to detect spurious… Scheffenegger, Richard
- Re: [tcpm] Using the ECN Nonce to detect spurious… michawe
- Re: [tcpm] Using the ECN Nonce to detect spurious… Scheffenegger, Richard
- Re: [tcpm] Using the ECN Nonce to detect spurious… michawe
- Re: [tcpm] Using the ECN Nonce to detect spurious… Yuchung Cheng