Кратко
- RFC 3368 отвёл схеме
go:две роли: адресовать определённую CNRP-службу или передавать запрос по общему имени службам, выбранным клиентом. - Ссылка
id=с указанием сервера могла обозначить запись, не содержа имени, которое, как полагал читатель, видел. Синтаксис, регистрация и разрешение имени — разные свидетельства.
В августе 2002 года RFC 3368 предложил ссылку для задачи, с которой обычные веб-адреса справлялись плохо: люди запоминают имена, а сети обращаются к ресурсам через идентификаторы и службы. Схема go: не наделяла само имя авторитетом. Она определяла, как клиент переносит запрос CNRP к службе.
Различие видно сразу после двоеточия. go://cnrp.example?Ada%20Lovelace указывает конкретный сервер и направляет запрос ему. В go:Ada%20Lovelace сервера нет; RFC 3368 задумывал эту форму для одной или нескольких CNRP-служб, уже настроенных в клиенте. Поэтому одно и то же видимое имя на разных устройствах могло уйти разным наборам служб. Ссылка не несла с собой глобальный справочник резолверов.
URI, в котором указан только сервер, тоже получал отдельное значение: он обозначал CNRP-службу, а не конкретный поиск. Клиент мог запросить её возможности с помощью servicequery. Пустое поле сервера означало localhost; если клиент не знал о других транспортных вариантах, спецификация задавала HTTP на порту 1096 как значение по умолчанию. Эти значения помогали начать обмен, но не доказывали, что сервер доступен, заслуживает доверия или продолжает работать.
Краткость была намеренной. Запрос CNRP можно было представить в XML, однако сложный XML быстро превысил бы допустимую длину URI. Поэтому RFC 3368 определил более компактный синтаксис общего имени и пар атрибут/значение. Используется UTF-8, а октеты вне грамматики кодируются процентными escape-последовательностями; в примере ü представлено байтами UTF-8. Краткие формы в тексте приведены для объяснения, авторитетная грамматика — ABNF.
Важнее всего был крайний случай go://cnrp.example?id=5432345. Такой URI указывал на конкретную запись у конкретного сервера, не включая общее имя. В разделе безопасности RFC 3368 предупреждал о разрыве: пользователь мог считать, что ссылка ведёт к ресурсу, сейчас сопоставленному с «BMW», хотя слова «BMW» в URI нет. Машиночитаемый идентификатор может оставаться стабильным и при этом быть непрозрачным для человека, которого просят ему доверять.
Сопутствующий протокол RFC 3367 изначально не включал в свою область обнаружение и выбор поставщиков служб, регистрацию, владение и уникальность имён. Поэтому набор служб, настроенных на клиенте согласно RFC 3368, оставался локальным выбором, а не глобальным ответом на вопрос, кто вправе говорить от имени имени. Позднее реестр URI-схем IANA указал go как Permanent со ссылкой на RFC 3368. Эта запись подтверждает статус регистрации, но не поддержку браузерами, наличие активных служб, трафик или распространённость.
Полезная историческая граница проста: ссылка может обозначать службу, запрос или запись, но это не взаимозаменяемые объекты. «Reality Layers» и «Running-Code Primacy» Heng Lu здесь открыто используются как редакционные линзы, помогающие отделить синтаксис, зарегистрированный дизайн и наблюдаемую работу. Это не требования протокола и не свидетельство внедрения go:.
Источники
- RFC 3368: The 'go' URI Scheme for the Common Name Resolution Protocol
- Запись RFC 3368 в RFC Editor
- Запись RFC 3368 в IETF Datatracker
- RFC 3367: Common Name Resolution Protocol
- Запись RFC 3367 в IETF Datatracker
- RFC 2396: общая синтаксическая структура URI
- RFC 3986: общая синтаксическая структура URI
- RFC 7595: рекомендации и процедуры регистрации URI-схем
- Реестр URI-схем IANA
- Heng Lu, Running-Code Primacy
- Heng Lu, Reality Layers
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
