LEDBAT

Алгоритм управления перегрузкой на основе задержки

Low Extra Delay Background Transport ( LEDBAT ) — это способ быстрой передачи данных в Интернете без засорения сети. [1] LEDBAT был изобретен Станиславом Шалуновым [2] [3] и используется Apple для обновлений программного обеспечения , BitTorrent для большинства своих передач [4] и точками распространения программного обеспечения Microsoft SCCM . [5] В какой-то момент времени LEDBAT, по оценкам, передавал 13–20% интернет-трафика . [4] [6] [3]

LEDBAT — это алгоритм управления перегрузкой на основе задержки , который использует всю доступную полосу пропускания , ограничивая при этом увеличение задержки; [2] [7] он делает это путем измерения односторонней задержки и использования изменений в измерениях для ограничения перегрузки, которую сам поток LEDBAT вызывает в сети. LEDBAT описан в RFC 6817.

Цели дизайна

Контроль перегрузки LEDBAT преследует следующие цели: [2]

  1. Использовать всю доступную полосу пропускания и поддерживать низкую задержку в очереди при отсутствии другого трафика,
  2. Ограничьте задержку ожидания в очереди, которую он добавляет к задержке, вызванной другим трафиком, и
  3. Для быстрого перехода к стандартному TCP , который использует то же самое узкое место .

Реализации и развертывание

Две основные реализации — uTP от BitTorrent и как часть TCP от Apple. BitTorrent использует uTP для большей части трафика и делает код доступным по лицензии с открытым исходным кодом . [8] Apple использует LEDBAT для обновлений программного обеспечения, чтобы большие загрузки программного обеспечения на компьютеры macOS и устройства iOS не мешали обычной деятельности пользователя; Apple также делает исходный код доступным. [9]

Обе вышеприведенные реализации направлены на ограничение задержки сетевой очереди до 100 мс. Это максимально допустимый стандартизированным протоколом предел. Если бы одна использовала меньшее значение, то она бы голодала, когда другая была бы в использовании. [2] [9]

В обновлении Windows 10 Anniversary Update появилась поддержка LEDBAT через недокументированную опцию сокета в качестве экспериментального модуля управления перегрузкой TCP Windows и Windows Server 2019. [ 10] [11] [12]

Пример

Предположения:

  1. Часы отправителя и получателя не синхронизированы.
  2. Отправитель отправляет деньги по фиксированной ставке.

Отправитель отправляет 5 пакетов данных каждые 10 тактов: 10, 20, 30, 40, 50. Единицы измерения не важны. Получатель получает данные не только от этого конкретного отправителя, но и из других источников. Для 5 отправленных пакетов получатель получает их на следующих тактах: 112, 135, 176, 250, 326. Первые различия (задержка в одну сторону) между полученными и отправленными тактами составляют: 102, 115, 146, 210, 276. Вторые различия (изменение задержки в одну сторону) составляют: 13 (115 - 102), 31, 64 и 66. Получатель сделает вывод из положительного увеличения задержек в одну сторону, что перегрузка увеличивается, и соответствующим образом скорректирует скорость передачи.

Смотрите также

Ссылки

  1. ^ Макмиллан, Роберт. «Как Большой адронный коллайдер принесет Интернет ко всему». WIRED . Получено 2018-10-09 .
  2. ^ abcd Мирья, Кюлевинд; Грег, Хейзел; Станислав, Шалунов; Джанардхан, Айенгар (декабрь 2012 г.). «Фоновый транспорт с низкой дополнительной задержкой (LEDBAT)». www.tools.ietf.org . doi : 10.17487/RFC6817.
  3. ^ ab Tammy Parker (10 декабря 2012 г.). "Open Garden для обеспечения связи каналов через Wi-Fi, 3G и 4G - FierceWirelessTech". Архивировано из оригинала 2016-03-30.
  4. ^ ab Вот почему ваши загрузки BitTorrent так быстро движутся, 29 июля 2013 г., получено 24 ноября 2013 г.
  5. ^ aczechowski. "Основы управления содержимым - Configuration Manager". docs.microsoft.com . Получено 2019-04-02 .
  6. Гейб Стайн, бывший инженер BitTorrent думает, что может исправить ваш Wi-Fi — навсегда, 24 июля 2013 г., получено 24 ноября 2013 г.
  7. ^ Роберт Макмиллан, ИНТЕРНЕТ ВЕЩЕЙ, 21 июля 2013 г., получено 24 ноября 2013 г.
  8. ^ Libutp — библиотека транспортного протокола uTorrent, получено 24 ноября 2013 г.
  9. ^ ab "Tcp_ledbat.c".
  10. ^ "Анонс: Новые усовершенствования транспорта в обновлении Anniversary Update для Windows 10 и Windows Server 2016". Архивировано из оригинала 2018-10-09 . Получено 2017-04-17 .
  11. ^ Microsoft (2017). «LEDBAT++: Низкоприоритетное управление перегрузкой TCP в Windows» (PDF) .
  12. ^ "10 лучших сетевых функций в Windows Server 2019: #9 LEDBAT – Оптимизированный по задержке фоновый транспорт". Архивировано из оригинала 2018-08-17 . Получено 2018-08-17 .
Взято с "https://en.wikipedia.org/w/index.php?title=LEDBAT&oldid=1189722875"