Transcript Document

Capacity Allocation Paradox
Isaac Keslassy
Joint Work with Asaf Baron and Ran Ginosar
EE Department, Technion, Haifa, Israel
The Capacity Allocation Paradox
Node A
Router
CA
RA
Node C
CR
Node B
CB
RB
Finite (small) buffers
Unlimited queues
Capacity Allocation Paradox:
Adding Capacity Can Destabilize the Network
2
Marakana Soccer Stadium
UnStable
Stable
Safety Check
Brazillian Line
Enter the stadium
Fast Security Check
Argentinian Line
Fast Swipe
Ticket Entrance
Fast Security Check
Slow Security Check
3
Motivation

Small buffer networks are widely used
Network On-Chip

SpaceWire
Interconnection of
Computers
When QoS not met: add capacity [Guz et
al., ’06]
May destabilize the network
4
Previous Work: Selfish Routing

Braess’s Paradox (1968)

Difference: We assume fixed routing
5
Previous Work: Cyclic Dependency

Kumar & Seidman (1990)


Dai, Hasenbein & Vande Vate (1998)


Instability even though capacity > data rate
Adding capacity may destabilize a network
Differences:


No cycles in dependency graph
Single router




Each packet visits router only once
Several simple arbitration policies
Independent of initial conditions
New fundamental reason: Finite buffers
6
A General Phenomenon
Finite (small) buffers
Arrivals:
Periodic, Poisson…
Node A
Router
1.
2.
3.
4.
Round Robin
Exhaustive Round Robin
Strict Priority
General Processor Sharing
CA
RA
Node C
CR
Node B
CB
RB
Unlimited queues
When buffer is full:
1. Blocking: Wormhole Routing
2. Dropping (with retransmission): Store And Forward
7
Intuition
Assume A has priority:
Node A
Router
CCA=2
A=1
1 [pkt/T]
Node C
CR=2
Node B
1 [pkt/T]
CB=1
Buffer of 1 bit
Share of CR
2
(a) CA=1
1
A1
A2
A3
B1
B2
B3
T
Share of CR
3T
2T
(a)
2
(b) CA=2
1
A1
B1 (1)
T/2
T
A2
B1 (2)
3T/2
(b)
2T
A3
B2 (1)
5T/2
3T
8
What are the conditions for stability?
Necessary conditions:
Node A
CA  RA
Node C
CR  RA  RB
Node B
CB
CB  RB
Stability Regions, CR =0.273Mflits/sec
0.5
0.45
0.4
0.3
0.25
B
CR is constant
RA = RB
0.35
C [Mflit/sec]

0.2
0.15
0.1
0.05
0.05
0.1
0.15
0.2
0.25
0.3
CA [Mflit/sec]
0.35
0.4
0.45
0.5
CA
9
Stability Regions, CR =0.273Mflits/sec
Case #1: CA  CB  CR
0.5
0.45
0.4
0.35
0.25
B
Buffers in the router hold no
more than one data unit
C [Mflit/sec]

0.3
0.2
0.15
?
0.1
Queue A
0.05
Buffer A
0.05
0.1
0.15
0.2
0.25
0.3
CA [Mflit/sec]
0.35
0.4
0.45
0.5
CA
CR
Queue B
CB

Node C
Buffer B
Necessary conditions are also sufficient.
10
Example 1: Analysis Stability Picture
CR = 273[Kf/s]
(Constant)
EPRR
500
450
2
400
4
350
0
RA = R B =
100[Kf/s]
250
CB [Kf/s] C
B
[Kf/s]
300
2
3
200
150
1
100
0
50
50
100
150
200
CA [Kf/s]
250
CA [Kf/s]
300
350
400
450
500
11
Example #1 – Capacity Allocations
Analytic Stability regions, CRC =0.273Mflits/sec
0.5
0.45
0.4
2
4
3
2
0.3
0.25
C
BR
[Mflit/sec]
0.35
0.2
0.1
Case #3
#2
#1
UnStable
Stable
1
0.15
0.05
0.05
0.1
0.15
0.2
0.25
0.3
CAR [Mflit/sec]
0.35
0.4
0.45
0.5
Node A
CA=190
=300
=110
RA = 100
Node C
CR=273
Node B
RB = 100
CB=150
=110
1000 [flits/pckt]
Buffer Size: 16 Flits
Exhaustive Round Robin, Wormhole
12
Results – Simulation Stability Regions
C = 273[Kf/s] (Constant)
Analytic+Simulation Stability regions for CR =0.273Mf/s
R
325
4
2
300
275
RA = R B =
100[Kf/s]
225
3
B
C [Kf/s]
250
200
2
175
150
125
1
125
150
175
200
225
CA [Kf/s]
250
275
300
325
13
Example #2 – Wormhole Routing
GPS
GPS
Round-Robin
RRPF
500
450
450
450
400
400
400
350
350
350
300
B
300
B
300
C [Kf/s]
500
C [Kf/s]
500
B
C [Kf/s]
ExhaustiveEPRR
Round Robin
250
250
250
200
200
200
150
150
150
550
600
CA [Kf/s]
650
700
550
600
CA [Kf/s]
650
700
550
600
CA [Kf/s]
650
700
1000 [flits/pckt], Buffer Size: 16 Flits, RA = 500kf/s, RB = 100kf/s
14
Example #3 – Store and forward
Exhastive, CRC=2.1Mbit/sec
Exhaustive
RR, CR = 2.1[Mbit/s]
2.5
2.25
2.25
2
2
[Mbit/sec]
2.5
1.75
1.75
C
C
BR
BR
[Mbit/sec]
Priority, CRC=2.1Mbit/sec
Strict Priority,
CR = 2.1[Mbit/s]
1.5
1.5
1.25
1.25
1.25
1.5
1.75
2
CAR [Mbit/sec]
(a)
2.25
2.5
1.25
1.5
1.75
2
CAR [Mbit/sec]
2.25
2.5
(b)
Poisson Arrivals with Parameters: lA = 100, lB = 100
Packet Length 10^4 bit
Buffer Size 3-4 packets
15
Example #3 – Store and forward
C =6.1Mbit/sec
RR, Round-Robin,
CR = 6.1[Mbit/s]
ExhaustiveExhastive,
RR,C C=6.1Mbit/sec
R = 6.1[Mbit/s]
RC
RC
3
2.5
2.5
[Mbit/sec]
3
BR
C
BR
C
All packets
need to arrive
sometime
3.5
[Mbit/sec]
Poisson Arrivals:
lA = 500
lB = 100
Packet = 10^4 bit
Buffer 3 packets
3.5
2
2
1.5
1.5
5.25
5.5
5.75
6
CAR [Mbit/sec]
(c)
6.25
6.5
5.25
5.5
5.75
6
CAR [Mbit/sec]
6.25
6.5
(d)
16
Summary



Adding capacity may destabilize even a
simple network
The scheduling algorithm affects the
stability of the network (even if workconserving)
GPS arbitration: always stable
17
Thank you.
18