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 mastert...


From: Hermanni Hyytiälä
Subject: [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert...
Date: Fri, 28 Feb 2003 09:42:52 -0500

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Hermanni Hyytiälä <address@hidden>      03/02/28 09:42:48

Modified files:
        Documentation/misc/hemppah-progradu: masterthesis.tex 

Log message:
        Fenfire chapter ready

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/Documentation/misc/hemppah-progradu/masterthesis.tex.diff?tr1=1.98&tr2=1.99&r1=text&r2=text

Patches:
Index: gzz/Documentation/misc/hemppah-progradu/masterthesis.tex
diff -u gzz/Documentation/misc/hemppah-progradu/masterthesis.tex:1.98 
gzz/Documentation/misc/hemppah-progradu/masterthesis.tex:1.99
--- gzz/Documentation/misc/hemppah-progradu/masterthesis.tex:1.98       Fri Feb 
28 08:18:40 2003
+++ gzz/Documentation/misc/hemppah-progradu/masterthesis.tex    Fri Feb 28 
09:42:46 2003
@@ -1615,27 +1615,6 @@
 
 
 
-\begin{figure}
-\centering
-\includegraphics[width=10cm, height=10cm]{storm_uml.eps}
-\caption{Simplified Storm block storage model}
-\label{fig:storm_model}
-\end{figure}
-
-
-\begin{figure}
-\centering
-\includegraphics[width=15cm, height=10cm]{storm_pointerblock_creation.eps}
-\caption{Pointer block creation process}
-\label{fig:storm_model}
-\end{figure}
-
-
-
-
-
-
-
 
 \chapter{Fenfire hypermedia system}
 
@@ -1658,14 +1637,15 @@
 \begin{itemize}
 \item \textbf{Storm}: distributed storage module for storing arbitrary data 
items
 \item \textbf{UMLLinker}: UML based tool for generating software documentation 
 
-\item \textbf{Xu-Storm}: xanalogical hypertext built upon Storm storage model
+\item \textbf{Alph}: xanalogical hypertext built upon Storm storage model
 \item \textbf{GLMosaicText}: flexible OpenGL interface for font manipulation
 \item \textbf{CallGL}: wrapping library used for OpenGL calls
 \item \textbf{LibVob}: graphic library used for creating navigation interfaces 
in complex data views
 \end{itemize}
 
-In this thesis, we focus on Storm module, since it's the foundation of 
Fenfire's Peer-to-Peer
-functionality.
+In this thesis, we focus on Storm and Xu-Storm modules, since they are the 
foundation of Fenfire's 
+Peer-to-Peer functionality. If not otherwise mentioned, we use term 'Storm' 
referring to both
+Storm and Alph modules.
 
 \section{Xanalogical model}
 
@@ -1685,7 +1665,8 @@
 containing a specific \emph{fluid media unit} (e.g., a character) that the 
link connects.
 In practice, however, xanalogical storage model uses \emph{spans}, ranges of 
consecutive
 fluid media units, to handle storage operations. This is done for better 
performance as
-doing expensive operations for \emph{every} fluid media unit is not efficient.
+doing expensive operations for every fluid media unit is not efficient. 
Moreover,
+xanalogical storage model stores fluid media units to append-only 
\emph{scrolls}.
 
 \emph{Enfilade} can be considered as a ''virtual file'' (or part of one), 
which is a list
 of fluid media contents. In xanalogical storage model, links between content 
are external 
@@ -1695,7 +1676,7 @@
 different data contents. By using this mechanism, system implementing 
xanalogical model
 is able to show all data content that share same fluid media with current data 
content
 (e.g., all documents containing current document's text). Figure 
\ref{fig:xanalogical_model}
-illustrates xanalogical model.
+illustrates xanalogical model used with documents, text and characters.
 
 
 \begin{figure}
@@ -1708,14 +1689,50 @@
 
 \section{Storm}
 
-\cite{lukka02freenetguids}
+In this section, we will give an brief overview of Storm design. More 
information can be found
+from recent publications: for general discussion about Fenfire in Peer-to-Peer 
environment, 
+see \cite{lukka02freenetguids}, and for detailed Storm design, see 
\cite{fallenstein03storm}.
+
+Storm (for \emph{STORage Module}) is a software module, which is used in 
Fenfire for
+implementing basic data storage operations. Storm stores all data as 
\emph{scroll blocks}, which
+are immutable byte sequences. SHA-1 cryptographic content hash 
\cite{fips-sha-1} is used
+for creating locatiotion-independent, globally unique identifiers for blocks. 
Storm
+blocks have much in common with regular files, except Storm blocks are 
\emph{immutable} as
+any change to the byte sequence would the change block's hash value, i.e., 
unique 
+identifier. This mechanism creates a basis for implementing xanalogical model 
in our
+Fenfire system. Figure \ref{fig:storm_model} illustrated simplified Storm 
storage model.
+
+\begin{figure}
+\centering
+\includegraphics[width=10cm, height=10cm]{storm_uml.eps}
+\caption{Simplified Storm block storage model}
+\label{fig:storm_model}
+\end{figure}
 
-\cite{fallenstein03storm}
 
-\subsection{Storm block storage}
+In addition to immutable data, Storm has a support for mutable data. Storm uses
+\emph{pointers} and \emph{diffs} for dealing with this kind of data. In this 
paper,
+we discuss only pointers as they are part of the thesis' research problems. 
+More information about diffs can be found from \cite{fallenstein03storm}.
+ 
+Pointer is a updatable reference to scroll block. In practice, pointer is a 
+random string created automatically by Storm \cite{benja02urn5}, associated 
+with a collection of \emph{pointer blocks}. Each pointer block has a single 
+target for the pointer. In figure \ref{fig:storm_model}, we present overal 
+pointer creation process. Pointer block may contain zero or more obsoleted 
+pointer blocks, i.e. when a new version of scroll block is created, it 
supersedes 
+one older version which has been created in the past. The most current pointer 
+block will 'obsolete' the pointer block targeting the supersed version. Next 
+time, when the pointer is used for refering to a specific scroll block, only 
+the most recent pointer's block target is loaded.
+
+\begin{figure}
+\centering
+\includegraphics[width=15cm, height=10cm]{storm_pointerblock_creation.eps}
+\caption{Pointer block creation process}
+\label{fig:storm_model}
+\end{figure} 
 
-\cite{benja02urn5}
-\cite{balakrishnan03semanticfree}
 
 \chapter{Evaluation of Peer-to-Peer for Fenfire}
 




reply via email to

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