Resumen

  • RFC 3368 asignó dos funciones a go:: dirigirse a un servicio CNRP concreto o entregar una consulta de nombre común a los servicios que eligiera el cliente.
  • Un enlace id= ligado a un servidor podía señalar un registro sin incluir el nombre que el lector creía reconocer. Sintaxis, registro y resolución eran pruebas diferentes.

En agosto de 2002, RFC 3368 propuso un enlace para una dificultad que las direcciones web ordinarias no resolvían bien: las personas recuerdan nombres, mientras que las redes mueven recursos mediante identificadores y servicios. El esquema go: no convirtió el nombre en una autoridad. Definió cómo transportar una consulta CNRP desde un cliente hasta un servicio.

La diferencia aparece justo después de los dos puntos. go://cnrp.example?Ada%20Lovelace indica un servidor concreto y le envía una consulta. go:Ada%20Lovelace no especifica servidor; RFC 3368 destinó esta forma a uno o varios servicios CNRP que el cliente ya tuviera configurados. Así, el mismo nombre visible podía llegar a conjuntos de servicios distintos en máquinas diferentes. El enlace no incluía un directorio universal de resolvedores.

RFC 3368 también daba otro significado a una URI que solo contenía el servidor: identificaba un servicio CNRP, no una búsqueda determinada. El cliente podía preguntarle por sus capacidades mediante servicequery. Si el servidor estaba vacío, se entendía que era el equipo local; cuando no había información previa sobre otros transportes, el valor predeterminado indicado era HTTP en el puerto 1096. Esos valores permitían iniciar una conversación, pero no demostraban que el servidor estuviera disponible, fuera confiable o siguiera funcionando.

La brevedad era deliberada. CNRP ya tenía una representación XML, pero una consulta compleja dentro de una URI podía superar los límites de longitud. RFC 3368 definió una sintaxis reducida para nombres comunes y pares atributo-valor. Estableció la codificación UTF-8 y el escape porcentual para octetos fuera de la gramática; su ejemplo representa ü con bytes UTF-8. Las formas resumidas que aparecen en el texto son didácticas: la sintaxis normativa es la gramática ABNF.

El caso límite más importante era go://cnrp.example?id=5432345. Esa URI apuntaba a un registro concreto en un servidor concreto sin llevar el nombre común. La sección de seguridad de RFC 3368 advirtió sobre el desajuste: alguien podía creer que el enlace mostraba la URI actualmente asociada a «BMW», aunque el nombre «BMW» no apareciera en el enlace. Un identificador legible por máquina puede ser estable y, a la vez, opaco para la persona a quien se le pide confiar en él.

RFC 3367, el protocolo complementario, dejó fuera de su alcance inicial la búsqueda y selección de proveedores de servicios, el registro, la propiedad y la unicidad de los nombres. Por eso, el conjunto de servicios configurados en el cliente seguía siendo una decisión local, no una respuesta mundial sobre quién hablaba en nombre de un nombre. Más adelante, el Registro de Esquemas URI de IANA anotó go como Permanente con RFC 3368 como referencia. Esa ficha acredita el estado del registro, no la compatibilidad de los navegadores, la actividad de los servicios, el tráfico ni la adopción.

La frontera histórica útil es sencilla: un enlace puede identificar un servicio, una consulta o un registro, pero no son objetos intercambiables. Las notas de Heng Lu «Reality Layers» y «Running-Code Primacy» se declaran aquí como lentes editoriales para separar sintaxis, diseño registrado y funcionamiento observado; no son requisitos del protocolo ni pruebas del despliegue de go:.

Fuentes