[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r1416 - GNUnet-docs/WWW
From: |
grothoff |
Subject: |
[GNUnet-SVN] r1416 - GNUnet-docs/WWW |
Date: |
Tue, 12 Jul 2005 12:50:16 -0700 (PDT) |
Author: grothoff
Date: 2005-07-12 12:50:08 -0700 (Tue, 12 Jul 2005)
New Revision: 1416
Modified:
GNUnet-docs/WWW/documentation.php3
GNUnet-docs/WWW/namespace.php3
GNUnet-docs/WWW/philosophy.php3
GNUnet-docs/WWW/smtp.php3
GNUnet-docs/WWW/user.php3
GNUnet-docs/WWW/user_afs.php3
GNUnet-docs/WWW/user_gnunet.php3
GNUnet-docs/WWW/user_index.inc
Log:
docs
Modified: GNUnet-docs/WWW/documentation.php3
===================================================================
--- GNUnet-docs/WWW/documentation.php3 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/documentation.php3 2005-07-12 19:50:08 UTC (rev 1416)
@@ -1,7 +1,7 @@
<?php
include("scripts.php3");
$title = "GNUnet Documentation";
-$description = "Documentation for GNUnet";
+$description = "Overview of the available documentation for GNUnet";
include("html_header.php3");
H2("Documentation");
@@ -57,9 +57,9 @@
</li>
<li><?php W("Special topics"); ?>
<ol>
- <li><?php intlink("smtp.php3","Transport performance"); ?></li>
- <li><?php intlink("namespace.php3","Namespaces and Directories"); ?></li>
- <li><?php intlink("encoding.php3","Content encoding"); ?></li>
+ <li><?php intlink("smtp.php3","Transport performance (outdated)"); ?></li>
+ <li><?php intlink("namespace.php3","Namespaces and Directories
(outdated)"); ?></li>
+ <li><?php intlink("encoding.php3","Content encoding (outdated)"); ?></li>
</ol>
</ol>
<?php
Modified: GNUnet-docs/WWW/namespace.php3
===================================================================
--- GNUnet-docs/WWW/namespace.php3 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/namespace.php3 2005-07-12 19:50:08 UTC (rev 1416)
@@ -11,6 +11,8 @@
W("Please note that this document reflects the discussion before the actual
implementation of namespaces and directories.");
W("The final implementation is documented elsewhere.");
W("Nevertheless, almost everything written here still applies.");
+W("Still, some of what is written here outdated at this point.");
+W("This page is preserved primarily for historical purposes.");
EP();
Modified: GNUnet-docs/WWW/philosophy.php3
===================================================================
--- GNUnet-docs/WWW/philosophy.php3 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/philosophy.php3 2005-07-12 19:50:08 UTC (rev 1416)
@@ -30,6 +30,8 @@
W("The foremost goal of the GNUnet project is to become a widely used,
reliable, open, nondiscriminating, egalitarian, unfettered and
censorship-resistant system of free information exchange.");
W("We value free speech above state secrets, law-enforcement or intellectual
property.");
W("GNUnet is supposed to be an anarchistic network, where the only limitation
for peers is that they must contribute enough back to the network such that
their resource consumption does not have a significant impact on other users.");
+W("GNUnet should be more than just another file-sharing network.");
+W("The plan is to offer many other services and in particular to serve as a
development platform for the next generation of decentralized Internet
protocols.");
EP();
ANCHOR("Privacy");
@@ -43,7 +45,7 @@
ANCHOR("Versatility");
H4("Versatility");
BP();
-W("We call GNUnet a network because we want to support many different forms of
peer-to-peer applications.");
+W("We call GNUnet a peer-to-peer framework because we want to support many
different forms of peer-to-peer applications.");
W("GNUnet uses a plugin architecture to make the system extensible and to
encourage code reuse.");
W("While the first versions of the system only supported anonymous
file-sharing, other applications are being worked on and more will hopefully
follow in the future.");
W("A powerful synergy regarding anonymity services is created by a large
community utilizing many diverse applications over the same software
infrastructure.");
@@ -96,11 +98,13 @@
W("Almost all peer-to-peer communications in GNUnet are between mutually
authenticated peers.");
W("The authentication works by having each peer sign a secret session key with
its RSA key.");
W("Furthermore, the session key is encrypted with the public key of the other
peer.");
-W("That session key is then used to encrypt the communication between the two
peers using Blowfish.");
-W("As only the two participating hosts know the session key, this
authenticates each packet without requiring signatures each time.");
+W("That session key is then used to encrypt the communication between the two
peers using 256-bit AES.");
+W("A each peer independently generates such a session key for the data that
this peer will transmit to the other peer.");
+W("As only the two participating hosts know the two session keys, this
authenticates each packet without requiring signatures each time.");
+W("GNUnet uses SHA-512 hash codes to verify the integrity of messages.");
P();
-W("In GNUnet, the identity of a host is the hash of its public key.");
+W("In GNUnet, the identity of a host is the (SHA-512) hash of its public
key.");
W("For that reason, man-in-the-middle attacks will not break the
authentication or accounting goals.");
W("Essentially, for GNUnet, the IP of the host does not matter.");
W("As the public key is the only thing that truly matters, faking an IP, a
port or any other property of the underlying transport protocol is
irrelevant.");
@@ -108,11 +112,18 @@
P();
W("GNUnet uses a special type of message to communicate a binding between
public (RSA) keys to their current network address.");
-W("For the UDP and TCP transport layers, a network address is an IP and a
port.");
-W("GNUnet can also use other transport mechanisms (HTTP, SMTP, etc.) which use
various other forms of addresses.");
-W("Note that any node can have multiple addresses at the same time for the
various transport mechanisms.");
+W("These messages are commonly called HELOs or peer advertisements.");
+W("They contain the public key of the peer and a signature with its current
network address for a specific transport service.");
+W("A transport service is a special kind of shared library that enables
unreliable, out-of-order message delivery between peers.");
+W("For the UDP and TCP transport services, a network address is an IP and a
port.");
+W("GNUnet can also use other transports (HTTP, SMTP, etc.) which use various
other forms of addresses.");
+W("Note that any node can have many different active transport services at the
same time, and each of these can have a different address.");
W("Binding messages expire after at most a week (the timeout can be shorter if
the user configures the node appropriately).");
+W("This expiration ensures that the network will eventually get rid of
outdated advertisements.");
+W("More details can be found in %s.",
+ extlink_("download/transport.ps", "this paper"));
+
EP();
H4("Accounting to Encourage Resource Sharing");
@@ -142,7 +153,7 @@
BP();
W("Adversaries outside of GNUnet are not supposed to know what kind of actions
a peer is involved in.");
W("Only the specific neighbor of a peer that is the corresponding sender or
recipient of a message may know its contents, and even then application
protocols may place further restrictions on that knowledge.");
-W("In order to ensure confidentiality, GNUnet uses link encryption, that is
each message exchanged between two peers is encrypted using a key only known to
these two peers.");
+W("In order to ensure confidentiality, GNUnet uses link encryption, that is
each message exchanged between two peers is encrypted using a pair of keys only
known to these two peers.");
W("Encrypting traffic like this makes any kind of traffic analysis much
harder.");
W("Naturally, for some applications, it may still be desirable if even
neighbors cannot determine the concrete contents of a message.");
W("In GNUnet, this problem is addressed by the specific application-level
protocols (see for example, %s and %s in anonymous file sharing).",
@@ -158,11 +169,20 @@
BP();
W("Providing anonymity for users is the central goal for the anonymous
file-sharing application.");
W("Many other design decisions follow in the footsteps of this requirement.");
-//W("(Nevertheless, it is possible to forego anonymity when this is not
required.)");
+W("Anonymity is never absolute.");
+W("While there are various %s that can help quantify the level of anonymity
that a given mechanism provides, there is no such thing as complete anonymity.",
+ extlink_("papers/tmAnon.ps", "scientific metrics"));
+W("GNUnet allows users to select for each operation (upload, search, download)
the desired level of anonymity.");
+W("The metric used is the amount of cover traffic available to hide the
request.");
+W("While this metric is not as good as the theoretical metric given in %s, it
is probably the best metric available to a peer with a purely local view of the
world that does not rely on unreliable external information.");
+W("The default anonymity level is 1, which uses anonymous routing but imposes
no minimal requirements on cover traffic.");
+W("It is possible to forego anonymity when this is not required.");
+W("The anonymity level of 0 allows GNUnet to use more efficient, non-anonymous
routing.");
+EP();
-// some more about anonymity in general here!
-P();
+H5("How GNUnet achieves Anonymity");
+BP();
W("Contrary to other designs, we do not believe that users achieve strong
anonymity just because their requests are obfuscated by a couple of
indirections.");
W("This is not sufficient if the adversary uses traffic analysis.");
W("The thread model used for anonymous file sharing in GNUnet assumes that the
adversary is quite powerful.");
@@ -183,6 +203,8 @@
W("As our queries must have us as the receiver of the reply (otherwise they
would be useless), we must put ourselves as the receiver of replies that
actually go to other hosts; in other words, we must indirect replies.");
W("Unlike other systems, in anonymous file-sharing as implemented on top of
GNUnet we do not have to indirect the replies if we don’t think we need
more traffic to hide our own actions.");
W("This increases the efficiency of the network as we can indirect less under
higher load.");
+W("More details can be found in %s.",
+ extlink_("download/aff.ps", "this paper"));
EP();
@@ -199,6 +221,10 @@
W("The reason is that queries and replies are transmitted in an encrypted
format such that intermediaries cannot tell what the query is for or what the
content is about.");
W("Mind that this is not the same encryption as the link-encryption between
the nodes.");
W("GNUnet has encryption on the network layer (link encryption,
confidentiality, authentication) and again on the application layer (provided
by <tt>gnunet-insert</tt>, <tt>gnunet-download</tt>, <tt>gnunet-search</tt> and
<tt>gnunet-gtk</tt>).");
+
+W("More details can be found in %s.",
+ extlink_("download/ecrs.ps", "this paper"));
+
EP();
Modified: GNUnet-docs/WWW/smtp.php3
===================================================================
--- GNUnet-docs/WWW/smtp.php3 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/smtp.php3 2005-07-12 19:50:08 UTC (rev 1416)
@@ -9,6 +9,8 @@
BP();
W("This page describes the new SMTP transport service for GNUnet.");
W("It also describes the transport layer in more detail and gives some
benchmarking results.");
+W("The results presented are quite old and maybe outdated at this point.");
+W("This page is preserved primarily for historical purposes.");
EP();
echo "<ol>\n";
LIV(extlink_("#why","Why use SMTP for a peer-to-peer transport?"));
Modified: GNUnet-docs/WWW/user.php3
===================================================================
--- GNUnet-docs/WWW/user.php3 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/user.php3 2005-07-12 19:50:08 UTC (rev 1416)
@@ -1,7 +1,7 @@
<?php
include("scripts.php3");
$title = "GNUnet Documentation: Using GNUnet";
-$description="GNUnet Documentation - a secure peer-to-peer framework starring
anonymous file sharing with an excess based trust-economy";
+$description="Information for users (overview)";
include("html_header.php3");
H2("End-User Documentation");
@@ -10,7 +10,6 @@
W("This means that based on a common codebase, GNUnet will be able to run a
diverse set of applications.");
W("The only useful application at the moment is %s.",
intlink_("user_afs.php3","anonymous file sharing"));
-echo ".";
W("In order to use any GNUnet application, a user must first install the
software, then do some basic configuration of the framework and finally
configure the specific application itself.");
W("The configuration of the framework involves setting up the network and the
specification which applications should be used.");
P();
Modified: GNUnet-docs/WWW/user_afs.php3
===================================================================
--- GNUnet-docs/WWW/user_afs.php3 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/user_afs.php3 2005-07-12 19:50:08 UTC (rev 1416)
@@ -1,7 +1,7 @@
<?php
include("scripts.php3");
-$title = "GNUnet Documentation: Using GNUnet for Anonymous File Sharing";
-$description="GNUnet Documentation - Anonymous File Sharing with GNUnet";
+$title = "GNUnet Documentation: Using GNUnet for File Sharing";
+$description="Configuring and using GNUnet for (anonymous) file sharing";
include("html_header.php3");
H2("Anonymous File Sharing with GNUnet");
?>
@@ -29,10 +29,10 @@
LI(extlink_("#gnunetinsert","gnunet-insert"));
LI(extlink_("#gnunetsearch","gnunet-search"));
LI(extlink_("#gnunetdownload","gnunet-download"));
- LI(extlink_("#gnunetdelete","gnunet-delete"));
+ LI(extlink_("#gnunetunindex","gnunet-unindex"));
LI(extlink_("#gnunetdirectory","gnunet-directory"));
LI(extlink_("#gnunetpseudonym","gnunet-pseudonym"));
- LI(extlink_("#GUI","gnunet-gtk"));
+ LI(intlink_("gnunetgtk.php3","gnunet-gtk"));
echo "</ul></li></ul>\n";
ANCHOR("concepts"); H3("Concepts");
@@ -376,7 +376,7 @@
P();
W("gnunet-insert has a ton of additional options to handle namespaces and
directories.");
W("See the man-page for details.");
-W("If you want to remove a file that you have indexed from the local peer, use
the tool <tt>gnunet-delete</tt> to un-index the file.");
+W("If you want to remove a file that you have indexed from the local peer, use
the tool <tt>gnunet-unindex</tt> to un-index the file.");
EP();
HR();
@@ -451,9 +451,9 @@
W("Use -h to get a short description of the options.");
EP();
-ANCHOR("gnunetdelete");H4("gnunet-delete");
+ANCHOR("gnunetunindex");H4("gnunet-unindex");
BP();
-W("<tt>gnunet-delete</tt> can be used to un-index files that were inserted
into GNUnet (works only for files that were inserted locally and that are still
present on the local drive).");
+W("<tt>gnunet-unindex</tt> can be used to un-index files that were inserted
into GNUnet (works only for files that were inserted locally and that are still
present on the local drive).");
EP();
ANCHOR("gnunetdirectory");H4("gnunet-directory");
@@ -521,81 +521,5 @@
W("Furthermore, the namespace advertisement can only be published under a
single keyword (this is purely a UI limitation).");
EP();
-
-ANCHOR("GUI");H4("gnunet-gtk");
-BP();
-W("<tt>gnunet-gtk</tt> is not yet available for GNUnet 0.7.x.");
-/*
-W("<tt>gnunet-gtk</tt> is the GTK+ interface for GNUnet.");
-W("It can currently only be used to search for and download files from the
network.");
-W("gnunet-gtk can also be used to insert files into the network.");
-W("If you want to insert lots of files, you’re probably better of using
%s.",
- extlink_("#gnunetinsert","gnunet-insert"));
-P();
-W("After <tt>gnunet-gtk</tt> was started, you should see the following:");
-IMG("gtk-startup.png","GNUnet GTK startup window","CENTER",788,332);
-W("Enter the query into the input line at the bottom and click on search.");
-W("A register card will open in the main window.");
-W("In that card, search results obtained from the network will be listed once
they arrive.");
-W("<tt>gnunet-gtk</tt> will keep searching for the query until you close that
card.");
-W("No duplicate results will be displayed.");
-
-IMG("gtk-search.png", "This window displays the search results", "CENTER",
788, 332);
-
-W("You can enter additional queries or select a file to download from the
list.");
-W("The size of the file is displayed in bytes.");
-W("Mind that the description was supplied by the user inserting the file and
may not be accurate.");
-W("After you click on the download button, the entry selected will be removed
from the results list and a dialog will prompt you for the filename that you
want to give to the file.");
-W("If you choose an existing file, that file will be overwritten without any
warnings.");
-W("If the existing file contains the same data (even in parts) as the file
that you are trying to download, those parts will not be downloaded again.");
-W("You can use this feature to continue downloads that were incomplete.");
-W("After you gave a filename, click on <i>ok</i>.");
-W("The dialog will disappear and <tt>gnunet-gtk</tt> will start the
download.");
-W("The download overview window shows the progress for each download:");
-
-IMG("gtk-downloads.png", "download progress", "CENTER", 788, 332);
-
-W("You can abort downloads by selecting them in this window and clicking on
"Remove selected entries".");
-W("This will leave the parts of the file that were already downloaded on the
drive.");
-W("Closing the download list does not affect the downloads, they will continue
in the background.");
-W("But note that exiting <tt>gnunet-gtk</tt> will implicitly abort all
downloads.");
-W("Be advised that the download usually starts very slowly, then speeds up,
and eventually declines a bit again at the end.");
-W("This is perfectly normal.");
-W("Go get a coffee while doing the download -- or do a couple in parallel.");
-W("GNUnet uses a lot more time (but not that much more bandwidth) because it
delays processing to make traffic analysis hard.");
-W("Even downloading a file from your local harddrive (that you inserted
yourself) can take a couple of minutes!");
-W("The good news is that the delays currently experienced are likely to become
smaller whenever the traffic on GNUnet increases.");
-W("This is one of the reasons why the download is fastest in the middle of the
process.");
-P();
-W("In order to insert a file, use the <tt>File</tt> menu.");
-W("A dialog will pop up and prompt you to choose the file to insert:");
-IMG("gtk-insert.png", "choose file to insert", "CENTER",451,415);
-P();
-W("Select the file and press <tt>ok</tt>.");
-W("Next you will have to provide a description and keywords and choose if you
want to <tt>index</tt> or <tt>insert</tt> the file (choose index if the file
will not be moved or deleted to safe space):");
-IMG("gtk-insert2.png", "choose file to insert", "CENTER",408, 428);
-P();
-IMG("gtk-insert3.png", "adding keywords", "CENTER",408,428);
-P();
-W("Finally, press ok and watch GNUnet making the file available:");
-IMG("gtk-inserting.png", "insertion in progress", "CENTER", 178, 73);
-P();
-W("You can search, insert and download in parallel:");
-IMG("gtk-bigshot.png", "The big picture.", "CENTER", 599, 427);
-
-W("<tt>gnunet-gtk</tt> also allows you to handle directories.");
-W("Downloading a directory automatically opens the contents of the directory
in a new frame in the notebook.");
-W("You can create and insert a new directory from the known FIs in the FI
database using <tt>advanced-assemble directory</tt>.");
-IMG("gtk-assemble-directory.png", "assemble a directory", "CENTER", 628, 508);
-P();
-W("Pseudonyms, the public-private key pair that allows publishing documents in
a namespace can also be managed with <tt>gnunet-gtk</tt>.");
-W("The functionality provided is equivalent to <tt>gnunet-pseudonym</tt>.");
-W("Once a pseudonym has been created, files and directories can be placed in
the namespace defined by the pseudonym.");
-IMG("gnunet-gtk-namespace.png", "Inserting into a namespace.", "CENTER", 788,
608);
-W("<tt>gnunet-gtk</tt> also offers the option to search a given namespace.");
-W("Just as <tt>gnunet-pseudonym</tt> can print a list of all known namespace
advertisements, the namespace search in <tt>gnunet-gtk</tt> offers access to
the list of advertised namespaces and the respective meta-data.");
-IMG("gnunet-namespace-search.png", "Searching a namespace.", "CENTER", 658,
348);
-EP();
-*/
include("html_footer.php3");
-?>
+?>
\ No newline at end of file
Modified: GNUnet-docs/WWW/user_gnunet.php3
===================================================================
--- GNUnet-docs/WWW/user_gnunet.php3 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/user_gnunet.php3 2005-07-12 19:50:08 UTC (rev 1416)
@@ -1,7 +1,7 @@
<?php
include("scripts.php3");
-$title = "GNUnet Documentation: GNUnet core";
-$description="GNUnet Documentation - a secure peer-to-peer framework starring
anonymous file sharing with an excess based trust-economy";
+$title = "GNUnet Documentation: GNUnet core setup";
+$description="How to configure the GNUnet peer-to-peer framework (excluding
GNUnet applications)";
include("html_header.php3");
H2("GNUnet Documentation: GNUnet core");
?>
@@ -23,58 +23,88 @@
W("First, in addition to the %s you must download the latest version of %s and
install that library.",
ARRAY(intlink_("download.php3", "GNUnet sources"),
extlink_("/libextractor/", "libextractor")));
-W("Libextractor requires glib (also required for GNUnet) and zlib (compression
library, highly likely that you already have it).");
+W("libextractor has itself various mandatory and optional dependencies.");
+W("Please check the dependency list, both GNUnet and libextractor contain a
file README.debian that lists the current package dependencies for Debian.");
+W("There maybe files for other distributions, or you might be able to find
equivalent packages for your distribution.");
W("Installing libextractor should be as simple as:");
EP();
-PRE("# ./configure --prefix=\$HOME\n" .
- "# make\n" .
+PRE("$ ./configure --prefix=\$HOME\n" .
+ "$ make\n" .
"# make install\n");
BP();
-W("For GNUnet, you should install gtk+ and either mysql or sqlite.");
+W("For GNUnet, you should again check the dependency list.");
W("Now compile and install GNUnet using:");
EP();
-PRE("# ./configure --prefix=\$HOME --with-extractor=\$HOME\n" .
- "# make\n" .
+PRE("$ ./configure --prefix=\$HOME --with-extractor=\$HOME\n" .
+ "$ make\n" .
"# make install\n");
BP();
-W("Now test the installation using");
+
+W("Finally, you probably want to compile <tt>gnunet-gtk</tt>:");
EP();
+PRE("$ ./configure --prefix=\$HOME --with-extractor=\$HOME
--with-gnunet=\$HOME\n" .
+ "$ make\n" .
+ "# make install\n");
+BP();
+W("If you are updating from a version from the 0.7.x series, you should (after
stopping gnunetd) run:");
+EP();
+PRE("# gnunet-update\n");
+BP();
+W("This should trigger all necessary changes.");
+W("If you are updating from a version before 0.7.0pre2, you must delete your
old GNUnet directories.");
+W("Note that you will also have to run <tt>gnunet-update</tt> after certain
changes to the <tt>gnunetd.conf</tt> configuration file.");
+W("<tt>gnunetd</tt> will immediately exit with an error message if
<tt>gnunet-update</tt> must be run.");
+
+P();
+
+W("If you are using GNUnet for the first time (or if you deleted all of your
old files) you will probably want to run <tt>gnunet-setup</tt> at this point.");
+W("The setup tool supports various styles of user interfaces.");
+W("Invoke <tt>gnunet-setup</tt> without arguments to see the various styles
supported on your platform.");
+W("Using one of the wizards should allow a quick initial configuration.");
+
+P();
+
+W("After finishing the configuration with <tt>gnunet-setup</tt>, you can test
the installation using");
+EP();
PRE("# gnunet-transport-check\n");
+PRE("# gnunet-transport-check -p\n");
BP();
-W("As a side-effect, this will generate the configuration file
<tt>/etc/gnunet.conf</tt>.");
-W("If the test fails, you should edit the file to configure your network.");
-W("If you are using the mysql database, edit the configuration from the
default (sqlite) to mysql.");
-W("After changing the configuration, you should always run
<tt>gnunet-update</tt> to allow GNUnet to perform necessary internal updates.");
+W("The first command tests your local transports (basics), the second one
connectivity to the rest of the peer-to-peer network (ping).");
+W("If the test fails (i.e. <tt>gnunet-transport-check -p</tt> reports being
able to connect to 0 peers), you should revisit your configuration, in
particular your network setup.");
+W("Again, after changing the configuration, you should always run
<tt>gnunet-update</tt> to allow GNUnet to perform necessary internal updates.");
+W("Note that it is <tt>normal</tt> for the NAT transport to be reported as
not-working in some configurations.");
W("Once configuration is complete and <tt>gnunet-update</tt> is done, start
the server using:");
EP();
PRE("# gnunetd -d\n");
BP();
W("The "-d" option causes <tt>gnunetd</tt> to print all errors to
the console and prevents <tt>gnunetd</tt> from detaching from the console.");
-W("If you get no error messages, press "CTRL-C" to abort
<tt>gnunetd</tt> and restart it without the "-d" option.");
-W("Without the option, <tt>gnunetd</tt> will detach from the terminal and
write errors into the logfile.");
-P();
W("If you get any errors, you may have to edit the configuration file.");
-W("Likely problems are the network configuration (see below) and problems with
the database used by the anonymous file sharing application (see %s)",
- intlink_("user_afs.php3",
- "Configuration and Usage of the Anonymous File Sharing
Application"));
+W("Some errors maybe related to the specific applications that are being used,
so consult the documentation there.");
W("Use the log-files and the tools described below to diagnose problems.");
W("You may also want to increase the verbosity of the logging using the
parameter "-L DEBUG".");
W("Read the man pages for additional information about command line options.");
P();
+W("Once everything works and you get no error messages, press
"CTRL-C" to abort <tt>gnunetd</tt> and restart it without the
"-d" option.");
+W("Without the option, <tt>gnunetd</tt> will detach from the terminal and
write errors into the logfile.");
+P();
+W("If you want to automatically start GNUnet each time your machine boots
<tt>contrib/initgnunet</tt> contains an example script to start the server as
user <em>gnunet</em> with a configuation in <tt>/etc/gnunet.conf</tt>.");
+W("If you installed a binary package, the installer probably already put the
start-script into "/etc/init.d/gnunetd" or the appropriate location
for your system.");
+W("Still, even in that case, you may have to activate the script.");
-W("GNUnet typically requires the configuration of three basic layers.");
+EP();
+
+H3("General notes about the configuration");
+BP();
+
+W("GNUnet typically requires the configuration of four basic layers.");
w("On the lowest layer, you need to configure the transport services that
allow GNUnet to communicate with other peers.");
W("A simple example is the specification of the port number used by a TCP or
UDP transport.");
W("The GNUnet core needs to know certain resource limitations, such as CPU
load and bandwidth usage.");
W("Both the configuration of the transport services and the GNUnet core are
described below.");
-W("Finally, the applications run on top of GNUnet may also require some
configuration.");
-P();
-
-W("If you want to automatically start GNUnet each time your machine boots
<tt>contrib/initgnunet</tt> contains an example script to start the server as
user <em>gnunet</em> with a configuation in <tt>/etc/gnunet.conf</tt>.");
-W("If you installed a binary package, the installer probably already put the
start-script into "/etc/init.d/gnunetd" or the appropriate location
for your system.");
-W("Still, even in that case, you may have to activate the script.");
+W("Additionally, the applications run on top of GNUnet may also require some
configuration.");
+W("Finally, the user interface(s) that are used to interact with
<tt>gnunetd</tt> are configured in a per-user configuration file.");
EP();
HR();
@@ -87,10 +117,13 @@
W("When a required configuration file is not present on startup, any GNUnet
tool will attempt to create one by dumping a copy of the respective default
configuration file to that location.");
W("The option <tt>-c</tt> can be used for any GNUnet tool to specify an
alternative location for the configuration file.");
W("GNUnet uses two different configuration files (with the same syntax but
different options), one for the server (<tt>gnunetd</tt>) and another one for
all of the clients.");
-W("The rationale is that typcially the system administratr will setup
<tt>gnunetd</tt> while ordinary users are executing the clients.");
-W("The default location for the configuration of <tt>gnunetd</tt> is
<tt>/etc/gnunet.conf</tt>.");
+W("The rationale is that typcially the system administrator will setup
<tt>gnunetd</tt> while ordinary users are executing the clients.");
+P();
+W("The default location for the configuration of <tt>gnunetd</tt> is
<tt>/etc/gnunetd.conf</tt>.");
+W("If <tt>gnunetd</tt> is run as an ordinary user and cannot access a
configuration in <tt>/etc/gnunetd.conf</tt> it will automatically fall back to
<tt>\$HOME/.gnunet/gnunetd.conf</tt>.");
W("A few tools that help setup and diagnose the daemon (like
<tt>gnunet-transport-check</tt>) also use this configuration file.");
W("A template for this configuration is in <tt>contrib/gnunet.root</tt>.");
+P();
W("The GNUnet clients (like <tt>gnunet-insert</tt> or <tt>gnunet-gtk</tt>) use
a different configuration file.");
W("All GNUnet clients expect this file to reside by default in
<tt>\$HOME/.gnunet/gnunet.conf</tt>.");
W("A template for this file is in <tt>contrib/gnunet.user</tt>.");
@@ -344,19 +377,15 @@
BP();
W("In this directory GNUnet stores the key and last known Internet address of
each known GNUnet node.");
-W("Each file is about 550 bytes long (different transport protocols may have
different address sizes).");
-W("A %s of GNUnet hosts can be obtained from the GNUnet webpage.",
- extlink_("download/hosts.tar.gz", "list"));
-W("On startup, GNUnet downloads a list of initial hosts from
<tt>http://ovmj.org/GNUnet/download/hostlist</tt>.");
-W("This list is generated using");
+W("Each file is about 600 bytes long (different transport protocols may have
different address sizes).");
+W("On startup, GNUnet downloads a list of initial hosts from the specified
<tt>HOSTLISTURL</tt>.");
+W("The files listed in the <tt>HOSTLISTURL</tt> are generated using:");
EP();
-PRE("# cat ~/.gnunet/data/hosts/* > hostlist");
-
+PRE("$ cat /var/lib/GNUnet/data/hosts/* > hostlist");
BP();
-W("Alternative hostlist servers can be used by modifying
<tt>gnunet.conf</tt>.");
-
+W("Running the command above and offering the generated <tt>hostlist</tt> file
on a webserver is all it takes to run your own hostlist server.");
+W("<tt>gnunetd</tt> will try to download peer advertisements from a (random)
server specified in the <tt>HOSTLISTURL</tt> only if too few peers are
connected for a longer period of time.");
P();
-
W("Once connected, GNUnet hosts exchange information about other hosts
automatically.");
W("Thus except for the initial connection, there should be no pressing need to
obtain a new list (except if a node was offline for a long time and the old
list aged so much that it became useless).");
W("If hosts cannot be reached and the time that the key has been signed to be
valid by the sender has expired, GNUnet deletes their identities from
<tt>data/hosts/</tt>.");
@@ -366,20 +395,22 @@
ANCHOR("gnunet.conf.hostlisturl");H4("GNUNETD: HOSTLISTURL");
BP();
-W("Whenever gnunetd needs to learn about an initial set of peers that it can
connect to, it downloads a list of initial nodes to connect to via http.");
+W("Whenever <tt>gnunetd</tt> needs to learn about an initial set of peers that
it can connect to, it downloads a list of initial nodes to connect to via
http.");
W("The URL to use is specified here.");
+W("Multiple URLs can be specified separated by spaces.");
EP();
ANCHOR("gnunet.conf.applications");H4("GNUNETD: APPLICATIONS");
BP();
-W("Which applications should gnunetd support?");
+W("Which applications should <tt>gnunetd</tt> support?");
W("Specify the name of the dynamic shared object (DSO) that implements the
service in the gnunetd core here.");
W("Multiple DSOs can be specified, separated by spaces.");
-W("You should always specify "advertising getoption topology" since
these are rather fundamental applications.");
+W("You should always specify "advertising getoption" since these are
rather fundamental applications.");
W("Add "stats" in order to be able to obtain statistics using
<tt>gnunet-stats</tt>.");
+W("Add "traffic" to see statistics about traffic (also used by
anonymous file sharing for cover traffic estimates).");
W("Further additions depend on which specific applications you want to use.");
-W("Possible choices are "%s chat tbench tracekit".",
+W("Possible choices include "%s chat tbench tracekit".",
intlink_("user_afs.php3","fs"));
EP();
@@ -387,19 +418,21 @@
BP();
W("Which transport services should be used?");
-W("Use space-separated list of the modules, for example "udp smtp
tcp".");
+W("Use space-separated list of the modules, for example "udp smtp tcp
nat".");
W("If you want to use SMTP, please read the %s for details.",
intlink_("smtp.php3","SMTP documentation"));
P();
-W("The <tt>contrib/</tt> directory contains a %s for the configuration that
should be self-explanatory.",
- extlink_("gnunet.conf","template"));
+W("The <tt>gnunet-setup</tt> tool also contains help texts for the various
options.");
EP();
HR();
ANCHOR("clientoptions"); H3("Client options");
+W("These are options that should be specified in the per-user
<tt>gnunet.conf</tt> configuration files.");
+W("They apply to the various user interfaces for GNUnet.");
+
ANCHOR("gnunet.conf.host");
H4("NETWORK: HOST");
@@ -466,24 +499,13 @@
H4("gnunet-peer-info");
BP();
-W("The <tt>gnunet-peer-info</tt> tool displays the internet addresses and the
identities of all GNUnet peers that the local peer is aware of.");
+W("The <tt>gnunet-peer-info</tt> tool displays the identities, trust earned
and Internet addresses of all GNUnet peers that the local peer is aware of.");
W("The output looks like this:");
EP();
PRE("$ gnunet-peer-info\n" .
- "F149393582FDEF31BB745ACD7AE21D9B65CFAC09 at address 121.49.31.144:2086
(TCP)\n" .
- "B58DC6FC400042A54CDD830C403216C3BCDC9DDC at address 92.57.67.117:2086
(TCP)\n" .
- "2F7A9C9A4D62E128EDD5D444346F129F9916CAC8 at address 10.54.15.110:2086
(TCP)\n" .
- "1BA51B8DFC0D3B055D3ACB237CA162BD770E46C9 at address 31.272.130.13:2086
(TCP)\n" .
- "FC9DEC9C16919AA31B1085C6DA14EF04A0B91CB5 at address 47.7.61.33:2086
(TCP)\n" .
- "A825E479D9B0A955AC401BEEA3D5CA7BE92B78D1 at address 101.182.95.42:2086
(TCP)\n" .
- "7DC4C7B9C295ADD8D15FC5253457F53DAC20D0E1 at address 221.13.9.90:2086
(TCP)\n" .
- "3507BFAFFD3C05BA13F512C78456C4D3035E6948 at address 164.175.1.19:2086
(TCP)\n" .
- "CB6DB904F1C519D30317470193B701D014703004 at address 124.15.21.31:2086
(TCP)\n" .
- "9CB8D759542525AE7E06ADD8239150325B81DEB9 at address 107.117.351.44:2086
(TCP)\n" .
- "087C52178DEAE7502983AA174D9FEE373608C7FE at address 95.15.1.71:2086
(TCP)\n" .
- "42F91CAB229B3119F80A0D447A12FE867B60895F at address 23.99.191.24:2086
(TCP)\n" .
- "8E846CAA7B75C1F88D3ADF94FCC89D6C8C95E1FF at address 85.42.211.167:2086
(TCP)\n");
+ "Peer 'CJ4J...' with trust 31 and address '31.79.24.1:2086 (TCP)'\n"
+ "Peer 'FA65...' with trust 0 and address '80.16.46.2:2086 (UDP)'");
ANCHOR("stats");H4("gnunet-stats");
@@ -491,7 +513,7 @@
W("<tt>gnunet-stats</tt> is a little tool that displays statistics.");
W("Unlike the other core tools, it uses the client configuration and only
works if <tt>gnunetd</tt> is already running.");
W("<tt>gnunet-stats</tt> also only works if the <tt>stats</tt> module is
loaded as an application.");
-W("The numbers are for the current gnunetd process only.");
+W("The numbers are for the current <tt>gnunetd</tt> process only.");
W("The output looks similar to the following example, but depends on which
modules you have loaded and what your node has been doing so far.");
EP();
Modified: GNUnet-docs/WWW/user_index.inc
===================================================================
--- GNUnet-docs/WWW/user_index.inc 2005-07-12 19:47:16 UTC (rev 1415)
+++ GNUnet-docs/WWW/user_index.inc 2005-07-12 19:50:08 UTC (rev 1416)
@@ -1,8 +1,8 @@
<ol>
<li><?php intlink("user_gnunet.php3","Compilation and Configuration of
GNUnet"); ?></li>
<li><?php intlink("user_afs.php3","Configuration and Usage of GNUnet’s
Anonymous file sharing"); ?></li>
- <li><?php intlink("user_chat.php3","Broadcast chat"); ?></li>
+ <!-- li><?php intlink("user_chat.php3","Broadcast chat"); ?></li -->
<!-- li><?php intlink("user_tbench.php3","Measureing the transport
performance"); ?></li -->
<!-- li><?php intlink("user_tracekit.php3","Tracing the GNUnet topology");
?></li -->
- <li><?php intlink("user_testbed.php3","Deploying a GNUnet P2P testbed");
?></li>
+ <!-- li><?php intlink("user_testbed.php3","Deploying a GNUnet P2P testbed");
?></li -->
</ol>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r1416 - GNUnet-docs/WWW,
grothoff <=