Протокол передачи Ликлайдера - Licklider Transmission Protocol
Набор интернет-протоколов |
---|
Уровень приложения |
Транспортный уровень |
Интернет-уровень |
Связующий слой |
Эта статья включает список литературы, связанное чтение или внешние ссылки, но его источники остаются неясными, потому что в нем отсутствует встроенные цитаты.Март 2019 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Протокол передачи Ликлайдера это протокол точка-точка для использования в каналах связи дальнего космоса. LTP обычно рассматривается как стандартный протокол уровня конвергенции для Пакетный протокол (RFC 5050 ), поддерживая широкий выбор сетей.
LTP назван в честь американского ученого-информатика Джозеф Карл Робнетт Ликлайдер.
дизайн
LTP предназначен для работы непосредственно на уровне канала передачи данных (например, протокол канала космической передачи данных Advanced Orbiting Systems (AOS)[1]). Он также может работать на Протокол пользовательских датаграмм (UDP), например если используется в сенсорной сети, в частной сети (где проблема пропускной способности не является проблемой) или в целях отладки программного обеспечения. Следовательно, он не решает такие проблемы, как маршрутизация или контроль перегрузки. Первоначально он был разработан для поддержки передачи на большие расстояния в межпланетной сети; его дизайн основан на опыте использования Протокол доставки файлов CCSDS (CFDP).
Разработанный для космической связи, его особенности:
- Надежный перенос важных данных (например, заголовка файла)
- Ненадежная передача менее важных данных (например, пикселей изображения - поврежденный пиксель можно преодолеть)
- Нет обмена сообщениями для выполнения переговоров. Протокол избегает этого процесса, чтобы избежать задержек из-за высокой время поездки туда и обратно. Это также позволяет избежать недоиспользования ссылок.
- Энергоэффективность, поскольку она передается только при наличии ссылки и различает важные и неважные данные.
- Его таймеры работают вместе с графиками связи и могут быть приостановлены при возникновении запланированного отключения связи.
- Он должен быть проинформирован о доступности канального уровня, времени приема-передачи и графиках связи, для чего в основном требуется база управляющей информации (MIB). LTP очень сохраняет состояние.
- Однонаправленные сеансы передачи, обход большого времени приема-передачи или неспособность однорангового коммуникационного узла передавать
Приложение делит свои данные для отправки на две части (каждая часть может иметь размер 0):
- а красный часть: он содержит данные, которые должны надежно передаваться, должны быть подтверждены получателем и должны оставаться доступными до подтверждения. Это может быть, например, заголовок, содержащий важную информацию для декодирования следующих данных, повреждение которого сделало бы все последующие данные бесполезными.
- а зеленый часть. Он содержит данные, не требующие надежного транспорта. Поскольку прием этих данных не подтверждается, они могут быть отброшены после передачи.
Протокол
Механизм LTP хранит данные в очереди, проверяет, доступна ли ссылка на пункт назначения, и, если да, начинает передачу. Если канал недоступен, данные остаются в очереди, и передача начинается, как только поступает так называемый «сигнал состояния канала», либо с нижележащего уровня канала, либо с База управленческой информации. Если даны красные данные для отправки, последний сегмент красных данных помечается флажком «конец красных данных», и для этого сегмента запускается таймер. При отсутствии зеленых данных для отправки устанавливается флаг «конец блока», в противном случае передаются зеленые данные, и последний сегмент этой части помечается флажком «конец блока». Получатель выдает сегмент отчета для отправителя после того, как он получил сегмент «конец красных данных» и все данные завершены. После того, как сегмент отчета был передан, запускается таймер. По прибытии сегмента отчета отправитель отменяет свой таймер, ставит в очередь подтверждение отчета для получателя и сообщает приложению, что все красные данные были успешно переданы. Как только получатель получает отчет-подтверждение, он отменяет свой таймер, и передача красных данных завершается. Передача завершена, если прибыл сегмент «конец блока».
Реализации
Эталонные реализации
Два эталонные реализации для LTP:
- ION, написанный на C Лаборатория реактивного движения и поддерживается в Университет Огайо.
- LTPlib, написанный на C пользователем Тринити-колледж, Дублин.
Другие реализации
использованная литература
- ^ "ПРОТОКОЛ AOS SPACE DATA LINK" (PDF). Консультативный комитет по системам космических данных (CCSDS). CCSDS. Получено 18 декабря 2019.
- ^ https://github.com/secdev/scapy/blob/master/scapy/contrib/ltp.py
- ^ Scapy: программа и библиотека для интерактивного управления пакетами на основе Python. Поддерживает Python 2 и Python 3 .: secdev / scapy, SecDev, 2019-03-05, получено 2019-03-05