La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Francisco Gamboa Herrera Tanya Pérez Herrera 26 Noviembre 2010.

Presentaciones similares


Presentación del tema: "Francisco Gamboa Herrera Tanya Pérez Herrera 26 Noviembre 2010."— Transcripción de la presentación:

1 Francisco Gamboa Herrera Tanya Pérez Herrera 26 Noviembre 2010

2 Objetivos  Implementación de un sistema de intercambio de archivos mediante una red P2P.  Con el sistema terminado, lograr que se produzca el intercambio eficiente de archivos entre nodos en la red.  Lograr que nuevos nodos se unan a la red y sean capaces de compartir archivos.

3 Peer to Peer  Red de computadoras en la que todos o algunos aspectos funcionan sin clientes ni servidores fijos, sino una serie de nodos que se comportan como iguales entre sí.  Las redes P2P permiten el intercambio directo de información, en cualquier formato, entre los ordenadores interconectados.

4  P2P estructurado, mantienen una estructura fuerte (en la mayoría de los casos, un anillo) Ej: Pastry  P2P no estructurado, tipo grafo Ej: Napster, Gnutella y KaZaA Clasificación

5 ¿Por qué Pastry?  La mayoría de los sistemas de intercambio de archivos que conocemos utilizan redes de tipo no estructuradas.  Ej: Bittorrent, Gnutella, KaZaa, eMule, etc.  Innovar utilizando un tipo de red no convencional para sistemas de transferencia de archivos.

6  Características generales:  Estructura de anillo  Auto-organizable  Balanceo de carga natural  Nodos se identifican por nodeID: posición (rango 0 a 2^128 - 1)  Para N nodos, Pastry rutea en menos de log N pasos Pastry

7 Tabla de Estado de un Nodo

8  Algoritmo de ruteo: Route(Message, clave K)  El número de salto es igual al log(N), donde N es el numero total de nodos en el anillo.  Si una gran cantidad de nodos hacen una misma consulta, éstas se van a repartir entre los nodos del leaf-set Nodo Y rutea y encuentra el dato en X Búsqueda de Datos

9 Algoritmo de Ruteo

10  Se pasa el dato al nodo más cercano numéricamente al SHA("dato"). El nodo que recibe (la raíz), pasa a todos los nodos de su leaf-set una copia del dato. x x 0 SHA(“Superman”)=X X es raiz de Superman Almacenamiento de Datos

11 FreePastry  Implementación open-source de Pastry para el desarrollo en internet.  Corresponde a una API desarrollada en JAVA.  Para mas información visitar http://www.freepastry.org/ http://www.freepastry.org/

12 Carta Gantt

13 Diseño definitivo  Ingreso de un nuevo nodo a la red  Búsqueda de archivos  Catálogo de Búsqueda  Inicialización  Limpieza  Réplicas  Inicialización  Limpieza  Transferencia de archivos  Salida de un nodo de la red

14 Ingreso nuevo nodo a la red  Una vez ingresado el nodo hace SHA de cada archivo que quiere compartir (Ej: SHA(“Superman”) para que el nodo con el id = al resultado tenga la ip del nodo que contiene el archivo.

15 Búsqueda de archivos  Para buscar, el nodo hace SHA(”lo_buscado”) y va a llegar al nodo que sabe dónde encontrar el archivo.  Si el archivo se encuentra en el sistema se le responde un mensaje con los nodos que tienen dicho archivo (que segmentos tiene cada uno) simulación “tracker” de bittorrent

16 Catálogo de búsqueda  El nodo numéricamente más cercano a la clave SHA (“nombre”) es el encargado de saber quienes tienen dicho archivo.  El catálogo almacena el nombre del archivo, el nodeID del nodo que lo tiene y el numero de los segmentos que tiene.

17 Inicialización de catálogo  Cuando un nodo ingresa a la red solicita los catálogos a todo su leaf-set.  En base a esto se calcula un rango de aceptación de una entrada repetida igual a L/2, donde L es el largo del leaf-set.  Nota: Al menos la mitad de su leaf-set debe tener la misma entrada.

18 Limpieza de Catálogos  Con el fin de mantener los catálogos actualizados  Cada cierto tiempo ∆t  nodo realiza un tipo de búsqueda especial para cada una de sus entradas  Esta búsqueda consiste en rutear sha(“archivo”)  El nodo que recibe este mensaje verifica si quien le envió se encuentra en su leaf-set  En caso que se encuentre se le avisa que conserve la entrada

19 Manejo de Réplicas  Cada vez que un nodo decide compartir un archivo el sistema se encarga de replicar ese archivo a su leaf-set.  La copia se envía a la carpeta “réplica” a la cual el usuario no tiene acceso. Además, se vacía cada vez que ingresa el nodo a la red.  Para mantener actualizadas las réplicas, se utiliza la siguiente estrategia:

20 Inicialización de la Réplica  Cuando un nodo ingresa a la red, solicita a los nodos de su leaf-set que le envíen un listado de los archivos que cada uno tiene en su carpeta “réplica”.  Nuevamente se considera un rango de aceptación L/2.  De esta forma el nodo construye una lista de los archivos que le corresponde tener.  Finalmente solicita estos archivos.

21 Limpieza de Réplicas  Cada cierto tiempo ∆t el nodo solicita a su leaf-set un listado de los archivos que tienen en su carpeta “réplica”.  En base a esto se verifica que los archivos del nodo se repitan al menos L/2 veces en las listas enviadas por el leaf-set.  De esta forma se mantiene actualizada la carpeta “réplica”.

22 Transferencia de archivos  Se selecciona un segmento.  De la lista de nodos que poseen ese segmento se elige uno de manera aleatoria.  El nodo que está buscando envía una solicitud de transferencia de archivo enviando el nombre del archivo y el segmento que desea.

23 Salida de un nodo del sistema Las salidas de nodos de la red no son manejadas. El sistema se encarga de mantener nodos y réplicas actualizadas.

24 Contribuciones al tema Catálogo de búsqueda Inicialización Limpieza Manejo de réplicas Inicialización Limpieza Transferencia de archivos Segmentación Algoritmo de descarga

25 Contribuciones al tema  Permite creación de “nichos” o subredes de intercambio de archivos.

26 Futuros trabajos  Existen posibles mejoras, utilizando nuestro sistema como base, por ejemplo:  Algoritmo de descarga  Creación de un sistema de puntuación para usuarios

27 Conclusiones  Demostramos que es posible realizar un sistema de intercambio de archivos utilizando una red P2P estructurada.  Nuestra implementación de Catálogos de búsqueda demostró funcionar eficientemente.  Los sistemas de limpieza creados para nuestra aplicación funcionan de manera eficiente.

28 Conclusiones  Comprobamos experimentalmente que nuestro sistema es escalable.  La implementación de la descarga por segmentos de archivos escogidos de usuarios al azar le otorga a la red balanceo de carga.  Las réplicas de archivos al leaf-set de un nodo entrega a la red una alta disponibilidad de cada archivo.


Descargar ppt "Francisco Gamboa Herrera Tanya Pérez Herrera 26 Noviembre 2010."

Presentaciones similares


Anuncios Google