8
Pauta, Quito / Implementación de un sistema basado en BitTorrent. Resumen En la actualidad la gestión y distribución de archivos en la red tiene una gran demanda. Normalmente existen varias formas por las cuales estos archivos son adquiridos y distribuidos por la red. En el presente documento presenta la implementación, configuración y puesta en marcha de un sistema basado en BitTorrent, con la funcionalidad de distribuir archivos que están fragmentados, para su posterior ensamblaje. Palabras clave: servidor, bittorrent, torrent, sistema torrent. Abstract At present the management and distribution of files in the network has high demand. Normally there are several ways to acquire and distribute on the network. This paper presents the implementation, configuration and putting in march of system based on BitTorrent, with functionality of distributing files that are fragmented, for later assembly. Keywords: Server, bittorrent, torrent, torrent system. 1, Estudiante de Ingeniería de Sistemas mención Gestión, Universidad Politécnica Salesiana sede Cuenca. [email protected] 2 Estudiante de Ingeniería de Sistemas mención Gestión, Universidad Politécnica Salesiana sede Cuenca. [email protected] Jhonny Pauta Pintado ¹, Paúl Andrés Quito² Universidad Politécnica Salesiana IMPLEMENTACIÓN DE UN SISTEMA BASADO EN BITTORRENT 1

BitTorrent IEEE

Embed Size (px)

DESCRIPTION

Instalacion de un sistema Bit torrent

Citation preview

6Pauta, Quito / Implementacin de un sistema basado en BitTorrent.

Jhonny Pauta Pintado , Pal Andrs QuitoUniversidad Politcnica Salesiana

[footnoteRef:1] [1: ]

IMPLEMENTACIN DE UN SISTEMA BASADO EN BITTORRENTResumen

En la actualidad la gestin y distribucin de archivos en la red tiene una gran demanda. Normalmente existen varias formas por las cuales estos archivos son adquiridos y distribuidos por la red. En el presente documento presenta la implementacin, configuracin y puesta en marcha de un sistema basado en BitTorrent, con la funcionalidad de distribuir archivos que estn fragmentados, para su posterior ensamblaje.

Palabras clave: servidor, bittorrent, torrent, sistema torrent.

1, Estudiante de Ingeniera de Sistemas mencin Gestin, Universidad Politcnica Salesiana sede Cuenca. [email protected] Estudiante de Ingeniera de Sistemas mencin Gestin, Universidad Politcnica Salesiana sede Cuenca. [email protected]

Abstract

At present the management and distribution of files in the network has high demand. Normally there are several ways to acquire and distribute on the network. This paper presents the implementation, configuration and putting in march of system based on BitTorrent, with functionality of distributing files that are fragmented, for later assembly.

Keywords: Server, bittorrent, torrent, torrent system.

1. IntroduccinEn la actualidad se manejan gran cantidad de archivos en Internet, estos archivos son manejados por grandes cantidades de personas, las cuales distribuyen y gestionan estos archivos, existen herramientas capaces de facilitar la distribucin de los mismos, haciendo que la comunidad entera pueda obtener archivos segn la necesidad del momento.Para iniciar con el desarrollo del tema, primero se hablar de los conceptos necesarios sobre las herramientas con las cuales se trabajar, posteriormente se tratar sobre el proceso de instalacin de dichas herramientas adems de la configuracin necesaria para el correcto funcionamiento. Finalmente se realizaran las pruebas de funcionamiento necesarias para verificar la eficiencia de nuestro servidor.2. Desarrollo2.1. Conceptos2.1.1. Virtualizacin

La tecnologa de la virtualizacin ejecuta aplicaciones o sistemas operativos completos que muchas de las veces por costos o espacio son imposibles adquirirlos de manera fsica, por lo que son de alguna manera simulados dentro de una infraestructura, la cual compartir recursos necesarios para que el sistema a simular pueda ser ejecutado adecuadamente. [1]2.1.2. VirtualBox

Figura 1, Logo de VirtuaBox, tomada de: https://www.virtualbox.org/VirtualBox us una potente producto que ayuda a la virtualizacin, ya sea con fines empresariales o simplemente para el uso domstico. VirtualBox es ampliamente rico en caractersticas que brinda un alto rendimiento, adems de cdigo abierto con una licencia GPL, y de su presentacin multiplataforma con la cual se podr ejecutar en varios sistemas operativos de uso general. [2]2.1.3. UbuntuUbuntu es un sistema operativo con licencia GPL, es una distribucin de Linux muy utilizada ya que brinda facilidad de entorno con grandes caractersticas que ayudaran a tareas de desarrollo que estn orientadas al libre acceso, cuenta con una gran estabilidad por lo que le hace uno de los sistemas operativos de Linux mas utilizados.2.1.4. Apache

Figura 2, Logo de Apache, tomada de: http://httpd.apache.org/Apache es un servidor HTTP (Protocolo de Transferencia de Hipertexto) gratuito y de cdigo abierto el cual es utilizado mayoritariamente por instituciones o universidades, este servidor al ser de cdigo abierto est en constante mantenimiento y mejoras debido a su comunidad de desarrolladores hacindolo robusto y estable. [3]2.1.5. PHP

Figura 3, Logo de PHP, tomada de: http://php.net/download-logos.phpPHP (Hypertext Preprocessor) es un lenguaje de programacin de cdigo abierto, el cual est orientado para el desarrollo web y adems puede ser insertado dentro de HTML (Lenguaje de Marcas de Hipertexto).Este lenguaje es bastante sencillo de implementar, pero a la vez ofrece grandes caractersticas y funcionalidades. [4]2.1.6. MySQL

Figura 4, Logo de MySQL, tomada de: http://www.mysql.comEl software MySQL ofrece caractersticas como rapidez, multi-hilo, multiusuario, adems de un servidor de Base de Datos SQL robusto, que cuenta con licencia pblica y otra comercial. Este sistema de gestin de base de datos relacional, est diseado para gran carga de trabajo y mantener estabilidad en momentos de alta demanda. [5] 2.1.7. RivetTrackerEs una aplicacin escrita en cdigo PHP, el cual es un rastreador de BitTorrent que utiliza la base de datos MySQL, y es un buen gestor que servir para implementar el sistema BitTorrent, ya que por su fcil instalacin y gestin ayudara con el proyecto y su finalidad.2.1.8. BitTottentEs un sistema de descargas de archivos punto a punto, la funcionalidad del mismo es que cuando el usuario final busca determinado archivo y lo desea adquirir, BitTorrent descarga partes del archivo de otros usuarios hasta que las partes descargadas puedan ensamblarse y proporcionar el archivo completo. [6]2.2. Instalacin2.2.1. RequerimientosPara iniciar la instalacin de las herramientas necesarias que harn posible que el servidor cumpla las funciones requeridas, se deber contar con un sistema operativo que soporte dichas herramientas, adems de tener recursos que hagan posible el desarrollo del proyecto.

2.2.2. Instalar servidor LAMPEl servidor LAMP (Linux, Apache, Mysql, Php), es una herramienta que ofrece funcionalidad con mdulos para el desarrollo de un servidor web.Para la instalacin de este servidor, se deber ejecutar la siguiente lnea de comando, para esto nos dirigimos al terminal de Ubuntu:sudo apt-get install lamp-server^

Figura 8. Instalacin de servidor LAMP.

Durante la instalacin se pedir la configuracin de MySQL, se deber ingresar la informacin necesaria para continuar con la instalacin.2.2.3. Instalacin de paquetes adicionales de PHPPara que PHP funcione correctamente y se complemente adecuadamente a las herramientas que se instalarn en el servidor. sudo apt-get install libapache2-mod-php5 php5-mcryptsudo apt-get install mysql-server

2.2.4. Descarga de RivetTrackerPara descargar el servidor RivetTracker, se deber abrir la terminal y digitar el siguiente comando, con el cual se descargaran los paquetes del mismo.wget --trust-server-name http://downloads.sourceforge.net/project/rivettracker/rivettracker/RivetTracker%201.03/rivettracker_1-03.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Frivettracker%2Ffiles%2F&ts=1392807657&use_mirror=optimate - See more at: http://enavas.blogspot.com.es/2014/02/rivettracker-monta-tu-propio-tracker.html#sthash.CwN22lVk.dpufUna vez descargado el servidor, se deber descomprimir con el siguiente comando:unzip rivettracker_1-03.zipDespus de deber mover la carpeta a la ubicacin que ofrece el servidor Apache, para esto digitamos:mv /var/www/rivettracker /var/www/tracker

2.3. ConfiguracinPara poner en funcionamiento el servidor BitTorrent, se debern realizar ciertas configuraciones que permitirn su uso en el presente trabajo.2.3.1. Configuracin del servidor RivetTrackerPara la configuracin del servidor, se deber ingresar al navegador web e introducir la siguiente direccin con la cual se iniciara las configuracioneshttp://localhost/tracker/install.phpAparecer una pantalla de inicio, se deber seleccionar la segunda opcin ya que es una configuracin inicial.

Posteriormente se mostrar una nueva pantalla, en la cual se ingresara los datos que se requieren; Usuario administrado de la base de datos. Contrasea del administrador. Nombre del host del servidor. Usuario de la base de datos (nuevo). Contrasea del nuevo usuario. Nombre de la base de datos.

Como se aprecia en la figura, una vez ingresado los datos, continuaremos la configuracin dando clic en Install. A continuacin se introducirn datos para configurar el servidor. Nombre del usuario que podr subir torrents al tracker. Contrasea del usuario. Usuario administrador del tracker. Contrasea usuario administrador. URL del tracker, en este caso la direccion IP del servidor.

Luego se dar la opcin Create Config File, que ser el fichero de configuracin que posteriormente podrn ser editados. Si todo sale como lo previsto nos aparecer una pgina informativa.La informacin que aparece nos indica: Creacin del archivo de configuracin config.php Terminado el proceso, borrar install.php Verificar que los directorios torrents y rss tengan los permisos necesarios.

3. Pruebas de FuncionamientoEn busca de ingresar e interactuar con el servidor torrent se han creado archivos torrents para poder compartir la informacin mediante dicho servidor.Para crear el archivo torrent utilizamos la aplicacin llamada Transmission, como podemos ver en la imagen.

Luego nos vamos al men y elegimos la opcin de nuevo y seleccionamos el documento que vamos a compartir y en la opcin de los rastreadores colocamos http://192.168.1.106/tracker/announce.php y luego damos clic en nuevo y luego se generara el archivo torrent.

Una vez creado el archivo torrent, procedemos a abrir el navegador con la direccin http://localhost/tracker/index.php, la cual nos dirigir a la siguiente pgina:

Damos clic en Add Torrent to tracker database y nos mostrara la siguiente ventana:

Seleccionamos el archivo torrent, activamos la segunda casilla y escribimos la direccin del archivo que vamos a compartir.

Agregamos el archivo a la base de datos y luego nos mostrar la informacin del torrent:

Luego aparecer en la pantalla principal el torrent que ya est listo para ser compartido.

Desde un cliente vamos a utilizar el archivo torrent para descargar el archivo compartido utilizando utorrent.

Una vez agregado se proceder a descargar el archivo como se muestra en las siguientes imgenes:

4. ConclusionesExisten herramientas capaces de ayudar a desarrollar y complementar sistemas informticos complejos, dichas herramientas ayudan que una aplicacin determinada con un fin especfico pueda funcionar correctamente, y no solo eso sino potenciar y agregar nuevas caractersticas poniendo a punto el sistema con la finalidad de que cumpla los requerimientos establecidos. Una de las herramienta que se manej e implemento en el presente proyecto, es BitTorrent la cual nos muestra como este sistema es capaz de proporcionar descargas de archivos los cuales son divididos y se encuentran en distintas ubicaciones, con la finalidad de que ese archivo pueda ser alcanzado no solo en una sino en varias ubicaciones.

5. Referencias

[1] J. G. Villalonga, "Vistualizacin de la infrestructura informtica".[2] O. V. Box, "Definicion de Virtual Box," [Online]. Available: https://www.virtualbox.org/.[3] Apache, "Qu es Apache?," [Online]. Available: https://www.apache.org/foundation/.[4] T. P. Group, "PHP: Qu es PHP? - Manual," 2015. [Online]. Available: http://php.net/manual/es/intro-whatis.php.[5] M. Widenius and D. Axmark, MySQL Reference Manual: Documentation from the Source, O'Reilly Media, Inc., 2002. [6] A. Tanenbaum and M. Van Steen, Sistemas Distribuidos: Principios y Paradigmas, Mxico: Pearson Educacin, 2008.