Re: [webrtc-pc] STUN/TURN Auto Discovery handling

@alvestrand  


> 2. claims that TURN server discovery happens in ICE agent. There's 
no ICE protocol involved in sections 4 and 5 of -server-discovery.

Why I thought ICE agent is connected with Discovery and has benefits 
to implement in PC. 
1. Anycast discovery depends on STUN client functionality (sends an 
allocate request).
so STUN client functionality is needed for TURN discovery,
and ICE agent implements STUN engine/ client functionality. 
2. PC consumes TURN server list. If browser controls/filters TURN 
server list then maybe waste of time to discover app level (and may 
get credentials for all TURN servers), when after PC creation browser 
policy will filter out some, so apply filter ASAP during discovery may
 adds some benefits. Filter it low level, and return servers that will
 be accepted latter, and then get credential only for servers that 
Browser local policy allows.
3. For Optimization: In PC the ICE Agent needs/consumes a list of TURN
 servers, so may be beneficial to have a candidate list information in
 ICE agent ASAP(, or in case of bowser control, a filtered candidate 
list). Even before it has TURN servers received a credential to maybe 
pre-setup network TLS connection for faster connect.
4. I thought ICE agent works in webRTC low level and my feeling was 
that discovery would work better/fits better there, because:
   - could easily recognize network changes, 
   - help TURN discovery fast adoption, because gives a uniform 
default discovery process, and hides discovery complexity (receives in
 an event a list of discovered servers, shouldn't do much for it).
5. DNS part is not so closely related to ICE Agent, but needs low 
level input. A DNS lookup needs low level info e.g DHCP "domain" 
attribute that is normally not available on WebApp level, but is only 
accessible in WebRTC engine level.

Because of 1. and 2. 3. I see still some benefits for integration TURN
 discovery in PC, but now I am less confident about that. 

Not sure if a separated API makes less or more confusion, and helps 
fast discovery adaptation.

-- 
GitHub Notification of comment by misi
Please view or discuss this issue at 
https://github.com/w3c/webrtc-pc/issues/941#issuecomment-264472513 
using your GitHub account

Received on Friday, 2 December 2016 14:57:36 UTC