Re: [multipathtcp] Multipath Address Family

"Laganier, Julien" <julienl@qualcomm.com> Tue, 24 November 2009 22:33 UTC

Return-Path: <julienl@qualcomm.com>
X-Original-To: multipathtcp@core3.amsl.com
Delivered-To: multipathtcp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 58C693A67D9 for <multipathtcp@core3.amsl.com>; Tue, 24 Nov 2009 14:33:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.287
X-Spam-Level:
X-Spam-Status: No, score=-105.287 tagged_above=-999 required=5 tests=[AWL=1.013, BAYES_00=-2.599, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1gJZBId8QJ6H for <multipathtcp@core3.amsl.com>; Tue, 24 Nov 2009 14:33:07 -0800 (PST)
Received: from wolverine01.qualcomm.com (wolverine01.qualcomm.com [199.106.114.254]) by core3.amsl.com (Postfix) with ESMTP id 03CB13A680C for <multipathtcp@ietf.org>; Tue, 24 Nov 2009 14:33:06 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=qualcomm.com; i=julienl@qualcomm.com; q=dns/txt; s=qcdkim; t=1259101982; x=1290637982; h=from:to:cc:date:subject:thread-topic:thread-index: message-id:references:in-reply-to:accept-language: content-language:x-ms-has-attach:x-ms-tnef-correlator: acceptlanguage:content-type:content-transfer-encoding: mime-version:x-ironport-av; z=From:=20"Laganier,=20Julien"=20<julienl@qualcomm.com> |To:=20=3D?iso-8859-1?Q?Michael_T=3DFCxen?=3D=20<Michael. Tuexen@lurchi.franken.de>,=0D=0A=20=20=20=20=20=20=20=20W illiam=20Herrin=20<bill@herrin.us>|CC:=20"multipathtcp@ie tf.org"=20<multipathtcp@ietf.org>|Date:=20Tue,=2024=20Nov =202009=2014:32:58=20-0800|Subject:=20RE:=20[multipathtcp ]=20Multipath=20Address=20Family|Thread-Topic:=20[multipa thtcp]=20Multipath=20Address=20Family|Thread-Index:=20Acp tSkug6ttsDb7CQgiGbU4S+yHW4QACzqjA|Message-ID:=20<BF345F63 074F8040B58C00A186FCA57F1C65FB29B9@NALASEXMB04.na.qualcom m.com>|References:=20<E9EE0C1A-C9D3-4EBC-97FD-E1B1628CD2E 7@iki.fi>=0D=0A=09<3c3e3fca0911090542h54e45784qbdbf1f338a 4c3e90@mail.gmail.com>=0D=0A=09<E03D46E1-51EA-4273-A8A7-4 F37F88B2E92@iki.fi>=0D=0A=09<20091123.092214.140617438.ni shida@sfc.wide.ad.jp>=0D=0A=09<48DA092B-F3BC-432E-A199-B2 65DDED39DA@iki.fi>=0D=0A=09<3c3e3fca0911240434p4d95ec7an3 4615ae218faa4f@mail.gmail.com>=0D=0A=20<C622F375-EE67-46A E-AC28-6617CFEF6D12@lurchi.franken.de>|In-Reply-To:=20<C6 22F375-EE67-46AE-AC28-6617CFEF6D12@lurchi.franken.de> |Accept-Language:=20en-US|Content-Language:=20en-US |X-MS-Has-Attach:|X-MS-TNEF-Correlator:|acceptlanguage: =20en-US|Content-Type:=20text/plain=3B=20charset=3D"iso-8 859-1"|Content-Transfer-Encoding:=20quoted-printable |MIME-Version:=201.0|X-IronPort-AV:=20E=3DMcAfee=3Bi=3D"5 400,1158,5812"=3B=20a=3D"28359543"; bh=sfnAJt17PtPHa0fbVbV94jc4CFyLuxQCVQNuZcrbzK4=; b=MzrRrUKw6li3BADVppJ2mTG+WwGqOUcaxgTBPR/9Q7qMALJIlC/CYgC8 rh8AASgN9tCXJ9x4yIPMTJfHy+hBLQRuEusgpWvEKmlhbe/XP/4aSEr+M mXzH79qXKzibBK0p9n8w2qea1atq97ft715gAgJ18u1qfxgJDn0zIUYEI w=;
X-IronPort-AV: E=McAfee;i="5400,1158,5812"; a="28359543"
Received: from pdmz-ns-mip.qualcomm.com (HELO numenor.qualcomm.com) ([199.106.114.10]) by wolverine01.qualcomm.com with ESMTP; 24 Nov 2009 14:33:02 -0800
Received: from msgtransport02.qualcomm.com (msgtransport02.qualcomm.com [129.46.61.151]) by numenor.qualcomm.com (8.14.2/8.14.2/1.0) with ESMTP id nAOMX2S6026217 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Tue, 24 Nov 2009 14:33:02 -0800
Received: from nasanexhub03.na.qualcomm.com (nasanexhub03.na.qualcomm.com [10.46.93.98]) by msgtransport02.qualcomm.com (8.14.2/8.14.2/1.0) with ESMTP id nAOMX1I3013970 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NOT); Tue, 24 Nov 2009 14:33:01 -0800
Received: from nalasexhub01.na.qualcomm.com (10.47.130.49) by nasanexhub03.na.qualcomm.com (10.46.93.98) with Microsoft SMTP Server (TLS) id 8.2.176.0; Tue, 24 Nov 2009 14:33:01 -0800
Received: from NALASEXMB04.na.qualcomm.com ([10.47.7.118]) by nalasexhub01.na.qualcomm.com ([10.47.130.49]) with mapi; Tue, 24 Nov 2009 14:33:00 -0800
From: "Laganier, Julien" <julienl@qualcomm.com>
To: Michael Tüxen <Michael.Tuexen@lurchi.franken.de>, William Herrin <bill@herrin.us>
Date: Tue, 24 Nov 2009 14:32:58 -0800
Thread-Topic: [multipathtcp] Multipath Address Family
Thread-Index: AcptSkug6ttsDb7CQgiGbU4S+yHW4QACzqjA
Message-ID: <BF345F63074F8040B58C00A186FCA57F1C65FB29B9@NALASEXMB04.na.qualcomm.com>
References: <E9EE0C1A-C9D3-4EBC-97FD-E1B1628CD2E7@iki.fi> <3c3e3fca0911090542h54e45784qbdbf1f338a4c3e90@mail.gmail.com> <E03D46E1-51EA-4273-A8A7-4F37F88B2E92@iki.fi> <20091123.092214.140617438.nishida@sfc.wide.ad.jp> <48DA092B-F3BC-432E-A199-B265DDED39DA@iki.fi> <3c3e3fca0911240434p4d95ec7an34615ae218faa4f@mail.gmail.com> <C622F375-EE67-46AE-AC28-6617CFEF6D12@lurchi.franken.de>
In-Reply-To: <C622F375-EE67-46AE-AC28-6617CFEF6D12@lurchi.franken.de>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "multipathtcp@ietf.org" <multipathtcp@ietf.org>
Subject: Re: [multipathtcp] Multipath Address Family
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/multipathtcp>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 24 Nov 2009 22:33:08 -0000

Stuart Cheshire had a nice talk at IETF 72 on the drawbacks of the current getaddrinfo() + connect() model w.r.t. to IPv6 transition,see http://www.stuartcheshire.org/IETF72/. (Somebody already mentioned that on the list I think.)

A connect_to_name() calls that hides all of the address family subtleties under the hood
does not have such drawbacks. So if we're going to change the API anyway, this looks like a good occasion to fix that issue too, no?

--julien 

> -----Original Message-----
> From: multipathtcp-bounces@ietf.org [mailto:multipathtcp-
> bounces@ietf.org] On Behalf Of Michael Tüxen
> Sent: Tuesday, November 24, 2009 1:08 PM
> To: William Herrin
> Cc: multipathtcp@ietf.org
> Subject: Re: [multipathtcp] Multipath Address Family
> 
> Dear all,
> 
> just one note:
> In SCTP we use sctp_connectx() to connect to multiple addresses.
> Kacheong pointed a couple of years ago out that a more generic
> connectx() would make sense to other protocols supporting multihoming
> as well (but there were no).
> 
> So you might want to look at sctp_connectx() which the SCTP socket API
> uses to handle the problem.
> 
> Best regards
> Michael
> 
> On Nov 24, 2009, at 1:34 PM, William Herrin wrote:
> 
> > On Mon, Nov 23, 2009 at 4:40 PM, Pasi Sarolahti
> <pasi.sarolahti@iki.fi> wrote:
> >> I think a new address family would be a minimal needed change to the
> current
> >> socket API, without extending the API with new operations, but yet
> provide
> >> an interface to handle multiple addresses in a socket. One
> potentially
> >> useful characteristic would be that this would allow name resolver
> to return
> >> multiple IPv4 and/or IPv6 addresses from the name server as a single
> >> sockaddr structure, that could be directly given as a parameter to a
> connect
> >> call, which would lead to trying which of the addresses are
> reachable for
> >> the MPTCP session.
> >
> > Hi Pasi,
> >
> > It seems like you want to preserve the connect() call's parameters by
> > altering the definition of sockaddr so that it can contain multiple
> > addresses.
> >
> > But functionally, what we really want to do is pass an array of
> > sockaddrs to connect().
> >
> > Stupid question time: what makes redefining sockaddr superior to an
> > extended API call that supplants connect() and accepts an array of
> > sockaddrs?
> >
> > Poking around linux's include files (netinet/in.h, bits/socket.h) I
> > notice that they go to a lot of trouble to make all sockaddrs come
> out
> > to exactly the same number of bytes. Won't a variable length sockaddr
> > that holds a variable number of addresses make a mess of that?
> >
> >
> >>> SOCK_MULTISTREAM or using a combination socket type like
> SOCK_STREAM |
> >>> SOCK_MULTIPATH
> >>> from the following reasons.
> >
> > Found a quote I think bears on the topic at
> > http://lkml.indiana.edu/hypermail/linux/net/9904.2/0091.html :
> >
> >> The AF_ prefix stands for "address family" and the PF_prefix stands
> for
> >> "protocol family". Historicly, the intent was that a single protocol
> family
> >> might support multiple address families and that the PF_ value was
> used to
> >> create the socket and the AF_ value was used in socket address
> structures.
> >> But in actuality, a protocol family supporting multiple address
> families has
> >> never been supported and the <sys/socket.h> header defines the PF_
> value
> >> for a given protocol to be equal to the AF_ value for that protocol.
> >
> > I think when we discuss allowing multipath TCP to use IPv4 and IPv6
> > addresses interchangeably, we're talking about one protocol family
> > using multiple address families, are we not?
> >
> > Regards,
> > Bill Herrin
> >
> >
> >
> > --
> > William D. Herrin ................ herrin@dirtside.com
> bill@herrin.us
> > 3005 Crane Dr. ...................... Web: <http://bill.herrin.us/>
> > Falls Church, VA 22042-3004
> > _______________________________________________
> > multipathtcp mailing list
> > multipathtcp@ietf.org
> > https://www.ietf.org/mailman/listinfo/multipathtcp
> >
> 
> _______________________________________________
> multipathtcp mailing list
> multipathtcp@ietf.org
> https://www.ietf.org/mailman/listinfo/multipathtcp