Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-tcpm-rack-13.txt>(TheRACK-TLPlossdetectionalgorithmforTCP) to Proposed Standard
Neal Cardwell <ncardwell@google.com> Fri, 18 December 2020 01:36 UTC
Return-Path: <ncardwell@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 3A27D3A0B16 for <tcpm@ietfa.amsl.com>; Thu, 17 Dec 2020 17:36:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.6
X-Spam-Level:
X-Spam-Status: No, score=-17.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eT4zGI_qe79D for <tcpm@ietfa.amsl.com>; Thu, 17 Dec 2020 17:35:59 -0800 (PST)
Received: from mail-ua1-x930.google.com (mail-ua1-x930.google.com [IPv6:2607:f8b0:4864:20::930]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AB4933A0B12 for <tcpm@ietf.org>; Thu, 17 Dec 2020 17:35:59 -0800 (PST)
Received: by mail-ua1-x930.google.com with SMTP id w7so303255uap.13 for <tcpm@ietf.org>; Thu, 17 Dec 2020 17:35:59 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=5t06hcd1UDu8DOCNAbOkMdDgHAel45UKzYala3IoXRA=; b=TVFG8TNYgOCkWgkPckgD8DXVCEJh8OIsrlrhNwQOo0Oiep1UTnIzIRGOil5BLD7FY1 n1l4x5A5N2DYEWZk5img+1fiONKyNLG2RQgsmwHh79kjkIwYKQIXUWvQOcDm8ZiSQ8sG Zz4awE77Z8d29a+25rQRcZgpLTapQ/QcOvjHlDmAE2554rduKxJ5ThYpfqD71wONukTM hEU1Jjm3U3ADU3VfTjZwLF0TGUwG3zHXEHJv0n1sDjzBcc+YdgYlEvBc5j8rPpYEMy6x 0DdPzbsxCeRQkc1FXL3Ofhme0qow3Zk71Abj63gK29RDps6osL7+xSccAFTYwniPevco /LZQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=5t06hcd1UDu8DOCNAbOkMdDgHAel45UKzYala3IoXRA=; b=K+eH7ufmz5L0g052PuiYGVhhrIwAh+9NyPnP255ItoDIQT1NlIwWRV8ujP9OaJtIoZ 7styyY/5dhjso/NOH8zSiuolxyUEQPSAgJab1tkxC0fhq91JpIPpIVhAbuYPwsAD/I5n V4/AwRFHhO4lCdWqg5npymM1npJp+PktMGLzIY9jMIV2F11EooCg+U7eBWvje83X/S6+ 5QTtqD8l36LnNm8i9digGAMXX8IyNyVY/j6hJEUiFAfJMKyJsLpYcDm7874ZX2TbrZ9z rMSJ9oudJUv52ADNo4IoQG/8wfNOGYKcEf9QG8G1eFb8kGxNbIIMkM3eW8eNPOViP9su 8o9w==
X-Gm-Message-State: AOAM530FBKSjnRpwyJX+1ElgwZkeSFZXFh+bIPD0UribQT5bJvE7JkpU JSzevoNmUZMKaUzOOEwioJMkikdhvZHq8alAfPet/Q==
X-Google-Smtp-Source: ABdhPJydMcTwK/v4JBE9Nk7g40izka04JV1iIAMCXURFPiVLCEO42U6/hroVBzZrCnepmWYP4nVTKuOlycKDdhAcpQI=
X-Received: by 2002:ab0:2719:: with SMTP id s25mr1850618uao.63.1608255358162; Thu, 17 Dec 2020 17:35:58 -0800 (PST)
MIME-Version: 1.0
References: <160557473030.20071.3820294165818082636@ietfa.amsl.com> <alpine.DEB.2.21.2012030145440.5180@hp8x-60.cs.helsinki.fi> <CAK6E8=diHBZJC5Ei=wKt=j=om1aDcFU8==kSYEtp=KZ4g__+Xg@mail.gmail.com> <alpine.DEB.2.21.2012071227390.5180@hp8x-60.cs.helsinki.fi> <CAK6E8=fNd3ToWEoCYHwgPG7QUvCXw3kV2rwH=hqmhibQmQNseg@mail.gmail.com> <alpine.DEB.2.21.2012081502530.5180@hp8x-60.cs.helsinki.fi> <CADVnQykrm1ORm7N+8L0iEyqtJ2rQ1dr1xg+EmYcWQE9nmDX_mA@mail.gmail.com> <alpine.DEB.2.21.2012141505360.5844@hp8x-60.cs.helsinki.fi> <CAM4esxT9hNqX4Zo+9tMRu9MNEfwuUwebaBFcitj1pCZx_NkqHA@mail.gmail.com> <alpine.DEB.2.21.2012160256380.5844@hp8x-60.cs.helsinki.fi> <CAM4esxRDrFZAYBS4exaQFFj6Djwe6KHrzMEtGvOhscpoxk3RQA@mail.gmail.com> <alpine.DEB.2.21.2012162339560.5844@hp8x-60.cs.helsinki.fi> <CAM4esxRQjuzo4u9oUN2CDC1vbeFxmSarjBLqpboatjWouiL37Q@mail.gmail.com> <CAM4esxQ67K9kcaWwNot2DfJpCe8ShOngXogxKU=KXZJGn+pbXg@mail.gmail.com> <alpine.DEB.2.21.2012171019160.5844@hp8x-60.cs.helsinki.fi> <CAM4esxTvTjvVk5hE0z5UnLBdKv04UC+daRBxsnnZ1qJTa=gSgw@mail.gmail.com> <CY1PR00MB0172182657354535DF24E790B6C49@CY1PR00MB0172.namprd00.prod.outlook.com> <CAK6E8=c8sjfzgfYadHsTk1LvFCJs_EcMjR-kpcj+krkaytEE8g@mail.gmail.com>
In-Reply-To: <CAK6E8=c8sjfzgfYadHsTk1LvFCJs_EcMjR-kpcj+krkaytEE8g@mail.gmail.com>
From: Neal Cardwell <ncardwell@google.com>
Date: Thu, 17 Dec 2020 20:35:41 -0500
Message-ID: <CADVnQymggow5WHQ4c8yZqRWuetTniN3jD9GK7dpEMMkYvFw7pw@mail.gmail.com>
To: Yuchung Cheng <ycheng@google.com>
Cc: Praveen Balasubramanian <pravb@microsoft.com>, "martin.h.duke@gmail.com" <martin.h.duke@gmail.com>, "kojo@cs.helsinki.fi" <kojo@cs.helsinki.fi>, "tcpm@ietf.org" <tcpm@ietf.org>, "draft-ietf-tcpm-rack@ietf.org" <draft-ietf-tcpm-rack@ietf.org>, "tuexen@fh-muenster.de" <tuexen@fh-muenster.de>, "draft-ietf-tcpm-rack.all@ietf.org" <draft-ietf-tcpm-rack.all@ietf.org>, "last-call@ietf.org" <last-call@ietf.org>, "tcpm-chairs@ietf.org" <tcpm-chairs@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000005557ca05b6b32104"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/rcioKdm6ZXYi1CwuhQtfBR7fRWA>
X-Mailman-Approved-At: Fri, 18 Dec 2020 08:04:27 -0800
Subject: Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-tcpm-rack-13.txt>(TheRACK-TLPlossdetectionalgorithmforTCP) to Proposed Standard
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
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: <https://mailarchive.ietf.org/arch/browse/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: Fri, 18 Dec 2020 01:36:01 -0000
On Thu, Dec 17, 2020 at 2:36 PM Yuchung Cheng <ycheng@google.com> wrote: > How about > > "9.3. Interaction with congestion control > > RACK-TLP intentionally decouples loss detection ... > As mentioned in Figure 1 caption, RFC5681 mandates a principle that > Loss in two successive windows of data, or the loss of a > retransmission, should be taken as two indications of congestion, and > therefore reacted separately. However implementation of RFC6675 pipe > algorithm may not directly account for this newly detected congestion > events properly. PRR [RFCxxxx] is RECOMMENDED for the specific > congestion control actions taken upon the losses detected by RACK-TLP" > > > To Makku's request for "what's the justification to enter fast recovery". > Consider this example w/o RACK-TLP > > T0: Send 100 segments but application-limited. All are lost. > T-2RTT: app writes so another 3 segments are sent. Made to the destination > and triggered 3 DUPACKs > T-3RTT: 3 DUPACK arrives. start fast recovery and subsequent cc reactions > to burst ~50 packets with Reno > > In this case any ACK occured before RTO is (generally) considered > clock-acked, and how I understand Van's initial design. This behavior > existed decades before RACK-TLP. RACK-TLP essentially changes the > "3-segments by app" to "1-segment by tcp". > To amplify Yuchung's nice example, and try to restate it in more general terms: As far as I'm aware, TLP probes do not introduce materially new congestion control behaviors, beyond what can happen with [RFC5681] and [RFC6675]. This is because a TLP probe serves much the same probing function that an application write() could have served, if the application had been so lucky as to time its write at the appropriate time (i.e. delay the write() of the last segment in the flight to be 2*SRTT after the preceding segment). Thus, for any scenario that one constructs where a TLP probe initiates a fast recovery episode, it is possible to construct, for a TCP implementation implementing just [RFC5681] and [RFC6675], an application write() pattern where the on-the-wire behavior is nearly identical to the TLP-initiated recovery. For folks concerned about a scenario with FlightSize of 100 segments, and a sender entering fast recovery and blasting 50 segments, the same behavior could happen with the existing RFCs [RFC5681] and [RFC6675], which allow that. And implementers who are worried about such bursts (a very reasonable thing to be worried about) should probably be implementing pacing and PRR, or something like that. But that was already true before RACK-TLP. best, neal
- [tcpm] Last Call: <draft-ietf-tcpm-rack-13.txt> (… The IESG
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Yuchung Cheng
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Ian Swett
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] [Last-Call] Last Call: <draft-ietf-tcp… Michael Welzl
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Yuchung Cheng
- Re: [tcpm] [Last-Call] Last Call: <draft-ietf-tcp… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Neal Cardwell
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Martin Duke
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Martin Duke
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Martin Duke
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Martin Duke
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Martin Duke
- Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-… Praveen Balasubramanian
- Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-… Yuchung Cheng
- Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-… Martin Duke
- Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-… Yuchung Cheng
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Neal Cardwell
- Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-… Neal Cardwell
- Re: [tcpm] [EXTERNAL] Re: Last Call:<draft-ietf-t… Markku Kojo
- Re: [tcpm] [EXTERNAL] Re: Last Call:<draft-ietf-t… Markku Kojo
- Re: [tcpm] Last Call: <draft-ietf-tcpm-rack-13.tx… Markku Kojo
- Re: [tcpm] [EXTERNAL] Re: Last Call: <draft-ietf-… Praveen Balasubramanian
- Re: [tcpm] [EXTERNAL] Re: Last Call:<draft-ietf-t… Markku Kojo