Re: [tsvwg] L4S and the RACK requirement

Yuchung Cheng <ycheng@google.com> Thu, 14 February 2019 19:16 UTC

Return-Path: <ycheng@google.com>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C3E401289FA for <tsvwg@ietfa.amsl.com>; Thu, 14 Feb 2019 11:16:36 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.501
X-Spam-Level:
X-Spam-Status: No, score=-17.501 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, ENV_AND_HDR_SPF_MATCH=-0.5, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=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 vgdtt9tRH9E4 for <tsvwg@ietfa.amsl.com>; Thu, 14 Feb 2019 11:16:34 -0800 (PST)
Received: from mail-it1-x12a.google.com (mail-it1-x12a.google.com [IPv6:2607:f8b0:4864:20::12a]) (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 B1C811200ED for <tsvwg@ietf.org>; Thu, 14 Feb 2019 11:16:34 -0800 (PST)
Received: by mail-it1-x12a.google.com with SMTP id z7so17933456iti.0 for <tsvwg@ietf.org>; Thu, 14 Feb 2019 11:16:34 -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=rcjLo3xbphtEuHrBBZSneUB/J1ljgElieVqP4xbdJe4=; b=VSrOkZgaaSsoygbQetu6xH2G8JqRoRG46sWkKgL5dQxvw0R1tMpeA1SXl7asRvpxSO UYbGKCFDwfALQvwuf84fNNd0BPxriUGIr8hn7+nmOap4M7Biwbi/8imWGF6dNdBSZVSV HF8sGSYkdtjMQqCDcqXnaQVrkfj6sbzNDeH+wVnYLkXwgf5EJB58ytwuU/qwiBwjadB4 CBKElsKqAKeNsz/ApzhqxkHk6JlPTVtnW7Sfr/R7my4wR2ghUdEo0YkXZ9rdkbT/g8VP jiEVu+TpJn2cNMiWw9LqD4+K1ZvAq8BPQYlSCczPkelXBTshHvGNiVG+4DH/JOYqXBdP erdg==
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=rcjLo3xbphtEuHrBBZSneUB/J1ljgElieVqP4xbdJe4=; b=VY/ja5X3wYmZO7Nxrb8WnB9LR/wI9GD8CmWXiyyWW6qKUDMj515Sb6iML1RPCpYrb3 r3So3drtwXhySsbufniYALH8sZgDGyiHMEyUCNIvHxJSo3uTlVAQx/npIYg80kS+dkmU RzZ/EyaXRMCfUwN3B3CZ7nM4JVoC1c3krws8lFDliwf41JdDrV4k0vpx782jCyBo1yfj d40RN+gXZBoBqAn9GsDV286mTkCSPd/gq9+w3HOdxBszAvwvOhh7lKvuawcW3xqTNpG8 DFUNHtQghlbTk/4SvL+3aPXmxfKw6okPtGByho/ymvTuhBWNiNur93MvtGumDn0X0OcR uAhg==
X-Gm-Message-State: AHQUAuZ4ZYPjBfYEZ6j/B+FpEKtwKKqvBt+rPvviukLs8PKXl+pZIf0s b+2ZBwChWI5lny68osW8fzPISIk2JfzsQcg/1zKqUw==
X-Google-Smtp-Source: AHgI3IZ0s/ink/TCliJ1uwIvEWIH3WcYIZQg+bvzv24g6BfLmdbZ/sbHWI7qDpeRbBAj49bkC1PeUqPaGHKhtvmVTh0=
X-Received: by 2002:a24:99c5:: with SMTP id a188mr2774076ite.110.1550171793645; Thu, 14 Feb 2019 11:16:33 -0800 (PST)
MIME-Version: 1.0
References: <fb6d2979-a6a4-b122-a90e-4a0732ee89fa@mti-systems.com> <CAK6E8=chZjxNd6RFx-dfPU1jbbjmsW0DcDeGSTpLkWo3f=9k2Q@mail.gmail.com> <CE03DB3D7B45C245BCA0D2432779493630439583@MX307CL04.corp.emc.com>
In-Reply-To: <CE03DB3D7B45C245BCA0D2432779493630439583@MX307CL04.corp.emc.com>
From: Yuchung Cheng <ycheng@google.com>
Date: Thu, 14 Feb 2019 11:15:53 -0800
Message-ID: <CAK6E8=cdDmFmTB8-BjFeHvVL9JeDAW9TJyhaKBJmpZMy4ff-YQ@mail.gmail.com>
To: "Black, David" <David.Black@dell.com>
Cc: Wesley Eddy <wes@mti-systems.com>, "tsvwg@ietf.org" <tsvwg@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/l81f-GStebgk0R0fX-_ryeBYkBQ>
Subject: Re: [tsvwg] L4S and the RACK requirement
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 14 Feb 2019 19:16:37 -0000

On Tue, Feb 12, 2019 at 7:34 PM Black, David <David.Black@dell.com> wrote:
>
> > I am missing something: how does DCTCP depend a specific loss
> > detection mechanism (e.g. DupACK based, RACK, etc)? DCTCP is only
> > mandated to react to packet losses.
> >
> > Linux DCTCP uses RACK by default. There's no inherent dependency of
> > the two either.
>
> See slide 8 from Bob's Bangkok presentation to TCPM (and the rest of that
> presentation) - the requirement in the ecn-l4s-id draft is more restrictive
> than RACK as currently implemented - current DCTCP with RACK doesn't
> meet that requirement.
>
> https://datatracker.ietf.org/meeting/103/materials/slides-103-tcpm-sessa-l4s-rack-00
>
> We (TSVWG chairs) are looking for "running code" ... as we're having difficulty
> figuring out how the L4S experiment (the L4S drafts are intended to become
>  experimental RFCs) would be carried out without any transport protocol code.
Thanks for the pointer. I too think RACK seems a recommended
component, not a necessity based on the slides.

Perhaps Bob can shed more lights on how TCP L4S would break badly w/o RACK?

>
> Thanks, --David
>
> > -----Original Message-----
> > From: tsvwg [mailto:tsvwg-bounces@ietf.org] On Behalf Of Yuchung Cheng
> > Sent: Tuesday, February 12, 2019 7:27 PM
> > To: Wesley Eddy
> > Cc: tsvwg@ietf.org
> > Subject: Re: [tsvwg] L4S and the RACK requirement
> >
> >
> > [EXTERNAL EMAIL]
> >
> > On Tue, Feb 12, 2019 at 10:01 AM Wesley Eddy <wes@mti-systems.com>
> > wrote:
> > >
> > > In discussion among the TSVWG chairs, we are concerned about lack of
> > > consensus on the requirement currently in L4S ID draft (
> > > https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-05 ) regarding
> > > the need for RACK-like behavior in a transport that uses the L4S queue.
> > >
> > > The statement in the draft is:
> > >
> > >      A scalable congestion control MUST detect loss by counting in units
> > > of time, which is scalable, and MUST NOT count in units of packets (as
> > > in the 3 DupACK rule of traditional TCP), which is not scalable (see
> > > Appendix A.1.7 for rationale).
> > >
> > > By saying this, it seems to rule out DCTCP and some other existing code
> > > that might be used with L4S (and DCTCP discussed in the draft as an
> > > example scalable transport, even though it violates this rule (?)).
> > I am missing something: how does DCTCP depend a specific loss
> > detection mechanism (e.g. DupACK based, RACK, etc)? DCTCP is only
> > mandated to react to packet losses.
> >
> > Linux DCTCP uses RACK by default. There's no inherent dependency of
> > the two either.
> >
> > > This seems like a bit of a problem for making L4S usable.  I guess maybe
> > > TCP Prague code fixes this, but isn't as widely available yet?
> > >
> > > The discussion in the appendix is good at explaining what I think the
> > > real goal is here, which is to enable major reduction in latency from
> > > link-layer (or other underlying transport network) re-ordering buffers.
> > > We want that in order to meet the low latency goals, which makes total
> > > sense.
> > >
> > > So, my question is whether the "MUST" is really more appropriately
> > > turned into a "SHOULD" guidance?  Given that we expect reordering to be
> > > possible (and maybe normal) over hops supporting L4S, then the
> > > congestion control algorithm SHOULD have mechanisms that allow it to
> > > perform robustly.  If it doesn't, it only hurts itself, not any other
> > > traffic, so there seems to be no real reason to say "MUST" (someone
> > > violating it doesn't break the Internet or cause interop issues, etc).
> > > As I understand it, this would allow the examples like DCTCP to be
> > > relevant for use with L4S as well.
> > >
> > > Does Bob or anyone else have thoughts on this?
> > >
>