Re: [tcpm] WGLC for draft-ietf-tcpm-1323bis

Yuchung Cheng <ycheng@google.com> Tue, 14 May 2013 16:44 UTC

Return-Path: <ycheng@google.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 80B8121F9184 for <tcpm@ietfa.amsl.com>; Tue, 14 May 2013 09:44:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.977
X-Spam-Level:
X-Spam-Status: No, score=-102.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_LOW=-1, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Pj9Zc+0mvIRZ for <tcpm@ietfa.amsl.com>; Tue, 14 May 2013 09:44:45 -0700 (PDT)
Received: from mail-lb0-f172.google.com (mail-lb0-f172.google.com [209.85.217.172]) by ietfa.amsl.com (Postfix) with ESMTP id DEE0721F9180 for <tcpm@ietf.org>; Tue, 14 May 2013 09:44:41 -0700 (PDT)
Received: by mail-lb0-f172.google.com with SMTP id y6so865952lbh.3 for <tcpm@ietf.org>; Tue, 14 May 2013 09:44:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=jdpkak8LoJ2K1v0K7hfemaUto1EfywIAUdXMd8Kv03M=; b=lwdjLHXlPrAnQYAQREc6a1EyuRql2YcuXH85SPxh9kNklL6BxARj4OcOoDTxynfPD6 5a4Km8YzDrqSjyr/knsd9dGuuvf5crhUQyrvsLpTlq+7tb8wUi3QeZ0aqZbUzH0eQlql QGWXEWEjoGdhUZB24HQ6kEDK4vNTIPa8aQk0z+Gekf0bkxUvJMT9MFNaL4iS7GGlZETB 2h8oYYDDPpPmQ1CJCcqwmhFjIuxNPFAGqPqQ6IXHH6mk9fcImEcL+qWhUyjeOOqX3Iy5 m8kihYD3ny5dh7ooUenukIU61vKelAsS3xlELcN6Zlx61mCkp6LYTOgdcjuCNPFmalhL b6yw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type:x-gm-message-state; bh=jdpkak8LoJ2K1v0K7hfemaUto1EfywIAUdXMd8Kv03M=; b=edDx8lBOEVeurSGE9dCC3YeqVHe4n5rKMHt5NBVlGHNaMrYRXybcGgrPChbp7OaIkQ /0nssmp7JsmpL2OeMYeLa2MN8XaHve/JKxwT9y0JZfiGSqI5vHz7gEDxXOQMi04tNUCL BJ5+aZgCrA7trDeYBRHJzy+5uoSoMTzdOjC/+rY7ukDuNCPmFq1nkWc4G/drtZ8y5fwp eh719n6/ImLnTjYa3N1U66Q6n4aZ3PL/v0wCY8KLkZxKfpTRSBDNPxYXETHmxSORPvWB sXkMe+tRy+ER317G1f1waTGngtzRYc1+ZDEYfwLIJHBaJ1cWvR2Olu9ODYby56fci5l9 LE4A==
X-Received: by 10.152.27.202 with SMTP id v10mr16043992lag.29.1368549880430; Tue, 14 May 2013 09:44:40 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.112.234.200 with HTTP; Tue, 14 May 2013 09:44:20 -0700 (PDT)
In-Reply-To: <012C3117EDDB3C4781FD802A8C27DD4F24B8B63F@SACEXCMBX02-PRD.hq.netapp.com>
References: <FCF05C2E-7414-4F1E-B63C-EFC5C94812E4@iki.fi> <20130510153700.ED45811C3C9C@lawyers.icir.org> <012C3117EDDB3C4781FD802A8C27DD4F24B8B63F@SACEXCMBX02-PRD.hq.netapp.com>
From: Yuchung Cheng <ycheng@google.com>
Date: Tue, 14 May 2013 09:44:20 -0700
Message-ID: <CAK6E8=eb_h34e25XMhCgYP5En5aOBtgOUOFQU50G317X9mbRBg@mail.gmail.com>
To: "Scheffenegger, Richard" <rs@netapp.com>
Content-Type: text/plain; charset="ISO-8859-1"
X-Gm-Message-State: ALoCoQksHfQwQg/eeJm09iVe17uQvPCLQts70rPg2E6bslDr+SpOFt71vyANfPC0UzwBaExfBlRPNAHwn3aBqLIC52Nwhm+tG+izLk+fSkf+PX+F8H4tQV/oygp6agx+RmhvPNim48IKP3WWlC+uPSQrjIV/wmuya5gMa04qWXz3wGhe9aqyAMuVzV2Dii2ZTzhB4YJOHSR/
Cc: "tcpm (tcpm@ietf.org)" <tcpm@ietf.org>, "mallman@icir.org" <mallman@icir.org>
Subject: Re: [tcpm] WGLC for draft-ietf-tcpm-1323bis
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/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: Tue, 14 May 2013 16:44:52 -0000

On Tue, May 14, 2013 at 6:58 AM, Scheffenegger, Richard <rs@netapp.com> wrote:
> Hi Mark,
>
>>   - 3.1: "Many TCP implementations base their RTT measurements upon
>>     a sample of one segment per window or less.  While this yields
>>     an adequate approximation to the RTT for small windows, it
>>     results in an unacceptably poor RTT estimate for a LFN."
>>
>>     Do you have evidence of this?  We have evidence you're wrong:
>>
>>       Mark Allman, Vern Paxson.  On Estimating End-to-End Network
>>       Path Properties.  Proceedings of the ACM SIGCOMM Technical
>>       Symposium, Cambridge, MA, September 1999.
>>
>>     That shows that the number of samples per RTT is pretty
>>     immaterial to the effectiveness of the RTO.
>
> I'd like to point out, that the whole section 3 does not make a clear distinction between *timely measuring* RTT, and using that measured RTT for further purposes, such as arriving at a useful value for RTO.
>
> We can also argue about the specific wording in the 2nd sentence; But it appears to me, that you read "poor RTT estimate == poor RTO estimate"?
>
>>   - 3.1: "RTT estimator".  Note, TCP does not have an "RTT
>>     estimator".  Scrub this from the document.  We have an "RTO
>>     estimator".  These are different things.  Confusing them is a
>>     fundamental mistake.
>
> Correct. And IMHO 1323 is looking at RTT, but, agreed, only with the intended purpose of refining RTO (where these improvements haven't been as beneficial as originally envisioned).
>
> I rewrote the section 3.1 entirely:
>
> 3.  TCP Timestamp Option
>
> 3.1.  Introduction
>
>    TCP measures the round trip time (RTT), primarily for the purpose of
>    arriving at a decent value for the Retransmission Timeout (RTO) timer
>    interval.  Accurate and current RTT estimates are necessary to adapt
>    to changing traffic conditions, while a conservative estimate of the
>    RTO inveral is necessary to minimize spurious RTOs.
>
>    When [RFC1323] was originally written, it was perceived that more
>    timely and accurate RTT measurements would contribute to reducing
>    spurious RTOs, while maintaining their timeliness.  At the time, RTO
>    was also the only mechanism to make use of the measured RTT.  It has
>    been shown, that taking more RTT samples has only a very limited
>    effect to optimize RTOs [Allman99].
>
>    This document makes a clear distinction between the round trip time
>    measurement (RTTM) mechanism, and subsequent mechanisms using the RTT
>    signal as input, such as RTO (see Section 3.4).
>
>    It is important to use the timestamp option with big windows, to
>    allow the use of the PAWS mechanism (see Section 4).  Furthermore,
>    the option is useful for all TCP's, since it simplifies the sender
>    and allows the use of additional optimizations such as Eifel
>    ([RFC3522], [RFC4015]) and others.
>
> 3.2.  Timestamp Option
>
> And made the last paragraph of 3.3 a dedicated section, for the separation between RTTM and RTO:
>
> 3.4.  Updating the RTO value
>
>    [KL04] has highlighted the problem that an unmodified RTO
>    calculation, which is updated with per-packet RTT samples, will
>    truncate the path history too soon.  This can lead to an increase in
>    spurious retransmissions, when the path properties vary in the order
>    of a few RTTs, but a high number of RTT samples are taken on a much
>    shorter timescale.
>
>    Implementers should note that with timestamps multiple RTTMs can be
>    taken per RTT.  The [RFC6298] RTO estimator has weighting factors,
So is RTTM without timestamps. It occurs to me this issue belongs to
the RTO RFC 6298.

>    alpha and beta, based on an implicit assumption that at most one RTTM
>    will be sampled per RTT.  When using multiple RTTMs per RTT to update
>    the RTO estimator, the weighting factor SHOULD be decreased to take
>    into account the more frequent RTTMs.
>
>    For example, an implementation could choose to
>
>    o  just use one sample per RTT to update the RTO estimator, or
>
>    o  vary the gain based on the congestion window, or
>
>    o  take an average of all the RTT measurements (and the maximum of
>       the variance) received over one RTT,
have the latter two designs or examples been tested in the minimal
scale. can we stop proposing designs that don't really belong to this
RFC?

IMO the editor has tendency to keep adding new things or logic that
are either untested (e.g., sack idea) or not strongly relevant.

>
>    and then use that value to update the RTO estimator.  This document
>    does not prescribe any particular method for modifying the RTO
>    estimator.
it's suffice to me to kill the text of three examples above and have
the last sentence.

>
>
>
>
>
>
>
>>   - End of 3.3 on RTT sample weighting factors.
>>
>>     (1) The problem with the history being truncated when using RTTM
>>         was independently highlighted by Ludwig and Floyd.  We
>>         should at least have the common courtesy to cite Sally's
>>         note to e2e and Reiner's paper.
>
> I tried to find Sally's comment (also trying to find the reference given in your "Using Spurious Retransmissios to Adapt the Retransmission Timeout" paper), but was unsuccessful... Do you have a link?
>
>
>
>>   - 3.4, (A): Why are we discussing this in terms of the "Kth"
>>     segment?  Delayed ACKs per the standard is "2nd".  Why do we
>>     have to make the discussion in terms of some theory rather than
>>     in terms of what we have specified?
>
> fixed
>
>>   - 3.2 insinuates that you should not include a timestamp on an
>>     RST: "TSopt MUST be sent in every non-<RST> segment", implying
>>     it should not be sent on an <RST> (or you'd have just said
>>     "every segment").  But, then 4.2 goes on to (rightly IMO)
>>     develop why we should include it on <RST> segments.  This
>>     inconsistency needs fixed.
>
>
> fixed
>
>>     RTTM should not be deprecated.  It should be a MAY.
>>
>>     RTTM should not be discussed with breathless bullshit about hand
>>     wavy math and un-demonstrated stability issues and whatnot.
>>
>>     We should say that RTTM is absolutely within compliance of the
>>     spec and that it will not hurt your RTO.
>>
>>     We should also say that RTTM is unlikely to help your RTO.
>>
>>     We should leave it to implementers to decide if RTTM is useful
>>     for their purposes.
>>
>>     We should specify a way to vary the gains in the standard RTO
>>     algorithm based on the current cwnd.
>>
>>     And, we should absolutely state that there are other uses for
>>     the timestamp option (like Eifel, like PAWS) and there is
>>     nothing wrong with the *option* for that purpose.
>
> Best regards,
>    Richard
>
> _______________________________________________
> tcpm mailing list
> tcpm@ietf.org
> https://www.ietf.org/mailman/listinfo/tcpm