On Tue, Jun 1, 2010 at 5:12 PM, Mark Frohnmayer <span dir="ltr">&lt;<a href="mailto:mark.frohnmayer@gmail.com">mark.frohnmayer@gmail.com</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

On Tue, Jun 1, 2010 at 4:35 PM,  &lt;<a href="mailto:L.Wood@surrey.ac.uk">L.Wood@surrey.ac.uk</a>&gt; wrote:<br>
&gt; On 2 Jun 2010, at 00:07, Mark Frohnmayer wrote:<br>
&gt;&gt; A single UDP socket can host multiple connections (indexed by packet<br>
&gt;&gt; source address), so even a modest limit on actual number of sockets<br>
&gt;&gt; wouldn&#39;t be a big impediment.<br>
&gt;<br>
&gt; Um, NAT?<br>
<br>
You would want to index by the NAT&#39;d address.  In the case of peer<br>
introduction and connection a third party is needed to provide the<br>
external send-to address.<br>
<br></blockquote><div><br>In some cases you need to use UPNP to NAT, but in general the 3rd party connection facilitator will help. The UPNP is mostly needed so that clients can _host_, which is not the goal here.<br><br>

If we assume a public, carefully set up UDP host, then nearly anyone can connect if UDP is allowed at all. No NAT is required in this case. And I think this is the common case, since we are not trying to run service hosts in the browser at this time.<br>

<br>If you have any sort of connection identifier (typically port will be different even if IP is not), then you can multiplex by that.<br><br>(Also, hi! This is my first post. I&#39;m Ben Garney, I worked at PushButton Labs on Flash game technology (<a href="http://www.pushbuttonengine.com">www.pushbuttonengine.com</a>, <a href="http://www.pushbuttonlabs.com">www.pushbuttonlabs.com</a>). Naturally, seeing browser capabilities expand either by plugin or native capabilities is exciting. Before I worked at PBL I worked with Mark at GarageGames on networking technology, among other things.)<br>

<br>Ben<br></div></div>