gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] gzz/Documentation/misc/hemppah-progradu researc...


From: Hermanni Hyytiälä
Subject: [Gzz-commits] gzz/Documentation/misc/hemppah-progradu researc...
Date: Mon, 20 Jan 2003 08:45:26 -0500

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Hermanni Hyytiälä <address@hidden>      03/01/20 08:45:26

Modified files:
        Documentation/misc/hemppah-progradu: research_problems 

Log message:
        Gzz/p2p requirements

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/Documentation/misc/hemppah-progradu/research_problems.diff?tr1=1.22&tr2=1.23&r1=text&r2=text

Patches:
Index: gzz/Documentation/misc/hemppah-progradu/research_problems
diff -u gzz/Documentation/misc/hemppah-progradu/research_problems:1.22 
gzz/Documentation/misc/hemppah-progradu/research_problems:1.23
--- gzz/Documentation/misc/hemppah-progradu/research_problems:1.22      Mon Jan 
20 04:32:39 2003
+++ gzz/Documentation/misc/hemppah-progradu/research_problems   Mon Jan 20 
08:45:26 2003
@@ -608,6 +608,7 @@
 -resources are kept locally
 -centralized index of all available resources in a a system
 -a service request is totally based on centralized index
+-system doe find the service, if it exists
 
 Formal definition
 -let S be the aggregate of all services s in system (data, service, computing 
power)
@@ -641,6 +642,7 @@
 -a service request is routed towards service based on node's local knowledge
 -services can be hosted locally (opposite to DHTs)
 -identifiers are expected to be distributed uniformly
+-system does find the service, if it exists
 
 Formal definition
 -let S be the aggregate of all services s in system (data, service, computing 
power)
@@ -656,11 +658,11 @@
 -every p has neighbor(s), named as p_neighbor, which are P = {p 'mathematical 
belongs to' P: 'mathematical there exists at least one' p_neighbor, where 
'difference(p,p_neighbor)= 'close'', where 'close' is minimal difference d in 
'(IS,d'}
 
 
-
 2.9.2  Decentralized and unstructured
--this category: Gnutella, hierarchical Gnutella's (superpeers, clusters)
+-this category: Gnutella, Freenet, hierarchical Gnutella's (superpeers, 
clusters)
 -a service request is routed randomly to all/specific neighbors
--system doesn't have *any* knowledge, where service is located (opposite to 
centralized and decentralized but structured)
+-system doesn't have *any* knowledge, where service is located (opposite to 
centralized and decentralized but structured) (Gnutellas)
+-system doesn't not necessary find the service, if it exists
 
 Formal definition
 -let S be the aggregate of all services s in system (data, service, computing 
power)
@@ -670,3 +672,97 @@
 -hierarchical gnutellas: define super peer, which hosts the indices of other 
peers, as a 'sp = summaryindex(provider(s))'
 -every p has neighbor(s), named as p_neigbor, which is P = {p 'mathematical 
belongs to' P: 'mathematical there exists at least one' p_neighbor, which is 
'randomly' chosen from p_neighbor 'mathematical belongs to'}
 -hierarchical gnutellas: for each peer reqular peer, p_regular, there is super 
peer, p_super, P = {p 'mathematical belongs to' P: 'mathematical there exists 
at least one' p_super, where p_super = summaryindex(provider(s)) 'boolean AND' 
(p_regular = provider(s))}
+
+
+3.Gzz and P2P
+
+3.1. Gzz's requirements
+-append-and-delete (when a modification has been commited, a new version must 
be created)
+-the same data block can be stored to many different locations (can we use 
'How share a secret ?', like in Publius and Tangler ?)
+-old version(s) must remain accessible in the network
+-must support xanalogical structure
+-links must work always
+-*selective* replication/synking
+-do we have a support for transcopyright ?
+
+3.2. P2P network requirements
+-system must find the service, if it exists in the network
+-following properties: scalable, efficient, adaptive, robust, self-organising
+-is possible, it would be benefitial if p2p system representing named 
resources as keys 
+-p2p system must support the use of block IDs (SHA-1) and urn-5s (random 
string) when obtaining data from the network
+-one or more blocks are associated with a specific urn-5
+-support for location independent routing (urn-5 -> block(s))
+-data block can represent a link, document/part of document, transclusion
+
+3.3. Benefits
+From Benja's (plus antont and me) article
+- Easy syncing:
+  - Just copy a bunch of blocks
+  - Documents can be synced & merged
+  - Inter-document structures can be synced & merged
+  - Syncing can be done without merging immediately,
+    leaving two alternative versions current
+    (so e.g. an automated process is entirely possible,
+    even when there are conflicts)
+- Versioning
+
+From Benja's (plus antont and me) article:
+- Reliability (old versions, links work always, accessibility, 
append-and-delete)
+- Usability in the face of intermittent connectivity 
+  (includes syncing, finding a document if available...)  
+- Xanalogical structure 
+  (includes versioning, non-breaking links etc.)
+
+-current p2p systems don't support all of these properties together
+  
+3.4. Existing p2p systems and Gzz
+-Currently, DHT is the best alternative for Gzz P2P, because:
+       +blocks have unique IDs, they can be used as keys in DHT, it's a 
natural choice
+       +DHT will find a resource, if it exists in a network
+       +for a specific urn-5, we could find all associated block information 
from a single peer
+       -for every urn-5, there is one permanent ID
+       -for every version of block, there is one permanent ID
+       -for every version of xu link, there is one permanent ID (does 
transclusion have different versions ?)
+       -for every version xu transclusion, there is one permanent ID (does 
transclusion have different versions ?)
+       
+
+4. Gzz overview
+
+4.1. Xanalocical model (some parts from our article, modify)
+Xanalocical model [cite] is a simple, but rather different model for 
representing content. 
+Project Xanadu [cite] has been a pioneer implementing xanalogical model. In 
xanalocical model
+links are not between documents, but individual characters.
+For instance, when a character is first typed in xanalogical, it acquires a 
permanent ID
+("the character 'D' typed by Janne Kujala on 10/8/97 8:37:18"),
+which it retains when copied to a different document, distinguishing
+it from all similar characters typed in independently.
+A link is shown between any two documents containing the characters
+that the link connects. Xanalogical links are external and bidirectional.
+
+In addition to content links, xanalogical storage keeps an index of
+transclusions: identical characters copied into different documents.
+Through this mechanism, the system can show to the user all documents
+that share text with the current document.
+
+The main features (from xanadu.net, modify):
+- UNBREAKABLE LINKS.
+- COPYRIGHT SIMPLIFICATION AND SOFTENING: by special permissions and methods, 
quotations of any size may be used by anyone and mixed together frictionlessly.
+- ORIGIN CONNECTION: All quotations and excerpts stay connected to their 
original.
+- TWO-WAY LINKS: anyone may publish connected comments to any page.
+- SIDE-BY-SIDE INTERCOMPARISON OF CONNECTED DOCUMENTS-- showing two-way links, 
differences between versions, origins of contexts.  (For a simple working 
demonstration, see our new free CosmicBook(tm) reader.)
+- DEEP VERSION MANAGEMENT: documents may be changed incrementally (with each 
version available); versions may branch; authors may easily see exact 
differences between versions.
+- INCREMENTAL PUBLISHING: new changes may be continually made by authors 
without breaking links.
+
+4.2 ZZStructure
+from xanadu.net, modify:
+The ZigZag system is very hard to explain, especially since it resembles 
nothing else in the computer field that we know of, except perhaps a 
spreadsheet cut into strips and glued into loops.
+It is a PRINCIPLED SYSTEM OF INTERCONNECTION.
+Lists and Spreadsheets are rational ways of connecting things, but they have 
shortcomings.  Hierarchical directories are a standard way of connecting 
things, but they have extreme shortcomings.
+The ZigZag structure (we don't know the best term-- zzstructure, zzspace, 
quantum hyperspace?) is extremely simple but has remarkable properties.
+It can be built into almost anything, and has default visualizations.
+
+Where is this going?
+1.  With its rich default visualizations, it offers a simple structured 
interface for compound menus-- offering the simplification of such environments 
as Unix.
+2.  We see it as a DATA LAYER for a new rational system of computing.  The 
grotesque inconsistencies and complications of files in their present form-- 
consider, for example, the issues of readdressing among downloaded HTML files-- 
may be replaced by a clean, table-like arrangement which keeps track of things 
more easily-- and which bright non-tekkies can deal with.
+Tomorrow's computer environment will involve vast, constant media downloads.  
ZigZag structure offers a scalable, rational system of registration and storage 
which can handle this very cleanly.
+3.  A new form of SPATIAL PROGRAMMING, table-driven in zzspace, may simplify 
programming and computer environments in general.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]