Re: [tsvwg] Comments on L4S drafts

Luca Muscariello <> Fri, 14 June 2019 20:10 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 506241200C1 for <>; Fri, 14 Jun 2019 13:10:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.008
X-Spam-Status: No, score=-2.008 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id B4wYpHzgrjR3 for <>; Fri, 14 Jun 2019 13:10:16 -0700 (PDT)
Received: from ( [IPv6:2a00:1450:4864:20::331]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 11E9B12011B for <>; Fri, 14 Jun 2019 13:10:15 -0700 (PDT)
Received: by with SMTP id s3so3554045wms.2 for <>; Fri, 14 Jun 2019 13:10:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=QsaEzHZtEhRkNIGn33AFudXfn8lGvxgHyxqTWGuz6uc=; b=fd0MBzWMioIzyoy3VMEg3uJ6tmrnRkPkxBwRsUfJ1UXWsyCfzImepJs/N6llvDIPvY AM5lJ0Gpg+v2kMX7pTfa12pHw6z+tJrTS2/PeEjE/z0Wyds/8z0ZvZm732UR9/Okzd4S P7wAQIFwoIWYUmE1+NFM37Z0Ky9DoJ02fnN34=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=QsaEzHZtEhRkNIGn33AFudXfn8lGvxgHyxqTWGuz6uc=; b=SzkSB3jVg0oRWsA8v/ih9mEOBDTGo/GUXzPgPZ1h0rIx25dSE1K1JkqlyECiMU2nXF 790BlIxAtMBGCkFWOWmdBDQFBAYbMgXcjrdjD6s5KjDNtudR/JXeh+7rWqeXcRcvn0eV RNsI7BhgVzSjV/m3Eju0UWhYFTRygfzFFXtlG9ca8Xl8920w6ohlRU/1K2vjL0JZ+JaI u0NPV1s9MiJ+b94YBdHvl1wkFtywhMtpctr2BbTGuFldP17+/om3oe+53Zz5ZskZKnFn hF/PKbZ6kWx5cqz4bDhb+69aPMSkZSziEf1alSNm9uJmPoxxDI/TTEFCJszf9UsQF64F zFiw==
X-Gm-Message-State: APjAAAUeyGGZnfAF3eLuvdJ/QLUIr1BstJRLYsXknavbBB4jFYFNchU9 qhI3u4PPa1w9X34797Kd3F+wjB2EfKlpRxnukdPEsw==
X-Google-Smtp-Source: APXvYqzaWWkVHH3UEoCXdQkLX2nAYqbsnENkYAs8C7CB4CWEj7PNAIsk9cNslHHUx+1rjA0Vgx+6Kv7EmnTFgFt15s0=
X-Received: by 2002:a1c:7408:: with SMTP id p8mr543646wmc.161.1560543014411; Fri, 14 Jun 2019 13:10:14 -0700 (PDT)
MIME-Version: 1.0
References: <> <>
In-Reply-To: <>
From: Luca Muscariello <>
Date: Fri, 14 Jun 2019 22:10:03 +0200
Message-ID: <>
To: Bob Briscoe <>
Cc: "Holland, Jake" <>, "" <>, "" <>
Content-Type: multipart/alternative; boundary="000000000000080879058b4e3c6c"
Archived-At: <>
Subject: Re: [tsvwg] Comments on L4S drafts
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 14 Jun 2019 20:10:21 -0000

On Fri, Jun 7, 2019 at 8:10 PM Bob Briscoe <> wrote:

>  I'm afraid there are not the same pressures to cause rapid roll-out at
> all, cos it's flakey now, jam tomorrow. (Actually ECN-DualQ-SCE has a much
> greater problem - complete starvation of SCE flows - but we'll come on to
> that in Q4.)
> I want to say at this point, that I really appreciate all the effort
> you've been putting in, trying to find common ground.
> In trying to find a compromise, you've taken the fire that is really aimed
> at the inadequacy of underlying SCE protocol - for anything other than FQ.
> If the primary SCE proponents had attempted to articulate a way to use SCE
> in a single queue or a dual queue, as you have, that would have taken my
> fire.
> But regardless, the queue-building from classic ECN-capable endpoints that
> only get 1 congestion signal per RTT is what I understand as the main
> downside of the tradeoff if we try to use ECN-capability as the dualq
> classifier.  Does that match your understanding?
> This is indeed a major concern of mine (not as major as the starvation of
> SCE explained under Q4, but we'll come to that).
> Fine-grained (DCTCP-like) and coarse-grained (Cubic-like) congestion
> controls need to be isolated, but I don't see how, unless their packets are
> tagged for separate queues. Without a specific fine/coarse identifier,
> we're left with having to re-use other identifiers:
>    - You've tried to use ECN vs Not-ECN. But that still lumps two large
>    incompatible groups (fine ECN and coarse ECN) together.
>    - The only alternative that would serve this purpose is the flow
>    identifier at layer-4, because it isolates everything from everything else.
>    FQ is where SCE started, and that seems to be as far as it can go.
> Should we burn the last unicorn for a capability needed on "carrier-scale"
> boxes, but which requires FQ to work? Perhaps yes if there was no
> alternative. But there is: L4S.
I have a problem to understand why all traffic ends up to be classified as
either Cubic-like or DCTCP-like.
If we know that this is not true today I fail to understand why this should
be the case in the future.
It is also difficult to predict now how applications will change in the
future in terms of the traffic mix they'll generate.
I feel like we'd be moving towards more customized transport services with
less predictable patterns.

I do not see for instance much discussion about the presence of RTC traffic
and how the dualQ system behaves when the
input traffic does not respond as expected by the 2-types of sources
assumed by dualQ.

If my application is using simulcast or multi-stream techniques I can have
several video streams in the same link,  that, as far as I understand,
will get significant latency in the classic queue. Unless my app starts
cheating by marking packets to get into the priority queue.

In both cases, i.e. my RTC app is cheating or not, I do not understand how
the parametrization of the dualQ scheduler
can cope with traffic that behaves in a different way to what is assumed
while tuning parameters.
For instance, in one instantiation of dualQ based on WRR the weights are
set to 1:16.  This has to necessarily
change when RTC traffic is present. How?

Is the assumption that a trusted marker is used as in typical diffserv
or that a policer identifies and punishes cheating applications?

BTW I'd love to understand how dualQ is supposed to work under more general
traffic assumptions.