Skype is a very handy VoIP tool that comes in real handy when you’re not close to your family or even for business calls.
Skype, unlike many other VoIP systems, does not rely on a set of central servers to transmit voice and videos packets. But the connections are not direct between two persons making a call, they have to go through an intermediary that is publicly visible. This is usually performed via central servers that users can connect to. Skype does not rely on central servers but instead on what they call “super nodes”.
So, what is a super node ? Well a super node is nothing but a Skype user that meets some defined criteria. When a user becomes a super node, he/she receives a lot of connections from many different other unknown Skype users that will use his/her computer as the intermediary described above.
Alright, so how does one become a super node and what does it imply ? Well, anyone can become a super node, you just need to have a “good” internet connection (and when I mean good, I mean > 56k), probably a fixed IP and more importantly have Skype online most of the time. Those would be the most important criteria, there might be more. But once you meet the criteria, you become a super node. Are you asked about it ? No ! And what does this mean ? Well it means that you are going to receive many connections from other users and this is going to use a good part of your bandwidth. I have a relatively good connection and I keep my Skype online 24/7. I have actually checked my firewalls event log and found several thousands of connections a day, so I guess I’m a super node…
Where does this leave us ? Well, Skype needs and relies on super node. It is a free service after all and it’s normal to give something back to help it working. My issue with this is that I was never asked for this (excepted in the EULA as always). If Skype left me the choice, I would volunteer bandwidth most of the day, but not at night for example. But they don’t and that annoys me.
So, how does one stops being a super node ?
- Open the registry editor
- Add a “Skype” under HKEY_LOCAL_MACHINE\SOFTWARE\Policies\
- Add a “Phone” under HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Skype\
- Add a new DWORD value called DisableSupernode and set its value to 1
This is a pity because Skype does need super nodes. So for me, I think I’ll keep Skype open most of the time unless I need my full bandwidth. The problem is, being a super node might actually damage your Skype calls performances which is less than desirable… (Also, if you do play online games sometimes, remember to turn Skype off and if you need something to call your mates, you can use plenty of other voice chatting programs)
For a very detailed white-paper on how Skype works, see this.