Кратко
- RFC 741 рассматривал пакетный голос не как простую последовательность отсчётов: прежде чем передавать речь, два хоста должны были согласовать вызов, кодирование, темп и готовность.
- Четыре направленные роли управления и данных, согласование кодеков и ожидание ответа человека показывают, что именно задавал NVP. Указание четырёх площадок не доказывает широкого распространения.
Анализ
Два разных года в одном документе
На обложке RFC стоит дата 22 ноября 1977 года. Титульная страница при этом называет текст NSC Note 68 от 29 января 1976 года и указывает, что он пересматривает три более ранние записки. Это не противоречие в истории реализации, а две даты документа: протокол, по словам автора, был впервые реализован в декабре 1973 года.
Предисловие помещает NVP в проект ARPA Network Secure Communications. Проект стремился продемонстрировать высококачественную, малоскоростную, цифровую полнодуплексную речь через сети с коммутацией пакетов. Для защиты оцифрованной речи, говорится в тексте, можно было использовать уже существовавшие шифровальные устройства. NVP был частью усилия, но не обеспечивал шифрование сам.
В благодарностях Danny Cohen сообщает, что NVP с 1973 года применялся для локальной и межсетевой голосовой связи в ARPANET. Он перечисляет Information Sciences Institute, Lincoln Laboratory, Culler-Harrison и Stanford Research Institute, а также разные комбинации оборудования и речевого кодирования. Это конкретное сообщение об использовании в четырёх местах. В RFC нет подсчёта пользователей и вызовов, оценки качества или доказательства существования общедоступной телефонной службы.
Сначала согласовать вызов, потом передавать речь
RFC 741 объяснял, почему стандартного обмена данными было мало: протокол host-to-host в ARPANET оптимизировали для передачи данных, а для интерактивной речи он не подходил. Поэтому NVP отделил управляющие сообщения от речевых данных. Верхние восемь бит 12-битного MESSAGE-ID документ называет LINK, нижние четыре — SUB-LINK. Это логические идентификаторы сообщений, а не четыре физических линии и не современные IP-порты.
Вызов использовал четыре направленные роли. L переносил управление от вызывающего к отвечающему, K — управление обратно. Речь шла по L+1 в первом направлении и по K+1 во втором. L и K выбирались в восьмеричном диапазоне 340–375 и могли совпадать. Первоначальный контакт проходил по ссылке 377.
Вызывающий отправлял по 377 сообщение с указанием вызывающей и вызываемой сторон и предлагал K. Отвечающий мог отказать либо принять вызов и назначить L. Затем вызывающий повторял обращение уже по L. Начиналось согласование совместимости: одна сторона предлагала параметры WHAT и варианты HOW, другая принимала или отклоняла их. Согласовать можно было тип речевого кодирования, период дискретизации, версию протокола, максимальную длину сообщения и размер речевого фрагмента. RFC описывал, среди прочего, LPC и CVSD. Совпадение оборудования не требовалось; требовалась общая конфигурация.
Совместимость машин ещё не означала, что человек ответил
После успешного первоначального согласования отвечающий подавал звонок и отправлял RINGING. Когда человек отвечал, сигнал READY разрешал передачу речевых данных. Спецификация допускала READY без предварительного RINGING, но всё равно разделяла совместимость машин и готовность собеседника.
После назначения ссылок любая сторона могла запросить новое согласование. Ссылки оставались прежними, а ранее согласованные параметры требовалось пройти заново; до READY речевые сообщения игнорировались. Необязательный ECHO REQUEST позволял измерять задержку. RFC не требовал поддержки этой функции и прямо запрещал завершать вызов только из-за отсутствия ответа. Это точка наблюдения, а не гарантия задержки.
В 1986 году RFC 980 отнёс NVP-II к «Minor Host Protocols». Такая запись фиксирует место в каталоге протоколов, но не показывает, сколько сетей продолжало использовать NVP. Исторический вывод здесь ограничен и потому надёжен: к середине 1970-х исследователи ARPANET описали, как разнородные машины согласуют кодирование, роли управления и состояние человеческого ответа. Речь передавалась после этого согласования, а не вместо него.
Источники
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
