Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
University of Parma Department of Information Engineering Parma, Italy Byzantine Generals Problem in the Light of P2P Computing Natalya Fedotova Luca Veltri International Workshop on Ubiquitous Access Control July 17, 2006 – San Jose, California, USA DHT based P2P networks Efficient routing performance High scalability High exact-match accuracy of search Simple API IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 2 DHT based P2P networks Main types of attacks: Incorrect lookup routing Incorrect routing updates Partition Rapid joins and leaves Inconsistent behavior Storage and retrieval attack IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 3 Byzantine Generals Problem Takes place in distributed computer systems in the presence of malfunctioning components that give conflicting information to other parts of the system Causes a Byzantine failure, an arbitrary fault that occurs during the execution of some algorithm by a distributed computer system, and as a result: a failure to pass to the next step in the algorithm system’s inability to correctly implement the actual algorithm arbitrary execution of a step different from one predicated by the algorithm (incorrect hops) Originally described by L.Lamport, R.Shostak and M.Pease in 1982, who were the first to apply the concept of BGP to distributed computer systems IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 4 Byzantine Generals Problem: the original concept There are n generals of Byzantine army with their divisions They have to reach an agreement on a common plan of action These generals are geographically separated and they have to communicate with each other through messengers Some of them are traitors IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 5 Byzantine Generals Problem: the original concept To cope with t traitors there must be at least 3t +1 generals and, given the possibility for all generals to exchange the messages with each other, must exist some recursive algorithm of information exchange, equal for all generals, so, that: all generals make the final decisions all loyal generals decide upon the same plan of action this final plan of loyal generals must coincide with final decision of one loyal general at least IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 6 Byzantine Generals Problem in DHT based P2P environment generals traitors false information impossibility of agreement on a common decision nodes misbehaving nodes incorrect routing information impossibility of efficient hash lookup It is possible to apply some approaches used in the case of Byzantine failure IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 7 Byzantine Generals Problem in DHT based P2P environment Problems of application: great number of participants permanent joins and leaves one node cannot contact directly all others the number of messages circulating on the network during the process of traitor detection using the algorithm by Lamport, Shostak & Pease is: Nmsg = (n - 1)(n – 2) ... (n – t – 1) = (n – 1)! / t! increase of the traffic and the overload of the network IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 8 Byzantine Generals Problem in DHT based P2P environment Proposed approach: let’s consider P2P network as a number of peer groups individuated by some principle each node launches the algorithm only within its group, and then: Nmsg = ((ni - 1)(ni – 2) ... (ni – ti – 1))×k ni – the average number of nodes in one group formed around one given node i; ti – the average number of traitors in one group; k – the number of groups on the network for small groups of peers the classical solution of BGP by Lamport and Shostak becomes efficient IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 9 Possible criteria to individuate the groups the most frequent contacts among the nodes common interests “closeness” of identifiers according to XOR-metric IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 10 “Codat” concept as one of possible mechanisms to individuate the groups Codat = Code + Data originally described by JXTA platform developers is a unit of information shared and exchanged within a peer group means a content that could be either code or data and is used as a placeholder for any types of data is uniquely identified via a unique CodatID and can belong to only one peer group contains a document (a content advertisement) that represents the data it holds IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 11 180 160 140 N = 1000000 120 ln(Nm) 100 N = 10000 80 N = 100000 60 N = 1000 40 N = 100 20 0 4 16 8 64 32 256 128 1024 512 4096 2048 16384 8192 65536 32768 262144 131072 524288 k Diagrams of Nm change at k increased for t = 1/5N (N – the number of nodes in the network ) IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 12 300 280 260 240 220 200 180 160 140 120 100 80 60 40 20 0 N = 1000000 ln(Nm) N = 100000 N = 10000 N = 10 N = 1000 N = 100 8 32 128 2048 512 65536 16384 4096 1024 256 64 16 4 8192 32768 262144 131072 524288 k Diagrams of Nm change at k increased for t = 1/3N (N – the number of nodes in the network ) IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 13 Conclusions it is possible to apply successfully the classical solutions for BGP by Lamport and Shostak in P2P environment application of these solutions helps to reduce the number of messages circulating on the network BUT: here only completely separated groups are considered in this case we deal with the malicious node who demonstrates poor behavior regarding all the nodes IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 14 Future work What other mechanisms can we use to individuate a group? How can we optimize the algorithm of the traitor detection process in the case of partially coinciding groups? How can we integrate the solutions we have just presented with some mechanisms of reputation evaluation? IWUAC - July 17, 2006 Byzantine generals problem in the light of P2P computing 15