/[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.206 by hemppah, Mon Jun 2 06:50:41 2003 UTC revision 1.207 by hemppah, Mon Jun 2 12:14:08 2003 UTC
# Line 460  is $d$), but does not have symmetry (the Line 460  is $d$), but does not have symmetry (the
460  distance from $p_j$ to $p_i$). Pastry's \cite{rowston01pastry} distance function supports  distance from $p_j$ to $p_i$). Pastry's \cite{rowston01pastry} distance function supports
461  symmetry, but does not support unidirection. According to \cite{balakrishanarticle03lookupp2p}, because  symmetry, but does not support unidirection. According to \cite{balakrishanarticle03lookupp2p}, because
462  of XOR-metric, Kademlia's distance function is both unidirectional and symmetric. Moreover, Kademlia's \cite{maymounkov02kademlia}  of XOR-metric, Kademlia's distance function is both unidirectional and symmetric. Moreover, Kademlia's \cite{maymounkov02kademlia}
463  XOR-based metric doesn't need stabilization (like in Chord \cite{stoica01chord}) and backup links  XOR-based metric does not need stabilization (like in Chord \cite{stoica01chord}) and backup links
464  (like in Pastry \cite{rowston01pastry}).  (like in Pastry \cite{rowston01pastry}).
465  However, in all of the above schemes, each hop in the overlay shortens the distance between  However, in all of the above schemes, each hop in the overlay shortens the distance between
466  current peer working with the data lookup and the key that was looked up in the identifier space.  current peer working with the data lookup and the key that was looked up in the identifier space.
# Line 484  the system and $O(\log{n})$ data lookup Line 484  the system and $O(\log{n})$ data lookup
484    
485  Balakrishnan et al. \cite{balakrishanarticle03lookupp2p} have listed four requirements  Balakrishnan et al. \cite{balakrishanarticle03lookupp2p} have listed four requirements
486  for tightly structured overlays\footnote{Authors use the term 'DHT' in their text, but in this context  for tightly structured overlays\footnote{Authors use the term 'DHT' in their text, but in this context
487  it doesn't matter as they list \emph{general} properties of tightly structured overlays.} that have to be addressed in order  it does not matter as they list \emph{general} properties of tightly structured overlays.} that have to be addressed in order
488  to perform efficient data lookups in tightly structured overlays.  to perform efficient data lookups in tightly structured overlays.
489  First, mapping of keys to peers must be done in a load-balanced  First, mapping of keys to peers must be done in a load-balanced
490  way. Second, the overlay must be able to forward a data lookup for a  way. Second, the overlay must be able to forward a data lookup for a
# Line 498  Domain Name System (DNS) \cite{rfc1101} Line 498  Domain Name System (DNS) \cite{rfc1101}
498  two requirements about the nature of reference resolution. First, there should be a general-purpose  two requirements about the nature of reference resolution. First, there should be a general-purpose
499  and application-indepedent substrate for reference resolution. Second, the references themselves  and application-indepedent substrate for reference resolution. Second, the references themselves
500  should be unstructured and semantic-free. In this text, we define unstructured reference  should be unstructured and semantic-free. In this text, we define unstructured reference
501  as a reference that doesn't expose the target in any way and semantic-free reference as a reference  as a reference that does not expose the target in any way and semantic-free reference as a reference
502  that there are no directives in the reference itself which would expose how the reference should be processed.  that there are no directives in the reference itself which would expose how the reference should be processed.
503    
504    
# Line 882  certificate techniques to prevent spoofi Line 882  certificate techniques to prevent spoofi
882    
883  The Spam generating attack \cite{naor03simpledht} is another known attack model against a Peer-to-Peer system. In the Spam  The Spam generating attack \cite{naor03simpledht} is another known attack model against a Peer-to-Peer system. In the Spam
884  attack, a hostile or faulty peer may produce false data information, or refuses to (or is not able to) reply to requests.  attack, a hostile or faulty peer may produce false data information, or refuses to (or is not able to) reply to requests.
885  Naor et al. \cite{naor03simpledht} have proposed a partial solution against Spam attack in a \emph{faulty} peer environment (not hostile).  Naor et al. \cite{naor03simpledht} have proposed a partial solution against this Spam attack in a \emph{faulty} peer environment (not hostile).
886    
887  Overloading of targeted peers is a form of Distributed Denial of Service attack (DDoS) (see, e.g., \cite{372148}). For instance,  Overloading of targeted peers is a form of Distributed Denial of Service attack (DDoS) (see, e.g., \cite{372148}). For instance,
888  a hostile entity can attempt to burden specific peers with garbage network packets. As a consequence, peers may act incorrectly or  a hostile entity can attempt to burden specific peers with garbage network packets. As a consequence, peers may act incorrectly or
889  stop working. Daswani et al. \cite{daswani02queryflooddos} suggest efficient load balancing  stop working. Daswani et al. \cite{daswani02queryflooddos} suggest efficient load balancing
890  policies for Peer-to-Peer system in order to prevent massive system failures. They suggest a traffic model  policies for Peer-to-Peer systems in order to prevent massive system failures. They suggest a traffic model
891  that can be used to understand the effects of DDoS attacks. Sit et al. \cite{sit02securitycons}  that can be used to understand the effects of DDoS attacks. Sit et al. \cite{sit02securitycons}
892  suggest that identifier assignment algorithm for peers would assign identifier with respect to network topology  suggest that an identifier assignment algorithm would assign an identifier with respect to network topology
893  and that replicas of data should be located physically to different locations.  and that replicas of data should be relocated physically to different locations.
894    
895    
896  \subsection{Trust management, data authenticity and integrity}  \subsection{Trust management, data authenticity and integrity}
897    
898  According to \cite{aberer01trust}, mutual trust ''...allows agents to cooperate in a game-theoretic situation that corresponds  According to \cite{aberer01trust}, mutual trust, ''...allows agents to cooperate in a game-theoretic situation that corresponds
899  to the repeated prisoners dilemma and leads in the long term to an increased aggregated utility for the participating agents''.  to the repeated prisoners dilemma and leads in the long term to an increased aggregated utility for the participating agents''.
900  The authors of \cite{aberer01trust} define \emph{trust management} as a mechanism that allows one to establish mutual trust. Furthermore, \emph{reputation} is a measure  The authors of \cite{aberer01trust} define \emph{trust management} as a mechanism that allows one to establish mutual trust. Furthermore, \emph{reputation} is a measure
901  that is derived from knowledge on interactions in the past \cite{aberer01trust}. In this subsection, we discuss mechanisms to maintain  that is derived from knowledge on interactions in the past \cite{aberer01trust}. In this subsection, we briefly discuss mechanisms to maintain
902  trust in Peer-to-Peer systems.  trust in Peer-to-Peer systems.
903    
904  Trust in Peer-to-Peer systems is based on \emph{reputation}. Little research has been done on the reputation models in Peer-to-Peer  Currently, most trust mechanisms are based on \emph{reputation}. Some research has been done on the reputation models in Peer-to-Peer
905  systems, such as \cite{aberer01trust}, \cite{cornelli02reputableservents}. In \cite{aberer01trust}, authors present a scalable  systems, such as \cite{aberer01trust, cornelli02reputableservents}. In \cite{aberer01trust}, the authors present a scalable
906  trust management model, which can be used in Peer-to-Peer enviroment. Authors in \cite{cornelli02reputableservents}  trust management model, which can be used in a Peer-to-Peer enviroment. The authors in \cite{cornelli02reputableservents}
907  suggest techniques to keep track and share information about the reputation of a peer with others peers.  suggest techniques to keep track of and share reputation information regarding a peer with others peers.
908    
909  Quite recently, widely used Public Key Infrastructure (PKI) has been deployed in distributed  Quite recently, the widely used Public Key Infrastructure (PKI) has been deployed in distributed
910  systems \cite{rivest96sdsi}, \cite{spkiworkinggroup}. PKI is a reliable technology for securing  systems \cite{rivest96sdsi}, \cite{spkiworkinggroup}. PKI is a reliable technology for securing
911  data in computing systems, such as the Internet. However, in Peer-to-Peer  data in computing systems such as the Internet. However, in Peer-to-Peer
912  networks, the problem of key-based security mechanism may be the revocation of keys and the  networks, the problem of key-based security mechanisms may be the revocation of keys and the
913  distribution of new keys in a hostile environment \cite{KohMau99}.  distribution of new keys in a hostile environment \cite{KohMau99}.
914    
915  ConChord \cite{ajmani02conchord} is the first Peer-to-Peer system which has a support for PKI based  ConChord \cite{ajmani02conchord} is the first Peer-to-Peer system which supports the PKI based
916  security infrastructure. Still, however, ConChord \cite{ajmani02conchord} is in early phase of development and lacks  security infrastructure. Still, however, ConChord \cite{ajmani02conchord} is in early phase of development and lacks
917  important features of PKI to be fully usable yet. Furthermore, the hierarchy of Simple Distributed Security Infrastructure  important features of PKI to be fully usable. Furthermore, the hierarchy of the Simple Distributed Security Infrastructure
918  (SDSI) \cite{rivest96sdsi} and Simple Public Key Infrastructure (SPKI) \cite{spkiworkinggroup} may be a problem for  (SDSI) \cite{rivest96sdsi} and the Simple Public Key Infrastructure (SPKI) \cite{spkiworkinggroup} may be a problem for
919  Peer-to-Peer systems, in which hierarchy is intentionally missing.  Peer-to-Peer systems, in which hierarchy is intentionally missing.
920    
921  For data integrity, on the other hand, there are working techniques. Cryptographic content hashes  On the other hand for data integrity, there are working techniques. Cryptographic content hashes
922  \cite{fips-sha-1}, their variations \cite{merkle87hashtree} and implementation techniques \cite{mohr02thex}  \cite{fips-sha-1}, including their variations \cite{merkle87hashtree} and implementation techniques \cite{mohr02thex}
923  are efficient and reliable methods for identifying the integrity of data in Peer-to-Peer systems.  are efficient and reliable methods for identifying the integrity of data in Peer-to-Peer systems.
924    
925  \subsection{Anonymity}  \subsection{Anonymity}
926    
927  According to \cite{dingledine00free}, there exist several kinds of anonymity: author-anonymity,  According to \cite{dingledine00free}, there exists several kinds of anonymity: author-anonymity,
928  publisher-anonymity, reader-anonymity, peer-anonymity and query-ano-nymity. Author-anonymity is a form  publisher-anonymity, reader-anonymity, peer-anonymity and query-ano-nymity. Author-anonymity is a form
929  of anonymity in which no one can link author (who created the document) to a document.  of anonymity in which no one can link the document to its author.
930  Publisher-anonymity means that no one is able to determine the publisher (who published the document into  Publisher-anonymity means that no one is able to determine the document to its publisher.
931  the system) of a document. Reader-anonymity means that a document cannot be linked to its readers.  Reader-anonymity means that a document cannot be linked to its readers.
932  With peer-anonymity, no one is able to determine the peer, where the document was originally published.  With peer-anonymity, no one is able to determine the peer, that originally was published the document.
933  Document-anonymity means that a peer doesn't know which data it is currently hosting. Finally, query-anonymity is a form  Document-anonymity means that a peer does not know which data it is currently hosting. Finally, query-anonymity is a form
934  of document-anonymity; when other peers perform data lookups, a peer doesn't know which data it serves  of document-anonymity: when other peers perform data lookups, a peer does not know which local data is searched by
935  to the data lookup originators. As the authors of \cite{dingledine00free} cite, some forms of anonymity  the data lookup originators. As the authors of \cite{dingledine00free} cite, some forms of anonymity
936  may imply each other and possible issues raised by this property is one area of future work.  may imply each other. Possible issues raised by this property is one area of future work.
937    
938  Obviously, existence of several types of anonymity often conflicts with other key properties of  Obviously, the existence of several types of anonymity often conflicts with other key properties of
939  Peer-to-Peer systems. Let us consider anonymity and efficient data lookup. In efficient data lookup, we must know  Peer-to-Peer systems. For example, let us consider anonymity and efficient data lookup. In an efficient data lookup, we must know the
940  the peers responsible for given data. Of course, when we know the peers responsible  the peers responsible for any given data. Of course, when we know the peers responsible
941  for the data, the anonymity of peer is lost. Fortunately, there are partial solutions to these kinds of  for the data, the anonymity of a peer is lost. Fortunately, there are partial solutions to these kinds of
942  situations, such as pseudonymity which is a partial form of anonymity \cite{daswani03openproblems}.  situations, such as pseudonymity which is a partial form of anonymity \cite{daswani03openproblems}.
943  For instance, pseudonymity can be used for addressing peer-anonymity by providing anonymous-like identifiers to  For instance, pseudonymity can be used for addressing peer-anonymity by providing anonymous-like identifiers to
944  peers (e.g., peer identifiers of a tightly structured system).  peers (e.g., peer identifiers of a tightly structured system).
# Line 1190  number of search results. Line 1190  number of search results.
1190    
1191  In the random walk approach \cite{lv02searchreplication}, a peer forwards query to a  In the random walk approach \cite{lv02searchreplication}, a peer forwards query to a
1192  randomly selected neighbor. The basic random walk approach  randomly selected neighbor. The basic random walk approach
1193  has a poor response time but it doesn't generate as much network traffic as  has a poor response time but it does not generate as much network traffic as
1194  the original BFS. As suggested in \cite{lv02searchreplication}, the  the original BFS. As suggested in \cite{lv02searchreplication}, the
1195  random walk approach can be made more effective by introducing  random walk approach can be made more effective by introducing
1196  multiple simultaneously working ''walkers''.  multiple simultaneously working ''walkers''.
# Line 1234  is distributed throughout the overlay. S Line 1234  is distributed throughout the overlay. S
1234  joseph02p2players}, which use metadata to implement search methods. The feasibility of implementing additional  joseph02p2players}, which use metadata to implement search methods. The feasibility of implementing additional
1235  search layer on top of the network layer is questionable, especially if the search layer and the network  search layer on top of the network layer is questionable, especially if the search layer and the network
1236  layer have different assumptions about the participating peers (e.g., the network layer supports heterogeneity  layer have different assumptions about the participating peers (e.g., the network layer supports heterogeneity
1237  of peers, but the search layer doesn't). Andrzejak et al. propose range queries \cite{andrzejak02rangequeries}  of peers, but the search layer does not). Andrzejak et al. propose range queries \cite{andrzejak02rangequeries}
1238  to be used with tightly structured overlays. In this technique, it is feasible to perform data lookups  to be used with tightly structured overlays. In this technique, it is feasible to perform data lookups
1239  using ranges of keys thereby covering larger amount of possible data items. Currently their prototype  using ranges of keys thereby covering larger amount of possible data items. Currently their prototype
1240  is designed for the CAN system \cite{ratnasamy01can}.  is designed for the CAN system \cite{ratnasamy01can}.
# Line 1784  Storm block is located. Line 1784  Storm block is located.
1784  In chapter 2, we discussed the main differences between the loosely and the tightly structured  In chapter 2, we discussed the main differences between the loosely and the tightly structured
1785  approach. As stated, the most significant difference is that the tightly structured  approach. As stated, the most significant difference is that the tightly structured
1786  approach has at least poly-logarithmical properties in all internal operations, while the loosely  approach has at least poly-logarithmical properties in all internal operations, while the loosely
1787  structured approach doesn't always have even linear properties. Furthermore, the  structured approach does not always have even linear properties. Furthermore, the
1788  data lookup model of the tightly structured overlay scales much better than in loosely  data lookup model of the tightly structured overlay scales much better than in loosely
1789  structured overlays; the tightly structured overlay supports global data lookups  structured overlays; the tightly structured overlay supports global data lookups
1790  in the overlay, whereas the data lookup model of the loosely structured approach  in the overlay, whereas the data lookup model of the loosely structured approach
# Line 1803  addressed, as described in chapter 3. Th Line 1803  addressed, as described in chapter 3. Th
1803  tolerance in presence of system flux, non-optimal distance functions in identifier space,  tolerance in presence of system flux, non-optimal distance functions in identifier space,
1804  proximity routing, hostile entities and flexible search \cite{balakrishanarticle03lookupp2p}.  proximity routing, hostile entities and flexible search \cite{balakrishanarticle03lookupp2p}.
1805  Additionally, there is only little real world experiments with tightly structured systems  Additionally, there is only little real world experiments with tightly structured systems
1806  (e.g., \cite{overneturl, edonkey2kurl}). Therefore, we can't say for sure, how well these  (e.g., \cite{overneturl, edonkey2kurl}). Therefore, we cannot say for sure, how well these
1807  systems would perform in real Peer-to-Peer environment. However, we believe that these issues will be  systems would perform in real Peer-to-Peer environment. However, we believe that these issues will be
1808  solved in the near future, since there is a strong and wide research community towards tightly structured  solved in the near future, since there is a strong and wide research community towards tightly structured
1809  overlays \cite{projectirisurl}.  overlays \cite{projectirisurl}.
# Line 1928  security is that if a user downloads dat Line 1928  security is that if a user downloads dat
1928  and after a network disconnection, user wants to verify \emph{off line} the  and after a network disconnection, user wants to verify \emph{off line} the
1929  authenticity of data. Finally, if a data lookup is performed by a user, but there is no reply  authenticity of data. Finally, if a data lookup is performed by a user, but there is no reply
1930  from the Fenfire system, how are we able to know if this was a Spam attack \cite{naor03simpledht},  from the Fenfire system, how are we able to know if this was a Spam attack \cite{naor03simpledht},
1931  or the data really doesn't exist in the system ?    or the data really does not exist in the system ?  
1932  These problems, however, are not only limited to the Fenfire system as it  These problems, however, are not only limited to the Fenfire system as it
1933  concerns all Peer-to-Peer computer systems.    concerns all Peer-to-Peer computer systems.  
1934    

Legend:
Removed from v.1.206  
changed lines
  Added in v.1.207

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