Binkp

Article on other languages:

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire
binkp
Уровень (по модели ВОС): Прикладной
Семейство: TCP/IP
Создан в: 1996 г.
Порт/ID: 24554/TCP
Назначение протокола: Передача файлов в FTN-сетях
Спецификация: FSP 1011
Основные реализации (клиенты): binkd, argus, bforce
Расширяемость: Доп. команды и опции
Основные расширения: шифрование, сжатие данных, nodupe mode, MD5 authentication

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

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

Содержание

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

После того, как Интернет стал все более распространён и доступен, возникла потребность использовать его для междугородних линков в Фидонет вместо обычных телефонных сетей и сети Искра-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).

Номер порта (24554), по-видимому, был выбран, как число 59999, у которого поменяны местами старший и младший байты (т. е. в сетевом пакете записаны так, как они хранятся в компьютерах intel-архитектуры).

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

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

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

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

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

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

Ссылки

Источник — «http://ru.wikipedia.org/wiki/Binkp»

Advanced questions for article: binkp,

Questions for article: binkp

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net