Direct Connect er et delvist centraliseret fildelingsnetværk (P2P) . DC-netværket består af hubs , DC-klienter og hublister. Hubben giver klienten, der opretter forbindelse til den, en liste over tilsluttede brugere, muligheden for at bruge søgningen og den indbyggede avancerede chat . DC-klienter forbinder til en eller flere hubs og kan downloade filer direkte fra andre brugere, der er tilsluttet den samme hub. Til drift anvendes DC-protokollen (NMDC), baseret på udviklingen af NeoModus, eller ADC -protokollen .
I november 1999 grundlagde Jonathan Hess firmaet NeoModus, som tjente penge på Direct Connect adware-programmet, han skrev [1] . Den første tredjepartsklient var "DClite", som ikke fuldt ud understøttede protokollen. Den nye version af Direct Connect krævede allerede en simpel krypteringsnøgle for at initialisere forbindelsen, med dette håbede forfatteren at blokere tredjepartsklienter. Nøglen blev knækket, og forfatteren af DClite udgav en ny version af sit program, der var kompatibelt med den nye software fra NeoModus. DClite-koden blev snart omskrevet, og programmet blev omdøbt til Open Direct Connect . Dens brugergrænseflade blev blandt andet til multi-document (MDI), og det blev muligt at bruge plug-ins til fildelingsprotokoller (som i MLDonkey ). Open Direct Connect havde heller ikke fuld protokolunderstøttelse, men dukkede op under Java . Lidt senere begyndte andre klienter at dukke op: DCTC ( Direct Connect Text Client ), DC ++ osv.
Direct Connect-protokollen er tekstbaseret, hvor kommandoer og data transmitteres i almindelig tekst uden kryptering. I øjeblikket er trafikkryptering implementeret delvist og er kun mulig i nogle hubs. [2] Protokollen specificerer ikke kodningen eller skrifttypen for klienter eller hubs.
Fildelingsdelen af protokollen er baseret på konceptet "slots". Disse slots svarer til antallet af personer, der kan downloade fra brugeren på samme tid. Antallet af slots er indstillet i klienten.
TCP -protokollen bruges til at oprette forbindelse til hub'en og downloade filer . Søgning i aktiv tilstand fungerer over UDP . Standardporten for tilslutning til hubben er 411.
Den oprindelige klient hed NeoModus Direct Connect (forkortet NMDC). I øjeblikket bruger langt de fleste netværksbrugere adskillige klienter baseret på DC++ klienten .
Ofte er hele netværket opkaldt efter denne klient, hvilket er en fejl.
Klienter opretter forbindelse til en eller flere servere, såkaldte hubs, som tjener til at søge efter filer og downloade kilder. Store hubs har flere tusinde brugere på samme tid i myldretiden. [3]
Sammenligningstabel over den mest almindelige [4] [5] software , der bruges til at oprette hubs :
Navn | Windows | linux | Andet OS | Programmeringssprog | Licens | IPv6 | Brugergrænseflade | Projektside |
---|---|---|---|---|---|---|---|---|
PtokaX | Ja | Ja | Ja: FreeBSD | C++ | GPL v3 | Ja | grafisk (Win32), konsol | www.ptokax.org |
Verlihub | Ikke | Ja | Ja: FreeBSD | C++ | GPL v2 | Ikke | konsol | www.verlihub-project.org |
RusHub | Ja | Ja | Ja: FreeBSD | C++ | GPL v3 | Ja | konsol | mydc.ru/rushub/ |
flexhub | Ja | Ja | Ja: Qnap NAS; Synology NAS | Lua | GPL v3 | Ikke | grafik , konsol | www.flexhub.org |
ynhub | Ja | Ikke | Ikke | ukendt | proprietære | Ikke | grafisk | www.ynhub.org |
DB Hub | Ikke | Ja | Ja: FreeBSD | C | GPL | Ikke | konsol | sourceforge.net |
HeXHub | Ja | Ikke | Ikke | samler | OSL 3.0 | Ikke | grafisk | nemesis.te-home.net |
Aquila | Ja | Ja | Ikke | C | GPL | Ikke | konsol | sites.google.com |
Eximius | Ja | Ikke | Ikke | C# | proprietære | Ikke | grafisk | en.rs2soft.nl |
Viper Hive | Ja | Ja | Ja | Python | GPL v2 | Ikke | konsol | code.google.com |
Navn | Windows | linux | Andet OS | Programmeringssprog | Licens | IPv6 | Brugergrænseflade | Projektside |
Teoretisk set, med den massive introduktion af DHT -teknologi i DC-klienter, kan behovet for hubs til netværksdrift forsvinde.
Hublist er en speciel server, der indsamler og gemmer information om aktive hubs. Mange klienter har en indbygget mulighed for at importere en liste over hubs fra en hublist. Også mange hublister fører statistik og giver dig mulighed for at se den gennem en browser .
Normalt angiver den adressen og porten på hub'en.
Specificeret som:
dchub://[ Hub IP eller domæne ]:[ Hub port ]I dette tilfælde skal standardport 411 ikke angives.
Hvis hubben er sikret med SSL , starter linket med nmdcs:// og kræver, at porten angives, inklusive standardporten.
Linket til hub-brugeren eller hub-bruger-mappen ser sådan ud:
dchub://[ brugernavn ]@[ Hub IP eller domæne ]:[ hub port ]/[filsti]/[filnavn]Efter at have klikket på et sådant link, vil klienten ikke kun oprette forbindelse til hubben, men også downloade fillisten for den bruger, der er angivet i linket, og vælge filen i den, hvis sti og navn også er angivet i linket.
Denne type link til en fil kan bruges, når det ikke er muligt at bruge et magnetlink , da indholdet af filen kan ændre sig, eller filen endnu ikke er oprettet.
Forskelle fra nogle P2P-systemer bygget på andre protokoller ( eDonkey , Gnutella og dens gaffel Gnutella2 ):
Betinget af netværksstrukturI praksis har Direct Connect-protokollen specifikke problemer, der delvist forstyrrer effektiv fildeling. Forfatterne af DC++ klienten udviklede en fundamentalt ny protokol til deres løsning, kaldet Advanced Direct Connect (ADC), hvis formål er at øge pålideligheden, effektiviteten og sikkerheden af fildelingsnetværket. Den 2. december 2007 blev den endelige version af ADC 1.0-protokollen frigivet [6] Protokollen fortsætter med at udvikle sig og blive suppleret.