redes de computadores · – peticiones del cliente en ascii (7 bits) – respuestas en formato...

19
1 Redes de Computadores Tema 06 Arquitectura en capas Físico Enlace Red Transporte Sesión Presentación Aplicación Físico Enlace Red Transporte Sesión Presentación Aplicación Red de comunicación de datos

Upload: vanhuong

Post on 26-Sep-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

1

Redes de Computadores

Tema 06

Arquitectura en capas

Físico

Enlace

Red

Transporte

Sesión

Presentación

Aplicación

Físico

Enlace

Red

Transporte

Sesión

Presentación

Aplicación

Red de comunicación de datos

Page 2: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

2

Capas

Físico

Enlace

Red

Transporte

Sesión

Presentación

Aplicación

Bits

Tramas

Paquetes

Segmentos

Sesiones

Formatos

Mensajes

HW

SW

NIC

Infra

SO

App

Tramos

Extremos

Capas y TCP/IP

Page 3: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

3

Nivel de Aplicación

Físico

Enlace

Red

Transporte

Sesión

Presentación

Aplicación

Red de comunicación

Físico

Enlace

Red

Transporte

Sesión

Presentación

Aplicación

Red de comunicación

Físico

Enlace

Red

RFCs

• Request For Comments• Es una propuesta de protocolo para usar en Internet.• Se le asigna un número. No puede repetirse, aunque

haya RFCs obsoletos o descartados• Un protocolo suele tener un RFC que lo describe y otros

que lo amplían.• Primero se crea un Internet-draft, muy detallado, si se

aprueba, pasa a convertirse un RFC.• www.rfc-editor.org

– IP, RFC 791 -UDP, RFC 768– ICMP, RFC 792 -TCP, RFC 973

Page 4: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

4

IP vs Nombres

IP: 192.168.0.1Msk: FF.FF.FF.0Gw: 220.230.12.93

ClienteIP: 192.168.0.2Msk: FF.FF.FF.0Gw: 192.168.0.1

ServidorIP: 220.210.2.9Nombre: servidor.comURL: http://www.servidor.com/

DNS• Domain Name Service

– RFC 882, 883 � RFC 1034, 1035– Base de datos distribuida, que asigna datos (IP) a un nombre simbólico.

• Como funciona– El cliente usa un “programa” (resolver) para pedir información del nombre

(necesita una dirección IP de un servidor DNS)– El servidor DNS comprueba el nombre en su BBDD, si está, envía la

información. Si no, contacta con otro servidor, dentro de su lista, que pueda resolver el nombre

– Los servidores mantienen una chaché, con nombres usados recientemente– Usa protocolo UDP

• Ventajas– Los nombres simbólicos son mas fáciles de recordar– Pueden cambiarse las direcciones IP, y seguir usando el mismo nombre

simbólico• Inconvenientes

– Se necesita una traducción de nombres a IP (servidores, usar protocol)– Alguien debe regular la asignación de nombres– Requiere un poco más de tráfico en la red

Page 5: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

5

Nombres DNS

• Sigue una estructura jerárquica– Dominios generales, 3+ letras ( .com, .edu, .gov, .mil, .net, .org, .biz,

.info, .name,.pro)– Dominios nacionales, 2 letras (.es, .uk, .tv)– Nivel superior (arpa)– Subdominios (se ponen delante: .es, .upm.es, .euiti.upm.es )

• Formato– Letras minúsculas (no distingue)– Cada componente hasta 63 caracteres, total 255 caracteres

• Protocolo– www, ftp, pop3, smtp,… (www.upm.es, ftp.upm.es)

• Whois ( ¿Quién registró este dominio? )– Los dominios se registran mediante alguna empresa colaboradora de

IAA / ICANN

HTTP• HTTP (Hypertext transfer protocol)

– RFC 2616– Peticiones del cliente en ASCII (7 bits)– Respuestas en formato MIME (Multipurpose Internet Mail Extension, RFC 822,

2045-2049)• URL (Uniform Resource Allocator)

– Es una cadena de caracteres que identifica un recurso (fichero) de forma unica– protocolo://máquina/directorio/fichero.ext

• WWW ( World Wide Web ) • Funcionamiento

– Usa TCP, normalmente puerto 80– El cliente usa un “programa” (brwoser o navegador) para pedir una “página web”

(html) o un fichero (jpg, gif, pdf, etc.)– (El navegador resuelve la dirección y el protocolo)– El servidor proporciona la página o fichero, y la envía al cliente– Se pueden usar páginas generadas dinámicamente (cgi, PHP, JSP, Java) – El cliente muestra la página con los formatos que se indican en ella, incluyendo

hyperlinks (puede tener JavaScript , un applet de java, o un control ActiveX)• Servidores: Apache, Microsoft IIS, …• ¿Os interesa saber más?

Page 6: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

6

Página web<HTML><HEAD><TITLE> titulo de la pagina</TITLE>

</HEAD><BODY>Texto de la página<TABLE> <TR>

<TD>Celda1</TD><TD>Celda 2</TD>

</TR><TR>

<TD>Celda3</TD><TD>Celda 4</TD>

</TR></TABLE><A href=http://www.otrositio.com/pagina.html>Enlace</A></BODY></HTML>

TELNET,SSH

• Servicio de terminal virtual en red (NVT)– RFC-854-861– SSH es una versión segura

• Funcionamiento– Usa TCP, normalmente puerto 23– El cliente se conecta usando un programa cliente,

abriendo una “sesión”– El servidor acepta la conexión, recibe datos (entrada

por teclado) y envía respuestas (salida por pantalla)– El servidor realiza los comandos que le envía el

cliente, y manda los resultados a éste

Page 7: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

7

TELNET,SSH

FTP,TFTP,SFTP

• File Transfer Protocol– RFC-114 � 959– Permite examinar un directorio remoto, “subir” y “bajar” ficheros– TFTP es una versión que usa UDP– SFTP es una versión usando SSH (conexión segura) (Filezilla)

• Funcionamiento– Usa TCP, 2 puertos 20 (datos) y 21 (control)– El cliente usa un programa de FTP (o un navegador)– Conecta con el servidor, indicando IP (o nombre). Puede

conectar como anonymous o con clave de usuario– El servidor acepta la conexión, y acepta comandos como listar

directorio, cambiar directorio, descargar o cargar un fichero, cancelar, desconectar

– Los ficheros, los datos, se envían por otra conexión.– Los ficheros se pueden transmitir en modo ASCII o binario

Page 8: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

8

Cliente FTP

Correo electrónico

• Funcionamiento – Un servidor almacena mensajes de correo, manteniendo un

buzón para cada usuario registrado– El usuario se conecta al servidor usando un programa cliente,

que permite escribir un mensaje y enviarlo a una direccion de correo electrónico, y recibir los mensajes en el buzón. También puede borrar los mensajes que ya no quiera

– El usuario necesita un nombre de correo electrónico, un nombre de usuario, y una contraseña

– El contenido puede ser sólo texto, o un tipo MIME (texto con formato, imagen, audio, etc.)

• Dirección de correo electrónico– Se compone de [email protected](ej: [email protected])– Distingue mayusculas y minusculas

Page 9: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

9

SMTP

• Simple Mail Transfer Protocol– RFC-2821– Envía un correo electrónico a una dirección

• Funcionamiento – Usa TCP, puerto 25– El cliente se conecta a un servidor SMTP– El servidor acepta la conexión e indica si está preparado o no

para recibir correo– El cliente envía la dirección destino del correo, y la de origen– El servidor comprueba si la dirección destino existe, y lo indica– El cliente envía el contenido del correo– El correo queda almacenado en el buzón del destinatario

POP3

• Post Office Protocol– RFC-2821– Permite acceder al buzón de correo de un usuario de forma

remota

• Funcionamiento – Usa TCP, puerto 110– El cliente se conecta a un servidor POP3, indicando su nombre

de usuario y contraseña– El servidor acepta la conexión, el cliente recoge los mensajes

que hay en el buzón del usuario en el servidor– Los mensajes en el servidor se borran (opcional)– El usuario entonces puede ver los mensajes

Page 10: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

10

IMAP

• Internet Message Access Protocol– RFC-3501– Permite acceder al buzón de correo de un usuario de forma

remota, en “modo interactivo”

• Características– Usa TCP, puerto 143– Permite disponer de carpetas en el servidor– Tiene opciones para gestionar el correo en el servidor:

• Modo conectado o desconectado• Filtrar u ordenar correo por atributos• Obtención parcial de los mensajes• …

Cliente de corrreo

Page 11: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

11

IRCP

• Internet Relay Chat Protocol– RFC-1459

• Funcionamiento– El cliente se conecta usando un programa cliente,

que suele tener una parte para escribir y otra para recibir texto

– El servidor acepta la conexión– El cliente puede escoger “unirse” a salas de chat

(/join), estableciendo una nueva conexión– En cada sala de chat, el cliente envía el texto que

escribe el usuario. En la ventana van apareciendo los mensajes que envían todos los usuarios de la sala, con su nombre

Cliente IRC

Page 12: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

12

Cliente/Servidor

• Arquitectura Cliente/Servidor– Servidor: Un programa acepta peticiones. Está

claramente identificado (tiene una dirección y puerto)– Cliente: Un programa que pide un servicio (a un

servidor)– Deben cumplir un protocolo común– Pueden estar en distintas máquinas, o en la misma.– Servicio centralizado, aporta control.– Si el servidor se desconecta o falla, no está

disponible el servicio

Esquema C/S

Page 13: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

13

P2P

• Peer To Peer – No existe un programa servidor especial– Cada nodo se comporta como servidor y como

cliente: acepta conexiones y pide conectar con otros nodos

– Se necesita un protocolo de funcionamiento común – Si un nodo falla, hay otros nodos– La información y el control no están centralizados– Los nodos no necesariamente están claramente

identificados– ¿Cómo se encuentran unos a otros?

Esquema P2P

Page 14: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

14

P2P y directorios

• Directorios – Son servidores C/S– Un nodo (actúa como cliente) conecta con el servidor

y le indica que está disponible. El servidor lo almacena, con su dirección actual.

– Cuando un nodo desconecta, el servidor también lo anota.

– Un nodo solicita información al servidor acerca de otro nodo. El servidor le indica la dirección actual.

– El nodo conecta como cliente con el otro nodo (éste actua como servidor)

– Ambos nodos pueden ahora realizar su comunicación

C/S, P2P, directorios

Page 15: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

15

Un servidor Web

ApacheApache

HTMLHTML

GET www.upm.es/pagina1.html

POST www.upm.es/login.htmluser=pepepasswd=lamisma

Un servidor Web+Scripts

Apache+

PHP

Apache+

PHP

HTMLHTML

POST www.upm.es/login.htmluser=pepepasswd=lamisma

.php.php

Page 16: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

16

Arquitectura de 3 Capas

webserver

+PHP

webserver

+PHP

HTMLHTML

POST www.upm.es/login.htmluser=pepepasswd=lamisma

.php.php

BD

eMule• Servicio de transmisión de archivos,

– basado en P2P, usa protocolo eDonkey2000, y Kad– Existen servidores C/S, como directorios– Cada archivo se divide en partes de 9,5Mbytes, y se identifica mediante

una clave hash.– Un nodo debe conectarse a un servidor, y le envía qué archivos

comparte, y sus claves hash.– Un nodo puede realizar búsquedas de archivos, en el servidor o en la

red de servidores.– Para iniciar una descarga, un nodo obtiene del servidor la lista de

nodos que comparten el archivo.– El nodo conecta con los nodos de la lista, pidiendo partes del archivo.– Los nodos, en modo servidor, aceptan peticiones de parte de otros

nodos. Cada petición la colocan en una cola de peticiones. – La cola de peticiones tiene prioridades, según una puntuación. Cuanto

más partes de fichero se han enviado a otros, más prioridad se asigna para recibir

– Cuando le llega el turno a un nodo, se inicia la transferencia de una parte del archivo

– Pueden mantenerse varias conexiones de subida y de bajada a la vez

Page 17: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

17

eMule

eMule

Page 18: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

18

eMule

Skype

• Servicio de voz y videollamada– Basado en una red P2P + servidor de directorio– Protocolo propietario. Gratis algunos servicios:

• Videollamadas• Conferencias• Chat

– El programa cliente, capta la voz, que se codifica como muestras. Comprime los datos mediante un algoritmo y los encripta.

– SkypeOut: Uso de Skype para conectar con un teléfono en la red de telefonía

– SkypeIn: Uso de Skype para admitir llamadas desde la red de telefonía (se precisa un número)

– Los servidores se usan como directorio, no reciben datos de voz, excepto con SkypeIn y SkypeOut

Page 19: Redes de Computadores · – Peticiones del cliente en ASCII (7 bits) – Respuestas en formato MIME (Multipurpose Internet M ail Extension, RFC 822, 2045-2049) ... PHP, JSP, Java)

19

Skype

Skype