Micro Transport Protocol(μTP, uTP)は、User Datagram Protocol(UDP)に基づくBitTorrentのP2Pファイル共有プロトコルのオープンなバージョンであり、従来のTransmission Control Protocol(TCP)上のBitTorrentに見られるやその他の輻輳制御の問題を軽減しつつ、信頼性のある順序に沿った通信を提供することを目的としている。
このプロトコルは、他のアプリケーションに干渉する場合に、BitTorrent利用者間で送信されるデータパケットの速度を自動的に減速させるように設計された。例えば、このプロトコルはBitTorrentアプリケーションとウェブブラウザとの間でDSL回線を共有することを自動的に可能にする。
開発 μTPは、Internet2におけるQoSおよび高性能大容量伝送の研究から生まれ、スタニスラフ・シャルノフおよびベン・タイテルバウムによって設立されたPlictoによりバックグラウンド伝送プロトコルとして適用されThis Is How Your BitTorrent Downloads Move So Fast, Fastcolabs, 2013-07-29, Retrieved November 6, 2013、その後2006年にBitTorrent社に買収されて以降、同社によりさらに開発が進められたhttp://www.slideshare.net/eCommConf/eric-klinker-presentation-at-emerging-communication-conference-awards-2010-america/11 uTP timeline, slide 11, "This Green Revolution-improving the yield of your network investment", eComm America Conference, San Francisco, CA, April 2010.。μTorrent 1.8.xのベータ版で初めて導入され、μTorrent 1.9のアルファ版で公開された。
μTorrentで使用されたμTPの実装は後に「libutp」ライブラリとして分離され、MITライセンスの下で公開された。
μTPを実装した最初の自由ソフトウェアクライアントはKTorrent 4.0である。libtorrentはバージョン0.16.0からμTPを実装し、qBittorrentはバージョン2.8.0から使用している。Tixatiはバージョン1.72からμTPを実装している。Vuze(旧Azureus)はバージョン4.6.0.0からμTPを実装している。Transmissionはバージョン2.30からμTPを実装している。
μTPの輻輳制御
μTPで使用されている輻輳制御アルゴリズムは、Low Extra Delay Background Transport()と呼ばれ、プロトコルを使用するアプリケーションによるレイテンシを最小化しつつ、過剰なレイテンシが発生しない限り帯域幅を最大限活用することを目的としている。さらに、μTPの輻輳制御機構から得られる情報は、TCP接続の転送速度を選択する際にも使用できる。
LEDBATはで記述されている。2009年時点では、μTPの実装の詳細は当時のInternet Draftとは異なっていた。
μTPはまた、NAT traversalに対応しており、UDPホールパンチングを利用して2つのポート制限付きピア間で、制限のない第三のピアがSTUNサーバとして機能する構成が可能である。
関連項目
QUIC Real Time Media Flow Protocol Stream Control Transmission Protocol
脚注
外部リンク BitTorrent Enhancement Proposal 29 - μTorrent transport protocol TCP Low Priority swift - the multiparty transport protocol