Re: [tcpm] initial RTO (was Re: Tuning TCP parameters for the 21st century)

Jerry Chu <hkchu@google.com> Thu, 30 July 2009 16:46 UTC

Return-Path: <hkchu@google.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 5E53B3A68EF for <tcpm@core3.amsl.com>; Thu, 30 Jul 2009 09:46:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -101.577
X-Spam-Level:
X-Spam-Status: No, score=-101.577 tagged_above=-999 required=5 tests=[AWL=-0.200, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, J_CHICKENPOX_34=0.6, USER_IN_WHITELIST=-100]
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 mn9tuC7o3bbQ for <tcpm@core3.amsl.com>; Thu, 30 Jul 2009 09:46:00 -0700 (PDT)
Received: from smtp-out.google.com (smtp-out.google.com [216.239.45.13]) by core3.amsl.com (Postfix) with ESMTP id 90FED3A6C30 for <tcpm@ietf.org>; Thu, 30 Jul 2009 09:45:59 -0700 (PDT)
Received: from wpaz1.hot.corp.google.com (wpaz1.hot.corp.google.com [172.24.198.65]) by smtp-out.google.com with ESMTP id n6UGk0a7010536 for <tcpm@ietf.org>; Thu, 30 Jul 2009 09:46:01 -0700
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1248972361; bh=0/Kmi7raXnIJukRWuIhyY/8lwLM=; h=DomainKey-Signature:MIME-Version:In-Reply-To:References:Date: Message-ID:Subject:From:To:Cc:Content-Type: Content-Transfer-Encoding:X-System-Of-Record; b=NrW1ybRzAwk5CMIpgd n4NmKTSgq0E6g61ksCvSS1QPMuJ7cBBSaSRS9lqcUf7c/+jLLAzNtz+vKee3+QkVB15 w==
DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=mime-version:in-reply-to:references:date:message-id:subject:from:to: cc:content-type:content-transfer-encoding:x-system-of-record; b=p2Ck7UFEFIfA36PZ7KwMr6ew27duOcwdhaIYQGG0KloVxNI+0/EUjYNDgkxOUQu1f TFUpursBRkbN/DNQA0x+A==
Received: from ywh15 (ywh15.prod.google.com [10.192.8.15]) by wpaz1.hot.corp.google.com with ESMTP id n6UGjwAK011317 for <tcpm@ietf.org>; Thu, 30 Jul 2009 09:45:58 -0700
Received: by ywh15 with SMTP id 15so890512ywh.10 for <tcpm@ietf.org>; Thu, 30 Jul 2009 09:45:58 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.100.239.16 with SMTP id m16mr1743454anh.192.1248972358250; Thu, 30 Jul 2009 09:45:58 -0700 (PDT)
In-Reply-To: <4835AFD53A246A40A3B8DA85D658C4BE0136891A@EVS-EC1-NODE4.surrey.ac.uk>
References: <20090728183556.A5820385088@lawyers.icir.org> <4835AFD53A246A40A3B8DA85D658C4BE0136891A@EVS-EC1-NODE4.surrey.ac.uk>
Date: Thu, 30 Jul 2009 09:45:58 -0700
Message-ID: <d1c2719f0907300945p53fc7b3aw871719f9eaee3e6f@mail.gmail.com>
From: Jerry Chu <hkchu@google.com>
To: L.Wood@surrey.ac.uk
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
X-System-Of-Record: true
Cc: tcpm@ietf.org, mallman@icir.org
Subject: Re: [tcpm] initial RTO (was Re: Tuning TCP parameters for the 21st century)
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: Thu, 30 Jul 2009 16:46:01 -0000

On Thu, Jul 30, 2009 at 1:27 AM, <L.Wood@surrey.ac.uk> wrote:
> It's necessary to disambiguate which ACK is for which SYN -
> i.e. if you have a _very_ long-delay path, you might send out
> three SYNs before an ACK to the first SYN comes in. But it appears
> at the time to be an ACK to the third SYN, with other
> responses lost in transit. So SYN timestamps really are
> necessary to disambiguate in this situation. I can see
> a cascading sequence where the first ACK comes in just after say
> the fifth SYN goes out, and it's immediately necessary to
> bump the RTO up to tens of seconds.

One solution I proposed only requires the detection of  sprurious
retransmission so it doesn't need to match ACKs with their SYNs,
as long as any dupack is received...

Jerry

>
> related discussion of this is in our TCP Protocol Radius paper:
> http://personal.ee.surrey.ac.uk/Personal/L.Wood/publications/index.html#protocol-radius
> esp. Fig 2.
>
> L.
>
> <http://www.ee.surrey.ac.uk/Personal/L.Wood/><L.Wood@surrey.ac.uk>
>
>
>
> -----Original Message-----
> From: tcpm-bounces@ietf.org on behalf of Mark Allman
> Sent: Tue 2009-07-28 19:35
> To: Jerry Chu
> Cc: tcpm@ietf.org
> Subject: Re: [tcpm] initial RTO (was Re: Tuning TCP parameters for the 21st
> century)
>
>
> Jerry-
>
>> So the active open side has retransmitted SYN, assuming initRTO of
>> 1sec, and eventually received a SYN-ACK but the TS option was
>> denied so no good RTT sample can be taken. It will continue to send
>> the init data with the initRTO.
>>
>> If the SYN retransmission has been unnecessary because the initRTO has
>> been too aggressive, more SYN-ACK will be triggered. Assuming these
>> dup SYN-ACKs are not lost, could they be used as a hint to the active
>> open side that the initRTO has been too short, so that the RTO timer
>> can be reverted back to 3secs immediately, in time to avoid further
>> RTO hell?
>
> So, you're saying that if you send N SYNs (N>1) and you get N SYN+ACKs
> then you take that to mean the initRTO was too short.
>
> Yeah, perhaps ...
>
> Are you suggesting something like this ...
>
>   (1) Use an initRTO of 1sec.
>
>   (2) If the RTO fires and you retransmit the SYN back the RTO to 3sec.
>       (And, if necessary you exponential backoff even more.)
>
>   (3) After the 3WHS you will either (a) have a good RTT sample from the
>       timestamp option and can therefore set the RTO reasonably or (b)
>       you retain the 3sec RTO until you get a good RTT sample.
>
> ??
>
> That means that if 1sec is not enough in the 3WHS you have to use 3sec
> until you have some idea about the network.  However, you also get a
> shot [*one shot*] to retransmit sooner based on the notion that most
> RTTs are less than 1sec.
>
> I think I buy that notion ... that both allows for more aggressiveness
> for the common case while also protecting against RTO Hell for the long
> path cases.  Is that the right walking of the line?
>
> allman
>
>
>
>
>
>