Direct Connect är ett delvis centraliserat fildelningsnätverk (P2P) . DC-nätverket består av hubbar , DC-klienter och hublists. Hubben ger klienten som ansluter till den en lista över anslutna användare, möjligheten att använda sökningen och den inbyggda avancerade chatten . DC-klienter ansluter till en eller flera hubbar och kan ladda ner filer direkt från andra användare som är anslutna till samma hub. För drift används DC-protokollet (NMDC), baserat på utvecklingen av NeoModus, eller ADC -protokollet .
I november 1999 grundade Jonathan Hess företaget NeoModus, som tjänade pengar på Direct Connect adware-programmet han skrev [1] . Den första tredjepartsklienten var "DClite", som inte fullt ut stödde protokollet. Den nya versionen av Direct Connect krävde redan en enkel krypteringsnyckel för att initiera anslutningen, med detta hoppades författaren kunna blockera tredjepartsklienter. Nyckeln knäcktes och författaren till DClite släppte en ny version av sitt program som var kompatibelt med den nya mjukvaran från NeoModus. DClite-koden skrevs snart om och programmet döptes om till Open Direct Connect . Dess användargränssnitt blev bland annat multi-document (MDI) och det blev möjligt att använda plug-ins för fildelningsprotokoll (som i MLDonkey ). Open Direct Connect hade inte heller fullt protokollstöd, utan dök upp under Java . Lite senare började andra klienter dyka upp: DCTC ( Direct Connect Text Client ), DC ++ , etc.
Direct Connect-protokollet är textbaserat, där kommandon och data överförs i vanlig text, utan kryptering. För närvarande implementeras trafikkryptering delvis och är endast möjlig inom vissa nav. [2] Protokollet anger inte kodningen eller teckensnittet för klienter eller hubbar.
Fildelningsdelen av protokollet är baserad på konceptet "slots". Dessa slots motsvarar antalet personer som kan ladda ner från användaren samtidigt. Antalet slots ställs in i klienten.
TCP- protokollet används för att ansluta till hubben och ladda ner filer . Sökning i aktivt läge fungerar över UDP . Standardporten för anslutning till hubben är 411.
Den ursprungliga klienten hette NeoModus Direct Connect (förkortat NMDC). För närvarande använder den stora majoriteten av nätverksanvändare många klienter baserade på DC++- klienten .
Ofta är hela nätverket uppkallat efter denna klient, vilket är ett misstag.
Klienter ansluter till en eller flera servrar, så kallade hubbar, som tjänar till att söka efter filer och ladda ner källor. Stora nav har flera tusen användare samtidigt under rusningstid. [3]
Jämförelsetabell för den vanligaste [4] [5] programvaran som används för att skapa hubbar :
namn | Windows | linux | Annat OS | Programmeringsspråk | Licens | IPv6 | Användargränssnitt | Projektets hemsida |
---|---|---|---|---|---|---|---|---|
PtokaX | Ja | Ja | Ja: FreeBSD | C++ | GPL v3 | Ja | grafisk (Win32), konsol | www.ptokax.org |
Verlihub | Inte | Ja | Ja: FreeBSD | C++ | GPL v2 | Inte | trösta | www.verlihub-project.org |
RusHub | Ja | Ja | Ja: FreeBSD | C++ | GPL v3 | Ja | trösta | mydc.ru/rushub/ |
flexhub | Ja | Ja | Ja: Qnap NAS; Synology NAS | Lua | GPL v3 | Inte | grafik , konsol | www.flexhub.org |
ynhub | Ja | Inte | Inte | okänd | Proprietär | Inte | grafisk | www.ynhub.org |
DB Hub | Inte | Ja | Ja: FreeBSD | C | GPL | Inte | trösta | sourceforge.net |
HeXHub | Ja | Inte | Inte | assemblerare | OSL 3.0 | Inte | grafisk | nemesis.te-home.net |
Aquila | Ja | Ja | Inte | C | GPL | Inte | trösta | sites.google.com |
Eximius | Ja | Inte | Inte | C# | Proprietär | Inte | grafisk | en.rs2soft.nl |
Viper Hive | Ja | Ja | Ja | Pytonorm | GPL v2 | Inte | trösta | code.google.com |
namn | Windows | linux | Annat OS | Programmeringsspråk | Licens | IPv6 | Användargränssnitt | Projektets hemsida |
Teoretiskt sett, med det massiva införandet av DHT -teknik i DC-klienter, kan behovet av hubbar för nätverksdrift försvinna.
Hublist är en speciell server som samlar in och lagrar information om aktiva hubbar. Många klienter har en inbyggd möjlighet att importera en lista med hubbar från en hublist. Dessutom håller många hublists statistik och låter dig se den via en webbläsare .
Vanligtvis anger den adressen och porten för navet.
Specificerat som:
dchub://[ Hub IP eller Domain ]:[ Hub port ]I det här fallet behöver inte standardporten 411 anges.
Om hubben är säkrad med SSL börjar länken med nmdcs:// och kräver att porten anges, inklusive standardporten.
Länken till hubbanvändaren eller hubbanvändarmappen ser ut så här:
dchub://[ användarnamn ]@[ Hub -IP eller domän ]:[ navport ]/[filsökväg]/[filnamn]Efter att ha klickat på en sådan länk kommer klienten inte bara att ansluta till navet, utan också ladda ner fillistan för användaren som anges i länken och välja filen i den, vars sökväg och namn också anges i länken.
Denna typ av länk till en fil kan användas när det inte är möjligt att använda en magnetlänk , eftersom innehållet i filen kan ändras eller filen ännu inte har skapats.
Skillnader från vissa P2P-system byggda på andra protokoll ( eDonkey , Gnutella och dess gaffel Gnutella2 ):
Betingat av nätverksstrukturI praktiken har Direct Connect-protokollet specifika problem som delvis stör effektiv fildelning. Författarna till DC++-klienten utvecklade ett fundamentalt nytt protokoll för sin lösning, kallat Advanced Direct Connect (ADC), vars syfte är att öka tillförlitligheten, effektiviteten och säkerheten i fildelningsnätverket. Den 2 december 2007 släpptes den slutliga versionen av ADC 1.0-protokollet [6] Protokollet fortsätter att utvecklas och kompletteras.