[Nice] I want to setup public TURN server

Youness Alaoui youness.alaoui at collabora.co.uk
Wed Oct 3 15:19:36 PDT 2012

On 10/02/2012 02:44 PM, Askar Safin wrote:
> Hi.
> I want to setup/create public TURN server, because:
> 1. I just want to help people :) Two TURN servers (Numb and mine) is better than just one (Numb)
That's a good idea, I don't know of any publically available TURN server.

> 2. Numb conforms to old standards (see prev. message: http://lists.freedesktop.org/archives/nice/2012-October/000654.html ). I want to create server which will conform to modern standards and even to exotic ones (such as TURN TCP RFC 6062). Moreover, I want to run a lot of different TURN daemons on different ports. This makes my server ideal for testing/research and finding bugs in TURN daemons and clients.
Actually, see their website (and recent mailing list messages), their server is
up to date and supports the latest RFC.

> 3. I didn't find on Numb main page phrase "You may use this server as you want, even for production purposes, not only to testing ones". So, I'm not sure Numb allows real usage (not only testing usage). My server page will explicitly say that you may use it for any purposes, even you can hardcode server address and account info to your production-use program. (but see questions later)
I believe that the Numb server is open to be used in the real world. Their
description talks about VoIP at home and office, and it says it's a relay server
for SIP phones, so I think it's meant to be used for real use cases.
Also, if it was meant only for testing purposes, then it would have been specified.

> 4. I tried to access Numb server via Icedemo program (Icedemo program is sample program which comes with PJSIP tarball, PJSIP is library similar to libnice, http://www.pjsip.org , http://www.pjsip.org/pjnath/docs/html/ice_demo_sample.htm ). Sometimes it works, sometimes no (but if I use TURN server running on my local computer, all is OK). I don't know why. Maybe this is because Numb uses old standards. Maybe this is because Numb is over-used, i. e. busy and has a deny-of-service problem. In both cases it is good to setup my server.
It's possible that it's because you use it too much. Any TURN server will have a
maximum allocation limit. If you ctrl-C your program or if icedemo doesn't
destroy the allocation, then your allocation requests will probably start
failing.. after they expire (usually 5 minutes), then it starts working again.
I've had this problem often when testing TURN support in libnice, that's why I
was using a local turnserver that I could restart whenever my allocations were
filled (instead of waiting 5 minutes).

> But I have a lot of questions about my idea.
> 1. Is this good idea? Do you really need this server? Or there is no needing for such server? Will it really helpful?
It's a good idea, but I'd believe it makes more sense for a company to do it
rather than by a single individual. You need your users to trust you (not to
listen/save their traffic) and for your service to be reliable (no connection
drops and no speed drops)
Usually though, if it's for a SIP phone, the connection is between the SIP
server (not behind a NAT) and the user, and they don't need a relay. When it
comes to a real p2p which might require it, usually the service provider (Google
for gtalk for example, Microsoft for Windows Live Messenger, Yahoo for Yahoo
Messenger, etc..) will provide his own server for his own users.
Some won't provide it (like some xmpp servers for example) and that's where the
client needs to have a default turn server to fallback to.

> 2. Let's imagine my server became very popular. More popular than Numb is. How much traffic will it receive?
No idea, but imagine 100 people all the time (that's not a lot) doing
voice+video calls.. do the math.
I think it might be better for you to ask Numb for their statistics if they are
willing to share.

> 3. What hosting is suitable for this? What is recommended: a typical VPS or some real physical server? Yes, I received the prev. message from Youness Alaoui http://lists.freedesktop.org/archives/nice/2012-October/000650.html . This message says that this is POSSIBLE to put server to VPS and even to NAT (of course with port redirected to some global-IP-machine). But what is recommended/good-idea? VPS or physical server? If it will receive a lot of traffic?
I suppose either would be fine.

> 4. How many money will it cost (if I will keep in mind traffic size)? Of course, I will pay. I will not take donations or something like that. I just will pay. I want to help other people. But if this is really a lot of money, I probably throw/disregard this idea.
It will depend on the traffic and on the service provider.. do the math cause I
don't know.

> 5. Is this good idea to allow any usage of server? Or it is recommended for me just to say "only testing purposes"?
the "only for testing purposes" is a way to limit the bandwidth used.

> 6. I want to create one standard username and password, for example "test" and "1234". Is this good idea? Or it is recommended to require registration like Numb does?
No, it's not. you want to limit the number of allocations per user, you don't
want someone to allocate 65000 ports and blocking access to others.

> 7. I want to allow people to hardcode my server name, username and password to any program. Of course hardcoding is always bad, I just mean I ALLOW this and not RECOMMEND, I just mean that I allow making my server the default server supported by some program, unlike stunserver.org does (the stunserver.org page says: don't make stunserver.org the default server, just suggest it). Is this good idea?
Yeah sure, it's possible to tell people to use your server as a default, but it
will of course increase your users, and so your bandwidth and the cost... (and
will decrease performance for others using the server).

> Askar Safin
> _______________________________________________
> nice mailing list
> nice at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/nice

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 259 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freedesktop.org/archives/nice/attachments/20121003/09d55aaf/attachment-0001.pgp>

More information about the nice mailing list