RE: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00

"Anantha Ramaiah \(ananth\)" <ananth@cisco.com> Thu, 22 February 2007 01:13 UTC

Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1HK2WP-00049V-Rr; Wed, 21 Feb 2007 20:13:21 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1HK2WO-0003ws-2S for tcpm@ietf.org; Wed, 21 Feb 2007 20:13:20 -0500
Received: from sj-iport-2-in.cisco.com ([171.71.176.71] helo=sj-iport-2.cisco.com) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1HK2WL-0007r4-GA for tcpm@ietf.org; Wed, 21 Feb 2007 20:13:20 -0500
Received: from sj-dkim-7.cisco.com ([171.68.10.88]) by sj-iport-2.cisco.com with ESMTP; 21 Feb 2007 17:13:17 -0800
X-IronPort-AV: i="4.14,203,1170662400"; d="scan'208"; a="362220889:sNHT54713548"
Received: from sj-core-3.cisco.com (sj-core-3.cisco.com [171.68.223.137]) by sj-dkim-7.cisco.com (8.12.11/8.12.11) with ESMTP id l1M1DGDK009746; Wed, 21 Feb 2007 17:13:17 -0800
Received: from xbh-sjc-221.amer.cisco.com (xbh-sjc-221.cisco.com [128.107.191.63]) by sj-core-3.cisco.com (8.12.10/8.12.6) with ESMTP id l1M1DGhq023922; Wed, 21 Feb 2007 17:13:16 -0800 (PST)
Received: from xmb-sjc-21c.amer.cisco.com ([171.70.151.176]) by xbh-sjc-221.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Wed, 21 Feb 2007 17:13:16 -0800
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
Subject: RE: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00
Date: Wed, 21 Feb 2007 17:13:14 -0800
Message-ID: <0C53DCFB700D144284A584F54711EC5802E88AD8@xmb-sjc-21c.amer.cisco.com>
In-Reply-To: <45DCD39C.60005@psc.edu>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00
Thread-Index: AcdWDte6ps6oE3fNRvCGhOdkMrH+gQACmrbg
From: "Anantha Ramaiah (ananth)" <ananth@cisco.com>
To: John Heffner <jheffner@psc.edu>, tcpm@ietf.org
X-OriginalArrivalTime: 22 Feb 2007 01:13:16.0582 (UTC) FILETIME=[A1BC2C60:01C7561E]
DKIM-Signature: v=0.5; a=rsa-sha256; q=dns/txt; l=4593; t=1172106797; x=1172970797; c=relaxed/simple; s=sjdkim7002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=ananth@cisco.com; z=From:=20=22Anantha=20Ramaiah=20\(ananth\)=22=20<ananth@cisco.com> |Subject:=20RE=3A=20[tcpm]=20New=20I-D=20posted=20=3A=20=20draft-moncaste r-tcpm-rcv-cheat-00 |Sender:=20; bh=9JulF82OT85Uhpgv/X5OVhCMaAZoUES9/0axbm3Q+3k=; b=Gf7IYbDVLUZ3hu5WY1pK6kiE31kQ07EgKIwdcVJrkSfrVyt/kPAEoSIY72lnkcTq4TAL48N6 KqTOI2H09zFO40kvxsqsbR0Mr4CFjbfQKl1P8xEuyuqf5i1Kl5/VtsZt;
Authentication-Results: sj-dkim-7; header.From=ananth@cisco.com; dkim=pass ( sig from cisco.com/sjdkim7002 verified; );
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 825e642946eda55cd9bc654a36dab8c2
Cc: Michael Welzl <michael.welzl@uibk.ac.at>
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
Errors-To: tcpm-bounces@ietf.org

 

> -----Original Message-----
> From: John Heffner [mailto:jheffner@psc.edu] 
> Sent: Wednesday, February 21, 2007 3:20 PM
> To: tcpm@ietf.org
> Cc: Anantha Ramaiah (ananth); Michael Welzl; toby.moncaster@bt.com
> Subject: Re: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00
> 
> Anantha Ramaiah (ananth) wrote:
> >  
> > 
> >> is at odds with RFC 2581, which says:
> >>
> >>> Out-of-order data segments SHOULD be acknowledged immediately, in 
> >>> order to accelerate loss recovery.
> >> ...although I wonder why this is only a SHOULD, and not a 
> MUST, and 
> >> herewith suggest to change this in 2581bis, unless there's a good 
> >> reason not to do so.
> > 
> > Although the RFC says SHOULD, in reality it is treated as a MUST, I 
> > think the majority of stacks will send a ack for a 
> out-of-order segment.
> > It probably makes sense to make this a MUST in RFC 2581bis 
> if we want 
> > to enforce some basic congestion control stuff like 
> > fast-retransmissions (which is worded as a MUST by the way).
> > 
> > The only reason which I can think off why it was worded as a SHOULD 
> > instead of a MUST is when the basic cong.control on TCP was written 
> > long time back, "putting" many packets (even if they serve 
> some useful
> > purpose) was probably considered aggressive, in the current context 
> > pure ACK's. I am sure there are folks in the list who may 
> have better 
> > answers.
> > 
> > OTOH, recently, we were discussing about rate-limiting the no. of 
> > duplicate ACK's from mis-behaving receivers in the context of RFC 
> > 2581bis, now there is a mention about
> > 
> "some-receivers-that-may-exist-who-don't-send-duplicate-acks-for-out-o
> > f-
> > order-segments-received" 
> 
> 
> I would be reluctant to change this to a MUST.  A few things 
> that come to mind:
> 
> 
> As you mention, some receivers might want to adopt a slightly 
> different 
> ACK strategy if there's persistent reordering, to avoid having to ACK 
> every packet in steady state, and to prevent triggering fast 
> retransmit 
> on senders that don't do NCR (RFC4653) or similar.

I am not aware of receivers that rate limit the ACK's due to the fact
that there was persistent re-ordering in the network. YMMV.

> 
> In CPU- or interrupt-bound senders, suddenly doubling the 
> rate of ACKs 
> it must process can have adverse effects on performance.  It

Well, I would classify this as the problem of the receiver which isn't
able to process these ACK's. So, if I understand what you are saying
correctly, if the peer to that receiver isn't sending a duplicate ACK
for every out-of-order packet received, things would work well in this
particular case, in cases if it peers with a box (host/router any TCP
device) which follws the SHOULD clause seriously and ack's every other
out-of-order-packet, then the receiver is in trouble? After all the
receiver can chose to drop the ACK, when it detects conditions that
effect performance. It is not rocket-sicence to implement performance
monitors and take corrective actions.

<snip>

> 
> Paths with severe asymmetry may want to thin ACKs.  There were some 
> papers on this in the mid to late 90's coming out of work with 
> satellites and ADSL.

Ok.

> 
> There's been some talk lately about reverse path congestion control. 
> (This would be much harder with TCP than DCCP, but maybe someone can 
> figure it out?)

By reverse path, you mean ACK congestion control? Data transfer can be
bi-directional.

> 
> 
> Some of this stuff might be hair-brained or not, but we don't want to 
> restrict flexibility unless it's really necessary.

I agree. My point ( I haven't surveyed the whole internet/intranets
obviously) is :-

- since it is believed that most of the stacks existing today, ACKs
every out-of-order segment it received, "SHOULD" clause has been in the
experimental stage for a while..

- The internet has changed a long way what it was 20+ years back when
the original TCP specs were written and some of the assumptions that
were made are no longer commonplace. In other words the assumptions
which were common has become rare today.

Hence my thinking ( I know some folks wouldn't like it) is we don't lose
much by changing it. May be we don't lose much by not changing ( except
that we would be in a situation of not refelecting the common practice
in the standards) as well :-)

-Anantha

_______________________________________________
tcpm mailing list
tcpm@ietf.org
https://www1.ietf.org/mailman/listinfo/tcpm