Lantorrent Solución para el intercambio de archivos vía red local.
-
Upload
victor-adrian-quintero-guzman -
Category
Documents
-
view
221 -
download
1
Transcript of Lantorrent Solución para el intercambio de archivos vía red local.
![Page 1: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/1.jpg)
Lantorrent
Solución para el intercambio de archivos vía red local
![Page 2: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/2.jpg)
Presentación del equipo Frederic Cartallier
Product Owner. Desarrollo del sistema de encriptación y estructuras de
datos.
Bruno Jiménez Scrum Master. Desarrollo de la interfaz de la solución.
Javier Paredes Equipo. Desarrollo de la base de datos y tester.
Rodrigo Toro Equipo. Desarrollo del protocolo de comunicación.
![Page 3: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/3.jpg)
Problema
¿Por qué es útil Lantorrent?
![Page 4: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/4.jpg)
Problema Si te juntas con amigos a jugar online, pero
uno sólo de ellos tiene el juego (2GB) ¿Qué haces?
En una sucursal de una empresa, tienes un archivo, o programa importante para la comunidad ¿cómo lo traspasas?
¿Pendrive?, ¿Correo?, ¿2 GB por correo?!
![Page 5: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/5.jpg)
Paciencia… muchas paciencia
![Page 6: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/6.jpg)
Problema Y un ¿BitTorrent?... Esto es un poco más
interesante… Problemas:
Seguridad (BitTorrent es corrupto) Privacidad Velocidad (anchos de banda determinados) Borrado de programas cada 48 horas sin
descargas
![Page 7: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/7.jpg)
Lantorrent
Contexto Red Local.
Objetivo Compartir archivos.
Problema Saturación de la red.
Solución Hacer a todos partícipes.
![Page 8: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/8.jpg)
Arquitectura
![Page 9: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/9.jpg)
Arquitectura
![Page 10: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/10.jpg)
Arquitectura
![Page 11: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/11.jpg)
Problemáticas
Transmitir un solo archivo desde varias fuentes.
Obtener información de fuentes inseguras.
Relajar la carga sobre el servidor.
Transmitir diversos mensajes entre los computadores.
![Page 12: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/12.jpg)
Descargando un archivo
Descargas en Lantorrent
![Page 13: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/13.jpg)
Descargar un archivo Conceptos:
Hash Taghash Treehash Torrent
Subir un archivo: Calcular taghash archivo Verificar que el archivo no existe en el servidor Agregar archivo y su lista de torrent
![Page 14: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/14.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
Buscararchivo
Taghasharchivo
![Page 15: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/15.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
ObtenerTorrentarchivo
Torrent archivoC1 parte 1C1 parte 2C2 parte 1C2 parte 2C2 parte 3
![Page 16: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/16.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
Obtener hash
Null
![Page 17: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/17.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
Obtener hash
HashesParte 1: ####Parte 2: &&&Parte 3: ****
Comparando
taghash con hash
tree
![Page 18: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/18.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
Obtenerparte 1
Obtenerparte 2
![Page 19: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/19.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3Parte 1
Parte 2
Verificando integridad de parte 1
y 2 con hashes
![Page 20: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/20.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
Agregar TorrentC3 parte 1C3 parte 2
![Page 21: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/21.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
Obtenerparte 3
![Page 22: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/22.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3 Parte 3
Verificando integridad de parte 3 con hashes
![Page 23: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/23.jpg)
Servidor
Cliente 1 (C1) Cliente 2 (C2)
Cliente 3
Agregar TorrentC3 parte 3
![Page 24: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/24.jpg)
Servidor
Cliente 3
¿El archivo
está completo
?
Exportararchivo
Esperar 60 segundosy repetir el procesodescargando las partes restantes
NoSí
![Page 25: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/25.jpg)
Patrones de diseño Fachada: Acceso a base de datos por medio
de repositorios genéricos Singleton: Administrador repositorio Memento: Guardar estado de interfaz gráfica Repositorio: Acceso a las distintas entidades
de la base de datos por medio de repositorios genéricos
Observador: Notificación de que se ha descargado una parte de un archivo
![Page 26: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/26.jpg)
Demo de la aplicación.
![Page 27: Lantorrent Solución para el intercambio de archivos vía red local.](https://reader035.fdocuments.ec/reader035/viewer/2022062410/5665b4e81a28abb57c94a9c6/html5/thumbnails/27.jpg)
Experiencia ganada
Estructuras de datos avanzadas.
Diseño Multi-Thread.
Patrones de Diseño.
Metodología de trabajo SCRUM.