Пунтер (протокол)

Игрок
Протокол связи
ЦельПротокол передачи файлов
Разработчик(и)Стив Пантер
Введение1980 ; 44 года назад ( 1980 )
На основеXMODEM
Аппаратное обеспечениеМодемы

Punter — это протокол для передачи файлов, разработанный в 1980-х годах Стивом Пантером . Существуют различные типы Punter, такие как PET Transfer Protocol ( PTP ), C1 и C2 .

Протокол передачи ПЭТ

Протокол передачи PET ( PTP ), также известный как Punter или Old Punter , был разработан около  1980 года Стивом Пантером для использования с его программным обеспечением PETBBS и BBS64 для систем досок объявлений (BBS). «PET» в названии происходит от компьютера Commodore PET .

По сравнению с другими современными протоколами PTP медленнее, чем YMODEM и ZMODEM , но быстрее и надежнее, чем XMODEM .

Самая ранняя версия Punter поддерживает только 7- битные передачи и использует алгоритм обратной коррекции, включающий две контрольные суммы для отказоустойчивости. Одна из двух контрольных сумм является аддитивной, а другая — булевой по своей природе (выполнение инструкций EOR), что делает алгоритм простым для понимания и эмуляции другими программистами. Наличие двух контрольных сумм — обе из них шириной 16 бит — делает его значительно более точным, чем однобайтовая контрольная сумма, используемая XMODEM , его основным конкурентом в начале 1980-х годов. Независимо от возможности появления ошибок, по сравнению с протоколом YMODEM конца 1980-х годов, который, возможно, лучше, он широко использовался на досках объявлений на базе Commodore PET и Commodore 64 .

Выходной терминал

Не вся передача видна пользователю. Наиболее заметной частью передачи является отчет о кодах состояния, таких как ACK, GOO, BAD и SYN для результатов квитирования. Типичная передача может выглядеть как "ACKGOOGOOGOOGOOBADGOOGOOGOOBADGOO", при этом плохие блоки сообщаются пользователю так же часто, как и возникали. Это позволяет пользователям регистрировать частоту ошибок в зависимости от времени и дня недели и определять, в какие часы дня и в какие дни недели телефонные линии были чище. В отличие от современных компьютеров, C64 и C128 могут опрашивать пользовательский порт (куда подключен модем ) с немного разными скоростями передачи и соединения. Например, передача на скорости 1200 бод в воскресенье вечером может фактически привести к меньшему количеству ошибок, чем 2400 бод во вторник днем. Выбирая более медленную скорость передачи, файлы могут фактически передаваться быстрее, поскольку будет меньше повторных отправок.

С1

В 1984 году Стив Пунтер выпустил преемника PTP под названием C1 , или New Punter . C1 был стандартным протоколом для использования на BBS Commodore и редко поддерживался программным обеспечением терминала или BBS для других операционных систем .

Спецификация C1 изобиловала неточностями и двусмысленностями, что затрудняло ее реализацию с нуля. Тем не менее, протокол получил широкое распространение, поскольку Пунтер опубликовал исходный код оригинальной реализации в открытом доступе .

C1 мог передавать блоки размером до 255 байт с рекомендуемым (но не обязательным) минимумом в 40 байт и накладными расходами в 7 байт на блок. Он оптимизирован для передачи файлов, хранящихся на 8-битных компьютерах Commodore , DOS которых обрабатывает исполняемые и последовательные файлы одинаково.

Мульти-пантер

Термин Multi-Punter может относиться к любому из трех или четырех взаимно несовместимых сторонних вариантов C1 , которые допускают пакетную передачу файлов, в отличие от C1 , который был разработан для передачи отдельных файлов.

Один из таких вариантов, C2 , также известный просто как Punter , был разработан около  1985 года компанией Punter. Как и C1 , он оптимизирован для передачи файлов, хранящихся на 8-битных компьютерах Commodore.

Другой вариант был разработан примерно в  1987 году Аланом Питерсом.

  • Оригинальная спецификация C1 Стива Пантера
  • Спецификация C1 с пояснительными аннотациями
  • Программа Punter для систем IBM PC
  • Заметки по внедрению C1 и Peters' Multi-Punter
  • Тема обсуждения деталей протокола
  • Современное описание/анализ протокола Punter
Взято с "https://en.wikipedia.org/w/index.php?title=Punter_(протокол)&oldid=1218607544"