LEDBAT (Low Extra Delay Background Transport, ) — способ быстрой передачи данных в Интернете без засорения сети. LEDBAT был изобретён By Tammy Parker, Open Garden to enable channel bonding over Wi-Fi, 3G and 4G , December 10, 2012, Retrieved November 24, 2013 и используется компанией Apple для обновлений программного обеспечения и BitTorrent в большинстве своих передачThis Is How Your BitTorrent Downloads Move So Fast , July 29, 2013, Retrieved November 24, 2013, а также при распространении программного обеспечения Microsoft SCCM. По оценкам, LEDBAT будет переносить 13—20 % интернет-трафикаBy Gabe Stein, Former BitTorrent Engineer Thinks He Can Fix Your Wi-Fi--For Good , July 24, 2013, Retrieved November 24, 2013.
LEDBAT — алгоритм управления перегрузкой, основанный на измерении задержки передачи данных. Его основная цель — эффективно использовать доступную полосу пропускания, минимизируя при этом влияние на сетевую задержкуBY ROBERT MCMILLAN, THE INTERNET OF THINGS , July 21, 2013, Retrieved November 24, 2013. Он делает это путем измерения односторонней задержки и использования изменений в измерениях, чтобы ограничить перегрузку, которую вызывает сам поток LEDBAT в сети.
Цели дизайна Контроль перегруженности LEDBAT преследует следующие цели: использовать всю доступную пропускную способность и поддерживать низкую задержку в очереди, когда другой трафик отсутствует; ограничить задержку в очереди, добавляемую к задержке остального трафика; быстро уступить стандартному TCP, который имеет ту же самую узкую ссылку.
Реализации и развертывание Две основные реализации — это uTP от BitTorrent и как часть TCP от Apple. BitTorrent использует uTP для большей части трафика и делает код доступным по лицензии с открытым исходным кодомLibutp — The uTorrent Transport Protocol library , Retrieved November 24, 2013. Apple использует LEDBAT для обновлений программного обеспечения, так что большие загрузки программного обеспечения для Mac OS X компьютеров и устройств IOS не мешают нормальной деятельности пользователей. Кроме этого Apple делает доступным исходный код.
Обе вышеперечисленные реализации направлены на ограничение задержки организации очереди до 100 мс (максимум времени задержки, разрешенный стандартизированным протоколом). Если один из них использует более низкое значение, то он будет голодать, когда используется другой.
В Windows 10 в Anniversary Update появилась поддержка LEDBAT через опцию недокументированного сокета в качестве экспериментального модуля контроля перегрузки Windows TCP и Windows Server 2019.
Пример Предположения: Часы отправителя и получателя не синхронизированы. Отправитель отправляет с фиксированной скоростью.
Отправитель отправляет 5 пакетов данных каждые 10 тактов: . Единицы не важны. Получатель получает данные не только от этого конкретного отправителя, но и из других источников. Для 5 отправленных пакетов получатель получает их со следующими отсчетами тактов: . Первые различия (задержка в одну сторону) между полученным и отправленным счетчиком тактов: . Вторые различия (изменение в одну сторону задержки): . Из положительного увеличения задержки в одном направлении получатель сделает вывод о том, что перегрузка увеличивается, и соответственно скорректирует скорость передачи.
См. также
Примечания
Категория:Сетевые протоколы