Está en la página 1de 49

Redes y Comunicaciones de Datos I

Unidad 02

Ing. Pedro Mantilla Silva


Ultima actualización: 18/01/2018 c14141@utp.edu.pe
Redes y Comunicaciones de Datos I
Apps
¿Qué aplicaciones conoces?
 e-mail
 web
 text messaging
 remote login
 P2P file sharing
 multi-user network games
 streaming stored video
 voice over IP
 real-time video conferencing
 social networking
 search
…
…
Redes y Comunicaciones de Datos I
Unidad 2: Capa de Aplicación
Logro específico de aprendizaje
 Al culminar la unidad 2 el estudiante comprende y describe la operación de los
protocolos de capa de aplicación más utilizados del modelo TCP/IP

Importancia:
 Las aplicaciones de red son la razón de ser de una red de computadoras (si no
pudiéramos concebir ninguna aplicación útil, no existiría la necesidad de diseñar
protocolos de red para darlas soporte). La capa de aplicación es un lugar
particularmente bueno para comenzar el estudio de los protocolos, ya que es un
terreno familiar. Habitualmente, empleamos muchas de las aplicaciones que se
basan en los protocolos que vamos a estudiar.
 El estudio de esta capa nos dará una idea adecuada de qué son los protocolos y nos
servirá para introducir muchas de las cuestiones que tendremos que volver a ver
cuando estudiemos los protocolos de las capas de transporte, de red y de enlace.
Redes y Comunicaciones de Datos I
Temario
 La capa de aplicación
 Protocolos de directorio de internet
 Protocolos de navegación Web
 Protocolos de transferencia de archivos
 Protocolos de correo electrónico
 Programación de sockets con TCP y UDP

Redes y Comunicaciones de Datos I


Nuestras metas
 Conceptualizar aspectos de implementación de los protocolos de aplicación de
red:
 Modelos de servicio de capa de transporte
 Paradigma cliente-servidor
 Paradigma de igual a igual
 Redes de distribución de contenido
 Aprender sobre protocolos examinando protocolos populares de nivel de
aplicación
 HTTP
 FTP
 SMTP / POP3 / IMAP
 DNS
 Crear aplicaciones de red
 Socket API

Redes y Comunicaciones de Datos I


Redes y Comunicaciones de Datos I

La capa de aplicación

Ing. Pedro Mantilla Silva


c14141@utp.edu.pe
Redes y Comunicaciones de Datos I
Creando una aplicación de red
 Escribir programas que:
application
transport
network

 Se ejecuten en diferentes sistemas finales data link


physical

 Puedan comunicarse a través de la red


 Por ejemplo, el software del servidor web se
comunica con el software del navegador

 No es necesario escribir software para


dispositivos del núcleo de red
application
 Los dispositivos de núcleo de red no ejecutan transport
network
aplicaciones de usuario data link
physical
application
transport

 Las aplicaciones en los sistemas finales permiten un


network
data link
physical
rápido desarrollo de aplicaciones, propagación

Redes y Comunicaciones de Datos I


Arquitecturas cliente servidor
 Servidor:
 host siempre activo
 dirección IP permanente
 centros de datos para escalar

 Cliente:
 comunicarse con el servidor
 puede estar conectado intermitentemente client/server
 puede tener direcciones IP dinámicas
 no se comunican directamente entre ellos

Redes y Comunicaciones de Datos I


Arquitectura Peer to Peer (P2P)
 No existe un servidor siempre encendido peer-peer
 Los sistemas finales se comunican
directamente
 Los peers solicitan el servicio de otros peers,
brindan servicio a cambio de otros peers
 Auto escalabilidad: los nuevos pares aportan
nueva capacidad de servicio, así como nuevas
demandas de servicio
 Los pares se conectan intermitentemente y
cambian de dirección IP
 Administración compleja

Redes y Comunicaciones de Datos I


Procesos de comunicación
 Proceso: Programa que se ejecuta clientes, servidores
dentro de un host Proceso del cliente: proceso que
 Dentro de un mismo host, dos procesos inicia la comunicación
se comunican usando la comunicación
entre procesos (definida por el SO) Proceso del servidor: proceso que
 Los procesos en diferentes hosts se espera ser contactado
comunican intercambiando mensajes

Las aplicaciones con arquitecturas P2P tienen


procesos de cliente y procesos de servidor

Redes y Comunicaciones de Datos I


Sockets
 Un proceso envía/recibe mensajes a/desde su socket
 Socket  analogía a puerta
 El proceso de envío empuja el mensaje a la puerta
 El proceso de envío depende de la infraestructura de transporte del otro lado de la
puerta para entregar el mensaje al socket en el proceso de recepción

application application
socket Controlado por
process process el desarrollador

transport transport
network network Controlador
link por el OS
link Internet
physical physical

Redes y Comunicaciones de Datos I


Procesos de direccionamiento
 Para recibir mensajes, el proceso  El identificador incluye tanto la
debe tener un identificador dirección IP como el número de
 El dispositivo host tiene una puerto asociados con el proceso en
dirección IP única de 32 bits el host.
 ¿Es suficiente la dirección IP del  Ejemplos de números de puerto:
host donde se ejecuta el proceso  Servidor HTTP: 80
para identificar al proceso?  servidor de correo: 25
 Para enviar un mensaje HTTP al
NO, ya que muchos procesos se
servidor web elingesor.com:
pueden ejecutar en el mismo host  Dirección IP: 192.185.107.185
 número de puerto: 80

Redes y Comunicaciones de Datos I


Protocolos de capa de aplicación definen:
 Tipos de mensajes de intercambio,  Protocolos abiertos
 por ejemplo, solicitud, respuesta  Refinido en RFCs
 Sintaxis del mensaje:  Permite la interoperabilidad
 Qué campos en los mensajes y cómo se  Por ejemplo, HTTP, SMTP
delinean los campos  Protocolos propietarios
 Semántica de mensaje  Por ejemplo, Skype
 Significado de la información en los campos
 Reglas
 Cuándo y cómo los procesos envían y
responden mensajes

Redes y Comunicaciones de Datos I


¿Qué servicio de transporte necesita una aplicación?

 Integridad de los datos


 Algunas aplicaciones (por ejemplo, transferencia de archivos, transacciones web)
requieren una transferencia de datos 100% confiable
 Otras aplicaciones (por ejemplo, audio) pueden tolerar algunas pérdidas
 Sincronización
 Algunas aplicaciones (por ejemplo, telefonía por Internet, juegos interactivos) requieren
poca demora para ser "efectivas"
 Rendimiento
 Algunas aplicaciones (por ejemplo, multimedia) requieren una cantidad mínima de
rendimiento para ser "eficaces"
 Otras aplicaciones ("aplicaciones elásticas") hacen uso del rendimiento que obtienen
 Seguridad
 Cifrado, integridad de datos,

Redes y Comunicaciones de Datos I


Requisitos del servicio de transporte: aplicaciones
comunes

Aplicación Pérdida de datos Rendimiento Sensibilidad (tiempo)

Transferencia de archivos sin pérdida elástico no


Correo electrónico sin pérdida elástico no
Documentos web sin pérdida elástico no
Audio/video en tiempo real tolerante a la pérdida audio: 5kbps-1Mbps si, 100s ms
video: 10kbps-5Mbps
Audio/video almacenado tolerante a la pérdida Igual que anterior si, algunos seg
Juegos interactivos tolerante a la pérdida algunos kbps más si, 100s ms
Mensaje de texto sin pérdida elástico si y no

Redes y Comunicaciones de Datos I


Servicios de protocolos de transporte de Internet
 Servicio TCP:  Servicio UDP:
 Transporte confiable entre el proceso  Transferencia de datos poco confiable
de envío y recepción entre el proceso de envío y recepción
 Control de flujo: el emisor no abrumará  No proporciona: fiabilidad, control de
al receptor flujo, control de congestión,
 Control de congestión: acelera al temporización, garantía de
transmisor cuando la red está rendimiento, seguridad o configuración
de conexión.
sobrecargada
 No proporciona: tiempo, garantía
mínima de rendimiento, seguridad
 Orientado a la conexión: requiere
configuración entre los procesos del
cliente y del servidor

Redes y Comunicaciones de Datos I


Aplicaciones de Internet: aplicación, protocolos de
transporte

Protocolo de capa de Protocolo de capa


Aplicación aplicación subyacente - transporte

Correo electrónico SMTP [RFC 2821] TCP


Acceso remoto a la terminal Telnet [RFC 854] TCP
Web HTTP [RFC 2616] TCP
Transferencia de archivos FTP [RFC 959] TCP
Transmisión multimedia HTTP (ejm., YouTube), TCP o UDP
RTP [RFC 1889]
Telefonía por Internet SIP, RTP, proprietario
(ejm., Skype) TCP o UDP

Redes y Comunicaciones de Datos I


Seguridad TCP
 TCP y UDP
 Sin cifrado
 Las contraseñas de texto sin cifrar se envían al socket en texto plano a través de Internet
 SSL
 Proporciona conexión TCP encriptada
 Integridad de los datos
 Autenticación de punto final
 SSL está en la capa de la aplicación
 Las aplicaciones usan bibliotecas SSL, que "hablan" a TCP
 API de socket SSL
 Contraseñas sin cifrar enviadas encriptadas a través del encriptador de Internet

Redes y Comunicaciones de Datos I


Redes y Comunicaciones de Datos I

Protocolos de directorio de internet

Ing. Pedro Mantilla Silva


c14141@utp.edu.pe
Redes y Comunicaciones de Datos I
Identificación
 Personas: muchos identificadores:
 DNI, nombre, número de pasaporte
 Servidores de Internet, routers:
 Dirección IP (32 bit): se usa para
direccionar datagramas
 "Nombre", por ejemplo,
www.elingesor.com - utilizado por
humanos
 ¿Cómo hacer un mapeo entre la
dirección IP y el nombre; y
viceversa?

Redes y Comunicaciones de Datos I


DNS: Domain Name System
 Sistema de nombres de dominio:
 Base de datos distribuida
implementada en la jerarquía de
muchos servidores de nombres
 Protocolo de capa de aplicación: hosts,
servidores de nombres se comunican
para resolver nombres (traducción de
dirección / nombre)
 nota: función central de Internet,
implementada como protocolo de capa de
aplicación
 Complejidad en el "borde" de la red

Redes y Comunicaciones de Datos I


DNS: servicios, estructura
 Servicios de DNS  ¿Por qué no centralizar el DNS?
 Nombre de host para la traducción de  Punto único de fallo
la dirección IP  Volumen de tráfico
 Host aliasing  Base de datos centralizada distante
 Nombres canónicos y alias  Mantenimiento
 Aliasing del servidor de correo
 Distribución de la carga
 Servidores web replicados: muchas
No es escalable!
direcciones IP corresponden a un nombre

Redes y Comunicaciones de Datos I


DNS: una base de datos jerárquica distribuida
Root DNS Servers

… …

com DNS servers pe DNS servers edu DNS servers

poly.edu umass.edu
yahoo.com amazon.com utp.pe
DNS servers DNS servers
DNS servers DNS servers DNS servers

 El cliente quiere el IP para www.amazon.com; Primera aproximación:


 El cliente consulta el servidor raíz para encontrar el servidor DNS .com
 El cliente consulta el servidor DNS .com para obtener el servidor DNS amazon.com
 El cliente consulta al servidor DNS amazon.com para obtener la dirección IP de
www.amazon.com

Redes y Comunicaciones de Datos I


Jerarquía DNS http://www.iana.org/domains/root/db

 Los siguientes son algunos ejemplos de dominios de nivel superior:


 .au: Australia
 .de: Alemania
 .pe: Perú
 .com: compañía
 .org: organización sin
fines de lucro

Dominio de nivel superior genérico: https://es.wikipedia.org/wiki/Dominio_de_nivel_superior_genérico


Dominio de nivel superior geográfico: https://es.wikipedia.org/wiki/Dominio_de_nivel_superior_geográfico

Redes y Comunicaciones de Datos I


DNS: servidores de nombres de raíz
 Contactado por el servidor de nombres local que no puede resolver el nombre
 Servidor de nombre raíz
 Contacta al servidor de nombres autorizado si no se conoce el mapeo de nombres
 Obtiene mapeo
 Devuelve el mapeo al servidor de nombre local
c. Cogent, Herndon, VA (5 other sites)
d. U Maryland College Park, MD k. RIPE London (17 other sites)
h. ARL Aberdeen, MD
j. Verisign, Dulles VA (69 other sites ) i. Netnod, Stockholm (37 other sites)

e. NASA Mt View, CA m. WIDE Tokyo


f. Internet Software C. (5 other sites)
Palo Alto, CA (and 48 other sites)

a. Verisign, Los Angeles CA


13 “servidores” lógicos de nombres
(5 other sites) de raíz en todo el mundo
b. USC-ISI Marina del Rey, CA
l. ICANN Los Angeles, CA Cada "servidor" se replica muchas
(41 other sites)
g. US DoD Columbus, OH
veces
(5 other sites)

Redes y Comunicaciones de Datos I


Protocolo DNS (53)
 El protocolo DNS resuelve un nombre de persona legible para la dirección del dispositivo de
red numérico.

Redes y Comunicaciones de Datos I


Formato del mensaje DNS
El servidor DNS almacena diferentes tipos de registros de recursos utilizados para
resolver nombres.
Contienen el nombre, la dirección y el tipo de registro.
Los tipos de registro son los siguientes:
 A: una dirección de dispositivo final
 NS: un servidor de nombre autoritativo
 CNAME: el nombre canónico para un alias; se utiliza cuando varios servicios tienen una dirección de
red única, pero cada servicio tiene su propia entrada en el DNS.
 MX: registro de intercambio de correos; asigna un nombre de dominio a una lista de servidores de
intercambio de correo.
 Si no puede resolver el nombre con sus registros almacenados, se comunica con otros servidores.
El servidor almacena de forma temporal la dirección numérica que coincide con el
nombre en la memoria caché.
El comando ipconfig /displaydns de Windows muestra todos los DNS almacenados en
la memoria caché.

Redes y Comunicaciones de Datos I


Registros DNS

DNS: distributed database storing resource records (RR)


RR format: (name, value, type, ttl)

type=A type=CNAME
 name is hostname  name is alias name for some
 value is IP address “canonical” (the real) name
 www.ibm.com is really
type=NS servereast.backup2.ibm.com
 name is domain (e.g.,  value is canonical name
foo.com)
 value is hostname of
authoritative name server type=MX
for this domain  value is name of mailserver
associated with name

Redes y Comunicaciones de Datos I


Comando: nslookup
 Permite que el usuario consulte manualmente los servidores de nombres para resolver un nombre de host
determinado.
 Esta utilidad se puede utilizar para solucionar problemas de resolución de nombres y verificar el estado actual
de los servidores de nombres.

Redes y Comunicaciones de Datos I


Protocolo DHCP (67)

Permite que un host obtenga una dirección IP de forma dinámica.

Redes y Comunicaciones de Datos I


Proceso DHCP

Redes y Comunicaciones de Datos I


Redes y Comunicaciones de Datos I

Protocolos Web

Ing. Pedro Mantilla Silva


c14141@utp.edu.pe
Redes y Comunicaciones de Datos I
HTTP (TCP:80)
Protocolos HTTP (80) y HTTPS (443)
 Desarrollado para publicar y recuperar páginas HTML.
 Especifica un protocolo de solicitud/respuesta.
 Los tres tipos de mensajes comunes son GET, POST y PUT.

Redes y Comunicaciones de Datos I


Proceso HTTP

URL: http://www.cisco.com
URL: http://srv01.cisco.com:80/index.html

srv01

Dominio
cisco.com

Redes y Comunicaciones de Datos I


Redes y Comunicaciones de Datos I

Protocolos de correo electrónico

Ing. Pedro Mantilla Silva


c14141@utp.edu.pe
Redes y Comunicaciones de Datos I
Protocolos SMTP (25) , POP (110) e IMAP (143)

Protocolo simple de transferencia de correo (SMTP - 25)


 Permite la transferencia confiable y eficiente de correo.

Protocolo de oficina de correos (POP3 - 110)


 Permite que una estación de trabajo recupere correo electrónico de un servidor de correo.
 Con POP, el correo se descarga del servidor al cliente y después se elimina del servidor.

Protocolo de acceso a mensajes de Internet (IMAP - 143)


 Protocolo para recuperar mensajes de correo electrónico.
 A diferencia de POP, cuando el usuario se conecta a un servidor con capacidad IMAP, se
descargan copias de los mensajes a la aplicación cliente.
 Los mensajes originales se mantienen en el servidor hasta que se eliminen manualmente.

Redes y Comunicaciones de Datos I


Como parece que trabaja el Email

Como en REALIDAD
trabaja el Email
SMTP POP3

SMTP
Redes y Comunicaciones de Datos I

Servicios de intercambio de archivos

Ing. Pedro Mantilla Silva


c14141@utp.edu.pe
Redes y Comunicaciones de Datos I
Protocolo FTP (20/21)

Protocolo de red para la transferencia de archivos entre sistemas conectados a


una red TCP

Redes y Comunicaciones de Datos I


Protocolo SMB (445)
 Los clientes establecen una
conexión a largo plazo a los
servidores.

 Una vez establecida la


conexión, el usuario puede
acceder a los recursos en el
servidor como si el recurso
fuera local para el host del
cliente.

Redes y Comunicaciones de Datos I


Bloque de mensajes del servidor

Redes y Comunicaciones de Datos I

También podría gustarte