Nomadic Service Points
E N D
Presentation Transcript
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)