SIP vs. Skype, Making the "Open" Choice
techie34290 writes "If you were to make the choice between SIP and Skype for Linux, which one would you go for? Matt Hartley from MadPenguin.org says to opt for SIP. Why? "One tidbit of information that most people are not likely aware of is that when you install the Skype client, it will drain system resources by running as a supernode from time to time. Granted, this is not always the case; however, the very idea of my PC having its resources tied up for someone else's phone call is frankly maddening to me."
The sacrifice you make to have a 'free' phone service is your system resources. Without donating your clock cyles, you would have to pay skype to use servers that they would otherwise have to provide. And yes, if your system can handle it, it will act as a supernode from time to time. It is your choice, but very few things are truly free.
It's getting to the stage now where I know people who say "Skype" when they mean "VoIP/SIP". Admittedly, it's early days in terms of adoption of the technologies, but this is a little worrying. Seems like very few people in the real world have any concept of open standards etc.
of my PC having its resources tied up for someone else's phone call is frankly maddening to me
... but I have no problem with tying up someone else's resources when it's for my convenience ... ?
"the very idea of my PC having its resources tied up for someone else's phone call is frankly maddening to me."
Well, boo hoo. It's the way the system works. I seriously doubt any significant system resources would be used up for other people's calls. When you make your calls, it happens to other people. It's a give-pull situation where everyone has to share resources in order for the system to scale with the number of subscribers. Would you rather have nothing?
- It's not the Macs I hate. It's Digg users. -
Slashdot Burying Stories About Slashdot Media Owned
Sure, I prefer open solutions, but to say that Skype will drain your system's resources is just crap. A simple consumer firewall between your skype-running PC and the internet will prevent Skype from using your PC as a 'supernode'.
Awesome furniture, accessories and cabinetry in Santa Rosa, CA: http://humanity-home.com/
So - it's cool if others donate their time (and other resources) to give you something for free (SIP - both the protocol, but also a LOT of the programs for it), but if YOU have to give something of your resources (like bandwidth) for free - well, that's something COMPLETELY different.
Somehow I don't see how that works.
Sure, Skype is proprietary - but I've never paid anything for it (except bandwith), and it works just fine for me, so - to me at least - it's free (monetary, not libre). SIP - well, never tried anything that worked just as well as Skype, so it's libre, but it's not free to me (costs me and others resources like their and my time to get it working).
I don't really see the difference (but I'm not a fanatic proponent of Libre software).
We do not live in the 21st century. We live in the 20 second century.
Its worth considering Google Talk (Jingle protocol).
It uses XMPP (Jabber) then kicks up to Jingle for voice.
Nice.
the very idea of my PC having its resources tied up for someone else's phone call is frankly maddening to me
This strikes me as an attitude of someone who can't stand the idea that he's not in control of everything (which you never are). The real question is, does it use any significant resources that effect what you're trying to do at the time? Frankly I don't really care about 20-50 megabytes of memory, or 5% of my processor usage, or even 100% of my idle processor usage. Those numbers are all low enough that you'd more than likely never notice or miss those resources. I would be concerned if the app started taking up hundreds of megabytes of memory, or 30-40% of my processor time, or locked up system resources that interfere with other apps I'm running. So which is it? The author didn't provide us with any of that information, only the extremist position that ANY useage of his computers resources that wasn't for him was unacceptable. What a useless article.
AccountKiller
I recently discoffered jabbin.
http://www.jabbin.com/int/ it's free as in speech, and has voip support.
perhaps he should give it a try. there are windows, linux and mac releases.
Yes!
Sip plays merry hell with firewalls. Don't even think about it unless you've got a VPN back to your sip server! If you have then it works great. The new Nokia E70 phone connects to our office Asterisk server via SIP and works very well ( http://europe.nokia.com/phones/e70 ).
IAX2 goes through NATed firewalled links just fine. It is much easier to configure if you are on the move (or your users are).
I wouldn't touch Skype with the proverbial barge pole given its closed nature.
Every man for himself, all in favour say "I"
Of course, this wonderfully balanced, well-researched and well-written article did overlook one rather important point: The whole supernode concept lets Skype get through nearly ANY router configuration imagineable. I beat my head against a brick wall for three months trying to convince my father's ADSL modem to let through voice comms for a SIP client. No go. The only way to get a VoIP solution through was to install Skype.
Back in July, Bob Cringely at PBS had a column in which he talked about Skype and its use of super-nodes.
Frankly, I'm surprised to hear that people, especially Slashdotters, still talk to each other. I'm guessing this "voice" thing is some kind of emergency backup in case your email and instant messaging clients go down.
Yeah, totally! That'd be like participating in an online forum as an anonymous coward!
"Every decent man is ashamed of the government he lives under." - H.L. Mencken
One word: laziness
Longer reason:
I really didn't want to have to learn the intricacies of a protocol in order to get everything up and running. I'd been seeing various things that at least *implied* that I'd have to start mucking about with firewall rules in order to get SIP running. This was something I had zero interest in doing at the time. I also wanted something that would be cross-platform in an easy manner (I was looking at this so my manager & I could keep in touch while we both worked from home, without using cell minutes or LD charges....him Windows, me Linux).
Then I needed to be able to call out to POTS lines. Enter SkypeOut. No monthly charges, just a relatively low per-minute charge (which was OK, I still, after 16 months, haven't used the initial 10 Euros I put in). Then I needed people from work to be able to contact me, and I didn't want to give them my cell or house lines. Enter SkypeIn. $38 for a full year, with voicemail. Usable anywhere. That was a big draw. So long as I had a network connection, I could head off to a family member's place for a long weekend out-of-state, and still be reachable. No problemo spending 8 hours with sun and surf in the background and me being several hundred miles away...
And then things soured... I tried to renew my SkypeIn number. Failed. Again and again and again. Skype's purchase process is rather....opaque. They use a variety of 3rd party payment processors, and all Skype can tell you is "success" or "failure" until you start bitching about being unable to pay. Though don't expect an immediate response, as it will take up to 4 days. And then, if you're like me, you'll be told that your NATed laptop running Linux on a static IP with no proxies is "an anonymous proxy", and be told to check you IE settings to ensure you're not using a proxy (yes, IE settings in Linux...). You'll be told to, get this, try a different ISP. And even though you'll have already tried multiple credit cards, and multiple browsers with them, you'll be told to try another credit card, or another browser. Or worse (IMNSHO), another payment method that until just recently announced, had practically NO consumer protections (way to pay, pal!).
Ultimately, I ended up with access to work's terminal server, and after one too many complaints from the muckety-mucks who'd already been given my cell number (remember I didn't want to do that?) because I couldn't renew my SkypeIn, I decided that I could make a business case for using company resources for attempting to renew. And....it worked. NFC why, but it did.
So, now I have about another year to come up with another solution that'll work for me on random networks, doesn't require special hardware (other than a headset or speakers+microphone), and doesn't have recurring monthly fees, as I don't actually make calls every day, or even once a week. SIP still gives me a headache just trying to wrap my head around. Trying to figure out WHICH providers offer WHAT parts of what Skype offers as an all-in-one package is something I tend to just grow bored trying to research. Some of the more promising-looking clients seem to be geared towards specific providers, while others leave you trying to guess who to go with. Ick. I really don't want to stick with Skype having experienced the bad side of things, but I'm afraid momentum an just how unfocused SIP solutions are for what I want will force me to stay.
(Let's not even get into the whole Skype's Linux client lagging way behind their Windows client, with the Mac client having leapfrogged Linux at some point. There HAVE been a few betas that have finally brought support for ALSA, and some UI improvements. Still miles behind Windows & Mac, which is frustrating, but there's been at least some progress now almost a year after their last major Linux release)
"The urge to save humanity is almost always a false front for the urge to rule." --H.L. Mencken
Skype is a closed-source resource-eating protocol. SIP is an open, standardized protocol which projects like Asterisk use. I think telephony should be a PPP (Point-to-Point Protocol) and not a Kazaa-like P2P (Peer-to-Peer protocol). First of all: what information passes the supernodes? Can anyone see or analyze who you're calling, when and where? Second: what is the bandwidth usage? I can call SIP through 56k, can I call Skype as SuperNode on 56k?
Custom electronics and digital signage for your business: www.evcircuits.com
Skype is the only proprietary bit of software that I use, but I am reluctant to use another simply because the rest of the known world (known to me, anyway) are using Skype. So if I want to communicate with them, I have no choice BUT to use it.
I would desperately love to use an OSS version, but I can't do so without severely limiting my contact with my friends/relatives.
Skype is a closed secretive disaster. The community RANTED when MSN/AIM/Yahoo messenger played games to cut out client choice (Gaim, Trillian, et al.). If you want simple, use Gizmo ( http://www.gizmoproject.com/ ) which has a very economical and functional interface to the regular phone system (POTS). Even cheaper, try http://www.voipstunt.com/ or http://www.freecall.com/
All of these are street-legal SIP, and you can use any SIP-capable device you like, or use your computer if you want to.
And of course you can use Asterisk ( http://www.asterisk.org/ ) which is best of all!
Skype belongs in the shitbin of history. Closed systems suck.
Thanks for pointing out the obvious thing that people forget. Let me go further and say:
1) Skype is closed and a single metamodel that's been implemented nicely and virally (not that it matters)
2) SIP (and ENUM) are perilously prone, not because they're protocols, but how the protocols are implemented, to shenanigans. SIP is natively text, and ENUM is a DNS method that's prone to spoofing and other problems. For now, Skype wins only because few people know how it works at its deepest levels.
3) Skype isn't as extensible as the SIP/ENUM combination, and it makes one dependent on a single (if diverse and highly peered) network.
4) SIP and ENUM don't care about the service and are largely service neutral (some coming problems, here, though, as it doesn't do nice things like embue codec choices, encryption/authentication means, and other security niceties).
5) Skype is one closed vendor, very few business partners, while SIP is a technological infrastructure that invites whomever to do whatever.
---- Teach Peace. It's Cheaper Than War.
Well, the problem with SIP and Skype is NAT. The phone/computer doesn't know it's WAN IP to establish connections with other phones, and there aren't necessarily inbound UDP ports open to route UDP traffic to the phone.
;) ) both ways once you've estabilished an outbound connection. For VoIP with both users behind NAT, however, this is unlikely to work.
r aversal3.html
:)
NAT routers temporarily accept inbound UDP packets on a port when there has been an outbound UDP packet on that port (aka UDP pinholes). So you get a working UDP "connection" (well, stateless
Skype gets around this by using computers that aren't behind NAT to route traffic between two phones that are behind NAT. So if everyone was to block this behaviour, Skype just wouldn't work for NAT users. It requires some community spirit (even if this is unintentional on the part of the user).
SIP systems often employ STUN servers that allow a phone/computer to query the server to find out what its WAN IP and NAT type are (and use the query itself to open up temporary UDP inbound ports on the router - something that works with all NAT types except symmetric).
There's a description and some pretty pictures of how STUN works here: http://www.newport-networks.com/whitepapers/nat-t
In addition, SIP is also an open protocol, so there is nice free open-source software available (Asterix) to allow you to set up your own home switchboard (calls from different outside lines can be routed to different phones - IE, whenever your daughter's boyfriend calls, it can be routed to ring her VoIP phone). Skype is proprietry so you won't get any customisable features like this.
So really, SIP is the way to go if you're a supporter of open standards, and Skype if you want to follow the headless masses.
biopowered.co.uk - catalytically cracking triglycerides for home automotive use since 2008. Just say no to big oil!
Just so you know, I started with Skype, and it works just dandy. If it drains away my resources, I haven't noticed it. But, I've recently had the pleasure of installing asterisk at home, and it is the way to go! If you install and use Asterisk, you have the widest choice of phones (including soft phones) and VoIP endpoint providers, and you have the flexibility of changing your mind about any one of those choices at any time without disturbing the rest of the system. In my recent conversion, I converted the whole house to use Asterisk without changing any of our phones. My wife doesn't notice the difference - she just calls normally and it works. But, behind the scenes, I can selectively route different calls to different networks - hard wired or VoIP - to take advantage of whatever route I decide is the best. If any one of those routes starts to irritate me, I can change it without affecting the rest of the system. Try that with Skype.
Now, a common argument you might get against this approach is that it's unneccesarily complicated and requires a dedicated machine. Well, it may be partially true, in that it's more complicated than installing a single SIP or Skype phone or softphone, and the best (IMHO) approach for an install takes a surplus box; however, the TrixBox distribution gets you up and running awfully fast, and can be installed onto a crap machine (I'm using a celeron 500). Follow the How-To here. The flexibility is worth it. And, if you have a decent net connection and VoIP provider, the call quality even for VoIP is outstanding.
Other advantages are flexibility in call routing. I currently have a digium TDM400P card hooked up in my install, with one module hooked up to the phone line, and the other module hooked up to all my analog phones in the house. (I'll eventually replace some of the analog phones with some nice IP phones when I have the cash.) I could just as easily add SIP softphones connected to Asterisk, if I wanted, but normal phones seem more natural to me, and it's cheap to do with the TDM400P card. I have three inbound and outbound trunks set up, one using the land line, one using VoipJet for long distance over VoIP, and one for calls in from and out to the Free World Dialup SIP network. I have my dial plan set up as follows:
Any calls coming in from either my old PSTN landline or my Free World Dialup account are routed to my dialplan, which during the day (6AM to 11PM) rings the analog phones. If the caller is blocking caller id, it forces them to enter their phone number first before ringing the phones. At night, (currently defined as 11PM to 6AM) callers are sent to a VRU, which asks them to hang up if they're a phone solicitation, press 1 to actually call us, or 2 to send the call straight to voicemail without waking us up. In either case when it rings the phones, it will go to voicemail if we don't answer. That voicemail can be retrieved either by the phone, by secure web interface, or currently I also have it email me the wav file of the message.
For outgoing calls, I have it set like this: If you dial a seven digit number, a toll free number, 911, or use a 9 prefix before a long distance call (in case my network connection is down), it dials out through the land line. If you dial a long distance number normally (using just 1 + area code + number, or 011 + country code + international number), it routes it through the IAX2 trunk to VoipJet and saves us tons of money. If you dial a 8 or 393 prefix before the number, it assumes you want to call a FWD number, and routes it out the IAX2 trunk to FWD, which would be a direct SIP to SIP call for free.
In summary, it works awesome, and I had the whole thing working in a basic way (PSTN + analog phone + VoipJet trunk) in one Saturday morning. I had rerouted the whole house's phone system and revam
Life is but a mist upon the horizon.
GreyPoopon
--
Why is it I can write insightful comments but can't come up with a clever signature?
To the utter disdain of companies like Comcast and many telecom people in China, no one has truly figured out how to discern that there is actually skype traffic on their network much less block it -- this goes for everyone from a nosey IT admin, the govt, or an unfriendly ISP. On the otherhand, Comcast has put the kabosh on SIP from Vonage because it is easy to identify. Skype should continue to improve on the efficiency and stealth of their protocol and improve the features of their client. Sadly, I think with eBay now owning Skype they may have lost that innovative spark.
I would prefer an open standards solution but the trouble is that SIP and H323 are really crap protocols.
1) You have to open hundreds of special ports. Which makes forwarding this stuff a nightmare and means you have to open all this crap in your firwall.
2) Each company uses different ports. Ports don't seem to be a part of the standard.
3) The source and destination address are in the data not in the headers (how hard is it to use standard IP source and destination addresses?) Which makes any system with NAT a real pain when it should just be transparent, it should just work.
At least skype works with almost any firewall and if you have a firewall, almost any firewall skype will never make your system a supernode. That wasn't that hard was it?
Some group should create an open standards base protocol for sound and video that works properly.
Some of the issues about skype payments are going to be a problem with any company say gizom or wengo.