RE: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00
<toby.moncaster@bt.com> Thu, 22 February 2007 16:17 UTC
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1HKGdg-0005Cv-0j; Thu, 22 Feb 2007 11:17:48 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1HKGdf-00056p-42 for tcpm@ietf.org; Thu, 22 Feb 2007 11:17:47 -0500
Received: from smtp3.smtp.bt.com ([217.32.164.138]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1HKGdX-00025l-Ki for tcpm@ietf.org; Thu, 22 Feb 2007 11:17:47 -0500
Received: from I2KF03BV-UKBR.domain1.systemhost.net ([193.113.197.43]) by smtp3.smtp.bt.com with Microsoft SMTPSVC(6.0.3790.1830); Thu, 22 Feb 2007 16:17:38 +0000
Received: from E03MVZ4-UKDY.domain1.systemhost.net ([193.113.30.65]) by I2KF03BV-UKBR.domain1.systemhost.net with Microsoft SMTPSVC(6.0.3790.211); Thu, 22 Feb 2007 16:17:38 +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
Subject: RE: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00
Date: Thu, 22 Feb 2007 16:17:37 -0000
Message-ID: <BAB4DC0CD5148948A86BD047A85CE2A70233A95F@E03MVZ4-UKDY.domain1.systemhost.net>
In-Reply-To: <20070221223017.GI20215@loompa.cs.umd.edu>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00
Thread-Index: AcdWB+FJ/zzDETHlRjSl+0yp7zDJCQAi7FHA
From: toby.moncaster@bt.com
To: capveg@cs.umd.edu
X-OriginalArrivalTime: 22 Feb 2007 16:17:38.0336 (UTC) FILETIME=[F842C200:01C7569C]
X-Spam-Score: 0.2 (/)
X-Scan-Signature: 31247fb3be228bb596db9127becad0bc
Cc: tcpm@ietf.org
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
Hi Rob, The rationale behind our mechanism is that the latency in receiving the skipped segment matters far less than any latency caused in the potential signalling of a congestion event occurring during the honesty test. This aspect is never significant with TCP SACK because there can be enough information in a single acknowledgment to signal both that a segment is missing, and that a later segment has experienced congestion. The mechanism you have presented in [Sherwood05] defers sending the skipped segment until TCP-SACK or a dup ack signals it is missing , which will take about one RTT. It will take another RTT for the skipped segment to be duly acknowledged. If SACK is not used, the problem is that the receiver cannot signal any congestion event for about one RTT, from the time when it detects the skipped segment is missing until the time it receives it. TCP can only advance the acknowledgement number when it receives in-order data (strictly data which advances the receive window). In other words your test will generate a stream of dup acks all for the segment before the skipped segment until such time as the skipped segment is actually received. The advantage of the mechanism in [draft-moncaster-tcpm-rcv-cheat-00] is that it reduces the time it takes for the source to send the skipped segment to a (random) fraction of the congestion window, which on average will be less than half an RTT. Forcing a receiver to send a single duplicate ack does partially show their honesty in that it makes it hard for them to send optimistic acks. However it still allows them to conceal actual segment losses as they will generally not suffer any penalty (fast retransmit) until they have sent three duplicate acknowledgements. Toby -----Original Message----- From: Rob Sherwood [mailto:capveg@cs.umd.edu] Sent: 21 February 2007 22:30 To: Moncaster,T,Toby,CXR9 R Cc: capveg@cs.umd.edu; tcpm@ietf.org Subject: Re: [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-cheat-00 On Wed, Feb 21, 2007 at 03:46:10PM -0000, toby.moncaster@bt.com wrote: > Hi Rob, > > We were under the impression that you were keen that the skipped > segments solution be implemented with SACK enabled as otherwise there > is a risk that it could delay the notification of congestion by up to > 1 RTT more. Apologies if we have got this wrong. I'm not sure that I see that risk. I think both this point and the point below rely on the same aspect of TCP: when an out of order segment arrives, the receiver immediately sends a duplicate ACK for the previously acknowledged segment. Thus, as long as the receiver sends a single duplicate ack for the skipped segment, then the sender know it is honest. Because there is no delay in the dup ack generation, the penalty for receiving the skipped segment is at most 1 RTT. > "Any TCP sender SHOULD check the honesty of its receivers using the > probabilistic test periodically and randomly. In particular, it would > be advantageous for any sender that is heavily loaded to identify if > it is taken advantage of by an attack by a dishonest receiver". This wording is definitely clearer. > Final point, as Gavin McCullagh has already pointed out, apart from > legacy Tahoe TCP implementations a receiver can be reasonably safe if > it sends less than 3 duplicate ACKs for a missing segment as this will > not trigger fast re-transmit. Consequently we have specified that the > displacement should be at least this large. Maybe I'm the one who is confused, but as I understand it, a single duplicate ACK (for the correct segment) is enough to differentiate an honest receiver from a malicious one, so why do you need multiple duplicate acks? Fast retransmit should never be an issue, because the sender should not perform congestion control in response to a malicious receiver test. - Rob . _______________________________________________ tcpm mailing list tcpm@ietf.org https://www1.ietf.org/mailman/listinfo/tcpm
- [tcpm] New I-D posted : draft-moncaster-tcpm-rcv-… toby.moncaster
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… Rob Sherwood
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… Michael Welzl
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… Gavin McCullagh
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… toby.moncaster
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… toby.moncaster
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… Michael Welzl
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… Anantha Ramaiah (ananth)
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… Rob Sherwood
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… Caitlin Bestler
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… Rob Sherwood
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… John Heffner
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… Anantha Ramaiah (ananth)
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… Michael Welzl
- RE: [tcpm] New I-D posted : draft-moncaster-tcpm-… toby.moncaster
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… John Heffner
- AW: [tcpm] New I-D posted : draft-moncaster-tcpm-… Michael Welzl
- Re: [tcpm] New I-D posted : draft-moncaster-tcpm-… Gorry Fairhurst