Re: [rtcweb] Filling in details on "trickle ICE"
Bernard Aboba <bernard_aboba@hotmail.com> Tue, 28 August 2012 03:12 UTC
Return-Path: <bernard_aboba@hotmail.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7ACF821F848B for <rtcweb@ietfa.amsl.com>; Mon, 27 Aug 2012 20:12:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.359
X-Spam-Level:
X-Spam-Status: No, score=-102.359 tagged_above=-999 required=5 tests=[AWL=0.239, BAYES_00=-2.599, HTML_MESSAGE=0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9xuwiZiYDofS for <rtcweb@ietfa.amsl.com>; Mon, 27 Aug 2012 20:12:54 -0700 (PDT)
Received: from blu0-omc1-s28.blu0.hotmail.com (blu0-omc1-s28.blu0.hotmail.com [65.55.116.39]) by ietfa.amsl.com (Postfix) with ESMTP id 72BCB21F842F for <rtcweb@ietf.org>; Mon, 27 Aug 2012 20:12:54 -0700 (PDT)
Received: from BLU002-W161 ([65.55.116.7]) by blu0-omc1-s28.blu0.hotmail.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 27 Aug 2012 20:12:53 -0700
Message-ID: <BLU002-W161FE7AE76153E3E8A6A81293A10@phx.gbl>
Content-Type: multipart/alternative; boundary="_92527f5c-e9ac-4243-b55f-d9c7c3c400f5_"
X-Originating-IP: [24.16.96.166]
From: Bernard Aboba <bernard_aboba@hotmail.com>
To: Francois Audet <francois.audet@skype.net>
Date: Mon, 27 Aug 2012 20:12:54 -0700
Importance: Normal
In-Reply-To: <66F9C712A970F74A8376BBE53013193C0DD0C76C@tk5ex14mbxc272.redmond.corp.microsoft.com>
References: <CABcZeBMzgAs=hK38hCjS7t6yLjkTydS2TQUb8R3rBbRKGakVdQ@mail.gmail.com><CABkgnnVBBAH=HCkn_cksBs_9A_hm=VfFwcTtvOM3C7XB2h2KTA@mail.gmail.com><CABcZeBMFUFjU=FQo5LeJrcMfajeae0j+PWw5U2g5dUQNcJLWaA@mail.gmail.com><CABkgnnXiL3_U+Hci9ooDqBCsoV3KF8pwgcf9zbuN6EKZkK+aiQ@mail.gmail.com><CABcZeBNkkH93ybuMWoFg-ddKWnRgdn2Vgyb50W21A2GoMWxw6Q@mail.gmail.com><CABkgnnXQ25ZYNqeO+=FsYDR3aNvFS2zvrKWGs5o=h8m+Eq=Y+Q@mail.gmail.com><3B8DB12B-ABB3-4AC2-A0A0-93DC62C619D3@iii.ca><CABkgnnU3ecmhUwCYHmppwLJz-nbSA6=VRF7nF7wcpb+5QAWmdQ@mail.gmail.com>, , <E17CAD772E76C742B645BD4DC602CD81069D82BF@NAHALD.us.int.genesyslab.com>, , <AE1A6B5FD507DC4FB3C5166F3A05A4840E4E7B56@tk5ex14mbxc272.redmond.corp.microsoft.com>, , <E17CAD772E76C742B645BD4DC602CD81069D8500@NAHALD.us.int.genesyslab.com>, , <AE1A6B5FD507DC4FB3C5166F3A05A4840E4E7C02@tk5ex14mbxc272.redmond.corp.microsoft.com>, , <503BDC75.7050008@stpeter.im> <BLU002-W2286956624CC6600038246993A20@phx.gbl>, <503BEEFD.40301@jitsi.org> <BLU169-DS457B54FA311A048E5E68B093A20@phx.gbl>, <66F9C712A970F74A8376BBE53013193C0DD0C76C@tk5ex14mbxc272.redmond.corp.microsoft.com>
MIME-Version: 1.0
X-OriginalArrivalTime: 28 Aug 2012 03:12:53.0685 (UTC) FILETIME=[0393AE50:01CD84CB]
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Filling in details on "trickle ICE"
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Aug 2012 03:12:55 -0000
Francois said: > Wouldn't the same mechanism as XEP-0176 work with SIP too, by sending new offer/answers with new candidates? > > In either cases, it is true that the "trapezoid" model makes this process more difficult than with the "triangle" model. > > But you don't *have* to do trickle ICE don't you, in the trapezoid scenario (especially when involving protocol mapping). [BA] Looking at XEP-0176 Section 5.8, it does seem possible to use new offer/answers with new candidates to similar effect. Here is what Section 5.8 says: Section 5.8 Negotiating a new candidate Even after media has begun to flow, either party MAY continue to send additional candidates to the other party (e.g., because the user agent has become aware of a new media proxy or network interface card). Such candidates are shared by sending a transport-info message.... The receiving party MUST acknowledge receipt of the candidate. The parties would check the newly-offered candidate for connectivity, as described previously. If the parties determine that media can flow over the candidate, they MAY then use the new candidate in subsequent communications. [BA] If ICE completed and media was already flowing, the controlling agent can generate a RE-INVITE with a candidate from the in-use pair as the default as well as additional candidates. There is no need to do an ICE restart. As described in RFC 5245 Section 8.1.2, if the additional candidate ends up in a highest-priority nominated candidate-pair, then an updated offer is sent: * If an agent is controlling, it examines the highest-priority nominated candidate pair for each component of each media stream. If any of those candidate pairs differ from the default candidate pairs in the most recent offer/answer exchange, the controlling agent MUST generate an updated offer as described in Section 9. If the controlling agent is using an aggressive nomination algorithm, this may result in several updated offers as the pairs selected for media change. An agent MAY delay sending the offer for a brief interval (one second is RECOMMENDED) in order to allow the selected pairs to stabilize. Details of the updated offer are described in RFC 5245 Section 9.1.2.2: If an agent generates an updated offer including a media stream that was previously established, and for which ICE checks are in the Completed state, the agent follows the procedures defined here. The default destination for media (i.e., the values of the IP addresses and ports in the m and c lines used for that media stream) MUST be the local candidate from the highest-priority nominated pair in the valid list for each component. This "fixes" the default destination for media to equal the destination ICE has selected for media. The agent MUST include candidate attributes for candidates matching the default destination for each component of the media stream, and MUST NOT include any other candidates. In addition, if the agent is controlling, it MUST include the a=remote-candidates attribute for each media stream whose check list is in the Completed state. The attribute contains the remote candidates from the highest-priority nominated pair in the valid list for each component of that media stream. It is needed to avoid a race condition whereby the controlling agent chooses its pairs, but the updated offer beats the connectivity checks to the controlled agent, which doesn't even know these pairs are valid, let alone selected. See Appendix B.6 for elaboration on this race condition.
- [rtcweb] Filling in details on "trickle ICE" Eric Rescorla
- Re: [rtcweb] Filling in details on "trickle ICE" … Cullen Jennings
- Re: [rtcweb] Filling in details on "trickle ICE" Martin Thomson
- Re: [rtcweb] Filling in details on "trickle ICE" Eric Rescorla
- Re: [rtcweb] Filling in details on "trickle ICE" Martin Thomson
- Re: [rtcweb] Filling in details on "trickle ICE" Eric Rescorla
- Re: [rtcweb] Filling in details on "trickle ICE" Martin Thomson
- Re: [rtcweb] Filling in details on "trickle ICE" Cullen Jennings
- Re: [rtcweb] Filling in details on "trickle ICE" Martin Thomson
- Re: [rtcweb] Filling in details on "trickle ICE" Jim Barnett
- Re: [rtcweb] Filling in details on "trickle ICE" Martin Thomson
- Re: [rtcweb] Filling in details on "trickle ICE" Matthew Kaufman
- Re: [rtcweb] Filling in details on "trickle ICE" Jim Barnett
- Re: [rtcweb] Filling in details on "trickle ICE" Matthew Kaufman
- Re: [rtcweb] Filling in details on "trickle ICE" Peter Saint-Andre
- Re: [rtcweb] Filling in details on "trickle ICE" Bernard Aboba
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Bernard Aboba
- Re: [rtcweb] Filling in details on "trickle ICE" Francois Audet
- Re: [rtcweb] Filling in details on "trickle ICE" Bernard Aboba
- Re: [rtcweb] Filling in details on "trickle ICE" Francois Audet
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Cullen Jennings (fluffy)
- Re: [rtcweb] Filling in details on "trickle ICE" Lishitao
- Re: [rtcweb] Filling in details on "trickle ICE" Magnus Westerlund
- Re: [rtcweb] Filling in details on "trickle ICE" Martin Thomson
- Re: [rtcweb] Filling in details on "trickle ICE" Justin Uberti
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Justin Uberti
- Re: [rtcweb] Filling in details on "trickle ICE" Cullen Jennings (fluffy)
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Christer Holmberg
- Re: [rtcweb] Filling in details on "trickle ICE" Matthew Kaufman
- Re: [rtcweb] Filling in details on "trickle ICE" Christer Holmberg
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Christer Holmberg
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Christer Holmberg
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Christer Holmberg
- Re: [rtcweb] Filling in details on "trickle ICE" Emil Ivov
- Re: [rtcweb] Filling in details on "trickle ICE" Ted Hardie
- Re: [rtcweb] Filling in details on "trickle ICE" Christer Holmberg