HTTP y la Web

Protocolos de comunicación

  • Los protocolos son conjuntos de reglas que utilizamos para comunicarnos
  • Un protocolo de red describe una forma de comunicarnos dentro de una red: email (SMTP, POP, IMAP), compartir archivos (FTP), etc
  • Cada protocolo define la sintaxis y semántica de las instrucciones que utilizamos

Protocolos de red

  • La mayoría de los protocolos de red se construyen sobre otros
  • HTTP funciona sobre el protocolo TCP

TCP

  • Transmission Control Protocol
  • Es el protocolo que se encarga de que llegue la información correcta a la dirección correcta
  • TCP/IP es el conjunto de protocolos que lo contiene

¿Cómo funciona una conexión TCP?

  • Una computadora espera (o escucha) a que otras computadoras le hablen. Esta computadora puede escuchar a diferentes computadoras a la vez, en diferentes "canales" a los que vamos a llamar puertos
  • Otra computadora puede establecer una conexión a la que está escuchando, si utiliza el numero correcto de puerto
  • Si la computadora a la que queremos conectarnos se encuentra disponible y esta escuchando en ese puerto, se crea la conexión

¿Cómo funciona una conexión TCP?

Modelo Cliente-Servidor

  • A la computadora que se encuentra escuchando la vamos a llamar servidor y a la que se conecta, cliente

Modelo Cliente-Servidor

HTTP

  • HyperText Transfer Protocol
  • Es el protocolo que utilizan los clientes y servidores para comunicarse a través de la web

  • Tiene una versión segura, HTTPS

  • Definimos acción (verbo HTTP), recurso y versión del protocolo que vamos a utilizar
GET /index.html HTTP/1.1
    método           URI              versión

HTTP Request 

HTTP/1.1 404 Not Found
    versión           status code

HTTP Response

Los requests y responses además contienen los HEADERS (metadata) y la respuesta del servidor, el body/payload

Request/Response

#GifRandom

Los clientes hacen pedidos (REQUEST), los servidores responden (RESPONSE)

Modelo Cliente-Servidor

Los clientes siempre INICIAN la comunicación, los servidores están ESCUCHANDO

Modelo Cliente-Servidor

HTTP

  • El cliente establece una conexión TCP al servidor
  • Envía el request al servidor y espera la respuesta

  • El servidor procesa el request y responde con lo pedido, incluyendo un status code

URL

  • Uniform Resource Locator 
  • Es una referencia a un recurso
  • Nos permite identificar a cada documento de la web
 http://   eloquentjavascript .net/  13_browser.html
 protocolo       dominio        tld  ruta del recurso

Los dispositivos conectados a Internet están identificados a través de su dirección IP (única), la cual usamos para comunicarnos con otra máquina.

 

Como son difíciles de recordar, usamos nombres de dominio  para referenciar a una dirección o conjunto de direcciones IP

Recurso

  • Vamos a llamar recurso a los documentos, aplicaciones, assets, etc que podamos acceder y consumir desde un cliente al conectarnos a un servidor
  • Puede ser estático ó dinámico

HTTP y la Web

By Nicolás Quiroz