View
218
Download
1
Tags:
Embed Size (px)
Citation preview
Motivation
• Current networks are mostly packet-based (Internet)
• QoS guarantees essential to most network applications
• Steady traffic increase + constant fluctuation lead to packet loss
• Objective: transmit “valuable” packets
Single queue switch
4
7
9B
• FIFO queue with bounded capacity (B)
• Packets marked with values
• One packet transmitted each time step
• Objective: maximize total transmitted value
Greedy single queue admission control (preemptive)
Algorithm G
Accept packets greedily. Packet accepted if:
• Queue not full
-or-
• Packet with smallest value discarded from queue
Online Greedy is not optimal
…
…
t = 1
B
ε
ε
ε
ε
ε
ε
ε
B
ε
ε
ε
ε
ε
ε
ε
εεεε
ε
ε
εεε
ε
1
1
t = 2
1
1
ε
ε ε1
1
t = 3
1
1
1
1
ε
ε1 1
1
Same goes on…t=B+2
…
…
ε
1
1 1 1 1
B1
1
1
1
B1
1
1
1
1111
No more packets arrive
1
1
1
1 …
…
B
2B
G
Opt
Single queue – results
• Upper bound:
– [KLMPSS '01] – Greedy is 2-competitive
– [KMvS '03] – 1.98-competitive
– [BFKMSS '04] – 1.75-competitive
• Lower bound:
– [AMZ ’03] – 1.41
Multi-Queue QoS switch
• m bounded capacity FIFO queues
• Single output port, one packet transmitted each time step
• Objective: maximize total transmitted value
…
…
…
…
…
B
m
3
1
4
9
7
Multi-queue switch - results
• Arbitrary values:– [AR '03] – 4-competitive algorithm– [AR '04] – 3-competitive algorithm
• Unit value:– [AR '03] – deterministic 2-competitive
randomized 1.58-competitive
– [AS '04] – deterministic 1.89 – [AL '04] - deterministic 1.58 ( )
mB
Special case – unit packets
• Model remains the same• All packets have equal (unit) value• Goal: maximize number of transmitted
packets• Motivation: IP networks• Better algorithms for this case
B
m
1
1
1
1 1
Lower bound for unit-value
• B=1• Packet arrives to each queue• As long as ON has at least two full
queues:– ON empties some queue– Adversary empties queue not used by
ON– New packet arrives to this queue
Lower bound - construction t=1
X 2
X 2
t=2t=3
X 3
X 3
t=4
X 4
X 4
t=7
X 7
No more packetsarrive
ON
OPT
Getting below 2-competitive
• “Any” algorithm is 2-competitive• Randomized 1.58-compeititve (AR ‘03)• (Albers+Schmidt ’04):
– Any Greedy is at least 2-competitive– First deterministic 1.89
• Deterministic 1.58 (large buffers) (AL ’04)
AS0. Partition into busy periods1. If load(max_queue) > B/2 – use
max_queue2. Otherwise, if there are queues that were
never full – use max_queue among them3. Otherwise, use max_queue
Multi-Queue QoS switch
• m bounded capacity FIFO queues
• Single output port, one packet transmitted each time step
• Objective: maximize total transmitted value
…
…
…
…
…
B
m
3
1
4
9
7
4-competitive upper bound
• Based on reduction to single-queue
• Generic Scheme: (A+Richter ’03)
Single queue admission control
Multi-queuescheduling
+ admission control
C-competitive 2C-competitive
Model Relaxation
• Relaxation: – packets can be transmitted in any order,
not only FIFO– preemption allowed
• Optimal solution remains unchanged
• Relaxation adds considerable strength to online algorithms
Relaxed model – algorithm Relax
Algorithm Relax
• Admission control: Greedy algorithm (G) in each queue (optimal non-fifo)
• Scheduling: Transmit packet with largest value in all queues
t = 4t = 3
Relax demonstration
1 9
7
24 24
91
7
9
7
9
t = 1t = 2
3
9
7 1 17
9
3
9
9
7
7
9 9
9
9
t = 5
7
7
t = 8
4 3 1
Generic Scheme
Algorithm M(A)(A – admission control for single queue)
• Maintain online simulation of Relax
• Admission control: according to A
• Scheduling: according to Relax
M(G) - demonstration
Relax simulation
9
4
3
4
39
t = 1
3
39
9
4
4
93
t = 27
9 7
9
7 9
79
99
9
t = 3
8
8
8
88
48
t = 4
7
9
t = 5
4
8
Algorithm Relax - analysis
Theorem 1: Relax is 2-competitive in relaxed model.Proof:
• Relies on potential function
• Based on minimum weighted perfect matching in a graph that measures the distance between the values on Relax and OPT
Algorithm M(A) - analysis
Theorem 2: CM(A) ≤ CRelax∙CA = 2∙CA
Proof:• Relax is 2-competitive
• In each queue we lose a factor of CA
compared to non-fifo, by transforming the input sequence
Corollaries
• Preemptive: 4-competitive (using KLMPSS ’01)
• Unit-value: 2-competitive
• 2-values, preemptive: 2.6-comp. (using LP ’02)
• Non-preemptive: 2e∙ln(max / min)-competitive
(using AMZ ’03)
Zero-One Principle (A+Richter ’04)• Analysis of packets with arbitrary values is
complicated
• Goal: reduce to “simpler” sequences
• Zero-one principle:
Comparison-based algorithm (given a network)
Sufficient to analyze 0/1 sequences (with arbitrary tie breaking)
Comparison-based algorithms
Informally, A is comparison-based if decisions
made based on relative order between values
Notation: • A(σ) – possible output sequences, ties
broken in every possible way
• V(σ) – total value of sequence
Zero-one principle
Theorem:
Let A be comparison-based (deterministicor randomized).A achieves c-approximation if and only if A achieves c-approximation with respectto all 0/1 sequences, for all possible tie
breaking
Zero-one principle - proof
1 x ≥ t Define: ft(x) =
0 otherwise
1 5 9 4 33
0 1 1 1 11
0 0 1 0 00
σ:
f3(σ):
f6(σ):
Proof – continued
Claim1: Sequence can be broken into sumof 0/1 sequences using ft:
Claim 2: For comparison-based A, sequenceσ, and t ≥ 0 :
)))((()))((( tt fAVAfV
0
))(()(t
t dtfVV
Putting it all together:
)))((( tfAV )))((( tfOptVc
1
0t
0t
dt dt
0
)))(((t
t dtAfV ))(( AV
0
)))(((1
t
t dtOptfVc
))((1 OptVc
)(tf - 0/1 sequence
Claim 2Claim 1
Claim 1
Application 1
B
m
Algorithm TLH
• Admission control: greedy, independently in each queue
• Scheduling: Transmit packet with largest value among all packets at head of queues
0/1 principle -> TLH is 3-competitive
CIOQ switch
.
.
.
.
.
.
. .
. .
. .
1 1
NN
• N×N switch• Virtual output queues at input ports• Speedup S• Objective: maximize total transmitted value
Results
• General CIOQ switch: – arbitrary packet values– Any speedup
• (Kesselman+Rosen ’03):– Linear in speedup-or- – Logarithmic in value range
• (A+Richter ’04): – constant-competitive algorithm
Dynamic Routing
• All models can be generalized to networks, with switches at the nodes– Line topology– Cycles– Trees– General networks
• With / without routing decisions
Example (line)
• Dynamic Routing on a line of length k
0/1 principle -> simple alg. is (k+1)-comp.
• Greedy is at least k0.5-competitive (AKOR ’03)
Example (tree)
• Merging trees (KLMP ’03)
Summary
• Single queue
• Multiple queues
• Multiple queues – unit packets
• Zero-One principle
• CIOQ switch
• Networks (e.g. line, tree)