BAR gossip. Antonio Massaro. May 9, May 9, / 40

Size: px
Start display at page:

Download "BAR gossip. Antonio Massaro. May 9, May 9, / 40"

Transcription

1 BAR gossip Antonio Massaro May 9, 2016 May 9, / 40

2 MAD services Single nodes cooperate to provide services in Multiple Administrative Domains Internet routing File distribution Archival storage Cooperative backup Mad services may fail Nodes can break down Nodes can be malicious Nodes can act selfishly The challenge Develop a protocol that is resilient to malicious and selfish behaviour May 9, / 40

3 BAR model Nodes can be Byzantine: act in arbitrary ways Altruistic: act as prescribed by the protocol Rational: deviate from the protocol only if convenient May 9, / 40

4 The setting: p2p gossip for media streaming PROs Absorbs peak partecipation Costs shifted to clients Self-organizing Robust, scalable, adaptive Challenges Guarantee reliable, stable, timely throughput Clients may deviate from the protocol Li, Harry C., et al. "BAR gossip." Proceedings of the 7th symposium on Operating systems design and implementation. USENIX Association, 2006 May 9, / 40

5 The basic idea May 9, / 40

6 The basic idea 1. multicast May 9, / 40

7 The basic idea 2. p2p exchange May 9, / 40

8 The basic idea Warning Rational clients may prefer not to share May 9, / 40

9 Impact of rational clients on reliability May 9, / 40

10 Impact of rational clients on bandwidth May 9, / 40

11 Impact of rational clients on reliability, BAR gossip May 9, / 40

12 Impact of rational clients on bandwidth, BAR gossip May 9, / 40

13 BAR gossip protocol: the setting Application Altruistic broadcaster BAR clients Static membership Full membership list Updates expire after finite time Cryptography RSA public/private keys All messages are signed The cryptosystem cannot be subverted Incentives Benefit: playing updates Cost: upload/download Clients provably deviant risk eviction May 9, / 40

14 BAR gossip protocol: overview At each round, the broadcaster multicasts to a subset of clients. Balanced Exchange Optimistic Push 1 Partner selection 2 Exchange histories 3 Trade equal number of updates 1 Partner selection 2 Exchange histories 3 Trade a possibly unequal number of updates What if a client lags behind? May 9, / 40

15 BAR gossip protocol: overview Trusted agent of the broadcaster At each round, polls random clients If a client has a POM 1, it sends it to the auditor If it has no POM, it sends a dummy message (why? what is its dimension?) The broadcaster includes deviant clients in the evicted list, and broadcasts it in subsequent rounds 1 Proof Of Misbehavior May 9, / 40

16 Balanced Exchange overview 1 Partner selection Key design aspects: 2 History exchange Restricted choice 3 Update exchange Delayed gratification 4 Key exchange Balanced exchage is incentive compatible and NASH equilibrium May 9, / 40

17 Assumptions 1 Rational clients will not issue a POM against themselves 2 Rational clients will not enter an exchange with a byzantine client May 9, / 40

18 1. Partner selection Note: in traditional gossip, a rational client could exploit randomness to hide a strategy on partner s selection 1 S sends a seed to R as the signed round number. R=PRNG(< r > S ) 2 R checks: The seed refers to the right round He is the correct client to be selected Deterministic yet unpredictable A rational client sends the correct seed (otherwise POM) A rational client accepts only correct seeds (why...?) May 9, / 40

19 2. History exchange 1 S sends a hash of its history 2 R sends its history 3 S sends its history R cannot use any strategy (he does not know H s ) A rational client sends a history coherent with the hash A rational client accepts only valid histories May 9, / 40

20 3. Briefcase exchange Both R and S do: 1 Generate a key as #(private key, seed) 2 Encript the updates to be exchanged 3 Send a plain text description of the updates and the encripted updates Wrong update description abort exchange A rational client will send the appropriate plaintext A rational client sends encripted updates coherently with the plaintext description May 9, / 40

21 4. Key exchange Both R and S do: 1 Send key request 2 Respond to key request Fair exchange of decription keys is impossible without a trusted third party. Pagnia, Henning, and Felix C. Gartner. On the impossibility of fair exchange without a trusted third party. Technical Report TUD-BS , Darmstadt University of Technology, Department of Computer Science, 1999 We opt for fair enough exchange, based on a credible threat. May 9, / 40

22 4. Key exchange How do we convince a rational client to respond? Repeated requests A rational client minimizes the cost sending the key A rational client will send key requests If a rational client responds, it sends the correct key If a rational client does not receive a key response, it will resend its key request May 9, / 40

23 Balanced exchange Balance exchange is incentive compatible May 9, / 40

24 Optimistic push overview 1 Partner selection 2 History exchange 3 Possibly unequal update exchange 4 Key exchange May 9, / 40

25 Optimistic push May 9, / 40

26 Optimistic push May 9, / 40

27 Optimistic push May 9, / 40

28 Optimistic push, problems How do we force lagging clients to send as many updates as possible? Require both briefcases to have equal length Possibly including junk May 9, / 40

29 Optimistic push, problems What if a client sends junk instead of updates? May 9, / 40

30 Optimistic push, problems What if a client sends junk instead of updates? Junk is larger than real updates. Rational clients will not prefer optimistic push to balanced exchange. May 9, / 40

31 Optimistic push. History exchange 1 S sends its history and a list of missing updates ids that it wants. 2 If R can satisfy S s request, it sends c ids from S s history that it wants. May 9, / 40

32 Optimistic push. Briefcase exchange 1 S sends the c updates. 2 R sends b updates from the missing list and c b junk updates, b maximal such that b c. May 9, / 40

33 Bar Gossip recap Balanced exchange Optimistic push Partner selection History exchange Trade equal number of updates Partner selection History exchange Trade possibly unequal number of updates Incentive compatible Incentive compatible? Don t know: explore the strategy space by simulations! May 9, / 40

34 Strategies for a rational client in OP Objective: evaluate unilateral rational deviation in OP. Assumption: consider just pure strategies Strategy Accepts Op Initiates OP Returns Proactive/Data Y Y Data Proactive/Junk Y Y Junk Proactive/None N Y None Passive/Data Y N Data Passive/Junk Y N Junk Passive/None N N None May 9, / 40

35 Reliability for unilateral rational deviations If all clients follow BAR Gossip, there is no obvious incentive for deviation Conjecture: BAR gossip is almost NASH May 9, / 40

36 Rational collusion Rational collusion is explored by simulation, in a simplified setting Exchange within the colluding group has 0 cost Exchange within the colluding group is immediate Colluding clients do not enter Optimistic Push If collusion group reaches 50%, the probability is 93% May 9, / 40

37 Byzantine deviation Byzantine deviation is explored by simulation, in a simplified setting Byzantine clients increase cost and decrease benefit of all players Induce other clients to exchange max number of updates Never enter key/updates exchange Byzantine clients are never evicted If 20% of the clients are byzantine, the probability of receiving an update decreases just by 7 % May 9, / 40

38 Open points Is BAR gossip a Nash equilibrium for rational clients? A complete analysis of optimal strategies for colluding rational clients. A complete analysis of the effect of byzantine strategies. Dynamic membership. May 9, / 40

39 Conclusions BAR gossip is the first protocol defined under the BAR model Key ideas: verifiable randomness restricted choice fair enough key exchange If up to 20% of the nodes are Byzantine or up to 40% collude, a correct node will recieve more than 93% updates timely. May 9, / 40

40 Bibliography May 9, / 40

41 Amitanand S Aiyer, Lorenzo Alvisi, Allen Clement, Mike Dahlin, Jean-Philippe Martin, and Carl Porth. Bar fault tolerance for cooperative services. In ACM SIGOPS operating systems review, volume 39, pages ACM, Harry C Li, Allen Clement, Mirco Marchetti, Manos Kapritsos, Luke Robison, Lorenzo Alvisi, and Mike Dahlin. Flightpath: Obedience vs. choice in cooperative services. In OSDI, volume 8, pages , Harry C Li, Allen Clement, Edmund L Wong, Jeff Napper, Indrajit Roy, Lorenzo Alvisi, and Michael Dahlin. Bar gossip. In Proceedings of the 7th symposium on Operating systems design and implementation, pages USENIX Association, May 9, / 40

BAR Gossip. Lorenzo Alvisi UT Austin

BAR Gossip. Lorenzo Alvisi UT Austin BAR Gossip Lorenzo Alvisi UT Austin MAD Services Nodes collaborate to provide service that benefits each node Service spans multiple administrative domains (MADs) Examples: Overlay routing, wireless mesh

More information

BAR Gossip. 1 Introduction

BAR Gossip. 1 Introduction BAR Gossip Harry C. Li, Allen Clement, Edmund L. Wong, Jeff Napper, Indrajit Roy, Lorenzo Alvisi, Michael Dahlin Laboratory for Advanced Systems Research (LASR), Dept. of Computer Sciences, The University

More information

BAR Gossip. 1 Introduction

BAR Gossip. 1 Introduction BAR Gossip Harry C. Li, Allen Clement, Edmund L. Wong, Jeff Napper, Indrajit Roy, Lorenzo Alvisi, Michael Dahlin Laboratory for Advanced Systems Research (LASR), Dept. of Computer Sciences, The University

More information

BAR Gossip. small-scale providers might find it simpler to use a selforganizing p2p network instead of maintaining a dedicated

BAR Gossip. small-scale providers might find it simpler to use a selforganizing p2p network instead of maintaining a dedicated BAR Gossip Harry C. Li, Allen Clement, Edmund L. Wong, Jeff Napper, Indrajit Roy, Lorenzo Alvisi, Michael Dahlin Dept. of Computer Sciences, The University of Texas at Austin We present the first peer-to-peer

More information

Game Theory. Presented by Hakim Weatherspoon

Game Theory. Presented by Hakim Weatherspoon Game Theory Presented by Hakim Weatherspoon Game Theory Main Question: Can we cheat (and get away with it)? BitTorrent P2P file distribution tool designed with incentives for contribution Users contribute

More information

CS5412: TORRENTS AND TIT-FOR-TAT

CS5412: TORRENTS AND TIT-FOR-TAT 1 CS5412: TORRENTS AND TIT-FOR-TAT Lecture VII Ken Birman BitTorrent 2 Widely used download technology Implementations specialized for setting Some focus on P2P downloads, e.g. patches Others focus on

More information

FlightPath: Obedience vs. Choice in Cooperative Services

FlightPath: Obedience vs. Choice in Cooperative Services FlightPath: Obedience vs. Choice in Cooperative Services Harry C. Li 1, Allen Clement 1, Mirco Marchetti 2, Manos Kapritsos 1, Luke Robison 1, Lorenzo Alvisi 1, and Mike Dahlin 1 1 The University of Texas

More information

FlightPath: Obedience vs. Choice in Cooperative Services

FlightPath: Obedience vs. Choice in Cooperative Services FlightPath: Obedience vs. Choice in Cooperative Services Harry C. Li 1, Allen Clement 1, Mirco Marchetti 2, Manos Kapritsos 1, Luke Robison 1, Lorenzo Alvisi 1, and Mike Dahlin 1 1 The University of Texas

More information

Byzantine Agreement with a Rational Adversary

Byzantine Agreement with a Rational Adversary Byzantine Agreement with a Rational Adversary Adam Groce, Jonathan Katz, Aishwarya Thiruvengadam, and Vassilis Zikas Department of Computer Science, University of Maryland {agroce,jkatz,aish,vzikas}@cs.umd.edu

More information

Authenticated Agreement

Authenticated Agreement Chapter 18 Authenticated Agreement Byzantine nodes are able to lie about their inputs as well as received messages. Can we detect certain lies and limit the power of byzantine nodes? Possibly, the authenticity

More information

The Lotus-Eater Attack

The Lotus-Eater Attack Ian A. Kash Computer Science Dept. Cornell University kash@cs.cornell.edu The Lotus-Eater Attack Eric J. Friedman School of Operations Research and Information Engineering Cornell University ejf27@cornell.edu

More information

BAR Fault Tolerance for Cooperative Services

BAR Fault Tolerance for Cooperative Services BAR Fault Tolerance for Cooperative Services Amitanand S. Aiyer, Lorenzo Alvisi, Allen Clement Mike Dahlin, Jean-Philippe Martin, Carl Porth University of Texas at Austin - Dept. of Computer Science 1

More information

Revisiting Fast Practical Byzantine Fault Tolerance

Revisiting Fast Practical Byzantine Fault Tolerance Revisiting Fast Practical Byzantine Fault Tolerance Ittai Abraham, Guy Gueta, Dahlia Malkhi VMware Research with: Lorenzo Alvisi (Cornell), Rama Kotla (Amazon), Jean-Philippe Martin (Verily) December 4,

More information

Incentive for P2P Fair Resource Sharing

Incentive for P2P Fair Resource Sharing Incentive for P2P Fair Resource Sharing Emmanuelle Anceaume CNRS IRISA, France Joint work with Maria Gradinariu (IRISA), Aina Ravoaja (IRISA) Facing Rationality Classical distributed systems P2P Either

More information

Leveraging Altruism in Cooperative Services

Leveraging Altruism in Cooperative Services Leveraging Altruism in Cooperative Services Jean-Philippe Martin June 20, 2007 Abstract When there is no central administrator to control the actions of nodes in a distributed system, the users may deviate

More information

Stay or Go? Participation in Under-Provisioned Video Streams

Stay or Go? Participation in Under-Provisioned Video Streams Stay or Go? Participation in Under-Provisioned Video Streams Dave Levin Daniel Malter Neil Spring Bobby Bhattacharjee University of Maryland, Computer Science Department, Robert H. Smith School of Business

More information

When You Don t Trust Clients: Byzantine Proposer Fast Paxos

When You Don t Trust Clients: Byzantine Proposer Fast Paxos 2012 32nd IEEE International Conference on Distributed Computing Systems When You Don t Trust Clients: Byzantine Proposer Fast Paxos Hein Meling, Keith Marzullo, and Alessandro Mei Department of Electrical

More information

CMSC 858F: Algorithmic Game Theory Fall 2010 Achieving Byzantine Agreement and Broadcast against Rational Adversaries

CMSC 858F: Algorithmic Game Theory Fall 2010 Achieving Byzantine Agreement and Broadcast against Rational Adversaries CMSC 858F: Algorithmic Game Theory Fall 2010 Achieving Byzantine Agreement and Broadcast against Rational Adversaries Instructor: Mohammad T. Hajiaghayi Scribe: Adam Groce, Aishwarya Thiruvengadam, Ateeq

More information

Practical Byzantine Fault Tolerance. Miguel Castro and Barbara Liskov

Practical Byzantine Fault Tolerance. Miguel Castro and Barbara Liskov Practical Byzantine Fault Tolerance Miguel Castro and Barbara Liskov Outline 1. Introduction to Byzantine Fault Tolerance Problem 2. PBFT Algorithm a. Models and overview b. Three-phase protocol c. View-change

More information

Tradeoffs in Byzantine-Fault-Tolerant State-Machine-Replication Protocol Design

Tradeoffs in Byzantine-Fault-Tolerant State-Machine-Replication Protocol Design Tradeoffs in Byzantine-Fault-Tolerant State-Machine-Replication Protocol Design Michael G. Merideth March 2008 CMU-ISR-08-110 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213

More information

Greedy Cheating Liars and the Fools Who Believe Them

Greedy Cheating Liars and the Fools Who Believe Them Greedy Cheating Liars and the Fools Who Believe Them Stefano Arteconi, David Hales, and Ozalp Babaoglu University of Bologna Dept. of Computer Science {arteconi,hales,babaoglu}@cs.unibo.it Abstract. Evolutionary

More information

CS 261 Notes: Algorand

CS 261 Notes: Algorand CS 261 Notes: Algorand Scribe: Rachel Lawrence September 17, 2018 1 Introduction: Why Algorand? Algorand [6] is a cryptocurrency that works to reach consensus on transactions with a system based on Proof

More information

Distributed Algorithms Practical Byzantine Fault Tolerance

Distributed Algorithms Practical Byzantine Fault Tolerance Distributed Algorithms Practical Byzantine Fault Tolerance Alberto Montresor Università di Trento 2018/12/06 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

More information

Distributed Algorithms Practical Byzantine Fault Tolerance

Distributed Algorithms Practical Byzantine Fault Tolerance Distributed Algorithms Practical Byzantine Fault Tolerance Alberto Montresor University of Trento, Italy 2017/01/06 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International

More information

DCast: Sustaining Collaboration in Overlay Multicast despite Rational Collusion

DCast: Sustaining Collaboration in Overlay Multicast despite Rational Collusion DCast: Sustaining Collaboration in Overlay Multicast despite Rational Collusion Haifeng Yu National University of Singapore Republic of Singapore haifeng@comp.nus.edu.sg Phillip B. Gibbons Intel Labs Pittsburgh,

More information

Simplifying Distributed System Development

Simplifying Distributed System Development Simplifying Distributed System Development We predict that the future is in... predicting the future. Maysam Yabandeh, Nedeljko Vasić, Dejan Kostić and Viktor Kuncak School of Computer and Communication

More information

Fault Tolerance. Distributed Systems. September 2002

Fault Tolerance. Distributed Systems. September 2002 Fault Tolerance Distributed Systems September 2002 Basics A component provides services to clients. To provide services, the component may require the services from other components a component may depend

More information

Distributed Protocols for Leader Election: a Game-Theoretic Perspective

Distributed Protocols for Leader Election: a Game-Theoretic Perspective Distributed Protocols for Leader Election: a Game-Theoretic Perspective Ittai Abraham Microsoft Research ittaia@microsoft.com Danny Dolev School of Computer Science and Engineering The Hebrew University

More information

AGREEMENT PROTOCOLS. Paxos -a family of protocols for solving consensus

AGREEMENT PROTOCOLS. Paxos -a family of protocols for solving consensus AGREEMENT PROTOCOLS Paxos -a family of protocols for solving consensus OUTLINE History of the Paxos algorithm Paxos Algorithm Family Implementation in existing systems References HISTORY OF THE PAXOS ALGORITHM

More information

Zyzzyva. Speculative Byzantine Fault Tolerance. Ramakrishna Kotla. L. Alvisi, M. Dahlin, A. Clement, E. Wong University of Texas at Austin

Zyzzyva. Speculative Byzantine Fault Tolerance. Ramakrishna Kotla. L. Alvisi, M. Dahlin, A. Clement, E. Wong University of Texas at Austin Zyzzyva Speculative Byzantine Fault Tolerance Ramakrishna Kotla L. Alvisi, M. Dahlin, A. Clement, E. Wong University of Texas at Austin The Goal Transform high-performance service into high-performance

More information

Whitewash: Outsourcing Garbled Circuit Generation for Mobile Devices

Whitewash: Outsourcing Garbled Circuit Generation for Mobile Devices Whitewash: Outsourcing Garbled Circuit Generation for Mobile Devices Annual Computer Security Applications Conference 2014 Henry Hank Carter, Charles Lever, Patrick Traynor SMC on mobile devices Mobile

More information

Fault Tolerance. Basic Concepts

Fault Tolerance. Basic Concepts COP 6611 Advanced Operating System Fault Tolerance Chi Zhang czhang@cs.fiu.edu Dependability Includes Availability Run time / total time Basic Concepts Reliability The length of uninterrupted run time

More information

Practical Byzantine Fault

Practical Byzantine Fault Practical Byzantine Fault Tolerance Practical Byzantine Fault Tolerance Castro and Liskov, OSDI 1999 Nathan Baker, presenting on 23 September 2005 What is a Byzantine fault? Rationale for Byzantine Fault

More information

Enforcing Fairness in a Live-Streaming System

Enforcing Fairness in a Live-Streaming System Enforcing Fairness in a Live-Streaming System Maya Haridasan a, Ingrid Jansch-Porto b and Robbert van Renesse a a Dept. of Computer Science, Cornell University Ithaca, New York b Institute of Informatics,

More information

Episode 3. Principles in Network Design

Episode 3. Principles in Network Design Episode 3. Principles in Network Design Part 2 Baochun Li Department of Electrical and Computer Engineering University of Toronto Recall: Designing the network as a system Last episode: Every complex computer

More information

Zyzzyva: Speculative Byzantine Fault Tolerance

Zyzzyva: Speculative Byzantine Fault Tolerance : Speculative Byzantine Fault Tolerance Ramakrishna Kotla, Lorenzo Alvisi, Mike Dahlin, Allen Clement, and Edmund Wong Dept. of Computer Sciences University of Texas at Austin {kotla,lorenzo,dahlin,aclement,elwong}@cs.utexas.edu

More information

All about Eve: Execute-Verify Replication for Multi-Core Servers

All about Eve: Execute-Verify Replication for Multi-Core Servers All about Eve: Execute-Verify Replication for Multi-Core Servers Manos Kapritsos, Yang Wang, Vivien Quema, Allen Clement, Lorenzo Alvisi, Mike Dahlin Dependability Multi-core Databases Key-value stores

More information

Cross-Monotonic Multicast

Cross-Monotonic Multicast Cross-Monotonic Multicast Zongpeng Li Department of Computer Science University of Calgary April 17, 2008 1 Multicast Multicast models one-to-many data dissemination in a computer network Example: live

More information

Distributed Computing Building Blocks for Rational Agents

Distributed Computing Building Blocks for Rational Agents Distributed Computing Building Blocks for Rational Agents Yehuda Afek, Yehonatan Ginzberg, Shir Landau Feibish, and Moshe Sulamy Blavatnik School of Computer Science, Tel-Aviv University, Israel afek@cs.tau.ac.il,

More information

System models for distributed systems

System models for distributed systems System models for distributed systems INF5040/9040 autumn 2010 lecturer: Frank Eliassen INF5040 H2010, Frank Eliassen 1 System models Purpose illustrate/describe common properties and design choices for

More information

Failure models. Byzantine Fault Tolerance. What can go wrong? Paxos is fail-stop tolerant. BFT model. BFT replication 5/25/18

Failure models. Byzantine Fault Tolerance. What can go wrong? Paxos is fail-stop tolerant. BFT model. BFT replication 5/25/18 Failure models Byzantine Fault Tolerance Fail-stop: nodes either execute the protocol correctly or just stop Byzantine failures: nodes can behave in any arbitrary way Send illegal messages, try to trick

More information

CSE 486/586 Distributed Systems

CSE 486/586 Distributed Systems CSE 486/586 Distributed Systems Gossiping Slides by Steve Ko Computer Sciences and Engineering University at Buffalo CSE 486/586 Revisiting Multicast Node with a piece of information to be communicated

More information

Proactive and Reactive View Change for Fault Tolerant Byzantine Agreement

Proactive and Reactive View Change for Fault Tolerant Byzantine Agreement Journal of Computer Science 7 (1): 101-107, 2011 ISSN 1549-3636 2011 Science Publications Proactive and Reactive View Change for Fault Tolerant Byzantine Agreement Poonam Saini and Awadhesh Kumar Singh

More information

Rational Oblivious Transfer

Rational Oblivious Transfer Rational Oblivious Transfer Xiong Fan xfan@cs.umd.edu Kartik Nayak kartik1507@gmail.com May 14, 2014 Abstract Oblivious transfer is widely used in secure multiparty computation. In this paper, we propose

More information

Optimal Routing Control: Repeated Game Approach

Optimal Routing Control: Repeated Game Approach IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 47, NO. 3, MARCH 2002 437 Optimal Routing Control: Repeated Game Approach Richard J. La and Venkat Anantharam, Fellow, IEEE Abstract Communication networks

More information

Topics in Artificial Intelligence: Multiagent Systems Selfish Routing in Computer Networks

Topics in Artificial Intelligence: Multiagent Systems Selfish Routing in Computer Networks Topics in Artificial Intelligence: Multiagent Systems Selfish Routing in Computer Networks Sebastian Streg December 10, 2005 1 Introduction Efficiency in networks with lots of traffic is a serious problem

More information

Two New Protocols for Fault Tolerant Agreement

Two New Protocols for Fault Tolerant Agreement Two New Protocols for Fault Tolerant Agreement Poonam Saini 1 and Awadhesh Kumar Singh 2, 1,2 Department of Computer Engineering, National Institute of Technology, Kurukshetra, India nit.sainipoonam@gmail.com,

More information

Fair Exchange Protocols

Fair Exchange Protocols air Exchange Protocols Steve Kremer and Mark Ryan air Exchnage Protocols p.1 Examples of fair exchange protocols Electronic purchase of goods exchange of an electronic item against an electronic payment

More information

CprE Fault Tolerance. Dr. Yong Guan. Department of Electrical and Computer Engineering & Information Assurance Center Iowa State University

CprE Fault Tolerance. Dr. Yong Guan. Department of Electrical and Computer Engineering & Information Assurance Center Iowa State University Fault Tolerance Dr. Yong Guan Department of Electrical and Computer Engineering & Information Assurance Center Iowa State University Outline for Today s Talk Basic Concepts Process Resilience Reliable

More information

Key question: how to set CongestionWindow which, in turn, affects ARQ s sending rate? linear increase/exponential decrease AIMD

Key question: how to set CongestionWindow which, in turn, affects ARQ s sending rate? linear increase/exponential decrease AIMD TCP congestion control Recall: EffectiveWindow = MaxWindow (LastByteSent LastByteAcked) where MaxWindow = min{ AdvertisedWindow, CongestionWindow } Key question: how to set CongestionWindow which, in turn,

More information

From eventual to strong consistency. Primary-Backup Replication. Primary-Backup Replication. Replication State Machines via Primary-Backup

From eventual to strong consistency. Primary-Backup Replication. Primary-Backup Replication. Replication State Machines via Primary-Backup From eventual to strong consistency Replication s via - Eventual consistency Multi-master: Any node can accept operation Asynchronously, nodes synchronize state COS 418: Distributed Systems Lecture 10

More information

Imposing fairness in electronic commerce

Imposing fairness in electronic commerce www.ijcsi.org 139 Imposing fairness in electronic commerce Using Trusted Third Party for electronic delivery Fahad A. ALQAHTANI Software Technology Research Laboratory De Montfort University,Leicester,United

More information

Fault Tolerance. Distributed Software Systems. Definitions

Fault Tolerance. Distributed Software Systems. Definitions Fault Tolerance Distributed Software Systems Definitions Availability: probability the system operates correctly at any given moment Reliability: ability to run correctly for a long interval of time Safety:

More information

Distributed Systems COMP 212. Revision 2 Othon Michail

Distributed Systems COMP 212. Revision 2 Othon Michail Distributed Systems COMP 212 Revision 2 Othon Michail Synchronisation 2/55 How would Lamport s algorithm synchronise the clocks in the following scenario? 3/55 How would Lamport s algorithm synchronise

More information

Middleware and Distributed Systems. System Models. Dr. Martin v. Löwis

Middleware and Distributed Systems. System Models. Dr. Martin v. Löwis Middleware and Distributed Systems System Models Dr. Martin v. Löwis System Models (Coulouris et al.) Architectural models of distributed systems placement of parts and relationships between them e.g.

More information

Verifiably Encrypted Signature Scheme with Threshold Adjudication

Verifiably Encrypted Signature Scheme with Threshold Adjudication Verifiably Encrypted Signature Scheme with Threshold Adjudication M. Choudary Gorantla and Ashutosh Saxena Institute for Development and Research in Banking Technology Road No. 1, Castle Hills, Masab Tank,

More information

Distributed Systems Principles and Paradigms. Chapter 08: Fault Tolerance

Distributed Systems Principles and Paradigms. Chapter 08: Fault Tolerance Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 08: Fault Tolerance Version: December 2, 2010 2 / 65 Contents Chapter

More information

Mechanism Design in Large Congestion Games

Mechanism Design in Large Congestion Games Mechanism Design in Large Congestion Games Ryan Rogers, Aaron Roth, Jonathan Ullman, and Steven Wu July 22, 2015 Routing Game l e (y) Routing Game Routing Game A routing game G is defined by Routing Game

More information

Algorand: Scaling Byzantine Agreements for Cryptocurrencies

Algorand: Scaling Byzantine Agreements for Cryptocurrencies Algorand: Scaling Byzantine Agreements for Cryptocurrencies Yossi Gilad, Rotem Hemo, Silvio Micali, Georgios Vlachos, Nickolai Zeldovich Presented by: Preet Patel and Umang Lathia Outline Overview of Distributed

More information

Toward Intrusion Tolerant Clouds

Toward Intrusion Tolerant Clouds Toward Intrusion Tolerant Clouds Prof. Yair Amir, Prof. Vladimir Braverman Daniel Obenshain, Tom Tantillo Department of Computer Science Johns Hopkins University Prof. Cristina Nita-Rotaru, Prof. Jennifer

More information

Secure Multiparty Computation: Introduction. Ran Cohen (Tel Aviv University)

Secure Multiparty Computation: Introduction. Ran Cohen (Tel Aviv University) Secure Multiparty Computation: Introduction Ran Cohen (Tel Aviv University) Scenario 1: Private Dating Alice and Bob meet at a pub If both of them want to date together they will find out If Alice doesn

More information

Practical Byzantine Fault Tolerance Consensus and A Simple Distributed Ledger Application Hao Xu Muyun Chen Xin Li

Practical Byzantine Fault Tolerance Consensus and A Simple Distributed Ledger Application Hao Xu Muyun Chen Xin Li Practical Byzantine Fault Tolerance Consensus and A Simple Distributed Ledger Application Hao Xu Muyun Chen Xin Li Abstract Along with cryptocurrencies become a great success known to the world, how to

More information

Reliable Distributed System Approaches

Reliable Distributed System Approaches Reliable Distributed System Approaches Manuel Graber Seminar of Distributed Computing WS 03/04 The Papers The Process Group Approach to Reliable Distributed Computing K. Birman; Communications of the ACM,

More information

Zyzzyva: Speculative Byzantine Fault Tolerance

Zyzzyva: Speculative Byzantine Fault Tolerance : Speculative Byzantine Fault Tolerance Ramakrishna Kotla Microsoft Research Silicon Valley, USA kotla@microsoft.com Allen Clement, Edmund Wong, Lorenzo Alvisi, and Mike Dahlin Dept. of Computer Sciences

More information

Fair exchange and non-repudiation protocols

Fair exchange and non-repudiation protocols Fair exchange and non-repudiation protocols Levente Buttyán Laboratory of Cryptography and System Security (CrySyS) Budapest University of Technology and Economics buttyan@crysys.hu 2010 Levente Buttyán

More information

BYZANTINE GENERALS BYZANTINE GENERALS (1) A fable: Michał Szychowiak, 2002 Dependability of Distributed Systems (Byzantine agreement)

BYZANTINE GENERALS BYZANTINE GENERALS (1) A fable: Michał Szychowiak, 2002 Dependability of Distributed Systems (Byzantine agreement) BYZANTINE GENERALS (1) BYZANTINE GENERALS A fable: BYZANTINE GENERALS (2) Byzantine Generals Problem: Condition 1: All loyal generals decide upon the same plan of action. Condition 2: A small number of

More information

Chapter 4: Distributed Systems: Replication and Consistency. Fall 2013 Jussi Kangasharju

Chapter 4: Distributed Systems: Replication and Consistency. Fall 2013 Jussi Kangasharju Chapter 4: Distributed Systems: Replication and Consistency Fall 2013 Jussi Kangasharju Chapter Outline n Replication n Consistency models n Distribution protocols n Consistency protocols 2 Data Replication

More information

Practical Byzantine Fault Tolerance Using Fewer than 3f+1 Active Replicas

Practical Byzantine Fault Tolerance Using Fewer than 3f+1 Active Replicas Proceedings of the 17th International Conference on Parallel and Distributed Computing Systems San Francisco, California, pp 241-247, September 24 Practical Byzantine Fault Tolerance Using Fewer than 3f+1

More information

Byzantine Techniques

Byzantine Techniques November 29, 2005 Reliability and Failure There can be no unity without agreement, and there can be no agreement without conciliation René Maowad Reliability and Failure There can be no unity without agreement,

More information

Failure Tolerance. Distributed Systems Santa Clara University

Failure Tolerance. Distributed Systems Santa Clara University Failure Tolerance Distributed Systems Santa Clara University Distributed Checkpointing Distributed Checkpointing Capture the global state of a distributed system Chandy and Lamport: Distributed snapshot

More information

Authenticated Byzantine Fault Tolerance Without Public-Key Cryptography

Authenticated Byzantine Fault Tolerance Without Public-Key Cryptography Appears as Technical Memo MIT/LCS/TM-589, MIT Laboratory for Computer Science, June 999 Authenticated Byzantine Fault Tolerance Without Public-Key Cryptography Miguel Castro and Barbara Liskov Laboratory

More information

Introduction to Distributed Systems Seif Haridi

Introduction to Distributed Systems Seif Haridi Introduction to Distributed Systems Seif Haridi haridi@kth.se What is a distributed system? A set of nodes, connected by a network, which appear to its users as a single coherent system p1 p2. pn send

More information

or? Paxos: Fun Facts Quorum Quorum: Primary Copy vs. Majority Quorum: Primary Copy vs. Majority

or? Paxos: Fun Facts Quorum Quorum: Primary Copy vs. Majority Quorum: Primary Copy vs. Majority Paxos: Fun Facts Quorum Why is the algorithm called Paxos? Leslie Lamport described the algorithm as the solution to a problem of the parliament on a fictitious Greek island called Paxos Many readers were

More information

Distributed Systems COMP 212. Lecture 19 Othon Michail

Distributed Systems COMP 212. Lecture 19 Othon Michail Distributed Systems COMP 212 Lecture 19 Othon Michail Fault Tolerance 2/31 What is a Distributed System? 3/31 Distributed vs Single-machine Systems A key difference: partial failures One component fails

More information

Practical Byzantine Fault Tolerance

Practical Byzantine Fault Tolerance Practical Byzantine Fault Tolerance Robert Grimm New York University (Partially based on notes by Eric Brewer and David Mazières) The Three Questions What is the problem? What is new or different? What

More information

Primary-Backup Replication

Primary-Backup Replication Primary-Backup Replication CS 240: Computing Systems and Concurrency Lecture 7 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. Simplified Fault Tolerance

More information

Contracts: Practical Contribution Incentives for P2P Live Streaming

Contracts: Practical Contribution Incentives for P2P Live Streaming Contracts: Practical Contribution Incentives for P2P Live Streaming Michael Piatek, Arvind Krishnamurthy, Arun Venkataramani, Richard Yang, David Zhang, Alexander Jaffe U. of Washington, U. of Massachusetts,

More information

A Security Infrastructure for Trusted Devices

A Security Infrastructure for Trusted Devices Infrastructure () A Security Infrastructure for Trusted Devices Mahalingam Ramkumar Mississippi State University, MS Nasir Memon Polytechnic University, Brooklyn, NY January 31, 2005 Infrastructure ()

More information

QUALITY OF SEVICE WITH DATA STORAGE SECURITY IN CLOUD COMPUTING

QUALITY OF SEVICE WITH DATA STORAGE SECURITY IN CLOUD COMPUTING QUALITY OF SEVICE WITH DATA STORAGE SECURITY IN CLOUD COMPUTING ABSTRACT G KALYANI 1* 1. M.Tech Student, Dept of CSE Indira Institute of Engineering and Technology, Markapur, AP. Cloud computing has been

More information

Practical Byzantine Fault Tolerance. Castro and Liskov SOSP 99

Practical Byzantine Fault Tolerance. Castro and Liskov SOSP 99 Practical Byzantine Fault Tolerance Castro and Liskov SOSP 99 Why this paper? Kind of incredible that it s even possible Let alone a practical NFS implementation with it So far we ve only considered fail-stop

More information

Broadcast in Ad hoc Wireless Networks with Selfish Nodes: A Bayesian Incentive Compatibility Approach

Broadcast in Ad hoc Wireless Networks with Selfish Nodes: A Bayesian Incentive Compatibility Approach Broadcast in Ad hoc Wireless Networks with Selfish Nodes: A Bayesian Incentive Compatibility Approach N. Rama Suri Research Student, Electronic Enterprises Laboratory, Dept. of Computer Science and Automation,

More information

Algorithmic Game Theory and Applications. Lecture 16: Selfish Network Routing, Congestion Games, and the Price of Anarchy

Algorithmic Game Theory and Applications. Lecture 16: Selfish Network Routing, Congestion Games, and the Price of Anarchy Algorithmic Game Theory and Applications Lecture 16: Selfish Network Routing, Congestion Games, and the Price of Anarchy Kousha Etessami warning, again 1 In the few remaining lectures, we will briefly

More information

CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4. Xiaowei Yang

CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4. Xiaowei Yang CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4 Xiaowei Yang xwy@cs.duke.edu Overview Problem Evolving solutions IP multicast Proxy caching Content distribution networks

More information

Watermark-Based Authentication and Key Exchange in Teleconferencing Systems

Watermark-Based Authentication and Key Exchange in Teleconferencing Systems Watermark-Based Authentication and Key Exchange in Teleconferencing Systems Ulrich Rührmair a, Stefan Katzenbeisser b, Martin Steinebach c, and Sascha Zmudzinski c a Technische Universität München, Department

More information

Scalable Mechanisms for Rational Secret Sharing

Scalable Mechanisms for Rational Secret Sharing Scalable Mechanisms for Rational Secret Sharing Varsha Dani Yamel Rodriguez Jared Saia Abstract We consider the classical secret sharing problem in the case where all agents are selfish but rational. In

More information

Byzantine Fault Tolerance

Byzantine Fault Tolerance Byzantine Fault Tolerance CS 240: Computing Systems and Concurrency Lecture 11 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. So far: Fail-stop failures

More information

16 Time Triggered Protocol

16 Time Triggered Protocol 16 Time Triggered Protocol [TTtech04] (TTP) 18-549 Distributed Embedded Systems Philip Koopman October 25, 2004 Significant material drawn from: Prof. H. Kopetz [Kopetz] TTP Specification v 1.1 [TTTech]

More information

Lecture 8: Application Layer P2P Applications and DHTs

Lecture 8: Application Layer P2P Applications and DHTs Lecture 8: Application Layer P2P Applications and DHTs COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,

More information

Introduction to Cryptoeconomics

Introduction to Cryptoeconomics Introduction to Cryptoeconomics What is cryptoeconomics? Cryptoeconomics is about... Building systems that have certain desired properties Use cryptography to prove properties about messages that happened

More information

CMSC 332 Computer Networks P2P and Sockets

CMSC 332 Computer Networks P2P and Sockets CMSC 332 Computer Networks P2P and Sockets Professor Szajda Announcements Programming Assignment 1 is due Thursday Where are we? What sorts of problems are we having? 2 Recap SMTP is the language that

More information

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK NONTRIVIAL CHALLENGES IN PEER TO PEER APPLICATION WITHIN NETWORK AND DESIGN ISSUE

More information

Consensus in Distributed Systems. Jeff Chase Duke University

Consensus in Distributed Systems. Jeff Chase Duke University Consensus in Distributed Systems Jeff Chase Duke University Consensus P 1 P 1 v 1 d 1 Unreliable multicast P 2 P 3 Consensus algorithm P 2 P 3 v 2 Step 1 Propose. v 3 d 2 Step 2 Decide. d 3 Generalizes

More information

Intuitive distributed algorithms. with F#

Intuitive distributed algorithms. with F# Intuitive distributed algorithms with F# Natallia Dzenisenka Alena Hall @nata_dzen @lenadroid A tour of a variety of intuitivedistributed algorithms used in practical distributed systems. and how to prototype

More information

The Ripple Protocol Consensus Algorithm

The Ripple Protocol Consensus Algorithm Ripple Labs Inc, 2014 The Ripple Protocol Consensus Algorithm David Schwartz david@ripple.com Noah Youngs nyoungs@nyu.edu Arthur Britto arthur@ripple.com Abstract While several consensus algorithms exist

More information

Distributed Systems (ICE 601) Fault Tolerance

Distributed Systems (ICE 601) Fault Tolerance Distributed Systems (ICE 601) Fault Tolerance Dongman Lee ICU Introduction Failure Model Fault Tolerance Models state machine primary-backup Class Overview Introduction Dependability availability reliability

More information

ON SECURITY-ENERGY TRADEOFFS AND COOPERATION FOR WIRELESS AD HOC NETWORKS

ON SECURITY-ENERGY TRADEOFFS AND COOPERATION FOR WIRELESS AD HOC NETWORKS ON SECURITY-ENERGY TRADEOFFS AND COOPERATION FOR WIRELESS AD HOC NETWORKS 1 Cristina Comaniciu Stevens Institute of Technology A DIFFERENT PERSPECTIVE ON SECURITY FOR WIRELESS Security is a key requirement

More information

Nash Equilibrium Load Balancing

Nash Equilibrium Load Balancing Nash Equilibrium Load Balancing Computer Science Department Collaborators: A. Kothari, C. Toth, Y. Zhou Load Balancing A set of m servers or machines. A set of n clients or jobs. Each job can be run only

More information

CAP Theorem, BASE & DynamoDB

CAP Theorem, BASE & DynamoDB Indian Institute of Science Bangalore, India भ रत य व ज ञ न स स थ न ब गल र, भ रत DS256:Jan18 (3:1) Department of Computational and Data Sciences CAP Theorem, BASE & DynamoDB Yogesh Simmhan Yogesh Simmhan

More information

Byzantine Failures. Nikola Knezevic. knl

Byzantine Failures. Nikola Knezevic. knl Byzantine Failures Nikola Knezevic knl Different Types of Failures Crash / Fail-stop Send Omissions Receive Omissions General Omission Arbitrary failures, authenticated messages Arbitrary failures Arbitrary

More information

Distributed Algorithmic Mechanism Design

Distributed Algorithmic Mechanism Design CHAPTER 14 Distributed Algorithmic Mechanism Design Joan Feigenbaum, Michael Schapira, and Scott Shenker Abstract Most discussions of algorithmic mechanism design (AMD) presume the existence of a trusted

More information