diff options
author | ng0 <ng0@infotropique.org> | 2017-10-28 17:10:12 +0000 |
---|---|---|
committer | ng0 <ng0@infotropique.org> | 2017-10-28 17:10:12 +0000 |
commit | 4a29e6f8300b6cd609898ed8dc0dae05c01e5ebd (patch) | |
tree | fd854af0a3727e3bb216530e1ef1e1301db09486 /doc | |
parent | de5a0882e7eb73f58e3c40c0123b5c6fb2f9a932 (diff) | |
download | gnunet-4a29e6f8300b6cd609898ed8dc0dae05c01e5ebd.tar.gz gnunet-4a29e6f8300b6cd609898ed8dc0dae05c01e5ebd.zip |
some notes in philosophy
Diffstat (limited to 'doc')
-rw-r--r-- | doc/documentation/chapters/philosophy.texi | 48 |
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, | |||
6 | reliable, open, non-discriminating, egalitarian, unfettered and | 6 | reliable, open, non-discriminating, egalitarian, unfettered and |
7 | censorship-resistant system of free information exchange. | 7 | censorship-resistant system of free information exchange. |
8 | We value free speech above state secrets, law-enforcement or | 8 | We value free speech above state secrets, law-enforcement or |
9 | intellectual property. GNUnet is supposed to be an anarchistic network, | 9 | intellectual property. |
10 | where the only limitation for peers is that they must contribute enough | 10 | GNUnet is supposed to be an anarchistic network, where the only |
11 | back to the network such that their resource consumption does not have | 11 | limitation for peers is that they must contribute enough back to |
12 | a significant impact on other users. GNUnet should be more than just | 12 | the network such that their resource consumption does not have |
13 | another file-sharing network. The plan is to offer many other services | 13 | a significant impact on other users. |
14 | and in particular to serve as a development platform for the next | 14 | GNUnet should be more than just another file-sharing network. |
15 | generation of decentralized Internet protocols. | 15 | The plan is to offer many other services and in particular |
16 | to serve as a development platform for the next generation of | ||
17 | decentralized 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 | ||
55 | GNUnet's primary design goals are to protect the privacy of its users and | 57 | GNUnet'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 | |||
161 | multiple IPs (IPv4 and IPv6) on multiple ports --- or even not use the | 163 | multiple IPs (IPv4 and IPv6) on multiple ports --- or even not use the |
162 | IP protocol at all (by running directly on layer 2). | 164 | IP 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. | ||
164 | GNUnet uses a special type of message to communicate a binding between | 167 | GNUnet uses a special type of message to communicate a binding between |
165 | public (ECC) keys to their current network address. These messages are | 168 | public (ECC) keys to their current network address. These messages are |
166 | commonly called HELLOs or peer advertisements. They contain the public key | 169 | commonly called @code{HELLO}s or peer advertisements. |
167 | of the peer and its current network addresses for various transport | 170 | They contain the public key of the peer and its current network |
168 | services. | 171 | addresses for various transport services. |
169 | A transport service is a special kind of shared library that | 172 | A transport service is a special kind of shared library that |
170 | provides (possibly unreliable, out-of-order) message delivery between | 173 | provides (possibly unreliable, out-of-order) message delivery between |
171 | peers. | 174 | peers. |
@@ -173,15 +176,15 @@ For the UDP and TCP transport services, a network address is an IP and a | |||
173 | port. | 176 | port. |
174 | GNUnet can also use other transports (HTTP, HTTPS, WLAN, etc.) which use | 177 | GNUnet can also use other transports (HTTP, HTTPS, WLAN, etc.) which use |
175 | various other forms of addresses. Note that any node can have many | 178 | various other forms of addresses. Note that any node can have many |
176 | different | 179 | different active transport services at the same time, |
177 | active transport services at the same time, and each of these can have a | 180 | and each of these can have a different addresses. |
178 | different addresses. Binding messages expire after at most a week (the | 181 | Binding messages expire after at most a week (the timeout can be |
179 | timeout can be shorter if the user configures the node appropriately). | 182 | shorter if the user configures the node appropriately). |
180 | This expiration ensures that the network will eventually get rid of | 183 | This expiration ensures that the network will eventually get rid of |
181 | outdated advertisements.@footnote{More details can be found in | 184 | outdated 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 | |||
189 | precautions against attacks in the form of freeloading. | 192 | precautions against attacks in the form of freeloading. |
190 | While the intentions of an attacker and a freeloader are different, their | 193 | While the intentions of an attacker and a freeloader are different, their |
191 | effect on the network is the same; they both render it useless. | 194 | effect on the network is the same; they both render it useless. |
192 | Most simple attacks on networks such as Gnutella involve flooding the | 195 | Most simple attacks on networks such as @command{Gnutella} |
193 | network with traffic, particularly with queries that are, in the worst | 196 | involve flooding the network with traffic, particularly |
194 | case, multiplied by the network. | 197 | with queries that are, in the worst case, multiplied by the network. |
195 | 198 | ||
196 | In order to ensure that freeloaders or attackers have a minimal impact on | 199 | In order to ensure that freeloaders or attackers have a minimal impact on |
197 | the network, GNUnet's file-sharing implementation tries to distinguish | 200 | the network, GNUnet's file-sharing implementation tries to distinguish |
@@ -209,8 +212,11 @@ amount of trust they assign the request a (possibly lower) effective | |||
209 | priority. Then, they drop the requests with the lowest effective priority | 212 | priority. Then, they drop the requests with the lowest effective priority |
210 | to satisfy their resource constraints. This way, GNUnet's economic model | 213 | to satisfy their resource constraints. This way, GNUnet's economic model |
211 | ensures that nodes that are not currently considered to have a surplus in | 214 | ensures that nodes that are not currently considered to have a surplus in |
212 | contributions will not be served if the network load is high.@footnote{Mor | 215 | contributions will not be served if the network load is high. |
213 | e details can be found in @uref{https://gnunet.org/ebe, this paper}} | 216 | @footnote{An Excess-Based Economic Model for Resource Allocation in |
217 | Peer-to-Peer Networks. Christian Grothoff, Department of Computer | ||
218 | Sciences, 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 |