[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ...
From: |
Hermanni Hyytiälä |
Subject: |
[Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ... |
Date: |
Mon, 28 Jul 2003 07:58:29 -0400 |
CVSROOT: /cvsroot/storm
Module name: storm
Branch:
Changes by: Hermanni Hyytiälä <address@hidden> 03/07/28 07:58:29
Modified files:
doc/pegboard/available_overlays--hemppah: peg.rst
Log message:
more
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/storm/storm/doc/pegboard/available_overlays--hemppah/peg.rst.diff?tr1=1.29&tr2=1.30&r1=text&r2=text
Patches:
Index: storm/doc/pegboard/available_overlays--hemppah/peg.rst
diff -u storm/doc/pegboard/available_overlays--hemppah/peg.rst:1.29
storm/doc/pegboard/available_overlays--hemppah/peg.rst:1.30
--- storm/doc/pegboard/available_overlays--hemppah/peg.rst:1.29 Mon Jul 28
05:10:55 2003
+++ storm/doc/pegboard/available_overlays--hemppah/peg.rst Mon Jul 28
07:58:28 2003
@@ -4,8 +4,8 @@
:Authors: Hermanni Hyytiälä
:Date-Created: 2003-06-18
-:Last-Modified: $Date: 2003/07/28 09:10:55 $
-:Revision: $Revision: 1.29 $
+:Last-Modified: $Date: 2003/07/28 11:58:28 $
+:Revision: $Revision: 1.30 $
:Status: Incomplete
.. :Stakeholders:
@@ -15,17 +15,15 @@
.. Affect-PEGs:
The purpose of this PEG document is to give a short overview of existing
-overlays which have an implementation and try to choose an implementation
-that suits best to our needs.
+overlays which have an open source implementation.
-The reason for creating this PEG document is that, quite recently, we have
-noticed that the current implementation of GISP [5]_ seems to
-have (too) many obvious security exploits. This indiciates that GISP is in
early
-phase of development. Therefore, we need to examine other
-available overlays which have an implementation in hope for finding a more
-mature tightly structured P2P platform.
+The reason for creating this PEG document is that the current implementation
+of GISP [5]_ seems to have (too) many obvious security exploits. For us this
+indiciates that GISP is in early phase of development. Therefore we need to
+examine other available overlays which have an implementation in hope for
+finding a more mature tightly structured P2P platform.
-The list of implemented overlays is of as of June 2003.
+The list of implemented overlays is as of July 2003.
Issues
======
@@ -87,7 +85,8 @@
Who is developing a software.
Language
- What programming language is used to program a software.
+ What programming language is used to program a software + additional
+ software packages which are required.
License
Under what license a software is distributed.
@@ -98,7 +97,10 @@
Implemented overlays
====================
-.. a "reST" table is created when text editing finished for this section
+In this section we list the structured P2P overlays which have been
implemented.
+Please notice that features described for each implementation are deliberately
+kept short. For more depth information about the *design* of the overlay see
+the original publications.
Chord [1]_
----------
@@ -115,8 +117,12 @@
Activity of development
Quite high.
- Currently, no official release for Chord [1]_ is available. However,
- nightly snapshots are available.
+ According to the Chord [1]_ website:
+
+ At this point no official release for
+ Chord is available, but you are welcome to check out the latest
version
+ from the CVS repository. This version is experimental, under active
+ development, and may frequently be broken.
Developer
MIT (research community)
@@ -136,13 +142,7 @@
No support for network locality- do not take network latencies into
account.
Includes a Chord [1]_ simulator.
-
- According to the Chord [1]_ website:
-
- At this point no official release for
- Chord is available, but you are welcome to check out the latest
version
- from the CVS repository. This version is experimental, under active
- development, and may frequently be broken.
+
Tapestry [2]_
--------------
@@ -175,24 +175,19 @@
protocols to route messages around failures, providing successful
delivery with high probability if a path between the endpoints exists.
- Replication, backup links
-
+
Fault tolerance against hostile nodes
* PKI is used while creating node identifiers
* MACs are used to maintain integrity of overlay traffic
* Monitoring system for maintaining neighbor links
Activity of development
- Very active.
+ Active.
Tapestry 1.0 (April 2002)
According to the Tapestry [2]_ website::
- Tapestry 2.0 is coming soon, with support
- for massively parallel insertions, voluntary deletions,
- and a distributed test framework.
-
Tapestry Version 1.0 contains the following functionality:
* Basic Tapestry Java code running on the SEDA stage-driven event model
@@ -244,22 +239,16 @@
release).
Additional requirements
- * The Cryptix JCE library (included with the 1.0 release)
+ * The Cryptix JCE library (included with the 2.0 release)
* UNIX make program
* The Java interface libraries for the BerkeleyDB database
- (included with the 1.0 release)
-
+ (included with the 2.0 release)
+
License
BSD-like
Other notes
- Support for network locality.
-
- According to the Tapestry [2]_ website:
-
- "Tapestry is the networking substrate of
- OceanStore_, a storage system aiming to provide global-scale
persistent and
- secure storage."
+ Support for network locality when building neighbor links.
Why Oceanstore_ uses Tapestry [2]_?
See http://www.oceanstore.org/info/whytapestry.html
@@ -271,9 +260,25 @@
DHT_
Redundancy
- No simulations or test performed.
- In theory, however, the "free-choice" feature
- gives peers freedom to adapt different conditions.
+ No simulation or test results published (not even in the original
publication)
+ In *theory*, however, the "free-choice" feature
+ gives peers freedom to adapt different conditions. However, the
+ author of SharkyPy says:
+
+ Kademlia has (in my taste, that's why I decided to drop it) a bad
+ hole which makes it's use in remote querying for packets pretty useless:
+ When you have key->value mappings, which have an equal key, in even in
+ semi-large networks it gets very unprobable that you get all mappings,
+ the more hosts there are, the less probable it is, and the more mappings
+ there are, the less probable it is too. I've tried to remedy this in a
+ later implementation, at the cost of lookup speed, but have never
+ managed to get all entries when the network had over 100 nodes. (the
+ later implementation is based on my own server-framework and uses no
+ threads, btw.) This made it unusable for me, as basically I basically
+ had to change the lookup-algorithm to query all nodes (back to gnutella,
+ then...), to get all answers. And that's what is important in the
+ network I designed it for.
+
Fault tolerance against hostile nodes
Nothing said, expect the "free-choice" feature.
@@ -292,22 +297,26 @@
GPL (Java), "Free for non-commercial use" (C++)
Other notes
- (none)
+ The implementation of the Java version is discontinued.
Pastry [4]_
-----------
Abstraction
- DHT_/DOLR_
+ DHT_
Redundancy
Backup links.
Fault tolerance against hostile nodes
- (undefined)
+ Accordin to the release notes of 1.2, "Security support does not exist in
+ this release. Therefore, the software should only be run in trusted
+ environments. Future releases will include security."
Activity of development
- Current release is 1.2 (January 28, 2003)
+ Active
+
+ Current release is 1.3 (July 23, 2003)
According to the Pastry [4]_ website:
@@ -330,11 +339,7 @@
Support for network locality - Pastry [4]_ actively replicates the objects
and
places them at random locations in the network. Result: When locating
nearby object it might require the client to route to a distant replica of
- the object.
-
- Accordin to the release notes of 1.2, "Security support does not exist in
- this release. Therefore, the software should only be run in trusted
- environments. Future releases will include security."
+ the object.
GISP [5]_
---------
@@ -376,7 +381,10 @@
Not-known
Fault tolerance against hostile nodes
- Not-known
+ According to Info-Anarchy Wiki:
+
+ Problems are: The DHT implementation is
+ vulnerable to denial of service attacks.
Activity of development
Active, the current version is 0.35 (30 May 2003)
@@ -391,12 +399,8 @@
GPL
Other notes
- Uses MD5 hashes.
-
- According to Info-Anarchy Wiki:
-
- Problems are: The DHT implementation is
- vulnerable to denial of service attacks.
+ Uses MD5 hashes for generating IDs.
+
Khashmir [7]_
-------------
@@ -574,19 +578,26 @@
LGPL
Other notes
- (none)
+ According to the author of SharkyPy:
+
+ This implementation is heavily based on threads, which makes it
+ pretty resource-intensive on the computer it is running on. I never
+ intended it to serve more than 30-40 clients, so this didn't matter to
+ me. When you use it as a P2P network backend, things will certainly look
+ different.
Changes
=======
-Based on this PEG document we recommend using Tapestry [2]_ with Storm. The
-reasons are:
+Based on this PEG document we recommend using Tapestry's implementation with
+Storm. The reasons are:
-- maturity of the implementation (the most important aspect)
-- activity of development
+- the maturity of the implementation
- the license
+- the activity of development
-
+For detailed changes and information about using Tapestry with Storm, please
+see `storm_with_tapestry--hemppah` PEG document.
.. [1] http://www.pdos.lcs.mit.edu/chord/
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/03
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/09
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/09
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/09
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/09
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Asko Soukka, 2003/07/21
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/28
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/28
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ...,
Hermanni Hyytiälä <=
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/28
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/28
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/28
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/28
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/29
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/29
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/29
- [Gzz-commits] storm/doc/pegboard/available_overlays--hemppah ..., Hermanni Hyytiälä, 2003/07/31