View Issue Details

IDProjectCategoryView StatusLast Update
0005792GNUnetwebpagepublic2019-07-03 12:45
Reporterng0Assigned To 
PrioritynormalSeverityminorReproducibilityhave not tried
Status newResolutionopen 
Product Version 
Target VersionFixed in Version 
Summary0005792: Re-use FAQ item "What does my system do when participating in GNUnet file sharing?" ?
DescriptionFAQ candidate.

Someone found this useful linking to last year (when the webpage was still online), while comparing with https://www.makeuseof.com/tag/goodbye-http-faster-safer-decentralized-internet-ipfs/

https://web.archive.org/web/20160507001037/https://gnunet.org/node/2013

This is an old FAQ item written by Bart:


What does my system do when participating in GNUnet file sharing?
Tue, 11/06/2012 - 16:00 — Bart Polot

What does the network demand from me? How hard is my system going to have to work in order to participate?

In GNUnet you set up a node (a peer). It is identified by an ID (hash of its public key) and has a number of addresses it is reachable by (may have no addresses, for instance when it's behind a NAT). You specify bandwidth limits (how much traffic GNUnet is allowed to consume) and datastore quote (how large your on-disk block storage is). Your node will then proceed to connect to other nodes, becoming part of the network.

Nodes will run queries by asking [some of] their neighbours to give them blocks of data. If a node doesn't have the block in its storage, it might retransmit the query to its own neightbours, and so on, until it expires, or the block is found, in which case it might go back to the originator of the query along the chain, or take a shortcut and connect to the originator directly (low anonymity).

This means that your node will spend most of the time processing and/or retransmitting other nodes' queries. This will consume bandwidth, especially once a block is found and has to be transmitted. Node also validates things it forwards (signature checks) and encrypts all its communications. That will consume your CPU, although there is adjustable an CPU load limit in configuration. And finally, your node will usually store blocks it transmits (and will definitely store blocks it downloads to satisfy your own demands for files) in its datastore. That will consume your disk space.

Your node does all this to make other nodes view it as a good network participant, "earn respect" so to speak. When some node is under heavy load, it will process requests by nodes it respects, and will drop queries made by unrespected nodes. In this case, "heavy" load means "load that approaches the configured limit", not "100% CPU, 100% bandwidth consumption".

TagsNo tags attached.

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2019-07-03 12:45 ng0 New Issue