Re: [Spud] SPUD and anycast... ?!

Michael Thornburgh <mthornbu@adobe.com> Fri, 14 August 2015 23:34 UTC

Return-Path: <mthornbu@adobe.com>
X-Original-To: spud@ietfa.amsl.com
Delivered-To: spud@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 667AE1A9218 for <spud@ietfa.amsl.com>; Fri, 14 Aug 2015 16:34:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.908
X-Spam-Level:
X-Spam-Status: No, score=-0.908 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, PLING_QUERY=0.994, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=no
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 FI-oQafxKDDU for <spud@ietfa.amsl.com>; Fri, 14 Aug 2015 16:34:34 -0700 (PDT)
Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1on0699.outbound.protection.outlook.com [IPv6:2a01:111:f400:fc10::699]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 16CEE1A916D for <spud@ietf.org>; Fri, 14 Aug 2015 16:34:33 -0700 (PDT)
Received: from BLUPR02MB1747.namprd02.prod.outlook.com (10.162.213.149) by BLUPR02MB020.namprd02.prod.outlook.com (10.242.191.28) with Microsoft SMTP Server (TLS) id 15.1.225.19; Fri, 14 Aug 2015 23:34:30 +0000
Received: from BLUPR02MB1747.namprd02.prod.outlook.com (10.162.213.149) by BLUPR02MB1747.namprd02.prod.outlook.com (10.162.213.149) with Microsoft SMTP Server (TLS) id 15.1.231.21; Fri, 14 Aug 2015 23:34:27 +0000
Received: from BLUPR02MB1747.namprd02.prod.outlook.com ([10.162.213.149]) by BLUPR02MB1747.namprd02.prod.outlook.com ([10.162.213.149]) with mapi id 15.01.0231.021; Fri, 14 Aug 2015 23:34:27 +0000
From: Michael Thornburgh <mthornbu@adobe.com>
To: Toerless Eckert <eckert@cisco.com>, "spud@ietf.org" <spud@ietf.org>
Thread-Topic: [Spud] SPUD and anycast... ?!
Thread-Index: AQHQ1l9zJIjEsmoUDEm7JrdftL6wsp4LHBaAgABIj4CAABYsAIAAAVwAgACi0BA=
Date: Fri, 14 Aug 2015 23:34:27 +0000
Message-ID: <BLUPR02MB17477361277708CB3BAA0D52CD7C0@BLUPR02MB1747.namprd02.prod.outlook.com>
References: <20150814070411.GQ1667@cisco.com> <07E2D217-F71A-47DD-850D-F6F21855FBC1@lurchi.franken.de> <20150814115939.GS1667@cisco.com> <A8C02E01-673A-4F3A-BE91-6F8646CC791F@lurchi.franken.de> <20150814132352.GT1667@cisco.com>
In-Reply-To: <20150814132352.GT1667@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=mthornbu@adobe.com;
x-originating-ip: [192.150.10.208]
x-microsoft-exchange-diagnostics: 1; BLUPR02MB1747; 5:nZqKRZ1pkhomxvXYKhmttNaGlR2BV1qVpF6F7fNVqYk7Ehe3jMtJIWZA5eclGsyJM/YHnMIxxzemkF/JAzeNOUtwb5mxUuCWmZviRDmADqH8KHe+SECdclIy4GYYat4FLg0UR/V0577SpeJfBKamvw==; 24:NansIVmbUlJvv5iro0HPhgoHSGcYzLszySV9H0qpp3DNcPc3Pr1os4UwaaJFarG/Etfy+3mBGtmH8IzTjE7ESSbrp2BImb/U9KgGc/rFWB0=; 20:V80VjAtifPM4UkerYdFl9XhpZYP2NTpv1Wi9grE0gB14444/n/R2BXA1hz3fLuTSPG4i9YDPjrEh2Hxn2Mph/w==
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:; SRVR:BLUPR02MB1747; UriScan:; BCL:0; PCL:0; RULEID:; SRVR:BLUPR02MB020;
x-microsoft-antispam-prvs: <BLUPR02MB17473204F843B08046F76FDACD7C0@BLUPR02MB1747.namprd02.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:;
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(5005006)(3002001); SRVR:BLUPR02MB1747; BCL:0; PCL:0; RULEID:; SRVR:BLUPR02MB1747;
x-forefront-prvs: 066898046A
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(6009001)(13464003)(189002)(51444003)(199003)(377454003)(24454002)(122556002)(2501003)(15975445007)(10400500002)(19580395003)(66066001)(10090500001)(86362001)(33656002)(101416001)(189998001)(8990500004)(64706001)(87936001)(76176999)(77156002)(5003600100002)(40100003)(50986999)(54356999)(68736005)(62966003)(107886002)(2900100001)(5002640100001)(2950100001)(5001960100002)(102836002)(77096005)(92566002)(19580405001)(74316001)(93886004)(4001540100001)(81156007)(46102003)(2656002)(106356001)(5001770100001)(97736004)(99286002)(105586002)(106116001)(76576001)(5001860100001)(5001830100001); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR02MB1747; H:BLUPR02MB1747.namprd02.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:3; A:1; LANG:en;
received-spf: None (protection.outlook.com: adobe.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:23
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Aug 2015 23:34:27.2752 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: fa7b1b5a-7b34-4387-94ae-d2c178decee1
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR02MB1747
X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB020; 2:uUKjGtdxf4i0CrTjTKazaD43GYWsqs5JRy+6kyIZk6ILDrKpwP6Zwp8Ex84fWSdo/V2t8XyKys8Mb5/YUWBIEUiHY805SQy9c1+WqCJwQQQfyet/6dz9hugru/fJbumrxl9c19Q2YwHps6yd5PeGzZOzPIzbs1uh6KQDSljJiBc=; 3:rbcWIrK9lbrukiSbvCRv5daGZNZUBVc9v0iiMGj6F5PHRKdlkoYHATAd5PPzgDOv2be6ETNAMOaBYE2z7PLlGesgt9rPv58ufEH61l2hjdVIzzh2CIQOLLmlldSqTD6nwUIrSf9js9qE+eQnhnz/BA==; 25:JW+IzmhcGqKUo6urLDVPuuTduWBCLFNcwicqCQLuXFhbhME/Lh/RdbCBgtw+m8E4m0rZisBXX9sS5GMIjTvI4ddF52RS0R8Np+ZWhcusPVOKaQkF1lxOgGREGsXfK1WKeXIkkQYLo9kn1cNVcAg3CwhSi7M+aH+DthyCklmVOxwVjTh6Vk5jup6c3a6PbSaczvH7Gy+LYqdCXoB4gw4fvYE/uSknW42J9ISHjzZrOHdsfwJEuVyb0+6D2Tv7Zng55TzmDW4BONoARxH82ZqwkA==; 23:T3TTF2agLdTlMCgN2FCtU7GIHbGWBhV0QNBstY4KBRfzzGqdLXLIH3j3aq/q64T91S597BBOVfLMo3unNvXHM9j224gR8a7luZJOnKytQo9Whjguw8wn9/imJ+/wMV9M/DTHQgeQtPDvhVctXGct5Vt0DNPBKrBMFyaBOcZ7ucoQCt1Z3etcDSuTwnlRam1CRzHrZYYHaGzSZN/p22f24GS8zT88anUqXQcaI9GaUXkoeznvTClnHWKXifFFFhRU
X-OriginatorOrg: adobe.com
Archived-At: <http://mailarchive.ietf.org/arch/msg/spud/0KPKoQYIp4gruGt_95X5Xp6Jouk>
Subject: Re: [Spud] SPUD and anycast... ?!
X-BeenThere: spud@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Session Protocol Underneath Datagrams <spud.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spud>, <mailto:spud-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spud/>
List-Post: <mailto:spud@ietf.org>
List-Help: <mailto:spud-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spud>, <mailto:spud-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 14 Aug 2015 23:34:36 -0000

RTMFP (RFC 7016) supports opening to an anycast or multicast address "out of the box".  these cases aren't explicitly called out in the spec, but the same mechanism that supports parallel open, redirectors, forwarders, and load distribution/fault tolerance also supports anycast/multicast.  see Section 3.5.1 (and subsections) of RFC 7016.

opening to an anycast address could work in these ways:

  1. anycast responder uses the anycast address for the session, as long as the anycast routing is consistent for the lifetime of the session (otherwise the session will time out and die), same as with TCP or anything else

  2. anycast responder uses its unicast address to respond with its RHello, session is established to the unicast address

  3. anycast responder uses its anycast address to respond with a Redirect listing the responder's unicast address, initiator then tries unicast address and establishes the session

note that if the client has an address/port restricted NAT or firewall, 2 won't work, but 3 would.

for opening to a multicast address, the responders would all respond with an RHello. whichever one was received first would win and be selected by the initiator for the session, and the other responses would be ignored (the same situation as for the load distribution case in Section 3.5.1.7).

-mike


> -----Original Message-----
> From: Spud [mailto:spud-bounces@ietf.org] On Behalf Of Toerless Eckert
> Sent: Friday, August 14, 2015 6:24 AM
> To: Michael Tuexen
> Cc: spud@ietf.org
> Subject: Re: [Spud] SPUD and anycast... ?!
> 
> On Fri, Aug 14, 2015 at 03:19:00PM +0200, Michael Tuexen wrote:
> > > On 14 Aug 2015, at 13:59, Toerless Eckert <eckert@cisco.com> wrote:
> > >
> > > http://www.cachefly.com/2014/07/11/measuring-throughput-performance-dns-vs-tcp-anycast-routing/
> > >
> > > Even beyond this easily googled example, i think that anycast TCP is
> > > used quite a bit and on web application you can often just have short
> > > lived TCP connection running completely on the anycast address and just
> 
> > If you want to use anycast with TCP, how do you make sure that all TCP
> > packets with the same anycast destination address end up at the same host?
> 
> My paragraph meant to imply that the whole TCP connection does use anycast
> in this case, and the different instances of the anycast group are deployed
> so that ECMP can't happen, so the TCP connections will only fail in case
> of re-routing that changes metrics to have the anycast address flip over
> and that doesn't seem to a big enough problem in the deployment cases -
> because the servers are far enough apart from each other for example.
> 
> > For SCTP you would only use an anycast address as the destination address of
> > the first packet and then the server uses a unicast address. Since SCTP
> > supports multiple IP addresses and dynamic address reconfiguration, that
> > is possible. Similar things can be done with MPTCP, but not with TCP.
> 
> I thought to remembre from long time ago that the only architecturally
> sane anycast assumption is that a single packet will only reach a single
> anycast group member. As soon as you send two packets they may end uup
> in different ones. Of course, likelyhood for this is quite small. SO all
> i was saying is that it wold be lovely for SPUD to be able to support
> architecturally sane use of anycast. Seems simple enough to permit it.
> 
> Cheers
>     Toerless
> 
> > Best regards
> > Michael
> > > redirect to a unicast URL when you know it's going to be long-lived (streaming).
> > > So i think the reason why this  may not have come up is because for a good amount
> > > of applications, just ignoring the anycast problem leads to good enough
> > > solutions, and the solutions where this would not work may not had
> > > enough of a business case / working strategy to get this type of extension
> > > forced into TCP.
> > >
> > > Cheers
> > >   toerless
> > >
> > > On Fri, Aug 14, 2015 at 09:39:57AM +0200, Michael Tuexen wrote:
> > >>> On 14 Aug 2015, at 09:04, Toerless Eckert <eckert@cisco.com> wrote:
> > >>>
> > >>> Was there ever an extension for TCP or SCTP to "explicitly" deal with
> > >>> anycast, eg: SYN to reponder anycast, SYN-ACK back from responder
> > >>> unicast, but with data field indicating anycast address and nonce from
> > >>> SYN, then ACK back to responder unicast ?
> > >> You can do that with SCTP and dynamic address re-conifguration. Randy
> > >> Stewart and myself discussed this ages ago but never wrote an ID, since
> > >> we didn't see a consumer of the idea.
> > >>
> > >> Best regards
> > >> Michael
> > >>>
> > >>> I can't remember / find anything like this right now. WOuld be
> > >>> lovely for SPUD to consier including something like this. Heck,
> > >>> could even do this with multicast and let initiator send ACK
> > >>> back to fastest responder ;-)
> > >>>
> > >>> Cheers
> > >>>   Toerless
> > >>>
> > >>> _______________________________________________
> > >>> Spud mailing list
> > >>> Spud@ietf.org
> > >>> https://www.ietf.org/mailman/listinfo/spud
> 
> _______________________________________________
> Spud mailing list
> Spud@ietf.org
> https://www.ietf.org/mailman/listinfo/spud