Вы находитесь на странице: 1из 55

Capa de Aplicación

Funciones de la capa
Principales Aplicaciones

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 1


Funciones de la capa de
aplicación

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 2


La capa de aplicación

Los “procesos” son programas que están


corriendo, que se comunican en
diferentes end systems.
Para comunicar los procesos se utilizan
mensajes, enviados a través de la red

La capa de aplicación define el formato y


el orden de esos mensajes intercambiados
y también las acciones a tomar.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 3
La capa de aplicación

La capa de aplicación define:

El tipo de mensajes intercambiados


La sintaxis de cada tipo de mensaje
La semántica de los campos
Reglas para determinar cuando y como un
proceso manda y responde los mensajes

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 4


Aplicación de red

El protocolo de la capa de aplicación es


una porción de una aplicación de red.

Ejemplo: Aplicación Web


Formato de documentos – HTML
Web browsers – Chrome, Firefox, etc
Web servers – Apache, etc
Protocolo de capa de aplicación - HTTP
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 5
Paradigma cliente-servidor

Cliente Servidor
Por lo general, inicia el Proporciona el
contacto con el servicio solicitado por
servidor. el cliente.
Normalmente solicita Previamente debe
servicios. estar a la espera de
peticiones.
Las aplicaciones de red típicas tienen
dos partes: el cliente y el servidor

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 6


Clientes y servidores

Un mismo end-system puede actuar como


cliente y como servidor
Ejemplo: Servidor de correo

Los servidores, por lo general, escuchan en


puertos ” bien conocidos”
Ejemplos: http – 80, Telnet – 23, SMTP – 25…

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 7


Intercambio de información

Modelo Cliente-Servidor

Modelo P2P
Altamente escalable pero difícil de gestionar

Híbrido

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 8


Principales Aplicaciones
www
Telnet
FTP
Correo electrónico
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 9
www (world wide web)

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 10


WWW (world wide web)

Esquema uniforme de localización de


recursos
URI (URL y URN)
Protocolos de acceso a los recursos
HTTP
Hyper-texto para facilitar la navegación
por los recursos
HTML
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 11
Universal Resource Identifier
(URI) – RFC 2396

Los recursos necesitan nombres/identificadores


y/o localización, dado que pueden estar en
cualquier parte en Internet.
Cada objeto en Internet recibe un identificador,
se trata de un identificador de nombre estándar
que permite su localización inequívoca.
URL y URN son un sub-conjunto de las URIs
URLocator identifica a los recursos por localización

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 12


Ejemplo: URI en www

http://www.ucu.facu.uy/fing/inicio.html
Forma de acceso Nombre del host en donde Nombre del recurso
al recurso está alojado el recurso path

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 13


Hypertext Transfer Protocol
(HTTP)

Protocolo de transferencia de hyper-texto (HTML),


permite la navegación Web.

Cliente (browser o navegador)


Se utiliza un navegador para enviar al servidor una URI, vía
HTTP, para solicitar una página Web.
Obtiene y despliega en pantalla el contenido de la página Web.
Servidor
Aloja la página Web (objetos)
Responde solicitudes de clientes enviando la página Web o un
mensaje de error.

Cliente y servidor intercambian mensajes HTTP.


UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 14
HTML (Hyper Text Markup Language )

HTML utiliza etiquetas para especificar propiedades del documento.

Tomado de: Computer Networks, Fourth Edition


UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 15
Página Web

Una página Web es un documento


electrónico escrito en un lenguaje HTML.
Cada página tiene una dirección única
que se denomina una URL que
identifica su ubicación en el servidor.
Las páginas Web contienen
generalmente hipervínculos a otras
páginas Web (hacen referencia a URL’s de otras
páginas web)
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 16
Ejemplo: Descarga de página web

http://www.ucu.facu.uy/fing/inicio.html

Servidor web:
Archivo inicio.html alojado en el servidor.
Servidor “corriendo”, a la espera de peticiones.
Cliente:
Usuario ingresa URL en navegador web
Se debe conocer la dirección IP del servidor www
del dominio ucu.facu.uy

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 17


Ejemplo: Descarga de página web

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 18


Ejemplo: Descarga de página web

Inicio conexión TCP (62.1.1.78, 10263 <--> 200.10.1.3, 80)


Cliente hace un “http request”, al servidor
www.ucu.facu.uy, del objeto /fing/inicio.html
Servidor busca el objeto y lo encapsula en un
“http response”
El servidor cierra la conexión TCP
Cliente interpreta el documento HTML recibido y
si hay más objetos, se deben repetir los pasos
para descargarlos y luego cierra la conexión.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 19
Ejemplo: Descarga de página web

HTTP request HTTP response

GET /fing/inicio.html HTTP/1.1 HTTP/1.1 200 OK


Connection: close Connection: close
User-agent: Mozilla/4.0 Date: Thu, 06 Aug 1998 12:00:15
Accept: text/html, image/gif, GMT
image/jpeg Server: Apache/1.3.0 (Unix)
Accept-language:fr Last-Modified: Mon, 22 Jun 1998
09:23:24 GMT
Content-Length: 6821
Content-Type: text/html
data data data data data ...
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 20
Investigue: Descarga Web

Ver nuevamente animación de


Unidad 1:

“modelo_animación.ppt”.

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 21


Telnet (TELetype NETwork)

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 22


Telnet

Acceso tipo “consola” a través de la red


(emulación de terminal). Permite “logearse”
en otro equipo.
Servidor - TCP, puerto 23
Se le llama Telnet tanto al protocolo
(RFC854) como a la aplicación.

Aplicación también usada para establecer


conexiones TCP interactivas “crudas” !!!
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 23
Ejemplo: Acceso remoto a PC

Servidor Telnet
IP:puerto remoto
192.168.1.254:23

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 24


Telnet (también existe SSH)

Uno de los defectos del Telnet es que no


es seguro dado que no transporta los
usuarios/contraseñas/información cifrada.

SSH (Secure Shell)


TCP, puerto 22
Conexión segura durante toda la sesión

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 25


Investigue: Telnet

Conectado a Internet:
1. Desde una Interfaz de comandos realice
un Telnet al servidor Web “telnet
www.yahoo.com 80”
2. Digite el comando “GET” y aprete 2
veces la tecla enter.

¿Qué respuesta obtuvo?


UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 26
File Transfer Protocol (FTP)

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 27


Modelo FTP

FTP
FTP file transfer FTP
user
client server
interface

user
at host remote file
local system
file
system

Tomado de: Computer Networking: A Top Down Approach 5th edition


UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 28
File Transfer Protocol (FTP)

Protocolo para transferir archivos de un


host a otro. Definido en RFC 959.

Conexión de control:
Comandos y respuestas son transferidos sobre esta
conexión. Se utiliza el puerto TCP 21 en el servidor.
Conexión de datos:
Todos los datos se transfieren sobre esta conexión.

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 29


Modelo FTP

DTP (Data Transfer


Process) establece y
mantega la
conexión de datos.
Esta puede ser
activa o pasiva.

PI (protocol
interpreter) recibe y
envía comandos
FTP.

En cada extremo se
Tomado de: RFC 959 encuentran ambos procesos.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 30
Comandos FTP

Control de acceso
USER nombre de usuario
PASS clave
Parámetros de transferencia
PORT puerto a utilizar
PASV Passive; se informa al servidor que el cliente quiere
realizar una conexión de datos y el servidor debe
enviar la información del puerto.
MODE modo de transferencia (ascii, binario)
Servicio
RETR pide archivo (“baja”, get, un archivo del host remoto)
STOR envía archivo (“sube”, put, un archivo al host remoto)
LIST pide el listado de archivos de un directorio

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 31


Ejemplo: secuencia FTP
$ ftp server.ucu.edu
S: 220 server.ucu.edu FTP server ... ready. Name:
C: Name
S: 331 Guest login ok. . . . Password:
C: password
S: Remote system type is UNIX. Using binary mode to transfer
files. ftp>
C: ftp> ls
S: 200 PORT command successful.150 Opening ASCII mode data connection
for /bin/ls.
total 33590
−r−−r−−r−− 1 root other 34348506 Dec 03 03:53 IAFA−LISTINGS
lrwxrwxrwx 1 root other 7 Jul 15 1997 README −> WELCOME
. . .
C: ftp> get archivo.tar.gz
S: 200 PORT command successful. 150 Opening BINARY mode data
connection for archivo.tar.gz (15079540 bytes).
C: QUIT

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 32


Conexión TCP - Control
CLIENT SERVER
listen on port 21
Cntrl Cntrl

Data Data

1025 21
Cntrl Cntrl
Connect to port 21

Data Data

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 33


Ejemplo: lista y descarga de
archivo gnotella.zip

1. Cliente solicita lista


CLIENT Ask for LIST, 1493 SERVER
de archivo de ese 1025 21
directorio al servidor
y le indica en puerto Cntrl Cntrl
en donde los espera. PORT command OK

Data 1493 20 Data


2. Servidor inicia
conexión TCP de List of files
datos y envía la lista.

GET gnotella.zip, 1522


3. Cliente desea 1025 21
descargar el archivo Cntrl Cntrl
e indica el puerto. PORT command OK
4. Servidor inicia otra Data Data
conexión TCP de Lots of data
datos y envía
archivo. 1522 20
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 34
Modo de transferencia activa

El cliente inicia la conexión de control:


Puerto origen: (cualquiera > 1023)
Puerto destino: 21
El software cliente ftp utiliza el comando “de
bajo nivel” PORT indicando el puerto en el que
escuchará a la espera de la conexión de datos.
Cuando se requiere una transferencia de datos,
el server realiza la conexión:
Puerto origen: 20
Puerto destino: el indicado por el cliente mediante
PORT
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 35
Modo de transferencia pasiva

Se definió para resolver el problema que


presenta que el servidor FTP sea quién inicie la
conexión utilizada para transferencia de datos
(problema en firewalls). Se invierte la forma en que
se establece la conexión de datos:
El cliente es quien inicia ambas conexiones.
En lugar de utilizar el comando PORT se utiliza el
comando PASV.
El servidor FTP elige un número de puerto y lo
infoma al cliente.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 36
Correo electrónico

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 37


Modelo de correo electrónico

Componentes principales:
“user agents”
servidores de correo
protocolos de correo

SMTP SMTP access user


user
agent protocol agent

sender’s mail receiver’s mail


server server

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 38


Formato de un correo

Encabezado:
To: header
blank
From: line
Subject:
… body

Cuerpo:
el “mensaje”

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 39


Simple Mail Transfer
Protocol (SMTP)

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 40


Protocolo SMTP

Protocolo para distribución de correo


electrónico.
SMTP define el formato de los mensajes y los
“message transfer agent” (MTA), los cuales
almacenan y envían los e-mails.
SMTP fue originalmente diseñado para texto
pero actualmente se permite transportar otros
formatos, por ejemplo archivos multimedia,
adjuntos al mensaje de e-mail.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 41
Mail agents

Mail User Agents (MUA)


Son los originadores y destinatarios de
los e-mail.
Ejemplos: Microsoft Outlook, Mozilla, mail etc.

Mail Transfer Agents (MTA)


Transportan y encaminan los mensajes
desde el MUA originador al MUA
destinatario.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 42
Simple Mail Transfer Protocol
(SMTP)
user
SMTP utiliza el puerto TCP 25 agent
(también el 587) mail
user
server
agent
Definido en RFC 2821
SMTP mail
server user

outgoing SMTP agent

message queue
SMTP
user mailbox user
mail
server agent

user user
agent agent

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 43


Modelo SMTP

Tomado de: RFC 2821


UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 44
Envío de e-mail

El cliente tiene configurada la IP o nombre de


“su” servidor SMTP.
Se conecta al servidor y envía el correo.
Este servidor descubre la dirección IP del
servidor de correo del dominio de destino
(@dominio) mediante consulta DNS (registro
MX)
El servidor envía el correo para su
almacenamiento al servidor con la IP
descubierta.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 45
SMTP y DNS

Se utilizan los registros MX del DNS para


obtener el nombre y la dirección IP del
host destinatario.

Ejemplo:
empresa.com. IN MX mailserver.empresa.com.
mailserver.empresa.com. IN A X.X.X.X

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 46


Comandos SMTP
El cliente se identifica a si
mismo con el comando
HELO mydomain.com HELO.
MAIL El valor debe ser el FQDN del
FROM:<sender@mydomain.com> cliente. El comando MAIL
identifica el origen del
RCPT TO:<friend@example.com> mensaje.
El siguiente comando, RCPT,
DATA identifica al receptor del
Subject: test message mensaje. Es posible
From: sender@mydomain.com especificar más de un RCPT
si se requiere enviar el
To: friend@example.com mensaje a más de un
destinatario.
El contenido del mensaje de
QUIT correo es enviado mediante el
comando DATA.
El comando QUIT, finaliza el
intercambio de e-mails y
finaliza la conexión.
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 47
Ejemplo: secuencia SMTP
telnet mail.hamburger.edu 25
S: 220 hamburger.edu
C: HELO crepes.fr
S: 250 Hello crepes.fr, pleased to meet you
C: MAIL FROM: <alice@crepes.fr>
S: 250 alice@crepes.fr... Sender ok
C: RCPT TO: <bob@hamburger.edu>
S: 250 bob@hamburger.edu ... Recipient ok
C: DATA
S: 354 Enter mail, end with "." on a line by itself
C: Do you like ketchup?
C: .
S: 250 Message accepted for delivery
C: QUIT
S: 221 hamburger.edu closing connection
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 48
Post Office Protocol v3
(POP3)

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 49


Protocolo POP3

Recepción de correo, desde el servidor


de correo al agente del usuario.
Especificado en RFC 1939
Servidor - TCP, puerto 110

Se entiende que cliente debe descargar todos mensajes


de e-mail de un servidor para poder leerlos off-line.
Sólo soporta copiado y borrado de mensajes en el servidor
Implementa mecanismos de autenticación entre el cliente y el
servidor
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 50
Protocolo POP3

El cliente tiene configurada la IP o


nombre del servidor POP3.
El cliente se conecta y:
Se autentica
Descarga los correos
Borra los correos del servidor (si fueron
marcados)
Fin de la conexión
Pueden haber variantes !!!
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 51
Comandos POP3

LIST USER
Pide listado con usuario de la cuenta
tamaño de cada
correo PASS
RETR password
Descarga mensaje
DELE Server Responde:
Borra mensaje
+OK
QUIT
salir -ERR

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 52


Ejemplo: secuencia POP3
telnet mail.miempresa.com 110
C: list
S: 1 498
S: 2 912
Fase de autenticación S: .
C: retr 1
S: +OK POP3 server ready S: <message 1 contents>
C: user alice S: .
S: +OK C: dele 1
C: pass hungry C: retr 2
S: +OK user successfully logged on S: <message 1 contents>
S: .
C: dele 2
C: quit
S: +OK POP3 server signing off
UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 53
Recepción de e-mails (access
protocols)

Post Office Protocol v3 (POP3)


Internet Mail Access Protocolo (IMAP)
Tiene más posibilidades que POP3 y es más
complejo
Diferente a POP3:
⌧Se entiende que los mensajes deben residir en el servidor.
⌧Los mensajes se administran directamente en el servidor.
⌧Permite ver encabezados y descargar mensajes por pedido.
HTTP
Muy usado

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 54


Investigue: Correo electrónico

¿De qué proveedores utiliza el servicio de correo


electrónico?
¿Qué protocolos le permite utilizar como
“protocolos de acceso”? ¿Qué puertos usa?

Desde su celular, ¿cómo accede a su correo?

UCUDAL - CODATO D. Valle-Lisboa – P.F. Vacca 55

Вам также может понравиться