Re: [SPAM] WebRTC Spec Questions - 'How STUN can minimize latency', 'non BUNDLE-aware criteria' and 'option to use reuse ICE candidates'

> On 31 Aug 2015, at 18:07, David Dias <daviddias@ipfs.io> wrote:
> 
> Hi all,
> 
> Going through the latest published version of the WebRTC W3C working draft, some questions emerged that I would like to request for clarification. 
> 
> Since I haven’t had the opportunity to introduce myself, let me do that first. I’m David, I’ve a background in communication networks and P2P systems, I’m part of Protocol Labs team(http://ipn.io/ <http://ipn.io/>) and currently working on the IPFS project(http://ipfs.io/ <http://ipfs.io/>). We are interested in being close to the WebRTC WG, learn from the work that has been done creating this specification and expose how WebRTC solved some of the key obstacles that are transversal to P2P applications, while at the same time, providing our input, which we hope we can bring some value. I’ve already had the opportunity to talk with Dominique and Vivien and learn how best to follow and contribute to the WG.

Welcome to the party :-) Some of your questions are more on the protocol side, so might be better aimed at our sister group at the
IETF (rtcweb). In particular I’d encourage you to look at how the rtcweb data channel is defined.

> 
> Back to the questions, these are:
> 
> http://www.w3.org/TR/webrtc/#dictionary-rtciceserver-members <http://www.w3.org/TR/webrtc/#dictionary-rtciceserver-members>
> it is desirable to have a STUN server between every layer of NATs in addition to the TURN servers to minimize the peer to peer network latency.
> 
> I’m not sure if I understand why a STUN server can minimize latency in a multi NAT scenario.

I think the aspiration is that the p2p connection might be achieved within the outer NAT - avoiding the need to traverse 
out of (say) a corporate internet gateway. An example might be a call between people at 2 different branch offices of the same company. 
Each branch might have a local NAT for their wifi and the company a NAT at their internet gateway. That internet gateway might be on a 
different continent from either or both users. 

> 
> http://www.w3.org/TR/webrtc/#rtcbundlepolicy-enum <http://www.w3.org/TR/webrtc/#rtcbundlepolicy-enum>
> If the remote endpoint is not BUNDLE-aware, negotiate only one audio and video track on separate transports.
> 
> What is the criteria, for non BUNDLE-aware clients, to establish only one audio and video track only why is this considered a ‘balanced’ policy?
> 
> Also, is there any ICE candidates reuse, specially the non relay ones? One thing that we learned with building libp2p (the network stack of IPFS) is that we can leverage very cheap NAT hole punching by using reusing ports (e.g with TCP REUSEPORT) and executing the protocol multiplexing in userspace.

Yes. That is the effect of BUNDLE - it groups all the media and data that can be multiplexed over a single candidate pair.
A typical webrtc session will have voice, video and data all BUNDLED into a selected candidate pair.

Tim.



> 
> Thank you.
> 
> Best regards,
> David Dias
> http://daviddias.me/ <http://daviddias.me/>

Received on Tuesday, 1 September 2015 09:28:48 UTC