Date post: | 20-Dec-2015 |
Category: |
Documents |
View: | 218 times |
Download: | 1 times |
Competitive Buffer Management with Packet Dependencies
Alex Kesselman, GoogleBoaz Patt-Shamir, Tel Aviv University
Gabriel Scalosub, University of Toronto
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
2
Motivation: Video Streaming
• Smart encoding:– Suffices to recover many
• Every video frame is fragmented into packets• Restoration depends on recovering all packets• If packets are lost:– Affects other packets as well (become redundant)– Streaming: retransmission is not an option
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
3
Buffering Schematics
buffer management
incoming packets
outgoingstream
dropped packets
finite linkspeed (“drain rate”)
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
4
Buffer Model
• Single FIFO queue of size • Discrete time:– Delivery substep
• One packet delivered from head of queue
– Arrival substep• Packets arrive• Some packets may be dropped• Packets accommodated in the buffer
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
5
Traffic and Goal
• Traffic: frames consist of packets
– E.g.
• Goal: Maximize number of whole frames delivered
• Methodology: Competitive analysis– Algorithm is -competitive if for every arrival
sequence
frame ‘s j-packet
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
6
Previous Work
• Buffer management for QoS– Multi-valued packets– Constant competitive ratio for
finite values
• Some results for multiple buffers
• No results for co-dependent packets!
[Kesselman et al., 2001],[Englert & Westerman, 2006],
and many more
[Mansour et al., 2000],
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
7
Our Results
• Frames consisting of k>1 parts
• Bad news: No finite competitive ratio in general
• Good news: If frame parts are consistently ordered– There exists an algorithm with c.r. – All deterministic algorithms have c.r.
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
8
Preliminaries
• Offline– Closely related to k-DM (as hard)– Simple greedy algorithm is a (k+1)-approximation
• Online (arbitrary traffic)– Not much you can do
…
time
OPT
ALG
…
packetsALG
OPT
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
9
Restricted Traffic
• Problem:– Selective unbounded delay/burstiness
• Model requirement (solution):– Both ALG and OPT have to deal with same delay/burstiness
• Order-respecting traffic:– Frame order induced by j-packets is the same for every j
• OK: 2.1 (frame 2, part 1), 3.1, 2.2, 3.2• Not OK: 3.1, 2.1, 2.2, 3.2
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
10
All Is Well if Order-Respecting?
• Answer: Yes and No
• No:– Any deterministic algorithm has competitive ratio at least
• Yes:– A natural preemptive greedy approach– Conservative non-preemptive approaches
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
11
Greedy Algorithm (GA)
• Consider k=2
At every time t where overflow occurs, keep packets according to the following priority:
1. 2-packets whose 1-packets were delivered2. Complete frames (both 1-packets and 2-packets)3. Remaining 1-packets
• Theorem: GA is constant-competitive for k=2
• What if k>3?
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
12
Greedy Algorithm for k=3
GA
OPT
time
OPT
ALG
… ……
…
1-packets
2-packets
3-packets
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
13
Static-Partitioning Algorithm (SPA)
• Intuition– Think ahead: focus on admission control– Virtually partition the buffer into k levels of size
• Buffer is still FIFO!!
– Level j only holds j-packets– Level j accepts j-packets that are “evenly” spaced in time
• Alternating accept/reject periods
– Levels synchronize on frame index• Ensures delivered packets correspond to the same frame
• Extra perk: non-preemptive
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
14
Example: SPA for k=2
• Consider level 1, i.e., 1-packets
• 1-sync frame indices:• Accepts first 1-packets after every 1-sync– Specifically, has sufficient buffer space
time
Accept packetsWait time unitsAccept packetsWait time units
is the first 1-packet arriving after reject period is the first 1-packet arriving after reject period
A R RA
is the first 1-packet
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
15
Example: SPA for k=2
• Consider level 2, i.e., 2-packets
• 2-sync indices 1-sync indices• Accepts first 2-packets after every 2-sync– Specifically, has sufficient buffer space
time
Accept packetsWait time units
A R
is the first 2-packet
Accept packetsWait time units
A R
is the first 2-packet of a 1-sync arriving after reject period is the first 2-packet of a 1-sync arriving after reject period
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
16
Analysis of SPA for arbitrary k
• Consider two consecutive k-syncs :
– SPA delivers out of frames
– OPT delivers at most out of frames
• Intuition: at most out of every level
• Theorem: SPA is -competitive
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
17
Summary
• A new model in buffer management– Traffic has inter-packet dependencies
• Highly applicable to, e.g., video streaming
• First analytic results (still a lot to discover…)– Competitive algorithms (and lower bounds)– Complexity
Dagstuhl 2009 Competitive Buffer Management with Packet Dependencies
18
Still Open
• Gap: vs.
• Randomization– Useful in the packet-weights models
• How does it work for real traffic?– Is greedy still an option?
• Using forward-error-correction (FEC)– Suffices to deliver m-of-k– Some preliminary results, but still a lot to discover
• High-order dependencies
Thank You!