Re: [sipcore] Happy Eyeballs for SIP
worley@ariadne.com (Dale R. Worley) Tue, 13 December 2016 17:22 UTC
Return-Path: <worley@alum.mit.edu>
X-Original-To: sipcore@ietfa.amsl.com
Delivered-To: sipcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0F99E12958A for <sipcore@ietfa.amsl.com>; Tue, 13 Dec 2016 09:22:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.934
X-Spam-Level:
X-Spam-Status: No, score=-1.934 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_SOFTFAIL=0.665] autolearn=no autolearn_force=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 FxYXqE2KrpmK for <sipcore@ietfa.amsl.com>; Tue, 13 Dec 2016 09:22:19 -0800 (PST)
Received: from resqmta-ch2-03v.sys.comcast.net (resqmta-ch2-03v.sys.comcast.net [IPv6:2001:558:fe21:29:69:252:207:35]) (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 67EFF129446 for <sipcore@ietf.org>; Tue, 13 Dec 2016 09:22:19 -0800 (PST)
Received: from resomta-ch2-05v.sys.comcast.net ([69.252.207.101]) by resqmta-ch2-03v.sys.comcast.net with SMTP id GqlgcBJ94MppVGqmQcfYk7; Tue, 13 Dec 2016 17:22:18 +0000
Received: from hobgoblin.ariadne.com ([24.60.114.4]) by resomta-ch2-05v.sys.comcast.net with SMTP id GqmPcu2X3HGXvGqmQcpxv4; Tue, 13 Dec 2016 17:22:18 +0000
Received: from hobgoblin.ariadne.com (hobgoblin.ariadne.com [127.0.0.1]) by hobgoblin.ariadne.com (8.14.7/8.14.7) with ESMTP id uBDHLBXN020240; Tue, 13 Dec 2016 12:21:11 -0500
Received: (from worley@localhost) by hobgoblin.ariadne.com (8.14.7/8.14.7/Submit) id uBDHLB4b020237; Tue, 13 Dec 2016 12:21:11 -0500
X-Authentication-Warning: hobgoblin.ariadne.com: worley set sender to worley@alum.mit.edu using -f
From: worley@ariadne.com
To: "Asveren, Tolga" <tasveren@sonusnet.com>
In-Reply-To: <SN2PR03MB2350C0711DE8F0B8C6EC44DBB29B0@SN2PR03MB2350.namprd03.prod.outlook.com> (tasveren@sonusnet.com)
Sender: worley@ariadne.com
Date: Tue, 13 Dec 2016 12:21:11 -0500
Message-ID: <87shprvj7c.fsf@hobgoblin.ariadne.com>
X-CMAE-Envelope: MS4wfPXWYkWDyqfcJQhWVbFT9u/Xdgbm7NyD6LArP2I2PV7+P0AwRNGIJ1HHZ9OAUR919w2QDCwbKcg2UDXKfDPhQ8Z83Q8QYasIDlQFUt3Y4LSR2FmuiBXk 2qK8bnWKNcbRqDupADqbcToH1dcRiYf6PeIprheenjapx9qrdHSXDoHygM3uhks3WV61q+btyJD7nNy4OspnP/rwvXVsgiaGxNE=
Archived-At: <https://mailarchive.ietf.org/arch/msg/sipcore/Lpb3bT55_aq0bOWqlW1FmfnWquo>
Cc: sipcore@ietf.org
Subject: Re: [sipcore] Happy Eyeballs for SIP
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sipcore/>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 13 Dec 2016 17:22:21 -0000
"Asveren, Tolga" <tasveren@sonusnet.com> writes: >> From: sipcore [mailto:sipcore-bounces@ietf.org] On Behalf Of Dale R. Worley >> Sent: Monday, December 12, 2016 7:15 PM >> To: sipcore@ietf.org >> Subject: [sipcore] Happy Eyeballs for SIP >> >> This is the start of getting the Happy Eyeballs for SIP work going in the >> working group. >> >> The authors (Olle Johansson, Gonzalo Salgueiro, Dale Worley) are >> working with the following strategy (at this time): The first >> tranche is the case where (1) alternative addresses are provided by A >> and AAAA records based on one host name, i.e., we are not considering >> multiple SRV records, and (2) all of the targets use >> connection-oriented protocols. > > i- Why only A/AAAA records? What about cases where a different SRV > record is used for each supported address family? AFAIU this type of > configuration is already mentioned in RFC7984. Indeed, that configuration is mentioned in 7984, and was inserted into 7984 because it is such a common configuration. However, we decided to not handle SRV in this tranche because a comprehensive approach to SRV is complicated and nobody has yet proposed a solution that promises to meet the desiderata, viz.: - achieve the Happy Eyeballs effect, that is, traffic will be very rarely delayed by unreachability of one or more of the targets - achieve the specified effect of SRV, that is, among the set of targets which are reachable, over the long run, the traffic will be distributed among them according to the specified priorities and weights in the SRV records > RFC3263 is a bit vague regarding what needs to be done if there are > multiple SRV records: > "If no NAPTR records are found, the client constructs SRV queries for > those transport protocols it supports, and does a query for each." > Does this mean "for all transports for the selected -according to > priority/weight- SRV Record" or "for all transport/SRV Record pairs". Well, since the priorities/weights are extracted from the SRV records, the priorities/weights cannot affect how the SRV records are queried for. My interpretation is "for each transport that the client supports and that is permitted by the URI scheme and the 'transport' option of the URI (if any), the client constructs an SRV query for the URI scheme, the transport and the target domain name". Of course, if there are multiple SRV records for a scheme/transport/domain name combination, the single query will return all of them. Thus, a query for sip/TCP/example.com would return the two SRV records you quoted: > I tend to think the former but RFC7984 seems to differ: > "For example, consider a server with DNS name example.com, with TCP > transport specified. The relevant SRV records for example.com are: > > _sip._tcp.example.com. 300 IN SRV 10 1 5060 sip-1.example.com. > _sip._tcp.example.com. 300 IN SRV 20 1 5060 sip-2.example.com. Once all the SRV records are obtained, the priority/weight processing is applied to them. Although it is not specified in RFC 2782 (SRV records), the standard practice seems to be that all of the SRV records obtained for all of the protocols are considered as a single set for priority/weight processing, which generates an ordered list of the target domain names of the SRV records. (Of course, in this example, that is not relevant, since both of the SRV records are for TCP, and so are obtained by one SRV query, while the UDP SRV query obtains no records.) > The processing of [RFC2782] results in this ordered list of target > domain names: > > sip-1.example.com > sip-2.example.com" > Then it lists all addresses for both of the SRV Records. Granted, it > mentions that addresses are not interleaved but nonetheless it assumes > that a query is performed for both of the SRV Records. Actually, one query was done, for _sip._tcp.example.com, and it returned both records. > I am not sure > what the right interpretation should be here but it is not > well-defined to say the least. To me, it seems like RFC7984 should be > updating RFC3263 normatively in this aspect as well -to promote the > RFC7984 defined behavior-. And IMHO it would be up to the > Happy-Eyeballs draft to define how addresses from multiple SRV Records > should be used. Cases, where a dual-stack entity does not know whether > IPv4/IPv6 is preferred and multiple SRV records are used for different > address families on different servers should be covered as well. Can you give an example where the procedures of RFC 2782 aren't sufficient to resolve this problem? > ii- Why only for connection-oriented protocols? I think the generic > problem happy-eyeballs addresses and what is targeted with > draft-worley-sip-he-connection-01 are different. The former can be a > building block for the latter but that shouldn't mean that it should > be restricted by it IMHO. Is there any technical reason why > happy-eyeballs is not applicable -by itself- for SIP over UDP? The *concept* of Happy Eyeballs can, should, and will be applied to UDP, but the *details* are going to be considerably different from the details for TCP. For the first tranche, we are attempting to stay near what has been done for HTTP, so we are limiting the scope to connection-oriented protocols. Dale
- [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP Paul Kyzivat
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP Olle E. Johansson
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP Olle E. Johansson
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Olle E. Johansson
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP Olle E. Johansson
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Olle E. Johansson
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Olle E. Johansson
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Paul Kyzivat
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP Dale R. Worley
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Roman Shpount
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Roman Shpount
- Re: [sipcore] Happy Eyeballs for SIP Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Asveren, Tolga
- Re: [sipcore] Happy Eyeballs for SIP - DTLS as a … Adam Roach
- [sipcore] Happy Eyeballs for SIP - Technical reco… Dale R. Worley