Re: [tsvwg] MP-DCCP for UDP multipath transport

Martin Duke <martin.h.duke@gmail.com> Tue, 17 November 2020 00:46 UTC

Return-Path: <martin.h.duke@gmail.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 A115F3A1797 for <tsvwg@ietfa.amsl.com>; Mon, 16 Nov 2020 16:46:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 k9_YyeAwx0_C for <tsvwg@ietfa.amsl.com>; Mon, 16 Nov 2020 16:46:04 -0800 (PST)
Received: from mail-il1-x12c.google.com (mail-il1-x12c.google.com [IPv6:2607:f8b0:4864:20::12c]) (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 3DF283A17B5 for <tsvwg@ietf.org>; Mon, 16 Nov 2020 16:45:44 -0800 (PST)
Received: by mail-il1-x12c.google.com with SMTP id q1so17011397ilt.6 for <tsvwg@ietf.org>; Mon, 16 Nov 2020 16:45:44 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ZoL8QTNtc2c7DoWZ/uKpnCdsteaRQSdf/+DBj6Gh6cI=; b=ecPhNwOZGGHN/iQhCw+Diepwj+56/BNEmJPFdDsE5112WtwerPpe8QPnB3puKK+Oq2 Llgis9HUqi6Y9R5ByMyd2Sdy/lhv8O/TLIj5x36gjENCUKA/caMSN1Efp0c/0js+/JKV M3G2U5bteb2m4ZXzcs9zobfQ/lMOnaLQSFXI95eJM4P/qYCSe66WtpoJUC+Pk7/p+7sW lkzjTNiuxw79Uc+TLsFxuNorCn1WIYtu6l9xo10riCJshtCE8aWNFOxZV2y4eSIEXPaE PypkGdwPbEp7Q0si+FffJ2OVE9gY5esFzKyU6oFlFB9EHOf7MXfwM1ATB+0y3DjARdvE TAEw==
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=ZoL8QTNtc2c7DoWZ/uKpnCdsteaRQSdf/+DBj6Gh6cI=; b=umFpUoDflQ3AHJkVin5TyW0krilq5YsaqJahaPAc5Dl7+T0pQM9CbqNdfipFLYhY1S LVj83oL6w0VXWi6j5lvmJ1biPf42VTJF0Del2jaEHkyKVHYuKl6LfVr6LJMxUbuOin0Y RNulMvHELEMRYBglAXct8ZyI73jpLjItC8Eu2xpbqIBhRfcO2oWXMyBmSxc7F7q9RuDH BkDfhGWuzQdcaLCS/ewHTlCo7+pWUhlaLPjCG5UCanDWRDCPLC2B7VOPfb42dVjCmuBp RmlBa+B20xQp8Zc+JrZKzSDPZHl7RXK8PPNSyHVeNIF7aVRwe7rdo2QwdX1d1V4QSsGN 8jsA==
X-Gm-Message-State: AOAM532kup9XwiH2MXFKmcxeKjyQvKinOACd9OE/A8rBkEctvBw035V5 b96WtEjlBWf2l+g8iGotvh0esHrbg78xpj7l4TA=
X-Google-Smtp-Source: ABdhPJxTrggVDUR1fuJfb3U7MRbzX6469Dvcf2jfQR5aWH1ClQ6L7R8JxOqYVcTXLd5csPcOpRgtzsNPZQHD/O4og3k=
X-Received: by 2002:a92:680b:: with SMTP id d11mr1622755ilc.287.1605573943414; Mon, 16 Nov 2020 16:45:43 -0800 (PST)
MIME-Version: 1.0
References: <LEJPR01MB063580A9B12A42F0E0559D6EFAE30@LEJPR01MB0635.DEUPRD01.PROD.OUTLOOK.DE> <15689BF2-25AE-471B-9032-F18A57B1F104@lurchi.franken.de> <LEJPR01MB06353DC16E0AD228268A4D4CFAE30@LEJPR01MB0635.DEUPRD01.PROD.OUTLOOK.DE> <4297770B-8932-4126-BB23-82DAF459835E@lurchi.franken.de> <LEJPR01MB0635CD33108AA9A2788F86C0FAE30@LEJPR01MB0635.DEUPRD01.PROD.OUTLOOK.DE> <BC9021EA-9A38-46BC-994B-DAF900C86BC9@lurchi.franken.de> <LEJPR01MB0635F9870B95356229265EBEFAE30@LEJPR01MB0635.DEUPRD01.PROD.OUTLOOK.DE> <DA91A14A-3B4F-48C0-B5EE-AC4DC36437DF@lurchi.franken.de> <LEJPR01MB06358B872C7B0616517FB13FFAE30@LEJPR01MB0635.DEUPRD01.PROD.OUTLOOK.DE>
In-Reply-To: <LEJPR01MB06358B872C7B0616517FB13FFAE30@LEJPR01MB0635.DEUPRD01.PROD.OUTLOOK.DE>
From: Martin Duke <martin.h.duke@gmail.com>
Date: Mon, 16 Nov 2020 16:45:32 -0800
Message-ID: <CAM4esxRKB0tq79C7hiUfcwBt-4MqV8sU7YGQ7dyTt+iOF4-gog@mail.gmail.com>
To: Markus.Amend@telekom.de
Cc: Michael.Tuexen@lurchi.franken.de, tsvwg@ietf.org
Content-Type: multipart/alternative; boundary="0000000000008ed72c05b442d0e8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/mX7RPU-bZent7WlCupMfge5W6Gk>
Subject: Re: [tsvwg] MP-DCCP for UDP multipath transport
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: Tue, 17 Nov 2020 00:46:08 -0000

Hi Markus,

I should note that MASQUE is specifically chartered to provide
recommendations for cc-in-cc without designing a new protocol or starting
any research projects. The draft probably ought to say *something.*

Header conversion and multipath seem uncontroversial to me, but
encapsulation may raise some concerns. Can you tell me how separable the
drafts are? Would there be any point in adopting two of them, or is
encapsulation the use case that drives all the interest in these changes?

On Mon, Nov 16, 2020 at 11:04 AM <Markus.Amend@telekom.de> wrote:

> > -----Original Message-----
> > From: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
> > Sent: Montag, 16. November 2020 19:40
> > To: Amend, Markus <Markus.Amend@telekom.de>
> > Cc: tsvwg@ietf.org
> > Subject: Re: [tsvwg] MP-DCCP for UDP multipath transport
> >
> > > On 16. Nov 2020, at 18:46, Markus.Amend@telekom.de wrote:
> > >
> > >> -----Original Message-----
> > >> From: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
> > >> Sent: Montag, 16. November 2020 17:51
> > >> To: Amend, Markus <Markus.Amend@telekom.de>
> > >> Cc: tsvwg@ietf.org
> > >> Subject: Re: [tsvwg] MP-DCCP for UDP multipath transport
> > >>
> > >>> On 16. Nov 2020, at 17:21, Markus.Amend@telekom.de wrote:
> > >>>
> > >>>> -----Original Message-----
> > >>>> From: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
> > >>>> Sent: Montag, 16. November 2020 17:06
> > >>>> To: Amend, Markus <Markus.Amend@telekom.de>
> > >>>> Cc: tsvwg@ietf.org
> > >>>> Subject: Re: [tsvwg] MP-DCCP for UDP multipath transport
> > >>>>
> > >>>>> On 16. Nov 2020, at 16:43, Markus.Amend@telekom.de wrote:
> > >>>>>
> > >>>>> Hi Michael,
> > >>>>>
> > >>>>> inline
> > >>>>>
> > >>>>>> -----Original Message-----
> > >>>>>> From: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
> > >>>>>> Sent: Montag, 16. November 2020 15:38
> > >>>>>> To: Amend, Markus <Markus.Amend@telekom.de>
> > >>>>>> Subject: Re: [tsvwg] MP-DCCP for UDP multipath transport
> > >>>>>>
> > >>>>>>> On 16. Nov 2020, at 13:52, Markus.Amend@telekom.de wrote:
> > >>>>>>>
> > >>>>>>> Dear all,
> > >>>>>>>
> > >>>>>>> as the TSVWG chairs suggested in the IETF 109 session, I
> continue the
> > >>>> discussion
> > >>>>>> on the mailinglist.
> > >>>>>> Hi Markus,
> > >>>>>>
> > >>>>>> I have two questions:
> > >>>>>>
> > >>>>>> 1. You stated that you are using CCID2. This means that you are
> adding to
> > >>>>>> handling of UDP
> > >>>>>> packets a congestion control. How does this interact with a
> congestion
> > >>>> control
> > >>>>>> provided by
> > >>>>>> the application?
> > >>>>>
> > >>>>> Yes, and moreover we also implemented BBRv1 into the DCCP CCID
> > >> framework.
> > >>>> The interaction between CCs is given and first results were
> published a
> > while
> > >> ago
> > >>>> in https://arxiv.org/pdf/1907.04567.pdf based on NADA as
> application CC.
> > >> More
> > >>>> recent results are part of our presentation at ICCRG on Friday,
> discussing a
> > >>>> broader mix of CCs. Probably there is a trend not to use packet
> loss based
> > CC
> > >> for
> > >>>> the tunnel.
> > >>>>>
> > >>>>> Two points here:
> > >>>>> 1. Nested CC is a broader topic beyond MP-DCCP and also valid e.g.
> for
> > >>>> MASQUE. Maybe something which should be independently investigated
> in
> > >>>> ICCRG?
> > >>>> I agree that this is not specific to the scenario you describe, but
> a broader
> > >> issue.
> > >>>>> 2. Solving efficiently out-of-order aggregated multipath packet
> delivery is
> > >>>> equally important and often overlooked in favor of CC in CC.
> > >>>>>
> > >>>>>>
> > >>>>>> 2. Considering that you are fine with a tunneling protocol that
> provides a
> > >>>>>> congestion control,
> > >>>>>> what are the benefits of using DCCP instead of using SCTP with UDP
> > >>>>>> encapsulation? You can
> > >>>>>> use PR-SCTP with the "don't retransmit" policy and could also let
> the
> > >>>> reordering
> > >>>>>> done by
> > >>>>>> SCTP. Your failover scenario should be supported by all SCTP
> > >>>> implementations.
> > >>>>>> The
> > >>>>>> load-sharing would require some standardisation effort.
> > >>>>>>
> > >>>>>
> > >>>>> Excellent this question :-) I fully agree with you, that SCTP can
> provide
> > similar
> > >>>> mechanisms. Some years ago we developed, in parallel to our MP-DCCP
> > >>>> prototype, a SCTP based prototype leveraging PR-, PF- and CMT-SCTP.
> The
> > >>>> results looked very promising and we proposed this to 3GPP ATSSS
> > >>>> (
> ftp://3gpp.org/Email_Discussions/SA2/Archive/2018-10/Draft%2023793-
> > >>>> 070_rm.doc, 6.1.7.4), but it was rejected.
> > >>>>>
> > >>>>> After that we gave up the SCTP development in favor of DCCP for
> several
> > >>>> reasons:
> > >>>>> -  bad/no Linux support for CMT-SCTP at this time
> > >>>> Compared to MP-DCCP support, I don't think there is much of a
> difference.
> > I
> > >>>> guess it would be implemented
> > >>>> in Linux, if the corresponding specification could be finished
> (Linux recently
> > >> got
> > >>>> support for UDP encapsulation.). However, that is blocked up to now
> in
> > >> TSVWG.
> > >>>> Since I'm not following 3GPP:
> > >>>> Is availability on Linux a requirement for 3GPP?
> > >>>
> > >>> No, but it was a requirement for our DT internal prototype
> environment.
> > With a
> > >> Linux reference implementation of (MP-)DCCP it was much simpler for
> us to
> > >> move forward and implement it for example in an Android device.
> > >>> Please don't forget, that was a decision we took in 2017.
> > >>>
> > >>> However, -just being proactively here - we currently should not end
> up with
> > >> the question:  Should we move forward exclusively with MP-DCCP or a
> SCTP
> > >> based approach. Both has from my view value and MP-DCCP is first of
> all only
> > a
> > >> multipath extension for DCCP. Using encapsulation on top makes it
> capable of
> > >> transporting any traffic. It's the same as with SCTP, QUIC and TCP.
> > >> TCP might be a problem with strict ordering.
> > >
> > > Agree
> > >
> > >> But SCTP, QUIC, and DCCP could be
> > >> used the same way.
> > >> The only difference is that SCTP does support multihoming, for QUIC
> and
> > DCCP it
> > >> is a yet to
> > >> be specified extension, QUIC needs unreliability, and all need a way
> of load
> > >> sharing. But then
> > >> all of them could be used.
> > >>>
> > >>>>> -  No real unreliable delivery is given. Even PR-SCTP requires a
> reliable
> > >>>> "FORWARD-TSN" to become unreliable.
> > >>>> How does that impact the user experience? User messages can be
> > delivered
> > >> as
> > >>>> soon as possible to the application.
> > >>>
> > >>> Please correct me if I'm wrong, but as long as the FORWARD TSN has
> not be
> > >> received, head of line blocking occurs, right?
> > >> I don't see why. The receiver can deliver user messages as soon as the
> > ordering
> > >> constraints can
> > >> be fulfilled. So if you send all user messages as unordered messages
> (like on
> > UDP
> > >> or DCCP),
> > >> no buffering for reordering is required. So no HOL blocking.
> > >>
> > >
> > > Yep, I identified we argued from different perspectives. I agree,
> setting the U-
> > Bit will bypass any re-ordering functionality from SCTP and move packets
> forward
> > immediately to the application layer. That would give support for
> steering and
> > switching (seamless handover), however, for CMT-SCTP the SCTP re-ordering
> > function might be kept and then we step into the FORWARD-TSN trap with
> HoL.
> > Unless a re-ordering function is specified outside of the SCTP.
> > As far as I understand, DCCP does not provide an ordering preserving
> service.
> > Isn't it a UDP like service?
>
> That's true
>
> > > In contrast to this, our MP-DCCP Linux reference implementation is
> shipped
> > with a modular re-ordering scheme, which easily let define and use
> various re-
> > ordering logics. I hope we can publish the Linux implementation soon.
> > So you are adding something to DCCP? You could do that also as a shim on
> top of
> > SCTP using the U-bit.
> >
>
> Yes, that's what I wrote. However, with MP-DCCP we could think about
> defining a modular re-ordering scheme directly as part of the protocol, at
> least the signaling/negotiation for it. So no shim layer is required.
>
>
> In the meantime I also remember another experienced drawback from our SCTP
> prototype. I think it was quit inflexible when new communication paths came
> up during the lifetime of a SCTP session, a scenario often happens in
> mobile use cases. Only with an INIT chunk, communication paths can be
> negotiated once during the handshake. Any new IP addresses/paths, e.g.
> while changing from one Wi-Fi AP to another, requires a re-establishment of
> the SCTP session.
>
> I think for MP-DCCP we can resemble a lot of the well proved handshake
> procedures and address/path updates from MPTCP.
>
> > Best regards
> > Michael
> > >
> > >> Best regards
> > >> Michael
> > >>>
> > >>>>> -  UDP encapsulation overhead
> > >>>> True. It is an 8 byte overhead.
> > >>>>
> > >>>> Best regards
> > >>>> Michael
> > >>>>>
> > >>>>>> Best regards
> > >>>>>> Michael
> > >>>>>>
> > >>>>>>>
> > >>>>>>> For all who were not able to attend, the presented slides are
> available
> > >>>>>> u==[=[nderhttps://
> datatracker.ietf.org/meeting/109/materials/slides-
> > 109-
> > >>>> tsvwg-
> > >>>>>> sessa-61-dccp-extensions-for-multipath-operation-00, with a main
> focus
> > on
> > >>>> the
> > >>>>>> prototype implementation. This prototype leverages MP-DCCP between
> > a
> > >>>>>> mobile handset and a public aggregation point, for giving
> > multipath/multi-
> > >>>> access
> > >>>>>> benefit to at least UDP traffic - complementing MPTCP - when
> > >> communicating
> > >>>>>> with the Internet. Due to the MP-DCCP encapsulation framework,
> > support
> > >> is
> > >>>> not
> > >>>>>> restricted to UDP and it’s even possible to provide the multipath
> service
> > to
> > >> IP
> > >>>> or
> > >>>>>> Ethernet traffic. Packet based scheduling, as well as flow based
> > scheduling
> > >> is in
> > >>>>>> scope of the prototype/drafts and explained together with results
> as
> > part
> > >> of
> > >>>> the
> > >>>>>> above mentioned presentation.
> > >>>>>>>
> > >>>>>>> Seamless handover for reliability and path/access aggregation
> for high
> > >>>> speeds
> > >>>>>> are supported by design, fitting for example excellently into the
> 3GPP
> > >> ATSSS
> > >>>>>> scope, leveraging:
> > >>>>>>> https://tools.ietf.org/html/draft-amend-tsvwg-multipath-dccp-03
> > >>>>>>>
> https://tools.ietf.org/html/draft-amend-tsvwg-multipath-framework-
> > >>>> mpdccp-
> > >>>>>> 01
> > >>>>>>> https://tools.ietf.org/html/draft-amend-tsvwg-dccp-udp-header-
> > >>>> conversion-
> > >>>>>> 01
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> and general scheduling and re-ordering concepts from
> > >>>>>>>
> https://tools.ietf.org/html/draft-amend-iccrg-multipath-reordering-01
> > >>>>>>>
> https://tools.ietf.org/html/draft-bonaventure-iccrg-schedulers-01
> > >>>>>>>
> > >>>>>>> Especially for 3GPP ATSSS purposes, this very dedicated and
> simple MP-
> > >> DCCP
> > >>>>>> framework provides an alternative over the currently discussed MP-
> > QUIC
> > >>>>>> (+DATAGRAM + MASQUE), which is from an IETF perspective much
> > broader
> > >> in
> > >>>>>> scope and not dedicated to ATSSS purposes.
> > >>>>>>>
> > >>>>>>> However MP-DCCP is not limited to ATSSS and can be applied
> end-to-
> > end
> > >>>> with
> > >>>>>> or without encapsulation.
> > >>>>>>>
> > >>>>>>> So I encourage you to read through the drafts, give feedback and
> > discuss
> > >> the
> > >>>>>> potential roadmap towards WG adoption.
> > >>>>>>>
> > >>>>>>> Br
> > >>>>>>>
> > >>>>>>> Markus
> > >>>>>
> > >>>
> > >
>
>