Gnucleus
   HOME

TheInfoList



OR:

GnucDNA was a
software library In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development. These may include configuration data, documentation, help data, message templates, pre-written code and sub ...
for building
peer-to-peer Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer ...
applications. It provides developers with a common layer to create their own
Gnutella Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million compute ...
or
Gnutella2 Gnutella2, often referred to as G2, is a peer-to-peer protocol developed mainly by Michael Stokes and released in 2002. While inspired by the gnutella protocol, G2 shares little of its design with the exception of its connection handshake and ...
client or network. As a separate component, GnucDNA can be updated independently of the client, passing down improvements to the applications already using it.


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 gtk-gnutella is a peer-to-peer file sharing application which runs on the gnutella network. gtk-gnutella uses the GTK+ toolkit for its graphical user interface. Released under the GNU General Public License, gtk-gnutella is free software. Histo ...
and
Shareaza Shareaza is a peer-to-peer file sharing client running under Microsoft Windows which supports the gnutella, Gnutella2 (G2), eDonkey, BitTorrent, FTP, HTTP and HTTPS network protocols and handles magnet links, ed2k links, and the now deprecat ...
. 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 Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including: * Descriptive metadata – the descriptive ...
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++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
,
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic .NET (now simply referred to as "Visual Basic"), the current version of Visual Basic launched in 2002 which runs on .NET * 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

Over five years of
development Development or developing may refer to: Arts *Development hell, when a project is stuck in development *Filmmaking, development phase, including finance and budgeting *Development (music), the process thematic material is reshaped * Photograph ...
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 Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million compute ...
and
Gnutella2 Gnutella2, often referred to as G2, is a peer-to-peer protocol developed mainly by Michael Stokes and released in 2002. While inspired by the gnutella protocol, G2 shares little of its design with the exception of its connection handshake and ...
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 GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general ...
. 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 In cryptography, SHA-1 (Secure Hash Algorithm 1) is a cryptographically broken but still widely used hash function which takes an input and produces a 160-bit (20-byte) hash value known as a message digest – typically rendered as 40 hexadecim ...
file hashing,
Merkle tree In cryptography and computer science, a hash tree or Merkle tree is a tree in which every "leaf" (node) is labelled with the cryptographic hash of a data block, and every node that is not a leaf (called a ''branch'', ''inner node'', or ''inode'') ...
sub chunk verification and
proxy server In computer networking, a proxy server is a server application that acts as an intermediary between a client requesting a resource and the server providing that resource. Instead of connecting directly to a server that can fulfill a reques ...
support.


Kiwi Alpha

Kiwi Alpha is a
peer-to-peer Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer ...
file sharing File sharing is the practice of distributing or providing access to digital media, such as computer programs, multimedia (audio, images and video), documents or electronic books. Common methods of storage, transmission and dispersion include r ...
application that uses the GnucDNA library to connect to the
gnutella Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million compute ...
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 Adware, often called advertising-supported software by its developers, is software that generates revenue for its developer by automatically generating online advertisements in the user interface of the software or on a screen presented to the ...
, such as SaveNow, which seems to contradict the small footprint goal.Web Safety Ratings from McAfee SiteAdvisor for the kiwialpha.com
/ref> 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 An Internet Protocol address (IP address) is a numerical label such as that is connected to a computer network that uses the Internet Protocol for communication.. Updated by . An IP address serves two main functions: network interface ident ...
, which the statement seems to indicate.


See also

*
Peer-to-peer Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer ...
- P2P protocols and clients *
Morpheus Morpheus ('Fashioner', derived from the grc, μορφή meaning 'form, shape') is a god associated with sleep and dreams. In Ovid's ''Metamorphoses'' he is the son of Somnus and appears in dreams in human form. From the Middle Ages, the name b ...
- has used the GnucDNA core * Foxy - uses a modified GnucDNA core


External links

*


References

{{File sharing Programming tools for Windows Gnutella clients Free file sharing software Gnutella2