Открыть сервис

Licklider Transmission Protocol

Licklider Transmission Protocol (LTP) — это сетевой протокол транспортного уровня, разработанный для обеспечения надёжной передачи данных в условиях задержек, прерываний и ограниченной пропускной способности, характерных для дальнего космоса и межпланетных коммуникаций. Протокол был назван в честь Джозефа Ликлайдера (J.C.R. Licklider), американского психолога и учёного в области информатики, который в 1960-х годах предсказал создание «межгалактической компьютерной сети». LTP входит в архитектуру «устойчивости к задержкам и прерываниям» (Delay/Disruption Tolerant Networking, DTN) и служит альтернативой или дополнением к традиционным протоколам TCP/IP, которые плохо работают при больших задержках и частых разрывах связи.

История и предпосылки создания

Идея создания протокола, устойчивого к экстремальным задержкам, возникла в конце 1990-х — начале 2000-х годов в рамках работ NASA и других космических агентств. Традиционные протоколы, такие как TCP, предполагают непрерывное двустороннее соединение с быстрым подтверждением приёма пакетов. В космосе задержка сигнала может составлять от нескольких секунд (Луна) до нескольких часов (Марс, Юпитер), а связь часто прерывается из-за вращения планет, солнечной активности или прохождения космических аппаратов за препятствиями. TCP в таких условиях либо полностью блокируется, либо демонстрирует катастрофически низкую пропускную способность.

В 2003 году Консультативная группа по космическим системам данных (CCSDS) начала разработку стандарта для DTN. LTP был предложен как один из ключевых компонентов этой архитектуры. Первая спецификация протокола была опубликована в 2008 году в документе RFC 5326 (Licklider Transmission Protocol — Specification). В последующие годы протокол дорабатывался, в том числе для поддержки криптографической защиты и работы с большими объёмами данных.

Архитектура и принципы работы

LTP функционирует на транспортном уровне, но его логика существенно отличается от TCP. Основная идея — использовать асинхронную передачу данных с минимальным обменом подтверждениями.

Основные механизмы

  • Блочная передача: Данные разбиваются на блоки (data blocks). Каждый блок может содержать несколько сегментов. Блоки передаются независимо друг от друга.
  • Красные и зелёные сегменты: LTP делит сегменты на два типа:
  • Красные сегменты (Red-part): Требуют обязательного подтверждения (ACK). Если сегмент потерян, он передаётся повторно. Используется для критических данных (команды, заголовки, управляющая информация).
  • Зелёные сегменты (Green-part): Не требуют подтверждения. Передаются как «лучшая попытка» (best-effort). Используются для некритичных данных (телеметрия, потоковое видео, научные данные с низкой приоритетностью).
  • Асинхронные подтверждения: Вместо немедленного ACK на каждый пакет, LTP использует механизм «кумулятивного подтверждения»: получатель отправляет отчёт о полученных данных (report) после приёма всего блока или по истечении таймера. Это снижает количество служебных сообщений.
  • Таймеры и повторные передачи: Для каждого красного сегмента устанавливается таймер. Если подтверждение не получено в течение заданного времени (RTT — время двойного оборота сигнала), сегмент передаётся повторно. Таймеры могут быть очень большими (часы, сутки).
  • Обработка прерываний: Если связь прерывается, LTP сохраняет состояние передачи. После восстановления связи передача продолжается с последнего подтверждённого сегмента, а не начинается заново. Это реализуется через механизм «чекпоинтов» (checkpoints) и «отчётов» (reports).

Пример работы

  1. Отправитель (например, марсоход) формирует блок данных, состоящий из красной части (команда «начать бурение») и зелёной части (видео с камеры).
  2. Блок разбивается на сегменты и отправляется на Землю.
  3. Получатель (ЦУП) принимает сегменты. После получения всего блока (или по таймеру) он отправляет отчёт: «получены сегменты 1–5 (красные), потерян сегмент 6 (зелёный)».
  4. Отправитель повторно передаёт только потерянный красный сегмент (зелёный игнорируется, так как он не критичен).
  5. После получения всех красных сегментов передача считается успешной.

Отличия от TCP и UDP

ХарактеристикаLTPTCPUDP
НадёжностьЧастичная (красные сегменты — надёжная, зелёные — ненадёжная)Полная (все данные подтверждаются)Ненадёжная
ЗадержкаМожет работать с задержками от секунд до часовТребует малой задержки (RTT < несколько секунд)Работает при любой задержке, но без гарантий
ПрерыванияУстойчив к длительным прерываниямПрерывание ведёт к сбросу соединенияНе поддерживает соединений
ПодтвержденияАсинхронные, кумулятивныеСинхронные, на каждый пакет или окноОтсутствуют
Управление потокомМинимальное (через таймеры)Сложное (окно перегрузки, скользящее окно)Отсутствует
ПрименениеКосмос, подводные сети, сенсорные сетиИнтернет, локальные сетиСтриминг, DNS, VoIP

Применение

LTP используется в основном в космических проектах и экспериментах, где связь с аппаратами осуществляется с большими задержками.

Космические миссии

  • Марсианские миссии: Протокол тестировался на марсоходах NASA (например, Curiosity, Perseverance) для передачи научных данных и телеметрии. В 2015 году LTP был успешно использован для передачи изображений с марсохода Opportunity на Землю через орбитальный аппарат Mars Reconnaissance Orbiter.
  • Лунные миссии: LTP применяется в проектах по созданию лунной сети связи (Lunar Internet) для передачи данных между лунными станциями, роверами и Землёй.
  • Межпланетные миссии: Протокол планируется использовать в будущих экспедициях к Юпитеру, Сатурну и астероидам, где задержки достигают часов.

Наземные и подводные сети

  • Сети с большими задержками: LTP может применяться в подводных акустических сетях (задержка сигнала в воде — секунды), в сетях на основе спутников на геостационарной орбите (задержка ~250 мс) и в сетях с прерываниями (например, в зонах стихийных бедствий).
  • Сенсорные сети: В проектах «Интернета вещей» (IoT) в удалённых районах, где связь нестабильна.

Экспериментальные проекты

  • DTN на МКС: В 2016 году на Международной космической станции был развёрнут DTN-узел, использующий LTP для передачи данных между модулями и Землёй.
  • Проект «Интернет в космосе»: NASA и DARPA тестируют LTP как часть архитектуры «межпланетного интернета» (Interplanetary Internet).

Реализации

Существует несколько реализаций LTP, как открытых, так и проприетарных:

  • ION (Interplanetary Overlay Network): Открытая реализация DTN, разработанная NASA. Включает поддержку LTP, BP (Bundle Protocol) и других протоколов. Используется в научных экспериментах.
  • DTN2: Реализация DTN от Университета штата Огайо. Включает модуль LTP, но менее оптимизирована для космоса.
  • µLTP: Лёгкая реализация для встраиваемых систем (микроконтроллеры, спутники CubeSat).
  • Проприетарные реализации: Используются в коммерческих космических проектах (SpaceX, Blue Origin) и в системах военной связи.

Критика и ограничения

Несмотря на преимущества, LTP имеет ряд недостатков:

  • Сложность реализации: Протокол требует точной настройки таймеров, управления состоянием и обработки прерываний. Это увеличивает вычислительную нагрузку на аппаратуру.
  • Низкая эффективность при малых задержках: В условиях, где RTT меньше секунды, LTP проигрывает TCP в пропускной способности из-за избыточных служебных сообщений.
  • Отсутствие встроенного шифрования: Базовая спецификация LTP не включает криптографическую защиту. Для безопасной передачи требуется использование дополнительных протоколов (например, DTLS или LTP-SP).
  • Совместимость: LTP несовместим с TCP/IP напрямую. Для интеграции с интернетом требуется шлюз (DTN-шлюз), который преобразует протоколы.

Перспективы

Развитие LTP связано с расширением космических программ, созданием лунной и марсианской инфраструктуры, а также с развитием «Интернета вещей» в экстремальных условиях. В 2020-х годах протокол активно тестируется в рамках программы NASA «Artemis» (возвращение на Луну) и в проектах по созданию сети связи для Марса. Ожидается, что LTP станет основой для глобальной межпланетной сети, способной объединить Землю, Луну, Марс и другие объекты Солнечной системы.

Источники

  1. RFC 5326 — Licklider Transmission Protocol — Specification (2008).
  2. RFC 6257 — Bundle Security Protocol (2011).
  3. "Delay-Tolerant Networking Architecture" — RFC 4838 (2007).
  4. "Licklider Transmission Protocol (LTP) for CCSDS" — CCSDS 734.1-B-1 (2015).
  5. "Interplanetary Internet: The Licklider Transmission Protocol" — NASA Technical Reports Server (2012).
  6. "Performance Evaluation of LTP in Deep Space Communications" — IEEE Aerospace Conference (2019).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →