RACOON++: A Semi-Automatic Framework for the Selfishness-Aware Design of Cooperative Systems

A challenge in designing cooperative distributed systems is to develop feasible and cost-effective mechanisms to foster cooperation among selfish nodes, i.e., nodes that strategically deviate from the intended specification to increase their individual utility. Finding a satisfactory solution to this challenge may be complicated by the intrinsic characteristics of each system, as well as by the particular objectives set by the system designer. Our previous work addressed this challenge by proposing RACOON, a general and semi-automatic framework for designing selfishness-resilient cooperative systems. RACOON relies on classical game theory and a custom built simulator to predict the impact of a fixed set of selfish behaviours on the designer's objectives. In this paper, we present RACOON++, which extends the previous framework with a declarative model for defining the utility function and the static behaviour of selfish nodes, along with a new model for reasoning on the dynamic interactions of nodes, based on evolutionary game theory. We illustrate the benefits of using RACOON++ by designing three cooperative systems: a peer-to-peer live streaming system, a load balancing protocol, and an anonymous communication system. Extensive experimental results using the state-of-the-art PeerSim simulator verify that the systems designed using RACOON++ achieve both selfishness-resilience and high performance.

[1]  Peter Druschel,et al.  Peer-to-peer systems , 2010, Commun. ACM.

[2]  Michael Dahlin,et al.  FlightPath: Obedience vs. Choice in Cooperative Services , 2008, OSDI.

[3]  Márk Jelasity,et al.  A Modular Paradigm for Building Self-Organizing Peer-to-Peer Applications , 2003, Engineering Self-Organising Systems.

[4]  Ali Shoker,et al.  RAC: A Freerider-Resilient, Scalable, Anonymous Communication Protocol , 2013, 2013 IEEE 33rd International Conference on Distributed Computing Systems.

[5]  Geoff Coulson,et al.  Free Riding on Gnutella Revisited: The Bell Tolls? , 2005, IEEE Distributed Syst. Online.

[6]  Anne-Marie Kermarrec,et al.  LiFTinG: Lightweight Freerider-Tracking in Gossip , 2010, Middleware.

[7]  Bill N. Schilit,et al.  Enabling the Internet of Things , 2015, Computer.

[8]  Levente Buttyán,et al.  Barter trade improves message delivery in opportunistic networks , 2010, Ad Hoc Networks.

[9]  Paul F. Syverson,et al.  Onion routing , 1999, CACM.

[10]  I. Stoica,et al.  A case for a coordinated internet video control plane , 2012, CCRV.

[11]  John C. S. Lui,et al.  A Mathematical Framework for Analyzing Adaptive Incentive Protocols in P2P Networks , 2012, IEEE/ACM Transactions on Networking.

[12]  David C. Parkes,et al.  On non-cooperative location privacy: a game-theoretic analysis , 2009, CCS.

[13]  Ratul Mahajan,et al.  Experiences applying game theory to system design , 2004, PINS '04.

[14]  Michael Dahlin,et al.  BAR fault tolerance for cooperative services , 2005, SOSP '05.

[15]  Jeffrey S. Chase,et al.  The role of accountability in dependable distributed systems , 2005 .

[16]  Cristina Nita-Rotaru,et al.  A survey of attack and defense techniques for reputation systems , 2009, CSUR.

[17]  Ian Wakeman,et al.  The state of peer-to-peer simulators and simulations , 2007, CCRV.

[18]  Andreas Haeberlen,et al.  PeerReview: practical accountability for distributed systems , 2007, SOSP.

[19]  Mohammad Shikh-Bahaei,et al.  Survey on peer-assisted content delivery networks , 2017, Comput. Networks.

[20]  Ernesto Damiani,et al.  A Framework for the Design Configuration of Accountable Selfish-Resilient Peer-to-Peer Systems , 2015, 2015 IEEE 34th Symposium on Reliable Distributed Systems (SRDS).

[21]  D. M. V. Hesteren Evolutionary Game Theory , 2017 .

[22]  Jörgen W. Weibull,et al.  Evolutionary Game Theory , 1996 .

[23]  Yan Zhang,et al.  The Peer's Dilemma: A general framework to examine cooperation in pure peer-to-peer systems , 2012, Comput. Networks.

[24]  Jianhua Ma,et al.  P2P soft security: On evolutionary dynamics of P2P incentive mechanism , 2011, Comput. Commun..

[25]  David K. Y. Yau,et al.  Incentive and Service Differentiation in P2P Networks: A Game Theoretic Approach , 2006, IEEE/ACM Transactions on Networking.

[26]  Vivien Quéma,et al.  FullReview: Practical Accountability in Presence of Selfish Nodes , 2014, 2014 IEEE 33rd International Symposium on Reliable Distributed Systems.

[27]  Melanie Swan,et al.  Blockchain: Blueprint for a New Economy , 2015 .

[28]  Gabriel-Miro Muntean,et al.  Game Theory-Based Network Selection: Solutions and Challenges , 2012, IEEE Communications Surveys & Tutorials.

[29]  Jonathan Katz,et al.  Bridging Game Theory and Cryptography: Recent Results and Future Directions , 2008, TCC.

[30]  Flavio D. Garcia,et al.  Off-Line Karma: A Decentralized Currency for Peer-to-peer and Grid Applications , 2005, ACNS.

[31]  Can Peer-to-Peer live streaming systems coexist with free riders? , 2013, IEEE P2P 2013 Proceedings.

[32]  Ernesto Damiani,et al.  Analysing Selfishness Flooding with SEINE , 2017, 2017 47th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).

[33]  Pascal Felber,et al.  SPLAY: Distributed Systems Evaluation Made Simple (or How to Turn Ideas into Live Systems in a Breeze) , 2009, NSDI.

[34]  Amin Vahdat,et al.  Mace: language support for building distributed systems , 2007, PLDI '07.

[35]  Alptekin Küpçü,et al.  Making p2p accountable without losing privacy , 2007, WPES '07.

[36]  Fotios C. Harmantzis,et al.  Revisiting free riding and the Tit-for-Tat in BitTorrent: A measurement study , 2008, Peer-to-Peer Netw. Appl..

[37]  Hector Garcia-Molina,et al.  Taxonomy of trust: Categorizing P2P reputation systems , 2006, Comput. Networks.

[38]  Michael Dahlin,et al.  BAR gossip , 2006, OSDI '06.

[39]  Karl M. Göschka,et al.  Dependable distributed systems , 2004, OOPSLA '04.

[40]  M. Dufwenberg Game theory. , 2011, Wiley interdisciplinary reviews. Cognitive science.

[41]  B. Cohen,et al.  Incentives Build Robustness in Bit-Torrent , 2003 .

[42]  Danny Dolev,et al.  Distributed computing meets game theory: robust mechanisms for rational secret sharing and multiparty computation , 2006, PODC '06.