módulo 8 pasado y futuro primera y segunda …€¦ · hay único punto de falla. octubre 2000:...

47
Módulo 8 Pasado y Futuro Primera y Segunda Generación Facultad de Ingeniería Departamento de Informática Universidad Nacional de la Patagonia “San Juan Bosco” Sistemas Distribuidos Sistemas Distribuidos: Sistemas Peer-to-Peer JRA © 2009 Sistemas Peer-to-Peer Pasado y Futuro

Upload: duongtu

Post on 29-Sep-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Módulo 8Pasado y Futuro

Primera y Segunda Generación

Facultad de IngenieríaDepartamento de Informática

Universidad Nacional de la Patagonia “San Juan Bosco”

Sistemas Distribuidos

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Sistemas Peer-to-Peer

Pasado y Futuro

Page 2: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Status Quo: Redes saturadas con tráfico Peer-to-Pee r

2. Como comienza todo: Desde Arpanet hasta Peer-to-Pee r

3. La historia de Napster

4. Gnutella y sus parientes: Arquitecturas completamen te descentralizadas

5. Fuerzas motoras detrás de Peer-to-Peer

Revisión

1) Freenet2) Buzzpad3) WuWu1)

2)

3)

Aplicaciones P2P relevantes en el año 2001

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Status Quo: Redes saturadas con tráfico Peer-to-Pee r

2. Como comienza todo: Desde Arpanet hasta Peer-to-Peer

3. La historia de Napster

4. Gnutella y sus parientes: Arquitecturas completamente descentralizadas

5. Fuerzas motoras detrás de Peer-to-Peer

Revisión

1) Freenet2) Buzzpad3) WuWu1)

2)

3)

Aplicaciones P2P relevantes en el año 2001

Page 3: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Los sistemas P2P son arquitecturas solapadas , con las siguientes características:

Dos redes logicamente separadas

Mayormente basadas en IP

Decentralizados y autoorganizados

Emplea recursos compartidos distribuidos (poder de computación y almacenamiento de datos)

Inicialmente desarrollado para archivos compartidos

Varias realizaciones

Bases comunes: IP (TCP y UDP)

Bases comunes para transmisión de datos: HTTP

Uso limitado del broadcast (flooding) en la red solapada

Que es P2P

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Tamaños de flujo creciente (60 kbyte -> 2 Gbyte).

� 30%-60% del tráfico en ciertos backbones es causado por aplicaciones P2P.

� 70% del tráfico en la German Research Network (DFN) es causado por aplicaciones P2P.

� T-Online observa un incremento simétrico al nivel de acceso.

� LRZ (Munich Network Center) observó un incremento simétrico entre Estados Unidos y Europa.

Impactos de P2P

Page 4: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

0 %

1 0 %

2 0 %

3 0 %

4 0 %

5 0 %

6 0 %

7 0 %

8 0 %

9 0 %

1 0 0 %

18.02.2

002

18.04.2

002

18.06.2

002

18.08.2

002

18.10.2

002

18.12.2

002

18.02.2

003

18.04.2

003

18.06.2

003

18.08.2

003

18.10.2

003

18.12.2

003

18.02.2

004

18.04.2

004

18.06.2

004

18.08.2

004

Tra

ffic

port

ions

in %

per

wee

k

U n id e n tif ie d

D a ta _ T ra n s fe rs

F ile _ S h a r in g

Impacto de P2P en el Backbone Abilene

Infraestructura del núcleo de Internet2,

conectando 190 universidades de EEUU y centros de investigación

Solo Signaling

Posibles transferencias

de datos

� No identificados + transferencia de datos + archivos compartidoscausan 90% del tráfico

� Tráfico no identificado y transferencia de datos se

incrementa significativamente

� Partes de P2P están escondidas (port hopping,…)

� Algunas aplicaciones P2P usan pórtico 80 � transferencia de

datos

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Impacto de P2P en el Backbone Abilene�Cantidad de tráfico P2P (solo signaling)

� Es aún alto (~50 TByte por semana)

� Se convierte en una parte constante del tráfico (desde fines del 2002)

�Slumps se asumen estar causados por :

� Cierre de pórticos (firewalls, NATs)

� Veredictos (Caso Napster ,…)

�Las transferencias de datos son causadas presumiblemente por una gran extensión de las aplicaciones P2P.

0

50

100

150

200

250

300

18.02

.200

2

18.04

.200

2

18.06

.200

2

18.08

.200

2

18.10

.200

2

18.12

.200

2

18.02

.200

3

18.04

.200

3

18.06

.200

3

18.08

.200

3

18.10

.200

3

18.12

.200

3

18.02

.200

4

18.04

.200

4

18.06

.200

4

18.08

.200

4

traf

fic in

TB

yte

per w

eek

Unidentif ied

Data_Transfers

File_Sharing

Page 5: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Razones para estas experiencias

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Status Quo: Redes saturadas con tráfico Peer-to-Peer

2. Como comienza todo: Desde Arpanet hasta Peer-to-Pee r

3. La historia de Napster

4. Gnutella y sus parientes: Arquitecturas completamente descentralizadas

5. Fuerzas motoras detrás de Peer-to-Peer

Revisión

1) Freenet2) Buzzpad3) WuWu1)

2)

3)

Aplicaciones P2P relevantes en el año 2001

Page 6: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Fines de los 1960: Establecimiento de ARPANET

� Objetivo: compartir recursos de computación y documentos entre centros de investigación en EEUU.

� Cada host es tratado equitativamente

� PERO: la red virtual coincide con la red física en toda su extensión.

� Aplicaciones: FTP y TelNet � modo cliente-servidor , con búsqueda y almacenamiento centralizado

� Un comité directivo central organiza la red

Desde ARPANET hasta Peer-to-Peer

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� 1979: Desarrollo del protocolo de UseNet

� Aplicaciones de newsgroup para organizar contenido

� Autoorganización para agregar o remover servidores de newsgroup

� La aplicación es aún cliente- servidor

� ~1990 corrida del público en general hacia Internet

� Las aplicaciones siguen el enfoque cliente-servidor : WWW, email, streaming

� Basados en conexiones por modem via SLIP y PPP protocol

� Modelo directo para administrar y controlar la distribución de contenido.

� La seguridad resulta en un particionamiento por firewalls en Internet.

Desde ARPANET hasta Peer-to-Peer

Page 7: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Status Quo: Redes saturadas con tráfico Peer-to-Peer

2. Como comienza todo: Desde Arpanet hasta Peer-to-Peer

3. La historia de Napster

4. Gnutella y sus parientes: Arquitecturas completamente descentralizadas

5. Fuerzas motoras detrás de Peer-to-Peer

Revisión

1) Freenet2) Buzzpad3) WuWu1)

2)

3)

Aplicaciones P2P relevantes en el año 2001

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Mayo 1999: Disrupción de la comunidad Internet Primera Generación de P2P� Introducción de Napster.

� El usuario no solo consume y baja contenido sino que también ofrece y provee contenido a otros participantes.

� Los usuarios establecen una red virtual, enteramente independiente de la red física y autoridades administrativas o restricciones.

� Bases: conexiones UDP y TCP entre los peers

� Deciembre 1999: denuncia contra Napster Inc.� Blanco: el servidor de búsqueda centralizada de Napster

� Febrero 2001: 2.79 miles de millones de archivos intercambiados via la red Napster por mes

� Julio 2001: Napster Inc. es condenado� Napster tiene que parar la operación del servidor Napster.

� Se disuelve la red Napster.

� PERO: aparecen una serie de sucesores disponibles.

La Historia de Napster

Page 8: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Status Quo: Redes saturadas con tráfico Peer-to-Peer

2. Como comienza todo: Desde Arpanet hasta Peer-to-Peer

3. La historia de Napster

4. Gnutella y sus parientes: Arquitecturas completamen te descentralizadas

5. Fuerzas motoras detrás de Peer-to-Peer

Revisión

1) Freenet2) Buzzpad3) WuWu1)

2)

3)

Aplicaciones P2P relevantes en el año 2001

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Marzo 2000: Nullsoft lanza Gnutella como un proyecto de fuente abierta

� Desarrollador Mayor: Gene Khan

� Adicionalmente a la funcionalidad del servent, los peers hacen tareas de ruteo.

� Completamente decentralizados, al no haber servidor central de búsqueda no hay único punto de falla.

� Octubre 2000: introducción de capas jerárquicas de ruteo.

Segunda Generación de P2P

� Gnutella: reflector/concepto de Superpeer

� Incrementa la escalabilidad significativamente.

� Variedad de protocolos decentralizados P2P:

� Audiogalaxy

� FastTrack/KaZaA

� iMesh

� Freenet

Gnutella y sus Parientes

Page 9: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Agosto 2001

� Los usuarios se adaptan muy rápido a la caída de Napster

� Casi 3.050 milliones de archivos intercambiados por mes via red Gnutella

� Año 2001: Tercera Generación de P2P se inicia

� La primera investigación que comienza la tercer generación son las redes estructuradas P2P

� Características básicas: Uso de un algoritmo proactivo de ruteo basado en tablas Distributed Hash (DHTs)

� Agosto 2002

� El intercambio de datos en KaZaA cae causado por el gran número de archivos defectuosos (razón: claves hash débiles para identificar archivos)

� Edonkey y Gnutella ganan popularidad

Gnutella y sus Parientes. La historia continúa

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Mayo 2003

� Aparece Bittorrent

� Se observa de pronto mayor tráfico. Razón: su popularidad, pero también que los datos de usuarios es intercambiado vía canales señalados en contraste con Gnutella, edonkey,…

� Mediados de 2003

� Mas allá de intercambios de contenidos, se desarrollan nuevos conceptos para usar P2P en otras aplicaciones

� Se desarrolla Skype sobre P2P � Hoy:

� Se trata de incrementar la confiabilidad de las búsquedas P2P, para usar P2P en redes móviles.

� Ebay compra a mediados de 2005 Skype para usar el paradigma de comunicación entre compradores y vendedores

Gnutella y sus Parientes. La historia continúa

Page 10: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Desarrollo de Aplicaciones P2P

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

18.0

2.20

02

18.0

5.20

02

18.0

8.20

02

18.1

1.20

02

18.0

2.20

03

18.0

5.20

03

18.0

8.20

03

18.1

1.20

03

18.0

2.20

04

18.0

5.20

04

18.0

8.20

04

data

volu

mes

in %

per

wee

k

FreenetDirect Connect++CarrachoBlubsterNeo-M odusFastTrackWinM XShoutcastAudiogalaxyeDonkey2000HotlineGnutellaB itTorrent

BitTorrent

FastTrack

Gnutellaedonkey

Shoutcast

Porciones de tráfico de las diferentes aplicaciones y protocolos P2P en las métricas de tráfico obtenidas

por semana en el backbone Abilene desde 18.02.2002 hasta 18.010.2004

Data source: http://netflow.internet2.edu/weekly/

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Status Quo: Redes saturadas con tráfico Peer-to-Peer

2. Como comienza todo: Desde Arpanet hasta Peer-to-Peer

3. La historia de Napster

4. Gnutella y sus parientes: Arquitecturas completamente descentralizadas

5. Fuerzas motoras detrás de Peer-to-Peer

Revisión

1) Freenet2) Buzzpad3) WuWu1)

2)

3)

Aplicaciones P2P relevantes en el año 2001

Page 11: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Desarrollo de las capacidades terminales:

� 1992:

� Tamaño medio de discos: ~0.3Gbyte

� Potencia promedio de procesamiento (frecuencia de reloj) de PCs: ~ 100MHz

� 2002:

� Tamaño medio de discos: 100 Gbyte

� 2004:

� Potencia promedio de procesamiento (frecuencia de reloj) de PCs: ~ 3GHz

� PCs tienen capacidades comparables a servidores en los 90

Fuerzas Motoras detrás de Peer-to-PeerEl desarrollo de las capacidades físicas y técnicas de las redes y las capacidades participativas.

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Desarrollo de redes de computadoras:� Principios de los 90: usuarios privados se conectan a Internet via

modem de 56kbps� 1997/1998

� Primer conexión de banda ancha para usuarios residenciales

� cable modem hasta 10Mbps� 1999

� Introducción de conexiones DSL y ADSL

� Hay disponibles transferencias de datos de hasta 8.5Mbps via conexiones comunes telefónicas

� La desregulación del mercado telefónico muestra el primer efecto con una significativa reducción de tarifas, debido al incremento de la competencia en la “última milla” � ancho de banda pleno y barato!

Fuerzas Motoras detrás de Peer-to-Peer

Page 12: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

�No hay una clara distinción

�Algunos casos tienden a confundir

Las Aplicaciones P2P puedes ser clasificadas por los recursos compartidos

Clasificación Convencional Clasificación de P2P

�Archivos Compartidos (Napster, Gnutella, Freenet)

�Grid Computing (SETI@home)

�Mensajería Instantánea (ICQ, AIM)

�Colaboración (Espacio de trabajo Groove)

Clasificación por medio de recursos compartidos

� Información

� Archivos

� Ancho de Banda

� Espacio de almacenaje

� Ciclos de Procesador

Page 13: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Información1. Presencia de Información2. Manejo de Documentos3. Colaboración

2. Archivos1. Modelo de Directorio Centralizado2. Modelo de Requerimientos por Inundación3. Modelo de Ruteo de Documentos

3. Ancho de Banda1. Balance de Carga Incrementado2. Uso Compartido del Ancho de Banda

4. Espacio de Almacenaje1. DAS, NAS, SAN2. Redes de Almacenaje P2P

5. Ciclos de Procesador

Revisión

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Información1. Presencia de Información2. Manejo de Documentos3. Colaboración

2. Archivos1. Modelo de Directorio Centralizado2. Modelo de Requerimientos por Inundación3. Modelo de Ruteo de Documentos

3. Ancho de Banda1. Balance de Carga Incrementado2. Uso Compartido del Ancho de Banda

4. Espacio de Almacenaje1. DAS, NAS, SAN2. Redes de Almacenaje P2P

5. Ciclos de Procesador

Revisión

Page 14: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Presencia de Información:

� Importante rol en la autoorganización de redes P2P y en escenarios relacionados con computadoras omnipresentes y disponibilidad de la información (ubiquitous computing).

� Provee información acerca de cuales peers y que recursos están disponibles en la red.

� Ejemplo: Sistemas de Mensajeria Instantánea

� Aplicaciones P2P que usan esencialmente la presencia de información.

� Peers pasan información via la red, si están o no disponibles para comunicación.

Presencia de Información

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Presencia de Información

Page 15: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Manejo de Documentos :

� Usualmente organizados en forma centralizada

� Pero

� Grandes porciones de documentos creados en una compañía son distribuidos entre PCs sin un repositorio central que tenga algún conocimiento de su existencia.

� Solución

� Las redes P2P crean un repositorio conectado de los datos locales de los peers individuales.

� Indexación y categorización de datos por cada peer sobre la base de un criterio seleccionado individualmente.

� Agregado de información autoorganizada desde áreas del conocimiento.

Manejo de Documentos

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Manejo de Documentos

Page 16: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Colaboración:

� Miembros de grupos de trabajo pueden comunicarse sincronicamente, conducir reuniones en línea y editar documentos compartidos.

� Groupware:

� ofrece funciones como mensajería instantánea, archivos compartidos, notificaciones, “pizarrones”, conferencias de voz y bases de datos con sincronización en tiempo real.

� Pueden iniciarse groupware basados en cliente-servidor y administrado en el servidor por cada grupo de trabajo.

� P2P groupware evita tareas adicionales administrativas y manejo central de datos:

� Los datos creados son almacenados en cada peer y están sincronizados automaticamente.

� Los usuarios pueden iniciar ambientes de trabajos compartidos para equiposvirtuales (shared spaces).

� Pueden invitar a otros a sus equipos.

Colaboración

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Colaboración

Page 17: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Información1. Presencia de Información2. Manejo de Documentos3. Colaboración

2. Archivos1. Modelo de Directorio Centralizado2. Modelo de Requerimientos por Inundación3. Modelo de Ruteo de Documentos

3. Ancho de Banda1. Balance de Carga Incrementado2. Uso Compartido del Ancho de Banda

4. Espacio de Almacenaje1. DAS, NAS, SAN2. Redes de Almacenaje P2P

5. Ciclos de Procesador

Revisión

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Archivos compartidos:

� Almacena contenidos en nodos individuales en vez de un lugar central.

� Peers que bajan archivos los ponen disponibles para otros peers.

� El 70% del tráfico de Internet puede ser atribuido a intercambio de archivos.

� Es la aplicación más extendido de los sistemas P2P.

� Problema de Búsqueda:

� Localizar recursos es, en general, un problema central de las redes P2P y compartir archivos en particular.

� Las redes P2P proveen diferentes métodos para almacenaje, búsqueda y recuperación de los archivos:

� Modelo de Directorio Centralizado.

� Modelo de requerimieno por “inundación” .

� Modelo de ruteo de Documentos.

Archivos

Page 18: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Modelo de Directorio Centralizado:

� Ejemplo perfecto de sistema P2P híbrido

� El servicio de indexado es provisto centralmente por una entidad de coordinación.

� Un requrimiento de búsqueda es atendido por la entidad coordinadora que presenta una lista de peers que tienen los archivos requeridos .

� Luego el peer obtiene los archivos respectivos directamente de los otros peers que los ofrecen.

� Características:� La búsqueda de documentos existentes puede ser garantizada. � El servicio de indexado es “Un Único Punto de Falla ”.

� Ejemplo: “Primer” Napster� Compartía archivos de música.� “Bajado” por la justicis.

Modelo de Directorio Centralizado

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

? Prince

purple rain ? ! Prince

purple rain !

Base de Datos Central con

Índice de todos los archivos compartidos

Mr. Müller comparte varios archivos MP3.

Mr. Arayama comparte varios archivos MP3 también.

Modelo de Directorio Centralizado

! Prince

purple rain !@ Mr. Arayama

? Prince purple rain ?

Page 19: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Modelo de Requerimiento por “Inundación”:� Sistema P2P atómico

� Sin autoridad central de coordinación (todos los peers son iguales).

� El requerimiento de búsqueda es pasado sobre un deteminado número de peers.

� Si no pueden responder el requerimiento, lo pasan sobre otros nodos hasta cierto nivel de profundidad (ttl=time-to-live).

� Cuando el archivo requerido ha sido localizado, los resultados positivos de la búsqueda son enviados a la entidad que los requirió.

� El peer puede ahora bajar el archivo deseado directamente de as entidades que lo ofrecen.

� Características:� La búsqueda de documentos existentes no puede ser garantizada. � El sistema no escala bien.

� Ejemplo: Gnutella� Extensión: FastTrack

� “Super Peers” como proxies. � El sistema P2P no es más atómico.

Modelo de Requerimiento por “Inundación”

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Mr. Müller está

buscando por PrinceNo hay

Base de Datos central

?

?

?

?

?

?

? ? ?

http://www.gnutelliums.com/

Modelo de Requerimiento por “Inundación”

?

Mr. Arayama ofrece Prince

Page 20: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Modelo de ruteo de Documentos:� Sin autoridad central de coordinación (todos los peers son iguales).� Los archivos no están almacenados en el HD de los peers que lo proveen.� Los archivos está almacenados en otras locaciones de la red P2P.

� Asigna responsabilidad por un conjunto de archivos a cada peer (de acuerdo a una función definida).

� Rutea archivos a peers asociados que los almacenan.� Se usa una función definida para para determinar el peer asociado cuando hay un

requerimiento.� Se baja el archivo del peer asociado.

� Usa una función hash: “Distributed Hash Table (DHT)”

� Características:� La autoorganización permite la adaptación en casos de entrada y salida

necesaria de peers.

� Ejemplos: � Pastry, Chord, CAN, Tapestry, Freenet..

Modelo de ruteo de Documentos

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Información1. Presencia de Información2. Manejo de Documentos3. Colaboración

2. Archivos1. Modelo de Directorio Centralizado2. Modelo de Requerimientos por Inundación3. Modelo de Ruteo de Documentos

3. Ancho de Banda1. Balance de Carga Incrementado2. Uso Compartido del Ancho de Banda

4. Espacio de Almacenaje1. DAS, NAS, SAN2. Redes de Almacenaje P2P

5. Ciclos de Procesador

Revisión

Page 21: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Típico Enfoque Centralizado:

� Los archivos son dejados en el servidor por un proveedor de información.

� El archivo es transferido desde allí al cliente que lo requirió.

� Un incremento espontáneo en la demanda ejerce una influencia negativa en la disponibilidad de los archivos debidos a los cuellos de botella y colas.

Ancho de Banda

Unicast

Router

Receiver Receiver

Router

Router

Receiver Receiver Receiver

Router

Sender

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Enfoques basados en P2P

Alcanza un incremento en el balance de carga al tomar ventaja de rutas de transmisión que no están completamente explotadas.

Incremento del Balance de Carga

Router

Sender

Router

Receiver/Sender

Receiver/Sender

Router

Receiver/Sender

Receiver/Sender

Receiver/Sender

Receiver/Sender

Receiver/Sender

Unicast Peer-to-Peer :Inicialmente los requerimientos

de archivos son atendidos por un servidor central.

En adelante los requerimientos son automáticamente enviados a peers dentro de la red que han recibido y replicado estos archivos.

Page 22: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Enfoques basados en P2P

� Alcanza un incremento en el balance de carga al tomar ventaja de rutas de transmisión que no están completamente explotadas .

� Enfoque de Canal de Información:

Incremento del Balance de Carga

new

new

new

newnew

new

info channel

info channel

info channel

info channel

info channel

info channel

info channel

new

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Enfoques Basados en P2P

� También facilita el uso compartido del ancho de banda provisto por losproveedores de información.

� Enfoque de Segmentación:

Uso Compartido del Ancho de Banda

DocDoc

Part3

Part3Part2

Part2 Part

3

Part3

Part1

Part1

Part1

Part1

Part2

Part2Part

3

Part3

Part1

Part1 Part

2

Part2

Part2

Part2Part3

Part3

Part3

Part3

DocDoc

DocDoc

DocDoc

Page 23: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Información1. Presencia de Información2. Manejo de Documentos3. Colaboración

2. Archivos1. Modelo de Directorio Centralizado2. Modelo de Requerimientos por Inundación3. Modelo de Ruteo de Documentos

3. Ancho de Banda1. Balance de Carga Incrementado2. Uso Compartido del Ancho de Banda

4. Espacio de Almacenaje1. DAS, NAS, SAN2. Redes de Almacenaje P2P

5. Ciclos de Procesador

Revisión

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Conceptos de Diseños Centralizados Usados para Datos en una Compañia:

� Desventajas:� Uso ineficiente del almacenaje disponible.

� Carga adiciona en la red de la compañia.

� Necesidad de personal entrenado.

� Soluciones adicionales de respaldo.

DAS, NAS, SAN

� Direct Attached

Storage (DAS)

� Network Attached

Storage (NAS)

� Storage Area

Networks (SAN)

Page 24: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Una Red de Almacenaje P2P es un cluster computadoras, formado sobre la base de redes existentes, que comparten todo el almacenaje disponible en la red.

� Ejemplos: PAST, Pasta, OceanStore.

� Organización:

� Cada peer recibe un par de claves pública/privada .

� La clave pública es usada para crear un número de identificación no ambigua para cada peer (con la ayuda de una función hash).

� Cada peer debe tener disponible algo de su propio almacenaje y paga una tarifa.

� Correspondiente a su contribución, a cada peer le es asignado un volumen máximo de datos que puede ser agregado a la red.

� A un archivo le es asignado un número de identificación no ambiguo (una función hash del nombre del contenido y la clave pública del propietario).

� Almacenar y buscar un archivo en la red se hace de la manera descripta en el modelo de ruteo de documentos.

Almacenaje en Redes P2P

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Construcción

Almacenaje en Redes P2P

3ID

25ID

4ID

Hello ???

Hello ???1ID

Hash

vecinos

3

4

25

1ID

4ID

25ID

3ID

17ID

10ID

8ID

Page 25: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Almacenar Documentos

Almacenaje en Redes P2P

1ID

4ID

25ID

3ID

17ID

10ID

8ID

3

4

25

1

17

25

1

4

10

3

4

8

1

10

17

10

17

3

8

25

Hash11ID

11ID

11ID

11ID

11ID

11ID

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Recuperar Documentos

Almacenaje en Redes P2P

1ID

4ID

25ID

3ID

17ID

10ID

8ID

3

4

25

1

17

25

1

4

10

3

4

8

1

10

17

10

17

3

8

25

11ID

11ID11ID

requestor: 1

11ID

11IDrequestor:

1

Page 26: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

1. Información1. Presencia de Información2. Manejo de Documentos3. Colaboración

2. Archivos1. Modelo de Directorio Centralizado2. Modelo de Requerimientos por Inundación3. Modelo de Ruteo de Documentos

3. Ancho de Banda1. Balance de Carga Incrementado2. Uso Compartido del Ancho de Banda

4. Espacio de Almacenaje1. DAS, NAS, SAN2. Redes de Almacenaje P2P

5. Ciclos de Procesador

Revisión

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Incremento de Requerimientos para Computación de Alto Rendimiento� i.e. campo de la bio-informática, logística o sector financiero.

� Poder de computación de entidades en red con poco uso

� Uso de aplicaciones P2P para uso de ciclos de procesador: � Forma un cluster de computadoras independientes conectadas en red

que para una simple computadora es transparente y todos los nodos en red son combinados en una computadora lógica simple.

� Lograr poder de computación que aún las más caras super-computadoras escasamente ofrecen.

� “Grid Computing”

� Ejemplos: � Ejemplo popular: SETI@home

� Calcula durante ciclos ociosos del procesador de los peers participantes.

� Visón advanzada de grid computing: Globus Toolkit� Middleware standard para aplicaciones grid.

Ciclos de Procesador

Nota:Nota:

El nEl núúcleo de SETI@home es una cleo de SETI@home es una

clcláásica aplicacisica aplicacióón Clienten Cliente--Servidor.Servidor.

Page 27: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Sistemas Peer-to-Peer

Primera y Segunda Generación

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Arquitecturas de la Primera y Segunda Generación de P2P

Cliente-Servidor Peer-to-Peer

1. El Servidor es la entidad central y el único proveedor del servicio y contenido.� La red es manejada por el servidor

2. El Servidor es el sistema de más alto rendimieno.

3. El Cliente es el sistema d más bajo rendimiento

Ejemplo: WWW

1. Los recursos son compartidos entre peers

2. Los recursos pueden ser accedidos directamente desde otros peers

3. Concepto de Servent

P2P sin Estructura P2P Estructurado

P2P Centralizado P2P Puro P2P Híbrido Basado en DHT

1. Todas las características de P2P incluidas

2. Una entidad central es necesaria para proveer el servicio

3. La entidad central es una especie de Db índice/grupo

Ejemplo: Napster

1. Todas las características de P2P incluidas

2. Alguna entidad terminal puede ser removida sin pérdida de funcionalidad

3. � Entidades no central es

Ejemplos: Gnutella 0.4, Freenet

1. Todas las características de P2P incluidas

2. Alguna entidad terminal puede ser removida sin pérdida de funcionalidad

3. � Enidades centrales dinámicas

Ejemplo: Gnutella 0.6, JXTA

1. Todas las características de P2P incluidas

2. Alguna entidad terminal puede ser removida sin pérdida de funcionalidad

3. � Entidades no central es

4. Las conexiones en overlay son “fijas”

Ejemplos: Chord, CAN

1st Gen. 2nd Gen.

Page 28: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Servents

Red P2P Datos

Servidor

Cliente

Encaminamiento

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Definición de P2P centralizada

� Todos los peers están conectados a una entidad central

� Los Peers establecen conexiones entre ellos para intercambiar datos (e.g. mp3)

� La entidad central es necesaria para proveer el servicio.

� La entidad central es una clase DB índice/grupos

� La entidad central es la tabla de búsqueda/ruteo

Page 29: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Topología de P2P Centralizado

ServentConexión entre2 servents (TCP)

Conexión entre ruteadores y serventsConexión entre ruteadores (Core)

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Napster

Metaservidor

Servidor

Napster:8888

Servidor

Napster:8888

Servidor

Napster:8888

Servidor

Napster:8888

ClienteCliente

Cliente

Cliente

Cliente

Cliente

Cliente

Cliente

Cliente

Cliente

Descarga

Descarga

Login

Cliente

Page 30: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Napster

Servidor Napster Cliente Napster Metaservidor Napster

Connect

Devuelve direcciónde servidor Napster

Login (tipo 2)

Login ack (tipo 3)

version check (tipo 4)

Mensajes de notificaciónde archivos compartidos

(tipo 100)

(tipo 100)

(tipo 100)

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Napster

Servidor NapsterCliente Napster

que requiere un recurso

Cliente Napster

que posee el recurso

Connect

"1"

Download request(tipo 203)

Download ack(tipo 204)

Tamaño del archivo

Archivo

GET nick"nombre_archivo" offset

Downloading file (tipo 218)

Uploading file (tipo 220)

Archivo

Archivo

Archivo

Download complete (tipo 219)

Upload complete(tipo 221)

Page 31: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Topología de P2P puro

ServentConexión entre2 servents (TCP)

Conexión entreruteadores y serventConexión entreruteadores (Core)

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Gnutella

Page 32: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Se toma como ejemplo la redGnutella

Constituye una red solapada virtual con mecanismos propios de ruteo

No hay coordinación central de actividades en la red.

El software de soporte son “servents”.

Usa IP como red subyacente, mientras que la comunicación entre servents está especificada en forma de protocolo a nivel de aplicación.

Gnutella

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Se basa en cuatro primitivas

Ping: Requerimieno de un host para autoanunciarse

Pong: Respuesta al Ping. Contiene el IP y el pórtico del host que responde, el número y tamaño de archivos compartidos.

Query: Un requerimiento de búsqueda. Contiene un string de búsqueda y los mínimos requerimientos de velocidad del host que responde.

QueryHits: respuesta a Query. Contiene IP, pórtico y velocidad, el número de archivos encontrados y el conjunto de índices resultado.

Protocolo

Page 33: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Luego de unirse a Gnutella (conectándose a los nodos encontrados en la base de datos gnutellahost.com), el nodo envía un Ping al nodo al cual está conectado. Los nodos responden Pong identificándose y propagando el Ping a sus vecinos.

La localización de un archivo se hace por una búsqueda no determinística dado que los nodos no pueden adivinar donde están los archivos.

Gnutella usa broadcast para distribuir Ping y Query.

Protocolo

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Cada nodo los envía a sus vecinos y las respuestas hacen el camino inverso.

Para limitar los mensajes los mismos tienen un TTL (time to live), en cada hop este TTl es decrementado y cuando llega a 0 el mensaje se “cae”

Se eliminan lazos de mensajes por medio de un identificador.

Una vez que el nodo recibe un QueryHints inicia con esos datos una conexión directa entre dos nodos.

La imposición del TTL impone un horizonte a cada cliente.

Protocolo

Page 34: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Protocolo

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Sumario de señalamiento en Gnutella 0.4

1

7

3

2

4

5

6

8

Gnu-ConGnu-Con

Peer7 Peer3 Peer1 Peer5 Peer2 Peer4 Peer6

Gnu-ConOKOK

OK

PINGPING

PINGPINGPING PING

PING

PONG

PINGPING

PING

PONG

PONG

PONG

Peer8

PING

PONGPONG

PONG

PONG

PONGPONG

PONG

PONG

PING

Ejemplo de red Gnutella 0.4

Ejemplo de protocolo de mensajes de acuerdo con la red del ejemplo

Page 35: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Definición de P2P híbrida� Principal característica comparada con P2P puro: Introducción de otra

capa dinamica jerárquica

� Red basado en hub

� Reduce la carga de señalamiento sin reducir la confiabilidad

� Proceso de elección para seleccionar la asignación de un Superpeer

� Superpeers: alto grado (>>20, dependiendo del tamaño de la red)

� Leafnodes: conectado a uno o más Superpeers (<7)

Superpeer

leafnode

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Gnutella 0.6: Como trabaja

Page 36: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Edonkey

� Kazaa/FastTrack

� Emule

� OpenNap

� …

Sistemas P2P basados en P2P híbridos

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Sumario de señalamiento en Gnutella 0.6

Ejemplo de red Gnutella 0.6

Secuencia de mensajes de acuerdo al ejemplo de red:

4L1 L3

S2

S3

S1

L2

L5

L4

L6

L7

Gnu-Con

L2 L3 L1 S1 S3 S2 L7

OK

PONG

L6 L5 L4

RTU

PING

PONGPONG

PING

PINGPONG

PONG

PINGPING

QUERYQUERY

QUERY

QUERYQUERY

QUERYQUERY

QUERY

QUHIT

QUHIT QUHITQUHIT

QUHITQUHIT

QUHITQUHIT

Page 37: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Sobrecarga de Comunicación vs. estado del nodo

Motivación de Indexado Distribuido

Sobrecarga Communicación

Estado Nodo

Flooding

CentralServer

O(N)

O(N)O(1)

O(1)

O(log N)

O(log N)

Cuello de botella:•Sobrecarga Comunicación•Falso negativos

Cuellos de botella:•Memoria, CPU, red•Disponibilidad?

Solución escalable entre ambos extremos?

Page 38: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Sobrecarga de Comunicación vs. estado del nodo

Motivación de Indexado DistribuidoSobrecarga Communicación

Estado Nodo

Flooding

CentralServer

O(N)

O(N)O(1)

O(1)

O(log N)

O(log N)

Cuello de botella:•Sobrecarga Comunicación•Falso negativos

Cuellos de botella:•Memoria, CPU, red•DisponibilidadDistributed

Hash Table

� Escalabilidad: O(log N)

� No falsos negativos

� Resistencia contra cambios� Fallas, Ataques

� Usuarios por corto tiempo

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Desafíos en el diseño de DHTs

� Características Deseadas

� Flexibilidad

� Confiabilidad

� Escalabilidad

� Igual distribución de contenidos entre nodos

� Crucial para una eficiente búsqueda de contenido

� Permanente adaptación a fallas, agregados y salidas de nodos

� Asignamiento de responsabilidades a nuevos nodos

� Reasignamientos y redistribución de responsibilidades en caso de fallas de nodo o partida del mismo

Fundamentos de DHT

Page 39: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Secuencia de operaciones

1. Mapeo de nodos y datos en el mismo espacio de direc ciones

� Peers y contenidos son direccionados usando identificadores flat (IDs)

� Espacio común de direcciones para datos y nodos

� Los nodos son responsables por datos en ciertas partes del espacio de direcciones

� La asociación de datos a nodos puede cambiar dado que los nodos pueden desaparecer

2. Almacenamiento/Búsqueda de datos en DHT

� Búsqueda de datos = ruteo al nodo responsable� El nodo responsable no necesariamente es conocido en avance

� Sentencia definitiva acerca de la disponibilidad de datos

Manejo Distribuido de Datos

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Paso 1: Mapeo de contenido/nodo en espacio lineal

� Usualmente: 0, …, 2m-1 >> número de objetos a ser almacenados

� Mapeo de datos y nodos en el espacio de direcciones (con hash)

�Ej., Hash(String) mod 2m: H(„my data“) � 2313

� Asociación de partes de espacio de direcciones a nodos HT

Direccionamiento en DHT

H(Node Y)=3485

3485 -610

1622 -2010

611 -709

2011 -2206

2207-2905

(3485 -610)

2906 -3484

1008 -1621

Y

X

2m-1 0

Frecuentemente, el espaciode direccioneses visto como un círculo.Data item “D”:

H(“D”)=3107 H(Node X)=2906

Page 40: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Cada nodo es responsable por una parte del rango de valores

� Frecuentemente con redundancia (solapado de partes)

� Adaptación continua

� Las topologías real (underlay) y lógica (overlay) no correlacionan

Asociación del espacio de direcciones con nodos

Vista lógica de DHT

Mapeo a la topología real

2207

29063485

201116221008709

611

Nodo 3485 es responsable por items de datos en rango 2907 to 3485

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Paso 2:Localización del dato (ruteo basado en contenido)

� Objetivo: Pequeño y esfuerzo escalable

� O(1) con tabla hash centralizada

� Pero: Su manejo es muy costoso (servidor)

� Sobrecarga mínima con DHT

� O(log N): Orden en DHT para localizar un objeto

� O(log N): número de claves e información de ruteo por nodo(N = # nodos)

Paso 2: Ruteo de un item de dato

Page 41: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Ruteo de un par K/V

� Comienza la búsqueda en un nodo arbitrario de DHT

� Ruteo del dato requerido (key)

Paso 2: Ruteo de un item de dato

(3107, (ip, port))

Value = puntero a la locación del dato

Key = H(“my data”)

Nodo 3485 administra las claves 2907-3485,

Initial node(arbitrary)

H(„my data“)= 3107

2207

2906

3485

20111622

1008

709

611

?

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Obteniendo el contenido

� El par K/V es atendido por el peticionante

� El peticionante analiza la K/V-tupla(y baja el dato de la actual locación – en caso de almacenaje indirecto)

Paso 2: Ruteo de un item de dato

H(„my data“)= 3107

2207

2906

3485

20111622

1008

709

611

?

Get_Data(ip, port)

Nodo 3485 envía (3107, (ip/port)) al peticionante

En caso de almacenaje indirecto:Luego de conocer la locación

El dato es requerido

Page 42: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� ¿Cómo es almacenado el contenido en los nodos?

� Ejemplo: H(“my data”) = 3107 es mapeado en el espacio de direcciones DHT

� Almacenaje Directo

� El contenido es almacenado en el nodo responsable para H(“my data”)

� Inflexible para grandes contenidos – o.k., si los datos son pequeños (<1KB)

Asociaci ón de datos con IDs – Almacenaje Directo

DD

134.2.11.68

2207

29063485

201116221008709

611

HSHA-1(„D“)=3107

D

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Almacenaje Indirecto

� Nodos en una DHT almacenan tuplas como (key,value)

�Key = Hash(„my data”) � 2313

�Value es una dirección real de almacenaje de contenido:(IP, Port) = (134.2.11.140, 4711)

� Más flexible, pero un paso más para alcanzar el contenido

Asociaci ón de datos con IDs – AlmacenajeIndirecto

2207

29063485

201116221008709

611

HSHA-1(„D“)=3107

Item D: 134.2.11.68D

134.2.11.68

Page 43: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Agregando un nuevo nodo

1. Cálculo del ID del nodo

2. El nuevo nodo contacta DHT via un nodo arbitrario

3. Le asigna un particular rango hash

4. Copia de los pares K/V del rango hash (usualmente con redundancia)

5. Mapeo en el ambiente de ruteo

Llegada de Nodo

2207

29063485

201116221008709

611

ID: 3485

134.2.11.68

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

� Falla del nodo

� Uso de pares redundantes K/V (si el nodo falla)

� Uso caminos de ruteo redundantes/ alternativos

� El par Key-value usualmente continua recuperable en al menos una copia

� Partida de un nodo

� Particionado del rango hash entre los nodos vecinos

� Copia de los pares K/V en los nodos correspondientes

� Se quita del ambiente de ruteo

Falla del Nodo/Partida

Page 44: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Esto es primordial, este anonimato puede referirse a:

El autor (o quien publica) el contenido.

La identidad del nodo que almacena contenido.

La identidad y detalles del contenido.

Detalles de un requerimiento de recuperación de contenido.

Disociación de la fuente de contenido y quien la requiera.

Capas de conexión anónima

Provisiones para el Anonimato

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Peer-to-peer and Grid son dos propuestas de computación distribuida, ambas concernien-tes con la organización de recursos compar-tidos en sociedades computacionales en gran escala.

Los Grids son sistemas distribuidos que habili-tan el uso coordinado en gran escala de recursos distribuidos geograficamente, basados en la persistencia, infraestructuras de servicios estandarizadas, frecuentemente con una orientación al alto rendimiento.

Peer-to-peer y Grids

Page 45: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

En tanto que un sistema Grid se incrementa en escala comienza a requerir soluciones para la autoconfiguración, tolerancia a las fallas y escalabilidad para lo cual la investigación en peer-to-peer tiene mucho para ofrecer.

Los sistemas peer-to-peer, por otro lado, se enfocan en tratar con la instantaneidad, las poblaciones transitorias, la tolerancia a las fallas y la autoadaptación.

Hoy en día, sin embargo, los desarrolladores de peer-to-peer han trabajado principalmente en aplicaciones integradas más que en buscar definir protocolos comunes e infraestructuras estandarizadas para interoperabilidad.

Peer-to-peer y Grids

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

En resumen, se puede decir que la computación Grid apunta a infraestructura pero no a fallas, mientras que peer-to peer apunta a fallas pero no a infraestructura

En adición a esto, la forma de compartir inicialmente apuntada por peer-to-peer tiene una limitada funcionalidad, proveyendo una distribución de contenidos global y un espacio de archivos compartidos sin ninguna forma de control de accesos.

Peer-to-peer y Grids

Page 46: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

En tanto que las tecnologías peer-to-peer avancen hacia aplicaciones más sofisticadas y complejas, tales como distribución de contenido estructurado, colaboración por desktop y computación en la red, se espera que habráuna fuerte convergencia entre peer-to-peer computación Grid.

El resultado será una nueva clase de tecnologías combinando elementos de ambos, lo cual apuntará a escalabilidad, autoadaptación y recuperación de fallas al mismo tiempo que provee una infraestructura persistente y estandarizada para interoperabilidad.

Peer-to-peer y Grids

Sistemas Distribuidos: Sistemas Peer-to-PeerJRA © 2009

Diseño de nuevas formas de locación, ruteo y estructura de datos, hash distribuidos y algoritmos para maximizar el rendimiento, seguridad y escalabilidad, sea cual fuera arquitectura

Anonimato más seguro, más seguridad (más eficiente) y esquemas resistentes a la censura.

Agrupacion semántica de la información (Web semántica).

Convergencia de peer-to-peer y Grids

Problemas Abiertos

Page 47: Módulo 8 Pasado y Futuro Primera y Segunda …€¦ · hay único punto de falla. Octubre 2000: introducción de capas jerárquicas de ruteo. Segunda Generación de P2P Gnutella:

Módulo 8Pasado y Futuro

Primera y Segunda Generación

Facultad de IngenieríaDepartamento de Informática

Universidad Nacional de la Patagonia “San Juan Bosco”

Fin