Jump to content

протокол Б

протокол Б
Протокол связи
Цель протокол передачи файлов
Разработчик(и) Информационная служба CompuServe
Введение 1979 год ; 45 лет назад ( 1979 )
Аппаратное обеспечение модемы

Протокол B , или CIS B , — это передачи файлов протокол , разработанный для информационной службы CompuServe и реализованный в 1981 году. Позже протокол был расширен в версии QuickB (которая представляла собой асинхронную версию стандартного протокола), а затем в расширенной версии B. Плюс версия. Для своего времени это был довольно продвинутый протокол, поддерживавший эффективную передачу файлов, команд и других данных, и в определенных режимах его можно было использовать в обоих направлениях одновременно. Эти расширенные функции не получили широкого распространения, но их можно было найти в небольшом количестве клиентских пакетов.

Поскольку протокол B был разработан только для работы внутри CompuServe, большинство сторонних коммуникационных клиентов того времени не были с ним совместимы. Заметными исключениями были Tera Term и Datastorm от ProComm Plus на ПК, который имел возможность прослушивать Enquire команда на активном порту связи и ZTerm на Mac, который позволял автоматически запускать передачу. Это развитие было частью более широкой тенденции использования внешних коммуникационных приложений в сочетании с онлайн-сервисами.

Описание

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

Первоначальная версия протокола B была развитием более раннего двунаправленного протокола, представленного в 1979 году, и добавляла возможности для включения стандартизированной структуры команд в поток. Этот протокол был предназначен для использования пользовательским онлайн-терминалом, созданным Тэнди , «AgVision» или «VideoTex», но от этого проекта отказались после того, как он был продан лишь на короткий период. Система AgVision со снятым модемом легла в основу цветного компьютера TRS-80 .

Позднее протокол был расширен в версии B Plus, хотя существовало две редакции этой версии. B Plus сосредоточил общую концепцию в первую очередь на поддержке загрузок с CompuServe, а не на передаче данных от пользователя к пользователю. Следующее описание основано на документации B Plus и не относится явно к более раннему (и редкому) B.

Структура пакета

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

B Plus — это протокол скользящего окна с пакетами переменного размера от 128 до 2048 байт и окнами из одного или двух пакетов. Добавление блоков размером 1 КБ и 2 КБ и скользящих окон было основными изменениями в структуре между B и B Plus. Все потенциально проблемные управляющие символы всегда заключались в кавычки , что является обязательным требованием, поскольку многие люди обращались к CompuServe через не-8-битные пакетные сервисы, такие как Tymnet . B Plus также использовал любой из четырех типов проверки ошибок.

Базовая структура пакета состояла из пяти частей:

Структура пакета B Plus
Введение <DLE>B
Последовательность # от 0 до 9
Тип Один байт
Тело от нуля до 2048 байт
Трейлер <ETX>Проверить значение
(может сопровождаться <RS>)

Вводная часть служит той же цели, что и «заголовок» в большинстве протоколов, указывая, что последующие данные представляют собой пакет B Plus. Порядковый номер — это простой способ убедиться, что пакеты получены в правильном порядке при приеме. Используемый небольшой диапазон номеров не представляет проблемы, поскольку пакеты, даже «один из которых не по порядку», вызовут повторную отправку или прерывание, поэтому нет возможности получить «неправильный 0x30» десятью пакетами позже.

Персонажи в теле или трейлере «цитируются». Официально цитируются лишь несколько персонажей. <ETX>, <ENQ>, <DLE>, <DC1> (ХАН), <DC3> (XOFF) и NAK. Обычно цитируются еще три символа: <RS>, <DC1> + 0x80 и <DC3> + 0x80. Символы заключаются в кавычки путем добавления 0x40 к их порядковому значению и добавления к ним префикса <DLE> характер. Например, <ETX> символ (0x03) будет отправлен как <DLE>C.

Проверочное значение было заключено в кавычки, как и содержимое, с которым оно проверялось, но значение внутри было проверкой значений, не заключенных в кавычки . Это означает, что тело необходимо было извлечь и вывести из кавычек, прежде чем можно было вычислить контрольное значение на принимающей стороне. Было разрешено четыре типа контрольных значений: исходная XMODEM контрольная сумма , слегка модифицированная версия проверки циклическим избыточным кодом (CRC), используемой в XMODEM-CRC , или CCITT CRC-16 или CRC-32. При использовании CCITT CRC трейлер также включал дополнительный <RS> символ в конце как «обрыв сети» (отправить сейчас), хотя неясно, почему это не поддерживалось другими типами трейлеров.

Типы пакетов

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

B Plus определял несколько различных типов пакетов, в отличие от большинства протоколов, которые включали только один. Эти пакеты использовались как для передачи данных, так и для безопасной доставки команд и информации о настройке протокола. Четыре типа были:

Типы пакетов B Plus
Транспортные параметры +
Передача файлов T
Данные N
Отказ F

Наиболее распространенными пакетами с точки зрения общего количества передаваемых пакетов являются T-пакеты, содержащие данные для передачи файлов. Эти пакеты не имеют дополнительной семантической ценности и форматируются, как описано выше. Пакеты T также включают в себя «подтипы», Tr для «возобновления передачи», TF для «ошибки передачи», если возобновление не соответствует частично загруженному файлу, и TI для «информации о передаче», которая отправляет подробную информацию о передаваемом файле. Большинство протоколов отправляли информацию о файле в виде специального «нулевого пакета» в самом потоке передачи, тогда как в B Plus это обрабатывалось отдельным типом пакета и фактически вне самого потока передачи, хотя на практике не было никакой реальной разницы.

Пакет «Сбой» позволяет отправителю указать различные проблемы внутри потока пакетов. Пакет обычно содержит один «известный» символ, но может также включать информационное сообщение после этого символа. Наиболее распространенным пакетом сбоя является пакет A(bort), позволяющий пользователю прекратить передачу по запросу. Другие сбои включали, среди прочего, (C) сбой емкости (недостаточно места на диске) и (M) отсутствие файла.

Параметры транспорта обычно отправлялись только один раз, на этапе первоначального подключения. Этот пакет содержал ряд деталей в известном формате, которые синхронизировали функции, которые могли использовать оба конца соединения. Например, именно на этом этапе был выбран тип контрольного значения.

Транспортный уровень

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

Помимо обычных типов пакетов, описанных выше, B Plus также включал отдельные типы для отправки команд в CIS через уровень исправления ошибок B Plus. Пакет M представлял собой один пакет данных, тогда как L также был пакетом данных, но указывал на то, что поток данных теперь завершен. Это необходимо было указать таким образом, поскольку, в отличие от передачи файлов, объем отправляемых данных не был известен заранее.

Содержимое этих пакетов было в свободной форме и не было определено в самой документации B Plus. Однако основная концепция заключалась в том, что программа терминала пользователя отвечала на последовательность опросов CIS (отправляемую при первом входе пользователя в систему), начиная передачу с типа M. Этот поток будет использоваться для отправки команд на хост CIS, который в ответ откроет другой поток транспортного уровня обратно в программу терминала. Эти потоки были «беспоследовательными» и считывались в том порядке, в котором они были получены. Пакеты ошибок или сбоев привели к прерыванию работы обоих каналов.

Возможно, единственным пользователем транспортного уровня был интерфейс Host-Micro Interface (HMI) API- CompuServe . HMI определил ряд команд, которые можно было использовать для управления CIS, а также возможные ответы на них, минуя интерфейс командной строки . Поскольку исправление ошибок использовалось как побочный эффект создания на B Plus, возможность неправильной интерпретации команд или потенциально искаженных ответов была практически исключена. CIS расширила HMI, чтобы обеспечить управление большей частью пакетно-ориентированного интерфейса, включая функции электронной почты, конференций и передачи файлов.

Потоки транспортного уровня не могли происходить одновременно с передачей файлов, поэтому в общих чертах приложения, использующие транспортный уровень, были довольно модальными. Например, CIS Navigator для Mac , основанный на HMI, позволял пользователям перемещаться по CIS в автономном режиме, настраивая различные передачи электронной почты и файлов, которые затем выполнялись в одном пакете, чтобы сократить время работы в сети. Последним шагом «запуска» Навигатора будет загрузка файлов перед выходом из системы.

Последовательности управления

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

Все протоколы используют «обратный канал» для отправки информации о состоянии от «получателя» обратно «отправителю». B Plus формализовал эту систему, определив несколько «сообщений», которые можно было отправлять за пределы структуры пакета. К ним относятся типичные DLE за которым следует порядковый номер, чтобы подтвердить правильный прием пакета. NAK использовался для обозначения неправильно полученного пакета, на который был дан ответ подтверждающими сообщениями, <DLE><DLE>. <DLE>; приостановил отправителя, в то время как <DLE>+ прервал поток.

Последовательность управления «Запрос» уникальна для B Plus. Состоит из одного <ENQ>, запрос использовался как для запуска передачи, так и для перезапуска после получения NAK. В обоих случаях запрос заставил получателя сбросить режим соединения до самых основных возможных настроек передачи и подготовиться к передаче.

См. также

[ редактировать ]
  • Расс Рэншоу, «Протокол CompuServe B Plus», 18 ноября 1993 г.
Версия этого документа в формате zip доступна как bplus.zip .
  • Томас, Леви; Тернер, Ник (июль 1986 г.). «Протокол CompuServe B: лучший способ отправки файлов» . Журнал доктора Добба . Том. 11, нет. 7. С. 54–59.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ee7d046c72e6d40827017923f84395f5__1648138740
URL1:https://arc.ask3.ru/arc/aa/ee/f5/ee7d046c72e6d40827017923f84395f5.html
Заголовок, (Title) документа по адресу, URL1:
B protocol - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)