1 Mistreatment in Distributed Caching Groups: Causes and Implications Nikolaos Laoutaris †‡, Georgios Smaragdakis †, Azer Bestavros †, ‡ Ioannis Stavrakakis.

Slides:



Advertisements
Similar presentations
Yannis Smaragdakis / 11-Jun-14 General Adaptive Replacement Policies Yannis Smaragdakis Georgia Tech.
Advertisements

ECE /24/2005 A Survey on Position-Based Routing in Mobile Ad-Hoc Networks Alok Sabherwal.
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Data and Computer Communications
A KTEC Center of Excellence 1 Cooperative Caching for Chip Multiprocessors Jichuan Chang and Gurindar S. Sohi University of Wisconsin-Madison.
Maximum Battery Life Routing to Support Ubiquitous Mobile Computing in Wireless Ad Hoc Networks By C. K. Toh.
©Silberschatz, Korth and Sudarshan12.1Database System Concepts Chapter 12: Indexing and Hashing Basic Concepts Ordered Indices B+-Tree Index Files B-Tree.
1 Distributed Selfish Replication under Node Churn Eva Jaho, Ioannis Koukoutsidis, Ioannis Stavrakakis, Ina Jaho Advanced Networking Research Group National.
Study of Hurricane and Tornado Operating Systems By Shubhanan Bakre.
Sogang University ICC Lab Using Game Theory to Analyze Wireless Ad Hoc networks.
1/14 Ad Hoc Networking, Eli M. Gafni and Dimitri P. Bertsekas Distributed Algorithm for Generating Loop-free Routes in Networks With Frequently.
Small-world Overlay P2P Network
Distributed Placement of Service Facilities in Large-Scale Networks *Nikolaos Laoutaris Postdoc Fellow Harvard University Joint.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
6/2/2001 Cooperative Agent Systems: Artificial Agents Play the Ultimatum Game Steven O. Kimbrough Presented at FMEC 2001, Oslo Joint work with Fang Zhong.
Brent Dingle Marco A. Morales Texas A&M University, Spring 2002
Selfish Caching in Distributed Systems: A Game-Theoretic Analysis By Byung-Gon Chun et al. UC Berkeley PODC’04.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
P2P: Advanced Topics Filesystems over DHTs and P2P research Vyas Sekar.
An Authentication Service Against Dishonest Users in Mobile Ad Hoc Networks Edith Ngai, Michael R. Lyu, and Roland T. Chin IEEE Aerospace Conference, Big.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Internet Cache Pollution Attacks and Countermeasures Yan Gao, Leiwen Deng, Aleksandar Kuzmanovic, and Yan Chen Electrical Engineering and Computer Science.
“A Feedback Control Approach to Mitigating Mistreatment in Distributed Caching Groups ” Georgios Smaragdakis, Nikolaos Laoutaris, Azer Bestavros, Ibrahim.
1Bloom Filters Lookup questions: Does item “ x ” exist in a set or multiset? Data set may be very big or expensive to access. Filter lookup questions with.
Web Caching Schemes For The Internet – cont. By Jia Wang.
1 Distributed Selfish Replication Nikolaos Laoutaris Orestis Telelis Vassilios Zissimopoulos Ioannis Stavrakakis
Client-Server Computing in Mobile Environments
(part 3).  Switches, also known as switching hubs, have become an increasingly important part of our networking today, because when working with hubs,
Multiprocessor Cache Coherency
Switching Techniques Student: Blidaru Catalina Elena.
On the Anonymity of Anonymity Systems Andrei Serjantov (anonymous)
Chapter 3 Memory Management: Virtual Memory
Efficiency Loss in a Network Resource Allocation Game Paper by: Ramesh Johari, John N. Tsitsiklis [ Informs] Presented by: Gayatree Ganu.
Networked File System CS Introduction to Operating Systems.
IT Infrastructure Chap 1: Definition
Trust-Aware Optimal Crowdsourcing With Budget Constraint Xiangyang Liu 1, He He 2, and John S. Baras 1 1 Institute for Systems Research and Department.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Ivan Osipkov Fighting Freeloaders in Decentralized P2P File Sharing Systems.
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Competitive Queue Policies for Differentiated Services Seminar in Packet Networks1 Competitive Queue Policies for Differentiated Services William.
Communication Paradigm for Sensor Networks Sensor Networks Sensor Networks Directed Diffusion Directed Diffusion SPIN SPIN Ishan Banerjee
1 ACTIVE FAULT TOLERANT SYSTEM for OPEN DISTRIBUTED COMPUTING (Autonomic and Trusted Computing 2006) Giray Kömürcü.
Oracle's Distributed Database Bora Yasa. Definition A Distributed Database is a set of databases stored on multiple computers at different locations and.
REECH ME: Regional Energy Efficient Cluster Heads based on Maximum Energy Routing Protocol Prepared by: Arslan Haider. 1.
Kaleidoscope – Adding Colors to Kademlia Gil Einziger, Roy Friedman, Eyal Kibbar Computer Science, Technion 1.
Securing Passwords Against Dictionary Attacks Presented By Chad Frommeyer.
Virtual Memory The memory space of a process is normally divided into blocks that are either pages or segments. Virtual memory management takes.
By Naeem Amjad 1.  Challenges  Introduction  Motivation  First Order Radio Model  Proposed Scheme  Simulations And Results  Conclusion 2.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
1 Elastically Replicated Information Services: Sustaining the Availability of Distributed Storage Across Dynamic Topological Changes Sponsored by Program.
Project Summary Fair and High Throughput Cache Partitioning Scheme for CMPs Shibdas Bandyopadhyay Dept of CISE University of Florida.
Distributed Computing Systems CSCI 6900/4900. Review Definition & characteristics of distributed systems Distributed system organization Design goals.
Risk-Aware Mitigation for MANET Routing Attacks Submitted by Sk. Khajavali.
A Fragmented Approach by Tim Micheletto. It is a way of having multiple cache servers handling data to perform a sort of load balancing It is also referred.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
Satisfaction Games in Graphical Multi-resource Allocation
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Memory Hierarchy Ideal memory is fast, large, and inexpensive
The Impact of Replacement Granularity on Video Caching
Multiprocessor Cache Coherency
Introduction to Networking
Switching Techniques In large networks there might be multiple paths linking sender and receiver. Information may be switched as it travels through various.
Authors Alessandro Duminuco, Ernst Biersack Taoufik and En-Najjary
Yue Zhang, Nathan Vance, and Dong Wang
Edge computing (1) Content Distribution Networks
Distributed Systems CS
Assoc. Prof. Dr. Syed Abdul-Rahman Al-Haddad
Presentation transcript:

1 Mistreatment in Distributed Caching Groups: Causes and Implications Nikolaos Laoutaris †‡, Georgios Smaragdakis †, Azer Bestavros †, ‡ Ioannis Stavrakakis † Boston University ‡ University of Athens INFOCOM Barcelona

2 This work is about 2 things: a new application - Distributed Selfish Caching (DSC) distributed caching of web/P2P content under selfish nodes we want to protect DSC against (1) isolationism (2) mistreatment (abuse) and do that in a non-stationary environment (non-fixed operating parameters) and a new approach to handling local utility aware nodes – Self- preservation Main idea: “we can borrow concepts and connotations from Game Theory (GT), without using the theory itself” Main goal:“to design complex systems that include selfish agents without being constrained in a GT framework” An “engineering approach” to handling selfishness

3 A distributed replication/caching group vjvj origin server group each node local client population generates requests (preference profile over the N objects) requests serviced by the “closest copy” fixed amount of storage capacity a collection of n nodes Ν objects Applications Content distribution Shared memory Network file systems nodes storage used for either replication or caching permanent copies temporary copies

4 Node selfishness brings a new perspective the traditional approach: entire group under common control find replication/caching strategies to minimize the access cost of the entire group but a selfish node: wants to minimize (or guarantee some level) the access cost of local users only better model for applications with: multiple/independent authorities e.g., P2P, distributed web-caching Therefore, two new research questions: “object replication under selfish nodes?” (done, TPDS’06) “object caching under selfish nodes?” (topic of this talk)

5 Replication strategies – Brief review At the two extremes: Socially Optimal (SO) replication (min access cost – entire group) Greedy Local (GL) replication (min access cost – unique isolated node) Both have problems under selfish nodes: SO can lead to mistreatment phenomena GL leads to isolationism (uncooperative selection of objects that typically yields poor performance, both local and social) DEFINITION: A node is being mistreated, if its participations in the group:  leads to a higher (local) access cost  than the minimum one it can guarantee for itself by operating on its own

6 Mistreatment under SO group an over- active node 10 reqs/sec 1000 reqs/sec SO replicates the most popular objects locally (smaller id-> greater popularity) uses the storage capacity of all other nodes to replicate the next most popular ones these nodes end up replicating objects of low popularity “We are being mistreated. Let’s abandon the group and follow GL” (replicate objs 1,2,3,4) nodes go GL and the group disintegrates (everybody replicating 1,2,3,4 is ineffective…)

7 EQ replication: Our (pure Nash) equilibrium strategy for selfish replication (TPDS’06) some nice properties of EQ replication: guarantees a local cost that is lower than GL, for all nodes therefore it precludes mistreatment also, good social cost in typical situations (e.g., under common preference) and finally, low communication requirements for implementation (can use Bloom filters) all is done for a stationary group we assume everything to be fixed:# nodes, storage capacities, communication costs, object preference profiles BUT…

8 Can we handle dynamic groups? Classic approach : periodically re-compute EQ how often ??? can we gather the necessary input??? (e.g., estimate the local popularity profiles) Our new approach : fundamentally different in two ways: Application-wise: uses (on-line) caching instead of (off-line) replication to adaptively track group dynamics Methodologically: We emancipate from GT (we have used pure Nash as the means to get what we want. We DO NOT need to make it the objective) Instead, we propose an ad hoc “self-preservation” approach to avoid the aforementioned limitations of the classic approach and protect against uncooperativeness and mistreatment in a dynamic group

9 How can mistreatment occur under caching? can occur due to state interaction cache contents can be affected by the so called “remote hits” or due to a common caching scheme at all nodes nodes can have different characteristics (be non homogeneous) different capacities, distances to other nodes, etc. and thus a common parameterization of the caching protocol (caching behavior) cannot always perform well for all nodes examples coming next

10 1 st case: State interaction v1v1 v2v2 user request miss redirect hit ? if v 2 discriminates between local and remote hits: local (caching) state NOT AFFECTED requested object sent back to v 1 else, local state is affected, e.g.: LRU  bring the requested object to the top of the list LFU  increase the frequency count for this object v 2 ’s storage can be “hijacked”  access cost increasing for local users

11 Some facts about state interaction High request rate imbalance for mistreatment to appear not easy to do low rate (high potency) attacks (leech without being detected) Caching more robust to mistreatment than replication mis. occurs “earlier” under replication (i.e., with smaller imbalance) stochastic nature of caching LFU more robust to mistreatment than LRU the higher replacement “noise” of LRU makes it more vulnerable Robustness disappears when operating in L2 caching mode proactively fetching objects for remote nodes

12 2 nd case: Common caching scheme Key idea: a common parametarization across all (dissimilar) nodes can mistreat some Example: object admission control scheme in an “outlier” node clustered nodes: want to avoid multiple copies of the same object (ideally they would do HASH caching) outlier: cannot fetch objects efficiently from the cluster (ideally it keeps copies of all incoming objects) Either one gets mistreated if a common object admission scheme is applied

13 A general plan for self-preservation 1. Do not avoid cooperation 1. be open to resource sharing (storage here) 2. offer to help (send objects back) 2. Keep an open eye for mistreatment by monitoring your running utility (or cost) 3. React when necessary (protect your resources) Requirements: be able to detect mistreatment (not trivial in an on-line distributed setting) have an anti-mistreatment device on the side be able to modulate the device depending on the (non- stationary) environment

14 Making it specific to DSC and the common scheme problem Mistreatment detection => Use emulation Virtual cache emulating an alternative caching behavior Anti-mistreatment dev. => Object admission control LRU(q): keep local copy with probability q if object exists in other node (q=1 if fetched from the origin server) Modulating the device => Change q to adjust to current group settings e.g., the “outlier”: decreases q when getting closer to the cluster, increases it otherwise in this paper: “hard switch” approach between LRU(0) and LRU(1) in a forthcoming one: PID controller for a finer control of q Can design a similar solution for the state interaction problem

15 Block diagram virtual cache cache request stream holds actual objects holds objects identifiers E.g. emulate LRU(1) run LRU(0) switch when crossing the threshold

16 Wrapping it up … In a DSC setting we can: protect nodes from mistreatment without resorting to isolationism and do that under a dynamic setting Our self-preservation based solution more flexible than our previous GT based approach: is on-line (no need for a priori knowledge or stationarity) is strongly distributed (runs only on local information): updating the local utility as requests get serviced modulation based on local “test for mistreatment” (e.g., emulated virtual cache)

17 Thank you Q ?