You are on page 1of 14

1.

264 Tema 11

Fundamentos Web
Servidores y navegadores Web
Internet es "slo" un conjunto de redes conectadas entre s:
Un conjunto de redes de rea local conectadas va redes de rea extensa.
Sin gestin o control centralizado.
Los segmentos de red se conectan entre s por medio de routers.
Los routers son ordenadores dedicados que gestionan los paquetes de
datos.
TCP/IP es el protocolo de datos universal de la red.
En este formato, se encargan del contenido los protocolos de los niveles
superiores, como el protocolo Web.
Conexiones TCP/IP:
El cliente es, por lo general, un consumidor de datos que enva breves
solicitudes:
En la Web, el cliente es un navegador.
El servidor es, generalmente, un proveedor de datos que enva respuestas larga
largas:
Escucha las peticiones y transmite los datos solicitados (a travs del
conocido puerto 80).
Puede enviar datos dinmicos o estticos.
La conexin Web permanece activa slo el tiempo suficiente para
intercambiar los datos:
Evita la sobrecarga de muchos canales de comunicacin, pero pierde su estado
Protocolo de Control de Transmisin/Protocolo de Internet (TCP/IP)

Servidor o router PC
(html)
Pgs. Web
Capa 7: Aplicacin Capa 7: Aplicacin HTTP

Conexiones
Capa 4: Transporte Capa 4: Transporte
TCP

Paquetes
Capa 3: Red Capa 3: Red IP

Tramas
Capa 2: Enlace de datos Capa 2: Enlace de datos Ethernet

Bits
Capa 1: Fsica Capa 1: Fsica 10BaseT
Sistema de capas del TCP/IP
Capas
Cabecera TCP: puerto de origen,
puerto de destino, n de secuencia, Datos 7: HTTP,
checksum, tiempo de vida, salida
HTML
de la seal de banda

Cabecera IP: protocolo (TCP), Cab TCP Datos 4: TCP


IP de origen, IP de destino

Cab IP Cab TCP Datos 3: IP

Cab Ethernet Cab IP Cab TCP Datos Cola Enet 2: LAN,


SONET
14 20 20 4
Trama Ethernet
Bits 1: 10BaseT
Organizacin Web: pginas Web

La pgina web es la unidad bsica de organizacin:


Las pginas sencillas se recuperan en una sola operacin.
Las pginas compuestas (generalmente, con texto y grficos)
precisan de varios tiempos (mltiples conexiones TCP/IP, a
menos que est activada la propiedad "Keep-Alive").
Las pginas tienen hipertexto:
Enlaces a otras pginas que se implementan mediante URLs
incrustadas en el cdigo.
Las pginas se describen mediante HTML (Hypertext
Markup Language):
Lenguaje de descripcin de documentos de alto nivel.
Especifica la estructura, pero no la apariencia del documento.
Define secciones, como "cabecera de nivel 1", "lista" o
"texto destacado".
El navegador se encarga de interpretar la pgina en la
mquina cliente.
Organizacin Web: tipos MIME
Cada documento Web tiene un tipo:
Tipos MIME (Multipurpose Internet Mail Extensions), en http
estndar:
Algunos tipos, como html, texto y algunos grficos, los muestra
directamente el navegador.
Para otros se necesitan plug-ins externos o asistentes.
El sistema de tipos web es ampliable. Es fcil incorporar nuevos
tipos:
Definir un nuevo tipo MIME en el servidor.
El navegador llamar a una aplicacin asistente si no reconoce el tipo MIME.
El navegador puede sugerir un sitio web para descargar el asistente.
Descargar e instalar la aplicacin y utilizar el nuevo tipo MIME.
Extensibilidad de un servidor web: programas para generar documentos
Las URL pueden apuntar a programas adems de a pginas.
Los programas pueden ser sencillos (un reloj) o complejos (bases de
datos o anlisis.)
Se utilizan Java, perl, C++, Java Server Pages, Visual Basic y Active
Server Pages.
Las aplicaciones las hay desde sencillas (un reloj) a complejas bases
de datos y anlisis.
Ejemplos de tipos MIME
application/msword Word
application/pdf Acrobat
application/vnd.ms-excel Excel
application/zip Archivo Zip
audio/basic .au, .snd
audio/x-wav MS audio
image/gif GIF
image/jpeg JPEG
text/plain Texto simple
text/html HTML
video/mpeg Vdeo

Consultar en http://www.rfc-editor.org una lista actualizada


de HTTP, MIME y otras especificaciones de Internet.
Protocolo HTTP
HTTP 1.1 es el protocolo de actualidad:
Se basa en el alfabeto ISO Latin1 (ASCII con ampliaciones
para las lenguas europeas).
HTTP 1.1 incluye la conexin tcp/ip permanente; con HTTP 1.0
se transmitan los documentos por partes.
Cuatro fases:
Establecimiento de la conexin: basada en la URL.
Solicitud: el navegador establece la conexin con el servidor
y enva:
El mtodo de solicitud (solicita datos al final si utiliza POST o
PUT ).
La URL.
El nmero de versin HTTP.
La informacin de cabecera (informativa, opcional), finalizada
con una lnea negra.
Respuesta: el servidor procesa la solicitud y enva:
Cdigo del estado y versin del protocolo HTTP.
Informacin de cabecera, finalizada con una lnea negra.
Texto (datos).
Cierre de la conexin.
HTTP O pgina de
HTML dinmico
de un programa
Cliente Servidor

Solicitar Pgina de
Navegador pgina HTML esttico Disco

Aadir
Decodificar Codificar cabecera
HTTP HTTP HTPP

Estas transacciones son stateless (no mantienen el estado). La


conexin se interrumpe al final de cada pgina y se reestablece:
el servidor no puede conectar peticiones sucesivas del cliente.
El contenido dinmico se genera en respuesta a una peticin HTTP
realizada por un programa servidor.
Ejemplos de peticin HTTP

Peticin tpica del navegador: (Unix telnet web.mit.edu 80 para verla)


GET /about-mit.html HTTP/1.1
Host: web.mit.edu (obligatorio)
Accept: text/html, text/plain, image/jpeg, image/gif, */* (opcional)
(lnea negra)
Respuesta tpica del servidor:
HTTP/1.1 200 OK
Server: Apache/1.3.3 Ben-SSL/1.28 (Unix)
Content-Type: text/html
Content-Length: 8300
(lnea negra)
Tambin (usar Unix telnet):
<HTML>
euro.ecom.cmu.edu
<HEAD><TITLE>Acerca del MIT</TITLE></HEAD> GET /test.html HTTP/1.1
<BODY>El objetivo del MIT</BODY>
</HTML> amazon.com
OPTIONS * HTTP/1.1
Fase de peticin HTTP (navegador a servidor)
Comando Descripcin
GET Solicita el documento especificado (se utiliza tambin
para enviar formularios con "Post") .
HEAD Solicita slo la cabecera del documento especificado.
POST Solicita que el servidor acepte los datos del navegador
y genere el contenido dinmico.
OPTIONS Obtiene el servidor y las opciones de acceso.
TRACE Se utiliza en la depuracin.
PUT Sustituye el documento del servidor por datos del
navegador.
DELETE Elimina del servidor el documento especificado.
GET es la peticin ms frecuente de los navegadores.
POST se utiliza para procesar los formularios rellenados.
HEAD lo utilizan los motores de bsqueda para comprobar
que las pginas estn en vigor.
En HTTP no hay seguridad ni autenticacin (la autenticacin
bsica enva la contrasea como texto sin formato).
Utilice SSL (Secure Socket Layer) para encriptar sus intercambios web.
Cabeceras de peticiones HTTP habituales
Cabecera Definicin
Accept Tipos MIME aceptados por el cliente (se permiten muchos).
Connection Tipo de conexin con el cliente ("keep-alive" o permanente;
con interrupciones).
Cookie Devolver la cookie anterior al servidor (intercambio de
datos).
From Email del usuario (enviado slo por los crawlers).
Host Servidor al que se realiz la peticin original (reenvo,
mltiples nombres).
If-Modified Se utiliza para reducir la bsqueda de documentos que el
-Since navegador ya tiene.
Referer URL del ltimo documento visualizado por el cliente.
User-Agent Nombre y versin del software del cliente (navegador).
Cdigo del estado de respuesta HTTP
Cd. del estado Definicin
100-101 Respuesta informativa; el cliente debera responder
con alguna otra accin (continuar, nuevo protocolo).
200-206 La peticin ha tenido xito.
300-307 Se ha movido el documento; indicar la nueva direccin.
400-417 Error de cliente: por ejemplo, una peticin no autorizada.
500-505 Error de servidor.

Ejemplos:
200 OK
404 No encontrado.
500 Error interno de servidor.
Ejemplos de cabeceras de respuestas HTTP

Cabecera Definicin
Allow Se permiten peticiones, como GET (400s).
Content-Length Longitud en bytes de los datos de respuesta
(se usa en las conexiones "keep alive").
Content-Type Tipo MIME de los datos de respuesta.
Expires Fecha en la que expira el documento.
Last-Modified Fecha en la que se modific el documento
por ltima vez.
Location Nueva direccin del documento (con estado
300).
Set-Cookie Da una "cookie" al navegador.

You might also like