6/10/09

Protocolo

¿Qué es un protocolo?

Un protocolo es un método establecido de intercambiar datos en Internet. Un protocolo es un método por el cual dos ordenadores acuerdan comunicarse, una especificación que describe cómo los ordenadores hablan el uno al otro en una red.
Como seres humanos, utilizamos el lenguaje como protocolo, en este caso hemos acordado comunicarnos con la lengua española.
El protocolo determina lo siguiente:
El tipo de comprobación de errores que se utilizará.
El método de compresión de los datos, si lo hay.
Cómo indicará el dispositivo que envía que ha acabado el enviar un mensaje.
Cómo indicará el dispositivo que recibe que ha recibido un mensaje.
Desde el punto de vista de un usuario, el único aspecto interesante sobre protocolos es que tu ordenador o dispositivo debe soportar los protocolos adecuados si quieres comunicarte con otros ordenadores. El protocolo se puede implementar en hardware o en software.

Protocolo HTTP

Desde 1990, el protocolo HTTP (Protocolo de transferencia de hipertexto) es el protocolo más utilizado en Internet. La versión 0.9 sólo tenía la finalidad de transferir los datos a través de Internet (en particular páginas Web escritas en HTML). La versión 1.0 del protocolo (la más utilizada) permite la transferencia de mensajes con encabezados que describen el contenido de los mensajes mediante la codificación MIME.
El propósito del protocolo HTTP es permitir la transferencia de archivos (principalmente, en formato HTML). entre un navegador (el cliente) y un servidor web (denominado, entre otros, httpd en equipos UNIX) localizado mediante una cadena de caracteres denominada dirección URL.
Comunicación entre el navegador y el servidor
La comunicación entre el navegador y el servidor se lleva a cabo en dos etapas:

El navegador realiza una solicitud HTTP
El servidor procesa la solicitud y después envía una respuesta HTTP En realidad, la comunicación se realiza en más etapas si se considera el procesamiento de la solicitud en el servidor. Dado que sólo nos ocupamos del protocolo HTTP, no se explicará la parte del procesamiento en el servidor en esta sección del artículo. Si este tema les interesa, puede consultar el articulo sobre el tratamiento de CGI.
Solicitud HTTP
Una solicitud HTTP es un conjunto de líneas que el navegador envía al servidor. Incluye:
Una línea de solicitud: es una línea que especifica el tipo de documento solicitado, el método que se aplicará y la versión del protocolo utilizada. La línea está formada por tres elementos que deben estar separados por un espacio:
el método
la dirección URL
la versión del protocolo utilizada por el cliente (por lo general, HTTP/1.0)
Los campos del encabezado de solicitud: es un conjunto de líneas opcionales que permiten aportar información adicional sobre la solicitud y/o el cliente (navegador, sistema operativo, etc.). Cada una de estas líneas está formada por un nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del encabezado.
El cuerpo de la solicitud: es un conjunto de líneas opcionales que deben estar separadas de las líneas precedentes por una línea en blanco y, por ejemplo, permiten que se envíen datos por un comando POST durante la transmisión de datos al servidor utilizando un formulario.
Por lo tanto, una solicitud HTTP posee la siguiente sintaxis ( significa retorno de carro y avance de línea): MÉTODO VERSIÓN URL
ENCABEZADO: Valor
. . . ENCABEZADO: Valor
Línea en blanco
CUERPO DE LA SOLICITUD
A continuación se encuentra un ejemplo de una solicitud HTTP: GET http://es.kioskea.net HTTP/1.0 Accept : Text/html If-Modified-Since : Saturday, 15-January-2000 14:37:11 GMT User-Agent : Mozilla/4.0 (compatible; MSIE 5.0; Windows 95)
Comandos
Comando
Descripción
GET
Solicita el recurso ubicado en la URL especificada
HEAD
Solicita el encabezado del recurso ubicado en la URL especificada
POST
Envía datos al programa ubicado en la URL especificada
PUT
Envía datos a la URL especificada
DELETE
Borra el recurso ubicado en la URL especificada
Encabezados
Nombre del encabezado
Descripción
Accept
Tipo de contenido aceptado por el navegador (por ejemplo, texto/html). Consulte Tipos de MIME
Accept-Charset
Juego de caracteres que el navegador espera
Accept-Encoding
Codificación de datos que el navegador acepta
Accept-Language
Idioma que el navegador espera (de forma predeterminada, inglés)
Authorization
Identificación del navegador en el servidor
Content-Encoding
Tipo de codificación para el cuerpo de la solicitud
Content-Language
Tipo de idioma en el cuerpo de la solicitud
Content-Length
Extensión del cuerpo de la solicitud
Content-Type
Tipo de contenido del cuerpo de la solicitud (por ejemplo, texto/html). Consulte Tipos de MIME
Date
Fecha en que comienza la transferencia de datos
Forwarded
Utilizado por equipos intermediarios entre el navegador y el servidor
From
Permite especificar la dirección de correo electrónico del cliente
From
Permite especificar que debe enviarse el documento si ha sido modificado desde una fecha en particular
Link
Vínculo entre dos direcciones URL
Orig-URL
Dirección URL donde se originó la solicitud
Referer
Dirección URL desde la cual se realizó la solicitud
User-Agent
Cadena con información sobre el cliente, por ejemplo, el nombre y la versión del navegador y el sistema operativo
Respuesta HTTP
Una respuesta HTTP es un conjunto de líneas que el servidor envía al navegador. Está constituida por: Incluye:
Una línea de estado: es una línea que especifica la versión del protocolo utilizada y el estado de la solicitud en proceso mediante un texto explicativo y un código. La línea está compuesta por tres elementos que deben estar separados por un espacio: La línea está formada por tres elementos que deben estar separados por un espacio:
la versión del protocolo utilizada
el código de estado
el significado del código
Los campos del encabezado de respuesta: es un conjunto de líneas opcionales que permiten aportar información adicional sobre la respuesta y/o el servidor. Cada una de estas líneas está compuesta por un nombre que califica el tipo de encabezado, seguido por dos puntos (:) y por el valor del encabezado Cada una de estas líneas está formada por un nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del encabezado.
El cuerpo de la respuesta: contiene el documento solicitado.

No hay comentarios:

Publicar un comentario