fbpx
Wikipedia

Cabecera HTTP/1.1 Upgrade

HTTP/1.1 introdujo el soporte para el campo de cabecera Upgrade. En el intercambio, el cliente comienza haciendo una petición de texto claro, que es posteriormente actualizada/mejorada (upgraded) a una versión más nueva del protocolo http o cambiada a un protocolo diferente. La actualización (upgrade) de la conexión debe ser solicitada por el cliente, si el servidor quiere imponer un upgrade puede enviar una respuesta "426 upgrade required". El cliente puede entonces enviar una nueva solicitud con las cabeceras upgrade apropiadas.

Uso con TLS

Un uso posible es comenzar una solicitud en el puerto http normal, pero cambiar a Transport Layer Security (TLS).[1]​ En la práctica, dicho uso es poco frecuente, siendo el esquema de URL https una forma mucho más común de iniciar http cifrado.

El servidor devuelve un código de estado 426 para alertar a los clientes de versiones anteriores de que el fallo está relacionado con el cliente (los códigos de nivel 400 indican un fallo del cliente: Lista de códigos de estado HTTP).

Este método para establecer una conexión segura es ventajoso debido a que :

  • No requiere redirección desordenada y problemática y reescritura de URL en el servidor.
  • Permite el alojamiento virtual de sitios web protegidos (aunque HTTPS también permite esto usando Server Name Indication).
  • Reduce la posibilidad de confusión del usuario, proporcionando una única forma de acceder a un recurso determinado.

Una desventaja de este método es que el cliente no puede especificar el requisito para HTTP seguro en el URI. Por tanto un ataque Man-in-the-middle puede mantener una conexión sin cifrar y sin autenticar con el cliente mientras mantiene una conexión cifrada con el servidor.

Uso con WebSockets

WebSocket también utiliza este mecanismo para establecer una conexión con un servidor HTTP de forma compatible.[2]​ El protocolo de WebSocket tiene dos partes: un apretón de manos (handshake) para establecer la conexión mejorada (upgrade) y, posteriormente, la transferencia real de datos. Primero, un cliente solicita una conexión websocket usando las cabeceras "Upgrade: websocket" y "Connection: Upgrade", junto con algunas cabeceras específicas del protocolo para establecer la versión utilizada y establecer un apretón de manos. El servidor, si es compatible con el protocolo, responde con las mismas cabeceras "Upgrade: websocket" y "Connection: Upgrade" y completa el apretón de manos.[3]​ Una vez que el apretón de manos se realiza correctamente, se inicia la transferencia de datos.

Véase también

Referencias

  1. Ver RFC 2817
  2. «The WebSocket Protocol». IETF. Consultado el 15 de diciembre de 2013. 
  3. Raymor, Brian. . Microsoft Developer Network. Archivado desde el original el 16 de diciembre de 2013. Consultado el 15 de diciembre de 2013. 
  •   Datos: Q5636136

cabecera, http, upgrade, http, introdujo, soporte, para, campo, cabecera, upgrade, intercambio, cliente, comienza, haciendo, petición, texto, claro, posteriormente, actualizada, mejorada, upgraded, versión, más, nueva, protocolo, http, cambiada, protocolo, dif. HTTP 1 1 introdujo el soporte para el campo de cabecera Upgrade En el intercambio el cliente comienza haciendo una peticion de texto claro que es posteriormente actualizada mejorada upgraded a una version mas nueva del protocolo http o cambiada a un protocolo diferente La actualizacion upgrade de la conexion debe ser solicitada por el cliente si el servidor quiere imponer un upgrade puede enviar una respuesta 426 upgrade required El cliente puede entonces enviar una nueva solicitud con las cabeceras upgrade apropiadas Indice 1 Uso con TLS 2 Uso con WebSockets 3 Vease tambien 4 ReferenciasUso con TLS EditarUn uso posible es comenzar una solicitud en el puerto http normal pero cambiar a Transport Layer Security TLS 1 En la practica dicho uso es poco frecuente siendo el esquema de URL https una forma mucho mas comun de iniciar http cifrado El servidor devuelve un codigo de estado 426 para alertar a los clientes de versiones anteriores de que el fallo esta relacionado con el cliente los codigos de nivel 400 indican un fallo del cliente Lista de codigos de estado HTTP Este metodo para establecer una conexion segura es ventajoso debido a que No requiere redireccion desordenada y problematica y reescritura de URL en el servidor Permite el alojamiento virtual de sitios web protegidos aunque HTTPS tambien permite esto usando Server Name Indication Reduce la posibilidad de confusion del usuario proporcionando una unica forma de acceder a un recurso determinado Una desventaja de este metodo es que el cliente no puede especificar el requisito para HTTP seguro en el URI Por tanto un ataque Man in the middle puede mantener una conexion sin cifrar y sin autenticar con el cliente mientras mantiene una conexion cifrada con el servidor Uso con WebSockets EditarWebSocket tambien utiliza este mecanismo para establecer una conexion con un servidor HTTP de forma compatible 2 El protocolo de WebSocket tiene dos partes un apreton de manos handshake para establecer la conexion mejorada upgrade y posteriormente la transferencia real de datos Primero un cliente solicita una conexion websocket usando las cabeceras Upgrade websocket y Connection Upgrade junto con algunas cabeceras especificas del protocolo para establecer la version utilizada y establecer un apreton de manos El servidor si es compatible con el protocolo responde con las mismas cabeceras Upgrade websocket y Connection Upgrade y completa el apreton de manos 3 Una vez que el apreton de manos se realiza correctamente se inicia la transferencia de datos Vease tambien EditarHTTP Secure Secure Hypertext Transfer ProtocolReferencias EditarEsta obra contiene una traduccion derivada de HTTP 1 1 Upgrade header de Wikipedia en ingles concretamente de esta version del 8 de febrero de 2014 publicada por sus editores bajo la Licencia de documentacion libre de GNU y la Licencia Creative Commons Atribucion CompartirIgual 3 0 Unported Ver RFC 2817 The WebSocket Protocol IETF Consultado el 15 de diciembre de 2013 Raymor Brian WebSockets Stable and Ready for Developers Microsoft Developer Network Archivado desde el original el 16 de diciembre de 2013 Consultado el 15 de diciembre de 2013 Datos Q5636136 Obtenido de https es wikipedia org w index php title Cabecera HTTP 1 1 Upgrade amp oldid 121837092, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos