eMule

De Wikipedia, la enciclopedia libre
(Redirigido desde «Emule»)
Saltar a: navegación, búsqueda
eMule
EMule mascot.svg
Emule screenshot.png
Emule ejecutándose en windows 7.
Desarrollador
Equipo de eMule
www.emule-project.net
Información general
Diseñador Merkur
Última versión estable 0.50a
7 de abril de 2010; hace 4 años (2010-04-07)
Género P2P
Programado en C++
Sistema operativo Windows (Variante multiplataforma: aMule)
Licencia GPL
Idiomas Multilenguaje (43 idiomas)[1]
En español Sí 

eMule es un programa para intercambio de archivos con sistema P2P utilizando el protocolo eDonkey 2000 y la red Kad, publicado como software libre para sistemas Microsoft Windows. Está escrito en C++.

Creado en un principio como alternativa al programa eDonkey, en poco tiempo lo superó en funciones, y sumando el hecho de que era libre y gratuito, entre otros motivos, lograron que en poco tiempo lo superase en popularidad para convertirse en uno de los programas más usados por los usuarios de P2P. Existen también múltiples programas derivados con el objetivo de portarlo a otros sistemas operativos, como lMule, xMule o aMule.

Historia[editar]

El proyecto eMule fue iniciado el 13 de mayo de 2002 por Hendrik Breitkreuz (también conocido como Merkur) que no estaba satisfecho con el cliente original de eDonkey2000. Su nombre es un apócope de electronic mule, en inglés literalmente mula electrónica, haciendo referencia al eDonkey de donde se origina (burro electrónico).

Con el tiempo, siete desarrolladores más se unieron al proyecto. El código fuente se publicó por primera vez como la versión 0.02 en SourceForge el 6 de julio del mismo año. eMule fue lanzado por primera vez como binario el 4 de agosto en la versión 0.05a. El 'sistema de créditos' fue implementado por primera vez el 14 de septiembre en la versión 0.19a. El sitio web del proyecto fue lanzado el 8 de diciembre. Desde ese momento, eMule ha sido descargado alrededor de 300 millones de veces (cifras de mayo de 2007).

A mediados de 2006, el proyecto estaba formado por dieciséis personas: dos desarrolladores, dos coordinadores de proyecto (incluyendo al fundador, Breitkreuz), tres testeadores y nueve depuradores. El sitio oficial es mantenido por siete desarrolladores y cuatro moderadores o administradores.

Características[editar]

  • Intercambio directo de archivos entre sus clientes.
  • Recuperación rápida de partes corruptas.
  • El uso complementario de una red sin servidores, denominada Kademlia, de prometedoras expectativas; además en algunos mods (versiones modificadas) se ha implementado el uso de la opción Webcaché como método extra y de ayuda para descargar archivos (ver eMule MorphXT).
  • El hecho de que, al estar licenciado bajo GPL, cualquier usuario puede colaborar y modificarlo libremente, es la razón por la que han proliferado toda una serie de modificaciones (mods) del programa, como eMule MorphXT, Xtreme, Phoenix, Plus o NeoMule. Existen incluso proyectos independientes basados en su código como los clientes eMule para otros sistemas operativos, como aMule, que corre bajo el sistema GNU/Linux y Mac OS X Todo ello contribuye a una continua mejora tanto del programa original, como de sus derivados.
  • Usa un sistema de créditos por el cual quien más sube a la red más descarga, si bien puede funcionar también con este sistema desactivado.

Los créditos permiten avanzar más rápido en la cola de espera de un cliente, de forma que se pueda conseguir antes una posición adecuada para descargar. Ya que los créditos se registran de forma descentralizada en cada uno de los usuarios de la red para evitar que sean falsificados, únicamente tendremos créditos en los usuarios a los que le hayamos subido algún archivo (aunque como sólo afectan en el avance en la cola de espera, podemos descargar de un usuario al que nunca le hayamos subido un fichero). De cada usuario se descargan partes de un fichero (que puede estar siendo descargado en ese momento de otros usuarios) que se ensamblan al finalizar para formar el fichero completo. Esta red P2P resulta especialmente útil cuando los ficheros que se pretenden descargar son de gran tamaño. Otra de las ventajas de esta red es la posibilidad de encontrar archivos muy poco comunes.

  • Su amplia implantación, así como su carácter descentralizado lo han hecho el preferido por la mayor parte de los usuarios, dispuestos a “compartir contenidos”. Esas mismas causas son las que han levantado la polémica sobre la necesidad o no de una legislación internacional que vele por la defensa de los derechos de propiedad intelectual y sancione actos que los puedan vulnerar.
  • Cuenta con la posibilidad de enviar mensajes a usuarios de la red eDonkey 2000 conectados a las descargas en curso y de un chat IRC para buscar información sobre lo que interese a los usuarios.

Funciones clave[editar]

  • Ofuscación del protocolo. Esta función (implementada por primera vez en la versión 0.47b) sirve para evitar que las conexiones del eMule sean detectadas y bloqueadas por los ISP. La Ofuscación de Protocolo es una característica que hace que eMule esconda su protocolo al comunicarse con el servidor u otros clientes. Sin ofuscación, cada comunicación de eMule tiene una estructura predeterminada que puede ser fácilmente reconocida e identificada por un observador. Si se activa esta característica, toda la comunicación de eMule aparenta a primera vista estar compuesta de datos aleatorios y ya no es posible realizar fácilmente una identificación automatizada. Esto ayuda en situaciones en las que mediante identificación de paquetes el protocolo eMule es injustamente discriminado o incluso completamente bloqueado. No hay que confundirla con un modo de proporcionar anonimato o "invisibilidad", ni tampoco tiene que proteger completamente contra observadores con los medios y tiempo suficientes. Además, si el administrador de red tiene una buena razón legal para bloquear eMule (por ejemplo, una red empresarial restringida), saltarse la restricción puede causar otras consecuencias indeseadas.
  • Compartir chunks. Los archivos se pueden compartir aunque no estén completamente bajados. Una vez que un usuario tiene una parte de 9500 KB que ha podido ser verificada, eMule la pone a disposición del resto de la red.
  • Detección de errores. eMule utiliza algoritmos de detección de errores. De esta manera es casi imposible que se corrompan los archivos que se descargan. El sistema AICH (Advanced Intelligent Corruption Handling) utiliza el método de hashtree para fragmentar en trozos de archivo de 180 KB, disminuyendo muy notablemente la cantidad de datos que hay que volver a bajar para corregir un error de transmisión.
  • Transferencias comprimidas. Cada vez que eMule transmite datos, los comprime con la biblioteca zlib para ahorrar ancho de banda, de forma completamente transparente al usuario.
  • Independencia de los nombres de archivo. En otros programas, cuando se renombra un archivo, éste ya no se considera el mismo. eMule en cambio, permite cambiar los nombres, pues utiliza un sistema que reconoce los archivos por sus contenidos y no por la denominación, por ello puede ser que descargues algo que no corresponda con el nombre. Es posible consultar todos los nombres que se le asignan al mismo archivo.
  • Sistema de créditos y colas. Se recompensa a los usuarios que han subido más datos dándoles más prioridad a la hora de progresar dentro de la cola de espera. Los modificadores se calculan con base en la cantidad de datos transferidos entre dos clientes, el cual directamente afecta a la valoración de las peticiones de clientes y su posición en la cola.
  • Comentarios para los archivos. eMule permite calificar la calidad de un archivo y escribir comentarios sobre cada archivo haciendo que otros usuarios los puedan leer. Gracias al uso de la red Kad, se pueden buscar comentarios de archivos incluso antes de empezar a descargarlo, pudiendo así saber de antemano si el archivo tiene buena/mala calidad o si está corrupto.
Icono Significado
Emule FileRating 0 NotRated.gif No comentado
Emule FileRating 5 Excellent.gif Excelente
Emule FileRating 4 Good.gif Bueno
Emule FileRating 3 Fair.gif Regular
Emule FileRating 2 Poor.gif Pobre
Emule FileRating 1 Invalid Corrupt Fake.gif No Válido / Corrupto / Fake
  • Ficheros de Colección. eMule permite crear ficheros en un formato especial nombrado colección de eMule. Este fichero contiene un conjunto de enlaces de eMule. Es posible bajarlo como un conjunto y guardar toda la colección de ficheros como un conjunto, aunque cada descarga se gestiona independientemente.
  • Filtro de direcciones. eMule tiene la posibilidad de prohibir cualquier tipo de acceso por parte de determinadas direcciones IP. La lista de estas direcciones puede ser mantenida automáticamente por eMule. El propósito del filtro de direcciones es impedir la descarga de ficheros falsos (fakes) o filtrar direcciones consideradas non-gratas. El uso del filtro de direcciones no mejora el anonimato en el uso del eMule, ya que es imprescindible que el programa conozca la dirección del cliente con el que realiza una transferencia.
  • Previsualizar archivos multimedia. eMule permite la visualización de diversos tipos de archivos, como por ejemplo de audio y vídeo, aunque el archivo no se haya descargado completamente. Desde la web oficial se recomienda el VLC media player, aunque se puede configurar para usar cualquier otro programa.
  • Cliente IRC. eMule incluye un cliente para chat en las redes IRC.
  • Servidor Web. eMule incluye un servidor web. Una vez activado por el usuario se pueden controlar las funciones básicas de eMule desde cualquier navegador web, desde cualquier lugar del mundo.
  • Multilingüe. eMule puede funcionar en muchos idiomas diferentes incluido el castellano. Gracias a la implementación del Unicode, eMule puede funcionar en cualquier idioma, incluidos los idiomas ideográficos, y los de escritura de derecha a izquierda.

eMule ha sido diseñado para funcionar mejor con archivos grandes como imágenes ISO, archivos de vídeo y audio, etc. Se considera que un archivo es grande si ocupa más de 10 MB y pequeño si ocupa menos. Por este motivo es mejor agrupar los ficheros pequeños utilizando programas compresores. Los más usados son WinZip, 7-Zip y WinRar

Hay que tener en cuenta que si se utiliza eMule en una configuración que incluya router se hace necesario abrir los puertos correspondientes para mejorar la conectividad con el resto de nodos.

Funcionamiento de las redes[editar]

Actualmente, eMule dispone de dos redes: la red clásica basada en servidores eD2k y una red descentralizada (Kad) que no hace uso de servidores y está basada en la Kademlia. A continuación se explican los conceptos básicos de funcionamiento, y posteriormente cómo consiguen estos objetivos cada una de las dos redes:

  • Identificación de archivos. Todos los archivos tienen asociado un valor de hash, una clave hexadecimal que identifica de forma única un archivo, aunque éste tenga diversos nombres, de manera que un mismo archivo que tengan diferentes usuarios, aunque alguno de ellos haya modificado el nombre, continúa siendo el mismo archivo. Además, todos los archivos se separan en bloques de 9.500 KB y de cada una de estas partes se calcula su hash MD4, de manera que el valor hash final del archivo es el resultado de aplicar el hash MD4 a la concatenación de los valores hash de todas sus partes. En los enlaces ed2k:// es imprescindible especificar el hash del archivo y también su tamaño correcto. El conjunto de hash de las partes puede incluirse opcionalmente en el enlace, aunque lo más habitual es que dicho conjunto se obtenga automáticamente a través de los clientes que comparten ese archivo.
  • Identificación de otros clientes. Cada usuario tiene asignado un valor hash único y permanente que se encuentra protegido mediante un algoritmo de cifrado de clave pública.
  • Descarga de datos. Una vez un cliente ha encontrado una fuente para la descarga de un cierto archivo, se pone en contacto para pedir un sitio a su cola de descargas. La fuente reserva un sitio en su cola, que hay que mantener contactando periódicamente con la fuente (se requiere una vez cada media hora). Cuando la posición en la cola llega al primer lugar, la fuente abre una conexión con el cliente para proceder a subir el archivo.

Red de servidores[editar]

Para conectarse a esta red hay que conocer la dirección IP del servidor. Una vez conectados a un servidor, éste puede informarnos de la existencia de otros servidores. Con el fin de mantener actualizada esta lista, los servidores están conectados entre sí. Cuando un nodo se conecta a un servidor le comunica los archivos que quiere compartir. Para buscar un archivo se envía la consulta a uno o más servidores. Cada servidor responde con la lista de archivos de los que dispone. Para conocer las fuentes de un determinado archivo, se le pide esta información a uno o más servidores. Cada servidor responde con una lista de nodos que comparten el archivo solicitado.

La lista de servidores que presenta eMule puede ser actualizada, permitiendo búsquedas más precisas y extensas y encontrar servidores más rápidos, entre otras cosas.

Existen servidores falsos que se dedican a recoger información sobre quién comparte cada archivo. Por este motivo se recomienda obtener las listas de servidores de fuentes fiables. La descarga de una lista de servidores puede hacerse automáticamente.

Red Kad[editar]

La red Kad es una red totalmente descentralizada donde todos los nodos son iguales. Esto facilita que eMule pueda sobrevivir a una posible caída de la red de servidores. Para conectarse a esta red hay que conocer la dirección IP de otro nodo, pero es posible conectarse a partir de los nodos obtenidos de la red de servidores. Cada nodo conoce una pequeña parte de la red, de manera que el tamaño de la red puede crecer tanto como haga falta sin afectar al rendimiento. Cuando un nodo se conecta, almacena los identificadores de los archivos que quiere compartir dentro de otros nodos, escogidos en función del identificador del archivo. Cuando se quiere bajar un archivo, se localizan los nodos que lo indexan y estos nodos devuelven la lista de fuentes para este archivo concreto. La búsqueda por nombre funciona de una manera parecida, guardando el nombre del archivo dentro de otros nodos escogidos en función de cada palabra del nombre. Una búsqueda en Kad se ejecuta siempre en toda la red.

Intercambio de fuentes[editar]

Cuando un cliente se conecta a otro que es fuente de un archivo, le puede pedir la lista de otras fuentes que conoce. Esta manera de obtener fuentes es muy eficiente y libera la carga de trabajo de las redes de servidores y Kad.

Buscar archivos[editar]

Buscar archivos en eMule significa normalmente que a todos los servidores de la lista de servidores se les pregunta si conocen a algún cliente que tenga un archivo que coincida con los términos de la búsqueda. Los propios servidores no almacenan ningún archivo, sólo generan una lista de los archivos de los usuarios conectados. La función de búsqueda avanzada de eMule permite hacer búsquedas precisas para los archivos de la red. Una búsqueda realizada con precisión es mejor, ya que las búsquedas generales suponen una considerable carga para los servidores. Por este motivo, eMule sólo busca un máximo de doscientos uno resultados de cualquier búsqueda, o trescientos si el servidor y nuestra versión soportan compresión gzip.

eMule nos permite utilizar diferentes opciones de búsqueda, tales como el tamaño máximo o mínimo, los tipos de archivo, etc. Una de las opciones que podemos seleccionar es el método de búsqueda, es decir, la manera que eMule utilizará para hacer las búsquedas. Hay cinco métodos:

  • Automático. Determina automáticamente el tipo de búsqueda (Servidor o red Kad) de acuerdo a la conexión del servidor al que se esté conectado.
  • Servidor. Sólo se buscará en el servidor dónde el cliente está actualmente conectado.
  • Global (Servidor). Se pregunta a todos los servidores de la lista, pero a cada uno individualmente.
  • Kad. Se busca en toda la red Kad. Con este método no se buscará en la red eD2k. Los resultados pueden tardar un rato. Si una expresión de búsqueda popular no devuelve resultados, entonces es posible que el puerto UDP esté bloqueado por un cortafuegos o un enrutador.
  • Filedonkey. Motor de búsqueda basado en web.

Existen páginas web con enlaces en el formato ed2k:// (comúnmente llamados elinks). Al apretar el botón del ratón sobre uno de estos enlaces, se añade automáticamente la descarga a eMule.

Emule comparada con otras redes p2p[editar]

Una de las principales ventajas de emule es su gran base de usuarios actualmente de cinco a diez millones,[2] que le hace excelente para encontrar toda clase de contenido. Se dice que es la más completa aplicación del protocolo ed2k y sus extensiones. Emule emplea AICH, por lo que su manejo de la corrupción de archivos es equiparable a BitTorrent. eMule también emplea intercambios de fuentes, lo que le permite reducir sustancialmente la carga en los servidores y en Kad.

Fakes o archivos falsos[editar]

Son archivos descargados mediante éste u otros programas cuyos títulos no corresponden con sus contenidos. Algunos usuarios cambian el nombre de los archivos que comparten para descargar contenido para adultos en ordenadores compartidos de una manera no explícita, confundir a los que los descargan con motivo de burla o porque quieren sabotear la descarga de ciertos contenidos. Otros fakes más severos son los que algunos usuarios usan para infectar otros ordenadores, cambiándole el nombre a algunos virus por el de otros programas. Los fakes consistentes en cambiar el nombre a archivos de audio y documentos de texto o eBooks son menos comunes.

Emule proporciona varios métodos para prevenir y combatir los fakes. Existe la posibilidad de descargar primero la primera y la última parte de los archivos de vídeo, lo que permite su previsualización y por tanto detectar una fake antes de descargar completamente el archivo. También se puede examinar todos los nombres de todas las fuentes de un mismo archivo antes de descargarlo, si fueran muy diferentes (por ejemplo, una fuente "National Geographic" y las demás "Hot Lads") posiblemente se trate de un fraude. Revisar los comentarios de un archivo también permite ver si otro usuario de emule lo ha denunciado como una suplantación previamente. Finalmente, comparar entre los diferentes ficheros encontrados en la lista de búsqueda nos puede alertar si alguno de ellos tiene un tamaño o duración claramente diferente a los demás.

Además de los fakes existen ficheros nocivos especialmente diseñados para atraer incautos a páginas web o instalar software malicioso en los ordenadores. Dichos programas suelen ser fáciles de distinguir por tres características:

  1. Son ficheros tipo ZIP, RAR o EXE.
  2. Suelen ocupar menos de 10 MiB (en realidad suelen ser enlaces a páginas web o pequeños programas),
  3. Tienen más de 300 fuentes (y un porcentaje de clientes con él completado del 100%) y se descargan asombrosamente rápido.

Una fórmula fácil para detectar estos programas es escribir en la caja de búsquedas WRrwrkmcnmcdls00 o cualquier otra palabra trivial sin sentido. Todos los resultados de la búsqueda serán este tipo de ficheros maliciosos, solo hay que seleccionarlos todos y marcarlos como spam (ficheros no deseados).

Malas prácticas compartiendo ficheros[editar]

eMule no es el programa más rápido en descargar un fichero dado, pero sí muy eficiente gestionando múltiples descargas aunque sean grandes. Para evitar tiempos de espera demasiado grandes es mucho más cómodo compartir, por ejemplo, un álbum comprimido (típicamente extensiones ZIP o RAR) que no una docena de archivos de audio individualmente. El tiempo de la descarga de datos será el mismo pero el tiempo de espera será doce veces menor ya que es el mismo para un archivo grande que pequeño.

Para ahorrar tiempos de espera grandes es bueno disponer de un fichero con muchas fuentes (muchas copias idénticas en la red eD2K por ejemplo). Por eso es importante compartir copias exactas de los ficheros descargados, y no copias ligeramente modificadas. Un ejemplo son los ficheros que contienen metadatos (como los ficheros mp3 en los que uno puede editar el nombre del autor, álbum o año de edición. Alterar estos datos es alterar el fichero).

El máximo número de descargas que un usuario puede tener activas simultáneamente depende de la capacidad en general de su computadora, pero uno de los factores limitantes más habituales es el espacio libre en la unidad de disco en la que se almacenan tanto los ficheros temporales como los ficheros descargados. No es una mala idea tener la carpeta de salida en una unidad externa (Disco duro externo, memoria USB) o incluso tener una partición de disco dedicada a almacenar los ficheros temporales.

Las opciones para comentar los ficheros descargados deberían usarse para calificar la calidad del archivo en cuanto a su nivel de compresión, calidad de imagen y sonido, calidad de un escaneado, integración de subtítulos o características destacables. Nuestra opinión de si una película o canción es buena o mala no es relevante, porque si alguien desea descargar el fichero se supone que será de su agrado.

Mods del eMule[editar]

El hecho de que eMule sea un programa de código abierto ha favorecido la creación de programas derivados de la modificación del código del eMule original (mods). Estas versiones modificadas, sin perder la compatibilidad con el eMule original, añaden funcionalidades ausentes en este, le dan un nuevo aspecto o lo adaptan a usos concretos o a las necesidades de ciertos usuarios. El desarrollo de algunas de estas variantes corre parejo al del eMule original, de manera que el equipo que mantiene cada mod suele mantener actualizado su programa basándose en las últimas versiones publicadas del eMule. Otros mods, sin embargo, se han ido desarrollando de manera totalmente independiente del eMule original. Algunas de las mejoras y funciones desarrolladas originalmente en estos mods se han incorporado posteriormente en la versión original del programa.

Algunos de los mods de eMule más populares son:

El concepto de mod no debe confundirse con el de cliente. Un programa cliente del eMule, o mejor dicho de la red eDonkey 2000, es cualquier programa capaz de compartir archivos cumpliendo con los protocolos de dicha red, esté basado en el código del eMule o no.

Falsos mods, malware y usurpación del nombre[editar]

Dado que el eMule es fácilmente modificable debido a su código abierto de libre acceso, en numerosos casos se ha explotado esta particularidad para crear programas que incluyen limitaciones o perjuicios para el usuario, como publicidad (adware), búsquedas restringidas y con frecuencia diversos tipos de malware y spyware. Algunos sitios web solicitan un pago por la descarga del programa, siendo el eMule original totalmente libre y gratuito.

Diversas páginas en internet que ofertan estos falsos programas se muestran como legítimas e incluso imitan la apariencia del sitio de eMule original e incluyen su nombre en su dirección, siendo tal vez la más notoria de estas páginas falsas emule.com, pero también emule.es y otras con nombre similar.

Véase también[editar]

Referencias[editar]

Enlaces externos[editar]