W3C home > Mailing lists > Public > public-webrtc@w3.org > September 2012

RE: Phone call about ICE states

From: Jim Barnett <Jim.Barnett@genesyslab.com>
Date: Thu, 6 Sep 2012 06:32:10 -0700
Message-ID: <E17CAD772E76C742B645BD4DC602CD8106A98BB3@NAHALD.us.int.genesyslab.com>
To: "Cullen Jennings (fluffy)" <fluffy@cisco.com>
Cc: "Justin Uberti" <juberti@google.com>, <public-webrtc@w3.org>
Cullen,
  Thanks  for the explanation.  I'm wondering whether in Justin's
proposal we can use tracks instead of introducing new transport objects.
The case where multiple  tracks were tied to the same ICE machine
wouldn't be a problem - they all show the same state and receive the
same events at the same time.  But if you can have multiple ICE machines
for a single track, you would  need a new transport object, separate
from the track.

There still could be a higher-level API on PeerConnection that gave a
simplified view  of the state (things  like 'someone has started x' and
'everyone has finished x').  

- Jim
P.S. I'll be on the call too, but only for half an hour.  

-----Original Message-----
From: Cullen Jennings (fluffy) [mailto:fluffy@cisco.com] 
Sent: Thursday, September 06, 2012 9:23 AM
To: Jim Barnett
Cc: Justin Uberti; <public-webrtc@w3.org>
Subject: Re: Phone call about ICE states


Sorry Jim ... I should have been been clearer earlier. 

When we are using bundle, there is probably only one ICE machine and
none of this is an issue. But in the case where one end does not support
bundle, then we probably end up with one ICE machine per track because
each one needs to set up a separate DTLS/SRTP flow to the far side.

A single ICE machine can handle multiple interfaces but it only sets up
a single logical flow. 

One of my goals for the design is the application does not have to worry
about if the far end supports bundle or not and that a app written will
work fine regardless of if the far end supports it or not. 


On Sep 6, 2012, at 5:39 AM, Jim Barnett <Jim.Barnett@genesyslab.com>
wrote:

> Justin,
> For my edification, what is the situation when you have a single
mediastream split over multiple ICE machines?  Is that because there are
multiple interfaces available?
>  
> -          Jim
>  
> From: Justin Uberti [mailto:juberti@google.com]
> Sent: Wednesday, September 05, 2012 5:13 PM
> To: Jim Barnett
> Cc: Cullen Jennings (fluffy); public-webrtc@w3.org
> Subject: Re: Phone call about ICE states
>  
> Right - I would suggest we have the single API from Option A, which I
think is good enough in most cases, plus an API to get per-transport
state if you need more info.
>  
> Note that tracks are not tied to ICE machines or components. You can
have multiple MediaStreams on a single ICE machine, or a single
MediaStream split between multiple ICE machines.
>  
> 
> On Wed, Sep 5, 2012 at 2:05 PM, Jim Barnett
<Jim.Barnett@genesyslab.com> wrote:
> Justin,
> That's what I was wondering about too.  (Could the transport objects
be tied to tracks?)  You could fire events for the state changes on each
transport object/state machine, and still have a very simple
higher-level conbined state and query API (as in Option B) at the
PeerConnection level.  Developers who only wanted to know when things
got started and when everything got finished could use the
PeerConnection API.  Developers who wanted to manage at a lower level
could use the events at the individual ICE machine level.
>  
> -          Jim
> 
>  
> From: Justin Uberti [mailto:juberti@google.com]
> Sent: Wednesday, September 05, 2012 5:01 PM
> To: Jim Barnett
> Cc: Cullen Jennings (fluffy); public-webrtc@w3.org
> Subject: Re: Phone call about ICE states
>  
> I'll be there.
>  
> I'd also like to propose an Option C, where we have a list of
read-only transport objects (1 for each machine), where each transport
has a state as in Option A. This would avoid the issues you mention with
Option A.
>  
> 
> On Wed, Sep 5, 2012 at 1:54 PM, Jim Barnett
<Jim.Barnett@genesyslab.com> wrote:
> Cullen,
>   Just asking out of curiosity:  when you have multiple ICE state 
> machines, do they correspond to the different tracks in the 
> PeerConnection, or is the mapping more complex than that?
> 
> - Jim
> 
> -----Original Message-----
> From: Cullen Jennings (fluffy) [mailto:fluffy@cisco.com]
> Sent: Wednesday, September 05, 2012 3:31 PM
> To: public-webrtc@w3.org
> Subject: Phone call about ICE states
> 
> 
> I want to talk about ICE states a bit as this has been slowing me
down.
> I set up a bridge for tomorrow at 8 am pacific.  If anyone wants to 
> join me, I want to talk about the two proposals in the attached 
> slides. If no one cares, I will just talk to my imaginary friends 
> about making imaginary progress.
> 
> 
> Topic: WebRTC ICE State Reporting
> Date: Thursday, September 6, 2012
> Time: 8:00 am, Pacific Daylight Time (San Francisco, GMT-07:00) 
> Meeting
> Number: 207 963 719 Meeting Password: w3c
> 
> 
> -------------------------------------------------------
> To join the online meeting (Now from mobile devices!)
> -------------------------------------------------------
> 1. Go to
> https://cisco.webex.com/ciscosales/j.php?ED=204263572&UID=0&PW=NNzhiMz
> A1
> ZDI5&RT=MiM0
> 2. Enter your name and email address.
> 3. Enter the meeting password: w3c
> 4. Click "Join Now".
> 
> To view in other time zones or languages, please click the link:
> https://cisco.webex.com/ciscosales/j.php?ED=204263572&UID=0&PW=NNzhiMz
> A1
> ZDI5&ORT=MiM0
> 
> ----------------------------------------------------------------
> ALERT:Toll-Free Dial Restrictions for (408) and (919) Area Codes
> ----------------------------------------------------------------
> 
> The affected toll free numbers are: (866) 432-9903 for the San 
> Jose/Milpitas area and (866) 349-3520 for the RTP area.
> 
> Please dial the local access number for your area from the list below:
> - San Jose/Milpitas (408) area: 525-6800
> - RTP (919) area: 392-3330
> 
> -------------------------------------------------------
> To join the teleconference only
> -------------------------------------------------------
> 1. Dial into Cisco WebEx (view all Global Access Numbers at 
> http://cisco.com/en/US/about/doing_business/conferencing/index.html
> 2. Follow the prompts to enter the Meeting Number (listed above) or 
> Access Code followed by the # sign.
> 
> San Jose, CA: +1.408.525.6800 RTP: +1.919.392.3330
> 
> US/Canada: +1.866.432.9903 United Kingdom: +44.20.8824.0117
> 
> India: +91.80.4350.1111 Germany: +49.619.6773.9002
> 
> Japan: +81.3.5763.9394 China: +86.10.8515.5666
> 
> 
> 
> To add this meeting to your calendar program (for example Microsoft 
> Outlook), click this link:
> https://cisco.webex.com/ciscosales/j.php?ED=204263572&UID=0&ICS=MI&LD=
> 1&
> RD=2&ST=1&SHA2=5j5w75EhhDNyDcyfDZrKGY3Wjwpx8bikjAOdbAjI4xw=&RT=MiM0
> 
>  
Received on Thursday, 6 September 2012 13:32:22 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 6 September 2012 13:32:23 GMT