Accidental bittorrent on our networks

June 20, 2008

Several times now we've had cases of 'accidental BitTorrent' on our networks (and generally gotten email from the campus network people about it); people running BitTorrent clients on our networks without intending to. It turns out that this is an amusing (to me) consequence of the pervasiveness of laptops and laptop hibernation these days.

(You might reasonably ask why we 'allow' BitTorrent at all. There's at least two reasons; first, without deep packet inspection (and maybe even then) we can't tell what is and isn't BitTorrent traffic, and second, there are legitimate uses for BitTorrent, especially in a Computer Science research environment.)

What I believe generally happens is:

  • at home, the user starts their BitTorrent client on their laptop
  • the client tucks itself discreetly away somewhere in the system
  • the user hibernates or otherwise suspends their laptop, instead of shutting it down outright.
  • the user brings the laptop to here, and un-suspends it, resuming everything including the BitTorrent client (which doesn't care that it changed networks, since it's stateless overall).

It shouldn't surprise anyone that BitTorrent swarms love our network, as they love anything with a fast uplink. The resulting network utilization can be dramatic.

I don't consider this the user's fault; it is a classic case of a collection of design decisions (and human factors issues, like how people forget things in the corner) that make perfect sense in isolation but combine badly. Unfortunately all of the cures that I can think of are more complicated than the disease.

Comments on this page:

By nothings at 2008-06-20 05:58:04:

Actually, cure-wise, it seems to me there are some number of apps that people don't necessarily want to be network blind; that the OS should detect when you've changed networks and send out a message to apps informing them of this, and that some apps should say "hey, you've changed networks, do you really want me to keep running"? (Typically, these are probably all apps we might consider to be "servers".)

Obviously this is "irritating" if you do it all the time and always say "yes", but there are standard solutions to that.

To generalize, it seems to me the problem is that network connectivity is sometimes a "precious resource", and sometimes isn't, and the idea is that people only run those apps that squander the resource when it's not precious, but this doesn't work across network changes for long-running apps. (It's also not quite accurate since network-connectivity-from-university isn't exactly "precious" in the normal way.) Phrased this way, is that suggestive of anything else? Or is this just its own unique edge case?

From at 2008-06-20 17:50:55:

I think that BitTorrent is unique, at least from a consumer perspective. A BitTorrent client, given enough torrents, will saturate your uplink forever. No other consumer application has this behavior, that I know of. One could have umpty-hotillion update programs (measurement obtained from my daughter's computer) running, but they use the network sporadically.

BitTorrent is exceptional (but not unique) in other ways. My home router is excellent in all respects, save that Steam or can vnt can very easily fill up its NAT table--a 5 minute or so block on new connections.

Written on 20 June 2008.
« A thought about filesystem snapshots
A bug reporting paradox: don't put in too much detail »

Page tools: View Source, View Normal, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Fri Jun 20 03:57:01 2008
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.