Re: [rtcweb] When are ICE candidates added to the SDP
Eric Rescorla <ekr@rtfm.com> Mon, 12 May 2014 15:18 UTC
Return-Path: <ekr@rtfm.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1])
by ietfa.amsl.com (Postfix) with ESMTP id CE8FD1A0726
for <rtcweb@ietfa.amsl.com>; Mon, 12 May 2014 08:18:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.977
X-Spam-Level:
X-Spam-Status: No, score=-1.977 tagged_above=-999 required=5
tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001,
RCVD_IN_DNSWL_LOW=-0.7] 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 YR1IwCVO6k7N for <rtcweb@ietfa.amsl.com>;
Mon, 12 May 2014 08:18:00 -0700 (PDT)
Received: from mail-we0-f182.google.com (mail-we0-f182.google.com
[74.125.82.182])
by ietfa.amsl.com (Postfix) with ESMTP id 26A131A0713
for <rtcweb@ietf.org>; Mon, 12 May 2014 08:18:00 -0700 (PDT)
Received: by mail-we0-f182.google.com with SMTP id t60so7049396wes.13
for <rtcweb@ietf.org>; Mon, 12 May 2014 08:17:53 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20130820;
h=x-gm-message-state:mime-version:in-reply-to:references:from:date
:message-id:subject:to:cc:content-type;
bh=IpR6dyE5CK7vOCe7rk55hOOOj8GchrM1JqiFaHVJd9U=;
b=jaT9ZyvEDbsb4ugJRLAC60brun5d6FsKElag+zDW49bv+9iHCn0nGP5K5SmK+XZTxg
CEToenXd9tIKNOkquxalPfjEKyv+DWGeJlmBlF712DYB/g4mVAEWQvpgeIRsdAF6LpC4
UQqiHKWgmsRVZdMU7LiGpc9ErZaNwjuvYEPvGoDJ9JVPoRwQ/AtHCnJNWiUfyuaut6Q8
yEQFx5Ip5vCiY1z1oNJLp5CUmFARijv7KzkbuGqeP+cqWe+rwa0t5mFcZs/iPbkuox+x
jGej1lv+zW1OToCZO0VyTSlhLxNMs9+iWVXcnLxsqP5bfYN2EFIhQtp/qfwyzfs7WOx2
z0TA==
X-Gm-Message-State: ALoCoQlYMZYokObfd1Tx992IwbK4moId482fjfhZ+ZahFzwX+EdoOuJwSxB7eqfyLLgaNp6QPnC4
X-Received: by 10.194.62.176 with SMTP id z16mr2117604wjr.76.1399907873674;
Mon, 12 May 2014 08:17:53 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.216.218.198 with HTTP; Mon, 12 May 2014 08:17:13 -0700 (PDT)
X-Originating-IP: [74.95.2.168]
In-Reply-To: <5370D1E3.7040809@alvestrand.no>
References: <CABcZeBNUTf42tS9FrjS9Q6Zk8LBkhpKOR1z2v8MHoeNEUf93Mw@mail.gmail.com>
<56C2F665D49E0341B9DF5938005ACDF82F69E8@DEMUMBX005.nsn-intra.net>
<CABcZeBO1Z0SnTUixjV09ekw-mb=YyzHjOV-b-MMUZy7sx32h6Q@mail.gmail.com>
<5370D1E3.7040809@alvestrand.no>
From: Eric Rescorla <ekr@rtfm.com>
Date: Mon, 12 May 2014 08:17:13 -0700
Message-ID: <CABcZeBNgJ_DP6XQ2L0fdrFEE-YWwuKCjq4f-X5cD6+pK3un8Hw@mail.gmail.com>
To: Harald Alvestrand <harald@alvestrand.no>
Content-Type: multipart/alternative; boundary=047d7ba979c28799b004f93573e0
Archived-At: http://mailarchive.ietf.org/arch/msg/rtcweb/UMk2uLrPm1-WpOEtz55lmI8N_Nw
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] When are ICE candidates added to the SDP
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.15
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: Mon, 12 May 2014 15:18:03 -0000
On Mon, May 12, 2014 at 6:51 AM, Harald Alvestrand <harald@alvestrand.no>wrote;wrote: > On 05/12/2014 02:39 PM, Eric Rescorla wrote: > > > > > On Mon, May 12, 2014 at 2:03 AM, Rauschenbach, Uwe (NSN - DE/Munich) < > uwe.rauschenbach@nsn.com> wrote: > >> Hi Eric, all, >> >> >> >> Is the consequence of “always trickle” that ICE candidates have to be >> added by non-trickling applications via SDP manipulation? >> >> I consider this indeed quite inconvenient for non-trickling applications. >> > > So, my understanding was that we had agreed that no candidates would > be available in the first CreateOffer() no matter how many candidates were > in the pool. > > The intent of this message is to ask if that is useful. > > > If an application is written as > > 1) CreateOffer() > 2) wait for the end of candidates callback > 3) negotiate > > then I would think it might have trouble if all the candidates are present > in the SDP, and therefore no callbacks were called. > Solution: Always fire the end of candidates callback after calling the > success callback, even if all candidates are in the SDP already. > So you mean: 1. CreateOffer() 2. success callback fires. 3. SetLocal() 4. onicecandidate(...) 5. onicecandidate(null) Then later (w/ no changes to the MSTs) 6. CreateOffer() 7. success callback fires 8. SetLocal (????) 9. onicecandidate(null) I believe this would be a change to the W3C API (not that this is necessarily bad) -Ekr > > -Ekr > > A way out would be that the SDP always contains the candidates >> collected so far (as currently defined in the JSEP snippet cited), >> >> or that a switch in the API allows an application to configure the >> behavior when adding ICE candidates. >> >> >> >> Kind regards, >> Uwe >> >> >> >> >> >> *From:* rtcweb [mailto:rtcweb-bounces@ietf.org] *On Behalf Of *ext Eric >> Rescorla >> *Sent:* Monday, May 12, 2014 8:52 AM >> *To:* rtcweb@ietf.org >> *Subject:* [rtcweb] When are ICE candidates added to the SDP >> >> >> >> See: https://github.com/rtcweb-wg/jsep/issues/11 >> >> >> >> Section 3.4 reads: >> >> >> >> When a new ICE candidate is available, the ICE Agent will notify the >> >> application via a callback; these candidates will automatically be >> >> added to the local session description. When all candidates have >> >> been gathered, the callback will also be invoked to signal that the >> >> gathering process is complete. >> >> >> >> However, we agreed in London that we would do "always trickle", and >> >> that even if there were candidates available at the time when CreateOffer >> >> (because of candidate pooling) was called, they would not be included >> >> in the initial offer. Consider the following sequence of events. >> >> >> >> 0. pc = new RTCPeerConnection(); >> >> 1. pc.AddStream(stream); >> >> 2. pc.CreateOffer(); >> >> 3. CreateOffer callback fires with offer A, and you call >> SetLocalDescription(); >> >> 4. onicecandidate fires with candidate X. >> >> 5. pc.CreateOffer() >> >> 6. CreateOffer callback fires with offer B. >> >> 7. onicecandidate fires with null. >> >> >> >> So, in London, I think we agreed that offer A would have no candidates. >> >> The above text implies that if you were to examine localdescription prior >> >> to step #5 or at step #7 it would contain candidate X, and probably that >> offer B would >> >> also contain candidate X. >> >> >> >> Note that it's quite inconvenient for non-trickle applications to never >> >> have any candidates in the SDP, especially after gathering is completed >> >> at step #7. However it also seems kind of inconsistent to only update the >> >> candidates after SetLocal() has been called. >> >> >> >> -Ekr >> >> >> > > > > _______________________________________________ > rtcweb mailing listrtcweb@ietf.orghttps://www.ietf.org/mailman/listinfo/rtcweb > > > > -- > Surveillance is pervasive. Go Dark. > > > _______________________________________________ > rtcweb mailing list > rtcweb@ietf.org > https://www.ietf.org/mailman/listinfo/rtcweb > >
- [rtcweb] When are ICE candidates added to the SDP Eric Rescorla
- Re: [rtcweb] When are ICE candidates added to the… Rauschenbach, Uwe (NSN - DE/Munich)
- Re: [rtcweb] When are ICE candidates added to the… Iñaki Baz Castillo
- Re: [rtcweb] When are ICE candidates added to the… Eric Rescorla
- Re: [rtcweb] When are ICE candidates added to the… Harald Alvestrand
- Re: [rtcweb] When are ICE candidates added to the… Eric Rescorla
- Re: [rtcweb] When are ICE candidates added to the… Harald Alvestrand
- Re: [rtcweb] When are ICE candidates added to the… Martin Thomson
- Re: [rtcweb] When are ICE candidates added to the… Rauschenbach, Uwe (NSN - DE/Munich)
- Re: [rtcweb] When are ICE candidates added to the… Rauschenbach, Uwe (NSN - DE/Munich)
- Re: [rtcweb] When are ICE candidates added to the… Eric Rescorla
- Re: [rtcweb] When are ICE candidates added to the… Martin Thomson
- Re: [rtcweb] When are ICE candidates added to the… Martin Thomson
- Re: [rtcweb] When are ICE candidates added to the… Rauschenbach, Uwe (NSN - DE/Munich)
- Re: [rtcweb] When are ICE candidates added to the… Silvia Pfeiffer
- Re: [rtcweb] When are ICE candidates added to the… Martin Thomson
- Re: [rtcweb] When are ICE candidates added to the… Cullen Jennings
- Re: [rtcweb] When are ICE candidates added to the… Eric Rescorla
- Re: [rtcweb] When are ICE candidates added to the… Justin Uberti
- Re: [rtcweb] When are ICE candidates added to the… Harald Alvestrand
- Re: [rtcweb] When are ICE candidates added to the… Iñaki Baz Castillo
- Re: [rtcweb] When are ICE candidates added to the… Sergio Garcia Murillo
- Re: [rtcweb] When are ICE candidates added to the… Iñaki Baz Castillo