Title: Sistemas Peer-To-Peer La plataforma JXTA
1Sistemas Peer-To-PeerLa plataforma JXTA
2Introducción
- Peer-To-Peer (P2P) Compartición de recursos
informáticos e información mediante intercambio
directo. - La comunicación es simétrica.
- Los equipos actúan como iguales (peers).
- Los peers cumple a la vez el papel de cliente y
servidor. - Alternativa a la arquitectura cliente/servidor.
3Modelo cliente/servidor
4Modelo cliente/servidor
- Modelo cliente/servidor Un servidor ofrece
servicio a muchas máquinas cliente. - Gran extensión en las aplicaciones Internet FTP,
www, correo electrónico. - Ventajas
- Casi toda el procesamiento se realiza en el
servidor. - Clientes muy simples. Clientes pasivos.
- Inconvenientes
- Conforme el número de clientes crece, la carga y
la demanda de ancho de banda del servidor se
incrementa impidiendo a este servir más
peticiones. - Direcciones IP dinámicas impiden ofrecer
servicios a otros usuarios. - Redes privadas los sistemas de seguridad
(firewalls, NAT) impiden las conexiones externas.
5Peer-To-Peer
- Cualquier equipo puede ofrecer un servicio a
otro. - Organización totalmente distribuida
- No dependen de un servidor centralizado para
ofrecer acceso a los servicios. - Funcionan de forma independiente al sistema de
nombrado de dominio (DNS). - Distribuyen la responsabilidad de ofrecer
servicios entre todos los peers de la red - Elimina las indisponibilidades de servicios
debidas a caídas de los servidores. - Mejora la escalabilidad.
6Peer-To-Peer
- Ventajas
- Escalabilidad.
- Agregación de información.
- Disponibilidad.
- Tolerancia a fallos.
- Inconvenientes
- Redundancia.
- Las peticiones de servicio no son deterministas
- Dos clientes que soliciten el mismo recurso
pueden conectarse con máquinas completamente
diferentes, a través de rutas diferentes, y
posiblemente con resultados diferentes. - Los servicios no siempre están disponibles.
- Posibles soluciones
- Acceso redundante a los recursos
- El servicio está disponible mientras exista un
peer conectado.
7Peer-To-Peer
8Elementos de P2P. Peers.
- Peer Cualquier entidad capaz de realizar una
tarea útil y comunicar el resultado de dicha
tarea a otra entidad de la red, bien directa o
indirectamente. - Puede desde ser una aplicación en una sola
máquina, una aplicación distribuida en varias
máquinas o cualquier dispositivo. - Tipos de peers
- Peers simples Sirven a un solo usuario final,
permitiendo a este usuario ofrecer y utilizar
servicios de otros peers. - Peers rendezvous Permite descubrir a otros peers
o recursos. Responden directamente o propagan la
consulta. - Peers enrutadores Permite la comunicación entre
peers que no tienen conectividad física directa
(firewalls, NATs).
9Elementos de P2P. Peer groups.
- Peer group Conjunto de peers que comparten un
interés u objetivo común definido por todos los
miembros del grupo. - Objetivos de los peer groups
- Crear entornos seguros.
- Establecer políticas de seguridad
(login/password, PKI, etc). - Publicar contenidos protegidos de acceso
restringido. - Crear entornos limitados.
- Crear dominios de especialización (divisiones
lógicas). - Limitar las búsquedas de recursos.
- Crear entornos de monitorización.
- Monitorizar el estado de un grupo de equipos.
10Elementos de P2P. Transporte de red.
- Transporte de red Capa de procesamiento
responsable de la transmisión de los datos. - Puede ser un protocolo de bajo nivel, como UDP o
TCP, o un protocolo de alto nivel, como HTTP o
SMTP. - Puede dividirse en tres componentes
- Extremos El origen inicial o destino final de
cualquier fragmento de datos transmitido en la
red. Un extremo corresponde a las interfaces de
red utilizadas para enviar y recibir datos. - Tuberías Canales virtuales de comunicación
asíncronos y unidireccionales que conectan uno o
más extremos. - Mensajes Contenedores de datos transmitidos a
través de una tubería desde un extremo a otro.
11Elementos de P2P. Servicios.
- Servicios funciones y capacidades que los peers
ofrecen al resto de la red. - Permiten a los dispositivos el acceso a los
recursos. - Pueden dividirse en dos categorías
- Servicios de peer.
- Funciones que ofrece un peer determinado de la
red a otros peers. - Las capacidades de este servicio son propias del
peer y sólo estarán disponibles mientras se
encuentre conectado a la red. - Servicios de peer group.
- Funciones que ofrece un peer group a sus
miembros. - Pueden ser suministrados por varios miembros
acceso redundante. El servicio se encuentra
disponible mientras exista algún miembro del peer
group conectado.
12Elementos de P2P. Anuncios.
- Anuncio Representación estructurada de una
entidad, servicio o recurso publicado por un peer
o un peer group como parte de una red P2P. - Todo recurso se identifica mediante anuncios
- Peers, peer groups, tuberías, extremos, servicios
y contenidos.
13Elementos de P2P. Protocolos.
- Protocolo Método de estructurar el intercambio
de información entre dos o más participantes
mediante reglas previamente acordadas por todas
la partes. - En P2P, se definen protocolos para
- Encontrar peers en la red.
- Averiguar los servicios ofrecidos por un peer.
- Obtener información de estado de un peer.
- Invocar un servicio de un peer.
- Crear, unirse o dejar un peer group.
- Crear conexiones con otros peers.
- Enviar mensajes de ruteo a otros peers.
- La definición de los protocolos se reduce a la
definición del intercambio de anuncios
correspondiente.
14Elementos de P2P. Nombrado.
- Todo recurso debe identificarse de forma única
- Peers, peer groups, tuberías, contenidos.
- Una red P2P pura debe utilizar un esquema de
nombrado independiente del transporte de red y
del sistema operativo. - Independiente de la localización.
15P2P. Mecanismos de descubrimiento
- Descubrimiento Proceso de localización de los
recursos de la red. - El descubrimiento de recursos consiste en la
búsqueda de los anuncios correspondientes. - Tipos de descubrimiento
- Pasivo Mantener en una caché los anuncios
descubiertos anteriormente en la que buscarán la
información de los recursos de la red. - Directo Utiliza los mecanismos de broadcast o
multicast para encontrar peers en la misma LAN. - Indirecto Se consulta a peers intermediarios
(rendezvous) sobre los anuncios.
16P2P. Mecanismos de descubrimiento
17P2P. Mecanismos de descubrimiento
18P2P. Mecanismos de descubrimiento
19P2P. Retos para la comunicación
- Los firewalls y NAT presentes en las redes
corporativas representan un serio obstáculo para
la comunicación P2P. - Firewalls Son utilizados para proteger las redes
privadas contra conexiones no autorizadas
provenientes del exterior o del interior de la
red. - Utilizan filtrado de IPs y protocolos.
- Bloquean conexiones entrantes
- Un peer externo no puede conectarse a uno
interno. - Los peers internos suelen estar restringidos a
utilizar sólo ciertos protocolos SMTP, HTTP.
20P2P. Retos para la comunicación
21P2P. Retos para la comunicación
- Network Address Translation Técnica utilizada
para mapear un conjunto de direcciones IP
privadas dentro de una red interna a un conjunto
de direcciones IP externas de una red pública. - Se utilizan por muchas razones
- Elimina la necesidad de una dirección IP pública
para cada equipo dentro de una red privada. - Permite proteger la red al existir un único punto
de entrada. - Sólo autoriza las conexiones entrantes que fueron
originadas dentro de la red.
22P2P. Retos para la comunicación
23P2P. Retos para la comunicación
- Solución
- La única herramienta de que disponen los peers
para atravesar firewalls/NAT es su capacidad para
crear conexiones de salida hacia los equipos
externos. - Se pueden usar protocolos permitidos por el
firewall para realizar mediante túnel conexiones
al exterior.
24P2P. Retos para la comunicación
25Aplicaciones P2P.
- Compartición de ficheros Kazaa, Emule.
- Monitorización de datos
- Mensajería instantánea ICQ.
- Búsqueda en la web. Motores de búsqueda.
- Computación distribuida.
26Cliente servidor vs. P2P
Cliente/servidor P2P
Tráfico de red Asimétrico, tráfico de subida bajo aceptable. Simétrico.
Contenido Centralizado en el servidor. Distribuido entre los peers.
Direccionamiento Estático, utilizando DNS, NAT, puertos bien conocidos (80). Dinámico, registros en tiempo real. Tratamiento de NAT/firewall.
Rendimiento Decrece con el número de usuarios. Aumenta con el número de usuarios.