GnucDNA

GnucDNA was a software library for building peer-to-peer applications. It provides developers with a common layer to create their own Gnutella or Gnutella2 client or network. As a separate component, GnucDNA can be updated independently of the client, passing down improvements to the applications already using it.

GnucDNA
Developer(s)John Marshall
Stable release1.1.1.4 (June 23, 2004 (2004-06-23)[1]) [±]
Preview release1.1.1.6[2] (?) [±]
Written inC++
Operating systemWindows
TypeApplication programming interface
LicenseGPL
Websitewww.gnucleus.org/GnucDNA/

General

GnucDNA is a widespread and established library which can be extended by programmers. It includes the capability of forming a decentralized network between peers with integrated Ultrapeer support, allowing the network to avoid bottlenecks of low bandwidth nodes. However, the Ultrapeer - respectively Hub on G2 - support is outdated compared to modern implementations by clients like gtk-gnutella and Shareaza.

The library gives programs which link to it the ability to share files with built-in support for uploading, downloading, file queuing and partial file sharing (the ability to upload verified chunks of a file while it is downloading), hash those files, extract meta-data to be shared through the network, and the ability to perform advanced searching by specific hash and meta-data parameters. GnucDNA also offers applications the ability to update their software easily through the same P2P network that they create.

The GnucDNA component is COM based to inherit the advantage of language independence and versatility. Applications in C++, Visual Basic, .Net, and even scripts can utilize GnucDNA. Also by being a separate component, it can be used in a number of alternate situations such as part of a plugin, a service or running behind a web server.

History

Gnucleus
Developer(s)John Marshall
Initial release2000
Stable release2.2.0.0 (June 17, 2005 (2005-06-17)) [±]
Repositorysf.net/projects/gnucleus/
Written inC++
Operating systemMicrosoft Windows
Available inEnglish
TypeSoftware development kit
LicenseGNU General Public License
Websitewww.gnucleus.org/Gnucleus/

Over five years of development have already gone into coding, improving, and testing the GnucDNA as part of the Gnucleus project. As others took notice of the project the engine was duplicated over 15 times, but while the interfaces and services others provided were great, they could not keep up with the main development. So the decision was taken, to move the Gnucleus engine, now called GnucDNA, into a separate component, so that anyone has access to it without fear of falling behind in the developments and improvements that are made. It also opens up new doors for those interested in creating their own P2P networks, but do not want to re-invent the low layer communication and file transfer mechanisms.

Clients

Gnucleus

Gnucleus is the gnutella and Gnutella2 client project for Microsoft Windows that the GnucDNA library code originally has been developed in, before it was split to a semi-separated project. Just like the GnucDNA library, it has been released under the GNU General Public License.

The client is designed to be easy to use without reducing the number of options available. Gnucleus implements a number of features including Ultrapeer capability on gnutella (resp. Hub mode on G2), multisource swarming downloads, partial-file sharing, SHA1 file hashing, Tiger tree sub chunk verification and proxy server support.

Kiwi Alpha

Kiwi Alpha[3] is a peer-to-peer file sharing application that uses the GnucDNA library to connect to the gnutella and G2 networks. Its design goal focusses on leaving a small resource footprint and being simple to use for beginners.

Kiwi Alpha doesn't contain functionality such as media players, in the spirit of its lightweight goal. However, the application comes with two bundled pieces of adware, such as SaveNow, which seems to contradict the small footprint goal.[4] Also, the program's website states that "Kiwi Alpha does not require users to register and protects the user's privacy by connecting anonymously to the network". This is misleading, as both supported protocols do not obfuscate the user's IP address, which the statement seems to indicate.

gollark: PIAAC level 1 says> Most of the tasks at this level require the respondent to read relatively short digital or print continuous, non-continuous, or mixed texts to locate a single piece of information that is identical to or synonymous with the information given in the question or directive. Some tasks, such as those involving non-continuous texts, may require the respondent to enter personal information onto a document. Little, if any, competing information is present. Some tasks may require simple cycling through more than one piece of information. Knowledge and skill in recognizing basic vocabulary determining the meaning of sentences, and reading paragraphs of text is expected.and 4% of people score below that, apparently.
gollark: (the live site is broken inexplicably)
gollark: https://web.archive.org/web/20210731020018/https://nces.ed.gov/pubs2019/2019179/index.asp
gollark: America is a big country. There's probably at least one ridiculously old/wrong/isolated person who can't read.
gollark: It's lying.

See also

  • Peer-to-peer - P2P protocols and clients
  • Morpheus - has used the GnucDNA core
  • Foxy - uses a modified GnucDNA core

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.