|:•) i, Cringely - Net Neutered: Why don't they tell us ending Net Neutrality might kill BitTorrent?|
By Robert X. Cringely
June 22, 2006
Last week's column was about Bill Gates' announced departure from day-to-day management at Microsoft and a broad view of the Net Neutrality issue. We'll get back to Microsoft next week with a much closer look at the challenges the company faces as it ages and what I believe is a clever and counter-intuitive plan for Redmond's future success. But this week is all about Net Neutrality, which turns out to be a far more complex issue than we (or Congress) are being told.
Net Neutrality is a concept being explored right now in the U.S. Congress, which is trying to decide whether to allow Internet Service Providers to offer tiers of service for extra money or to essentially be prohibited from doing so. The ISPs want the additional income and claim they are being under compensated for their network investments, while pretty much everyone else thinks all packets ought to be treated equally.
Last week's column pointed out how shallow are the current arguments, which ignore many of the technical and operational realities of the Internet, especially the fact that there have long been tiers of service and that ISPs have probably been treating different kinds of packets differently for years and we simply didn't know it.
One example of unequal treatment is whether packets connect from backbone to backbone through one of the public Network Access Points (NAPs) or through a private peering arrangement between ISPs or backbone providers. The distinction between these two forms of interconnection is vital because the NAPs are overloaded all the time, leading to dropped packets, retransmissions, network congestion, and reduced effective bandwidth. Every ISP that has a private peering agreement still has the right to use the NAPs and one has to wonder how they decide which packets they put in the diamond lane and which ones they make take the bus?
Virtual Private Networks are another example of how packets can be treated differently. Most VPNs are created by ISP customers who want secure and reliable interconnections to their corporate networks. VPNs not only encrypt content, but to a certain extent they reserve bandwidth. But not all VPNs are created by customers. There are some ISPs that use VPNs specifically to limit the bandwidth of certain customers who are viewed as taking more than their fair share. My late friend Roger Boisvert, a pioneer Japanese ISP, found that fewer than 5 percent of his customers at gol.com were using more than 70 percent of the ISP's bandwidth, so he captured just those accounts in VPNs limited to a certain amount of bandwidth. Since then I have heard from other ISPs who do the same.
As pointed out last week, though, there is only so much damage that an ISP can do and most of it seems limited to Voice-over-IP (VoIP) telephone service where latency, dropouts, and jitter are key and problematic. Since VoIP is an Internet service customers are used to paying extra for (that, in itself, is rare), ISPs want that money for themselves, which is the major reason why they want permission to end Net Neutrality--if it ever really existed.
The implications of this end to Net Neutrality go far beyond VoIP, though it is my feeling that most ISPs don't know that. These are bit schleppers, remember, and the advantages of traffic shaping are only beginning to dawn on most of them. The DIS-advantages are even further from being realized, though that will start to change right here.
The key question to ask is what impact will priority service levels have on the services that remain, those having no priority? In terms of the packets, giving priority to VoIP ought not to have a significant impact on audio or video downloads because those services are buffered and if they take a little longer, well that's just the price of progress, right? Wrong. Let's look at the impact of priority services on BitTorrent, the single greatest consumer of Internet bandwidth.
Though e-mail and web surfing are both probably more important to Internet users than BitTorrent, the peer-to-peer file transfer scheme uses more total Internet bandwidth at something over 30 percent. Some ISPs absolutely hate BitTorrent and have moved to limit its impact on their networks by controlling the amount of bandwidth available to BitTorrent traffic. This, too, flies in the face of our supposed current state of blissful Net Neutrality. A list of ISPs that limit BitTorrent bandwidth is in this week's links, though most of them are, so far, outside the United States.
BitTorrent blocking or limiting can be defeated by encrypting the torrents, but that increases overhead, causes a bigger bandwidth hit, and defeats local caching schemes that might help reduce bandwidth demand. So blocking BitTorrent actually makes life worse for all of us, which may be why most U.S. ISPs aren't doing it.
So let's assume that ISPs are allowed to offer tiered services. What impact will that have on BitTorrent? The answer lies in the nature of the TCP/IP protocol. Here is an analysis from a friend who is far more savvy about these things than I am:
"If you look at the amount of overhead TCP needs it's exponential to how slow each connection is; the slower (the connection) the more overhead because the window sizes are smaller and more control packets are being used for verification. And you know what? BitTorrent is FAR WORSE. Remember that for each file you download on BitTorrent you connect to dozens, possibly even hundreds of people, and the slower each of those connections is the more the overhead increases.
"About a month ago the amount of torrents I may (have been) automatically downloading at any given time was between 10 and 30. This means that I was getting no more than 1Kbps from every peer, which meant about half of my bandwidth usage was in BitTorrent protocol overhead and not in downloading file data. I brought this (overhead) down (by 40 percent) by just having five torrent downloads at a time and queuing the rest, and I even got the files faster. I then did some more scheduling and what not to get (my bandwidth use down by a total of 70 percent) and I still downloaded about the same amount of real file data.
"So what happens when everyone's VoIP or other preferred packets get preference over my torrent packets? Since I have no knowledge of the other people's usage in my aggregate network I can't adjust well for changes in the network. The BitTorrent traffic that is going will have exponentially increased overhead due to the slow downs, increasing overall Internet packet overhead (with BitTorrent already 30+ percent of all Internet traffic). Which means that allowing the telco's to subsidize the cost of improving their infrastructure by having preferred packets could exponentially increase the cost accrued by the larger internet and backbone providers just to keep costs down at the aggregate level."
To recap: Giving priority to some traffic puts a hurt on other types of traffic and when that other traffic constitutes more than 30 percent of the Internet, the results can be severe for all of us. On the Internet everything is connected, and you can't easily ignore the impact of one service on another.
With this new knowledge I did a simple test that you can do, too. I have a Vicomsoft Internet Gateway that does very fine traffic shaping, though there are many similar products available, like ClarkConnect and some others that are open source. Many routers can do traffic shaping, too. I did a couple BitTorrent downloads of specific files, measuring how much time and total bandwidth was required. Then I deleted those files, changed my Internet Gateway settings to give priority to my Vonage VoIP packets, called my Mom on the phone and started downloading the same two BitTorrent files.
Vonage and many other VoIP services use an Analog Telephone Adapter (ATA) device to connect your phone to the network. That ATA can do traffic shaping, too, which requires that it be connected inline between your broadband modem and router. Of course I didn't realize this until AFTER my test was done.
My test results were clear. I had no problem downloading the same BitTorrent files, but it took longer. That was no surprise. After all, I WAS talking to my Mom, which would have taken some bandwidth away from BitTorrent. But the more interesting result was that the total bandwidth required to download the same files using traffic shaping versus not using traffic shaping was almost 20 percent more, which undoubtedly came down to increased BitTorrent overhead due to contention and retransmissions involving the priority VoIP service.
Traffic shaping causes different patterns on the local network, especially aggregate networks that use creative technologies to send Ethernet frames over old telephone and cable infrastructure. It's taken a very long time to get Internet technologies to where they are today, and all the protocols built on top of those technologies operate under certain assumptions. Just like a web site sent over TCP assumes that TCP will make sure all the packets will get to their destination, rich application protocols like BitTorrent operate under assumptions like known patterns in bandwidth changes on aggregate networks.
Let's say Net Neutrality goes away and the broadband ISPs start offering tiered services. My simple test suggests that one possible impact is that Bit Torrent traffic, which currently uses, say, 30 percent of Internet bandwidth, is going to expand to about 36 percent simply because of inefficiencies created by the tiered services. This will increase the backbone costs for ISPs and will take back at least some of the very performance advantage they are supposedly selling to their priority customers.
The result of ending Net Neutrality under this scenario, then, is that the ISPs make money from tiered services but with higher overhead costs and lower priority service levels than one might expect. The ISPs then might try banning BitTorrent to keep it from messing with their tiered services, but we've already establish this can't practically be done on a technical level because torrent encryption can always get around the ban. The only way, in fact, to limit BitTorrent traffic would be to have it made illegal and now we're back again to the clueless Congress that started this whole mess.
I don't think these latter ideas are even in the heads of broadband ISPs. They simply haven't thought that far. But eventually, as they try trimming this and expanding that to solve a problem that shouldn't have existed in the first place and can't otherwise be solved, they'll come up with something all of us will hate. I guarantee it.