stringtranslate.com

eMule

eMule es una aplicación gratuita para compartir archivos de igual a igual para Microsoft Windows . Fundado en mayo de 2002 como una alternativa a eDonkey2000 , eMule ahora se conecta tanto a la red eDonkey como a la red Kad . Las características distintivas de eMule son el intercambio directo de fuentes entre nodos cliente, la rápida recuperación de descargas corruptas y el uso de un sistema de crédito para recompensar a quienes suben archivos con frecuencia. Además, eMule transmite datos en formato comprimido zlib para ahorrar ancho de banda.

eMule está codificado en C++ utilizando Microsoft Foundation Classes . Desde julio de 2002, eMule es software libre , publicado bajo la Licencia Pública General GNU ; su popularidad ha llevado a que el código base de eMule se utilice como base para los clientes multiplataforma aMule , JMule , xMule , junto con el lanzamiento de muchos mods de eMule (modificaciones del eMule original) en Internet.

En octubre de 2023, es el quinto proyecto más descargado en SourceForge , con más de 693 millones de descargas. [5]

Posteriormente, la comunidad reinició el desarrollo como eMule Community ; la última versión estable es 0.70a. [4]

Historia

El proyecto eMule fue iniciado el 13 de mayo de 2002 por Hendrik Breitkreuz (también conocido como Merkur), quien no estaba satisfecho con el cliente original eDonkey2000 . Con el tiempo, más desarrolladores se unieron al esfuerzo. La fuente se publicó por primera vez en la versión 0.02 y se publicó en SourceForge el 6 de julio de 2002.

eMule se lanzó por primera vez como binario el 4 de agosto de 2002 en la versión 0.05a. El 'Sistema de Crédito' fue implementado por primera vez el 14 de septiembre de 2002 en la versión 0.19a. El sitio web del proyecto eMule se puso en marcha el 8 de diciembre de 2002.

Nodos en la red Kad

Las versiones actuales (v0.40+) de eMule han agregado soporte para la red Kad . Esta red tiene una implementación del protocolo Kademlia , que no depende de servidores centrales como lo hace la red eDonkey , sino que es una implementación de una tabla hash distribuida .

También se agregó en versiones recientes la capacidad de buscar usando Unicode , lo que permite buscar archivos en alfabetos no latinos, y la capacidad de buscar en servidores archivos con fuentes completas de archivos sin terminar en la red eDonkey .

En las nuevas versiones, se agregó una "lista de fuentes incorrectas". La aplicación agrega una dirección IP a esta lista después de una conexión fallida. Después de agregar una IP a la "lista de fuentes incorrectas", la aplicación trata esta IP como una IP "inactiva". Las IP no disponibles se prohíben por un período de 15 a 45 minutos. Algunos usuarios se han quejado de que esto provoca una pérdida de fuentes activas y, posteriormente, ralentiza la velocidad de descarga.

Otras adiciones recientes incluyen: la capacidad de ejecutar eMule desde una cuenta de usuario con privilegios limitados (mejorando así la seguridad) y AICH (para que no sea necesario volver a descargar por completo un fragmento dañado).

La versión 0.46b agregó la creación y administración de archivos de "colección eMule", que contienen un conjunto de enlaces a archivos destinados a descargarse como un conjunto.

Desde 2007, muchos ISP han utilizado la limitación del ancho de banda para los puertos P2P habituales, lo que ha provocado un rendimiento lento. [6] La versión 0.47b agrega ofuscación de protocolo y eMule seleccionará automáticamente dos números de puerto al azar en el asistente de inicio.

Conceptos básicos

Estadísticas de transferencia de archivos de v0.48a

Cada archivo que se comparte mediante eMule se procesa como una lista hash que comprende fragmentos separados de 9500 KiB utilizando el algoritmo MD4 . El hash MD4 de nivel superior , el tamaño del archivo, el nombre del archivo y varios atributos de búsqueda secundarios, como la velocidad de bits y el códec, se almacenan en los servidores eD2k y en la red Kad sin servidor .

Parámetros de búsqueda en eMule v0.50a

Los usuarios pueden buscar nombres de archivos en los servidores/kad y se les presentan los nombres de archivos y el identificador único que consiste en el hash MD4 de nivel superior para el archivo y el tamaño del archivo que se puede agregar a sus descargas. Luego, el cliente pregunta a los servidores dónde están usando ese hash los otros clientes. Los servidores devuelven un conjunto de IP/puertos que indican las ubicaciones de los clientes que comparten el archivo.

Luego, eMule solicita el archivo a sus compañeros. Luego, eMule se pondrá en cola hasta que haya un espacio de carga disponible.

Cuando se descarga y verifica una porción completa de 9.728.000 bytes (9500 KiB), el descargador también comparte estos datos, lo que ayuda a otros a descargar el archivo también.

También es posible que un cliente conozca otros clientes que también comparten ese mismo archivo. En ese caso se realiza un intercambio de fuente entre los clientes. Este intercambio de pares conocidos se realiza directamente entre pares.

Las versiones más nuevas de eMule son compatibles con AICH ( manejo inteligente avanzado de corrupción ). Su objetivo es hacer que el manejo de la corrupción de eMule sea competitivo con BitTorrent . Los hash SHA-1 se calculan para cada subfragmento de 180 KiB y se forma un árbol hash SHA-1 completo. AICH se procesa únicamente con intercambios de fuentes de igual a igual. eMule requiere que 10 pares estén de acuerdo con respecto al hash SHA-1, por lo que los archivos raros generalmente no se benefician de AICH.

ID baja

Los usuarios a los que no se puede acceder desde el exterior porque tienen un firewall , detrás de un dispositivo NAT al que no se le ha reenviado el puerto correctamente , o cuya dirección IP termina en cero (por ejemplo, 123.45.67.0) [7] obtienen una "ID baja" del servidores. Todavía pueden cargar y descargar, pero necesitan la ayuda de servidores u otros clientes kad para que otros clientes puedan acceder a ellos. Como no se les puede notificar que están frente a una cola de carga, deben sondear a sus pares si hay un espacio de carga disponible. Como no pueden conectarse a ningún otro cliente de ID baja, solo ven entre el 40% y el 60% [8] de los clientes que un ID alto puede ver. Sus puertos/ IP no se intercambian entre otros pares, lo que limita sus posibilidades de encontrar fuentes a través del intercambio de fuentes P2P puro de eMule.

Un cliente de ID baja también consume muchos más datos [9] en un servidor electrónico que un cliente de ID alta debido a las devoluciones de llamada de baja ID. Además, un liberador o un subidor pesado que utiliza un mod de liberador como MorphXT o Xtreme que se ve obligado a operar con un ID bajo (habitación de hotel, trabajo) también encontrará que tendrá poco control sobre sus prioridades de carga (especialmente los poderes compartidos) como los servidores parecen limitar el reenvío de conexiones para cada cliente, lo que convierte su cola de carga en una situación de contención en la que el primero en poder obtener el reenvío y encontrar un espacio abierto lo obtiene.

Sistema de crédito

Los créditos no son globales; se intercambian entre dos clientes específicos. El sistema de crédito se utiliza para recompensar a los usuarios que contribuyen a la red, es decir, que suben a otros clientes. El estricto sistema de colas de eMule se basa en el tiempo de espera que un usuario ha pasado en la cola. El sistema de crédito proporciona un modificador importante de este tiempo de espera al tener en cuenta la carga y descarga entre los dos clientes. Cuanto más sube un usuario a un cliente, más rápido avanza en la cola de este cliente. Los modificadores se calculan a partir de la cantidad de datos transferidos entre los dos clientes. Los valores utilizados se pueden ver en el cuadro de diálogo de detalles del cliente. Para ver esta información, haga clic derecho en cualquier usuario y elija Ver detalles.

Todos los Clientes que suben a usted son recompensados ​​por el sistema de crédito. No importa si el cliente apoya el sistema crediticio o no. Los clientes que no te apoyan no te otorgarán créditos cuando subas contenido a ellos. Los créditos se almacenan en el archivo client.met. El hash de usuario único se utiliza para identificar al cliente. Tus propios créditos son guardados por el cliente que te debe el crédito. Esto evita falsificar los créditos. No se pueden mostrar sus propios créditos.

La fórmula de cálculo del Sistema de Crédito Oficial se compone de dos ratios de la siguiente manera: [10]

Luego se comparan ambas proporciones y la más baja se utiliza como modificador. Existen algunas condiciones:

Una excepción a esta regla se aplica sólo cuando a un compañero se le asigna un "espacio de amigo" después de haber sido agregado a la lista de amigos del cliente. Esto asigna automáticamente un espacio de carga reservado para ese par para que pueda comenzar a descargar independientemente de su calificación crediticia. Solo se puede reservar un espacio para amigos para evitar cualquier forma de abuso, como la discriminación en las cargas. [11]

eMule comparado con otras aplicaciones P2P

Se dice que eMule es la implementación más completa del protocolo eD2k y sus extensiones [ ¿por quién? ] . eMule apoya a AICH, haciendo que su manejo de la corrupción sea competitivo con BitTorrent . eMule también admite intercambios de fuentes, lo que le permite reducir sustancialmente las cargas en los servidores y en Kad. Con una ID alta y descargas de fuentes confiables adquiridas previamente por el servidor y/o Kad, eMule puede mantener las fuentes pares en estos archivos de manera independiente por más tiempo después de la desconexión de eD2k y Kad.

Modificaciones de eMule

Como programa popular de código abierto, eMule tiene muchas variantes, generalmente llamadas mods. Algunas modificaciones comenzaron como bifurcaciones de versiones oficiales de eMule y luego continuaron desarrollándose de forma independiente en lugar de modificar versiones oficiales más nuevas. Un ejemplo de este tipo de mod es el obsoleto eMule Plus . Desde que eMule Plus se separó antes del lanzamiento de v0.30, la primera versión oficial que incluye Kad, eMule Plus no soporta esta característica principalmente porque el desarrollo del proyecto ha sido abandonado durante aproximadamente 4 años. Otros mods actuales siguen los lanzamientos oficiales de eMule y realizan sus propios lanzamientos en función de cada nuevo lanzamiento de la versión oficial. Dado que la Licencia Pública General GNU exige que los mods distribuidos compartan públicamente su código fuente, las funciones útiles creadas por los desarrolladores de mods se pueden incorporar rápidamente a una versión oficial.

Sitios falsos de eMule y malware

Debido a la popularidad y la naturaleza de código abierto de eMule, algunos terceros han creado versiones modificadas del mismo, que frecuentemente contienen software espía y otros programas maliciosos . Algunos sitios falsos solicitan información de la tarjeta de crédito o requieren que el usuario se registre para obtener una membresía paga. El eMule oficial es gratuito y no solicita dicha información.

Estas versiones generalmente se encuentran a través de anuncios rotativos que a veces se colocan en sitios legítimos. [12] [13]

Mods chinos del cliente eMule

easyMule de VeryCD es un cliente de eMule popular entre los usuarios chinos. Tiene una interfaz simplificada y carece de algunas configuraciones avanzadas disponibles en el cliente estándar de eMule. A partir de la versión 1.1 sólo admite búsquedas a través de la base de datos de VeryCD, aunque se aceptan enlaces externos de eD2k. Algunos criticaron a VeryCD por su nombre engañoso "Dianlv" ( chino :电驴; pinyin : Diàn Lǘ ; iluminado. 'Electronic Donkey'; generalmente el nombre chino para eDonkey o eMule) y el sitio emule.org.cn, que se llama "Dianlv". (eMule) Sitio chino" (电驴(eMule)中文网站). [14] [15]

Versión comunitaria

El 29 de julio de 2017 se lanzó una "Versión comunitaria" de eMule [16] mantenida por los usuarios del foro oficial. Esta versión está disponible para descargar en un repositorio de GitHub y se basa en la última versión oficial o beta, pero contiene funciones adicionales y correcciones de errores realizadas por la comunidad, dando prioridad a una versión más actualizada. [17]

Ver también

Referencias

  1. ^ "El proyecto eMule en SourceForge.net". eMule.SourceForge.net. 2010-04-07 . Consultado el 11 de julio de 2010 .
  2. ^ Lextrait, Vincent (enero de 2010). "La baliza de los lenguajes de programación, v10.0". Archivado desde el original el 30 de mayo de 2012 . Consultado el 14 de marzo de 2010 .
  3. ^ Fuente de eMule 0.50a Archivado el 13 de junio de 2011 en Wayback Machine : /srchybrid/lang/
  4. ^ ab "Lanzamientos". GitHub . 2021-05-13. Archivado desde el original el 6 de junio de 2021 . Consultado el 1 de junio de 2021 .
  5. ^ "Listados de proyectos principales". fuenteforge.net . Consultado el 29 de octubre de 2023 .
  6. ^ "DailyTech - Más confesiones de ISP: aceleramos el tráfico P2P". Archivado desde el original el 16 de septiembre de 2009 . Consultado el 8 de agosto de 2009 .
  7. ^ forum.emule-project.net Archivado el 27 de septiembre de 2007 en Wayback Machine Cómo se calcula una ID baja.
  8. ^ "Aumentan los clientes de baja identificación - eMule-Board oficial". emule-project.net . Archivado desde el original el 17 de enero de 2023 . Consultado el 2 de noviembre de 2007 .
  9. ^ forum.emule-project.net Archivado el 17 de enero de 2023 en la publicación técnica de lugdunummaster de Wayback Machine sobre el consumo de ancho de banda ascendente directo y colateral de un cliente de ID baja y alta en RazorBack, en este ejemplo, 20 veces más gastos generales.
  10. ^ "eMule-Project.net - Página de inicio oficial de eMule. Descargas, ayuda, documentos, noticias ..." emule-project.net . Archivado desde el original el 12 de mayo de 2008 . Consultado el 22 de mayo de 2008 .
  11. ^ "eMule-Project.net - Página de inicio oficial de eMule. Descargas, ayuda, documentos, noticias ..." www.emule-project.net . Archivado desde el original el 11 de octubre de 2007 . Consultado el 12 de octubre de 2007 .
  12. ^ "Lista de programas para compartir archivos infestados de software espía". 10 de noviembre de 2006. Archivado desde el original el 26 de febrero de 2009 . Consultado el 11 de marzo de 2009 .
  13. ^ "Sitios fraudulentos para eMule". 11 de diciembre de 2008. Archivado desde el original el 7 de marzo de 2009 . Consultado el 16 de marzo de 2009 .
  14. ^ 陈佼"每周一蛋疼":诚恳建议"电驴"改名 (en chino). cnBeta. Archivado desde el original el 20 de julio de 2010 . Consultado el 20 de julio de 2010 .
  15. ^ "VeryCD对eMule/电驴/电骡/VeryCD/EasyMule等词的混淆性宣传分析与证据" (en chino). Archivado desde el original el 5 de julio de 2010 . Consultado el 17 de septiembre de 2009 .
  16. ^ "Lanzamiento de eMule_v0.50b-no oficial: .: Corregido: minimizar en la bandeja después del cambio de escala de visualización". irwir/eMule . 29 de julio de 2017. Archivado desde el original el 11 de diciembre de 2020 . Consultado el 7 de abril de 2021 .
  17. ^ "eMule-Project.net". Archivado desde el original el 9 de agosto de 2020 . Consultado el 7 de abril de 2021 .

enlaces externos