Cross-posting a message I wrote today for Dave Farber’s Interesting-People mailing list. The topic is regarding ISPs and their policies towards high bandwidth applications such as BitTorrent. The thread was started by Brett Glass, owner of a small ISP in Wyoming; the entire thread is archived here, while his specific message which I replied to is here.
From: Jeff Porten
Sent: Monday, February 18, 2008 1:58 PM
Subject: Re: [IP] Re: Comments on LARIAT and Comcast not same problem
On Feb 17, 2008, at 3:11 PM, Brett Glass wrote:
The default is for [BitTorrent to take up all available bandwidth]. And how many gamers, thirsting for the latest World of Warcraft update, would change that default (if they knew how)?
I’ve used over a dozen different BitTorrent clients; most of these do not expose their defaults to the users or allow the user to modify them. The ones that do clearly differ in their default settings. So your argument is provably incorrect. There is no “the default”, and I strongly suspect that if you were to download a dozen or so BitTorrent programs, you’d find that the defaults are set rather reasonably.
Secondly, in the “unprovably incorrect” category, anyone doing a casual search on “how do I use this BitTorrent thing” — which nearly everyone has to do as the software tends towards the complex — will come across many web documents that say, “do not do X, Y, or Z, as this is bad for the network.” [1] These are usually explained in terms of “ultimately bad for your download speed”, so it speaks to user self-interest rather than trying to inspire hearts and bunnies in the user.
[1]: http://www.azureuswiki.com/index.php/Good_Torrents
Alas, there is. Even if you throttle your BitTorrent client, your system (and your ISP) will be beaten on relentlessly with requests for the material. Day and night.
The largest swarms I’ve ever seen have about 40,000 members; the medians can range from 50 to 2,000 members depending upon whether you’re grabbing the latest hot release, or joining an older swarm. According to http://wiki.theory.org/BitTorrentSpecification#Messages , the messages in question are mostly measured in single-digit bitlengths [1], so presumably these require a single IP packet in each direction. The only large bandwidth requirements are in response to the request packets, which is precisely where the throttles come into play.
[1] Typo. I should have said bytelengths.
So I have difficulty with your characterization that your system is “beaten on”; it seems to me that a properly throttled BitTorrent client would be kinder to networks than, say, RSS readers and other glatt kosher network apps. Likewise, I note that iTunes podcast downloads and various network file transfers invariably max out available local bandwidth, and for some reason no one is complaining loudly about these — despite the fact that they are substantively similar to unthrottled torrents.
Long after your own download is done. And unless you “relent” by not doing P2P, you are still taking your ISP’s bandwidth for a third party.
No. If I am choosing to share a portion of my hard drive, that is a first party use of network resources, and I am the person paying the bills. If I choose to share these with anonymous third parties, that’s my choice — I happen to find it gratifying when a stranger reads my website, and resent an implication that if I don’t know my correspondent, he is somehow stealing my ISP’s resources.
The entire point is that your software cares not whether any network is “overloaded,” and seeks to bypass all of the safeguards against congestion which are part of the TCP/IP protocol suite. It is thus abusive to the network.
Actually, Brett, my particular software has rather sophisticated mechanisms to judge whether a network is busy. [1] Admittedly there are also instructions to avoid traffic shaping [2], which to my mind ranks up there with the global port 80 block that ISPs imposed on all users after Code Red was released. That said, and as you well should know, these are applications riding on top of the TCP/IP layer, not hacks to the TCP layer itself. If there is anything an end user can do to hack your TCP/IP layer, the fault is not with the clever or clueless user, the fault is with the programmer who left such glaring security holes in your routers and servers.
[1]: http://www.azureuswiki.com/index.php/ConfigAuto-Speed
[2]: http://www.azureuswiki.com/index.php/Avoid_traffic_shaping
One of the most effective P2P mitigation tactics we’ve tried is to slow down the user’s connection to compensate for the excessive duty cycle of P2P applications, keeping the net load (in gigabits per month) imposed on the network by the user down to a reasonable level. It’s the equivalent of, say, limiting the number of plates that a customer at a buffet can fill.
Yes, and this is what so profoundly angers your educated customers. We know that ISPs have always worked on the model that a few users will make high use of their connections, but the vast majority of their users will contribute high profits with low usages. This model dates back to modem banks and dial-up.
There are two ways ISPs can respond:
1) the ethical way is to say, “due to changes in our business model, we are raising our prices/changing our policies/imposing caps.” This gives their customers a chance to review their contracted relationship and decide whether to support the ISP or leave for a better competitor.
2) the unethical way is to modify their infrastructure such that they can screw over their customers in ways that they hope won’t be noticed. I happen to run a bandwidth meter in my menu bar, but ISPs very well know that most people don’t, and that ignorance is their opportunity.
As best as I can tell, ISPs to date have overwhelmingly opted for option #2. It is my opinion that the attitude of trying to put one over the ISPs is largely due to the obviously poor relationship between provider and client.
The flaw in this scheme is that it still lets abusers take bandwidth from us for the benefit of third parties, such as Blizzard and Vuze, without compensation.
Just so I’m clear — the “abusers” are people who pay you money, yes? I want to make sure that I’m understanding the terminology you’re using for your customers.
I run two businesses, and I routinely fire my underperforming customers and clients when they are more trouble than they are worth. The difference is, I do this politely, and I don’t call them names or imply that they are thieves for using the services I have promised them.
Best,
Jeff Porten
Our company’s Terms of Service, to which all of our customers agree, define abuse very carefully. Any customer does have the potential to become an abuser, of course, but if he or she does so it is according to criteria to which he or she has specifically agreed. We are not being unfair; we are trying to maintain good quality of service for customers who are NOT abusive of the network.