/[gzz]/gzz/Documentation/misc/hemppah-progradu/masterthesis.tex
ViewVC logotype

Diff of /gzz/Documentation/misc/hemppah-progradu/masterthesis.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.203 by hemppah, Mon May 5 08:21:04 2003 UTC revision 1.204 by hemppah, Wed May 21 07:01:55 2003 UTC
# Line 39  E-mail: hemppah@cc.jyu.fi} Line 39  E-mail: hemppah@cc.jyu.fi}
39    
40    
41  \abstract{  \abstract{
42  In this thesis, we review existing Peer-to-Peer approaches, algorithms and their  In this thesis, first we review existing Peer-to-Peer approaches, algorithms and their
43  key properties. We summarize open problems in Peer-to-Peer systems and divide  key properties. We summarize open problems in Peer-to-Peer systems and divide these
44  problems into three sub-categories. We observe that there are many problems with  problems into three sub-categories. We realize that there are many problems and few
45  either no solutions at all, or only practically unrealizable ones.  practical solutions, and some problems have no solution at all.
46    
47  Then, we give an overview of the Fenfire system.  We evaluate existing  Then, we provide an overview of the Fenfire system. The Fenfire system is a free
48  Peer-to-Peer approaches-- loosely and tightly structured overlays-- with regard  software effort to build a location transparent, hyperstructured desktop environment.
49  to Fenfire's needs. Finally, we propose simple methods to efficiently find Fenfire  We evaluate existing Peer-to-Peer approaches-- loosely and tightly structured overlays-- with regard
50  data from Peer-to-Peer network.  to Fenfire's needs. Finally, we propose simple methods to efficiently locate Fenfire
51    data from Peer-to-Peer networks.
52  }  }
53  \tiivistelma{  \tiivistelma{
54  Tässä opinnäytetyössä esittelemme olemassaolevia vertaisverkkoja, algoritmeja ja  Tässä opinnäytetyössä esittelemme olemassaolevia vertaisverkkoja, algoritmeja ja
# Line 85  means that the participants can form a d Line 86  means that the participants can form a d
86  without any investment to centralized hardware by sharing their services and connecting to each  without any investment to centralized hardware by sharing their services and connecting to each
87  other directly. Peer-to-Peer systems can be characterized as distributed systems in which all  other directly. Peer-to-Peer systems can be characterized as distributed systems in which all
88  communication is symmetric and all participant entities have similar capabilities and responsibilities  communication is symmetric and all participant entities have similar capabilities and responsibilities
89  \cite{oram01harnessingpower}. Schollmeier \cite{schollmeier01p2pdefinition} describes Peer-to-Peer system as a system of  \cite{oram01harnessingpower}. Schollmeier \cite{schollmeier01p2pdefinition} describes a Peer-to-Peer system as a system of
90  distributed entities that share their own services.  distributed entities that share their own services.
91  Each entity, i.e., \emph{peer}, may contribute services to the overall system. The distributed  Each entity, i.e., \emph{peer}, may contribute services to the overall system. The distributed
92  and ad hoc nature of Peer-to-Peer improves scalability and avoids single points of failure.    and ad hoc nature of Peer-to-Peer improves scalability and avoids single points of failure.  
# Line 93  and ad hoc nature of Peer-to-Peer improv Line 94  and ad hoc nature of Peer-to-Peer improv
94  The Fenfire project is an attempt to build a hyperstructured, seamlessly interoperating desktop  The Fenfire project is an attempt to build a hyperstructured, seamlessly interoperating desktop
95  environment. In the Fenfire system, all data is stored as blocks.    environment. In the Fenfire system, all data is stored as blocks.  
96  Each block has a globally unique identifier and it can be referred, by pointer blocks.  Each block has a globally unique identifier and it can be referred, by pointer blocks.
97  Other features of the Fenfire include innovative user  Other features of Fenfire include innovative user
98  interfaces for viewing data. The applicability of Peer-to-Peer networking with Fenfire for network  interfaces for viewing data. The applicability of Peer-to-Peer networking with Fenfire for network
99  transparency is currently under investigation.  transparency is currently under investigation.
100    
101  Three research problems are discussed in this thesis: first, finding the most efficient  Three research problems are discussed in this thesis: First, finding the most efficient
102  way to locate and fetch Fenfire data blocks from a Peer-to-Peer network, when the block's  way to locate and fetch Fenfire data block from a Peer-to-Peer network when the block's
103  identifier is given. Second, we want to find the most efficient way to locate and fetch the most  identifier is given. Second, we want to find the most efficient way to locate and fetch the most
104  recent Fenfire data block from a Peer-to-Peer network referred by a pointer. The third problem  recent Fenfire data block from a Peer-to-Peer network referred by a pointer. The third problem
105  is similar to the second problem, except we want to locate and fetch the Fenfire  is similar to the second problem, except we want to locate and fetch the Fenfire
106  data block, when date and or time range is given.  data block when a date and or time range is given.
107    
108  In this thesis, we evaluate existing Peer-to-Peer approaches and  In this thesis, we evaluate existing Peer-to-Peer approaches and
109  evaluate them to Fenfire's needs. We start by reviewing existing Peer-to-Peer approaches,  evaluate them, based on Fenfire's needs. We start by reviewing existing Peer-to-Peer approaches,
110  algorithms and their key properties. Our insight is that despite the great amount of proposed  algorithms and their key properties. Our insight is that, despite the great amount of proposed
111  Peer-to-Peer systems, we are able to classify \emph{all} systems either to loosely or  Peer-to-Peer systems, we are able to classify \emph{all} systems either as loosely or
112  tightly structured approach. We also discuss open problems in  tightly structured approaches. We also discuss open problems in
113  Peer-to-Peer research and divide problems into three sub-categories: security, performance, and miscellaneous  Peer-to-Peer research and divide problems into three sub-categories: security, performance, and miscellaneous
114  problems. We attempt to comprehensively summarize existing algorithms and open problems in  problems. We attempt to comprehensively summarize existing algorithms and open problems in the
115  Peer-to-Peer domain. This thesis doesn't give detailed information about reviewed algorithms nor  Peer-to-Peer domain. This thesis does not provide detailed information about reviewed algorithms nor
116  open problems. More detailed information can be found from the references.  open problems. More detailed information can be found from the references.
117    
118  Finally, we give an overview of the Fenfire project, and evaluate Peer-to-Peer approaches to Fenfire's  Finally, we give an overview of the Fenfire project, and compare Peer-to-Peer approaches to Fenfire's
119  needs. Finally, we propose simple but yet efficient methods to be used for data lookups in Peer-to-Peer  needs. Finally, we propose simple yet efficient methods that could be used for data lookups in a Peer-to-Peer
120  environment.  environment.
121    
122  \chapter{Peer-to-Peer architectures}  \chapter{Peer-to-Peer architectures}
# Line 126  two main approaches. Line 127  two main approaches.
127  \section{Brief history and overview}  \section{Brief history and overview}
128    
129  The Internet was originally established in the late 1960s \cite{253741}. The objective  The Internet was originally established in the late 1960s \cite{253741}. The objective
130  of the ARPANET-project was to share computers' resources among military computers  of the ARPANET-project was to share information resources among military computers
131  around the United States. The most challenging purpose of ARPANET was to integrate  in the United States. The most challenging purpose of ARPANET was to integrate
132  different kinds of existing network technologies with one common network architecture.  different kinds of existing network technologies with one common network architecture.
133  The ARPANET connected the first few hosts together not in client/server relationship,  The ARPANET connected the first few hosts together not in client--server relationship,
134  but rather as equal networking \emph{peers}. This could be seen as the starting point  but rather as equal networking \emph{peers}. This could be seen as the starting point
135  of both the Peer-to-Peer concept and the Internet \cite{oram01harnessingpower}.  of both the Peer-to-Peer concept and the Internet \cite{oram01harnessingpower}.
136    
137  The most popular form of modern Peer-to-Peer computing is file-sharing. In this scenario,  The most popular form of modern Peer-to-Peer computing is file-sharing. In this scenario,
138  participants of Peer-to-Peer network share their file resources with other participants.  participants of Peer-to-Peer networking share their file resources.
139  This is a form of distributed file system (e.g., \cite{levy90distributedfilesystems}).  This is form of a distributed file system (e.g., \cite{levy90distributedfilesystems}).
140  A modern Peer-to-Peer system is composed of an \emph{application} level overlay network, i.e.,  A modern Peer-to-Peer system is composed of an \emph{application} level overlay network, i.e.,
141  network operates at the application level and forms a logical network overlay on top of physical  the network operates at the application level and forms a logical network overlay on top of the physical
142  network with regard to the ISO-OSI reference model (e.g., \cite{800902}). Figure \ref{fig:application_level}  network with regard to the ISO-OSI reference model (e.g., \cite{800902}). Figure \ref{fig:application_level}
143  illustrates the Peer-to-Peer application level overlay network.  illustrates the Peer-to-Peer application level overlay network.
144  Compared to ARPANET's Peer-to-Peer functionality, modern Peer-to-Peer systems  Compared to ARPANET's Peer-to-Peer functionality, modern Peer-to-Peer systems
# Line 155  a distributed environment. Line 156  a distributed environment.
156    
157    
158    
159  In the development of modern Peer-to-Peer systems, lot of influences have been derived from  In the development of modern Peer-to-Peer systems, many influences have come from
160  outside of computer science. First, it is interesting to realize that chemical properties of biological cells, the Internet, ad hoc  outside of computer science. First, it is interesting to realize that chemical properties of biological cells, the Internet, ad hoc
161  Peer-to-Peer systems, and social network self-organize based on the same  Peer-to-Peer systems, and social network self-organize based on the same
162  principles \cite{albert-02-statistical, albert-00-tolerance, watts00dynamics}.  Second, the  principles \cite{albert-02-statistical, albert-00-tolerance, watts00dynamics}.  Second, the
163  association between social relationships among people and Peer-to-Peer overlay topology has been  association between social relationships among people and Peer-to-Peer overlay topology has been
164  studied recently \cite{watts00dynamics, kleinberg99small, nips02-Kleinberg}.  recently studied \cite{watts00dynamics, kleinberg99small, nips02-Kleinberg}.
165  This insight is motivated by Milgram \cite{milgram67smallworld}, who noticed that people are very effective in  This insight is motivated by Milgram \cite{milgram67smallworld}, who noticed that people very effectively
166  locating other people in a wide scale based on local knowledge. This phenomenon is called as  locate other people on a wide geographic scale based on local knowledge. This phenomenon is called
167  ''small-world phenomenon''. As a consequence, many modern Peer-to-Peer systems  ''small-world phenomenon''. As a consequence, many modern Peer-to-Peer systems
168  have applied similar techniques when constructing and maintaining the application level  have applied similar techniques when constructing and maintaining the application level
169  overlay network.  overlay network.
170    
171  In the end, however, we observe that there are only two approaches in which all modern Peer-to-Peer  In the end, however, we observe that there are only two approaches in modern Peer-to-Peer
172  systems fall: the loosely structured approach and the tightly structured approach.  systems: the loosely structured approach and the tightly structured approach.
173  By structure, we refer to the topology of the overlay network, i.e., how the connections between participating peers are created  By structure, we refer to the topology of the overlay network, i.e., how the connections between participating peers are created
174  and maintained. In the following sections, we will discuss in more detail the properties of these approaches.  and maintained. In the following sections, we will discuss in more detail the properties of these approaches.
175    
176  \section{Loosely structured}  \section{Loosely structured}
177    
178  In the loosely structured approach the construction and the maintenance of the overlay is controlled  In the loosely structured approach the construction and maintenance of the overlay is controlled
179  loosely. The placement of services and the topology of overlay is random. The data lookup model in loosely structured systems is  loosely. The placement of services and the topology of overlay is random. The data lookup model in loosely structured systems is
180  not very efficient, because of unstructured properties of the overlay. Data lookup model is a combination of methods which  not very efficient because of unstructured properties of the overlay. The data lookup model is a combination of methods which
181  are used for locating data in the overlay.    are used for locating data in the overlay.  
182    
183  \subsection{Skecth of definition}  \subsection{Proposed definition}
184    
185  In this subsection, we try to introduce a \emph{sketch} of formal definition of the loosely structured overlay. This  In this subsection, we try to \emph{sketch out} a formal definition of the loosely structured overlay. This
186  model is based on original Gnutella overlay network with power-law improvements.  model is based on the original Gnutella overlay network with power-law improvements. Please notice that the
187    definition proposal is not used elsewhere in this thesis.
188    
189  Let $S$ be the aggregate of all services $s$ in system. Let $P$ be the aggregate of  Let $S$ be the aggregate of all services $s$ in the system. Let $P$ be the aggregate of
190  all peers $p$ in system. Then, $\forall s \in S$, there is a provider of the service,  all peers $p$ in the system. Then, $\forall s \in S$, there is a provider of the service,
191  expressed as $p = \delta(s)$. Every $p$ has neighbor(s), named as $p_n$, which  expressed as $p = \delta(s)$. Every $p$ has neighbor(s), named as $p_n$, which
192  is $P$ = \{$p \in P: \exists neighbor$, which is randomly chosen from $P$\}.  is $P$ = \{$p \in P: \exists neighbor$, which is randomly chosen from $P$\}.
193  Summary index maintains indices of other peers, $si o= \gamma(\delta(s))$.  The summary index maintains indices of other peers, $si o= \gamma(\delta(s))$.
194  Then, $\forall$ regular peer $p$, there is a super peer, $sp$, and it has a index of  Then, $\forall$ regular peer $p$, there is a super peer, $sp$, and it has an index of
195  regular peer's content $P$ = \{$p \in P: \exists sp$,  regular peer's content $P$ = \{$p \in P: \exists sp$,
196  where $sp$ = $\delta(\gamma(\delta(s))) \wedge (p = \delta(s))$\}  where $sp$ = $\delta(\gamma(\delta(s))) \wedge (p = \delta(s))$\}
197    
# Line 296  structured overlays have been proposed. Line 298  structured overlays have been proposed.
298  approach the overlay is constructed deterministically, which all participating peers have to follow; the topology of the  approach the overlay is constructed deterministically, which all participating peers have to follow; the topology of the
299  overlay and the placement of services is controlled tightly.  overlay and the placement of services is controlled tightly.
300    
301  \subsection{Sketch of definition}  \subsection{Proposed definition}
302    
303  In this subsection, we try to introduce a \emph{sketch} of formal definition of the tightly structured overlay, such as  In this subsection, we try to \emph{sketch out} a formal definition of the tightly structured overlay, such as
304  identifiers, identifier space and the mapping function.  identifiers, identifier space and the mapping function. Please notice that the
305    definition proposal is not used elsewhere in this thesis.
306    
307  Let $S$ be the aggregate of all services $s$ in the system. Let $P$ be the aggregate of  Let $S$ be the aggregate of all services $s$ in the system. Let $P$ be the aggregate of
308  all peers $p$ in system. Let $I$ be the aggregate of all identifiers $i$ in system.  all peers $p$ in the system. Let $I$ be the aggregate of all identifiers $i$ in the system.
309  Let $IS$ be the aggregate of all identifier points $ip$ in system. Then, $\forall s \in S$,  Let $IS$ be the aggregate of all identifier points $ip$ in system. Then, $\forall s \in S$,
310  there is a provider of the service, expressed as $p = \delta(s)$. Service's identifier  there is a provider of the service, expressed as $p = \delta(s)$. Service's identifier
311  is defined as $i = \iota(s)$. Coordinate point is defined as $ip = \zeta(\iota(s))$.  is defined as $i = \iota(s)$. Coordinate point is defined as $ip = \zeta(\iota(s))$.

Legend:
Removed from v.1.203  
changed lines
  Added in v.1.204

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26