Re: [MMUSIC] ICE offer/answer terminology

Ari Keränen <ari.keranen@ericsson.com> Fri, 12 June 2015 18:13 UTC

Return-Path: <ari.keranen@ericsson.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7D8B71ACE93 for <mmusic@ietfa.amsl.com>; Fri, 12 Jun 2015 11:13:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.901
X-Spam-Level:
X-Spam-Status: No, score=-3.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham
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 mx97x0Pv_QHj for <mmusic@ietfa.amsl.com>; Fri, 12 Jun 2015 11:13:13 -0700 (PDT)
Received: from sesbmg22.ericsson.net (sesbmg22.ericsson.net [193.180.251.48]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B87BD1ACE91 for <mmusic@ietf.org>; Fri, 12 Jun 2015 11:13:12 -0700 (PDT)
X-AuditID: c1b4fb30-f799f6d000000faf-42-557b2136c235
Received: from ESESSHC012.ericsson.se (Unknown_Domain [153.88.253.125]) by sesbmg22.ericsson.net (Symantec Mail Security) with SMTP id 88.0E.04015.6312B755; Fri, 12 Jun 2015 20:13:11 +0200 (CEST)
Received: from Aris-MBP-2.dyn.sj.us.am.ericsson.se (153.88.183.153) by smtp.internal.ericsson.com (153.88.183.56) with Microsoft SMTP Server id 14.3.210.2; Fri, 12 Jun 2015 20:13:09 +0200
Message-ID: <557B2142.8000303@ericsson.com>
Date: Fri, 12 Jun 2015 11:13:22 -0700
From: Ari Keränen <ari.keranen@ericsson.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: "Pal Martinsen (palmarti)" <palmarti@cisco.com>
References: <8C7ACC43-D13C-4CE4-A982-DCC8F549D3EE@cisco.com> <557883BE.3010000@ericsson.com> <61E3D1D0-4C9B-444D-BEE0-C9A1B413C282@cisco.com> <557A3303.1070801@ericsson.com> <6EA244D6-CF95-48FC-BA34-F42BD4E9AC19@cisco.com>
In-Reply-To: <6EA244D6-CF95-48FC-BA34-F42BD4E9AC19@cisco.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrKLMWRmVeSWpSXmKPExsUyM+Jvra65YnWowZsprBZTlz9msXh/fSWL A5PHlN8bWT2WLPnJFMAUxWWTkpqTWZZapG+XwJVxtH8pa8EEvYrvfUINjHtUuxg5OSQETCQW /vzPBGGLSVy4t56ti5GLQ0jgKKPEg/v9zBDOfkaJ3kOrWUCqeAW0Jc59u8wGYrMIqErceHsW LM4mYCux+tVNMFtUIEXi2ZLdTBD1ghInZz4Bi4sIGEs0HznKDmIzC8hIzDjbCFTDwSEsoCnx dXEVxK57jBKTuxvA5nMCzez+2MACUW8hMXP+eUYIW16ieetsZhBbCOiGq/9eMU5gFJyFZN0s JC2zkLQsYGRexShanFqclJtuZKSXWpSZXFycn6eXl1qyiREYrge3/DbYwfjyueMhRgEORiUe XgXbqlAh1sSy4srcQ4zSHCxK4rwzNueFCgmkJ5akZqemFqQWxReV5qQWH2Jk4uCUamDMlpWL qFGeJspeNHNJcaY0W56Ov9gWLeW6b0sfMxz89KaVIbpV0GrF+sfpbNH1xkoKuo71gScS5lis DlvSeeCdBnvn+Z69zKpFp7osyy/fU976gYXn2ZeEx2vu+5lxGegrzbq8R6Cy/3wuw+8NXv9e X2C0fr/I7vmVE1x3dwoq7j4e4J1n1qnEUpyRaKjFXFScCADoFJvMOAIAAA==
Archived-At: <http://mailarchive.ietf.org/arch/msg/mmusic/cdlC3lO9XL44hZZxL4EYvSpAmHg>
Cc: mmusic <mmusic@ietf.org>
Subject: Re: [MMUSIC] ICE offer/answer terminology
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 12 Jun 2015 18:13:15 -0000

On 12/06/15 05:15, Pal Martinsen (palmarti) wrote:
>
>> On 12 Jun 2015, at 03:16, Ari Keränen <ari.keranen@ericsson.com> wrote:
>>
>> On 11/06/15 01:07, Pal Martinsen (palmarti) wrote:
>>>
>>>> On 10 Jun 2015, at 20:36, Ari Keränen <ari.keranen@ericsson.com> wrote:
>>>>
>>>> Thank you for the review Pål-Erik!
>>>>
>>>> I will have a closer look at the detailed comments a bit later, but first let's discuss the main issue, offer/answer terminology (and hence the new subject for the thread).
>>>>
>>>> I agree that the offer/answer as ICE terminology is not optimal since it implies to many that this would be RFC3264 o/a. However, we have not yet been able to come up with a better term.
>>>>
>>>> This was also discussed at the IETF #90 MMUSIC meeting:
>>>> http://www.ietf.org/proceedings/90/minutes/minutes-90-mmusic#h.1yc63e74pbhi
>>>>
>>>> (See “Offer/Answer Terminology (slide 10)")
>>>>
>>> Ahhh. That was a good summary. I think I remember now.. Sorry for not checking previous discussions, but I wanted do have a “clean” read thought the document.
>>>
>>>> The consensus was roughly that we *do* have offer and answer kind of messages when doing ICE, calling that ICE offer/answer is a bit confusing, but we'll go with that unless a better alternative emerges.
>>>>
>>>> What would you suggest as new terms that we could use here that would fulfill the requirements?
>>>>
>>>
>>> Candidate exchange?
>>>
>>> We need to have wording in there that explains there are a some more information that just the pure candidates that needs to be exchanged.
>>
>> IIRC, "candidate exchange" was one proposal that was rejected exactly due to the fact that there is quite a bit more information than just the candidates that is exchanged. "ICE exchange" perhaps could be used, but still it would be good to be able to refer to the -- for the lack of better word -- offer and answer parts of the exchange.
>>
>> That's why I like "ICE offer"; it implies that there is undefined amount of "ICE information" offered to the other endpoint which can then decide, based on the offer, how/if to proceed.
>>
>> However, would be great to hear more opinions on this.
>>
> ICE information exchange?
>
> I still do like “candidate exchange” as it is pretty descriptive and cover almost everything you need to kickstart ICE.

And what would you call the first and second message, that are now 
called the ICE offer and answer?

I think there is some very offer/answer'ish activity happening here 
since e.g., the answer part can't add more data streams and expect it to 
work, while it can select a subset.

> Ufrag and pwd is part of the candidate and affects how connectivity checks are conducted. The fact that SDP has a session level and media level set of attributes I find limiting. If I want to, I should be able to have different ufrag/pwd on each of my candidates.

That's a good point. I guess usually you'd end up sharing the ufrag and 
pwd across streams, but I don't see any reason why you would have to.

> Both ICE-lite and the nomination method would not be covered by the candidate exchange wording. This should be fixable with words in the document?

Any good words to propose?

> Side comment regarding ICE-lite. Can this be deducted by never receiving STUN requests and only host addresses. Or can the Responses contain a ICE-lite flag to help the remote side? The importance here is that controlling side do not happen at the ICE-lite side. (ICE-lite to ICE-lite must then just rely on both offering host addresses?)

Heuristics based on having only host candidates and not receiving 
something (that could be lost due to network issues) sounds a bit flaky 
to me, so I would lean towards explicit signaling. But perhaps this 
needs a bit more thinking.

> Agree with Ari, would be nice to know what others think.
> This is word smithing, but somewhat important if ICE starts to get used outside the VoIP bubble. For example TAPS might need an ICE like mechanism to probe network paths.

Yes. Although, perhaps outside of VoIP realm the offer/answer terms are 
not that overloaded, so ICE o/a could be OK?

>>> Regarding controlling/controlled we can eiter let the tie breaker fix that. Or have some wording if you are first to send the candidates you are controlling and so on.
>>
>> While the tie-breaker is a SIP specific feature, one argument for keeping the tie breaker in the generic ICE was to have easier proxy'ing to other ICE (SIP) domains that require this kind of check.
>> See: https://tools.ietf.org/html/draft-rosenberg-mmusic-ice-nonsip-01#section-5.2.3
>> (rest of the draft is pretty good read too)
>>
> The problem occurs when you do not know who initiates the “session”. I think their might be many use cases out there where this is true.
> Based on external events two agents want to communicate. They both have posted the candidates on a web page. Scenarios like that make the tiebreaker nice.

Agreed.

>>> We should consider having the ufrag and password tied closer to the candidate. We might have missed some information when removing the medialine and session level descriptions of that.
>>
>> Good point. However, I’m thinking that this would probably be the role of the usage documents to define; whether they allow multiple ufrag/passwords and how to handle that in the signaling.
>>
> I am leaning in the opposite direction.. Every candidate MUST have a ufrag and password associated with it. The ufrag and password can be shared across multiple candidates. This allows the SIP usage document to say that if it is a session level attribute all the candidates have this ufrag/pwd, if it is a media level attribute all candidates associated with this medialine share the same ufrag/pwd.

I'd be happy to make this clarification in the ICEbis.


Cheers,
Ari