DC++

DC++ ir atvērtā pirmkoda vienādranga failu apmaiņas klients Microsoft Windows operacionālajai sistēmai, ko var lietot Direct Connect tīklā. Lai arī nav precīzas statistikas, tiek uzskatīts, ka DC++ ir populārākais no izmantotajiem Direct Connect klientiem.

DC++ tika izstrādāta kā atvērtā pirmkoda alternatīva oriģinālajam Direct Connect klientam NeoModus Direct Connect (NMDC). Tas var pieslēgties tiem pašiem Direct Connect centrmezgliem un lieto to pašu failu apmaiņas protokolu. Galvenā atšķirība bija tāda, ka DC++, atšķirībā no NMDC, nebija reklāmprogrammatūra.

Vēlāk ir radušies arī daudzi citi Direct Connect klienti, kas ir balstīti uz DC++ bāzes, piemērām, RevConnect, kura galvenā priekšrocība ir spēja lejuplādēt vienu un to pašu failu vienlaicīgi no vairākiem lietotājiem.

Protokols 

Klienti sākumā pieslēdzas serveris (hubam), un nosūta datus par sevi (svarīgākie no tiem ir: IP adrese un ports (DC++ lieto gan TCP, gan UDP); un lietotāja vārds (nickname)). Tālākās funkcijas ir atkarīgas no tā vai lietotājs ir aktīvais (ir norādījis derīgu IP adreses un porta kombināciju, un viņam var pieslēgties no ārpuses) vai pasīvais (nav norādījis derīgu IP adreses un porta kombināciju un viņam no ārpuses pieslēgties nevar). Programmas funkcijas:
 Lejupielādēt failu. Downloado failu no lietotāja ar zināmu lietotāja vārdu. Vēl ir jāzin ceļu (path) līdz failam attiecīgā lietotāja failu sarakstā (file list). Jebkurā gadījumā otra lietotāja IP adresi un portu uzzina caur hubu.
 Aktīvie lietotāji caur hubu otram galam pieprasa atvērt savienojumu uz šo galu. Caur šo savienojumu tālāk tiek pieprasīts attiecīgais fails (tieši no otra gala lietotāja) un caur to konnenkciju arī notiek datu pārsūtīšana. Šis process neatšķiras, vai otrā galā ir aktīvais vai pasīvais lietotājs.
 Pasīvie lietotāji caur hubu uzzin otra gala lietotāja IP adresi un portu un atver savienojumu (jo pasīvie lietotāji paši nevar saņemt ienākošos avienojumus), caur šo savienojumu tad pieprasa un saņem attiecīgo failu. Pasīvie lietotāji nevar lejupielādēt failus no citiem pasīvajiem lietotājiem.
 Augšupielādēt failu. Šis process vienmēr sākas ar to, ka otrs gals pieprasa attiecīgo failu. Maksimālo vienlaicīgi augšupieldējamo failu skaitu nosaka slotu skaits, to norāda programmas konfigurācijā.
 Meklēšana. Meklē failu. Failus var meklēt pēc atslēgvārda, izmēra un/vai kontrolsummas (TTH)(hash).
 Aktīvie lietotāji. Meklēšanas pieprasījumu nosūta serverim (hubam), kas to tālāk pārsūta visiem lietotājiem. Lietotāji, kam ir prasībām atbilstoši faili, sūta atbildes sākotnējam lietotājam (uz UDP portu).
 Pasīvie lietotāji. Meklēšanas pieprasījumu tāpat nosūta hubam, un tas arī tiek pārsūtīts tālāk, taču lietotāji atbildes sūta nevis tieši sākotnējam lietotājam (jo tur neko nevar nosūtīt), bet gan hubam. Šī metode rada ievērojami lielāku slodzi hubam, tāpēc tai ir ilgāki laiki starp meklēšanām, vai arī to atslēdz pavisam.
 Nosūtīt ziņojumu. Visi ziņojumi citiem lietotājiem iet caur hubu. Šiet ir pieejami gan globālie ziņojumi (publiskā tērzētava)(tas parādās attiecīgā huba logā), gan privātie ziņojumi (tie aiziet tikai attiecīgajam lietotājam). Privātie ziņojumi tāpat iet caur hubu un huba administratori tos redz.

file list ir šārēto failu saraksts. Kopš apmēram 0.4 DC++ versijas tas ir ar bz2 algoritmu kompresēts XML fails. Tur ir visi koplietotie direktoriji, to apakšdirektoriji un tajos visos esošie faili (nosaukums, izmērs un TTH). Failu listes faila augšupielādei parasti ir pieejami papildu 3 sloti.

Ārējās saites 
 DC++ oficiālā tīmekļa vietne  

Failu apmaiņas programmatūra