270 likes | 276 Views
Nomadic Service Points. Edward Bortnikov Israel Cidon Idit Keidar. Distributed Service Grids. Paradigm shift in networked service infrastructures Geographically distributed servers instead of centralized server farms Performance benefits Localized service provisioning
E N D
Nomadic Service Points Edward Bortnikov Israel Cidon Idit Keidar
Distributed Service Grids • Paradigm shift in networked service infrastructures • Geographically distributed servers instead of centralized server farms • Performance benefits • Localized service provisioning • Adaptation to changes (e.g., user mobility) • Technologies in the field • Content delivery networks (CDN), wireless access (mesh) networks (WMN), online gaming grids
Nomadic Service Points • Abstraction of session attachment to service • Application is unaware of physical server assignment • Implemented by service infrastructure • A single physical server is selected for the session • A session can be migrated to sustain QoS • Example: session mobility following host mobility • Optimization challenges: • When to transition from an old server? • Which server to select next?
Wireless Mesh Networks • Tradeoff: suboptimal delay versusservice interruption
Distributed Groupware Service • Tradeoff: suboptimal delay versusstate transfer
Model • Hold cost • Paid each time slot to the currently assigned server • A server can update its hold cost on slot boundary • Setup cost (C) • Paid every time the session is (re-)assigned • Total cost = setup + hold • Goal: finding the assignment schedule • … that minimizes the total costover time
Formal Approach • Online optimization goal: competitive ratio • Worst-case ratio versus the offline algorithm • Notation: • k: number of servers • I: problem input (sequence of hold cost vectors) • σ: schedule produced by the online algorithm • σ*: schedule produced by the optimal (offline) algorithm • Algorithm ALG is r(ALG) competitive iff for every finite I,
Summary of Results • Theoretical • A lower bound of k on deterministic online algorithms • A 2k-competitive online algorithm DTrack-RR • Optimal offline solution in linear time and space • Practical • Opportunistic versions of DTrack • Empirically verified through simulation • Average performance within 20%-50% from the optimum • Perfect scalability with network growth • Motion prediction helps a lot • Performance gap below 10% with a small look-ahead window
The DTrack Algorithm • DTrack = deficit tracker • Initially, assign to server s with minimal hold cost • Every time slot do: • Update the deficit between s and the other servers • How much less would I have paid if I transitioned to s’ at some time after transitioning to s? • Single-slot lookahead • When deficit between s and some s’ is about to become “big enough” (above αC) • Transition to a new server
Transition Policies • Round-Robin DTrack-RR • Cyclic space of server ids • The a-priori deficit of the choice must not exceed αC (α ≥ 0) • Forward opportunistic DTrack-F • Minimal current hold cost • Backward opportunistic DTrack-B • Round-robin between servers with “big enough” deficit values (exceeding βC, -∞ < β ≤ α) • β = α is most aggressive • Picks the server with largest deficit
current leader other Execution of DTrack hold deficit setup = 5 α = 1 t=0
current leader other Execution of DTrack hold deficit setup = 5 α = 1 t=1
current leader other Execution of DTrack hold deficit setup = 5 α = 1 t=2
current leader other Execution of DTrack hold Transition! deficit setup = 5 α = 1 t=3
current leader other Execution of DTrack hold deficit setup = 5 α = 1 DTrack-RR
current leader other Execution of DTrack hold deficit setup = 5 α = 1 β= 0 DTrack-B
current leader other Execution of DTrack hold deficit setup = 5 α = 1 DTrack-F
Efficiency Improvement • CTrack = cost tracker • Track accumulated cost instead of deficit • Transition if hold cost exceeds αC • Apply the same transition policies • Advantage: reduced complexity • O(1) at each step instead of O(n) • Disadvantage: weaker competitive ratio • (2+a)k, where hold(s,t) ≤ αC for each s
Negative Results • No deterministic algorithm can be better than k-competitive • Hence, DTrack-RR is at most twice the lower bound! • Neither DTrack-F nor aggressive DTrack-B are competitive • An Ω(C) lower bound • What do we care for in real life? • The average performance ratio • Luckily, we have an optimal algorithm as a baseline
WMN: Average Total Cost • Hold cost = Distance • RWP movement • Area = 1km x 1km • 100 routers • Scaling up by 25 • Speed = 10 m/sec • Setup cost = 50
WMN: Average Performance Ratio • Hold cost = Distance • RWP movement • Area = 1km x 1km • 100 routers • Scaling up by 25 • Speed = 10 m/sec • Setup cost = 50
Motion Aware Algorithms • TargetAware • Requires info on the node’s target + speed • Applies OPT as a subroutine • DirectionAware • Requires info on the node’s direction + speed • Applies TargetAware as a subroutine
WMN: Motion Aware Algorithms • Hold cost = Distance • RWP movement • Area = 1km x 1km • 100 routers • Scaling up by 25 • Speed = 10 m/sec • Setup cost = 50
Wide-Area Chatroom • Static users • Poisson arrivals • 3 users • 100 servers • Scaling up by 25x25
DTrack-RR is 2k-Competitive • Overtake = leave or skip the server • Consider σ (by DTrack-RR) and σ* (by OPT) • Round = period in which σ* does not move • Phase = part of round where σ overtakes every server
DTrack-RR is 2k-Competitive (cont’d) • Competitive analysis within a round • Lookahead accounting is crucial! • Hold cost bookkeeping • σovertakes σ*’s choice every phase • The hold cost incurred byσ* is at least αC • The hold cost incurred by σexceeds it by at most (k-1)αC • Setup cost bookkeeping • σ* pays at least C (initial assignment) • σpays at most kC every phase • Summing up and bounding the ratio • α=1 minimizes the upper bound (2k)