Кратко
- Джеймс Э. Уайт предложил в RFC 707 общий протокол вызова процедур и среду выполнения, чтобы сократить повторение команд и ответов в прикладных протоколах ARPANET.
- В документе описан прототип для PDP-10 под TENEX, но также сказано, что удалённые вызовы требуют межпроцессных сообщений, стоят дороже локальных и не описывают все полезные формы связи.
Сколько диалога скрыто в одной операции
Переименование файла выглядит как одно действие. Однако спецификация FTP 1973 года требовала сначала отправить RENAME FROM, а затем RENAME TO. Приложение должно было управлять последовательностью команд и ответов, а не только самим намерением пользователя. В Remote Job Entry существовал иной поток команд и ответов; сервер мог сообщать о ходе работы, пока задание продолжалось. Каждое приложение заново описывало собственный способ вести такую беседу.
RFC 707, A High-Level Framework for Network-Based Resource Sharing, предложил вынести повторяющуюся механику в общий слой. Джеймс Э. Уайт из Augmentation Research Center при Stanford Research Institute (SRI) хотел, чтобы программу можно было описать как процедуру с аргументами, а не как новую грамматику команд для каждой услуги. Речь шла об унификации интерфейса, а не об отказе от сетевых сообщений.
Общая форма поверх межпроцессной связи
Предложенный Procedure Call Protocol (PCP) использовал пары сообщений CALL и RETURN, идентификаторы транзакций, аргументы и результаты. Он допускал несколько незавершённых запросов одновременно. Среда выполнения на каждой установке должна была подготовить вызов, обменяться данными с удалённой стороной и вернуть результат программе. В документе рассматривались блокирующие и неблокирующие вызовы, а также обратный вызов от сервера к клиенту.
Такой слой менял то, как разработчик формулировал задачу; под ним всё ещё передавались сообщения IPC. Распределённая программа могла продолжать работу асинхронно, а не всякое сетевое взаимодействие удобно представлять как вызов процедуры. Поэтому RFC 707 оставлял доступ к межпроцессной связи более низкого уровня.
Что говорит пример с TENEX
Документ сообщает, что исследования ARC начались в июле 1974 года, прошли три итерации проектирования за двенадцать месяцев и завершились созданием, документированием и реализацией прототипа среды выполнения для PDP-10 под TENEX. Авторы также утверждали, что TENEX-реализация соответствовала спецификации и включала больше возможностей, чем описано в тексте и приложениях.
Это конкретное свидетельство реализации в названной среде, а не только схема на бумаге. Но оно не показывает число установок, совместимость разных систем или распространение по всей ARPANET. Сегодня RFC Editor помечает RFC 707 как Legacy со статусом UNKNOWN; Datatracker уточняет, что документ появился до формальной регистрации источников и не имеет формального положения в современном процессе стандартов IETF. Эти нынешние метки не дают статистики применения в 1970-х.
Локальная метафора имеет сетевую цену
RFC 707 сам предостерегал от слишком буквального прочтения интерфейса: локальные вызовы процедур дёшевы, удалённые требуют сообщений IPC. Разработчики должны выбирать модель осознанно. Распределённые программы работают асинхронно; некоторые полезные обмены не укладываются в форму «вызов — возврат». Удобная оболочка не отменяет ожидания ответа и отказа удалённого узла.
Исторический вывод ограничен тем, что действительно сообщает источник: RFC 707 объединил повторяющиеся прикладные диалоги в проект общего протокола, а затем описал прототип TENEX. Доступные материалы не доказывают массового внедрения или прямого влияния на более поздние системы RPC. Важна именно поставленная автором граница между ясным интерфейсом и фактической стоимостью сетевого взаимодействия.
Источники
- James E. White, RFC 707, A High-Level Framework for Network-Based Resource Sharing.
- Запись RFC 707 в RFC Editor; запись RFC 707 в IETF Datatracker.
- RFC 542: команды FTP и порядок переименования; RFC 360: диалог команд и ответов Remote Job Entry.
- RFC 592 даёт ранний контекст дискуссий SRI об обмене ресурсами; более поздняя Note 65 Хэнга Лу служит только редакционной оптикой, а не доказательством замысла или распространения в 1970-х.
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
