Emezeta.com

El protocolo HTCPCP: Café sobre Internet


El protocolo HTCPCP es una extensión del protocolo HTTP (normas por las cuales se rigen las conexiones vía web) propuesta en los RFC de la IETF.

libros leyes books libro abierto

Estos RFC no son más que una serie de documentos (a nivel técnico bastante alto) donde se especifican ideas para nuevos protocolos (posteriormente comentados, revisados y supervisados) para que, en el caso de parecer una alternativa factible, estudiarlos y adaptarlos.

Por ejemplo, varios protocolos usados en la actualidad tienen su propio RFC, como es el caso de:

htcpcp cafetera cafe coffee

En este caso concreto, voy a hablar del protocolo HTCPCP, detallado conjunto de normas para controlar y monitorizar cafeteras y preparar café vía web, definidos en el RFC 2324 del cuál extraigo, traduzco y adapto algunos interesantes fragmentos:

[...] El protocolo HTCPCP funciona añadiendo ciertos campos de cabecera, códigos y nuevos métodos en el protocolo HTTP. Se podrá acceder a las cafeteras vía web referenciandose por el esquema coffee://[...]

[...] Los comandos para controlar una cafetera son enviados desde el cliente al servidor utilizando el método POST o un nuevo método BREW, junto al cuerpo de mensaje con una cabecera Content-type establecida a «application/comando-de-cafetera». [...] Las cafeteras serán calentadas utilizando mecanismos electrónicos y sin necesidad de fuego, por lo tanto, el uso de cortafuegos es irrelevante.

[...] El método PROPFIND proporcionará metadatos acerca del café en el caso de que contenga datos y no se encuentre vacío [...] Al terminar el proceso de café en una cafetera vía web, es necesario que el cliente realice una solicitud para que el servidor sepa cuándo se debe dejar de vertir leche. El método WHEN proporciona esta información, finalizando el proceso de transmisión de leche.

Cuando un servidor HTTP tiene problemas, devuelve un cierto código: 404 cuando no encuentra la página, 500 cuando se produce un error del servidor. HTCPCP tiene una serie de códigos de error que devuelve también al cliente:

406 ERROR: No aceptable [...]

El servidor se ha encontrado con un error que no le permite fabricar el café. Devuelve una lista de los tipos de café que soporta para esa solicitud.

418 ERROR: I'm a teapot (Soy una tetera) [...]

Se ha intentado realizar una solicitud de café en un servidor que no es una cafetera, sino una tetera y no se ha podido realizar la petición. [...]

Consideraciones de Seguridad

[...] El uso no moderado a servidores HTCPCP de café desprotegidos a usuarios de Internet puede dar lugar a un ataque de denegación de servicio de café. [...] Se debería debatir contemplar la autorización en la próxima versión de HTCPCP.

Como ya habrán imaginado, este RFC es un protocolo envíado un 1 de Abril (día de los inocentes anglosajón), con un humor un tanto característico. Sin embargo, esto no acaba aquí.

Se puede encontrar multitud de información adicional como varias anotaciones en bugzilla sobre HTCPCP (incluyendo propuesta de un protocolo extensible de bebidas), así como otras bromas similares como: