Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 12

Estudiantes:

Alan Pichardo|1087930

Jorge Toribio|1073071

Tema: Protocolo HTTP

Asignatura: Comunicación de datos I

Profesor: Reiner Campillo Terreno


Índice
1. Definición y utilización de HTTP ............................................................................................................ 3
2. Historia ................................................................................................................................................. 3
3. Protocolos existentes con funcionalidades similares ...................................................................... 3
4. Funcionamiento del protocolo..................................................................................................... 4
Protocolo HTTP

1. Definición y utilización de HTTP


El protocolo HTTP, también conocido como “Hypertext Transfer Protocol” tal y como su
nombre lo indica, está encargado de transferir los hipertextos que utilizamos diariamente al
navegar en la web. Cuando nos referimos a hipertexto, estaríamos hablando de los recursos
informativos que se encuentran enlazados en una página web, así como textos, imágenes, vídeos
y entre otros.
La utilización que le damos a este protocolo es la de autorizar recursos, en este caso hipertextos,
sobre páginas web que nos brindan dichos recursos autorizados por nosotros mismos, con la
finalidad de representar estos datos o informaciones en nuestros dispositivos, para así interactuar
con los recursos recibidos por parte del servidor. Por ejemplo, al acceder a recursos que me
brindan información para ampliar mi investigación, estoy utilizando el protocolo HTTP, ya que
estos hipertextos son transferidos mediante este protocolo, al igual que cualquier otra navegación
web.
2. Historia
La creación del protocolo HTTP se da tras la invención del World Wide Web, por Tim Berners-
Lee en el año 1989, donde propuso inventar el sistema de hipertexto sobre Internet. Durante ese
entonces el protocolo HTTP estuvo limitado a la transferencia de documentos de hipertexto
basado en su correspondiente lenguaje HTML.
La versión inicial, denominada actualmente como HTTP 0.9, consistía en la petición de un
recurso que solamente alcanzaba a ser de una línea, el método que se introducía en dicha línea
era “GET”, seguido de la URL de la página. Pronto es lanzada una versión mejorada de la inicial,
HTTP 1.0, se añadieron expansiones como las de la utilización de cabeceras y códigos de estado
sobre la petición de dichos recursos.
La necesidad del uso de este protocolo fue lo que lo llevo a ser estandarizado en el año 1997, con
su versión mejorada HTTP 1.1. Esta versión brindo mejoras como la reutilización de conexiones,
enrutamiento, mecanismos de gestiones de cache, negociaciones de recursos según el tipo de
contenido y entre otros. A través de los años fueron surgiendo versiones aún más complejas que
fueron cubriendo las necesidades innovadoras de las páginas web a través del tiempo, como
HTTP/2 o su variante HTTPS creado para fines de seguridad.
3. Protocolos existentes con funcionalidades similares
FTP
Es un protocolo basado en la arquitectura cliente-servidor, al igual que el protocolo HTTP, su
diferencia radica en que este consiste en la transferencia de archivos sobre una ubicación de red u
otra.
FTPS
Es el protocolo que brinda seguridad y privacidad al ya existente protocolo FTP, es decir, que es
una versión segura del protocolo FTP y además integra la capa de de seguridad TLS/SSL.
AFTP
Es un protocolo para transferencias de archivos diseñado para que se realicen en altas
velocidades, donde permite a los usuarios transferir archivos desde un computador a otro.
SCP
Es un protocolo de transferencia de archivos seguros, desde un equipo local a un equipo remoto.
Se caracteriza por basarse en los comandos RCP y la utilización de métodos de autenticación
entre equipos.
TFTP
Protocolo utilizado para transferencias simples de archivos, donde regula la transferencia de
archivos en las redes. Este esta basado en el protocolo mínimo de nivel de transporte UDP.
AS2
Es un protocolo de transferencia de archivos que se utiliza para la transferencia de datos
sensibles, es decir, que se caracteriza por ser seguro.
4. Funcionamiento del protocolo
A. Función
Un vistazo general de como funciona este protocolo a nivel de arquitectura es que trabajan bajo
el principio cliente-servidor. Las peticiones son ordenadas por el cliente, mientras que las
respuestas son los recursos enviados por el servidor. Existen también los proxies, que vendrían
siendo los dispositivos intermediarios entre el cliente y servidor, del cual desempeñan una
funcionalidad distinta dependiendo del tipo de dispositivo que se ha utilizado en dicha
arquitectura, por ejemplo, proxies para registros de eventos, filtrado de malwates, balanceo de
carga de peticiones y entre otros. (MDN Web Docs, 2020).

Aquí un ejemplo de una gráfica indicando el flujo de forma general en como funciona la
estructura en cuanto a la utilización del protocolo HTTP. Primeramente, la petición sale del
cliente pasando por los dispositivos intermediarios hasta llegar al servidor, donde mas luego el
servidor recibe esa petición y le envía una respuesta pasando por los mismos proxies hasta así
llegar al cliente. Estos mensajes, es decir, peticiones y respuestas están estructuradas de forma
que tanto el cliente como el servidor comprende que este tipo de mensaje es HTTP, donde a
continuación, empezaríamos a ver como se desglosan dichos mensajes.
B. Cabecera
Tal y como mencione en la parte de funciones del protocolo HTTP, la cabecera no es más que el
contenido de un mensaje de tipo HTTP, del cual se clasifica en dos, cabecera de peticiones y
cabecera de respuestas. La cabecera de peticiones contiene la información necesaria para que el
servidor interprete que necesita el cliente visto desde el protocolo HTTP, mientras que la de
respuesta contiene la información enviada por el servidor hacia el cliente. Un ejemplo de cada
uno serían los siguientes:
Cabecera de petición

• Request URL Es el URL en donde se realiza la petición.


• HTTP/1.1 Indica la versión del protocolo HTTP.
• 200 OK Código de estado de la petición, indicando que ha sido recibida y aceptada por el
servidor.
• Content-Encoding y Content-Type Información del tipo de archivo.
• Age, Cache-Control, Expires, Vary y X-Cache Referente al caching del archivo.
• Etag y Last-Modified Controles del archivo entregado.
• Server Software que utiliza el servidor donde se realiza la petición.
• Content-lenght Tamaño del archivo.
Cabecera de respuesta

• HTTP/1.1 Indica la versión del protocolo HTTP.


• 200 OK Código de estado de la petición, indicando que ha sido recibida y aceptada por el
servidor.
• Etag y Last-Modified Controles del archivo entregado.
• Cache control Tiempo que se puede mantener en control el objeto en cache
• Date tiempo de la respuesta
• Content-lenght Tamaño del archivo.
• Content-type Tipo de archivo
• Accept-Ranges El rango de unidades que acepta el servidor, este caso bytes.
• Expires El tiempo en que el archivo dejara de servir.
• Proxy-revalidate Indicacidor de que debe revalidar con el intermediario proxy
Cabecera general y entidad

Ambas son tipos de cabeceras que se encuentran tanto en las peticiones, como en las respuestas.
La cabecera general es encargada de establecer datos tipos genéricos de un mensaje HTTP, en
este caso vemos la preferencia de conexión al mismo tiempo que la preferencia de establecer
encriptación y autenticación en las respuestas del mensaje. En el caso de la entidad, esta
encargada de describir cómo será el cuerpo del mensaje, es decir, el tipo de contenido y longitud
de este.
C. Secciones
Desglosando lo que vendrían siendo la estructura del mensaje, se clasificaría de la siguiente
manera:
• Líneas de estado: Son números que indican el estado de los mensajes del protocolo, es
decir, si fue recibido con éxito o no la trama. Entre los códigos de estado más comunes
está el “200”, indicando que encontró el recurso solicitado, “302” el recurso fue
encontrado pero la URL ha sido movida temporalmente y por último “404”, cuando la
solicitud no ha sido encontrada.
• Cabecera: Sin detallar mucho lo explicado anteriormente, aquí es que se encuentra la
información necesaria para realizar la comunicación clasificados en peticiones y
respuestas sobre el protocolo HTTP.
• Cuerpo: Esta vendría siendo la parte final del mensaje, donde se puede encontrar la
información con relación a los datos a pedir o sus respuestas.

D. Subprotocolo

HTTPS
El protocolo de transferencia de hipertexto seguro (HTTPS) no es más que la extensión del
protocolo del cual estamos trabajando, protocolo de transferencia de hipertexto (HTTP). Esta
extensión esta basada en su protocolo original, por lo tanto, cumple con casi las mismas
funcionalidades, pero se diferencia por agregar el protocolo de seguridad TLS, cifrando la
comunicación para hacerla más segura.
La característica principal de este protocolo son las autenticaciones que nos brinda sobre los
sitios web y protección de la privacidad e integridad de los datos en el proceso de petición y
respuesta. Cabe destacar que nos protege contra ataques como “man-in-the-middle” o el cifrado
bidireccional de las comunicaciones de arquitectura cliente-servidor, por lo que protege las
comunicaciones contra escuchas y manipulaciones de datos. Este protocolo es bien conocido por
la garantía de seguridad que provee a los usuarios en los sitios web.
E. Proceso de mensaje y comunicación
Proceso

Adentrándonos en los detalles sobre el proceso de mensajería y comunicación del protocolo


HTTP, ciertamente habíamos explicado sobre como este se basa en la arquitectura cliente-
servidor donde dentro de ese proceso se daban los mensajes de peticiones y respuestas con sus
respectivas cabeceras para indicar su tipo de protocolo y sus instrucciones según la cabecera que
fuese, ya sea de petición o respuesta.
Guiándonos de la primera imagen podemos ver el proceso de transición de los mensajes del
protocolo HTTP, que en este caso los componentes de una pagina web, como los archivos de
configuración, APIs, los forms de HTML y la actividad de interfaz de usuario se traducen a lo
que vendría siendo la cabecera y el cuerpo, es decir, los datos a mandar al cliente. Técnicamente,
esta información traducida se refleja como un mensaje de versiones HTTP 1.x, donde más
adelante llegan a transformarse en tramas binarias en la versión HTTP/2.0 clasificado en
cabeceras y data, donde dicho cambio de versión de protocolo se da para aumentar la
optimización y rendimiento de la transmisión. Después de recibida la trama, el servidor acepta,
interpreta y responde al mensaje enviado por el cliente con una trama de respuesta, estructurada
igualmente de forma binaria con la segunda versión del protocolo.
Códigos de estados
Respuestas informativas
• 100 Continue: Respuesta provisional que se encarga de informar que el proceso hasta el
momento sigue bien.
• 101 Switching protocol: Aparece cuando el protocolo le responde a un encabezado
indicando que se realiza un cambio de protocolos.
• 102 Processing: Recibió y aún está procesando la información.
• 103 Early hints: Indica que el encabezado link va a se utilizado para que el cliente
precargue las informaciones y datos.
Respuestas satisfactorias
• 200 ok: Solicitud aceptada y enviada de forma exitosa.
• 201 created: Solicitud exitosa y se crea un nuevo recurso en resultado de dicha solicitud.
• 202 Accepted: Solo se ha recibido la petición, es decir, que no se ha enviado ningún
recurso.
• 203 Non-Authoritative Information: Petición exitosa pero de fuente diferente a la
solicitada,
• 204 No content: Petición recibida exitosa, pero no existe contenido de lo que fue pedido.
• 205 Reset content: Se completa la petición, no hay contenido y tiene que ser inicializada
la petición nuevamente.
• 206 Partial content: La petición solo se entrega de forma parcial, es decir, los datos
solicitados están incompletos.
Redirecciones
• 300 Multiple choice: Solicitud que tiene mas de una posible respuesta.
• 301 Moved permanently: La URI del servidor solicitado ha sido cambiado
permanentemente.
• 302 Found: La URI del servidor solicitado ha sido cambiado temporalmente.
• 303 See other: El servidor envía al usuario a una nueva dirección para enviar el recurso.
• 304 See Proxy: La solicitud debe ser accedida mediante un proxy.
Errores de cliente
• 400 Bad request: La solicitud no pudo ser interpretada.
• 401 Unauthorized: No ha sido autenticada la solicitud.
• 403 Forbidden: El cliente no puede acceder a los recursos, debido a no tener permisos
necesarios.
• 402 Not Found: El servidor no encontró el contenido solicitado.
• 405 Method Not Allowed: Método utilizado para solicitud ha sido deshabilitado.
• 408 Request timeout: El servidor desconecta las conexiones que no están siendo
utilizadas, es decir, que exceden del tiempo de vida para recibir la solicitud.
Errores de servidor
• 500 Internal server error: El servidor encontró un error que no sabe manejar.
• 501 Not Implemented: Método utilizado para acceder al servidor no es utilizado por este.
• 502 Bad Gateway: Es cuando el servidor obtiene una respuesta invalida al utilizar las
puertas de enlace.
• 503 Service Unavailable: Los recursos que dispone el servidor no están disponibles en el
momento.
• 504 Gateway Timeout: El servidor actúa como puerta de enlace y no obtiene una
respuesta a tiempo.
• 505 HTTP version not supported: La versión http no es soportada por el servidor.
Referencias

- MDN Web Docs. (2020, 7 agosto). Generalidades del protocolo HTTP - HTTP | MDN.
Recuperado 3 de enero de 2021, de
https://developer.mozilla.org/es/docs/Web/HTTP/Overview

- 1&1 IONOS España S.L.U. (2020, 9 diciembre). protocolo HTTP. Recuperado 3 de enero de
2021, de https://www.ionos.es/digitalguide/hosting/cuestiones-tecnicas/protocolo-http/

- Villanueva, J. C. (2015, 15 Julio). 12 File Transfer Protocols for Businesses | JSCAPE.


Recuperado 3 de enero de 2021, de https://www.jscape.com/blog/12-file-transfer-
protocols-businesses

- MDN Web Docs. (2019, 23 marzo). Evolución del protocolo HTTP - HTTP | MDN.
Recuperado 3 de enero de 2021, de
https://developer.mozilla.org/es/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP

- 1&1 IONOS España S.L.U. (2020, diciembre 9). Cabecera HTTP. Recuperado 3 de enero de
2021, de https://www.ionos.es/digitalguide/hosting/cuestiones-tecnicas/cabecera-http/

- Conklin, K. (2020). ¿Qué es el Protocolo de transferencia de archivos (FTP)? Recuperado 3 de


enero de 2021, de https://blog.ipswitch.com/es/qu%C3%A9-es-el-protocolo-de-
transferencia-de-archivos-ftp

- Techopedia. (2018). Anonymous File Transfer Protocol (AFTP). Recuperado 3 de enero de


2021, de https://www.techopedia.com/definition/11030/anonymous-file-transfer-
protocol-aftp

- 1&1 IONOS España S.L.U. (2020c, diciembre 9). TFTP. Recuperado 3 de enero de 2021, de
https://www.ionos.es/digitalguide/servidores/know-how/tftp/

- Reynolds, J. (2019). What is an AS2 File Transfer? Recuperado 3 de enero de 2021, de


https://www.advancedcyber.co.uk/it-security-blog/what-is-an-as2-file-transfer

- IONOS. (2020, 12 agosto). ¿Qué es el SCP protocol? Recuperado 3 de enero de 2021, de


https://www.ionos.es/digitalguide/servidores/know-how/scp-secure-copy/

- MDN Web Docs. (2019b, noviembre 12). Mensajes HTTP - HTTP | MDN. Recuperado 3 de
enero de 2021, de https://developer.mozilla.org/es/docs/Web/HTTP/Messages
- MDN Web Docs. (2020b, octubre 1). Códigos de estado de respuesta HTTP - HTTP | MDN.
Recuperado 3 de enero de 2021, de
https://developer.mozilla.org/es/docs/Web/HTTP/Status

También podría gustarte