[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r6329 - GNUnet-docs/WWW
From: |
gnunet |
Subject: |
[GNUnet-SVN] r6329 - GNUnet-docs/WWW |
Date: |
Sat, 16 Feb 2008 16:29:26 -0700 (MST) |
Author: grothoff
Date: 2008-02-16 16:29:26 -0700 (Sat, 16 Feb 2008)
New Revision: 6329
Modified:
GNUnet-docs/WWW/protocol_transport.php3
GNUnet-docs/WWW/protocol_transport_index.inc
GNUnet-docs/WWW/protocol_transport_tcp.php3
GNUnet-docs/WWW/protocol_transport_udp.php3
Log:
updating transport protocol docs
Modified: GNUnet-docs/WWW/protocol_transport.php3
===================================================================
--- GNUnet-docs/WWW/protocol_transport.php3 2008-02-16 22:18:28 UTC (rev
6328)
+++ GNUnet-docs/WWW/protocol_transport.php3 2008-02-16 23:29:26 UTC (rev
6329)
@@ -6,7 +6,7 @@
BP();
W("GNUnet uses a special type of message to bind public keys to their current
address.");
-W("For the UDP, TCP and HTTP transport layers, an address is an IP and a
port.");
+W("For the UDP, TCP and HTTP transport layers, an address consists of IPv4
(and/or IPv6) addresses and a port.");
W("Other transport mechanisms (SMTP, etc.) deploy various other forms of
addresses.");
W("Note that any node can have multiple addresses for the various transport
mechanisms.");
EP();
@@ -27,6 +27,7 @@
BP();
W("The best way to start implementing a new transport mechanism is to start
with existing code that is semantically as close to the new mechanism as
possible.");
W("The most important criteria is if the connection is stateful and
bidirectional (TCP, HTTP) or stateless and unidirectional (UDP, SMTP).");
+W("Implementations also can choose to only support messages of fixed size
using some implemntation-dependent fixed MTU (UDP, SMTP), provide a streaming
interface and use a stream (TCP) or internally convert a streaming interface
into individual messages (HTTP).");
W("Since reliability and delays are handled by the applications, these
criteria are irrelevant for choosing an implementation to evolve from.");
P();
@@ -45,7 +46,8 @@
W("Depending on the implementation of the transport mechanism, it may not be
necessary to transmit the sender identity or the size explicitly in each
message.");
W("For example, a stateful transport such as TCP may only transmit the sender
identity once and use special messages to switch between plaintext and
encrypted messages.");
W("UDP on the other hand must transmit the sender identity each time.");
-W("However, the packet size of UDP makes it unnecessary to explicitly transmit
the message size.");
+W("The HTTP transport encodes the sender identity in the request URL.");
+W("Also, some transports need to explicitly transmit the size of the message
(TCP) whereas for other transports (such as UDP) the explicit packet size makes
it unnecessary to explicitly transmit the message size.");
EP();
include("html_footer.php3");
Modified: GNUnet-docs/WWW/protocol_transport_index.inc
===================================================================
--- GNUnet-docs/WWW/protocol_transport_index.inc 2008-02-16 22:18:28 UTC
(rev 6328)
+++ GNUnet-docs/WWW/protocol_transport_index.inc 2008-02-16 23:29:26 UTC
(rev 6329)
@@ -1,8 +1,6 @@
<ol>
<li><?php intlink("protocol_transport_udp.php3","UDP"); ?></li>
<li><?php intlink("protocol_transport_tcp.php3","TCP"); ?></li>
+<li><?php intlink("protocol_transport_http.php3","HTTP"); ?></li>
<li><?php intlink("smtp.php3","SMTP"); ?></li>
-<!-- li><?php intlink("protocol_transport_udp6.php3","UDP6"); ?></li -->
-<!-- li><?php intlink("protocol_transport_tcp6.php3","TCP6"); ?></li -->
-<!-- li><?php intlink("protocol_transport_http.php3","HTTP"); ?></li -->
</ol>
Modified: GNUnet-docs/WWW/protocol_transport_tcp.php3
===================================================================
--- GNUnet-docs/WWW/protocol_transport_tcp.php3 2008-02-16 22:18:28 UTC (rev
6328)
+++ GNUnet-docs/WWW/protocol_transport_tcp.php3 2008-02-16 23:29:26 UTC (rev
6329)
@@ -23,11 +23,19 @@
BP();
W("Here, <tt>data</tt> is the message as passed down by the GNUnet core.");
P();
-W("For the TCP transport service, the sender address in the HELO has this
format:");
+W("For the TCP transport service, the sender address in the HELLO has this
format:");
EP();
LAYOUT("HostAddress",
- F(ARRAY(N("IP", NBO_()) => 4,
+ F(ARRAY(N("IPv6 address", "") => 16,
+ N("IPv4 address", NBO_()) => 4,
N("port", NBO_()) => 2,
- V("reserved", 0, NBO_()) => 2)));
+ V("availability", 0, NBO_()) => 2)));
+BP();
+W("The <tt>availability</tt> field describes which of the IP protocols are
supported.");
+W("If the lowest bit (1) is set, the given IPv4 address should be valid.");
+W("If the second lowest bit (2) is set, the given IPv6 address should be
valid.");
+W("If both bits are set, both IPv4 and IPv6 can be used to contact the peer.");
+W("All other bits should be zero and ignored by peers at this point.");
+W("HELLOs where no bits in <tt>availability</tt> are set are invalid.");
include("html_footer.php3");
?>
Modified: GNUnet-docs/WWW/protocol_transport_udp.php3
===================================================================
--- GNUnet-docs/WWW/protocol_transport_udp.php3 2008-02-16 22:18:28 UTC (rev
6328)
+++ GNUnet-docs/WWW/protocol_transport_udp.php3 2008-02-16 23:29:26 UTC (rev
6329)
@@ -19,8 +19,16 @@
W("For the UDP transport service, the sender address in the HELO has this
format:");
EP();
LAYOUT("HostAddress",
- F(ARRAY(N("IP", NBO_()) => 4,
+ F(ARRAY(N("IPv6 address", "") => 16,
+ N("IPv4 address", NBO_()) => 4,
N("port", NBO_()) => 2,
- V("reserved", 0, NBO_()) => 2)));
+ V("availability", 0, NBO_()) => 2)));
+BP();
+W("The <tt>availability</tt> field describes which of the IP protocols are
supported.");
+W("If the lowest bit (1) is set, the given IPv4 address should be valid.");
+W("If the second lowest bit (2) is set, the given IPv6 address should be
valid.");
+W("If both bits are set, both IPv4 and IPv6 can be used to contact the peer.");
+W("All other bits should be zero and ignored by peers at this point.");
+W("HELLOs where no bits in <tt>availability</tt> are set are invalid.");
include("html_footer.php3");
?>
\ No newline at end of file
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r6329 - GNUnet-docs/WWW,
gnunet <=