Группа исследователей из Массачусетского технологического института, Калифорнийского технологического института, Гарвардского университета и нескольких европейских вузов, под руководством женщины-профессора Муриэль Медард, разработала способ, который позволяет на несколько порядков увеличить скорость передачи данных в беспроводных сетях. Ожидается, что это даст возможность значительно увеличить пропускную способность существующих LTE и Wi-Fi сетей.
Технология заключается в специальном кодировании TCP-пакетов, которое полностью исключает их потерю в процессе передачи. Для проводной сети потеря TCP-пакетов давно неактульна, а вот для беспроводных коммуникаций это одна из серьёзных проблем. Согласно исследованию Масачусетского технологического института, в сетях WiFi, в среднем, теряется до 2 % пакетов, а в скором поезде, например, потери могут составлять до 5 %.
Каждый пропавший пакет вызывает задержку связи, поскольку приём задерживается, пока потерянный пакет не дойдёт до получателя. Если объём потери пакетов значителен, то и задержки связи будут велики, что, в конечном счёте скажется на качестве соединения.
Так что же предложили исследователи? Точный алгоритм они пока держат в секрете (до окончания процедуры лицензирования), но принцип нововведения всё же раскрыли. Стандартный протокол TCP предполагает отправку пакетов блоками, объём которых составляет примерно 1500 байт. Каждый пакет имеет заголовок, в котором указан IP-адрес получателя. В точке назначения пакеты должны быть собраны в исходном файле. Если часть из них потеряна, принимающая сторона ожидает повторной генерации и отправки этих пакетов.
Новая технология позволяет кодировать пакеты TCP в виде линейных алгебраических уравнений. Если часть сообщения теряется, компьютер в точке приёма может решить уравнение и, таким образом, восстановить недостающие данные до того, как TCP среагирует на недостаток данных и отправит повторный запрос.
Уравнения достаточно просты, их решение под силу процессору любого смартфона или ноутбука, подключённого к беспроводной сети. В принципе, это всё известно уже давно и называется алгоритмом линейного кодирования. Технология работает, не затрагивая протокол передачи данных TCP, так что серьёзных изменений в сетевой архитектуре не потребуются.
Всё это теория, а что же будет на практике? Специалисты Массачусетского технологического института протестировали новую технологию прямо в кампусе, и скорость беспроводного соединения Wi-Fi там сразу «прыгнула» от 1 до 16 Мбит/с. В быстро движущемся поезде (тестирование проводилось в составе Нью-Йорк-Бостон, где всегда плохая связь), где теряется до 5 % пакетов, скорость соединения увеличилась с 0,5 до 13,5 Мбит/с.
Интересно, что до появления исследований группы Муриэл Медард никто не пробовал использовать относительно простой алгоритм линейного кодирования для улучшения связи, несмотря на то, что беспроводные сети как раз и нуждаются в прямой коррекции ошибок при передаче (Forward Error Correction, FEC), что и обеспечивает кодирование по новой технологии.
Нововведение может пригодиться и операторам сотовой связи, так как позволит увеличить пропускную способность существующих каналов без установки дорогих дополнительных базовых станций. Естественно, для обычных проводных сетей и беспроводных, в которых нет потерь, технология не подходит – она не предполагает увеличения пропускной способности свободного канала.
Желающим боле подробно ознакомиться с новой технологией, предлагаю прочитать оригинальный отчёт разработчиков (pdf).
Эдуард ТРОШИН