1 staleness vs.waiting time in universal discrete broadcast michael langberg california institute of...
Post on 19-Dec-2015
218 views
TRANSCRIPT
1
Staleness vs.Waiting Staleness vs.Waiting timetime
ininUniversal Discrete Universal Discrete
BroadcastBroadcastMichael LangbergMichael Langberg
California Institute of TechnologyCalifornia Institute of Technology
Joint work with Jehoshua Bruck and Alex SprintsonJoint work with Jehoshua Bruck and Alex Sprintson
2
Broadcast channelBroadcast channel
•ServerServer•Proactively Proactively transmits data to clients.transmits data to clients.
•e.g., stock quotes, weather, traffic.e.g., stock quotes, weather, traffic.
•ClientsClients•PassivePassive (“listen-only”). (“listen-only”).
•Listen to a channel only when need data.Listen to a channel only when need data.
3
FrameworkFramework
•SingleSingle information source. information source.
•Distribute highly dynamic data.Distribute highly dynamic data.
•E.g., stock market.E.g., stock market.
•The data is sent in unit sized packets.The data is sent in unit sized packets.
21 3 4 5 6 7
time
4
ModelModel
•The server:The server:•Gathers the data. Gathers the data.
•Encapsulates it into packets of unit length. Encapsulates it into packets of unit length.
•Sends the packets over the channel.Sends the packets over the channel.
•The client:The client:•Must listen to entire packet to receive information.Must listen to entire packet to receive information.
•Q:Q: How should server schedule packets? How should server schedule packets?
Client request
21 3 4 5 6 7
timeRequest satisfied
5
Naïve approachNaïve approach
Transmit data every time unit.Transmit data every time unit.
•Schedule quality:Schedule quality:
•Delay (Delay (DD) - the time elapsed between a ) - the time elapsed between a request and the beginning of the next request and the beginning of the next transmission.transmission.
21 3 5 6 7
0 requestt
4
D>0
request
D=0
6
ObjectiveObjective
•Goal:Goal: Design a schedule with “low” delay ( Design a schedule with “low” delay (DD).).
•Typical assumptionTypical assumption (e.g. [Ammar87], [VaidyaHameed96,97], (e.g. [Ammar87], [VaidyaHameed96,97],
[Bar-Noy NaorSchieber03,+Bhatia98], [KenyonSchabanelYoung03]):[Bar-Noy NaorSchieber03,+Bhatia98], [KenyonSchabanelYoung03]):
•Uniform distribution of clients requests.Uniform distribution of clients requests.
•Uniform distribution: in expectation Uniform distribution: in expectation D=1/2D=1/2..
21 3 4 5 6 7
We study universal schedules that guarantee
low delay for any client, regardless of its behavior (studied in [LSprintsonBruck04])[LSprintsonBruck04]).
7
21 3 4 5 6 7
Universal schedulesUniversal schedules
•Goal:Goal: Design a ( Design a (universaluniversal) schedule.) schedule.
•The delay is small for The delay is small for anyany client behavior. client behavior.
•Model:Model: game against an adversary. game against an adversary.
•Minimize the Minimize the worst caseworst case delay. delay.
D~1 D~1/2D~0
8
Universal schedulesUniversal schedules
21 3 4 5 6 7
D~1
•Naïve schedule: worst case delay is arbitrary close to 1.
•This is the case for any deterministic schedule.Would like: design schedule with delay strictly less than 1.
Introduce redundancy & randomness.
9
Redundancy: encodingRedundancy: encoding
•Instead of sending packet of unit length – send Instead of sending packet of unit length – send
redundant packets (length ≥ unit).redundant packets (length ≥ unit).
•Listening to any Listening to any unitunit portion of packet reveals info. portion of packet reveals info.
21 3 4 5 6 7
1 3 4 …
…
D~1
D=0
Encoding = cyclic permutation
Old:
New: 2
unit
10
Redundancy: encodingRedundancy: encoding
•Properties:Properties: worst case delay still ~ 1! worst case delay still ~ 1!
•Need to add randomness.Need to add randomness.
21 3 4 5 6 7
1 3 4 …
…
D~1
Old:
New: 2
less than one unit
11
Randomness + Randomness + redundancyredundancy
•Each packet will have different (Each packet will have different (randomrandom) length.) length.
•Distribution over schedules.Distribution over schedules.
•Adversary cannot place Adversary cannot place “bad”“bad” queries. queries.
21 3 4 5 6 7
1 3 4 …
…
D~?
Old:
New: 2
12
New objectiveNew objective
•Once we introduce randomness: Once we introduce randomness: newnew objective. objective.
•Expected delay: Expected delay: expectedexpected time “wasted” by client time “wasted” by client
until receiving full unit of information. until receiving full unit of information.
•ExpectationExpectation over distribution of schedules.over distribution of schedules.
•Schedule quality:Schedule quality: worst case expected delay.worst case expected delay.
1 3 4 …
D~?
New: 2
13
Schedule quality: Schedule quality: exampleexample•Packet length ~ Packet length ~ U[1,2]U[1,2]..
•Quality:Quality: what is worst case client request time what is worst case client request time tt??
•We assume history up to time We assume history up to time tt is known. is known.
•AdaptiveAdaptive adversary. adversary.
•Can prove:Can prove: expected delay ≤ expected delay ≤ ½½..
•Worst case expected delay = Worst case expected delay = ½!½!
3 4 …2
0 t
1
14
Can one do better?Can one do better?
•Broadcast single package over time.Broadcast single package over time.
•For any For any tt: delay = 0!: delay = 0!
•ProblemProblem:: information received is not information received is not “fresh”“fresh”..
•New Objective:New Objective:
•Small delay.Small delay.
•Fresh information.Fresh information.
…
0 t
1
unit
15
StalenessStaleness
•Definition: Definition: Staleness (Staleness (SS): time elapsed between the ): time elapsed between the
moment the information is sampled (by server) and the moment the information is sampled (by server) and the
moment the information is received by the client.moment the information is received by the client.
•Objective:Objective: find schedules with small find schedules with small delaydelay and and stalenessstaleness..
•Analyze relation between Analyze relation between delaydelay and and stalenessstaleness..
3 4 …2
t
1
S
16
Previous example with Previous example with stalenessstaleness•Packet length ~ Packet length ~ U[1,2]U[1,2], consider query at time , consider query at time tt..
•Seen:Seen: expected delay ≤ expected delay ≤ ½½..
•Can show: Can show: expected stalenessexpected staleness ≤ ≤ ¼¼..
•This example: This example: worst case worst case (S,D)(S,D) of of (¼,½)(¼,½)..
•One package:One package: worst case worst case (S,D)(S,D) of of ((,0),0)..
•Naïve schedule:Naïve schedule: worst case worst case (S,D)(S,D) of of (0,1)(0,1)..
3 4 …2
0 t
1
17
Our resultsOur results
•Formalize Formalize universal (adaptive adversarial) analysis universal (adaptive adversarial) analysis
of broadcast schedules: delay, staleness.of broadcast schedules: delay, staleness.
•Observe a Observe a tradeofftradeoff between worst case expected between worst case expected
delay and worst case expected staleness.delay and worst case expected staleness.
•Analyze this tradeoff – present Analyze this tradeoff – present tighttight upper lower upper lower
bounds.bounds.
•Observe a nice Observe a nice “knee”“knee” property: property:
Single schedule:Single schedule: low delay with low staleness. low delay with low staleness.
18
Review: goalReview: goal
•Design Design randomrandom schedule (distribution over schedule (distribution over schedules).schedules).
•Randomness introduces Randomness introduces redundantredundant packets. packets.
•Schedule has worst case delay Schedule has worst case delay DD, and staleness , and staleness SS::
•The worst case expected delay is The worst case expected delay is DD..
•The worst case expected staleness is The worst case expected staleness is SS..
•Expectation is over Expectation is over server’sserver’s coins only (no coins only (no distribution is assumed on client requests). distribution is assumed on client requests).
3 4 …2
0 t
1
19
TradeoffTradeoff•Plot of achievable Plot of achievable (S,D)(S,D) schedules. schedules.
•Represents both Represents both lowerlower and and upperupper bounds. bounds.•Observe “Observe “kneeknee” point.” point.
0.8
0.6
0.4
0.2
0 0 0.5 1 1.5
Staleness
Dela
y
20
Proof techniquesProof techniques
•Both upper and lower bounds are obtained (up to Both upper and lower bounds are obtained (up to
arbitrary precision) by the solution of a certain arbitrary precision) by the solution of a certain
LPLP. .
•For each value of staleness For each value of staleness SS::
•Positive:Positive: present schedules with low delay. present schedules with low delay.
•Negative:Negative: prove that one cannot do better. prove that one cannot do better.
•Can obtain “closed form” schedules (optimal for a Can obtain “closed form” schedules (optimal for a
certain range of staleness values certain range of staleness values ss).).
21
ConclusionConclusion
•Considered broadcasting of discrete items.Considered broadcasting of discrete items.
•Study the notions of Study the notions of delaydelay and and stalenessstaleness..
•Focused on Focused on worstworst casecase (universal) analysis. (universal) analysis.
•Observed a fundamental trade-off: delay vs. staleness.Observed a fundamental trade-off: delay vs. staleness.
•Established tight lower + upper bounds.Established tight lower + upper bounds.
•Identified “knee”.Identified “knee”.
•Future research:Future research:
•Errors.Errors.
•Multiple items.Multiple items.