Re: [tcpm] Introduce RFC 6937 bis (Proportional Rate Reduction) as a tcpm work item? INPUT NEEDED

Matt Mathis <mattmathis@google.com> Thu, 19 November 2020 16:40 UTC

Return-Path: <mattmathis@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 B4D763A09F1 for <tcpm@ietfa.amsl.com>; Thu, 19 Nov 2020 08:40:57 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.599
X-Spam-Level:
X-Spam-Status: No, score=-17.599 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, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=unavailable 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 7qntK6DdE1md for <tcpm@ietfa.amsl.com>; Thu, 19 Nov 2020 08:40:55 -0800 (PST)
Received: from mail-il1-x135.google.com (mail-il1-x135.google.com [IPv6:2607:f8b0:4864:20::135]) (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 984FF3A09E7 for <tcpm@ietf.org>; Thu, 19 Nov 2020 08:40:55 -0800 (PST)
Received: by mail-il1-x135.google.com with SMTP id w10so5930079ilq.5 for <tcpm@ietf.org>; Thu, 19 Nov 2020 08:40:55 -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=scKkLfm13nZWHBBntXR5uk/QImHB9n9PkObd15R5FrE=; b=pFJmLp2m0wW8mcKRG5es7YqRbKzEQRBzOzi7969TwQxRT9DNKv1eHnP5XMJb8BObjU lUioEGaHm33lDb+LQ/28410/wFgwB+okvp0H1Rs8eMKp/hi41GaayX8I6LCVe/gqpl8u RkPn6U5MGBDRzG3345ms8Lef+QPch2EbzW2SVexw3lUUHp21eIIvK67XdvfOse5rVRkO YzcziZxd7AoDAO0Zl5ug7k2Agil7aq/dXtxZ5Zk3hVvx9+/n11s6wRC+M/mVO/pDUdZJ DRc+m28OjupfcesXQepD/YtzNo5WRpn1rmVdR4Z1IMrL4wFSw19RWIfHNz1BPE3n5Cq/ 5ErA==
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=scKkLfm13nZWHBBntXR5uk/QImHB9n9PkObd15R5FrE=; b=dXMNdNHOnVm/QNHolYyz9o0JIWsHg2FyO1JVDnOh55b+4eSi5ZUSYkYsWRKzKHWwzz hPNsJgLSEfAc0AQ/swCJ3RM5tn1L/jPFDRkoUiHcQyqzVzsW2vdDbfDMT1GGvAxz2wzn 5fpnHa4rllAJym9uctfsSqxp5ck0wc/e/08jn9Bergfb1JwDbrwCQZq/+79In4WwXVhh n2mqofl4AOz6YpyMkRd8uJpm0cxKPys3Jhbn4HEF1UIu1MBlyvtNMNa4PD23OqReIptQ kW6VCUYf1KskLRK5v/3v6HsOk5hmFKy4Lhlj+SCZYPSHsVGxzlXQY+/7YVDTGb0b6Q7e JQHw==
X-Gm-Message-State: AOAM530Aq0LYtEv3UunLLWuhFWzZW5LEk4DMAGgozT7/m4bbHCj/6Vy5 XsGaU1xyg5uTL/+bt1WaHbXJss013ZyG5rnJOAqYNw==
X-Google-Smtp-Source: ABdhPJwJahrqBSbSNm2d0BWH+ZpTAkLd8JDQ9hPFslSWBbm4pTbimPxXIlZ61UnB7pfN0mrLhhIyN4DR30989y+Vd8k=
X-Received: by 2002:a92:d18a:: with SMTP id z10mr21165942ilz.61.1605804054663; Thu, 19 Nov 2020 08:40:54 -0800 (PST)
MIME-Version: 1.0
References: <CAH56bmCkmtvqTRaEC-AFd-_W1nWeE0JE9SMt=w8E5JoHvvnVtQ@mail.gmail.com> <ba17cdbf-e58f-6b35-0bd6-7c9a86089913@gmx.at> <CAKcm_gMdsHt4-_e0hNZC6Nn-TTz+r6LGYt=Mc8N3nTSo9to3nQ@mail.gmail.com> <885d9aa0-50b2-3101-64b8-7a40f25ca612@erg.abdn.ac.uk>
In-Reply-To: <885d9aa0-50b2-3101-64b8-7a40f25ca612@erg.abdn.ac.uk>
From: Matt Mathis <mattmathis@google.com>
Date: Thu, 19 Nov 2020 08:40:42 -0800
Message-ID: <CAH56bmBxY2qMRMFxoeWhq0bd_eV4W-Mvpc3GFKEKY1ZyuOAW_w@mail.gmail.com>
To: Gorry Fairhurst <gorry@erg.abdn.ac.uk>, Ian Swett <ianswett=40google.com@dmarc.ietf.org>
Cc: "Scheffenegger, Richard" <rs.ietf@gmx.at>, "tcpm@ietf.org Extensions" <tcpm@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000425d5f05b478642e"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/b4BK7g-fCPcdLQ3S4kioHXIRsQM>
Subject: Re: [tcpm] Introduce RFC 6937 bis (Proportional Rate Reduction) as a tcpm work item? INPUT NEEDED
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: Thu, 19 Nov 2020 16:40:58 -0000

If we can get away with a non-normative description of the heuristic, QUIC
is no problem at all.    If we need normative descriptions, then TCP and
QUIC have to be different, and we need to include normative references to
both recovery machines and recovery state variables, which are not in scope
for the current doc.

I would prefer to stay with a non-normative description of the heuristic,
and scrub the rest of the document for language that conflicts with QUIC.

Thanks,
--MM--
The best way to predict the future is to create it.  - Alan Kay

We must not tolerate intolerance;
       however our response must be carefully measured:
            too strong would be hypocritical and risks spiraling out of
control;
            too weak risks being mistaken for tacit approval.


On Thu, Nov 19, 2020 at 6:37 AM Gorry Fairhurst <gorry@erg.abdn.ac.uk>
wrote:

> On 19/11/2020 14:20, Ian Swett wrote:
>
> I support this work.
>
> One question for authors and the group.  This specification could be
> applied to QUIC, but my memory is that there are some small changes to
> adapt it correctly.  Would noting those changes be in scope for this
> document, a separate document in QUIC, or an exercise left to the reader?
> I'd be happy to contribute any QUIC specific text if that's helpful.
>
> Thanks, Ian
>
> I'd hope the differences for QUIC ARE captured in the RFC series. If they
> are small, it might be possible to add to this draft perhaps?
>
> Gorry
>
>
> On Thu, Nov 19, 2020 at 2:43 AM Scheffenegger, Richard <rs.ietf@gmx.at>
> wrote:
>
>> As the heuristic is the one major improvement over RFC6937, that is the
>> one area I am especially interested in. Currently working to have PRR in
>> FreeBSD, it would be the best time window to add this heuristig instead
>> of switching between the two variants in a static fashion.
>>
>> I support this and will certainly be reviewing the documents and provide
>> feedback!
>>
>> Richard
>>
>>
>> Am 19.11.2020 um 04:56 schrieb Matt Mathis:
>> > The authors of PRR would like to update PRR to Proposed Standard
>> > status.  This entails introducing a new document as an tcpm work item.
>> >
>> > *Please indicate (non) support and/or comment.*
>> >
>> > For more details see the tcpm meeting materials from IETF 109
>> > minutes:
>> > https://datatracker.ietf.org/meeting/109/materials/minutes-109-tcpm-00
>> > slides: https://tools.ietf.org/html/draft-mathis-tcpm-rfc6937bis-00
>> >
>> > There were about four "I support this work" remarks at the mic (not
>> > recorded in the minutes), and about as many in the Meetecho chat.
>> >
>> > Abridged IETF/tcpm/PRRbis slides:
>> > --
>> > PRR  recap (RFC6937 experimental)
>> > PRR is a special congestion control effective only during fast recovery
>> >
>> >   * When inflight >= ssthresh, send at loss_beta*rate_before_loss (e.g.
>> >     loss_beta = 0.5 for Reno (aka rate-halving), 0.7 for Cubic)
>> >   * When inflight < ssthresh, send at the same or twice the
>> >     delivery_rate (more later)
>> >   * Used by all congestion control modules in Linux during fast recovery
>> >       o Can be more dominant than the actual C.C. for lossy flows
>> >         that’re in fast recovery constantly (e.g. video streaming
>> >         through policers)
>> >
>> > --
>> > Current Status
>> >
>> >   *
>> >
>> >     PRR is widely deployed
>> >
>> >       o
>> >
>> >         At least three major OSs: Linux, Windows, (NetFlix) BSD
>> >
>> >       o
>> >
>> >         Vast majority of Web traffic for years
>> >
>> >   *
>> >
>> >     No changes to algorithms published in RFC 6937
>> >
>> >       o
>> >
>> >         PRR-CRB - Conservative Reduction Bound - strict packet
>> >         conversion during loss recovery
>> >
>> >       o
>> >
>> >         PRR-SSRB - Slowstart Reduction Bound - one extra segment per ACK
>> >         during loss recovery
>> >
>> >   *
>> >
>> >     2015 Heuristic to dynamically select which reduction bound
>> >
>> >       o
>> >
>> >         Only use PRR-SSRB when making good forward progress
>> >
>> >           +
>> >
>> >             ACKs that advanced snd.una and report no new losses
>> >
>> >       o
>> >
>> >         Resolves some pathological cases with token bucket policers
>> >
>> >           +
>> >
>> >             CC estimates ssthresh before it can possibly measure the
>> >             token rate
>> >
>> >           +
>> >
>> >             The heuristic makes the best of a bad situation
>> >
>> > --
>> > Tentative path forward
>> >
>> >   *
>> >
>> >     Adopt as a tcpm work item
>> >
>> >   *
>> >
>> >     Update the text
>> >
>> >       o
>> >
>> >         Normative RFC 2119 language
>> >
>> >       o
>> >
>> >         Add MAY use the heuristic...
>> >
>> >       o
>> >
>> >         Trim redundant and obsolete language
>> >
>> >           +
>> >
>> >             RFC 6937 repeats itself and is much longer than necessary
>> >
>> >           +
>> >
>> >             Focus on what an implementer needs to know
>> >
>> >           +
>> >
>> >             Use non-normative references to RFC 6937 for prior
>> >             measurement work, etc
>> >
>> > Thanks,
>> > --MM--
>> > The best way to predict the future is to create it.  - Alan Kay
>> >
>> > We must not tolerate intolerance;
>> >         however our response must be carefully measured:
>> >              too strong would be hypocritical and risks spiraling out of
>> > control;
>> >              too weak risks being mistaken for tacit approval.
>> >
>> > _______________________________________________
>> > tcpm mailing list
>> > tcpm@ietf.org
>> > https://www.ietf.org/mailman/listinfo/tcpm
>> >
>>
>> _______________________________________________
>> tcpm mailing list
>> tcpm@ietf.org
>> https://www.ietf.org/mailman/listinfo/tcpm
>>
>
> _______________________________________________
> tcpm mailing listtcpm@ietf.orghttps://www.ietf.org/mailman/listinfo/tcpm
>
>
> _______________________________________________
> tcpm mailing list
> tcpm@ietf.org
> https://www.ietf.org/mailman/listinfo/tcpm
>