Re: [tsvwg] Cross-area alignment on "L4S and RACK"
Bob Briscoe <ietf@bobbriscoe.net> Fri, 09 November 2018 18:03 UTC
Return-Path: <ietf@bobbriscoe.net>
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 8BD0712EB11; Fri, 9 Nov 2018 10:03:54 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.99
X-Spam-Level:
X-Spam-Status: No, score=-1.99 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_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=bobbriscoe.net
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 QI9eUURed7AB; Fri, 9 Nov 2018 10:03:50 -0800 (PST)
Received: from server.dnsblock1.com (server.dnsblock1.com [85.13.236.178]) (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 EF128128CE4; Fri, 9 Nov 2018 10:03:49 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=bobbriscoe.net; s=default; h=Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:From:References:Cc:To:Subject:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=iIGuFUxJPq7CO3VNCaUDJYSrhtl+yVfB2LVF4ffHnKk=; b=ab0QkWNUx3eqSqT9ZPeXzCDot 0xUq0yYPbMkAXbQ3MVcFS0OiFVngrr55gzhrcqBN/J2N9jgVcg44cYK2/Uw2CY8QYML3QtiIRS4xv S6rw6gT5PxANJc8AYt5DLiaH0M6sdh5vLDiUxrWapTrcgXT2l8jIsRICr/HNk2HmAUE6OT6+2gnvP 0VmyLpHnoliOfg9t8vluBrYtyGyqDFusUFPSLKEAwfgTDY4R5uB8eDD3MWp0MHmsdDudXWtQQANVT 7jzaR0680m1QdIBqs9cGtXFVTb4D9LzSZw7DfhvxEDPkwC+5cXqFuYEmJVyUcVJx/sRxBW3uBy96J gOgOMmASA==;
Received: from ppp-171-96-190-43.revip8.asianet.co.th ([171.96.190.43]:54844 helo=[192.168.1.48]) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.91) (envelope-from <ietf@bobbriscoe.net>) id 1gLB8F-0003hR-Cb; Fri, 09 Nov 2018 18:03:48 +0000
To: "Scharf, Michael" <Michael.Scharf@hs-esslingen.de>, "tcpm@ietf.org" <tcpm@ietf.org>
Cc: "tsvwg@ietf.org" <tsvwg@ietf.org>
References: <6EC6417807D9754DA64F3087E2E2E03E2D14F3F0@rznt8114.rznt.rzdir.fht-esslingen.de> <110030da-11f7-c9c2-c059-2abdf6178864@bobbriscoe.net> <6EC6417807D9754DA64F3087E2E2E03E2D15201A@rznt8114.rznt.rzdir.fht-esslingen.de> <1f7ccdda-0e0c-4241-3cfb-b4fe4cc00b47@bobbriscoe.net> <6EC6417807D9754DA64F3087E2E2E03E2D152905@rznt8114.rznt.rzdir.fht-esslingen.de> <53f76b72-67e8-9c95-0ea5-a5621f378dd0@bobbriscoe.net> <6EC6417807D9754DA64F3087E2E2E03E2D1536B3@rznt8114.rznt.rzdir.fht-esslingen.de>
From: Bob Briscoe <ietf@bobbriscoe.net>
Message-ID: <bbe04ad6-d471-4dc3-1b14-000e5cd2bb9a@bobbriscoe.net>
Date: Fri, 09 Nov 2018 18:03:45 +0000
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1
MIME-Version: 1.0
In-Reply-To: <6EC6417807D9754DA64F3087E2E2E03E2D1536B3@rznt8114.rznt.rzdir.fht-esslingen.de>
Content-Type: multipart/alternative; boundary="------------F2AEB342E3E00FC65BCD3115"
Content-Language: en-GB
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server.dnsblock1.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - bobbriscoe.net
X-Get-Message-Sender-Via: server.dnsblock1.com: authenticated_id: in@bobbriscoe.net
X-Authenticated-Sender: server.dnsblock1.com: in@bobbriscoe.net
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/m-ZaOCA0eL0ncPWIZ8PxHBWpcbQ>
Subject: Re: [tsvwg] Cross-area alignment on "L4S and RACK"
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: Fri, 09 Nov 2018 18:03:55 -0000
Michael, Please address the scaling rationale in the appendix for why it does matter how a sender realizes this internally. The list of access links types I mentioned are rarely connected directly to routers. Bob On 09/11/2018 17:44, Scharf, Michael wrote: > > I’ll not comment on link technology implementation, scheduler and > queue design assumptions in Appendix A.1.7 of > draft-ietf-tsvwg-ecn-l4s-id-05. People e.g. in RTG area may be more > familiar with the implications of internal designs e.g. inside a > router. IMHO the best way to get routing experts into the loop before > further discussing what is currently listed in Appendix A.1.7. > > Thus, I limit my response to the actual wording in the main part of > draft-ietf-tsvwg-ecn-l4s-id-05: > > o 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 > <https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-05#appendix-A.1.7>for > rationale). > > As individual contributor, I disagree with this requirement. I would > probably be OK with a wording that a TCP sender must be able to > tolerate reordering beyond 3 Duplicate ACKs. I believe it does not > matter how a sender realizes this internally. > > And if that requirement is not just removed, I believe the wording > “traditional TCP” has to be replaced by “standard TCP”. > > BTW, also, in the rest of the document there has to be a clear > distinction between experiments and standards. History tells us that > some experiments can evolve into standards track specifications, while > other experiments may fail. And there is no way of knowing that in > advance. > > Michael > > *From:*Bob Briscoe [mailto:ietf@bobbriscoe.net] > *Sent:* Friday, November 9, 2018 11:08 AM > *To:* Scharf, Michael; tcpm@ietf.org > *Cc:* tsvwg@ietf.org > *Subject:* Re: [tsvwg] Cross-area alignment on "L4S and RACK" > > Michael, > > On 09/11/2018 06:21, Scharf, Michael wrote: > > I don’t see the fundamental difference between a link technology > that guarantees in-order delivery within a flow (say by flow > hashing, see ECMP) vs. some link scheme that guarantees in-order > delivery, say, only for some fraction of the traffic characterized > by some other means (say, other header bits). > > [The "other means" and "other bits" wording is pretty ambiguous here. > I reckon I can guess what you mean but then I don't know why you're > saying this, 'cos I don't think I've disagreed with you on this. So > perhaps you could be more specific and we might be able to see why > you've brought this up.] > > Also I wasn't really talking about all "link technology that > guarantees in-order delivery within a flow". {Note 1} I was talking > about link technology where all flows are blocked while waiting to get > the aggregate back in order that it was in when it arrived. I > specifically said: > > Note that there can be multiple flows over one link. So 'in-order > delivery' for a link does not mean in order of TCP sequence number. It > means 'delivered in the order that packets arrived at the link' (the > link ingress adds its own sequence numbers, and the link egress > buffers them until it can send out in the same order, or until a > time-out or max no. of link retransmissions). > > For example: > > * A packet resequencing buffer after allowing for link-layer > retransmissions is common for radio link technologies such as LTE > (PDCP layer) and 802.11 WiFi. > * A packet resequencing buffer after merging multiple bonded link > channels is common for other access link technologies such as > downstream DOCSIS bonded channels. > > > > Clearly, reordering is a problem that needs to be discussed in the > IETF as a whole. And we could discuss whether a revision of RFC 3366 > is needed. > > No. There is no proposal to alter general guidance for all links like > RFC 3366. No-one is saying this. > > There is not even a proposal to require or even recommend that > L4S-specific links do anything. > > The specific proposal is to require L4S /sources/ to use a RACK-like > scheme, as a condition for setting the ECT(1) codepoint. See the last > bullet in S.4.3 of draft-ietf-tsvwg-ecn-l4s-id-05 > <https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-05#section-4.3>. > > This says nothing about what L4S links MUST, SHOULD or MAY do. It just > gives an L4S link an opportunity not to have to do resequencing. > > > But I am not convinced that this topic has to be tied into an > experiment such as L4S. > > It is an opportunity that currently only applies to L4S. > > L4S is merely an example of a case where we can mandate that there > will be no non-RACK traffic in a link, which creates an opportunity > for those who are implementing the L4S DualQ Coupled AQM to ignore the > RFC3366 resequencing advice for the L4S queue (but we are not changing > the advice, because L4S is only an experiment). The prize is to remove > the head-of-line blocking problem for their users. > > This is not L4S-specific, altho there are no other examples at the > moment where this opportunity is possible (so in that sense it is > /currently/ L4S-specific). > > > The message has to be handled really carefully, because the > opportunities for misunderstanding are enormous (as evidenced by this > thread, and we haven't even started talking to non-transport people yet). > > So Gorry and David B want me to draft a short I-D that they will > word-smith and author as tsvwg chairs to make the situation clear. > > I have said I don't want this discussion to be officially raised > outside the transport area until we are sure that a variant of RACK is > even feasible without any packet counting at all (i.e. without the > initial 3-DupACK rule in current RACK). So I'll prioritize working > that out for the next week or so, rather than drafting anything. > > > > Bob > > {Note 1}: I hadn't considered that this would affect technologies like > ECMP that maintain order without a resequencing buffer and without > introducing HoL blocking. But actually, the consequence there would be > that L4S traffic could be sprayed by ECMP without per-flow hashing. > > > Michael > > *From:*Bob Briscoe [mailto:in@bobbriscoe.net] > *Sent:* Friday, November 9, 2018 6:42 AM > *To:* Scharf, Michael; tcpm@ietf.org <mailto:tcpm@ietf.org> > *Cc:* tsvwg@ietf.org <mailto:tsvwg@ietf.org> > *Subject:* Re: [tsvwg] Cross-area alignment on "L4S and RACK" > > Michael, > > That is the point I thought you were making, and my point /is/ about that. > > If an application needs all the packets (i.e. a reliable protocol), > it's not useful to reduce the latency of some packets but not all. > That's where the in-order requirement comes from. > > However, if a stream-based transport is used (i.e. TCP) the > /application/ still gets in-order delivery from TCP. It just doesn't > have to require links to provide in order delivery as well. > > Note that there can be multiple flows over one link. So 'in-order > delivery' for a link does not mean in order of TCP sequence number. It > means 'delivered in the order that packets arrived at the link' (the > link ingress adds its own sequence numbers, and the link egress > buffers them until it can send out in the same order, or until a > time-out or max no. of link retransmissions). > > So, if the link loses a packet from flow A (the link isn't aware of > microflows, I'm just saying the packet happens to be from flow A), > link-layer in-order delivery will hold back all packets sent after > that packet (from all flows, not just flow A) until the link repairs > the gap or gives up. > > So hop-by-hop in-order delivery gives every flow the same delay as the > worst delayed flow. > > Of course, someone building a network for DETNET would avoid link > technologies like WiFi or LTE that frequently lose and retransmit > packets. But wherever there is variable delay in a link, guaranteed > in-order delivery per-hop means every flow is guaranteed to always get > the worst delay from every link, which would have been experienced by > only one flow without per-hop in-order delivery. > > And many of the applications of DETNET involve dumb industrial > machinery that just expects everything to arrive in order and to a > clocked schedule. But it's always as effective to deploy a > resequencing buffer as the penultimate hop, screwed onto the receiving > machine if necessary, rather than require per-hop resequencing in the > network. > > ________________ > So, why do Internet links often ensure in-order delivery even though > TCP puts everything in order for the application? > > Short answer: the 3 DupACK rule (which is to do with loss-recovery, a > different issue from the discussion above). > > Long answer: As flow rates have scaled up, the typical time between 3 > packet arrivals has become so small that TCP's 3-DupACK rule makes > links have to provide delivery with only a very small re-ordering > degree - so small that it's easier for a link to just deliver > everything in the order it received it; not because TCP doesn't put > packets back in order, but just so as not to trigger TCP into > generating spurious retransmissions. > > > > Bob > > On 08/11/2018 16:35, Scharf, Michael wrote: > > Inline [ms] > > *From:*Bob Briscoe [mailto:in@bobbriscoe.net] > *Sent:* Thursday, November 8, 2018 12:56 PM > *To:* Scharf, Michael; tcpm@ietf.org <mailto:tcpm@ietf.org> > *Cc:* tsvwg@ietf.org <mailto:tsvwg@ietf.org> > *Subject:* Re: [tsvwg] Cross-area alignment on "L4S and RACK" > > Michael, > > This is merely a symptom of a difference in opinion on where the > resequencing function should be located. > > * L4S takes the end-to-end approach saying that it is sufficient > to do resequencing in one place (the receiving host) if it is > needed. Then any resequencing delay only affects that flow. > * The DETNET approach is saying the resequencing must be done > hop-by-hop. This means there appears to be no resequencing > needed on the receiver (except if there's re-ordering on the > final hop). > > * In order to guarantee no resequencing in the network (DETNET > approach), only the the worst case latency can be guaranteed, > and every packet has to have that same worst-case latency. > * When you leave resequencing to the receiver (end-to-end > approach), most of the packets arrive earlier than they would > with DETNET, but out of order ones might not. Then the > application chooses whether it wants to wait. > > [ms] My point is different: There seem to be other working groups > in the IETF that do talk about “low latency” as well but > apparently they also do need in-order delivery of packets, too. So > the assumption that e.g. a link layer technology can simply > disable in-order delivery for all “low latency” applications seems > not correct. The reality may be a bit more complex. > > The 3 DupACK rule in TCP led the Internet not to follow the > end-to-end principle on re-sequencing. Now we're removing the 3 > DupACK rule, we can take advantage of the e2e principle. > > [ms] For TCP, three DupACKS are a SHOULD in RFC 5681 and RFC 5681 > is standards track. So the bar for “removing” that rule for TCP is > not low… > > [ms] Also, the end-to-end principle comes with tradeoffs. For > instance, relying on the end-to-end principle for recovery of bit > errors is not efficient. For in-order delivery there are tradeoffs > as well, see e.g. Section 4 in draft-ietf-tcpm-rack-04. There may > be no free lunch. > > Of course, an application might choose to use TCP and L4S, rather > than UDP and L4S (e.g QUIC). Then there could still be HoL > blocking in the receiving TCP stack. But at least there's no HoL > blocking in the network, and the app can choose between stream > (TCP) or datagram (UDP). > > [ms] If LRO/GRO in the receiving TCP stack gets messed up, I fail > to see the benefit (see draft-ietf-tcpm-rack-04). > > Michael > > > Bob > > On 06/11/2018 19:20, Scharf, Michael wrote: > > A comment on the TCPM presentation "L4S and RACK": > > > > As far as I understand, the DETNET WG in RTG area has quite some uses cases for ultra-low latency transport - in particular also with bounded jitter. And some of these applications (e.g. using UDP) apparently may not be able to tolerate *any* out-of-order packet delivery. > > > > So perhaps some cross-area alignment on ulta-low-latency application requirements would be useful? > > > > Michael > > (who recently had to review draft-ietf-detnet-architecture) > > > > > > > > > > -- > > ________________________________________________________________ > > Bob Briscoehttp://bobbriscoe.net/ > > > > > -- > ________________________________________________________________ > Bob Briscoehttp://bobbriscoe.net/ > > > > -- > ________________________________________________________________ > Bob Briscoehttp://bobbriscoe.net/ -- ________________________________________________________________ Bob Briscoe http://bobbriscoe.net/
- [tsvwg] Cross-area alignment on "L4S and RACK" Scharf, Michael
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Spencer Dawkins at IETF
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Black, David
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Bob Briscoe
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Scharf, Michael
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Bob Briscoe
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Scharf, Michael
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Fred Baker
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Bob Briscoe
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Scharf, Michael
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Bob Briscoe
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Bob Briscoe
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Scharf, Michael
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Bob Briscoe
- Re: [tsvwg] [tcpm] Cross-area alignment on "L4S a… Praveen Balasubramanian
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Scharf, Michael
- Re: [tsvwg] [tcpm] Cross-area alignment on "L4S a… Bob Briscoe
- Re: [tsvwg] [tcpm] Cross-area alignment on "L4S a… Scharf, Michael
- Re: [tsvwg] Cross-area alignment on "L4S and RACK" Scheffenegger, Richard
- Re: [tsvwg] [tcpm] Cross-area alignment on "L4S a… Bob Briscoe
- Re: [tsvwg] [tcpm] Cross-area alignment on "L4S a… Scharf, Michael
- Re: [tsvwg] [tcpm] Cross-area alignment on "L4S a… Scharf, Michael