XMODEM
XMODEM (иногда также XMODEM ) является простым отправкой и ожидание протокола АЗПА с фиксированной длиной пакета , который регулирует безопасную передачу данных . Он был разработан в 1977 году инженером по продажам IBM Уордом Кристенсеном и является общественным достоянием .
XMODEM был первым широко используемым протоколом передачи данных и внес значительный вклад в расширение почтовых ящиков . В 1978 году Кристенсен сам создал CBBS (компьютеризированную доску объявлений), первый почтовый ящик для обмена сообщениями. Обычно это реализуется по последовательному протоколу .
источник
Уорд Кристенсен и Рэнди Сюсс познакомились в 1975 году как члены местного компьютерного клуба CACHE . Как было принято в то время, для хранения данных использовались компактные кассеты . Одним из способов передачи данных на него было использование акустического соединителя со скоростью 300 бод для передачи звука на кассетный проигрыватель. Ward Christensen написал простую программу для этого в январе 1977 года , чтобы подавать звуковой сигнал данных с дискеты на кассету . Программа сформировала блоки по 128 байт, размер блока как у дискет CP / M, и простую контрольную сумму . Он опубликовал его под названием MODEM.ASM .
Позже Дэйв Джаффе написал программу под названием BYE, позволяющую удаленным пользователям получать доступ к системе CP / M и управлять ею оттуда. Чтобы также иметь возможность передавать файлы между системами, МОДЕМ был адаптирован так, что он не выводил никаких сообщений о состоянии на консоль . Во время периода загрузки или выгрузки телефонное соединение использовалось исключительно для передачи файлов и не прерывалось одновременно с выходами консоли из МОДЕМА. Это небольшое изменение привело к новому названию XMODEM и стало стартовым сигналом для одного из наиболее широко переносимых протоколов передачи файлов в то время , поскольку он был адаптирован почти для любой аппаратной среды и позволял межсистемную передачу двоичных компьютерных файлов. Последнее решило серьезную проблему, поскольку в противном случае системы не позволили бы совместно использовать данные.
функциональность
XMODEM работает блочно, передаваемые данные делятся на блоки ( блоки ) одинакового размера . Блоки всегда имеют размер 132 байта и при необходимости могут быть дополнены любыми символами. Квитанции состоят из одного символа.
| Компенсировать | длина | содержание |
|---|---|---|
| [Байт] | ||
| 0 | 1 | ASCII символов начало заголовка (SOH, 01h) |
| 1 | 1 | Номер блока |
| 2 | 1 | Дополнение номера блока до единицы |
| 3 | 128 | Данные |
| 131 | 1 | Контрольная сумма . Контрольная сумма здесь представляет собой арифметическую сумму байтов данных по модулю 256 и поэтому подвержена ошибкам; Двойные ошибки в одной и той же битовой позиции компенсируют друг друга. |
Передача инициируется получателем путем отправки NAK. Полученная без ошибок контрольная сумма подтверждается подтверждением ( ACK , 06h). Если контрольная сумма не совпадает с рассчитанной контрольной суммой, произошла ошибка. Блок отклоняется с отрицательным подтверждением (NAK, 15h), а затем повторно отправляется до десяти раз. Окончание передачи указывается отправителем с помощью параметра « Конец передачи» ( EOT , 04h). Это также должно быть подтверждено ACK.
В начале 1980-х размер блока был увеличен (XMODEM 1K), и для проверки ошибок использовалась циклическая проверка избыточности (XMODEM CRC) . Разработанные позже протоколы YMODEM и ZMODEM исправили многие недостатки первой версии XModem.
Изменение значения XMODEM
После указания XMODEM быстро стал популярным как простой способ обмена файлами через последовательные соединения. Промежуточные модемы и аналоговые телефонные сети сделали возможным доступ к файлам по всему миру. С распространением Интернета в коммерческом и частном секторах эта практика потеряла свое значение в конце 1990-х годов и исчезла из восприятия соответствующих пользователей. Информация и приложения, которые раньше находились в почтовых ящиках, теперь обычно доступны через HTTP и либо читаются в браузере, либо загружаются с веб-сервера .
Продолжать использовать XMODEM и его варианты ( XMODEM 1K , XMODEM CRC ) и преемника ( YMODEM , ZMODEM ) , но, например, для периферийных устройств системы обновления (так называемые вспышки - обновления ) на поставку. Ценится простота протокола, который не требует сложных взаимодействий с операционной системой, в отличие, например, от FTP .
Некоторые компании даже используют варианты этого протокола, когда вместо асинхронного последовательного интерфейса ( RS232 , V.24 ) используется другая технология, такая как USB или SSP- соединение микроконтроллера . Однако наиболее распространенным использованием, вероятно, будет обновление системы устройств, которые уже имеют последовательный интерфейс. Это, например, модемы , оконечные адаптеры ISDN , некоторые типы сотовых телефонов или маршрутизаторов .
XMODEM и т.п. можно использовать через последовательную эмуляцию протокола Bluetooth или инфракрасного интерфейса IrDA , если таковой имеется. Это полезно для передачи файлов на карманные устройства любого типа и обратно.
Расширение XMODEM с длиной блока 32 КБ (XMODEM / 32 КБ) было реализовано в 2002 году компанией Fa ADONTEC для скорости передачи данных для безошибочных высокоскоростных соединений, таких как ISDN или TCP / IP - сети ( интранет , Интернет ) в увеличивать. Расширение с длиной блока 64 КБ (XMODEM / 64k) было реализовано в 2007 году. Оба расширения обратно совместимы.
Индивидуальные доказательства
- ↑ MODEM.ASM. В: vintagecomputer.net. 10 октября 1977, доступ к 19 февраля 2018 .
- ^ Уорд Кристенсен, Рэнди Сюсс: Рождение BBS. В: Chinet. 1989, доступ к 18 февраля 2007 .
веб ссылки
- Чак Форсберг , Уорд Кристенсен : Справочник по протоколу XMODEM / YMODEM, сборник документов, описывающих протоколы передачи файлов XMODEM и YMODEM. В: pauillac.inria.fr. 18 июня 1988, доступ к 19 февраля 2018 .
- Расширения ADONTEC® XMODEM / 32k и XMODEM / 64k (английский)