Re: [Int-area] MPT Network Layer Multipath Library (draft-lencse-tsvwg-mpt-00.txt)

David Schinazi <dschinazi@apple.com> Tue, 25 July 2017 11:03 UTC

Return-Path: <dschinazi@apple.com>
X-Original-To: int-area@ietfa.amsl.com
Delivered-To: int-area@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A58F0131BBF for <int-area@ietfa.amsl.com>; Tue, 25 Jul 2017 04:03:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.1
X-Spam-Level:
X-Spam-Status: No, score=-7.1 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_MED=-2.3, RCVD_IN_MSPIKE_H2=-2.8, RP_MATCHES_RCVD=-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=apple.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 0NUWUfVnTnf1 for <int-area@ietfa.amsl.com>; Tue, 25 Jul 2017 04:03:50 -0700 (PDT)
Received: from mail-in3.euro.apple.com (mail-in.euro.apple.com [17.72.148.13]) (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 D63A0124E15 for <int-area@ietf.org>; Tue, 25 Jul 2017 04:03:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; d=apple.com; s=mailout2048s; c=relaxed/simple; q=dns/txt; i=@apple.com; t=1500980628; h=From:Sender:Reply-To:Subject:Date:Message-id:To:Cc:MIME-version:Content-type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-reply-to:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=AIF/tqNpXiaqGm/8Oq0qpyw3yLclHqfiqb7wbXg6OHg=; b=2BiBB5NstyEJJYT07necKlCNTVHfPI3mcxeV8HdCCvEZYahnR49HoUUHLKOxWpzf JbMC1SA/L6sYsrbOxT3qLYiaLYic2+UQvGNoZRrxRi7JD2HpACVWNxSXdOkXmuzy /6wizqcORH9EgvsaeH3xMLQQFnMtrq/8SnZERknTSiOXR4d7SvrB89npl6GjMS7S dx2b5446AYgMA4KIegudACBAYve8gwmhTDm/jwwmbt9jf6ARykc/fSS/HyOuUKWg PSdTRTNcwURiTHwitS4zevc5zggzfLKNwOPG9wpkZ84Ja+jk0m5AQ24HCqhv4Gt8 0Kow7nQJMGdZ+NTQ+X74gg==;
Received: from relay2.euro.apple.com ( [17.66.55.12]) (using TLS with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mail-in3.euro.apple.com (Symantec Mail Security) with SMTP id 4D.99.07437.49527795; Tue, 25 Jul 2017 12:03:48 +0100 (BST)
X-AuditID: 1148940d-ed6789c000001d0d-0b-597725944472
Received: from crk-phonehomebzp-sz03.euro.apple.com ( [17.72.133.83]) by relay2.euro.apple.com (Symantec Mail Security) with SMTP id F4.37.07255.39527795; Tue, 25 Jul 2017 12:03:47 +0100 (BST)
MIME-version: 1.0
Content-type: multipart/alternative; boundary="Boundary_(ID_4PFMS95WW9ZkbhXzAXW+pA)"
Received: from pc14.home (ABordeaux-651-1-87-179.w90-5.abo.wanadoo.fr [90.5.130.179]) by phonehome3.euro.apple.com (Oracle Communications Messaging Server 8.0.1.2.20170222 64bit (built Feb 22 2017)) with ESMTPSA id <0OTN002X782AVL30@phonehome3.euro.apple.com>; Tue, 25 Jul 2017 12:03:47 +0100 (IST)
Sender: dschinazi@apple.com
From: David Schinazi <dschinazi@apple.com>
Message-id: <3ADAA55B-AED3-47E1-8BF9-A69700F40006@apple.com>
Date: Tue, 25 Jul 2017 13:03:34 +0200
In-reply-to: <4515c18c-b2f7-a5c8-8471-299422092e43@is.naist.jp>
Cc: int-area@ietf.org, Szilagyi Szabolcs <szilagyi.szabolcs@inf.unideb.hu>, Marius Georgescu <marius.georgescu@rcs-rds.ro>, Fejes Ferenc <fejes@openmailbox.org>
To: Gabor Lencse <gabor-l@is.naist.jp>
References: <4515c18c-b2f7-a5c8-8471-299422092e43@is.naist.jp>
X-Mailer: Apple Mail (2.3273)
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupnkeLIzCtJLcpLzFFi42IRdDLn0Z2iWh5p8O8As8WEtnfsFk+X/GC3 uDHrJovF86v3mCxOLv7M7sDqsWTJTyaPdx0/2D3e3X7I4vHmxFI2j2VHFjAHsEZx2aSk5mSW pRbp2yVwZTy538dWsD2nYuqkLcwNjL+juhg5OSQETCSW7f/H3sXIxSEksIhJ4sDXpcxdjBxg iVnbKiHihxgl3k1cywLSwCsgKPFj8j0wm1kgTKL/7lxmEFtIYAuTxIl2RhBbWEBaouvCXVaQ OWwCWhIH1hiBmLwCNhI9n7QgKmIl1k95BDaFRUBVYvH2F2CdnAL2EheXrmABWcsssIRRYvGD g2AJEQE1ieddT5ggVtlJtO44yAxxv6zErdmXmEEaJASus0ns+TeVaQKj0Cwkp85CciqErSXx /VErUJwDyJaXOHheFiKsKfHs3id2CFtb4sm7C6wLGNlWMYrnJmbm6GbmGeullhbl6yUWFOSk 6iXn525iBEWTxxTeHYzXDxoeYhTgYFTi4ZVh844UYk0sK67MBQYbB7OSCO9LpvJIId6UxMqq 1KL8+KLSnNTiQ4zSHCxK4rwmpfKRQgLpiSWp2ampBalFMFkmDk6pBkaVd5M+VYSzKXR/Fl/x 56KcifJ6y6mTuSZfyNSVDO8IZp3z/5/I1z2rpgpYWp/8s/qzZfqCgrWn4vZ8twt2Tt5wTdr9 zpMFRtVN4iwiLYyNk3jcAl2evNEITihg7ZHZMufDrhVZbuF/nC9YrDBm2cbb+1Evx3+btWPc ZS81U9+Ht3kvvRQvXqnEUpyRaKjFXFScCADVMnxUogIAAA==
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrOLMWRmVeSWpSXmKPExsUi6NEarDtZtTzSoGGnjcWEtnfsFk+X/GC3 uDHrJovF86v3mCxOLv7M7sDqsWTJTyaPdx0/2D3e3X7I4vHmxFI2j2VHFjAHsEZx2aSk5mSW pRbp2yVwZTy538dWsD2nYuqkLcwNjL+juhg5OCQETCRmbavsYuTiEBI4xCjxbuJali5GTg5e AUGJH5PvgdnMAmES/XfnMoPYQgJbmCROtDOC2MIC0hJdF+6ygsxhE9CSOLDGCMTkFbCR6Pmk BVERK7F+yiOwKSwCqhKLt78A6+QUsJe4uHQFC8haZoEljBKLHxwES4gIqEk873rCBLHKTqJ1 x0GwtRICshK3Zl9insDIPwvJdbOQXAdha0l8f9QKFOcAsuUlDp6XhQhrSjy794kdwtaWePLu AusCRrZVjKJFqTmJlUZ6qaVF+XqJBQU5qXrJ+bmbGEHB72TOs4Px1UHDQ4wCHIxKPLxrRcsj hVgTy4orc4HhxMGsJML7kgkoxJuSWFmVWpQfX1Sak1p8iFGag0VJnHdudmGkkEB6Yklqdmpq QWoRTJaJg1OqgZFzOu+H6pudYbcfvr8/6/7U/0emhAvv0W7ec+foSalT5ZUCn8Xuia1+vutw y5a7JYyXFjNXli+Zx/xToi7y6BbdFpUf6d1fDCW/+GYcy62brrsl9zlHgfH/fKFFa6rdVb74 9kvva3pU4Me/8Fh/1c1zs3fOaytTsz9dw7qk+caPD7usrj9Xyp2sxFKckWioxVxUnAgAl8Kp GnoCAAA=
Archived-At: <https://mailarchive.ietf.org/arch/msg/int-area/To9X81zcjPd60ttK00NxxuJnCvw>
Subject: Re: [Int-area] MPT Network Layer Multipath Library (draft-lencse-tsvwg-mpt-00.txt)
X-BeenThere: int-area@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: IETF Internet Area Mailing List <int-area.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/int-area>, <mailto:int-area-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/int-area/>
List-Post: <mailto:int-area@ietf.org>
List-Help: <mailto:int-area-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/int-area>, <mailto:int-area-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 25 Jul 2017 11:03:55 -0000

Hi Gabor,

I don't think the problem space is quite as simple:

1) Many content providers will return different DNS results based on where you're querying from. For this reason you need to perform DNS and your transport protocol on the same interface to be efficient.
2) Congestion properties can differ greatly per link, for that reason you'll need to have separate per-link congestion control to avoid starving one link or risking congestion collapse on the other.

For these reasons, transport-layer solutions like MPTCP or MPQUIC are preferable: you perform DNS on your favorite link and connect there, the server provides you with extra addresses and the client host can then open up different paths via link selection or source address selection.

Don't get me wrong, in general I'm a very big proponent of using IP as our narrow waist to allow innovation at the above and below layers. However, in this case I don't think you can build a safe and efficient solution exclusively at the IP layer, because what you're trying to improve is transport-layer performance (again the only motivation I see in the draft is "throughput" and "resilience" [Abstract] which I don't see as main goals for a networking stack, latency is still the first priority [1].

You may have solved these issues, but I couldn't find that in the draft. For example, in draft-lencse-tsvwg-mpt-00 section 5.2, you mention that "(E.g. WiFi is used for Torrent traffic and LTE is used for VoIP calls.)" without specifying how the IP layer can differentiate these various types of traffic. And when it comes to per-packet mappings, sending a percentage of packets on various links and then adding delay to reorder at the MPT server will add buffer bloat to match the worst link.

I may be missing something, but after reading the draft I think this proposal will be harmful to users as it exclusively focuses on throughput at the expense of many other priorities.
While it's commonly assumed we can solve any problem by introducing an extra level of indirection or IP headers, I don't think tunnels are the solution to all woes.

[1] http://www.stuartcheshire.org/rants/latency.html <http://www.stuartcheshire.org/rants/latency.html>

Thanks,
David Schinazi


> On Jul 25, 2017, at 08:59, Gabor Lencse <gabor-l@is.naist.jp> wrote:
> 
> Dear INTAREA WG members,
> 
> I am Gabor Lencse, the first author of a "-00" draft about the MPT Network Layer Multipath Library: https://tools.ietf.org/html/draft-lencse-tsvwg-mpt-00
> 
> It was introduced to the INTAREA WG by our co-author Marius Georgescu at IETF 99.
> 
> I would like to elaborate on the feedback we received during the presentation.
> 
> Q1 (David, from Apple): What is the motivation, what you are trying to solve? Why are you trying to use multiple interfaces?
> 
> A1: Throughput aggregation between two sites. (E.g. between data centers)
> 
> My answer:
> 
> The problem to  be solved is the following. Due to the design of the TCP/IP protocol stack and its socket interface, even if a device has multiple network interfaces, only one of them can be used for a communications session. And it is a serious limitation many times!
> 
> Example: Somebody is remotely participating at an IETF meeting using Meetecho on his laptop using WiFi connection (to save costs). When he receives permission to ask a question, the WiFi connection brakes. By the time he manages to switch over to LTE, it is too late.  -- According to our tests, MPT can do the switchover seamlessly.
> 
> How common is this situation? I think many people have smartphones, with WiFi and LTE, and uses WiFi when available in order to save costs. Many of them use free video calls (e.g. by Skype, Viber, WhatsApp, etc.) and would be happy if the free WiFi could be backed up by seamless switchover to LTE during the calls.
> 
> There are a number of multi path solutions, which shows that the problem is real, but I contend that MPT differs from them and MPT can be more suitable for certain purposes than they for different reasons:
> 
> - MPTCP [RFC6824] is good, but it is "built together" with TCP. Some applications, e.g. DNS resolution or RTP use UDP. (They can work well with MPT.)
> 
> -  Huawei's GRE Tunnel Bonding Protocol [RFC8157] was designed for this very purpose, but it uses GRE, which is filtered out in many networks. (MPT uses GRE-in-UDP, thus MPT behaves as a standard UDP application in the carrier networks.)
> 
> - BANANA https://tools.ietf.org/html/draft-leymann-banana-data-encap-00 aims to do bandwidth aggregation, but it also uses GRE and not GRE-in-UDP. And I am not sure if it is able to provide a resilient tunnel (that is switching over from a given underlying path to another one).
> 
> - Load Sharing for SCTP https://tools.ietf.org/html/draft-tuexen-tsvwg-sctp-multipath-14 is also a multipath solution, but it is very specific. MPT provides an IP tunnel, which can be used for any purpose.
> 
> All in all, I could not find any other solutions that would provide such flexible, multipurpose IP tunnel (providing both IPv4 and IPv6), which is both resilient and can aggregate the transmission capacity of several (even high number of) underlying paths, and which can be used in any networks, where UDP is carried over either IPv4 or IPv6. I would be interested in hearing about any similar solutions.
> 
> And I would like to receive your feedback about MPT. All your questions, comments, suggestions, etc.
> 
> Best regards,
> 
> Gabor
> 
> 
> _______________________________________________
> Int-area mailing list
> Int-area@ietf.org
> https://www.ietf.org/mailman/listinfo/int-area