aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorng0 <ng0@infotropique.org>2017-10-28 17:10:12 +0000
committerng0 <ng0@infotropique.org>2017-10-28 17:10:12 +0000
commit4a29e6f8300b6cd609898ed8dc0dae05c01e5ebd (patch)
treefd854af0a3727e3bb216530e1ef1e1301db09486 /doc
parentde5a0882e7eb73f58e3c40c0123b5c6fb2f9a932 (diff)
downloadgnunet-4a29e6f8300b6cd609898ed8dc0dae05c01e5ebd.tar.gz
gnunet-4a29e6f8300b6cd609898ed8dc0dae05c01e5ebd.zip
some notes in philosophy
Diffstat (limited to 'doc')
-rw-r--r--doc/documentation/chapters/philosophy.texi48
1 files changed, 27 insertions, 21 deletions
diff --git a/doc/documentation/chapters/philosophy.texi b/doc/documentation/chapters/philosophy.texi
index 10006ebe1..b4afca1a7 100644
--- a/doc/documentation/chapters/philosophy.texi
+++ b/doc/documentation/chapters/philosophy.texi
@@ -6,13 +6,15 @@ The foremost goal of the GNUnet project is to become a widely used,
6reliable, open, non-discriminating, egalitarian, unfettered and 6reliable, open, non-discriminating, egalitarian, unfettered and
7censorship-resistant system of free information exchange. 7censorship-resistant system of free information exchange.
8We value free speech above state secrets, law-enforcement or 8We value free speech above state secrets, law-enforcement or
9intellectual property. GNUnet is supposed to be an anarchistic network, 9intellectual property.
10where the only limitation for peers is that they must contribute enough 10GNUnet is supposed to be an anarchistic network, where the only
11back to the network such that their resource consumption does not have 11limitation for peers is that they must contribute enough back to
12a significant impact on other users. GNUnet should be more than just 12the network such that their resource consumption does not have
13another file-sharing network. The plan is to offer many other services 13a significant impact on other users.
14and in particular to serve as a development platform for the next 14GNUnet should be more than just another file-sharing network.
15generation of decentralized Internet protocols. 15The plan is to offer many other services and in particular
16to serve as a development platform for the next generation of
17decentralized Internet protocols.
16 18
17@menu 19@menu
18* Design Goals:: 20* Design Goals::
@@ -49,7 +51,7 @@ resources than they consume.
49 51
50 52
51@cindex Security and Privacy 53@cindex Security and Privacy
52@node Security & Privacy 54@node Security and Privacy
53@section Security & Privacy 55@section Security & Privacy
54 56
55GNUnet's primary design goals are to protect the privacy of its users and 57GNUnet's primary design goals are to protect the privacy of its users and
@@ -161,11 +163,12 @@ transport protocol is irrelevant. In fact, GNUnet peers can use
161multiple IPs (IPv4 and IPv6) on multiple ports --- or even not use the 163multiple IPs (IPv4 and IPv6) on multiple ports --- or even not use the
162IP protocol at all (by running directly on layer 2). 164IP protocol at all (by running directly on layer 2).
163 165
166@c NOTE: For consistency we will use @code{HELLO}s throughout this Manual.
164GNUnet uses a special type of message to communicate a binding between 167GNUnet uses a special type of message to communicate a binding between
165public (ECC) keys to their current network address. These messages are 168public (ECC) keys to their current network address. These messages are
166commonly called HELLOs or peer advertisements. They contain the public key 169commonly called @code{HELLO}s or peer advertisements.
167of the peer and its current network addresses for various transport 170They contain the public key of the peer and its current network
168services. 171addresses for various transport services.
169A transport service is a special kind of shared library that 172A transport service is a special kind of shared library that
170provides (possibly unreliable, out-of-order) message delivery between 173provides (possibly unreliable, out-of-order) message delivery between
171peers. 174peers.
@@ -173,15 +176,15 @@ For the UDP and TCP transport services, a network address is an IP and a
173port. 176port.
174GNUnet can also use other transports (HTTP, HTTPS, WLAN, etc.) which use 177GNUnet can also use other transports (HTTP, HTTPS, WLAN, etc.) which use
175various other forms of addresses. Note that any node can have many 178various other forms of addresses. Note that any node can have many
176different 179different active transport services at the same time,
177active transport services at the same time, and each of these can have a 180and each of these can have a different addresses.
178different addresses. Binding messages expire after at most a week (the 181Binding messages expire after at most a week (the timeout can be
179timeout can be shorter if the user configures the node appropriately). 182shorter if the user configures the node appropriately).
180This expiration ensures that the network will eventually get rid of 183This expiration ensures that the network will eventually get rid of
181outdated advertisements.@footnote{More details can be found in 184outdated advertisements.@footnote{More details can be found in
182@uref{https://gnunet.org/transports, A Transport Layer Abstraction for Peer-to-Peer Networks}} 185@uref{https://gnunet.org/transports, A Transport Layer Abstraction for Peer-to-Peer Networks}}
183 186
184@cindex Resource Sharing 187@cindex Accounting to Encourage Resource Sharing
185@node Accounting to Encourage Resource Sharing 188@node Accounting to Encourage Resource Sharing
186@subsection Accounting to Encourage Resource Sharing 189@subsection Accounting to Encourage Resource Sharing
187 190
@@ -189,9 +192,9 @@ Most distributed P2P networks suffer from a lack of defenses or
189precautions against attacks in the form of freeloading. 192precautions against attacks in the form of freeloading.
190While the intentions of an attacker and a freeloader are different, their 193While the intentions of an attacker and a freeloader are different, their
191effect on the network is the same; they both render it useless. 194effect on the network is the same; they both render it useless.
192Most simple attacks on networks such as Gnutella involve flooding the 195Most simple attacks on networks such as @command{Gnutella}
193network with traffic, particularly with queries that are, in the worst 196involve flooding the network with traffic, particularly
194case, multiplied by the network. 197with queries that are, in the worst case, multiplied by the network.
195 198
196In order to ensure that freeloaders or attackers have a minimal impact on 199In order to ensure that freeloaders or attackers have a minimal impact on
197the network, GNUnet's file-sharing implementation tries to distinguish 200the network, GNUnet's file-sharing implementation tries to distinguish
@@ -209,8 +212,11 @@ amount of trust they assign the request a (possibly lower) effective
209priority. Then, they drop the requests with the lowest effective priority 212priority. Then, they drop the requests with the lowest effective priority
210to satisfy their resource constraints. This way, GNUnet's economic model 213to satisfy their resource constraints. This way, GNUnet's economic model
211ensures that nodes that are not currently considered to have a surplus in 214ensures that nodes that are not currently considered to have a surplus in
212contributions will not be served if the network load is high.@footnote{Mor 215contributions will not be served if the network load is high.
213e details can be found in @uref{https://gnunet.org/ebe, this paper}} 216@footnote{An Excess-Based Economic Model for Resource Allocation in
217Peer-to-Peer Networks. Christian Grothoff, Department of Computer
218Sciences, Purdue University, 2009
219@uref{https://gnunet.org/git/bibliography.git/plain/docs/ebe.pdf, pdf}}
214 220
215@cindex Confidentiality 221@cindex Confidentiality
216@node Confidentiality 222@node Confidentiality