DC++
DC++ is a free and open-source, peer-to-peer file-sharing client that can be used for connecting to the Direct Connect network or to the ADC protocol. It is developed primarily by Jacek Sieka, nicknamed arnetheduck.
Developer(s) | Jacek Sieka |
---|---|
Stable release | 0.880
/ October 20, 2022 |
Repository | |
Written in | C++ |
Operating system | Windows |
Type | Peer-to-peer |
License | GNU GPLv2 or later |
Website | dcplusplus.sourceforge.io |
History and background
DC++ is a free and open-source alternative to the original client, NeoModus Direct Connect (NMDC);[1] it connects to the same file-sharing network and supports the same file-sharing protocol. One of the reasons commonly attributed to the popularity of DC++ is that it has no adware of any kind, unlike NMDC.[2]
Many other clients exist for the Direct Connect network, and most of these are DC++ "mods": modified versions of DC++, based on DC++'s source code. A partial list of DC++ mods is given below. Some of these clients were developed for specialized communities (e.g. music-sharing communities), or in order to support specific experimental features, or perhaps features that have been rejected from inclusion in DC++ itself. An example of an experimental feature is hashing, which was initially implemented in BCDC++ and later adopted by DC++.
As of 2008, DC++ had around 90% market share of the Direct Connect community.[3]
Forks
An advantage of the free and open-source nature of DC++ is that several mods have been released which add features to the original client.
Many users send patches to DC++ which are included in future releases, but some features are rejected by the developer. Stated reasons for rejecting a patch are because they are coded poorly, or that the feature is frivolous, abusable or overly specialized, and does not belong in the main client. Examples include: upload bandwidth limiting (many users feel that upload bandwidth limiting is a form of cheating, while other users not using a full-duplex network connection can only achieve reasonable download speeds by limiting uploads), colorized chat, specialized operator functions (e.g. client/share checking).
The developers of some forks contribute features and bug fixes back upstream to DC++.
Client software comparison
General
Client | FOSS | Software license | Active | Release date (latest version) |
---|---|---|---|---|
AirDC++ | Yes | GNU GPLv2 or later | Yes | 2021-09-20 (v4.11) |
AirDC++ Web Client | Yes | GNU GPLv2 or later | Yes | 2021-09-19 (v2.11.2) |
ApexDC++ | Yes | GNU GPLv2 or later | Yes | 2018-12-25 (v1.6.5) |
DC++ | Yes | GNU GPLv2 or later | Yes | 2022-08-20 (v0.880) |
EiskaltDC++ | Yes | GNU GPLv3 or later | Yes | 2021-03-03 (v2.4.2) |
FlylinkDC++ | Yes | GNU GPLv2 or later | No | 2017-01-20 (r504) |
LinuxDC++ | Yes | GNU GPLv2 or later | No | 2011-04-17 (v1.1.0) |
RSX++ | Yes | GNU GPLv2 or later | No | 2011-04-14 (v1.21) |
StrongDC++ | Yes | GNU GPLv2 or later | No | 2010-12-27 (v2.42) |
TkDC++ | Yes | GNU GPLv2 or later | No | 2010-11-29 (v1.3) |
Operating system support
Client | Windows | Linux | macOS | BSD | Haiku |
---|---|---|---|---|---|
AirDC++ | Yes | No | No | No | No |
AirDC++ Web Client | No | Yes | No | No | No |
ApexDC++ | Yes | No | No | No | No |
DC++ | Yes | No | No | No | No |
EiskaltDC++ | Yes | Yes | Yes | Yes | Yes |
FlylinkDC++ | Yes | No | No | No | No |
LinuxDC++ | No | Yes | No | Yes | No |
RSX++ | Yes | No | No | No | No |
StrongDC++ | Yes | No | No | No | No |
TkDC++ | Yes | No | No | No | No |
Interface and programming
Client | GUI | CLI | WebUI | Programming language | Based on |
---|---|---|---|---|---|
AirDC++ | Yes | No | Yes | C++ | StrongDC++ |
AirDC++ Web Client | No | Yes | Yes | C++ | AirDC++ |
ApexDC++ | Yes | No | No | C++ | StrongDC++ |
DC++ | Yes | No | No | C++ | - |
EiskaltDC++ | Yes | Yes | Yes | C++ | DC++ |
FlylinkDC++ | Yes | No | Yes | C++ | ApexDC++/StrongDC++ |
LinuxDC++ | Yes | No | No | C++ | DC++ |
RSX++ | Yes | No | No | C++ | StrongDC++ |
StrongDC++ | Yes | No | No | C++ | DC++ |
TkDC++ | Yes | No | No | C++ | StrongDC++ / DC++ bzr |
Features
Client | Magnet URI | UPnP | NAT traversal | DHT | Encryption | IPv6 | IDNA | Plugin | Proxy | Hash algorithms | Protocol support |
---|---|---|---|---|---|---|---|---|---|---|---|
AirDC++ | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Tiger Tree Hash | TIGR, ADCS | |
AirDC++ Web Client | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Tiger Tree Hash | TIGR, ADCS | |
ApexDC++ | Yes | Yes | Yes | Yes | Yes | No | No | Lua, C++ | Yes | Tiger Tree Hash | TIGR, ADCS |
DC++ | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Tiger Tree Hash | TIGR, ADCS | |
EiskaltDC++ | Yes | Yes | Yes | Yes | Yes | No | Yes | Lua, Qt Script, QML | Yes | Tiger Tree Hash | TIGR, ADCS |
FlylinkDC++ | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Tiger Tree Hash | TIGR, ADCS | |
LinuxDC++ | Yes | Yes | Yes | No | Yes | No | No | Yes | Tiger Tree Hash | TIGR, ADCS | |
RSX++ | Yes | Yes | Yes | Yes | Yes | No | No | Lua, C++ | Yes | Tiger Tree Hash | TIGR, ADCS |
StrongDC++ | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Tiger Tree Hash | TIGR, ADCS | |
References
- "What Are Direct Connect Protocol And DC++? How To Use DC++ For File Sharing?". Fossbytes. 2017-02-16. Archived from the original on 2021-11-02. Retrieved 2021-11-02.
- Annalee Newitz (July 2001). "Sharing the Data". Metro, Silicon Valley's Weekly Newspaper. Metro Publishing Inc. Archived from the original on 2021-01-21. Retrieved 2006-12-21.
- Fredrik Ullner (January 2008). "PC Pitstop and its P2P-report". DC++: Just These Guys, Ya Know?. Archived from the original on 2008-03-22. Retrieved 2008-03-19.
- "Client Software - ADCPortal Wiki". Archived from the original on 2011-07-07. Retrieved 2011-01-28.