Открытый вариант протокола обмена файлами BitTorrent на основе UDP.
Micro Transport Protocol ( μTP , иногда uTP ) — это открытый вариант протокола однорангового обмена файлами BitTorrent на основе протокола пользовательских датаграмм (UDP), предназначенный для устранения задержек и других проблем с контролем перегрузки, характерных для обычного BitTorrent по протоколу управления передачей (TCP), обеспечивая при этом надежную, упорядоченную доставку.
Он был разработан для автоматического замедления [1] скорости, с которой пакеты данных передаются между пользователями одноранговых файлообменных торрентов, когда это мешает другим приложениям. Например, протокол должен автоматически разрешать совместное использование линии DSL между приложением BitTorrent и веб-браузером.
Разработка
μTP появился в результате исследований в Internet2 по QoS и высокопроизводительной массовой передаче данных , был адаптирован для использования в качестве фонового транспортного протокола компанией Plicto, основанной Станиславом Шалуновым и Беном Тейтельбаумом [2] и позднее купленной BitTorrent, Inc. в 2006 году, и далее доработан ее новым владельцем. [3] Впервые он был представлен в бета-ветвях μTorrent 1.8.x и опубликован в альфа-сборках μTorrent 1.9. [4] [5]
Реализация μTP, используемая в μTorrent, позднее была выделена в библиотеку «libutp» и опубликована под лицензией MIT . [6] [7]
Первым бесплатным программным клиентом, реализовавшим μTP, был KTorrent 4.0. [8] [9] libtorrent реализует μTP с версии 0.16.0 [10] и используется в qBittorrent с версии 2.8.0. [11] Tixati реализует μTP с версии 1.72. [12] Vuze (ранее Azureus) реализует μTP с версии 4.6.0.0. [13] Transmission реализует μTP с версии 2.30. [14]
контроль перегрузки μTP
Алгоритм управления перегрузкой, используемый μTP, известный как фоновый транспорт с низкой дополнительной задержкой ( LEDBAT ), направлен на уменьшение задержки, вызванной приложениями, использующими протокол, при максимальном увеличении пропускной способности, когда задержка не является чрезмерной. [15] [16] Кроме того, информация от контроллера перегрузки μTP может использоваться для выбора скорости передачи TCP-соединений. [17]
LEDBAT описан в RFC 6817. По состоянию на 2009 год детали реализации μTP отличались от деталей актуального на тот момент проекта Интернета. [18]
μTP также добавляет поддержку обхода NAT с использованием пробоя UDP между двумя одноранговыми узлами с ограниченным портом, где третий одноранговый узел без ограничений действует как сервер STUN . [19] [20]
Смотрите также
Ссылки
- ^ "Forum.bittorrent.org / Несколько комментариев о µTP (BEP-29)". Архивировано из оригинала 1 марта 2010 г. Получено 15 ноября 2009 г.
- ^ Вот почему ваши загрузки BitTorrent движутся так быстро, Fastcolabs, 2013-07-29, Получено 6 ноября 2013 г.
- ^ http://www.slideshare.net/eCommConf/eric-klinker-presentation-at-emerging-communication-conference-awards-2010-america/11 Хронология uTP, слайд 11, «Эта зеленая революция — повышение доходности ваших сетевых инвестиций», конференция eComm America, Сан-Франциско, Калифорния, апрель 2010 г.
- ^ Бейнум, Ильич ван (2008-12-02). "?Переход Torrent на UDP и почему небо не падает". Ars Technica . Получено 11.05.2021 .
- ^ "uTorrent переходит на UDP, чтобы улучшить работу". www.thinkbroadband.com . Получено 11.05.2021 .
- ^ "Libutp, реализация µTP с открытым исходным кодом, теперь выпущена (Страница 1) / Анонсы / Форумы сообщества µTorrent". Архивировано из оригинала 2011-01-23 . Получено 2011-01-15 .
- ^ bittorrent/libutp, BitTorrent Inc., 2021-05-08 , получено 2021-05-11
- ^ "KTorrent — первый клиент BitTorrent, использующий открытый исходный код uTP * TorrentFreak" . Получено 11.05.2021 .
- ^ "KTorrent 4.0 вышел". 24 мая 2010 г. Архивировано из оригинала 2015-04-02.
- ^ "Архив Google Code — долгосрочное хранилище для хостинга проектов Google Code". code.google.com . Получено 11.05.2021 .
- ^ "Официальный сайт qBittorrent". www.qbittorrent.org . Получено 2021-05-11 .
- ^ "Tixati.com - Новости". www.tixati.com . Получено 2021-05-11 .
- ^ "Версия 4400 4702 Журнал изменений - VuzeWiki". wiki.vuze.com . Получено 2021-05-11 .
- ^ "Изменения – Передача". Архивировано из оригинала 2015-05-24 . Получено 2012-07-12 .
- ^ "Техническая информация о UDP". Архивировано из оригинала 2009-05-12 . Получено 2008-12-23 .
- ^ "Forum.bittorrent.org / Несколько комментариев о µTP (BEP-29)". Архивировано из оригинала 1 марта 2010 г. Получено 15 ноября 2009 г.
- ^ "Сообщение разработчика "Грега Хейзела" в теме "μTorrent 1.9 alpha"". 2008-11-26. Архивировано из оригинала 8 февраля 2009 года . Получено 2009-03-08 .
- ^ "Forum.bittorrent.org / Несколько комментариев о µTP (BEP-29)". Архивировано из оригинала 25 июля 2011 г. Получено 15 ноября 2009 г.[ необходима полная цитата ]
- ^ "ΜTorrent 1.9 alpha 15380 (Страница 1) / Анонсы / Форумы сообщества µTorrent". Архивировано из оригинала 25 марта 2013 г. Получено 23 декабря 2012 г.
- ^ "Распределенное пробивание отверстий UDP для протокола BitTorrent (страница 1) / Обсуждение дизайна протокола / Форумы сообщества µTorrent". Архивировано из оригинала 19 июня 2013 г. Получено 23 декабря 2012 г.
Внешние ссылки
- Предложение 29 по улучшению BitTorrent - транспортный протокол μTorrent
- TCP-LP
- swift - многосторонний транспортный протокол