PDF de programación - Tema 3 - Aplicaciones orientadas a conexión

Imágen de pdf Tema 3 - Aplicaciones orientadas a conexión

Tema 3 - Aplicaciones orientadas a conexióngráfica de visualizaciones

Publicado el 5 de Julio del 2017
454 visualizaciones desde el 5 de Julio del 2017
628,7 KB
31 paginas
Creado hace 12a (21/10/2008)
Bloque II: El nivel de aplicación

Tema 3: Aplicaciones orientadas a 

conexión

Índice

• Bloque II: El nivel de aplicación

– Tema 3: Aplicaciones orientadas a conexión

• Introducción
• World Wide Web
• Transferencia de ficheros
• Correo electrónico

• Referencias

– Capítulo 2 de “Redes de Computadores: Un enfoque 

descendente basdado en Internet”. James F. Kurose, Keith 
W. Ross. Addison Wesley, 2ª edición. 2003.

– Capítulos 27 y 28 de “TCP/IP Illustrated, Volume 1: The 
Protocols”, W. Richard Stevens, Addison Wesley, 1994.

RC ­ Bloque II ­ Tema 3

2

Introducción

• Dos procesos en dos sistemas finales (distintos) se comunican 
intercambiando mensajes a través de una red de computadores.

• Modelo cliente­servidor

– Cliente envía mensajes al servidor
– Servidor recibe los mensajes, procesa la respuesta y la envía

• Protocolos del nivel de aplicación:

– Definen el formato y el orden de intercambio de los mensajes
– Acciones en la transmisión o recepción de mensajes

FTP

HTTP

SMTP

Telnet

DNS

SNMP

TCP

UDP

RC ­ Bloque II ­ Tema 3

IP

Nivel de
Aplicación

ICMP IGMP

3

Introducción

• Protocolo del nivel de aplicación es sólo una parte de la aplicación de 

red. Por ejemplo, en el Web:
– Formato de los documentos (HTML)
– Navegadores Web (Mozilla, Explorer, ...)
– Servidores Web (Apache, MIIS, ...)
– Protocolo de la capa de aplicación (HTTP)

• Protocolo del nivel de aplicación:

– Tipo de mensajes intercambiados (petición/respuesta)
– Sintaxis de los mensajes
– Semántica de los campos
– Reglas que determinan cuándo y cómo un proceso envía un 

mensaje y responde a los mensajes.

• Aplicaciones y protocolos más utilizados:

– Web – HTTP (RFC 2616)
– Transferencia de ficheros – FTP (RFC 959)
– Correo electrónico – SMTP (2821)
– Acceso a terminales remotos – Telnet (RFC 854)

RC ­ Bloque II ­ Tema 3

4

Web

• Es una aplicación en Internet.
• El World Wide Web surgió a principios de los 90, en el CERN (Tim Berners­

Lee), para organizar los documentos de investigación disponibles en Internet.

• Combina cuatro ideas que no eran nuevas:

– Hipertexto: formato de la información que permite moverse de una parte a 

otra de un documento o entre documentos mediante conexiones internas 
entre estos documentos (hiperenlaces o enlaces).

– Identificadores de recursos: identificadores únicos que permiten localizar 

un recursos en la red (URL – Uniform Resource Locator o URI – Uniform 
Resource Identifier)

– Modelo cliente­servidor
– Lenguaje de marcas: caracteres o códigos embebidos en texto que 

indican estructura, semántica o recomendaciones para su presentación 
(HTML – HyperText Markup Language).

Tim Berners­Lee desarrolló el protocolo HTTP inicial, las URLs, HTML y el 
primer servidor Web.



• Componentes:

– Página Web: archivo HTML base + objetos (imágenes)
– Navegador: agente de usuario para el Web
– Servidor Web: almacena objetos Web direccionables a través de una URL
– Protocolo HTTP: permite comunicarse al servidor y al navegador

RC ­ Bloque II ­ Tema 3

5

HTTP










HyperText Transfer Protocol
Especificado en RFC 1945 (HTTP/1.0) y RFC 2616 (HTTP/1.1)

– HTTP/1.1 compatible con HTTP/1.0

Define cómo los clientes (navegadores) solicitan páginas Web y cómo los servidores 
transfieren estas páginas.
Utiliza el protocolo TCP (servicio orientado a conexión y fiable)  Cada mensajes HTTP 
emitido por el cliente o servidor llega al otro extremo sin modificaciones.
HTTP es un protocolo sin estado  El servidor HTTP no guarda información sobre los 
clientes.

Navegador

Servidor Web

Petición

GET /index.html HTTP/1.1 ...
H T T P / 1 . 1 2 0 0 O K . . .

Respuesta

RC ­ Bloque II ­ Tema 3

6







HTTP: Conexiones no persistentes

HTTP/1.0 usa conexiones no persistentes
Petición de una URL (http://www.tic.udc.es/index.php)
1. El cliente HTTP inicia la conexión TCP con el servidor www.tic.udc.es en 

el puerto 80.

objeto /index.php

2. El cliente HTTP envía al servidor el mensaje de petición solicitando el 

3. El servidor HTTP recibe la petición, lee el objeto, lo encapsula en el 

mensaje HTTP de respuesta y lo envía.

4. El servidor finaliza la conexión TCP.
5. El cliente HTTP recibe la respuesta y finaliza la conexión TCP.
6. El cliente extrae el archivo del mensaje de respuesta, examina el archivo 

HTML y encuentra referencias a otros objetos HTML (p.e. imágenes)

7. Volver al paso 1, para cada objeto.

Dependiendo del navegador, las nuevas conexiones podrían ser en paralelo.
Inconvenientes:


Se necesita una conexión (buffers, variables, timeouts, ...) para cada 
objeto solicitado.

– Retardo de dos veces el RTT: establecimiento de conexión + petición y 

recepción del objeto

RC ­ Bloque II ­ Tema 3

7

HTTP: Conexiones persistentes

• Por defecto, en HTTP/1.1
• El servidor HTTP deja abierta la conexión TCP, esperando 

nuevas petición/respuestas.
– El servidor cerrará la conexión después de un tiempo de 

inactividad.

• Sin pipeline: el cliente sólo envía una nueva petición cuando ha 

• Con pipeline: el cliente realiza una petición tan pronto encuentra 

recibido la respuesta previa.

una referencia a un objeto.

RC ­ Bloque II ­ Tema 3

8

Mensajes HTTP

GET /index.html HTTP/1.1
Host: www.tic.udc.es
User-agent: Mozilla/4.0

HTTP/1.1 200 OK
Date: Sat, 1 Jan 2000 12:00:15 GMT
Server: Apache/1.3.0 (Unix)
Last-Modified: Fri, 24 Dic 1999 13:03:32 GMT
Content-Length: 6821
Content-Type: text/html

<HTML> <HEAD>
<TITLE> My homepage </TITLE>
...

Línea de petición
Líneas de cabecera
Línea en blanco
Cuerpo de entidad

Línea de estado

Líneas de
cabecera

Línea en blanco

Cuerpo de entidad

RC ­ Bloque II ­ Tema 3

9

Mensaje petición HTTP




Línea de petición + línea en blanco: obligatorio
Línea de petición:
– Método:

• GET: utilizando cuando el navegador solicita un objeto.
• HEAD: el servidor responde con un mensaje HTTP, pero sin incluir el 

objeto solicitado.

• POST: incluye datos en el cuerpo de entidad (no en el caso de un 

GET).

especificada.

• PUT (1.1): permite a un usuario cargar un objeto en la ruta 

• DELETE (1.1): permite borrar un objeto de un servidor Web.

– URL: objeto al que se hace referencia
– Versión

• Host: especifica el host en el que reside el objeto.
• User­agent: especifica el tipo de navegador que está haciendo la petición.

• POST: utilizado comúnmente cuando un usuario rellena un formulario.
– El cuerpo de entidad contiene los datos introducidos por el usuario.

• GET: también soporta el envío de datos introducidos por el usuario.

– Se envían codificados en la URL real.
– Por ejemplo: www.google.com/search?keywords=information+retrieval

RC ­ Bloque II ­ Tema 3

10

Mensaje respuesta HTTP

• Línea de estado: Versión + Código de estado + Frase

– Códigos de estado y frases:

• 200 OK
• 400 Bad Request: petición no comprendida por el 

servidor.

• 404 Not Found: el objeto pedido no existe en el servidor.
• Date: fecha y hora en la que se creó y envió la respuesta HTTP.
• Server: especifica el tipo de servidor Web que ha atendido a la 

petición.

• Last­Modified: indica la fecha y hora en que el objeto fue creado 

o modificado por última vez.

• Content­Length: indica el número de bytes del objeto enviado.
• Content­Type: indica el tipo de objeto incluido en el cuerpo de 

entidad.
– La extensión del archivo no especifica (formalmente) el tipo 

de objeto.

RC ­ Bloque II ­ Tema 3

11

HTTP: GET condicional



La utilización de una caché reduce los retardos de recuperación de 
objetos y reduce el tráfico que circula por la red.

• Problema: la copia de un objeto en caché puede ser obsoleta.
• Solución: GET + If­Modificed­Since

– Sólo devuelve el objeto si ha sido modificado después de la fecha 

indicada.

• Solicitar un objeto por primera vez:

GET /images/udc.gif HTTP/1.1
User-agent: Mozilla/4.0

• Recibir la respuesta del servidor:

HTTP/1.1 200 OK
Date: Sat, 1 Jan 2000 12:00:15 GMT
Server: Apache/1.3.0 (Unix)
Last-Modified: Fri, 24 Dic 1999 13:03:32 GMT
Content-Type: image/gif

(datos)...

RC ­ Bloque II ­ Tema 3

12

HTTP: GET condicional

• Pasado un tiempo, se vuelve a solicitar el mismo 

objeto, sólo si se ha modificado:
GET /images/udc.gif HTTP/1.1
User-agent: Mozilla/4.0
If-modified-since: Fri, 24 Dic 1999 13:03:32

GMT

• Si no se ha modificado, el servidor no envía el 

objeto de nuevo.
HTTP/1.1 304 Not Modified
Date: Wed, 5 Jan 2000 20:30:43 GMT
Server: Apache/1.3.0 (Unix)

RC ­ Bloque II ­ Tema 3

13

Transferencia de ficheros
• Se basa en el protocolo FTP (File Transfer Protocol).
• Transferencia de ficheros: permite copiar ficheros desde un 

sistema a otro.

• Acceso a ficheros: permite acceder a un fichero desde un 

sistema a otro  NFS (Network File System).

• FTP fue diseñado para operar con sistemas heterogéneos  

Soporte para distintos tipos de ficheros (ASCII, binarios, …)
• Las passwords y el contenido de los ficheros se envían sin 

cifrar.
– FTP sobre SSH: secure FTP

• FTP anónimo: un usuario no necesita cuenta para acceder al 

servidor FTP.
– Se “solicita” el e­mail del usuario.
Integrado hoy en día en los principales navegadores:
– ftp://login:[email protected]/



RC ­ Bloque II ­ Tema 3

14

FTP

• Se especifica en el RFC 959.
• Basado en TCP.
• Operación:

– El usuario se conecta al host remoto indicando su nombre (puerto 

21).

– El usuario se identifica (login y password) y sus datos son enviados 

a través de la conexión TCP.

– Cuando el servidor ha autorizado al usuario, éste puede 

copiar/descargarse archivos al/del servidor de FTP.

• Utiliza dos conexiones TCP:

– Conexión de control: envía información de control entre los dos 
hosts (login, password, comandos, ...)  TOS: minimizar retardo

– Conexión de datos: se utiliza para enviar un archivo  TOS: 

maximizar throughput

•  FTP envía su información de control fuera de banda.

– HTTP envía su información de control en banda: con los datos.

• El servidor FTP mantiene información de estado del usuario

– HTTP
  • Links de descarga
http://lwp-l.com/pdf4869

Comentarios de: Tema 3 - Aplicaciones orientadas a conexión (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad