Corante

Quote
"I can’t think of anything that demonstrates the sovereign nature of the self better than a blog.” - Doc Searls
About the Author
stowegold150x150.jpg
Stowe Boyd is a well-known media subversive, and an internationally recognized authority on real-time, collaborative and social technologies. His new blog is Message.
In the Boston area?: Join us on June 11 for Startups and the Cloud, a free event on cloud computing with insights from Intuit founder Scott Cook and others

Get Real

« What I Learned at Les Blogs | Main | Microsoft Office shared in real-time »

May 01, 2005

Skype: be afraid

Email This Entry

Posted by Marc Eisenstadt

Stowe and I were having a quick catchup chat a few weeks back... starting with a bit of impromptu IM, but then wanting to branch off into a voice or voice/video session, or simply agree to do one 'later' given that we both had other pending gigs.... so Stowe asked for my Skype ID, and I mentioned that I had removed it from my machine, which prompted me to think that I'd better explain why!

I had found my machine encumbered by an alarmingly large number of attempted simultaneous TCP connections (enough to crash my browser at one point, and generally to slow down my machine, even though an 'open port' is not in-and-of itself alarming: it depends what happens on that port!), but looking around the web I found very few details to help me. Most items that I found expressing some modest concerns about Skype 'bandwidth' or 'CPU' usage were erroneously directed at the voice codec ('can it cope?', 'how much bandwidth does it use') and the encryption ('how much horsepower does it need'?). Those are the wrong worries: Skype is generally an awesome performer on both fronts, requiring pretty modest resources by today's standards (5Kbps for voice traffic, for example!). It's your machine's role in the big-picture P2P communications flow that you need to be worried about: think of your machine as a key hub for the world's voice traffic and you'll see what I'm talking about -- now that's something of an over-statement, but is closer to what you need to concentrate on, rather than the CPU-demands of the voice codec and encryption algorithm for your own personal calls!

Skype is the darling of industry, geeks, academics, and consumers, (hey, I'm a huge fan myself, sometimes wearing each of those four hats -- the dang thing is one of the greatest creations since sliced bread). But I couldn't believe that anything that was killing my machine could be so universally loved. Had I missed something? Lo and behold, a little more digging around brought a few more things to my attention.

Here are three sources of interest:

a) This highly technical article by Salman A. Baset and Henning Schulzrinne: "Analysis of the Skype Peer-to-Peer Internet Telephony Protocol". Here's a tiny excerpt to whet your appetite:


This report analyzes key Skype functions such as login, NAT and firewall traversal, call establishment, media transfer, codecs, and conferencing under three different network setups. Analysis is performed by careful study of Skype network traffic.
...
Like its file sharing predecessor KaZaa, Skype is an overlay peer-to-peer network. There are two types of nodes in this overlay network, ordinary hosts and super nodes (SN). An ordinary host is a Skype application that can be used to place voice calls and send text messages. A super node is an ordinary host’s end-point on the Skype network. Any node with a public IP address having sufficient CPU, memory, and network bandwidth is a candidate to become a super node. [emphasis mine]

b) A less technical article by Simson Garfinkel, "Can 9 Million Skype Users Be Wrong?", which says things like this:

"the Skype client running on your computer can and will relay calls between other network users without your knowledge. ... It makes sense that Skype would detect how much bandwidth you have... but... the algorithm that Skype uses to determine how much of this relaying it is allowed to engage in is proprietary, so we can't know for sure.

... The software has the capability of automatically updating and upgrading itself, allowing it to acquire new features at any time—potentially without the permission of the user. The software uses a secret protocol; all communications are encrypted. And Skype Technologies does its engineering in Tallinn, Estonia, has some business operations in London and registers its website in Amsterdam.

If I were going to write an information warfare thriller with a theme based on Invasion of the Body Snatchers, this is certainly where I would start. "

c) In-depth discussion of the Baset and Shulzrinne technical article in these Slashdot threads, including comments such as this one:

Calls made using the system are directed through 'Supernodes', which can be ordinary PC's with Skype installed. Machines on fast and well connected Internet feeds like the $Network are likely to automatically become 'Supernodes' and forward a considerable amount of traffic. This allows Skype to route other peoples Voice over IP calls using your machine and the university internet connection.

There's a lot of argument about how much of a resource hog Skype really is (and various commenters dispute Garfinkel's auto-update/bodysnatcher worry). I have in fact re-installed Skype on my machine recently in order to run some of my own empirical tests, and will report back with the results in due course. It certainly opens a lot of TCP ports, but that's not necessarily a bad thing depending on what exactly happens on those ports, as I mentioned above. Right now, I have yet to get a definitive result, but I'll keep poking around. Intuitively, I can assert (un-scientifically) that Skype is so much of a killer on my machine that even though I love it madly, I have to un-install disable it on occasion (after which my machine behaves wonderfully all over again). That's not good. I'll try to come back with a more scientific analysis in the next couple of weeks, but in the meantime would love to hear from others who have done the controlled experiments!

[tags: , , ]

Comments (13) + TrackBacks (0) | Category: Telecommunications


COMMENTS

1. Bryan Price on May 1, 2005 05:01 PM writes...

Yeah, I've noticed this as well. Even though I was doing nothing but surfing the web, I was noticing that my web surfing was going fairly slowly. I checked the lights on the router and noticed that I had continual traffic going on, for no apparent reason. Fire up tcpview from Sysinternals and saw that I had over one hundred connections that were being made through Skype.

I freaked, pulled the plug on Skype, and watch for the next 10 minutes as computers were still trying to connect to my machine. I couldn't understand why I had so many connections, until I read somewhere that Skype would sometimes take your high speed connection and use it as a hub.

I haven't uninstalled the program yet, I've got a couple of kids overseas that I really plan on using it with.

Permalink to Comment

2. Aswath on May 2, 2005 03:08 PM writes...

Is the codec consumption 5kbps or 5kBps? I thought it is the latter.

There is a theory that if the client is behind a symmetric NAT, then the application will not use this much resources that you are suggesting. Probably you can try that. This way you can use Skype and not have to disable on and off.

I am not sure what other applications will get affected when you di this.

Permalink to Comment

3. Michael Parekh on May 4, 2005 03:45 AM writes...

Good piece...is there anything in Skype's TOS that indicates they're doing this? I haven't checked, but will do so...

wondering if you've already checked...thanks.
michael

Permalink to Comment

4. phoneranger on May 4, 2005 09:29 AM writes...

I first learned about Skype's "borrowing" of my bandwidth and CPU from the folks at www.wavigo.com. I removed Skype from an old laptop that was really lumbering away. Bingo and now it's back to normal. I think Skype knows the jig is up. After uninstalling, they sent me a questionnaire asking why. Easy answer - it uses too many resources. BTW Wavigo seems to be much easier on my machine. Stanaphone too.

Permalink to Comment

5. Julian Bond on May 4, 2005 01:51 PM writes...

I have the same problem occasionally. My understanding is that if you have a public IP address for your machine and reasonably open firwall, then you are quite likely to become a supernode. If this happens there will quite large amounts of switching traffic going through your machine. But that you won't be passing voice traffic. The bandwidth requirements should be low. However some operating systems and especially routers (like early WRT54G) don't like handling these large numbers of TCP connections. They get so busy doing that they don't deal with your normal traffic.

There's a long thread about this here
http://forum.skype.com/viewtopic.php?t=13780&highlight=

My reaction to this is that a) I like Skype too much to drop it, and b) I like being a full peer on the net too much to give that up either. So when it happens I just kill Skype for a few minutes.

I think longer term Skype have to provide some user configurable limits on whether your machine becomes a supernode and how many connections it accepts.

Permalink to Comment

6. snarl on May 5, 2005 06:55 AM writes...

But isn't this the point of P2P telephony - the sharing of bandwidth across the entire network. Its part of the give and take. Isn't it?

Permalink to Comment

7. Marc Eisenstadt on May 5, 2005 07:20 AM writes...

Re snarl's comments: give-and-take is absolutely fine, it's just a question of knowing up-front HOW MUCH I'm giving, without having to be a detective! As Julian Bond says above, 'user configurable limits' would be a great step in the right direction.

However, it's wrong to think that problems only arise "if you have a resonably open firewall" - I sit behind a very tight firewall at work, and Skype still makes enough 'open port ATTEMPTS' to cause me many problems.

It is fundamentally wrong for such a low-hassle user-friendly tool to require so much sleeves-rolled-up detective work to figure out whether it's clobbering your machine.

Permalink to Comment

8. e-male on May 9, 2005 01:35 PM writes...

Good points all. Here is the original clause 3 of Skype's EULA when it was launched in the Fall of 2003.

3. Permission to Utilize.

In order to receive the benefits provided by the Skype Software, you hereby grant permission for the Skype Software to utilize the processor and bandwidth of your computer for the limited purpose of facilitating the communication between other Skype Software users.
You understand that the Skype Software will protect the privacy and integrity of your computer resources and communication and ensure the unobtrusive utilization of your computer resources to the greatest extent possible.

Skyper reserves the right to add additional features or functions to the Skype Software. When installed on your computer, the Skype Software periodically communicates with Skyper servers.

The Skype Software and Services may be incorporated into, and may incorporate, technology, software and services owned and controlled by third parties.

THE SKYPE SOFTWARE IS UTILIZED AND DISTRIBUTED BY THIRD PARTIES WHICH ARE UNRELATED TO SKYPER. YOU ACKNOWLEDGE THAT INSTALLATION OF THE SKYPE SOFTWARE WILL ALLOW THIRD PARTIES WHO ARE NOT AFFILIATED WITH SKYPER THE ABILITY TO COMMUNICATE WITH YOUR COMPUTER ("OUTSIDE PARTIES"). YOU AGREE THAT SKYPER WILL NOT BE LIABLE FOR ANY DAMAGE, CLAIM OR LOSS OF ANY KIND WHATSOEVER, INCLUDING BUT NOT LIMITED TO INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES AS STATED IN PARAGRAPH 9(a) ABOVE, RESULTING FROM ANY ACTIONS OR OMISSIONS OF THE OUTSIDE PARTIES.


... Apparently the Skypers have cleaned up their legal language in the current EULA, but the code still reels out your CPU and bandwidth as required... by other users.

As an alternative to Skype, try one of the new upstarts... Wavigo.

Permalink to Comment

9. Clint on May 12, 2005 06:04 AM writes...

In your article you mention that you disable Skype occasionally, and that your network performance speeds up. Do you know a way to disable Skype's peer-to-peer co-option of the computer without doing a complete un-install?

Permalink to Comment

10. Bohdana on May 13, 2005 07:44 PM writes...

Wavigo is Skype done right and honorably!
I have been using Wavigo now for several months and it works on dial up and the voice quality is awesome! I had to get rid of Skype, after I have found out why my computer runs so slow and i went and update memory first. Even after uninstall, I had to manually remove all of the still active processes. It will not take long time when others will realize, this Skype is taking advantage of them. They are making $$$ on these poor users, who are so clueless just as I was. I feel I was invaded by this company Skype. It was very hard to get rid of them….they are parasite. Ti is so hard to get rid of !!!
I wish those people writing so well about Skype would have good knowledge of Skype’s technology and would inform readers much better and in full truth! It is sneaky of Skype to give free technology just so they can get you, because many users have limitated technology knowledge, and the only one benefiting is Skype. They use computer resources of their users for others …how LOW!!!! I was exited abotu it at first an now i am very upset. No wonder Skype went out their way to promote “sharing is good” which is more like brainwash, so they can make $$$. Now that is my story….I USE WAVIGO it is done RIGHT!

Permalink to Comment

11. SometimesaGreatLotion on May 15, 2005 07:19 AM writes...

Does anyone here allow these kinds of programs to "start when windows starts" as they often install themselves? Or do you have Skype on all day? I usually don't and count on an email heads up to establish a sessions, admittedly less efficient, but hey, I'm paranoid!

Permalink to Comment

12. Milverton Wallace on May 15, 2005 12:13 PM writes...

Re your observation regarding Skype-jacking of my computer, hgow do you "disable" the app,as opposed to un-installing it?

best regards
Milverton

Permalink to Comment

13. Marc Eisenstadt on May 15, 2005 05:16 PM writes...

Re disabling vs uninstalling - I simply have stopped it from being a default startup item, so 'disable' is probably too strong a word. According to Bohdana (and by implication, Clint also) above, there is still some network traffic even when I'm not running Skype. I have yet to confirm this myself, but will certainly be interested to hear further evidence on tis front!

Permalink to Comment


EMAIL THIS ENTRY TO A FRIEND

Email this entry to:

Your email address:

Message (optional):




RELATED ENTRIES
Reminder -- /Message
/Message - A New Blog
The Individual Is The New Group -- Part 1
1000 Tags: Tag Advertising
Social Ethics And Technology Design
Nancy Hass on In Your Facebook.com
Black and White and Dead All Over: Is Newsprint Dead?
Anonymous Trolls, Beware: You Are Breaking Federal Laws