Jump to content

МЕГАлинк

МЕГАлинк
Протокол связи
Цель протокол передачи файлов
Разработчик(и) Пол Майнерс
Введение 1987 год ; 37 лет назад ( 1987 )
На основе ХМОДЕМ
Аппаратное обеспечение модемы

MEGAlink — это протокол передачи файлов для модемами , оснащенных микрокомпьютеров , написанный Полом Майнерсом в 1987 году. Как и многие протоколы того времени, MEGAlink представляет собой расширенную версию оригинального XMODEM . Хотя это была относительно простая и высокопроизводительная система, она оставалась относительно малоизвестной, поскольку ее затмила ZMODEM , выпущенная годом ранее и получившая быстрое распространение.

XMODEM был представлен в 1977 году как то, что его автор назвал «быстрым хаком». У него был ряд довольно очевидных проблем, которые стали еще более раздражать по мере увеличения скорости модемов в начале 1980-х годов. За этот период появился ряд новых протоколов передачи файлов для пользователей BBS, призванных решить проблемы исходного XMODEM. Многие из них имели собственные незначительные проблемы или были ограничены определенными приложениями, что ограничивало их использование. XMODEM оставался чрезвычайно популярным на протяжении всего этого периода, поскольку это был один из немногих протоколов, который поддерживался повсеместно.

В 1986 году Чак Форсберг выпустил ZMODEM , радикально улучшенный протокол передачи файлов, который предлагал множество новых функций, высокую производительность и работал на сервисах, которые нарушали передачу XMODEM. [ а ] Единственным недостатком ZMODEM было то, что он был очень сложным, что затрудняло или делало невозможным его внедрение на некоторых машинах, особенно на большой базе установленных систем, таких как Commodore 64 .

MEGAlink был представлен как часть GT PowerComm эмулятора терминала компании Meiners для решения этой проблемы. Он предлагал высокую производительность, аналогичную ZMODEM, но при этом был намного проще в реализации. Несмотря на это привлекательное сочетание функций, MEGAlink так и не стал популярным, и, похоже, лишь немногие другие эмуляторы терминала добавили поддержку. [ 1 ] - в обзорной статье 1988 года показаны только PowerComm и еще одна поддерживающая его программа. [ 2 ]

Переход от 8-битных к 16-битным компьютерам происходил одновременно с появлением MEGAlink, и к концу 1980-х годов обсуждались любые преимущества с точки зрения простоты. ZMODEM стал почти универсальным.

Описание

[ редактировать ]

XMODEM — простой протокол, и это основная причина его популярности. [ 3 ]

Отправляемый файл разбивается на фрагменты по 128 байт, которые формируют полезные данные его пакетов . 3-байтовый заголовок, состоящий из SOH Перед данными добавляется символ и два 8-битных целых числа, а 1-байтовая контрольная сумма в конце — , в результате чего общая длина пакета составляет 132 байта. Протокол запускается получателем, который отправляет NAK символ для начала передачи, ждет ответного пакета, а затем отправляет ACK если пакет был получен правильно, или NAK если бы это было не так. [ 4 ]

Поскольку телефонная система имеет определенную задержку , для ACK или NAK чтобы пройти обратно по линиям и инициировать отправку следующего пакета. При скорости 300 бит/с это короткое время по сравнению со временем, необходимым для отправки пакета данных, поэтому его можно игнорировать. При скорости 2400 бит/с обычные задержки означают, что до 50 % доступного времени тратится впустую на ожидание ответов. [ 4 ]

Для решения этой проблемы предлагалось множество решений. Один из них — увеличить размер пакета, чтобы задержка составляла меньшую долю времени, необходимого для отправки пакета. Это использовалось в ряде протоколов, особенно в YMODEM . [ 4 ] Другое решение — использовать скользящее окно , позволяющее отправлять несколько пакетов без необходимости ACK для каждого, как это используется в WXMODEM и других.

[ редактировать ]

MEGAlink, по сути, представляет собой комбинацию функций предыдущих попыток улучшить производительность XMODEM. Самым основным изменением было увеличение размера пакета со 128 байт до 512. Это не только уменьшает относительные последствия задержки, но и увеличивает объем данных по сравнению с сторонней информацией, такой как байты заголовка и нижнего колонтитула, повышая эффективность канала . [ 5 ]

MEGAlink намеренно избегал решения со скользящим окном, устраняя необходимость отправлять ACK совсем. Отправитель просто будет продолжать отправлять пакеты до тех пор, пока, если вообще когда-нибудь, NAK был получен. NAK было отправлено с двумя следующими байтами, первый из которых содержал номер пакета, в котором произошла ошибка, а второй как дополнение до двух этого номера. Затем отправитель возобновит передачу с этого момента. [ 5 ]

Чтобы быстро повторно отправить данные, когда это необходимо, отправителю приходилось поддерживать буфер данных файла, чтобы можно было быстро перемотать назад к этой точке. Машины той эпохи имели небольшой объем памяти, 64 КБ не были редкостью, поэтому большие буферы организовать было непросто. Чтобы устранить тот факт, что отправителю может не хватить памяти для отправки очень длинных потоков, MEGAlink разрешил отправителю запрашивать ACK в любой момент, что позволит ему очистить буфер при необходимости. [ 5 ]

Для этого отправитель отправил ASCII-код. RS (Разделитель записей). Если получатель видит RS вместо ожидаемого SOH в начале следующего пакета он немедленно отправляет ответ, состоящий из ACK и номер пакета и обратное, как в случае с NAK. Затем отправитель может удалить из своего буфера любые данные, предшествующие этому пакету. Например, GT PowerComm использовал буфер, достаточно большой для 32 пакетов, и отправлял RSs запрашивает каждые 16 пакетов или около того. [ 5 ]

Другие изменения в протоколе менее значительны. Чтобы разрешить работу в некоторых сетях, например PC Pursuit , XON и XOFF символы были экранированы с помощью DLE а затем выполнил XOR с 64. Для этого потребовались любые DLE в исходных данных, которые необходимо экранировать таким же образом. [ 5 ]

32-битная контрольная сумма

[ редактировать ]

В исходной версии MEGAlink использовалась 16-битная циклическая избыточная кодировка (CRC), как и во многих других ответвлениях XMODEM. Как и в этих версиях, получатель указал, что способен принимать CRC, отправив начальное сообщение. C вместо NAK чтобы начать передачу. Позднее MEGAlink был модифицирован для поддержки 32-битных CRC, для чего пакеты начинались с EM вместо SOH. «Нулевой пакет», содержащий информацию о файле, всегда отправлялся со стандартным SOH и 16-битный CRC, только следующие пакеты данных использовали EM формат. [ 5 ]

Примечания

[ редактировать ]
  1. ^ XMODEM требует 8-битных чистых ссылок, которые не всегда поддерживаются основными онлайн-сервисами.

Библиография

[ редактировать ]
  • Бигли, Том; Тапамила, Глен (7 декабря 1987 г.). «Карманный справочник по протоколам передачи файлов» . Инфомир .
  • Кристенсен, Уорд (1 января 1982 г.). Обзор протокола XMODEM (Технический отчет).
  • Форсберг, Чак (10 октября 1985 г.). Справочник по протоколу XMODEM / YMODEM Чака Форсберга (технический отчет).
  • Майнерс, Пол (9 августа 1987 г.). MEGAlink: протокол передачи файлов (технический отчет).
  • «Лучшие коммуникационные программы Shareware» . Обзор Информационного центра . Апрель 1988 г. с. 1326.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 008d5e93d25644a2c1b939ae49ad6e01__1690252860
URL1:https://arc.ask3.ru/arc/aa/00/01/008d5e93d25644a2c1b939ae49ad6e01.html
Заголовок, (Title) документа по адресу, URL1:
MEGAlink - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)