Hacker News new | past | comments | ask | show | jobs | submit login
Practical Nerd: The hidden price of “free” (geekwire.com)
152 points by Liu on Aug 30, 2011 | hide | past | web | favorite | 88 comments

Sounds like he is yet to be shocked to discover why Skype is free :)

On a more serious note, Adobe Flash Player 10 comes equipped with P2P streaming meshwork, which is enabled by default and which will cause the exact same bandwidth bleed as described in article. Being behind NAT or a firewall is not enough to prevent one from being a relay node as it includes fairly sophisticated NAT traversal logic and NAT-to-NAT connectivity stuff. The only way to NOT donate bandwidth with FP10 is to disable "peer assisted networking" in Flash Settings, which in itself is done by loading a Flash applet from Adobe's site. This also makes using FlashBlock in a browser pretty much a must have.


> Sounds like he is yet to be shocked to discover why Skype is free :)

Skype isn't riddled with ads.

But its business relies on selling your bandwidth.

What do you mean? Selling bandwidth how? I really am curious here.

All the calls are P2P, and if the peers cannot connect directly, the calls are routed through someone else's computer that's called a supernode. Pretty much none of the actual VoIP traffic touches Skype's servers.

While I'm not sure if it counts as "riddled with ads," Skype is certainly moving in the direction of ads: http://blogs.skype.com/en/2011/03/advertising.html

Whoever edited the title of this submission (it used to be "when Spotify wasn’t playing audio, it was using my network connection. A lot.") just took the whole thread out of context. This was never about the blog post, it was about the specific paragraph referencing Spotify and its P2P-ness.

The people editing the titles just to match the original source are driving me nuts.

I don't care how cute or clever the author was in picking a title. I want to know what the damn thing is about so I can make a good decision whether or not to spend time reading it! A good HN title should efficiently communicate to me why I should click on this link.

The original title was interesting. This one is not: the only reason I clicked on it again was because it had a high number of votes and comments.

Spotify is a peer to peer music streaming service, haven't they been pretty clear about that previously? I actually can't find any information about it on the website at the moment but I'm positive it's been there before. I have been a member since the early beta (i.e when only certain parts of Europe had access) so they might have changed it since then. I've never noticed any slowdowns though and since we don't have bandwidth caps over here it hasn't really become a issue for anyone.

I'm a premium subscribed now but I used the free service up until they limited the amount of plays per song and how long per month you could use it, and for me it's worth the $18~ I have to pay to get access to the music I want to listen to anywhere. Even if there is some bandwidth usage if I keep it running. It's never so much that I notice it in any way and it "gives" when other applications demand more bandwidth.

How often do you actually have Spotify running without listening to music anyway?

> haven't they been pretty clear about that previously?

News to me. I've seen a lot of ads and reviews for them and I don't see this mentioned at all, or at least prominently.

As to your last question, it's actually pretty much always running, listening or not. At least in my installation, clicking the X to close the window actually (by default) just minimizes it; to really close the application, you have to use a context menu or something. That alone is enough of a hurdle that I rarely bother to close it...on the assumption that it's not hogging too many resources. I'm wondering how safe that assumption really was now.

I just CMD+Q to quit it (on OSX) which as far as I know does in fact close it properly. In any case I make sure to close programs I do not use.

I do not believe it does quit it properly on OS X. Even after a fresh reboot, Spotify appeared to be using about 40k/sec outbound bandwith. After I removed it, idle bandwidth dropped to zero.

I also noticed something strange when removing it with CleanMyMac (similar to AppZapper). There's a separate dock icon file for Spotify, and removing it restarted Dock.app. I think that might be to cover up Spotify running in the background somehow.

Spotify does quit when you cmd-Q. You can verify this by opening Activity Monitor and looking at the process list.

If you are running MacOS X Lion, then the OS might keep the underlying OS process around in case you start it again -- this is by design. I have not been able to observe this personally, however.

The p2p thing is a good model. On the one hand you have services like Youtube which come up with all kinds of innovations to PREVENT you from using too much bandwidth- but Spotify is focusing its efforts in a more user-serving direction, encouraging you to go through as many songs as you can/want and finding ways to make it happen.

Actually quite a lot. Not anymore. My primary internet connection is a (truly) unlimited data plan on my phone with Sprint, but I don't go out of my way to abuse that fact, even though I live in a rural area where bogging down the towers shouldn't be a problem. This is pretty much a deal breaker for me.

No they have not been clear about that.

Yup. This helps power the "instant" playback that I'm sure the author has enjoyed. Saving money on bandwidth, I'm sure, also helps them pay for all of the licensing agreements they have with the recording industry so that you can stream that impressively large catalog for free.

"...the problem wasn’t so much the eventual price I paid as much as the fact that the true cost wasn’t clear until after I’d committed."

All the author is advocating is for software companies to be up front about what their software is doing.

From clause 13 in the Terms of Service:

(ii) Spotify has a right to allow the Spotify Software Application and the Spotify Service to utilize the processor, bandwidth and storage hardware on your computer or other relevant device for the limited purpose of facilitating the communication and transmission of content and other data or features to you and other users of the Spotify Software Application and the Spotify Service, and to facilitate the operation of the network on which the Spotify Software Application and the Spotify Service runs.

Granted, it's not listed as a "feature" but you agreed to the possibility of it.

Does the author expect the service to stay free and also remove the p2p features that make it work? Okay, yeah, sort of because he wants to be able to limit bandwidth. But not really. Rather than complaining about upstream traffic, he complains that Spotify should make the non-monetary costs clear upfront.

This is the point of the post - there is a cost to "free" as we all know, and here is one good example. There's nothing wrong if a service is p2p, it should just tell you. Barring that, users of any "free" service ought to keep in mind that it might cost them in other ways.

Even if you pay, it's still P2P.

You're paying for other features... let's say the cost of Spotify not being P2P increases the price by N dollars per month. The "free" users pay N, paying customers pay $5+N or $10+N. I think it's different to complain that they don't offer a "non-discounted" payment plan to opt out of P2P.

(I suspect N is rather large)

Not exactly. If you have the premium ($9.99/month) version you can enable 'offline' mode on playlists which will download them to your phone/computer/tablet and not use your network.

I had no idea it was p2p. I have been of course marveling at how instant everything is, from playing a new song to skipping ahead inside of a song, but never really put much thought into it.

It's actually a hybrid. The most frequently played songs are on Spotify's caching servers, and the first ~15s of those songs are streamed from them. The rest of the song is streamed via P2P, as are the entirety of the less frequently played ones. I seem to recall also that Spotify will locally cache songs you play frequently as well.

As someone who already pays for Spotify premium, I see the bandwidth as an acceptable further price to pay; if it results in a viable business model that can continue to entertain me. I would mind a lot more if it were just so they could save money. However, it would seem that for the sake of low-latency, the p2p layer is crucial.

Also fun fact: "In total, during the measurement period, 8.8% of data came from servers, 35.8% from the peer-to-peer network, and the remaining 55.4% were cached data"

Source http://www.csc.kth.se/~gkreitz/spotify-p2p10/

His point is that this cost is not mentioned before the point of sale and has to be discovered.

For people outside of US, where we don't have service providers that screws us sideways, this is a negligible problem. But I can see the point for people who are routinely being scammed by their service provider.

I take it you don't live in Australia.

Canadian ISPs are pretty bad as well. Mine is decent - seems the East coast isn't as bad as the rest of the country - but this seems to be the exception, not the rule.

I have cable internet in Quebec and the cap is really low. 120gb a month is to me quite low. I watch most of my tv,news,sports online now and I have to actively monitor it. Does nothing to reduce my total bw rate usage while I'm streaming. I guess my usage drops at the end of the month. It still doesn't help their claimed problem of congestion.

120GB is low, but not nearly as low as other limits I've heard of.

I'm in Halifax, and the ISPs here seem pretty decent. Bell Aliant doesn't have caps at all - they used to be a distinct entity from Bell, IIRC, and are still sort of separate from the Bell that's often mentioned - and Eastlink caps at 250GB, or were planning to a few months ago anyway, but that's only for their 50 and 100 Mbps plans. The normal, standard-in-a-bundle plan is 20Mbps and is uncapped. I've been pretty pleased.

Yes, the Maritimes do get good service. I've also had luck in the plains as well; Telus claims that they have caps, but they are not enforced. Shaw has caps on some plans, but not on all of them.

I do find it curious that the most densely populated region is the one with the worst service.

A month worth of Spotify premium usage will result in this amount of traffic : http://imgur.com/wVdmS (screenshot from my network traffic monitor)

I completely agree with the poster who said that this is an acceptable price to pay for the awesome UX we're getting.

Spotify's UX is okay, I wouldn't really call it awesome.

I mean it's got all the music player basics (playlists, search, etc), but there are almost no music discovery features and the social stuff is pretty lacking.

How much do you listen a day, on average, to use that bandwidth?

5 - 7 hours easily. This is not the high quality stream though.

And by awesome UX I was mostly referring to nearly latency free track skipping.

"No “free” streaming service is worth the risk of pissing off the Xfinity limit police and losing my Internet service."

this is only a true statement if the value of your current service is infinite or your risk aversion is. to make any kind of realistic logical statement about this you need to calculate how much bandwidth is being used, user limits and isp switching costs.

a nice insight turned into fear mongering - this is how a lot of bad memes start.

Considering how in a surprising number of places there is only one broadband ISP available, it's not exactly unreasonable - though I'll agree it's hyperbolic - to say that the value of his current service is 'infinite', since internet access - at least in the developed world - is fairly important. Have you used dial-up internet lately? It's not really a fun experience. (n.b. I've not used dial-up in a while, but my mother has a bad DSL line that tests at around 0.2Mbps, and I was not amused by it the last time I was there. This is my basis of comparison.)

If spotify is silently operating a P2P client, even when it's not being directly used, then that's an issue for people with bandwidth restrictions. It's trivial to get distracted by something, forget an application is running when you leave the house, and end up using much more bandwidth than you intended. It's worse still that as bandwidth increases, usage limits don't stay proportional. You suddenly have the ability to share faster, reaching your limit sooner.

As I said, I agree that the statement is hyperbolic, but I don't consider the issue trivial.

I don't think you are in control of how much bandwidth is being used when you invite someone else's software to use your machine as a server. The streaming service could change at any time and run your connection full speed for an indefinite period.

FWIW: Skype doesn't say they're using your bandwidth either...

Does Skype route other people's calls through your system or transfer data off your computer to provide service to other customers? The Spotify model is very different than Skype.

Edit: I had no idea Skype worked like that as well. And I have the same reaction I did when I found out through personal experience that Spotify did that -> ⌘Q - Quit Spotify. I don't need to open my connection to the world and let a program suck up all my bandwidth just to listen to some music I can get from another source. I'm not the only person using my connection and I have other devices that I want to be able to use as much bandwidth as they need. The fact that I can't control that bandwidth consumption at all is bothersome and enough of a negative in my opinion that I won't use the service.

They do if they decide to use you as a super node.

You already figured out how to control bandwidth consumption - quitting the application.

Do you really disagree with the p2p model that provides you with good services essentially for free, or are you getting carried away on the bandwagon? The Spotify and Skype EULAs [1,2] both disclose that they will use your bandwidth to provide the service.

The services provided by Skype and Spotify are way more valuable to me than the value of the bandwidth, and I expect this is the same for the overwhelming majority of people.

[1] http://www.spotify.com/us/legal/end-user-agreement/ (search for "bandwidth") [2] http://www.skype.com/intl/en-us/legal/terms/tou/ (also search for "bandwidth").

Skype is p2p.

Just stating that it is P2P doesn't necessarily mean this. If there were skype servers that handled everything except for the actual individual call, and the individual call was in a connection directly between two clients (not through a server) and that would be enough to be able to say "Skype is p2p".

I don't think you understood my comment. I was simply stating that "Skype is P2P" is not a statement that is at all relevant to the conversation is above, it could be P2P and still not use your bandwidth when you are not actively using it.

Just a suggestion. You could try installing something called "netbalancer" by seriousbit (http://seriousbit.com/netbalancer/ assuming you're on windows). It allows you to throttle network usage per program.

Anything similar for OSX?

ipfw :o)

This doesn't really surprise me to be honest. Spotify also caches a lot in order to be able to play content as fast as it does (for me it's usually as fast as playing something from my harddrive). However I didn't know about the upstreaming of cached content, this seems like something you should be able to turn off. I have the unlimited plan, curious to see if it also happens there. Will check when I get home.

disturbing that so many HN readers install software without knowing what it does, or how it does it.

Having sad that, the docs could be a bit more clear.

For example, Spotify says quite clearly in sentence ii of para 14 of the end-user-agreement that "(ii) Spotify has a right to allow the Spotify Software Application and the Spotify Service to utilize the processor, bandwidth and storage hardware on your computer or other relevant device for the limited purpose of facilitating the communication and transmission of content and other data or features to you and other users of the Spotify Software Application and the Spotify Service, and to facilitate the operation of the network on which the Spotify Software Application and the Spotify Service runs. You may adjust the level of usage that the Spotify Service makes of your computer in the settings of the Spotify Software Application."

Considering the first indication of possible P2P functionality in the license agreement is the phrase "and other users," Spotify could be more upfront.

I haven't tried this yet, but as a premium subscriber, I'm pretty sure I could save songs as an offline playlist, and then set Spotify to offline mode.

Yes, as long as you reconnect every 30 days.

How do you set spotify to offline mode (without completely disabling wifi)?

You can't set spotify itself to offline except on the phone app. You can however set a specific playlist to offline mode which will 'sync' the music to your HDD and plays it from there.

[edit]: BTW, you can do this on all devices.

It took me a while to get rid of the thought pattern superimposed by the title, including the words "nerd" and "free", that the article would be of the impractical sides of using free software (such as having to occasionally tweak around miscellaneous problems related to compatibility with proprietary software).

I believe there is a really simple solution to this. Spotify is only using your network bandwidth to serve your music files that other people want to play. If you don't want to participate move your music folders to another location that Spotify cannot find.

Interesting, I assumed that Spotify just distributes data that originated on its own servers. If distributes music I've ripped myself, I could screw up its service for other listeners. Does anyone know what the behavior is?

If you object to the P2P aspects of Spotify, wouldn't it be pretty simple to find out the port that it's broadcasting on and block outgoing communication? I wonder if anyone has tried this. Maybe Spotify would notice and quit playing.

So, the solution is to quit the app, right? Simple enough.

I only use it when I need variety that's not in my iTunes.

This seems like an adequate solution. It makes me wonder if some time there will be streaming music services that require you to have the program running for at least a minimum of hours a day in order to receive the free service. Or better yet, perhaps a discount for meeting monthly upload quotas.

As a Spotify Premium subscriber, I think it is unacceptable that Spotify do not allow you to disable or throttle Spotify's upstream traffic, or even disclose how much bandwidth it is likely to use! I have an uncapped connection (common in the UK) but anyone on a capped line may be subjected to hefty fees without even realising it.

I have no issue with the idea of P2P - it saves Spotify money, which is hopefully transferred to me - and is essential for instant or near-instant playback of music.

This is also my number one complaint. I asked about it at their official support forum on getsatisfaction, but never got a response. That's silly, because Spotify sometimes saturated my upstream, in which case I turned it off. It has now become a habit to turn it off. Before that, most of the time, it was one when I wasn't even listening to music, so the bandwidth was completely free to them. If they would allow me to throttle it somewhat, they could use it all the time. Since they don't allow me to throttle it, I've turned to shutting the client down whenever I'm not using it.

Unacceptable? Well you are paying for it so clearly it is acceptable to you. They could have designed their service in another way but then you would have to 1) wait longer for songs to buffer before playing 2) pay more as their costs would be higher.

Well, no surprise there. It was stated and elaborated already from the start years ago - Spotify is a cloud service, and the users help out. What IS surprising is that there are no numbers what so ever about how much bandwidth and how many connections that might be in use on a client's computer.

> Spotify is a cloud service

That much was well known, but never has a "cloud service" meant that the users were the cloud. That's P2P, a completely different paradigm.

"The client simultaneously uploads to at most 4 peers." I've never seen anything regarding how much bandwidth is used though.

It doesn't seem to actually say that anywhere on the web page though.

I understand the point you're making, they should say explicitly on their website. But to source my comment: http://www.csc.kth.se/~gkreitz/spotify-p2p10/

It does that - it's a P2P system. It also eats tonnes of disk space. My spotify data folder is about 12 gig.

Yes, by default Spotify caches everything up to 10% of your total free disk space. This is space that you are not using anyway, so what is the problem? It makes playback of music you've listened to in the past a lot faster, and saves you downstream bandwidth - which in turn makes for less load on servers and the swarm.

"This is space that you are not using anyway, so what is the problem?"

It's space your not using now. What if the user has no idea Spotify is caching that heavily, then checks their Free Disk Space (maybe they are about to transfer lots of data)? Nasty surprise ...

Exactly. Works fine for me :) I wasn't complaining.

You can change how much disk space it uses in the settings.

p2p is unrelated to (these) caching strategies. They'd do the same if it was all centralized.

Why not just download a huge bunch of songs using bit torrent and pretend to be using Spotify? No partially cached songs, no proprietary anything, etc.

The article isn't just about spotify, but anyway, bandwidth usage is a concern now, but certainly as bandwidth goes up there will be more and more services taking advantage of P2P for faster and better service. It's not necessarily a bad thing.

A good reason to try http://songspin.fm - nothing to install, just stream cool music continually in your browser.

And this is why you never-ever want to release a good product to the US. If it works great in EU and the rest of the world, you can be damn sure that you will meet so much hate in US, for some obscure reason. Well - from a personal perspective.

I've been running Spotify since early beta, and monitor the network usage of all my application, both when it comes to traffic and when it comes to what it accesses (littlesnitch is a great tool!). Spotify hardly uses any upstream bandwidth, and if it were using a lot, I should've seen that. I see a lot of downstream network usage.

This is just another blogger to piss on Spotify for some strange reason, to the point where they make up stuff. And it does not make sense to enable the user to not have any caching, then the network usage of the entire swarm would've quadrupled. I feel that 1GB minimum and standard at 10% of free diskspace (!!!! free, not total) is a good middle road.

(For those interested, Skype uses a boatload more bandwidth than Spotify. We've had problems with network congestion because so many clients on the network had Skype open and they routed so many calls through our network.)

For another anecdote, on my $70/mo cable connection, I have a total of 768k for my upload bandwidth, and Spotify saturates my connection so much that I literally cannot watch something on Netflix with my PS3 or Roku box until I have quit the Spotify client on my desktop.

And speaking as a paying customer ($20/mo so my wife and I can each have mobile access), it would be really nice if I could at least choose a limit on the P2P bandwidth so that I wouldn't be forced to close it altogether.

>This is just another blogger to piss on Spotify for some strange reason to the point where they make up stuff.

Actually he discusses his reason, right there in the post. Spotify used a lot of his bandwidth with no way to throttle (as others on this thread have discussed), in a way that he didn't feel was disclosed up-front.

It's great that you love Spotify and get value from it, but don't jump on this board calling someone a liar and questioning their integrity because they don't get the same value from it.

I agree with you, I was way out of line when I called him a lier. The fanboy-ism may be a little to strong in me.

But, to the point, he never said how much traffic he was seeing, so in his case /any/ traffic could be deemed "a lot". All services these days use your network connection to some extent, but I'm finding it hard to believe that it actually may end up congesting your networking connection, without seeing some serious proof.

I can to some extent see his point where this should've been clear from the start of, that Spotify will make use of your upstream network connection. Hopefully Spotify will make changes so that at least the US-market get notified that they might end up paying their service provider a premium, just for using Spotify.

>This is just another blogger to piss on Spotify for some strange reason, to the point where they make up stuff.

Why do you assume that, just because upstream traffic is not high for you, it isn't for anyone else?

I've been using it for years, as have my friends and colleagues, and neither have seen "a lot" network usage, at least not compared to what we're seeing downstream. Also, he didn't even bother to give us any more information on what he defines as "a lot" and how much upstream traffic he actually had.

You have made be interested to monitor mine and find out...

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact