A Direct Connect egy peer-to-peer (P2P) fájlcserélő alkalmazás és protokoll neve, melyet a NeoModus munkatársa, Jon Hess írt. Ma ezzel a névvel rendszerint az általa használt hálózati protokollt illetik.
A Direct Connect hálózat nem annyira decentralizált, mint a Gnutella vagy a FastTrack, mivel hubokat használ különböző felhasználói csoportok összekapcsolására. Egy hubra általában a hasonló érdeklődésű userek kapcsolódnak. A hub csak akkor enged be, ha megfelelünk bizonyos feltételeknek. Régebben ez csak a megosztott adatok mennyiségét jelentette, tehát egyes hubokra csak akkor léphettek be a felhasználók, ha megosztottak pár gigabyte adatot a gépükről. Ma már azonban lehetőség van másfajta feltételek megszabására és ellenőrzésére is, például már az is beállítható, hogy mennyi legyen a hubon való kereséshez szükséges megosztás. A chat kezdettől fogva integrálva van a protokollba és így a hubok kis közösségeket alkotnak, tehát többet jelentenek a névtelen fájlcserénél. Ez jóval „barátságosabbá” teszi a DC használatát.
A hubokon futó szoftverek lehetővé teszik úgynevezett operátor felhasználók létrehozását. Ezek a felhasználók felügyeleti joggal rendelkeznek a hub felett, tehát módosíthatják a beállításokat, és figyelmeztethetik, illetve legvégső esetben kirúghatják a hubról a szabálytalanul viselkedő felhasználókat. Továbbá a legtöbb hubszoftverben lehetőség van VIP felhasználók létrehozására, akikre általában nem érvényesek a hub korlátozásai (például nem kell adatokat megosztaniuk a belépéshez).
Ahhoz, hogy a DC hubok szolgáltatásait használhassuk, szükség van egy DC kliensre. A legelső DC kliens az eredeti NeoModus-féle DC kliens volt, de ma ezt már egyáltalán nem használják. A ma használatos kliensek alapját a DC++ képezi, aminek a felhasználói felülete jelentősen különbözik az eredeti NeoModus kliensétől. A DC++ egyszálas kliens volt a 0.7-es széria előtt, vagyis egy fájlt egyszerre csak egy felhasználótól tudott tölteni. A DC kliensek egy fejlettebb csoportját képezik a többszálas kliensek, amik egy fájlt egyidőben több felhasználótól is képesek tölteni, ezáltal a sebesség jelentősen megnövekedhet. Ezek a többszálas kliensek nem sorban töltik le a fájlokat, hanem kis részekre bontják azokat, így két különböző részt két különböző felhasználótól tudnak letölteni. A legelterjedtebb többszálas kliens a DC++ és BCDC++ 0.7-es verziói, vagy annál újabbak, ApexDC StrongDC, és akárcsak a DC++ esetében, a StrongDC-ből fejlesztették ki a többi többszálas klienst. Ezeket a klienseket folyamatosan fejlesztik, nem lehet megmondani, hogy melyik a legjobb közülük. Vannak továbbá kifejezetten operátorok számára készített kliensek is. A választék nagyon nagy, és mindenkinek saját magának kell eldöntenie, hogy melyik kliens felel meg legjobban az igényeinek. Az összes DC++ és StrongDC-alapú kliens nyílt forráskódú, és ingyenesen letölthetők, általában a fejlesztők weboldaláról. Van már Linuxon működő DC kliens is, amelyet a DC++ -ból fejlesztenek. A program lényegi része megegyezik vele, a felhasználói felületet pedig GTK+ -ra portolták. Néhány disztribúció már kínálja a csomagkezelőjén keresztül.
A DC kliensek egyszerűen beállíthatók, ha nem szeretnél speciális funkciókat, és általában megfelelnek neked az alapértelmezett beállítások is. Mivel a DC++ alapú kliensek nagyon hasonlóak, az itt leírt beállítások a legtöbb kliens esetében használhatóak. A beállítások ablak a File menü Settings parancsára kattintva érhető el.
Elsőként a felhasználónevedet kell rendesen beállítani (nicknévnek is hívják). Legtöbb hubra csak a [HUN] előtaggal léphetsz be, így érdemes ezzel kezdened a nevedet. Kerüld az ékezetes és a speciális karaktereket. A description mezőt régen arra használták, hogy megjelöljék, hogy mit tartalmaz a megosztás, de manapság a kapcsolat sebességét érdemes (és néhány hubon kötelező) feltüntetni benne. A helyes megadási módszer: [letöltési/feltöltési]. Nézz utána, hogy milyen internetkapcsolatod van, és add meg a sebességeket, például így: [1M/128K] (1 mbit letöltés, 128 kbit feltöltés). Némelyik kliens esetében ez kényelmesebb: ki lehet választani egy listából a sebességeket, és a kliens automatikusan hozzáfűzi a description meződhöz, így ott nem kell megadni semmit.
Kapcsolat típusa: file >>settings >> connection type (fájl >> beállítások >> kapcsolat típusa). Lehetőség szerint hagyd direct connection-on (közvetlen csatlakozás), ez az aktív beállítás. Aktív az tud aktívtól és passzívtól is tölteni, tehát ez a legjobb beállítás. Router esetén nem mindig sikerül az aktív beállítás, ilyenkor válaszd ezt (ha nincs más lehetőséged): firewall, passive (tűzfal, passzív). Ez a legrosszabb mód, tehát tényleg csak végső esetben használd ezt. Leellenőrizheted a beállításokat, ha felmész egy nagyobb hubra és beírsz a keresőbe bármit. Ha van találat és a letöltés is elindul, akkor rendben vannak a dolgok.
Slot: le / feltöltési szál, ezen keresztül kapcsolódsz máshoz és rólad is ezen keresztül húzzák a cuccot. Be lehet állítani beállításokban is: file >>settings >> sharing (fájl >>beállítások >>megosztás), feltöltési szálak. A main (közös) chatben is be tudod állítani a slotok számát, ezt kell beírni például 3 slothoz: /slots 3
Protokoll dokumentáció: