Для установки нажмите кнопочку Установить расширение. И это всё.

Исходный код расширения WIKI 2 регулярно проверяется специалистами Mozilla Foundation, Google и Apple. Вы также можете это сделать в любой момент.

4,5
Келли Слэйтон
Мои поздравления с отличным проектом... что за великолепная идея!
Александр Григорьевский
Я использую WIKI 2 каждый день
и почти забыл как выглядит оригинальная Википедия.
Статистика
На русском, статей
Улучшено за 24 ч.
Добавлено за 24 ч.
Альтернативы
Недавние
Show all languages
Что мы делаем. Каждая страница проходит через несколько сотен совершенствующих техник. Совершенно та же Википедия. Только лучше.
.
Лео
Ньютон
Яркие
Мягкие

Из Википедии — свободной энциклопедии

binkp
Уровень (по модели OSI) Прикладной
Семейство TCP/IP
Создан в 1996
Порт/ID 24554/TCP
Назначение протокола Передача файлов в FTN-сетях
Спецификация FTS-1026
Основные реализации (клиенты) binkd, argus, bforce
Расширяемость Доп. команды и опции
Основные расширения шифрование, сжатие данных, nodupe mode, MD5-аутентификация

Binkp — сетевой протокол прикладного уровня, разработанный для передачи файлов в Фидонете или в других FTN-сетях, происходящей поверх TCP-соединения. Как правило, для связи по данному протоколу используют TCP-порт 24554, так как этот номер зарезервирован под binkp в каталоге IANA (Internet Assigned Numbers Authority).

Существуют две версии протокола binkp: оригинальная (1.0) и дополненная (1.1). Кроме того, разработано несколько расширений протокола. Протокол и бо́льшая часть его расширений оформлены стандартами и предложениями FTSC.

Уровень разрешает приложениям пользователя иметь доступ к сетевым службам, таким как обработчик запросов к базам данных, доступ к файлам, пересылке электронной почты. Также отвечает за передачу служебной информации, предоставляет приложениям информацию об ошибках и формирует запросы к уровню представления. Пример: HTTP, POP3, SMTP.

История создания

После того, как Интернет стал все более распространён и доступен, возникла потребность использовать его для междугородних линков в Фидонет вместо обычных телефонных сетей и сети Искра-2. Реализации виртуальных модемов (rlfossil, vmodem) решали задачу недостаточно эффективно. В мейлере ifcico была реализована возможность прямой связи между фидошными мейлерами по TCP, но по-прежнему использовались протоколы, предназначенные для не дающего гарантии доставки транспорта (EMSI, zmodem), а потому неэффективные для применения поверх TCP.

В такой ситуации в 1996 г. Дмитрий Малов разработал специализированный протокол binkp и поддерживающий его мейлер binkd. Этот протокол и мейлер могли работать только поверх TCP, они не предназначены для работы по обычным телефонным линиям. В этом было их преимущество перед остальными протоколами, и binkp достаточно быстро потеснил остальные варианты fido over inet: к концу 1998 года, если судить по флагам в нодлисте, binkp уже был наиболее распространённым из протоколов fido over ip. Кроме того, протокол binkp был изначально документирован, а его реализация (binkd) — свободная кроссплатформенная программа, что тоже являлось существенным преимуществом binkp и binkd перед другими протоколами этого применения. Впоследствии появились реализации протокола binkp и в других мейлерах (Argus, bforce, qico, mbico).

Номер порта (24554) был, как утверждает автор, номером его домашнего телефона в Магадане.[1]

Структура протокола

Взаимодействие происходит в одной TCP-сессии (благодаря чему протокол работает через IP NAT). Стороны обмениваются между собой кадрами ограниченного размера (не более 32K, по умолчанию 4K). В каждом кадре могут передаваться либо данные, либо управляющая команда. За счёт этого достигается двунаправленность протокола: во время отправки файла одна из сторон может вклинить в поток данных кадр с командой подтверждения приёма файла, таким образом приём и передача происходят практически независимо друг от друга одновременно в одной tcp-сессии.

Кроме того, изначально было введено понятие потока. То есть, отправляющая сторона не ожидает подтверждения приёма предыдущего файла для отправки следующего. Это существенно повышает эффективность протокола по сравнению с другими аналогичными. Также в протокол были заложены возможности его последующего развития — добавления новых опциональных возможностей, либо изменение версии протокола (поддерживаемые версии и набор опциональных расширений стороны объявляют друг другу в начале сеанса связи).

Binkp работает через двунаправленный символьный канал, не допускающий ошибок при передаче данных. Любые данные, записываемые каждой из сторон в канал, имеют следующий общий формат:

binkp кадр:

   +---------------------- 0=блок данных, 1=сообщение(команда)
   |                +---- размер блока данных / размер аргументов
   |                |
   7 6543210 76543210
  +-+-------+--------+--- ..... ---+
  | |   HI      LO   |             | -- блок данных / аргументы
  +-+-------+--------+--- ..... ---+
  |<-    2 байта   ->|<- 32K max ->|

Заголовок кадра — два байта, определяющие тип и длину (в байтах) данных, следующих за заголовком. Если старший бит заголовка сброшен, то все данные поступившие с кадром следует дописать к текущему принимаемому файлу. (Если такой файл уже открыт, иначе — отбросить) В противном случае, данные следует разобрать как команду, меняющую состояние протокола. Первый байт данных, поступивших с кадром — номер команды. Оставшиеся — аргумент. Аргументы команд — произвольный набор символов, не обязательно ограниченный '\0'. Команда без аругментов (например, M_OK) может выглядеть примерно так:

   7 6543210 76543210 76543210
  +-+-------+--------+--------+
  |1|      0        1|       4|
  +-+-------+--------+--------+
    |                |        +----- номер команды (аргументов нет)
   |                 +-------- длина кадра без заголовка -- 1 байт
   +- это команда

Основные расширения

По мере развития протокола в него были добавлены многие новые возможности. Вот основные из них:

  • Возможность дополнения очереди на отправку без обрыва соединения (это основное отличие binkp 1.1 от 1.0), в частности, возможность отработки файловых запросов
  • Возможность безопасной передачи пароля по открытым каналам связи с использованием хеша MD5
  • Возможность шифрования всего трафика
  • Возможность компрессии трафика
  • Защита от повторной передачи файла в случае обрыва связи при подтверждении приёма (ND-mode)

См. также

Примечания

  1. Dmitry Malov. Каждый раз, когда читаю в путеводителе или... Москва: Facebook (7 октября 2016). — «на самом деле, 24554 был номер моего домашнего телефона в Магадане». Архивировано из оригинала 7 октября 2016 года.

Ссылки

Эта страница в последний раз была отредактирована 13 июля 2021 в 22:45.
Как только страница обновилась в Википедии она обновляется в Вики 2.
Обычно почти сразу, изредка в течении часа.
Основа этой страницы находится в Википедии. Текст доступен по лицензии CC BY-SA 3.0 Unported License. Нетекстовые медиаданные доступны под собственными лицензиями. Wikipedia® — зарегистрированный товарный знак организации Wikimedia Foundation, Inc. WIKI 2 является независимой компанией и не аффилирована с Фондом Викимедиа (Wikimedia Foundation).