Re: [tsvwg] https://tools.ietf.org/html/draft-ietf-tsvwg-l4s-arch-03#page-10

<Ruediger.Geib@telekom.de> Thu, 28 March 2019 11:11 UTC

Return-Path: <Ruediger.Geib@telekom.de>
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 EB02B12028E for <tsvwg@ietfa.amsl.com>; Thu, 28 Mar 2019 04:11:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.3
X-Spam-Level:
X-Spam-Status: No, score=-4.3 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=telekom.de
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 KF55g34L7XuG for <tsvwg@ietfa.amsl.com>; Thu, 28 Mar 2019 04:11:04 -0700 (PDT)
Received: from mailout31.telekom.de (mailout31.telekom.de [194.25.225.143]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 58948120289 for <tsvwg@ietf.org>; Thu, 28 Mar 2019 04:11:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telekom.de; i=@telekom.de; q=dns/txt; s=dtag1; t=1553771463; x=1585307463; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=wm+8A7rIYpacOYx+vtLwS748C3HeQMlP/GvKOHT4ccY=; b=BW2Q7N2hNq8boIyIus9InFNZEtD924RwCif17/1fjgcEtw6G33M7Gpp8 eHgjLLAOdQfZtM/HmHi2NTVmTb0XJMMGHkANQ/L0WXeq3cQk60kyq9MEs UnqAMi/fm05gDwjYHnfof1UxZnZ2iwFepKEL9+Y3QK/Me7vzQljsE4Pyd QMjstDYaJuGY7ZxgT5ntQ4DVeBETybKYpY9Y4eGsGwyxTGy55UmCUyYY3 ElOyX5gndTbXcMaG+vFyFmDXsMB1GnYMHVo/1ATcPE+k4fmRaaw2yEWLv /z9TMJ2knxw9SrNdX3v3Jn3qHSfZf/LDbkzkRkXfVvGB1bGdA2mKm2k/k g==;
Received: from qde9xy.de.t-internal.com ([10.171.254.32]) by MAILOUT31.dmznet.de.t-internal.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Mar 2019 12:11:00 +0100
X-IronPort-AV: E=Sophos;i="5.60,280,1549926000"; d="scan'208";a="255712915"
Received: from he101947.emea1.cds.t-internal.com ([10.169.118.83]) by QDE9Y1.de.t-internal.com with ESMTP/TLS/AES256-SHA; 28 Mar 2019 12:11:00 +0100
Received: from HE101953.EMEA1.cds.t-internal.com (10.169.118.78) by HE101947.emea1.cds.t-internal.com (10.169.118.83) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Thu, 28 Mar 2019 12:10:59 +0100
Received: from HE104164.emea1.cds.t-internal.com (10.171.40.35) by HE101953.EMEA1.cds.t-internal.com (10.169.118.78) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Thu, 28 Mar 2019 12:10:59 +0100
Received: from GER01-LEJ-obe.outbound.protection.outlook.de (51.5.80.15) by O365mail06.telekom.de (172.30.0.233) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Thu, 28 Mar 2019 12:10:56 +0100
Received: from LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE (10.158.142.153) by LEJPR01MB0459.DEUPRD01.PROD.OUTLOOK.DE (10.158.142.152) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1730.18; Thu, 28 Mar 2019 11:10:58 +0000
Received: from LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE ([fe80::6846:71f5:e7d1:f189]) by LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE ([fe80::6846:71f5:e7d1:f189%4]) with mapi id 15.20.1730.019; Thu, 28 Mar 2019 11:10:58 +0000
From: Ruediger.Geib@telekom.de
To: gorry@erg.abdn.ac.uk
CC: tsvwg@ietf.org, moeller0@gmx.de
Thread-Topic: [tsvwg] https://tools.ietf.org/html/draft-ietf-tsvwg-l4s-arch-03#page-10
Thread-Index: AQHU5UAedj1TDJ3MG0yBE8eiutC2+KYgvMAAgAAB8ACAAAJtgIAAHzUg
Date: Thu, 28 Mar 2019 11:10:58 +0000
Message-ID: <LEJPR01MB0460775FEB678F3D5AEF94469C590@LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE>
References: <618DEC9B-5BA1-4D20-B68D-970EBD42CBCE@gmx.de> <5C9C8B64.4060101@erg.abdn.ac.uk> <0B102D90-1A4B-416C-8E7F-192ED6193ECE@gmx.de> <5C9C8F0D.4070300@erg.abdn.ac.uk>
In-Reply-To: <5C9C8F0D.4070300@erg.abdn.ac.uk>
Accept-Language: en-US
Content-Language: de-DE
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=Ruediger.Geib@telekom.de;
x-originating-ip: [164.19.3.181]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: c4cf8f02-1892-4afd-a2ee-08d6b36e0e48
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:LEJPR01MB0459;
x-ms-traffictypediagnostic: LEJPR01MB0459:
x-ms-exchange-purlcount: 1
x-microsoft-antispam-prvs: <LEJPR01MB0459F8EC7AD4CACFDE4496AE9C590@LEJPR01MB0459.DEUPRD01.PROD.OUTLOOK.DE>
x-forefront-prvs: 0990C54589
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(396003)(366004)(346002)(376002)(39860400002)(189003)(51874003)(199004)(6306002)(66574012)(256004)(85202003)(478600001)(66066001)(81166006)(14444005)(296002)(7696005)(316002)(106356001)(53936002)(86362001)(186003)(71200400001)(7736002)(75402003)(93886005)(305945005)(105586002)(2906002)(8676002)(81156014)(97736004)(33656002)(26005)(54906003)(3846002)(8936002)(6916009)(486006)(102836004)(74482002)(966005)(72206003)(4326008)(55016002)(5660300002)(9686003)(68736007)(6116002)(11346002)(14454004)(53546011)(71190400001)(446003)(76176011)(476003)(52396003)(85182001)(777600001); DIR:OUT; SFP:1101; SCL:1; SRVR:LEJPR01MB0459; H:LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: telekom.de does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: B2uWahPoQ1fXMUTBMyCgBXNaijgYl6VeO/vN2uZ3Ceb0UDd15RcbhNlXPlHs5VP0QT+vzJQc20OnOvfH4h7Dtm9ci/Zl9FJNOwnBYUbjitu76kw4xJ835k64XIno1pmNYjn6V5z2en1yeQiTbTiVV+VTmNjDOHpAfNWioiOugZNvIxLsudcgARlNfSXrozQjNGp/gJgdht9mIo2Ej+LqNPI4z3Q8oQayGJNl2qQaIHWC88QuRaF9Ydq/XyfHENYXMSV0goMgu4FPUvgdyNjg/tBaxSkC38RdmnSVPi1UcGf7jF6Nz1DeQmnUfn6kie3fdpG4avHw8LmyR/cdAf8qjZnPBGjhUcDBpgisPFPOOkTTTwLkgjpRXgI73EaPYqQhAz962elZwnmwoSaZhWNFnm2u2diy00BBbuC4v3VsQzs=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: c4cf8f02-1892-4afd-a2ee-08d6b36e0e48
X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Mar 2019 11:10:58.6309 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bde4dffc-4b60-4cf6-8b04-a5eeb25f5c4f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LEJPR01MB0459
X-OriginatorOrg: telekom.de
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/W7JJGhkyFkUX6g_GnZBTHEzIdsY>
Subject: Re: [tsvwg] https://tools.ietf.org/html/draft-ietf-tsvwg-l4s-arch-03#page-10
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, 28 Mar 2019 11:11:07 -0000

Hi Gorry,

If I get you right, you are asking whether all routers along an end to end path should generally deploy per flow queuing or whether that's more suitable for edge routers. 

I don't recommend per IP flow queuing in MPLS backbone networks. I also don't recommend per top label or per label stack queuing in MPLS backbones.

Some routers support Virtual Output Queuing, but this more refers to an incoming to outgoing interface multipoint to point relation. 

Regards,

Ruediger


-----Ursprüngliche Nachricht-----
Von: tsvwg <tsvwg-bounces@ietf.org> Im Auftrag von G Fairhurst
Gesendet: Donnerstag, 28. März 2019 10:08
An: Sebastian Moeller <moeller0@gmx.de>
Cc: tsvwg IETF list <tsvwg@ietf.org>
Betreff: Re: [tsvwg] https://tools.ietf.org/html/draft-ietf-tsvwg-l4s-arch-03#page-10

On 28/03/2019, 09:59, Sebastian Moeller wrote:
> Dear Gorry,
>
>> On Mar 28, 2019, at 09:52, G Fairhurst<gorry@erg.abdn.ac.uk>  wrote:
>>
>> On 28/03/2019, 09:25, Sebastian Moeller wrote:
>>> So the L4S architecture description has the following rationale, why L4S opted for the dual-queue approach instead of mandatinf flow queueing:
>>>
>>> https://tools.ietf.org/html/draft-ietf-tsvwg-l4s-arch-03#page-10:
>>>
>>>   Per-flow queuing:  Similarly per-flow queuing is not incompatible
>>>        with the L4S approach.  However, one queue for every flow can be
>>>        thought of as overkill compared to the minimum of two queues for
>>>        all traffic needed for the L4S approach.  The overkill of per-flow
>>>        queuing has side-effects:
>>>
>>>       A.  fq makes high performance networking equipment costly
>>>            (processing and memory) - in contrast dual queue code can be
>>>            very simple;
>>>
>>>        B.  fq requires packet inspection into the end-to-end transport
>>>            layer, which doesn't sit well alongside encryption for privacy
>>>            - in contrast the use of ECN as the classifier for L4S
>>>            requires no deeper inspection than the IP layer;
>>>
>>>        C.  fq isolates the queuing of each flow from the others but not
>>>            from itself so, unlike L4S, it does not support applications
>>>            that need both capacity-seeking behaviour and very low
>>>            latency.
>>>
>>>            It might seem that self-inflicted queuing delay should not
>>>            count, because if the delay wasn't in the network it would
>>>            just shift to the sender.  However, modern adaptive
>>>            applications, e.g.  HTTP/2 [RFC7540] or the interactive media
>>>            applications described in Section 6, can keep low latency
>>>            objects at the front of their local send queue by shuffling
>>>            priorities of other objects dependent on the progress of other
>>>            transfers.  They cannot shuffle packets once they have
>>>            released them into the network.
>>>
>>>        D.  fq prevents any one flow from consuming more than 1/N of the
>>>            capacity at any instant, where N is the number of flows.  This
>>>            is fine if all flows are elastic, but it does not sit well
>>>            with a variable bit rate real-time multimedia flow, which
>>>            requires wriggle room to sometimes take more and other times
>>>            less than a 1/N share.
>>>
>>>            It might seem that an fq scheduler offers the benefit that it
>>>            prevents individual flows from hogging all the bandwidth.
>>>            However, L4S has been deliberately designed so that policing
>>>            of individual flows can be added as a policy choice, rather
>>>            than requiring one specific policy choice as the mechanism
>>>            itself.  A scheduler (like fq) has to decide packet-by-packet
>>>            which flow to schedule without knowing application intent.
>>>            Whereas a separate policing function can be configured less
>>>            strictly, so that senders can still control the instantaneous
>>>            rate of each flow dependent on the needs of each application
>>>            (e.g. variable rate video), giving more wriggle-room before a
>>>            flow is deemed non-compliant.  Also policing of queuing and of
>>>            flow-rates can be applied independently.
>>>
>>>
>>>
>>> And then cablelabs, the organization closest to deploying L4S, in Data-Over-Cable Service Interface Specifications DOCSIS® 3.1, MAC and Upper Layer Protocols Interface SpecificationCM-SP-MULPIv3.1-I17-190121, Annex P Queue Protection Algorithm (Normative) says:
>>>
>>> "This annex defines the Queue Protection algorithm that is required to be supported by the CM in the upstream (see Section 7.7.6.1). It is also the Queue Protection algorithm that CMTS Queue Protection algorithms are required to support (see Section 7.7.6.2). In either direction, this algorithm is intended to be applied solely to a Low Latency Service Flow. It detects queue- building Microflows and redirects some or all of their packets to the Classic Service Flow in order to protect the Latency Service Flow from excessive queuing. A Microflow is defined in Section P.3, but typically it is an end-to- end transport layer data flow."
>>>
>>> To me this looks like the introduction of flow-queuing through a backdoor, instead of doing it upfront this tries to measure whether flows behave well enough to keep enjoying the L4S special treatment and demotes non-compliant flows to the TCP-friendly queue. I would be intersted to learn how this mandatory requirement can be implemented without at least having similar cost like flow queueung (at least I fear it will drag the identifies issues A. and B. from above into the system running the L4S-compliant AQM). I would love to learn where my interpretation is wrong.
>>>
>>> Many Thanks in advance
>>>
>>> Regards
>>> 	Sebastian Moeller
>> I'm not sure I agree this is necessarily a change of direction - I personally see queue protection as about a control plane optimisation to identify and mitigate traffic from non-conformant flows.
> 	Sure, but it is telling that the one organization that is in the process of rolling-out L4S makes this a _mandatory_ requirement, no?
I'll let those who worked on this spec comment upon this.
>> Per-flow accounting is not the same as per-flow queueing. (From a different perspective: a circuit-breaker that monitors an envelope is not the same as a transport congestion controller or the same as a network traffic shaper/scheduler).
> 	Sure, but if "Per-flow accounting" has similar computational cost " per-flow queueing" the rationale for not directly mandating  per-flow queueing seems somewhat diminished.
Unpicking this and asking for help:

Is it really is the same "cost"?

And... do people see it as something that all routers along the path should do, or something that an edge router may do?
>> My expectation would be that someone implementing L4S doesn't need to do this?
> 	I agree, it is not in the L4S RFCs, so it is not a MUST from the RFCs perspective.
>
>
>> ... unless someone wants to offer this sort of protection. In the same way that not all current Ethernet switches protect from overload, but it is important that those people who care about these things can acquire this when they needs it.
> Fair enough, point taken.
>
> Thanks
> 	Sebastian
>
>> Gorry
>>
Gorry