Direct Connect es una red de intercambio de archivos (P2P) parcialmente centralizada . La red de DC consta de concentradores , clientes de DC y listas de concentradores. El concentrador proporciona al cliente que se conecta a él una lista de usuarios conectados, la capacidad de usar la búsqueda y el chat avanzado incorporado . Los clientes de DC se conectan a uno o más concentradores y pueden descargar archivos directamente de otros usuarios conectados al mismo concentrador. Para su funcionamiento se utiliza el protocolo DC (NMDC), basado en los desarrollos de NeoModus, o el protocolo ADC .
En noviembre de 1999, Jonathan Hess fundó la empresa NeoModus, que ganó dinero con el programa de adware Direct Connect que escribió [1] . El primer cliente de terceros fue "DClite", que no admitía completamente el protocolo. La nueva versión de Direct Connect ya requería una clave de cifrado simple para inicializar la conexión, con esto el autor esperaba bloquear clientes de terceros. La clave fue descifrada y el autor de DClite lanzó una nueva versión de su programa compatible con el nuevo software de NeoModus. El código DClite pronto se reescribió y el programa pasó a llamarse Open Direct Connect . Entre otras cosas, su interfaz de usuario se convirtió en multidocumento (MDI) y se hizo posible usar complementos para protocolos de intercambio de archivos (como en MLDonkey ). Open Direct Connect tampoco tenía soporte de protocolo completo, pero apareció bajo Java . Un poco más tarde comenzaron a aparecer otros clientes: DCTC ( Direct Connect Text Client ), DC++ , etc.
El protocolo Direct Connect está basado en texto, en el que los comandos y los datos se transmiten en texto sin formato, sin cifrado. Actualmente, el cifrado del tráfico se implementa parcialmente y solo es posible en algunos centros. [2] El protocolo no especifica la codificación o fuente para clientes o concentradores.
La parte del protocolo para compartir archivos se basa en el concepto de "ranuras". Estos espacios corresponden a la cantidad de personas que pueden descargar del usuario al mismo tiempo. El número de ranuras se establece en el cliente.
El protocolo TCP se utiliza para conectarse al concentrador y descargar archivos . La búsqueda en modo activo funciona sobre UDP . El puerto predeterminado para conectarse al concentrador es 411.
El cliente original se llamaba NeoModus Direct Connect (NMDC para abreviar). Actualmente, la gran mayoría de los usuarios de la red utilizan numerosos clientes basados en el cliente DC++ .
A menudo, toda la red lleva el nombre de este cliente, lo cual es un error.
Los clientes se conectan a uno o más servidores, los llamados concentradores, que sirven para buscar archivos y fuentes de descarga. Los grandes centros tienen varios miles de usuarios al mismo tiempo durante las horas pico. [3]
Tabla comparativa del software más comúnmente [4] [5] utilizado para crear hubs :
Nombre | ventanas | linux | Otro sistema operativo | Lenguaje de programación | Licencia | IPv6 | Interfaz de usuario | sitio web del proyecto |
---|---|---|---|---|---|---|---|---|
PtokaX | Sí | Sí | Sí: FreeBSD | C++ | GPL v3 | Sí | gráfica (Win32), consola | www.ptokax.org |
verlihub | No | Sí | Sí: FreeBSD | C++ | GPL v2 | No | consola | www.verlihub-proyecto.org |
RusHub | Sí | Sí | Sí: FreeBSD | C++ | GPL v3 | Sí | consola | mydc.ru/rushub/ |
eje flexible | Sí | Sí | Sí: NAS de Qnap; Synology NAS | Lúa | GPL v3 | No | gráfico , consola | www.flexhub.org |
ynhub | Sí | No | No | desconocido | propiedad | No | gráfico | www.ynhub.org |
Concentrador de base de datos | No | Sí | Sí: FreeBSD | C | GPL | No | consola | sourceforge.net |
HeXHub | Sí | No | No | ensamblador | OSL 3.0 | No | gráfico | nemesis.te-home.net |
Águila | Sí | Sí | No | C | GPL | No | consola | sitios.google.com |
eximio | Sí | No | No | C# | propiedad | No | gráfico | es.rs2soft.nl |
Colmena de víboras | Sí | Sí | Sí | Pitón | GPL v2 | No | consola | código.google.com |
Nombre | ventanas | linux | Otro sistema operativo | Lenguaje de programación | Licencia | IPv6 | Interfaz de usuario | sitio web del proyecto |
En teoría, con la introducción masiva de la tecnología DHT en los clientes de DC, la necesidad de concentradores para el funcionamiento de la red puede desaparecer.
Hublist es un servidor especial que recopila y almacena información sobre concentradores activos. Muchos clientes tienen una capacidad integrada para importar una lista de concentradores de una lista de concentradores. Además, muchas hublists mantienen estadísticas y le permiten verlas a través de un navegador .
Por lo general, especifica la dirección y el puerto del concentrador.
Especificado como:
dchub://[ IP o dominio del concentrador ]:[ puerto del concentrador ]En este caso, no es necesario especificar el puerto predeterminado 411.
Si el concentrador está protegido con SSL , el enlace comienza con nmdcs:// y requiere que se especifique el puerto, incluido el puerto predeterminado.
El enlace al usuario del concentrador o la carpeta del usuario del concentrador tiene este aspecto:
dchub://[ nombre de usuario ]@[ Hub IP o Dominio ]:[ puerto del hub ]/[ruta del archivo]/[nombre del archivo]Después de hacer clic en dicho enlace, el cliente no solo se conectará al concentrador, sino que también descargará la lista de archivos del usuario especificado en el enlace y seleccionará el archivo en él, cuya ruta y nombre también se indican en el enlace.
Este tipo de enlace a un archivo se puede utilizar cuando no es posible utilizar un enlace magnético , ya que el contenido del archivo puede cambiar o el archivo aún no se ha creado.
Diferencias con algunos sistemas P2P basados en otros protocolos ( eDonkey , Gnutella y su bifurcación Gnutella2 ):
Condicionado por la estructura de la redEn la práctica, el protocolo Direct Connect tiene problemas específicos que interfieren en parte con el intercambio eficiente de archivos. Los autores del cliente DC++ desarrollaron un protocolo fundamentalmente nuevo para su solución, llamado Advanced Direct Connect (ADC), cuyo propósito es aumentar la confiabilidad, la eficiencia y la seguridad de la red de intercambio de archivos. El 2 de diciembre de 2007, se lanzó la versión final del protocolo ADC 1.0 [6] El protocolo continúa evolucionando y complementándose.