Publicado el 7 de Septiembre del 2017
443 visualizaciones desde el 7 de Septiembre del 2017
440,7 KB
14 paginas
Creado hace 20a (13/06/2003)
1.264 Tema 11
Fundamentos Web
Servidores y navegadores Web
• Internet es "sólo" un conjunto de redes conectadas entre sí:
– Un conjunto de redes de área local conectadas vía redes de área extensa.
– Sin gestión 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
– TCP/IP es el protocolo de datos universal de la red.
– En este formato, se encargan del contenido los protocolos de los niveles
datos.
– El servidor es, generalmente, un proveedor de datos que envía respuestas largas
largas:
• Escucha las peticiones y transmite los datos solicitados (a través del
conocido puerto 80).
• Puede enviar datos dinámicos o estáticos.
– La conexión Web permanece activa sólo el tiempo suficiente para
intercambiar los datos:
• Evita la sobrecarga de muchos canales de comunicación, pero pierde su estado
superiores, como el protocolo Web.
• Conexiones TCP/IP:
– El cliente es, por lo general, un consumidor de datos que envía breves
solicitudes:
• En la Web, el cliente es un navegador.
Protocolo de Control de Transmisión/Protocolo de Internet (TCP/IP)
Servidor o router
PC
Capa 7: Aplicación Págs. Web
Capa 7: Aplicación
Capa 4: Transporte
Conexiones
Capa 4: Transporte
Capa 3: Red
Paquetes
Capa 3: Red
(html)
HTTP
TCP
IP
Capa 2: Enlace de datos
Capa 1: Física
Tramas
Bits
Capa 2: Enlace de datos
Ethernet
Capa 1: Física
10BaseT
Sistema de capas del TCP/IP
Cabecera TCP: puerto de origen,
puerto de destino, nº de secuencia,
checksum, tiempo de vida, salida
de la señal de banda
Datos
Cabecera IP: protocolo (TCP),
IP de origen, IP de destino
Cab IP
Cab TCP
Datos
Cab TCP
Datos
Cab Ethernet
Cab IP
Cab TCP
Datos
Cola Enet
14
20
20
Trama Ethernet
4
Capas
7: HTTP,
HTML
4: TCP
3: IP
2: LAN,
SONET
Bits
1: 10BaseT
Organización Web: páginas Web
• La página web es la unidad básica de organización:
– Las páginas sencillas se recuperan en una sola operación.
– Las páginas compuestas (generalmente, con texto y gráficos)
precisan de varios tiempos (múltiples conexiones TCP/IP, a
menos que esté activada la propiedad "Keep-Alive").
– Las páginas tienen hipertexto:
• Enlaces a otras páginas que se implementan mediante URLs
incrustadas en el código.
– Las páginas se describen mediante HTML (Hypertext
Markup Language):
• Lenguaje de descripción de documentos de alto nivel.
• Especifica la estructura, pero no la apariencia del documento.
• Define secciones, como "cabecera de nivel 1", "lista" o
• El navegador se encarga de interpretar la página en la
"texto destacado".
máquina cliente.
Organización Web: tipos MIME
• Cada documento Web tiene un tipo:
– Tipos MIME (Multipurpose Internet Mail Extensions), en http
estándar:
• Algunos tipos, como html, texto y algunos gráficos, los muestra
directamente el navegador.
• Para otros se necesitan plug-ins externos o asistentes.
– El sistema de tipos web es ampliable. Es fácil incorporar nuevos
tipos:
• Definir un nuevo tipo MIME en el servidor.
• El navegador llamará a una aplicación asistente si no reconoce el tipo MIME.
• El navegador puede sugerir un sitio web para descargar el asistente.
• Descargar e instalar la aplicación y utilizar el nuevo tipo MIME.
– Extensibilidad de un servidor web: programas para generar documentos
• Las URL pueden apuntar a programas además de a páginas.
• Los programas pueden ser sencillos (un reloj) o complejos (bases de
• Se utilizan Java, perl, C++, Java Server Pages, Visual Basic y Active
• Las aplicaciones las hay desde sencillas (un reloj) a complejas bases
datos o análisis.)
Server Pages.
de datos y análisis.
Ejemplos de tipos MIME
• application/msword
• application/pdf
• application/vnd.ms-excel Excel
• application/zip
• audio/basic
• audio/x-wav
•
•
•
•
• video/mpeg
image/gif
image/jpeg
text/plain
text/html
Word
Acrobat
Archivo Zip
.au, .snd
MS audio
GIF
JPEG
Texto simple
HTML
Vídeo
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 conexión tcp/ip permanente; con HTTP 1.0
se transmitían los documentos por partes.
• Cuatro fases:
– Establecimiento de la conexión: basada en la URL.
– Solicitud: el navegador establece la conexión con el servidor
y envía:
• El método de solicitud (solicita datos al final si utiliza POST o
PUT ).
• La URL.
• El número de versión HTTP.
• La información de cabecera (informativa, opcional), finalizada
con una línea negra.
– Respuesta: el servidor procesa la solicitud y envía:
• Código del estado y versión del protocolo HTTP.
• Información de cabecera, finalizada con una línea negra.
• Texto (datos).
– Cierre de la conexión.
HTTP
Cliente
Servidor
O página de
HTML dinámico
de un programa
Navegador
Solicitar
página
Página de
HTML estático
Disco
Decodificar
HTTP
Codificar
HTTP
Añadir
cabecera
HTPP
• Estas transacciones son stateless (no mantienen el estado). La
conexión se interrumpe al final de cada página y se reestablece:
el servidor no puede conectar peticiones sucesivas del cliente.
• El contenido dinámico se genera en respuesta a una petición HTTP
realizada por un programa servidor.
Ejemplos de petición HTTP
Petición típica del navegador: (Unix telnet web.mit.edu 80 para verla)
GET /about-mit.html HTTP/1.1
Host: web.mit.edu
Accept: text/html, text/plain, image/jpeg, image/gif, */*
(obligatorio)
(opcional)
(línea negra)
Respuesta típica del servidor:
HTTP/1.1 200 OK
Server: Apache/1.3.3 Ben-SSL/1.28 (Unix)
Content-Type: text/html
Content-Length: 8300
(línea negra)
<HTML>
<HEAD><TITLE>Acerca del MIT</TITLE></HEAD>
<BODY>El objetivo del MIT…</BODY>
</HTML>
También (usar Unix telnet):
euro.ecom.cmu.edu
GET /test.html HTTP/1.1
amazon.com
OPTIONS * HTTP/1.1
Fase de petición HTTP (navegador a servidor)
Comando Descripción
GET
HEAD
POST
OPTIONS Obtiene el servidor y las opciones de acceso.
TRACE Se utiliza en la depuración.
PUT
Solicita el documento especificado (se utiliza también
para enviar formularios con "Post") .
Solicita sólo la cabecera del documento especificado.
Solicita que el servidor acepte los datos del navegador
y genere el contenido dinámico.
Sustituye el documento del servidor por datos del
navegador.
DELETE Elimina del servidor el documento especificado.
• GET es la petición más frecuente de los navegadores.
• POST se utiliza para procesar los formularios rellenados.
• HEAD lo utilizan los motores de búsqueda para comprobar
• En HTTP no hay seguridad ni autenticación (la autenticación
que las páginas están en vigor.
básica envía la contraseña como texto sin formato).
– Utilice SSL (Secure Socket Layer) para encriptar sus intercambios web.
Cabeceras de peticiones HTTP habituales
Cabecera Definición
Accept
Tipos MIME aceptados por el cliente (se permiten muchos).
Connection Tipo de conexión con el cliente ("keep-alive" o permanente;
Cookie
From
Host
con interrupciones).
Devolver la cookie anterior al servidor (intercambio de
datos).
Email del usuario (enviado sólo por los crawlers).
Servidor al que se realizó la petición original (reenvío,
múltiples nombres).
If-Modified Se utiliza para reducir la búsqueda de documentos que el
-Since
Referer
User-Agent Nombre y versión del software del cliente (navegador).
navegador ya tiene.
URL del último documento visualizado por el cliente.
Código del estado de respuesta HTTP
Cód. del estado Definición
100-101
200-206
300-307
400-417
500-505
Ejemplos:
200
404
500
Respuesta informativa; el cliente debería responder
con alguna otra acción (continuar, nuevo protocolo).
La petición ha tenido éxito.
Se ha movido el documento; indicar la nueva dirección.
Error de cliente: por ejemplo, una petición no autorizada.
Error de servidor.
OK
No encontrado.
Error interno de servidor.
Ejemplos de cabeceras de respuestas
HTTP
Cabecera
Allow
Content-Length
Content-Type
Expires
Last-Modified
Location
Set-Cookie
Definición
Se permiten peticiones, como GET (400s).
Longitud en bytes de los datos de respuesta
(se usa en las conexiones "keep alive").
Tipo MIME de los datos de respuesta.
Fecha en la que expira el documento.
Fecha en la que se modificó el documento
por última vez.
Nueva dirección del documento (con estado
300).
Da una "cookie" al navegador.
Comentarios de: Tema 11 Fundamentos Web (0)
No hay comentarios