[Top][All Lists]
[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}
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., (continued)
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/27
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/27
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/27
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/27
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/27
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/27
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/28
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/28
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/28
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert..., Hermanni Hyytiälä, 2003/02/28
- [Gzz-commits] gzz/Documentation/misc/hemppah-progradu mastert...,
Hermanni Hyytiälä <=