Bittorrent To Cause Internet Meltdown 872
Gimble writes "Richard Bennett has an article at the Register claiming that a recent uTorrent decision to use UDP for file transfers to avoid ISP 'traffic management' restrictions will cause a meltdown of the internet reducing everybody's bandwidth to a quarter of their current value. Other folks have also expressed concern that this may not be the best thing for the internet."
98% (Score:5, Funny)
Re:98% (Score:4, Funny)
If it melts... it should flow better and faster right? A liquid net would better than a solid one.
Re:98% (Score:5, Funny)
Nah, it would melt the internet tubes.
Re:98% (Score:4, Funny)
Well, it would fit through the pipes better.
[/required]
Re:98% (Score:4, Funny)
Re:98% (Score:4, Funny)
I vas elected to lead, not to seed!
Re: 98% (Score:5, Funny)
Bald kid: Do not try and manage UDP connections. That's impossible. Instead... only try to realize the truth.
Ted: What truth?
Bald kid: There is no connection.
fairness (Score:5, Insightful)
If you're going to transfer files over UDP then you need to build some TCP-like protocol on top of it. The article doesn't say exactly how BT works in this respect, but he's probably right. There's no way that BT's protocol could be as sophisticated as TCP, given its 30+ years of development.
Most people don't appreciate how amazingly well TCP's flow control works in terms of maximizing link utilization in a way that is fair to all network users. We really don't need is an arms race of new, greedier protocols.
However, one thing to realize about P2P is that because there are often dozens of active TCP connections transmitting from one machine, fairness goes pretty much out the window anyway. An alternate protocol could conceivably improve on this by applying flow control to the aggregate throughput for the whole "bundle" of connections, rather than each connection individually. This would improve fairness and also increase efficiency because you wouldn't have a bunch of TCP streams individually trying to grow their windows, causing packet losses.
Re:fairness (Score:5, Informative)
Not really. You would need that if you were transferring a file from one computer to another. But Bittorrent scrapes together little bits of file from lots of other computers. If a packet is lost here and there, that bit of file is naturally requested again, probably from a different machine. That's just a consequence of the way Bittorrent works.
There's no reason in principle for this to be the case; obviously, metering of bandwidth should be by subscriber according to money paid, not by some arbitrary and easily manipulated value like number of open TCP connections.
Re:fairness (Score:4, Insightful)
Not really. You would need that if you were transferring a file from one computer to another. But Bittorrent scrapes together little bits of file from lots of other computers. If a packet is lost here and there, that bit of file is naturally requested again, probably from a different machine. That's just a consequence of the way Bittorrent works.
That behavior needs to be driven by some timing and retry logic. Also, hosts need to determine how fast they can fire these UDP packets at each other. Those are the most basic fundamentals of transmitting bulk data over a packet network. You really would be reinventing some subset of TCP.
obviously, metering of bandwidth should be by subscriber according to money paid, not by some arbitrary and easily manipulated value like number of open TCP connections.
It's not just about metering. What about where many users share a connection to the internet, such as at a business or school? Or even in a household? What if there's a bottleneck caused by a malfunction out on the backbone? You can't have good performance in these situations unless users agree on "equally aggressive" protocols.
Re:fairness (Score:5, Interesting)
Not really. You would need that if you were transferring a file from one computer to another. But Bittorrent scrapes together little bits of file from lots of other computers. If a packet is lost here and there, that bit of file is naturally requested again, probably from a different machine. That's just a consequence of the way Bittorrent works.
That behavior needs to be driven by some timing and retry logic. Also, hosts need to determine how fast they can fire these UDP packets at each other. Those are the most basic fundamentals of transmitting bulk data over a packet network. You really would be reinventing some subset of TCP.
I think what he's trying to say is the TCP connection often gets dropped completely, for example the host just goes offline, or is bogus and transmitting false data. Bittorrent needs to account for this anyway by re-requesting packets from the network, so they have implement the retry logic differently that TCP anyway.
Re:fairness (Score:5, Insightful)
also, even if you ended up recreating a "subset" of TCP, that could still be fine. TCP is huge compared to UDP, and if you use UDP as a base for adding what you need, you can still come up with something much simpler than TCP; see, for example, RUDP. TCP's benefit is its ubiquity, but if you have the combination of a constrained enough environment and wide enough client distribution, that's less of a big deal. BT and uTorrent likely satisfy those requirements.
Re: (Score:3, Insightful)
It's not just about metering. What about where many users share a connection to the internet, such as at a business or school?
Then the business or school should have usage policies. If they don't, it's not up to their ISP to regulate things for them.
Or even in a household?
Follow Russell Peters' advice. "White people. You need to beat your kids."
What if there's a bottleneck caused by a malfunction out on the backbone?
Then fix the damned backbone! Surely it takes less time to replace a screwed up router than to develop all these bandwidth restriction methods that only get circumvented anyway.
Re:fairness (Score:5, Informative)
Not really. You would need that if you were transferring a file from one computer to another. But Bittorrent scrapes together little bits of file from lots of other computers. If a packet is lost here and there, that bit of file is naturally requested again, probably from a different machine.
No... you're getting confused between network packets (a kilobyte or two) and bittorrent's blocks (many kilobytes). Each bittorrent chunk is transferred using many network packets. If you're going to transfer those chunks using UDP, you need to sort out the packet order and do all the missing-packet checks and retries etc yourself. So you still DO need to build some kind of TCP-like protocol on top - even just for the error checking.
Good point, but I disagree with your conclusion (Score:3, Insightful)
Its true for now that most links are sold purely by bandwidth, so your statement about getting what you've paid for is valid -- unless what you're paying for includes by contract a cap on total use or continuous use, or something else. Most home network access contracts contain those use case caps.
What really caught my attention as I read your note is that comment about the number of open tcp connections. As I read it, I'm surprised that hasn't been used as a valid limit on use by contract.
If you think of
Re: (Score:3, Informative)
Not true, actually. BitTorrent doesn't ask for data in packet-sized blocks. If a single packet is missing from the block, it doesn't (currently) have a way to ask for just that packet. You'd basically be re-implemented TCP to do that.
Re:fairness (Score:5, Insightful)
That said, the bottleneck for end users is typically the uplink on their last mile connection, so this probably won't bring the internet down or crash any ISPs, but it will make life worse for people sharing the connection.
Fun fact: The original implementations of TCP did not have flow control (it was on a test network after all). It did not take long for it to become apparent that flow control is a necessary feature. A few network meltdowns made the case quite well.
Re:fairness (Score:5, Interesting)
Except that one of the cool things about UDP is that it doesn't have to get through, so your router can drop all it needs to if it starts saturating your bandwidth. UDP has no guarantee of reliability at all.
I think going to UDP would be cool for another reason: there's not all the setup and teardown for connection. If 200 people each request the same block from me in a minute, do I really want to have to go through something like 'hi can I talk to you, what port should I use, hey here it comes, do you have it, ok, I'm done talking to you go away', or should I just shovel it out? If packets get dropped en route or mangled, do they not each already have enough hashing provided by the .torrent that should indicate they're bad, and to re-request?
Re:fairness (Score:5, Interesting)
You could make the opposite argument: the cool thing about TCP is it automatically retries and resends any dropped packets, so your router can drop all TCP traffic if it needs to.
Re:fairness (Score:5, Insightful)
You could make the opposite argument: the cool thing about TCP is it automatically retries and resends any dropped packets, so your router can drop all TCP traffic if it needs to.
In the scenario where multiple hosts have the data I want, I'd rather the software decide, not the router or my PC's stack. Like you said elsewhere [slashdot.org], it can just grab from another host. So I'd rather have the protocol with the lower overhead for my pipes/router/stack. If torrent software supports requesting the same block from multiple sources at the same time, this is even more important, because my stack will keep trying to get a good version of a mangled packet even if I really don't need it any more because someone else sent the block, whereas with UDP, the software knows it has it and won't bother.
Re:fairness (Score:5, Insightful)
Think of it this way, you have a congested router that has 1mbps of available bandwidth. Normally you have 5 TCP streams sharing it at 200kbps each. Everybody is happy. Now you replace one of the TCP streams with your UDP sender which is configured to transmit at 800kbps. It will continue to pound the router with 800kbps worth of traffic while the TCP streams all throttle back to 50kbps. Now you're not playing fair, and there's nothing the other TCP guys can do about it because they're all trying to play fair still.
Re:fairness (Score:5, Funny)
Re:fairness (Score:5, Interesting)
There's no way that BT's protocol could be as sophisticated as TCP, given its 30+ years of development. Most people don't appreciate how amazingly well TCP's flow control works in terms of maximizing link utilization in a way that is fair to all network users. We really don't need is an arms race of new, greedier protocols.
TCP gets a lot of credit it doesn't deserve. It enforces bad design -- most client/server applications should be either stateless or session-based, rather than connection-oriented. Anything that even vaguely resembles a streaming application shouldn't even consider TCP. Finally, TCP's connection model is almost guaranteed to be suboptimal for any application that does require one.
What are the odds that HTTP, FTP, SMTP, and BitTorrent will all work optimally over TCP? Slim to none, and none is still waiting for Nagle.
All applications should be what now? (Score:3, Insightful)
It enforces bad design -- most client/server applications should be either stateless or session-based, rather than connection-oriented.
What? Why? Why is a connection based application "bad design"?
A "session" is just a hack to give you connection-like qualities over a connectionless protocol, such as HTTP. If you want connection-like behavior, and you're free to design your own protocol, why not just use connections? Why make your life more complicated?
There are plenty of advantages to connection-based applications; no need to re-authenticate on every message, for one. Clear indications of when a client is done talking to you for anot
Re: (Score:3, Insightful)
What? Why? Why is a connection based application "bad design"?
Because connection maintenance is a very high-level task that should not be delegated to the very bowels of the application, much less to someone else's opaque API.
A "session" is just a hack to give you connection-like qualities over a connectionless protocol, such as HTTP. If you want connection-like behavior, and you're free to design your own protocol, why not just use connections? Why make your life more complicated?
The complication comes in
Re:fairness (Score:5, Interesting)
To say that TCP is optimal at dealing with congestion is to say that individual packets are always a good representation of the data blocks being sent and received at the application level, and that best thing that any application can do when expected data doesn't arrive is to wait on it to be retransmitted, with the network layer queuing up all subsequent intact packets.
Once again, this behavior is guaranteed to be completely wrong for anything but toy command-line applications that fit on a single page in the back of a musty-smelling manual.
Re:fairness (Score:5, Insightful)
TCP stream oriented model is also a godsend for application developers. Networking is hard enough without having to build your own application state control systems (which is what would happen if you tried to make TCP stateless) for every single connection. It would be a nightmare.
Those who don't understand TCP are doomed to reimplement it, badly.
Re:fairness (Score:5, Interesting)
TCP does work well, and certainly the axiom about those who don't understand TCP being condemned to reimplement it badly is a valid one. However, it is the wrong tool for many modern applications. If you're writing networking code and you find yourself fighting TCP's behavior, it's not necessarily your fault.
The developers of BitTorrent have long since passed the level of play where they're better off using TCP/IP because "well, because that's what you're supposed to use." My objection was to the naive canonization of TCP as an all-purpose protocol that's somehow magically superior to any protocol that the application can implement on its own behalf.
"Because it's the most router-friendly protocol" is also no excuse. Applications that aren't a good fit for TCP often abuse the protocol, e.g. by disabling Nagling and tinkering with other parameters in an effort to make it work more like, well, UDP.
Those developers didn't reimplement TCP badly, but they might as well have, as their efforts are likely to have the same effect.
Re: (Score:3, Insightful)
Easy. Be able to deal with the bandwidth or stop signing up customers 'til you can.
Re: (Score:3, Insightful)
So, phrasing this as something other than a flame, you would suggest that HTTP, FTP, etc. use UDP and then let each client application implement its own rate limiting
Because my application is better at knowing how to adapt to a given amount of bandwidth than TCP/IP is.
retransmission policy
Because non-trivial applications often have better ways to deal with packet loss than TCP's acknowledgement/retransmission mechanism. ...and packet reordering?
It often makes more sense to let your application deal with thi
Re:fairness (Score:4, Insightful)
That is addressing the problem from an ISP's point of view, or perhaps the "**AA's talking points for ISPs" point of view.
If I pay for 10Mbps download speed, it should not matter to anyone how I use those bits. If you as my ISP cannot handle that traffic, you should NOT have sold it to me in the first place. Every time you throttle or shape my traffic, I want a rebate. It's that simple. I don't think we should have bailed out wall street and I don't think It's my responsibility to support an ISPs bad business model. That is what this problem is all about. Bad business decisions on the part of ISPs. They over sold their networks and now want a bailout. BS!
If you want regulation, how's this: If you sold me 10Mbps download and can't provide it regardless of protocol, you have committed fraud and I'm allowed to sue. I don't want to hear about your problems, just provide what you sold me.
If you sell me a parachute I expect it to work in every state, on any day of the week, and from any kind of airplane, no matter what clothes I'm wearing or not wearing. After you sold it to me, it's simply criminal to then say it only works if you are wearing green, or skydiving on a day of the week that begins with a T.
If you don't want me to use BT, then give me a 50% discount on my bill.
Re:fairness (Score:4, Insightful)
If I pay for 10Mbps download speed, it should not matter to anyone how I use those bits. If you as my ISP cannot handle that traffic, you should NOT have sold it to me in the first place
You have totally missed the point of my post! I wasn't even addressing ISP billing policy, I am talking about how to share a link. Maybe YOU have a dedicated 10Mbps link all to yourself, but not everyone is so lucky. Imagine a small business where 50 people are sharing a T1 line. For web browsing, this many users could all get decent performance, even if a handful of people are doing big downloads, provided they are all using TCP. But all it takes is one guy hammering the link at full throttle to ruin it for everyone else. For better or worse, the internet is designed on the assumption that applications play nicely in this regard.
Re:You are not listening... (Score:5, Insightful)
I am saying that, in the case where multiple users have congestion, it is not a problem of user behavior. It is a problem of the ISP not having a wide enough uplink. If the users that are causing the congestion stop using their connection then they are not getting the service that they paid for. The ISP has three options at this point:
Almost every ISP in the country is selecting the first option and wondering why everybody is pissed at them. Number 2 would probably take away from their stock price (not that it has much further to slide at this point) despite it being the right thing to do, and Number 3, while honest and straightforward, would never fly.
However, everyone in these bittorrent debates pretends that the DSLAM port is the bottleneck. In a highly interconnected environment like a world full of bittorrent and other users, there are many other places for congestion far from the simple consumer-to-ISP policy enforcement point.
I'm not pretending that it doesn't exist. As a matter of fact, as I've said in other posts, this is due to oversold uplink connections and upstream networks not ready for this increase in bandwidth. Bandwidth is being charged for. Somebody is making money. Spend the money on increased network bandwidth at interconnects that are traditional and measurably congested and stop doing stupid shit like cutting off peering because someone looked at you funny.
However, BitTorrent here is a scapegoat - you'd have the same problem with large FTP sites, video archives, or masses and masses of streaming porn. A bottleneck isn't caused by the protocol. The bottleneck is caused by the demand, and demand for a service is independent the protocol it's wrapped in.
Re: (Score:3, Interesting)
You're right. That's the real problem. ISPs are hacking vertically-- all BT traffic -- when they should be hacking horizontally:
I support a greedy node algorithm. Everyone starts with their burstable line, and the more you utilize, your cap slowly lowers until you reach a guaranteed minimum bandwidth threshold.
At the end of the day, greedy users will be greedy users. And if BT goes offline, they'll migrate to something else. And if I suck 100gb of crap off usenet in a month it's no different than 100gb of B
Re:fairness (Score:5, Insightful)
If I pay for 10Mbps download speed
No, you don't. A dedicated 10 Mbps link would run thousands of dollars a month (a T1, which is 1.5 each way, is ~$300 in the US) and most consumers can't swing that sort of dedicated line. Instead, you paid for a connection that is 10 Mbps maximum and you knew damn well that you would be sharing it with others in your neighborhood. How else could you rationalize paying only $60/month for faster-than-T1 level service?
Pretending that you don't understand the difference between a dedicated line and a shared line is utterly unconvincing to me.
Re:fairness (Score:5, Insightful)
Then maybe they should be sold as such.
Look, all I want is to get what I get sold. If a line is sold as a 10mbit line, I will expect it to be a 10mbit line.
If I sell you a garage for 2 bucks a month, you might wonder but you will probably take the deal. Then you come around and notice that someone else is already standing in the space I sold you, and I tell you that you're allowed to use that space to park your car but only when it's free. Would you be happy? I guess not.
People will expect to be able to use what you sell them. And some of them will even use it. They really want to use what they got allegedly sold! How dare they?
Re:fairness (Score:4, Informative)
All utilities use statistical averaging. It's not possible to allow for all users to be using 100% of what is available at the same time. Well, perhaps if the infrastruture of all utilities were completely redone it might be possible. For even 1000 people in close proximity to coordinate use of electricity, they could cause massive damage to the system from nothing other than just using what they had paid for.
Phones everywhere in the US were useless on 9/11/2001. Where I worked, they had 2 T-1s for a little over 100 people. The T-1s were full. That's the first time that has ever happened. To have over 50% of people picking up the phone at the same time is unheard of. Sure, we could have bought a dedicated line for each person, but that's not what companies do. I live in Alaska. You have less than a 50% chance of getting a long distance line on Mother's Day. That's right, the entire state is busy. The cell phone systems crash around every large event I've ever been to. The Las Vegas Convention Center is the closest I've been to a large place that worked. It would pop up my voicemails quickly when the person was sent straight to voicemail. For other places that are much more seasonal or random in their use (like state fair grounds) I've seen horrible dial rates. Phone lines all over the US (and the world) were jammed when 9/11 happened, and people were unable to make calls because the utility wasn't able to provide. If there was something that caused similar unusual spikes in demand in any utility, it would crash. No utility designs for 100% utilization by everyone 100% of the time.
The only way to get what you demand is to design all utilities to do that, and no one does. The only functional difference with Internet and the other utilities is that Internet is designed with more sharing. It's like when you buy a phone line, and you get a party line. Sure, you have a phone line, but you can't use it if your neighbor is on it. You had access for emergencies 100% of the time, and otherwise had to share nicely with others.
Re:fairness (Score:5, Informative)
Re:fairness (Score:4, Insightful)
So, in other words, people complaining about BitTorrent users overutilizing the network should read their contract, see there's no minimum guarantee of service or line speed, and get stuffed instead of trying to bully other people into using the network in ways that would make life more convenient for them?
Re:fairness (Score:4, Interesting)
Wow, you got close to what I think is the solution. Every ISP can provide two virtual networks to each user. Where the edge of the ISP network sits; that point where end users are attached, it is possible to use routing to run BT traffic down one pipe and all else down another pipe. In this respect, BT traffic would not melt down the network or hog the connections of others in the neighborhood. If there is only 2.5GB/s available for BT et al, then only BT et al users suffer when it is full.
OMG, network design 101. hmmmm if I were an ISP, I'd set that up and explain that is how the new service works. The new P2P network is limited in bandwidth and your neighbors are the ones to blame if it is clogged. Yes, this even applies to businesses, co-op networks, ISPs, the lot. It minimizes infrastructure upgrades, and provides service as perceived by the end user, not as shaped by central routing equipment. You might think of it as an HOV lane, to use a car analogy.
Secondly, if networks were not oversold so much and under-designed so often, this would not be a problem. I really don't care how you slice it, this is a problem because of poor decision making by service providers. They wanted everyone's business (still do) but are not designing their networks to handle the traffic. When they build new roads these days, the build them so that extra lanes can be added in the future when needed. Why isn't that happening on ISP infrastructure?
Re:fairness (Score:5, Funny)
And all this time I thought that spam was going to cause the Internet to melt down. Maybe we need new terminology. Instead of "melt down", it should be "Global Internet Change".
Re:fairness (Score:5, Insightful)
Not really, actually.
TCP enforces and faciliates delivery certainty. You may be sure that a packet arrived. It gives you everything to make sure some packet arrives in time, if it's fragmented and arrives in the wrong order it's reassembled and all the other little bits that are quite useful when you're normally transfering data.
This doesn't really apply to Bittorrent and the way it works. Bittorrent by its very nature transfers little parts of files. Parts in a size that can easily avoid fragmentation. Parts where it doesn't really matter whether they arrive at all. If they don't, the requesting machine will simply ask for it again. Maybe now, maybe later, maybe even from another source.
Yes, TCP has its merits and sometimes they are even used sensibly. Don't make me start about all the cases where TCP is used without any reason because neither packet size matters nor certainty of delivery is a criterion, but it's just "easier". But BT can well work on UDP and even generate less overhead and thus actually less traffic than it does today.
Face it. QoS, Netneutrality and traffic shaping or not: People will find a way around it. And when the choice is encryption and wrapping BT packets in even more overhead (because, say, the provider will only allow HTTP-Packets at full speed) or using UDP, it's a no brainer. For both sides.
Re:fairness (Score:4, Informative)
But BT can well work on UDP and even generate less overhead and thus actually less traffic than it does today.
Only if it adds its own layer of TCPness on top.
Here's the deal. You have one gigabyte of data to download. It's been split into one megabyte chunks, and you know the sha1 hash of every 1-meg chunk.
You go ask a peer for a 1-meg chunk. You get 1024 little 1k-chunks in return. There are 1024! permutations of them. Please put them in the right order.
You could, you know, number them. If you want men outside the middle to not be able to spoof a connection from you, you need to start numbering from a random place, and tell the other endpoint from where you start your numbering.
Presumably, you want to make outgoing connections to several peers at the same time. Hmm... I know, let's number each of the connections, and send the number to the receiving end.
Boy, this sounds a lot like port and sequence numbers...
If you do a 20-byte hash (say, sha1) of every 1k block, you end up with a 1-to-50 reduction. For a 1G torrent, the .torrent file is 20 meg. Presumably you could use a somewhat smaller hash function for each packet and then use a bigger hash for a chunk of packets...
I'm not saying it can't be done. But I don't see what compelling features UDP offers that you can't get almost as effectively with TCP. Care to enlighten me?
This is a good thing (Score:5, Insightful)
Forcing ISPs to treat all traffic the same, because they can't tell what is what, will be good for net neutrality.
You should get the bandwidth you pay for, regardless of what actually travels over it.
Re:This is a good thing (Score:5, Insightful)
Except that probably isn't what will happen.
Let's use Comcast as an example.
Their target customer "surfs the web", and checks their email.
Their high-maintenance customers, who complain about latency issues, throughput, etc. are the ones who use UDP in any significant volume.
UDP is used for online gaming, VoIP, etc. They will just start to deprioritize UDP, which is bad. 99% of customers won't notice the difference, but we will.
Re:This is a good thing (Score:4, Insightful)
Everyone here seems to work under the assumption that heavy bittorrent users would be worse off in a world with download caps or metered bandwidth. I don't think so. It would force companies to compete to give good service with clear contracts where they actually tell you what they are really selling. This is bound to increase, not decrease, the availability of real bandwidth per dollar for most users, included us computer geeks.
Re: (Score:3, Funny)
Re: (Score:3, Insightful)
Most games are UDP based because TCP introduces latency. All the Doom/Quake/Unreal type games are UDP, as latency is important in those sorts of games.
PS3 uses UDP. XBox360 uses UDP.
Even WoW uses UDP for in-game voice chat.
As far as the future goes, there are already ISPs that offer video services and it's only a short step to them *only* allowing video downloads off their servers. I expect the likes of Amazon and Netflix will be doing deals to ensure they get a piece of that pie.
File Service Protocol (Score:3, Interesting)
"They" said the same thing about once popular File Service Protocol (http://fsp.sourceforge.net/) way back when the net was young, pre-Napster, and before any massive internet infrastructure investment was made...
Re:File Service Protocol (Score:5, Insightful)
They also said the same thing when UDP streaming internet video became a hit-- their servers couldn't keep up.
They just had to upgrade.
Hopefully the same thing will happen now.
Re:File Service Protocol (Score:5, Insightful)
I think this whole thing is just hinging on them upgrading the darned infrastructure. The ISP's have sat fat and lazy for too long just selling you a "faster pipe" as the last mile of cable got faster. All that while though the baseline infrastructure has been receiving upgrades as a snail's pace, while at the same time more and more users are jumping onto the net in droves.
They pocketed far too much money that should have been allocated to network upgrades to actually support increasing TRUE capacity - not just a theoretical burst speed that you might maybe be able to get for 3 or 4 minutes back home.
It's like that lazy employee who has 3 months to do 1 week's worth of work. He puts it all off until he has 2 days left, and then starts to moan about how he doesn't have enough time to do all this work. Well, at this point, he's right. It's his own fault though. My boss has a nice poster in her office that I think applies here: "Lack of planning on your part does not constitute an emergency on my part."
don't see it myself (Score:5, Insightful)
Well, since The Register don't seem to want to print my comment*, I'll repeat it here:
"I think this is a bit of scaremongering that's missing one vital point:
When an ISP throttles UDP packets because somebody is using excessive bandwidth, they'll be dropping packets *from that source*.
So while .torrent moving to UDP is going to affect VOiP and games, the effects of that will be *restricted to the person using excessive bandwidth* via bittorrent. There's no reason it would affect anybody else, and I doubt ISP's are going to be dumb enough to block packets at random.
Unfortunately that kind of blows the articles entire premise out of the water."
Myx
* Posted at 12:40pm, ten minutes after the article appeared, at a point where there were no other comments on the article. 3 hours later there are 37 comments, but no sign of mine. Now it may be that they've just been overwhelmed with comments, but I'm a suspicious soul at times...
You can only do that a the very edge (Score:3)
Routers deeper inside the network cannot keep tabs on millions of IPs and who uses how much, they already have much to do.
Re:don't see it myself (Score:5, Funny)
Total bullshit (Score:4, Interesting)
UDP does not guarantee delivery. If ISP's want to, they can simply start dropping UDP packets once the total amount exceeds a certain threshold. This should be almost trivial to implement.
Sure, just blindly dropping all types of UDP packets will also degrade VoIP services etc, but certainly this does not need to impact "the entire speed of the internet".
Since VoIP and other "normal" uses of UDP do not need terribly high bandwidth, the problem can be easily solved by imposing a maximum UDP throughput per IP and simply dropping any UDP packets past that limit. That way, VoIP will still work just fine but other services "abusing" UDP will just be effectively capped by the unguaranteed delivery.
I'd love to see lawsuits about this as well, as UDP does not guarantee delivery so you would hardly have a basis to complain when ISP's drop such packets, especially as long as they deliver *most*, but not necessarily all such packets.
Adobe Flash (Score:3, Insightful)
Is more in cause of the frickin' meltdown of the internet with about half the content of web sites being Flash-based animated and (GAH!) audio adds.
Flash video is also irreparably defective.
Disclaimer: did I mention I hate Flash?
Everyone wants a piece of the pie... (Score:4, Informative)
Re:Everyone wants a piece of the pie... (Score:5, Interesting)
16 linecards at 50k each, for 800,000. Lets call it a cool mill in asset costs.
30k subscribers paying $20 each a month. $600,000 a month. $7.2 mill a year.
Yeah, I can see how the initial sticker value of a 2 router closet is going to a road to ruin for most ISPs.
I don't think ISPs are cash cows by any means, once you consider opperating expenses and labor. But a $1 million dollar switch station can be easily amorted out over a 5 year loan when the ROI on that million is quite solid.
-Rick
Re:Everyone wants a piece of the pie... (Score:4, Insightful)
Which is exactly the problem, it is entirely too costly to do. ISPs have been marketing 10Mb service (or 3-5Mb service in my area) with out the ability to actually provide 10Mb as a minimum service level.
By selling based on the upper limit of service and leaving the lower limit undefined, they can prove that they can provide up to the marketed rate (in ideal conditions) but you can not prove that they fail to meet that lower limit.
So people assume that by paying for "(up to) 10Mb Service!" that they should be able to get 10Mb service 99.999999% of the time. When in reality they can get 256Kb service or better 99.999999% of the time.
Once you drop those 30k users down to 256Kb connections, you're only looking at 7,860,000Mbps instead of 300,000,000,000Mbps. Push it up to 10,000,000Mbps and you have the 256Kb minimum with enough head room for people to hit 10Mb upper limit under ideal circumstances. And a single OC-192 will carry it all.
Sure, if they want to provide a true 10Mb connection with near 100% uptime and bandwidth availability, they're going to need a stack of OC-192. But they don't. It's the old "As little as possible, as much as necessary" line. And the Marketing department hasn't kept in line with the Engineering department, so the issue will inevitably wind up in the Legal department.
-Rick
Re:Everyone wants a piece of the pie... (Score:5, Informative)
8 Linecards @ 50,000 ea = $400,000
2 routers @ $400,000 = $800,000
$800,000 / 30,000 = $26.67
12 months * 5 years = 60 months (standard depreciation period for equipment)
26.67 / 60 months = $0.45 per month per customer for the routers
I think that when you start throwing large numbers out there to justify cost to the customer, please remember that these costs are amortized over the entire customer base and over time as well.
Let's say you lease the lines for $50,000 per month for each router:
50,000 * 2 = 100,000
100,000 / 30,000 = 3.33 per month per customer
Let's add in $10,000 per month for power
10,000 / 30,000 = $0.33 per customer per month
Add in $100,000 per month for line maintenance, $100,000 per month for repairs
200,000 / 30,000 = 6.67 per month per customer
And $100,000 per annum for your salary (being generous for sake of demonstration) and say another $200,000 per annum for overhead expenses and support staff
$300,000 / 30,000 = $10
$10 / 12 = $0.83 per customer per month
So for the equipment (amortized), electric, facilities (as overhead), staff, leased pipes, maintenance, etc. we have a total of $11.61
Now a low end line goes for ~$24 per month, while a high bandwidth line ~$60...
Won't create any changes (Score:3, Informative)
ISP's have been managing UDP traffic for years now, this won't change anything. Any of the deep packet inspection boxes (Packeteer, Allot, Sandvine, Ellacoya, etc) can identify the traffic whether it is UDP or TCP as can open source tools like Ntop. Encrypting the traffic can of course disguise what's in the packets, but the overhead hurts transfer speed. In addition, several of the new generation of traffic shapers don't even care what layer 4 protocol you're using, things like Netequalizer just looks at the two IP end points of a given conversation and treats it as a flow regardless.
About time to meter usage?? (Score:4, Interesting)
Scare Mongering? (Score:5, Insightful)
This sounds like the basest kind of scare mongering, relying on a basic ignorance of the way networks work.
UDP is not any less filterable than TCP. To even make this argument, the reasoning is so contorted as to be silly. In either case, one uses a router to inspect packets and decide what to do with them. ISPs will simply go as deep through the envelopes as they like; they already do. With that knowledge they will do whatever is allowed by law. At present, almost anything is. If they abuse that power too foolishly, then it will start to be taken away from them.
And in the meantime, whoever they filter will tweak to retaliate, and it will always be a race. As far as I can see, this is just the ISPs (or their proxies) stopping at one random lap and crying how unfair it all is.
Why ignore the real issue here? If you sold a teenager in Topeka unlimited use of a large pipe, but now cannot handle her actual unlimited use of her large pipe, then you just need to start cutting better deals.
It's as simple as that.
If the teenager cannot actually use her fat pipe, 100% of the time, then stop lying about what it is you have sold to her. Either charge more or advertise less. It's as simple as that.
When I as a CEO, and millions of others like me, buy #MB upstream and #MB downstream, and utilize it 100%, 24/7, no one quakes over the calamity of the internet backbone melting down.
All of this discussion over filtering is really a discussion of pricing. And the fact that we are talking about it in the wrong terms is creepy.
Believe me, you do not want a bunch of unaccountable telecom bureaucrats playing god with the backbone. You want a free market making these decisions.
Ignorant much? (Score:5, Interesting)
The author of this article could have called or emailed Bram Cohen before writing this article, but then he wouldn't have had such sensational tripe to garner page views. If he had, he would have known that he has got it completely wrong. The switch to uTP is actually to make BitTorrent traffic more friendly to Internet traffic. You see, BitTorrent is trying to sell a content delivery service based on their client and the #1 complaint from their customers (businesses with content to deliver) and their customer's customers (end users) is that the BitTorrent DNA client seeding/downloading in the background hurts the performance of other applications. That's unacceptable if you're trying to sell an unobtrusive alternative/complement to traditional CDN.
Yup, good ol TCP is what is causing the problem. That's because BitTorrent breaks the assumption in TCP that one application needs only one TCP stream to do its work. To solve the problem BitTorrent acquired advanced congestion control techonology and it's inventors from "Plicto." The congestion control technology lets BitTorrent work without causing crazy latency for other applications on the box. BitTorrent is the responsible party here, recognizing the need for congestion control and implementing it in their protocol. Compare that to the author of this article who saw that BT was using UDP and assumed it was a naive attempt to get around ISP blocks.
The people who work at BitTorrent are smart enough to know that you can't beat your ISP by making a new protocol. The ISP sees all and can control all, even if it may lag behind the changes. That's why BitTorrent has been working to make changes where it can make a lasting difference, in the political layer of the network.
IETF ALTO (Score:3, Interesting)
Both BitTorrent and Comcast are working in the IETF ALTO [ietf.org] working group, which is intended to improve the use of bandwidth and other resources by P2P.
Having been in these sessions, it is clear to me that BitTorrent has no interest in melting down the Internet and is well aware of the implications of what they are doing. Note that if worse comes to worse, UDP can be blocked too.
uTP has congestion control ? (Score:3, Informative)
See http://forum.utorrent.com/viewtopic.php?id=49813 [utorrent.com]
"What is in 1.9:
uTP, the micro transport protocol. This UDP-based reliable transport is designed to minimize latency, but still maximize bandwidth when the latency is not excessive. We use this for communication between peers instead of TCP, if both sides support it. In addition, we use information from this transport, if active, to control the transfer rate of TCP connections. This means uTorrent, when using uTP, should not kill your net connection - even
Re:A little extreme there, don't you think? (Score:5, Insightful)
Re:A little extreme there, don't you think? (Score:5, Insightful)
It could be, or it could not be. To me, that's not even an issue that should involve the ISP. I pay them for bandwidth, not to be my nanny. It's akin to a car dealer that keeps checking into to make sure I'm not running drugs in the car I bought from them. Right or wrong, legal or illegal, I paid for the car/bandwidth, so butt the hell out or I'm going to either find another seller who doesn't bother me about what I'm doing, or just ignore your and route around your interference.
I want an ISP that sells me a pipe. That's it. What I send down it is of no concern, and if I pay for 5Mbps or whatever other arbitrary number, then I can't possibly "steal" bandwidth from other users because by definition I'm already limited to the amount that you sold me. If you can't provide it then don't sell it, because some users will use what you sell them. If you took the current ISP business model to any other industry you'd be laughed out of town, yet they get away with it. Can you imagine signing up for a "3 DVD's at a time" plan from Netflix and then when you actually check out 3 at a time they start bitching up a storm because "You're hoarding the DVD's!!! None of the other customers will be able to rent any of them!!!". Of course not. Because like most industry's they understand that if you sell a capacity you better damn well be able to meet it.
Re:A little extreme there, don't you think? (Score:5, Interesting)
Re:A little extreme there, don't you think? (Score:5, Interesting)
"that Car Dealer thing is a terrible analogy. With the ISP model, everything you do with the 'bandwidth' you paid for goes through *their* systems first - "
Which is bullshit, consider the post office, I order something online from a retailer, does this give the shipping company or government the right to open my mail and packages because it passes through their facilities? It's bullshit plain and simple. They don't have a right to watch and monitor what you send. It's just another cash grab disguised as "helping the consumer"
Re: (Score:3, Insightful)
FedEx/UPS/DHL have every right to open your packages, yes. You grant them that right when you agree to their shipping terms. Perhaps you should read the airbill before you sign it. The government operates under a different set of rules than
Re:A little extreme there, don't you think? (Score:5, Insightful)
It's called a society and there are acceptable and unacceptable behaviors. Being a filthy pirate and hogging all the bandwidth is not nor should be acceptable behavior even though you really like all the free stuff you get from it.
You can't hog all the bandwidth, you can only hog the bandwidth allocated to you.
What you're saying is this:
The ISP gave my neighbourhood 500mbps, and some asshole is using all of it so I can get on the internet, but still paying for it!
The realty is this however:
The ISP gave me personally 10mbps, and the asshole ISP is telling me now I can't use all of it but still expecting me to pay.
See the difference here?
Re:A little extreme there, don't you think? (Score:5, Insightful)
That's equivalent to saying "here is some electricity, but you can only use it to power your stove. If you use it for your air conditioner, you're violating our ToS and we'll cut you off"
It makes absolutely no sense.
Re:A little extreme there, don't you think? (Score:5, Insightful)
A car lease would be a more accurate analogy since you are only leasing the equipment.
Still, would you lease a car if it came with some guy who sat in the back seat and bitched about the miles you put on the vehicle? Maybe disable the car or limit how far you can travel during periods of high usage? Or said "No, you can't drive to X because X is the bad part of town and you can't possibly have a legitimate reason to go there"?
Re: (Score:3, Funny)
LOL! Well.. good luck, I hope she's worth it, and with any luck the wife will never find out about her. Don't forget to burn the receipts!
Re: (Score:3, Insightful)
Re:A little extreme there, don't you think? (Score:4, Insightful)
Re:A little extreme there, don't you think? (Score:4, Insightful)
You do, if you've paid for the right to graze 10,000 sheep there. If the land can handle 20,000 sheep, and the land owner has sold these grazing rights thrice, who is at fault?
Re:A little extreme there, don't you think? (Score:5, Insightful)
Re:A little extreme there, don't you think? (Score:5, Insightful)
Actually yes, I can very well imagine that. Overselling capacity is a common practice in lots of industries, based on the customers' statistical use. For example, where I live, I have signed for an electrical plan that entitles me to use a certain amount of electrical power at a given time (=bandwidth). If everyone in my neighborhood used the power they're entitled to, the power lines would melt.
See also: banks and loans, but that's not a good example nowadays ;)
The ISP's problem is they oversold based on a given statistical model. That model is becoming obsolete as people increasingly use P2P. So they're trying to stem the tide by crying wolf (as in this example), or by claiming that the users are doing illegal stuff (copyright infringement) and should stop.
Re:A little extreme there, don't you think? (Score:5, Interesting)
Excellent analogy.
Selling a clearly marked service "
- "5mb/sec, 50gb/month"
- "1 air transfer to new york, you and 20kg of stuff, this friday at 0800"
then they oversell their capacity based on statistical analysis and when their statistical model fails, which it will always do, statistically speaking, they tell you
- "you bandwidth hog, we bill you on a backdated, horribly expensive business plan AND cut you off from now on AND never deal with you again. And if you sue, we tell everyone about your midget porn"
respective
- "We are totally sorry you cannot take this plane, take a later plane with an upgrade to business class OR take a hotel on us OR take some hundred dollar compensation"
And I was always furious about airlines doing this. Now it turns out they're actually pretty sensible about this matter and pure angels when compared to other businesses.
Re:A little extreme there, don't you think? (Score:5, Interesting)
If you took the current ISP business model to any other industry you'd be laughed out of town, yet they get away with it.
Cough...fractional reserve banking...cough
Re:A little extreme there, don't you think? (Score:5, Insightful)
exactly. the argument espoused in this article is fundamentally flawed. in fact, it reads like it was written by an industry mouthpiece for the sole purpose of demonizing P2P users without absolutely no regard to logic or reality.
first off, as you said, it's impossible for the "download fiends" to actually use more than their share of bandwidth. if i have a 56K dial-up connection, there's no way for me to just decide, "hrmmm, this isn't fast enough for me. i think i'll be a dick and download at 9 Mbps by stealing bandwidth from my neighbors."
secondly, the author seems to be suggesting that everyone should use, or have access to, the exact same amount of bandwidth regardless of what they paid for, and that this level of bandwidth is decided by how much he personally uses/needs. well, that's very convenient for him and the ISPs. most of us are paying for 3+ Mbps connections, some people are paying for much more than that, but i guess we should all only be allowed to use 1~3% of the bandwidth we paid for because that's how much the author needs for his daily web surfing, e-mail, and posting of shitty articles on the web.
but why stop there? why not divide up internet bandwidth evenly between all 6.6 billion people around the globe. total global broadband internet bandwidth was estimated by Cisco [cisco.com] to be 5,372 petabytes per month in 2008. divided up between 6.6 billion people means we all get a 0.00265869476 Mbps connection--that's each person's 'fair share' of internet bandwidth. of course, we would all have faster internet connections if it weren't for those darn greedy business/enterprise internet subscribers.
internet bandwidth isn't a fixed commodity, or a limited natural resource. technology has always been driven by consumer demand, and broadband internet is no different. it's bandwidth-intensive applications like P2P, streaming-video/audio, enterprise applications, etc. that create the push for infrastructure upgrades and ever-increasing connection speeds/network capacities. it's idiotic to accuse "power users" or "downloaders" of destroying the internet or stealing other people's bandwidth. it's even more idiotic to think that everyone should use as little bandwidth as you do, as there's always going to be a someone who uses even less bandwidth. artificially manipulating internet usage while overselling more and more is what's going to cause broadband connection quality to continue to decrease. meanwhile, there are ISPs in Japan and Korea who are doing the exact opposite by increasing network capacity and connection speeds to meet the growing demand. perhaps if ISPs in the U.S. and Canada focused on making technological progress rather than opposing it, we'd be rolling out 1 Gbps symmetric broadband connections too, rather than fussing over people actually using their 3-4 Mbps connections.
Re:A little extreme there, don't you think? (Score:4, Interesting)
I think you lost a lot of credibility when you called a contributor to the WiFi and Ethernet specs an "industry mouthpiece".
Overselling peak bandwidth is fine (Score:5, Interesting)
Mislabeling it is not. If you sell 1MBps with a 25GB/month cap, then you need to be advertising your "1MBps peak bandwidth, 0.01MBps constant bandwidth" service, not misleading your prospective customers.
Practically every ISP should be overselling peak bandwidth; because people don't all use it at the same time, your only choices are to let them use as much as they can (overselling) or to throttle them. But both peak and aggregate bandwidth are important; if you're not providing much of the latter you shouldn't get to imply otherwise.
Re:A little extreme there, don't you think? (Score:5, Interesting)
The real world of us grown-ups outside the Soviet Union is not about real actual costs and real actual usage, it is about contracts and contractual compensation.
Which is the reason why a bottle of Coke costs 1 dollar at the store and 20 dollar at a fancy restaurant.
Which is the reason that all the people flying with you in an airplane all paid a different price for their seat.
If you abolish that, you help people in the short run, but instantly abolish freedom of contract as the basis of any and all successful economies.
But that's too far out to mention here, because in this country, we have laws of commerce which basically just say "a contract is a contract is a contract" albeit in a hundred different clauses.
Which brings us back to your post: company A offers a contract to the general public explictly stating "x mbit/sec and no other limits for the low low price of 10 dollars per month". When General Joe Public accepts this contract, Company A and Joe are in a binding contractual obligation with each other, out of which neither can escape for non-serious reasons without serious lawful consequences.
Company A didn't sell "a reasonable and sane share of x mbit/sec, while we define what 'sane' actually means" just as Joe Public didn't pay with only a part of his 10 dollars.
If that wouldn't be the case, we would have an economy where every partner in a contract could give as much or as little as he wanted. This may work for money donations on Christmas and candy on Halloween, but is no basis for an economy. That's why we write down contracts since the Middle Ages and have contract lawyers a dime a dozen.
If you object to that, I will gladly sell you my new car for which YOU pay full retail while I deliver only a glossy brochure, three wheels, a tiny spare wheel and a bag of seat stuffing. And then terminate my contract with you telling all the world how greedy YOU are.
Re:A little extreme there, don't you think? (Score:5, Interesting)
The problem with bittorrent, is that it's MORE convenient than watching TV the old fashioned way. All the benefits of TIVO, except that I can use my computer (and keyboard) to specify which shows I want. I don't care which channels are broadcasting them, they just appear in the downloaded folder. I can watch from any computer in the house (or outside with a laptop). There are no DRM restrictions.
Re:A little extreme there, don't you think? (Score:4, Insightful)
Using your stupid analogy, this would be more like threatening to raze the entire city to the ground because no one intervened to stopped the wife from being locked in the bedroom.
So she should sacrifice her entire life for people who clearly don't care? Why not let them all burn? Are you sure you wouldn't do the same if you were in her position? What if it was worse then being locked in the bedroom?
Ok, moving on from a rather stretched analogy...
Anyone who is caught using uTorrent with this setting gets their broadband internet access contract torn up.
Interesting anecdote. A few years ago, my NTL contract specifically mentioned how traffic over TCP/IP had to be legal, etc. For some reason UDP, ICMP, etc was not mentioned. Odd. I'm no longer with them, and they no longer exist anymore, so I can't check to see if its changed.
Don't even pretend that most bit torrent traffic is legitimate and legal. For every Linux DVD image distributed by bittorrent, there is probably dozens of times that much data in blatantly bootlegged content being distributed.
I don't care. I have *never* pirated anything over bittorrent, even thought I've used it a number of times.
Re:A little extreme there, don't you think? (Score:5, Insightful)
While not correct if someone wants to be pedantic about it, it's very common to refer to the entire IP stack as TCP/IP or the TCP/IP stack. I can't think of a book that touches on networking either in part or is the entire subject of the book that I've read that does not use TCP/IP as the generic term for the entire stack. Possibly not a good idea for a legal document, but that's how it is.
Just like even though kleenex is a type of tissue, but tissue is not a type of kleenex, if someone asked you for a kleenex you wouldn't respond "I don't have any. All I've got here are these Great Value Facial Tissues", you'd just point them to whatever you have and know exactly what they meant. The same goes for when someone says "TCP/IP", while TCP/IP is a more specific thing than just IP, you know (or should know) what someone means and know that they very well may be referring to the entire stack, not just TCP and its sub-protocols specifically.
Re:A little extreme there, don't you think? (Score:5, Insightful)
Don't even pretend that most bit torrent traffic is legitimate and legal.
So what? Piracy is a social problem. Blocking BT, which IS being used legitimately, is a wrong-headed attempt to use technology to "solve" a social problem.
And in this case, they're trying to do it on the most flexible network in the world, one that's SUPPOSED to route around problem areas.
Re: (Score:3, Interesting)
You know what I'd like to see happen? Deliver the throughput that I pay for. If I exceed that throughput, charge me for whatever I use in excess of my allotment, or cut off my service. Whatever the terms of my contract state.
My ISP charges me a fixed rate for a fixed amount of throughput (100 GB per month). If I and everyone one else try to download large files du
Comment removed (Score:5, Insightful)
Re: (Score:3, Insightful)
...and those 10 guilty persons, what about them?
They'll never cause another innocent to suffer?
Your logic (I know it's a stretch to even call it that) falls flat when those 10 guilty persons set free cause suffering to countless other innocents; such that could have been prevented but for the suffering of that one innocent.
We all suffer for the individual and the individual suffers for all. That's called society. Deal with it.
Re:Well Duh (Score:5, Interesting)
Sounds like the ISPs should have used the tax incentives we gave them to increase network capacity and reach to, you know, increase network capacity and reach. If they had done that years ago to keep pace with the growth of their network traffic, they wouldn't be in this situation.
But no, of course, it has to be the person who uses their connection's fault.
I pay for a pipe. My ISP should take no interest in the source or destination or type of service connections in this pipe. Anything else is just allowing the system to be used abusively.
It isn't appropriate for legitimate bittorrent users to be driving other TCP off the network.
The only way the BitTorrent use can drive other users off to the network is if the ISP's network is misconfigured or is being overutilized due to too much overselling (you have to have some overselling, not everyone is on 24/7). ISPs that have their shit together will have their network designed to handle expected and future traffic growth such that all of their customers can use what they paid for.
you just want to bully other people out of their bandwidth so you get more
They paid for their bandwidth and I paid for mine. I have a cap on my connection speed; they do as well. The only difference is that their YouTube videos load instantly and my BitTorrent transfer is knee-capped. Who is the bully here?
This isn't the right way for BitTorrent to move forward
What is the right way to move forward? Accept that there are two levels of Internet traffic: "clean, good, wholesome non BitTorrent traffic" and "dirty, evil, corrupting BitTorrent traffic"?
Re:Well Duh (Score:5, Insightful)
Re: (Score:3, Insightful)
Ten years ago people only maxed out their connections 5% of the time. Nobody promised it would be like that forever.
Re:Well Duh (Score:5, Insightful)
Don't meter then. Sell them a realistic line speed.
My ISP is selling me a line speed. In an ideal world (leaving out the marketing droids), they will be selling me a speed that I can reasonably expect on their already oversold network. They will cap my network connection at this speed such that I can never exceed it, and that's it. That's all that they will need to do.
In the real world, however, the line speed they sell seems to have nothing to do with what their network capacity is. Their line speed seems to do with "having a bigger one than the next guy" to bring in more subscribers even if their network can't handle it. As a result, they oversell a network that already can't realistically cope with their utilization numbers. Instead of looking at utilization and capacity numbers and figuring out what they can realistically support, they make shit up.
This making shit up is biting them in the ass. Hard. The need to do one of two things:
They've been dragging their feet on the first item because they want to erect tollbooths and speedbumps (destroying network neutrality along the way) so that they become the gatekeepers of the Internet - using public funds to fuel a private agenda, penalizing popular sites because they didn't think of the idea first or because it threatens their business model. They won't do the second because honesty is apparently taboo even if their realistic line speeds are pretty much an open secret (see dslreports.com).
Re:Ummm (Score:5, Funny)
Call in Mr Stevens, he's unemployed and looking for work.
Re:Ummm (Score:4, Insightful)
More on this story... (Score:5, Funny)