Changing the game with μTP

μTP or “micro-Transport Protocol” is a new protocol from BitTorrent, Inc. that is at the heart of the new major release of our popular BitTorrent clients “μTorrent” and “BitTorrent Mainline”. It is going to be available as the default transport mechanism in both μTorrent v2.0 and BitTorrent v7.0. So what’s the big deal? And why do we want this to be the centerpiece of our future software?

The fact is that our BitTorrent clients have become incredibly popular with users downloading large files over the internet. So much so that some observers claim that BitTorrent traffic accounts for 30%, 50%, or even more of all Internet traffic. Regardless of the actual numbers (which we have no way of knowing), it is clear that the popularity of BitTorrent is putting such a burden on ISP networks that they sometimes react by slowing down or interfering with that traffic.

Now there is a whole “net neutrality” debate, partly about whether ISPs should be allowed to interfere with internet traffic from one particular app simply because it is “too popular” – some argue that perhaps ISPs could invest more so that supply meets demand – but this debate is not the focus here. At BitTorrent we like to be a bit more pragmatic, to assert that there is responsibility on the part of both the ISPs and authors of popular applications like BitTorrent to make sure that the internet scales smoothly to meet demand.

Which brings us back to μTP:

News of μTP started to leak to the public late last year with some wild and totally untrue reporting that we were trying to make BitTorrent more greedy and were somehow “declaring war” on users of other applications. In fact completely the opposite is true, as was subsequently acknowledged by the initial author’s follow-up article.

μTP is a completely new implementation of the BitTorrent protocol with a major new design objective – μTP is designed to be network friendly – to not swamp network connections when there are other apps trying to send and receive – and to resolve the key problem that ISPs use to justify interference with BitTorrent traffic.

If BitTorrent traffic volume is so great that it overwhelms end-users’ connections (leading to service calls from consumers whose internet doesn’t work), then μTP eliminates this problem by being better at only using bandwidth when there is no other traffic competing, and automatically slowing or stopping BitTorrent transfers before network connections seize up.

Legacy BitTorrent traffic uses the standard internet “TCP” protocol to govern when it tries to go faster or slow down. The problem with TCP is that it can only detect a problem by waiting to see if packets are dropped. Unfortunately, by the time packets are being lost, the problem is already acute and the consumers connection has already drastically slowed or stopped. TCP is a lot like trying to drive with your eyes closed. You only notice something’s wrong when you hit something.

μTP is like driving with your eyes *open* – μTP is able to see problems coming and make much more modest adjustments to ensure the problems don’t cause a car wreck. It does this by being able to detect congestion on a network based on how long a packet takes to be sent from one peer to the next. If things start to take longer, then μTP adjusts the rate of sending accordingly.

As it happens, this trick has required some very deep engineering work – the way the client talks to other clients has had to be completely re-built. As a side effect, because the new protocol so different, it is practically invisible to some of the nasty traffic shaping techniques that some ISPs have been using. We doubt whether this happy result will last for long, and nor is it the point of the technology. The point is to reduce the need for such gear rather than to evade it.

Overall, when we get μTP stable, we’re excited about the potential benefits that this could bring to ISPs by reducing the effective burdens on their networks. Although we stand to gain nothing financially from them for implementing it, we hope to maintain the lead enjoyed by μTorrent and BitTorrent Mainline software as the most popular BitTorrent clients, and hopefully demonstrate how innovation from responsible stakeholders on a neutral internet can lead to winning outcomes all-around.

— Simon–

 Related Posts:

33 Responses to “Changing the game with μTP”

  1. Joshua Rodman

    Uh wait, is it an application protocol or is it a network protocol? The name µCP makes me think you’re trying to replace TCP or UDP, but I bet that isn’t true. Aren’t you just making an improved bittorrent protocol that runs on UDP?

    I mean, I’m sure it’s nontrivial and all, and the right way to do things, but the name seems like a reach.

    Reply
    • Simon Morris

      As a matter of fact µTP is indeed a replacement for TCP, so we think the name is appropriate. You can check out standardization work which we’re chairing at the IETF called the LEDBAT working group

      Reply
      • tissit

        That’s never going to fly. The set protocol types are entrenched in all network equipment that deals above ip level (with connection tracking, for example). So tcp, udp, icmp, igmp it is for anything but a lan.

        Another comment makes it looks like uTP works over UDP which is really your only chance of avoiding tcp. Is that correct?

        Reply
      • Simon Morris

        I agree that replacing TCP is at best a very long shot (my original comment here was sincere but somewhat aspirational). Developing standards like this is certainly the realm of IETF work. But even then, the challenge of a general replacement or upgrade of TCP is daunting to say the very least…

        And yes, uTP sits on top of UDP, meaning that we avoid TCP when client connect with uTP.

        Reply
  2. John

    It’s not a TCP replacement, it’s a new application layer protocol that will indeed be used in conjunction with UDP.

    Reply
  3. Simon Morris

    Sure – I don’t mean to suggest that µTP is a general replacement for TCP. And yes, it is an app-layer protocol for use in conjunction with UDP. But for the isolated case of BitTorrent traffic, µTP replaces the function of congestion control that is normally performed by TCP.

    Reply
  4. amber

    lol I never expected what I just got.

    I’m a Newsgroups fan but thought I’d test this out. I got download speed of 2 mbps and let it choose it’s own upload speed based on it’s own speed test.

    I’m liking this a lot. 🙂

    Reply
  5. Fabian

    At first it looks like the reinvention of the Datagram Congestion Control Protocol which is already in the Linux kernel for some time.

    Reply
  6. bikerdoc

    Should this app not perform to my liking, can it easily be removed through the control panel,”remove programs”?

    Reply
  7. chelsmford taxi numbers

    i have been reading up on ways to get round the throttling of your BitTorrent traffic. Now will this still be relevant with this new protocol in place, or am i simply wasting my time ?

    Reply
  8. jasamvalter

    Verry nice and helpfull work, congratulations

    My blog about networking http://howdoesinternetwork.com it’s writing also about how exactly internet is working and about all the network fundamentials..

    Hope you will enjoy learning from it and help me with some comments and maybe suggestions.

    regards

    Reply
  9. viktoras

    could you tell more about structure of utp, how it’s working and the difference from udp.
    thank you

    Reply
  10. Prem Agnihotri

    How SCTP can be implemented in transport layer with Bittorrent protocol? What to change?

    Reply

Leave a Reply

  • (will not be published)

Trackbacks and Pingbacks:

  1. μTP-micro-Transfer Protocol « M.Senthil Kumar's Blog

    […] http://bittorrent.gyre.wpengine.com/2009/10/05/changing-the-game-with-μtp/#comments Posted by MS_CS Filed in CS Articles Leave a Comment » […]

  2. BitTorrent introduce un nuovo protocollo di comunicazione - Commenta la tecnologia, la telefonia, i software

    […] Via | Blog.Torrent.com […]

  3. click.logg | μTP: il nuovo protocollo ideato da BitTorrent

    […] [Via: BitTorrent Blog] […]

  4. Its Cold Up North « BitTorrent Blog

    […] We’ve talked at length about µTP and its design which specifically avoids causing congestion.  So on a fundamental level, this decision is good news for µTP.    There should be no need to throttle µTP in an effort to address congestion or mitigate a security threat.   And the framework will not permit it otherwise, given its discriminatory nature. […]

  5. μTorrent v2.0 to add ‘game changing’ μTP protocol | TechSunami.info

    […] Says the post: […]

  6. Changing the face of Torrents – New Protocol - Awesome Techs

    […] by oDx on Nov.02, 2009, under General The torrent sharing is about to to change the face of files haring. They are about to launch a new protocol μTP or “micro-Transport Protocol” which is a new protocol from BitTorrent, Inc. It is going to be available as the default transport mechanism in both μTorrent v2.0 and BitTorrent v7.0. Says the post: […]

  7. Point-Click-Wait or Point-Click-Watch… Will Streaming Break BitTorrent? « BitTorrent Blog

    […] our point of view, streaming is not the most ambitious initiative we’ve been involved with (both µTP and Bram’s Live Streaming project are far bigger […]

  8. Easier setup in µTorrent 2.0 and Measurement Lab collaboration « BitTorrent Blog

    […] With the release of µTorrent 2.0 Beta, there has been a lot of great coverage and discussion of µTP and what it means to be “network friendly”.  This is an important change to the […]

  9. µTorrent utilizará las herramientas antifiltrado P2P de Google para autoconfigurarse

    […] convertir el P2P en un protocolo menos pesado para la red. µTorrent 2.0 vendrá además con µTP (micro-Transport Protocol) activado por defecto, que utiliza UDP en vez de TCP como capa de transporte y sólo utiliza el […]

  10. µTorrent 2.0 verwendet jetzt µTP « Lothars Blog

    […] µTorrent 2.0 verwendet jetzt µTP By lotharf Von dem beliebten Bittorrent-Client µTorrent ist jetzt die Version 2.0 erschienen. Gleichzeitig mit diesem Versions-Sprung wurde auch das neue Protokoll µTP eingeführt. Dieses soll TCP ersetzen und viel flexibler als jenes auf die Auslastung von Netzwerken reagieren. Denn die Frage: “Lädst du gerade was runter?” dürfte wohl die am häufigsten gestellte sein, wenn sich zwei Leute über ihr Netzwerk unterhalten. Denn nicht zu Unrecht steht Bittorrent in dem Ruf, andere Dienste in einem Netzwerk zu blockieren (wie übrigens FTP auch). Das ist auch der Grund, weshalb sich Bittorrent den Unwillen mancher Internet-Provider zugezogen hat, die es teilweise ausbremsen oder gar blockieren. Ach Firmen-Netzwerke stehen mit Bittorrent auf Kriegsfuss. Das soll sich jetzt mit dem Protokoll µTP ändern. Es soll Wartezeiten und Staus verhindern, weil es schneller auf Überlastung reagiert; Bittorrent soll andere Dienste dadurch nicht mehr blockieren können. Gleichzeitig soll es auch selbst leichter durch Firewalls durch kommen und sich von den Providern nicht mehr so leicht bremsen lassen. Weitere Infos dazu hier. […]

  11. Easier setup in µTorrent 2.0 and Measurement Lab collaboration | tipst3r

    […] With the release of µTorrent 2.0 Beta, there has been a lot of great coverage and discussion of µTP and what it means to be “network friendly”.  This is an important change to the […]

  12. Point-Click-Wait or Point-Click-Watch… Will Streaming Break BitTorrent? | tipst3r

    […] our point of view, streaming is not the most ambitious initiative we’ve been involved with (both µTP and Bram’s Live Streaming project are far bigger […]

  13. It’s Cold Up North | tipst3r

    […] We’ve talked at length about µTP and its design which specifically avoids causing congestion.  So on a fundamental level, this decision is good news for µTP.    There should be no need to throttle µTP in an effort to address congestion or mitigate a security threat.   And the framework will not permit it otherwise, given its discriminatory nature. […]

  14. The day Net Neutrality died? « BitTorrent Blog

    […] agnostic management techniques and certain applications, like ours, have modified the underlying technology.  And still the Internet grows and mostly still does not labor under the yoke of North Korean or […]