Micro Transport Protocol
ファイル共有 |
---|
![]() |
Micro Transport Protocol(μTP, uTP)は、User Datagram Protocol(UDP)に基づくBitTorrentのP2Pファイル共有プロトコルのオープンなバージョンであり、従来のTransmission Control Protocol(TCP)上のBitTorrentに見られるネットワーク遅延やその他の輻輳制御の問題を軽減しつつ、信頼性のある順序に沿った通信を提供することを目的としている。
このプロトコルは、他のアプリケーションに干渉する場合に、BitTorrent利用者間で送信されるデータパケットの速度を自動的に減速させるように設計された[1]。例えば、このプロトコルはBitTorrentアプリケーションとウェブブラウザとの間でDSL回線を共有することを自動的に可能にする。
開発
[編集]μTPは、Internet2におけるQoSおよび高性能大容量伝送の研究から生まれ、スタニスラフ・シャルノフおよびベン・タイテルバウムによって設立されたPlictoによりバックグラウンド伝送プロトコルとして適用され[2]、その後2006年にBitTorrent社に買収されて以降、同社によりさらに開発が進められた[3]。μTorrent 1.8.xのベータ版で初めて導入され、μTorrent 1.9のアルファ版で公開された[4][5]。
μTorrentで使用されたμTPの実装は後に「libutp」ライブラリとして分離され、MITライセンスの下で公開された[6][7]。
μTPを実装した最初の自由ソフトウェアクライアントはKTorrent 4.0である[8][9]。libtorrentはバージョン0.16.0からμTPを実装し[10]、qBittorrentはバージョン2.8.0から使用している[11]。Tixatiはバージョン1.72からμTPを実装している[12]。Vuze(旧Azureus)はバージョン4.6.0.0からμTPを実装している[13]。Transmissionはバージョン2.30からμTPを実装している[14]。
μTPの輻輳制御
[編集]μTPで使用されている輻輳制御アルゴリズムは、Low Extra Delay Background Transport(LEDBAT)と呼ばれ、プロトコルを使用するアプリケーションによるレイテンシを最小化しつつ、過剰なレイテンシが発生しない限り帯域幅を最大限活用することを目的としている[15][16]。さらに、μTPの輻輳制御機構から得られる情報は、TCP接続の転送速度を選択する際にも使用できる[17]。
LEDBATはRFC 6817で記述されている。2009年時点では、μTPの実装の詳細は当時のInternet Draftとは異なっていた[18]。
μTPはまた、NAT traversalに対応しており、UDPホールパンチングを利用して2つのポート制限付きピア間で、制限のない第三のピアがSTUNサーバとして機能する構成が可能である[19][20]。
関連項目
[編集]- TCPの輻輳制御
- Multipurpose Transaction Protocol
- QUIC
- Real Time Media Flow Protocol
- Stream Control Transmission Protocol
- UDP-based Data Transfer Protocol
脚注
[編集]- ^ “Forum.bittorrent.org / A few comments about µTP (BEP-29)”. 2010年3月1日時点のオリジナルよりアーカイブ。2009年11月15日閲覧。
- ^ This Is How Your BitTorrent Downloads Move So Fast, Fastcolabs, 2013-07-29, Retrieved November 6, 2013
- ^ 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.
- ^ Beijnum, Iljitsch van (2008年12月2日). “?Torrent's switch to UDP and why the sky isn't falling” (英語). Ars Technica. 2021年5月11日閲覧。
- ^ “uTorrent shifts towards UDP to make it work better”. www.thinkbroadband.com. 2021年5月11日閲覧。
- ^ “Libutp, an open source implementation of µTP, has now been released (Page 1) / Announcements / µTorrent Community Forums”. 2011年1月23日時点のオリジナルよりアーカイブ。2011年1月15日閲覧。
- ^ bittorrent/libutp, BitTorrent Inc., (2021-05-08) 2021年5月11日閲覧。
- ^ “KTorrent First BitTorrent Client To Adopt Open Source uTP * TorrentFreak” (英語). 2021年5月11日閲覧。
- ^ “KTorrent 4.0 is out” (2010年5月24日). 2015年4月2日時点のオリジナルよりアーカイブ。2025年5月5日閲覧。
- ^ “Google Code Archive - Long-term storage for Google Code Project Hosting.”. code.google.com. 2021年5月11日閲覧。
- ^ “qBittorrent Official Website”. www.qbittorrent.org. 2021年5月11日閲覧。
- ^ “Tixati.com - News”. www.tixati.com. 2021年5月11日閲覧。
- ^ “Version 4400 4702 Changelog - VuzeWiki”. wiki.vuze.com. 2021年5月11日閲覧。
- ^ “Changes – Transmission”. 2015年5月24日時点のオリジナルよりアーカイブ。2012年7月12日閲覧。
- ^ “Technical information about UDP”. 2009年5月12日時点のオリジナルよりアーカイブ。2008年12月23日閲覧。
- ^ “Forum.bittorrent.org / A few comments about µTP (BEP-29)”. 2010年3月1日時点のオリジナルよりアーカイブ。2009年11月15日閲覧。
- ^ “Post by developer "Greg Hazel" in thread "μTorrent 1.9 alpha"” (2008年11月26日). 2009年2月8日時点のオリジナルよりアーカイブ。2009年3月8日閲覧。
- ^ “Forum.bittorrent.org / A few comments about µTP (BEP-29)”. 2011年7月25日時点のオリジナルよりアーカイブ。2009年11月15日閲覧。[要文献特定詳細情報]
- ^ “ΜTorrent 1.9 alpha 15380 (Page 1) / Announcements / µTorrent Community Forums”. 2013年3月25日時点のオリジナルよりアーカイブ。2012年12月23日閲覧。
- ^ “Distributed UDP hole punching for the BitTorrent protocol (Page 1) / Protocol Design Discussion / µTorrent Community Forums”. 2013年6月19日時点のオリジナルよりアーカイブ。2012年12月23日閲覧。
外部リンク
[編集]- BitTorrent Enhancement Proposal 29 - μTorrent transport protocol
- TCP Low Priority
- swift - the multiparty transport protocol