Per User Profile Replication in Mobile Environments

Slides:



Advertisements
Similar presentations
Introduction to Algorithms
Advertisements

How Bad is Selfish Routing? By Tim Roughgarden Eva Tardos Presented by Alex Kogan.
R. Johnsonbaugh Discrete Mathematics 5 th edition, 2001 Chapter 8 Network models.
Parallel Scheduling of Complex DAGs under Uncertainty Grzegorz Malewicz.
Location Management in Cellular Networks By Priyanka Patel ( ) Instructor: Prof. Ivan Stojmenovic.
MAXIMUM FLOW Max-Flow Min-Cut Theorem (Ford Fukerson’s Algorithm)
Chapter 10: Iterative Improvement The Maximum Flow Problem The Design and Analysis of Algorithms.
Lectures on Network Flows
Location and Handoff Management Lecture 10. Location and Handoff Management The current point of attachment or location of a subscriber (mobile unit)
1 The Max Flow Problem. 2 Flow networks Flow networks are the problem instances of the max flow problem. A flow network is given by 1) a directed graph.
Distributed Algorithms for Secure Multipath Routing
Network Optimization Models: Maximum Flow Problems In this handout: The problem statement Solving by linear programming Augmenting path algorithm.
A Theoretical Study of Optimization Techniques Used in Registration Area Based Location Management: Models and Online Algorithms Sandeep K. S. Gupta Goran.
Introduction to Operations Research
Network Aware Resource Allocation in Distributed Clouds.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Minimum Cost Flows. 2 The Minimum Cost Flow Problem u ij = capacity of arc (i,j). c ij = unit cost of shipping flow from node i to node j on (i,j). x.
A Dynamic Data Grid Replication Strategy to Minimize the Data Missed Ming Lei, Susan Vrbsky, Xiaoyan Hong University of Alabama.
Distributed Maintenance of Cache Freshness in Opportunistic Mobile Networks Wei Gao and Guohong Cao Dept. of Computer Science and Engineering Pennsylvania.
EMIS 8374 Optimal Trees updated 25 April slide 1 Minimum Spanning Tree (MST) Input –A (simple) graph G = (V,E) –Edge cost c ij for each edge e 
Network Flow. Network flow formulation A network G = (V, E). Capacity c(u, v)  0 for edge (u, v). Assume c(u, v) = 0 if (u, v)  E. Source s and sink.
PMIT-6101 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Offering a Precision- Performance Tradeoff for Aggregation Queries over Replicated Data Paper by Chris Olston, Jennifer Widom Presented by Faizaan Kersi.
Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network You-Chiun Wang, Chun-Chi Hu, and Yu-Chee Tseng IEEE Transactions on Mobile Computing.
ENGM 631 Maximum Flow Solutions. Maximum Flow Models (Flow, Capacity) (0,3) (2,2) (5,7) (0,8) (3,6) (6,8) (3,3) (4,4) (4,10)
TU/e Algorithms (2IL15) – Lecture 8 1 MAXIMUM FLOW (part II)
SQL IMPLEMENTATION & ADMINISTRATION Indexing & Views.
Mingze Zhang, Mun Choon Chan and A. L. Ananda School of Computing
Network Flow What is a network? Flow network and flows
Authors: Jiang Xie, Ian F. Akyildiz
Maximum Flow Chapter 26.
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Maximum Flow Chapter 26.
BIPARTITE GRAPHS AND ITS APPLICATIONS
Wireless Sensor Network Architectures
Chapter 3: Wireless WANs and MANs
Lectures on Network Flows
James B. Orlin Presented by Tal Kaminker
Maximum Flow Solutions
Introduction There are many situations in which we might use replicated data Let’s look at another, different one And design a system to work well in that.
Instructor: Shengyu Zhang
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Network Flow and Connectivity in Wireless Sensor Networks
Analysis of Algorithms
Scheduling Algorithms in Broad-Band Wireless Networks
MATS Quantitative Methods Dr Huw Owens
Indexing and Hashing Basic Concepts Ordered Indices
CSE 4340/5349 Mobile Systems Engineering
3.4 Push-Relabel(Preflow-Push) Maximum Flow Alg.
PRESENTATION COMPUTER NETWORKS
Connections Johan Lukkien
(Push-relabel algorithms)
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
Capacity of Ad Hoc Networks
Fundamental Data Structures and Algorithms
Replica Placement Model: We consider objects (and don’t worry whether they contain just data or code, or both) Distinguish different processes: A process.
Algorithms (2IL15) – Lecture 7
Chapter 6 Network Flow Models.
EE5900 Advanced Embedded System For Smart Infrastructure
Max Flow / Min Cut.
離散數學 DISCRETE and COMBINATORIAL MATHEMATICS
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Text Book: Introduction to algorithms By C L R S
Youngki Kim Mobile R&D Laboratory KT, Korea
Timing Analysis and Optimization of Sequential Circuits
Fast Min-Register Retiming Through Binary Max-Flow
Towards Predictable Datacenter Networks
Presentation transcript:

Per User Profile Replication in Mobile Environments Shivakumar, Jannink and Widom Stanford University Jim Miani CIS 642

Outline Paper Abstract Introduction Objectives FIRST I’D LIKE TO BRIEFLY REVIEW SOME BASIC CONCEPTS NECESSARY LATER IN THE PAPER. FAMILIARIZE YOU WITH PAPER ABSTRACT. SPECIFY THE GOALS OF THE AUTHORS IN DEFINING THIS PROTOCOL. TALK ABOUT WHAT THE ESSENTIAL REQUIREMENTS OF THE PROJECT ARE. DISCUSS THE DETAILS OF THE PROTOCOL IMPLEMENTATION. THEN WRAP IT UP WITH A LOOK AT SOME RELATED WORK AND SOME CRITICISM OF THE PAPER Outline Paper Abstract Introduction Objectives Max-Flow Min-cost Algorithm Empirical Analysis Conclusions and Future Work Criticism/Discussion Tuesday, April 30, 2019 Jim Miani

Abstract Problem: To locate mobile users in a Personal Communication Service system. Proposal: Use a minimum-cost maximum flow algorithm to compute the set of sites at which a user profile should be replicated. Tuesday, April 30, 2019 Jim Miani

Introduction Personal Communications Service (PCS) Cells - bounded geographical areas User placing call contacts base station in same cell via wireless medium. Base station then contacts receiving PCS device. User may cross cell boundaries with PCS device. Tuesday, April 30, 2019 Jim Miani

Introduction continued … Location lookup problem: to locate users moving from cell to cell within reasonable time constraints Zones are cells or group of cells Each zone contains a database of user profiles Profile structure: <PID, ZID> PID - unique ID for PCS device ZID - zone ID for PID’s current zone Tuesday, April 30, 2019 Jim Miani

More intro ... Each PID maps to a home zone (a.k.a. Home Location Register) which always maintains up- to-date copy of user profile Suppose user A calls user B. In pure HLR scheme, the algorithm to locate B must perform a (possibly) remote lookup to HLR of B. To defray this cost, maintain VLRs. This is useful when a user tends to receive calls from the currently occupied zone. VLRs are a simple, limited replication scheme Tuesday, April 30, 2019 Jim Miani

Last bit of intro … Ideally, replicate user profiles in all zones. Naturally the ideal scenario won’t work. Basic algorithm works essentially like VLR: 1. Query database in caller’s zone. 2. If callee’s profile not found, search callee’s HLR. Assume the home location keeps track of sites possessing copies of a user’s profile. When zones are crossed, replication is initiated. Algorithm for computing additional sites at which the profile is replicated is max-flow min- cut. Tuesday, April 30, 2019 Jim Miani

Objectives 1. Select the best zones for replication user profiles based on calling and mobility patterns. 2. Adapt to changes in access patterns. 3. Choose sites for replication based on cost- benefit analysis. Tuesday, April 30, 2019 Jim Miani

Supporting Data Note that more than 70% of the calls in a week are made to the top 5 callees. Tuesday, April 30, 2019 Jim Miani

Issues In Replication Cost of maintaining consistent replicas across distributed databases every time a user moves. Use “loose” definition of replica consistency and faster method of replication. Store temporary forwarding pointers at old location to handle calls from uninformed calling zones. HLR must initiate updates every time user moves, and network must carry this traffic. Limit number of zones at which profile is replicated. Limit total number of replicas stored in a given zone to ensure fast lookup and updates. Tuesday, April 30, 2019 Jim Miani

Algorithm Parameters M is the number of zones; Zj is the jth zone where j = 1,2,…,M. pj is the maximum number of profiles serviceable by database of zone Zj. N is the number of PCS users and Pi is the ith PCS user for i = 1,2, … N. Ci,j is the expected number of calls from zone Zj to user Pi over a set time period T. Ui is the number of moves made by Pi over T. Tuesday, April 30, 2019 Jim Miani

Algorithm Parameters continued ri is the maximum number of sites at which Pi’s profile can be replicated.  is the savings achieved when a local lookup succeeds rather than a remote lookup.  is the cost of updating a profile replica. A replication is considered judicious if the cost savings due to replication exceeds the cost incurred. Thus, it is judicious to replicate Pi at Zj if  * Ci,j >  * Ui Judicious to replicate the ith user's profile in the jth zone if the savings on a local lookup times the expected number of calls to user i from zone j is greater than or equal to the cost of replication times the expected number of times user i will cross zone boundaries R(Pi) is the replication set of user Pi, the zones at which Pi’s profile is replicated according to specified algorithm Tuesday, April 30, 2019 Jim Miani

Computing the Replication Plan Construct a flow network F = (V,E) where V and E are vertices and edges in the network, respectively. Each edge has two associated attributes: (cost, capacity). 1. V <- Ø, E <- Ø 2. Add source s and sink t to V. 3. Add all Pi and Zj to V for i = 1,2, … N and j = 1,2, … M. 4. Add to E directed edges from s to all Pi with (cost, capacity) = (0, ri) and from all Zj to t with (cost, capacity) = (0, pj). 5. For every < Pi, Zj > pair, if  * Ci,j >  * Ui, then add an edge from Pi to Zj with cost, capacity = ( * Ui -  * Ci,j, 1) Tuesday, April 30, 2019 Jim Miani

Sample Flow Network PCS ZONES (0,4) (-5,1) (0,3) S T P1 P2 Z1 P3 Z2 P4 Tuesday, April 30, 2019 Jim Miani

Computing Min-Cost Max-Flow Objective: To find an assignment of profiles to databases such that the number of useful replicas is maximized and the system cost is minimized. Think of an edge (u,v) with capacity k as k virtual edges each of capacity one. An edge reversal means that one of the virtual edges from u to v is reversed so it is now (v, u). Recall that an augmenting path is a directed path along virtual edges from source to sink. Tuesday, April 30, 2019 Jim Miani

Computing Min-Cost Max-Flow Algorithm 1: Repeat the following until no more augmenting paths can be found: 1. Find the least-cost augmenting path from source s to sink t. 2. Edge-reverse each virtual edge in this path. When complete, Pi’s profile is replicated at Zj if there is a directed virtual edge from Zj to Pi. Formally, R(Pi) = {Zj | (Zj, Pi)  E} Tuesday, April 30, 2019 Jim Miani

This Algorithm Guarantees: 1. The number of replicated profiles at zones does not exceed maximum serviceable capacity of their databases. 2. The profile of a user is not replicated at more than the specified maximum number of replication sites. 3. The system savings is maximized. Cumulative Cost of Replication Plan:  I=1  j=1,ZjR(Pi) * Ui -  * Ci,j SUMMATION OVER ALL PCS i, for each zone J, of SAVINGS ACHIEVED BY REPLICATING PCS i at zone J (if done) less the cost of replicating i's profile at zone j. N M Tuesday, April 30, 2019 Jim Miani

Computing Algorithm Parameters How can we determine what the (cost, capacity) pair is for a given PCS and zone? Let  i,k = E(calls from Pi to Pk) Let i,j be the expected amount of time Pi spends in zone Zj (locational distribution). Assume  i,k and i,j are independent. Estimate number of calls for Pi from zone Zj to be: Ci,j = k=1  k,i * k,j This is the LCMR, local call to mobility ratio expected calls from Zj to Pi is the sum over all PCSs of the expected number of calls from each PCS to Pi * the expected amount of time PCS k spends in zone J N Tuesday, April 30, 2019 Jim Miani

Dynamically Altering the Replication Strategy The prior algorithm is guaranteed to determine the best replication plan given fixed calling and mobility patterns. How can we incrementally adjust the replication plan while avoiding wholesale re-computation of the replication plan? Incremental Max-Flow Tuesday, April 30, 2019 Jim Miani

Incremental Max-Flow Let F(new) denote the flow network for traffic pattern new ; likewise for old How to incrementally compute max-flow for new given max-flow min-cost for old ? When changing the flow network, you will either be adding or deleting edges from the network. Max-flow is easily maintained on insertions: add the new edge, find any augmenting path, and perform edge reversals as done before! Deleting an edge is somewhat more difficult: Tuesday, April 30, 2019 Jim Miani

Deleting an edge Consider 3 cases: 1. The deleted edge is a forward edge from Pi to Zj. 2. The delete edge is an edge from Zj to Pi. Consider two sub-cases: a) Satisfiable “Vacant Slot”: We can find an augmenting path from Pi to Zj . Reverse the edges on the augmenting path, thus compensating for the loss of one unit of flow through the deleted edge. We maintain max-flow by pushing one unit of flow from Pi to Zj . b) Unsatisfiable “Vacant Slot”: Suppose we cannot find an augmenting path. If we cannot find an augmenting path, then this is already a max-flow network. To maintain correct levels of flow all the way through the network, drop a unit of flow from source to PCS and from zone to sink. Tuesday, April 30, 2019 Jim Miani

Now make it min-cost! Adapt the cycle-canceling algorithm to find the min-cost, given max-flow. Cycle canceling algorithm: 1) Compute max-flow of network (done). 2) Repeat until no more negative cycles are found: Find negative cycles through the sink and perform edge reversals of edges in the cycle. Tuesday, April 30, 2019 Jim Miani

Additional Improvements Factor cost of moving profiles about into computation of max-cost min-flow network. Method 1: Tempered Max-Cost Min-Flow Method 2: Evolution with Mean Cycles Tuesday, April 30, 2019 Jim Miani

Empirical Results Various experimental conditions: - 5 day period - Progressively degrade accuracy of LCMR prediction - schemes are HLR/VLR, pure HLR, another caching scheme and optimal replication - Compare latencies, database and network loads Tuesday, April 30, 2019 Jim Miani

Empirical Results Optimally, compute replication plan 2x a day (morning and evening rush hour) Optimal replication provides low lookup latency (converts up to 81% of remote queries in HLR and HLR/VLR to local lookups) Replication requires 15-25% less network bandwidth than HLR or HLR/VLR schemes Tuesday, April 30, 2019 Jim Miani

Criticism/Discussion Precise and thorough Well-structured Tuesday, April 30, 2019 Jim Miani