Upload
truongminh
View
217
Download
1
Embed Size (px)
Citation preview
Raj JainThe Ohio State University
1
97-1086R1: Per-VC Rate97-1086R1: Per-VC RateAllocation TechniquesAllocation TechniquesFor ABR Feedback inFor ABR Feedback in
VS/VD NetworksVS/VD Networks
Rohit Goyal, Xiangrong Cai, Raj Jain, Sonia Fahmy,Bobby Vandalore
The Ohio State University
Contact: [email protected]
http://www.cis.ohio-state.edu/~jain/
Raj JainThe Ohio State University
2
Virtual Source / VirtualVirtual Source / VirtualDestination (VS / VD)Destination (VS / VD)
q Segments the end-to-end ABR control loop.
q Coupling between loops is implementation specific.
q VS/VD can help in buffer management across thenetwork.
q ABR switches separated by non-ATM networkcould also implement VS/VD.
Raj JainThe Ohio State University
3
GoalsGoalsq Describe a VS/VD switch architecture.
q Discuss issues in designing rate
allocation schemes for VS/VD switches.
q Present a per-VC rate allocation scheme for VS/VD.
q Discuss how VS/VD can help in buffer managementacross the network.
Raj JainThe Ohio State University
4
VS/VD SwitchVS/VD SwitchArchitectureArchitecture
SwitchingFabric
Data flowRM cell flow
Class Queue
Per-VC Queues
Per-VCScheduling
Port 1 Port 2
Otherports
Otherports
Raj JainThe Ohio State University
5
VS/VD SwitchVS/VD SwitchArchitectureArchitecture
q Each switch port :m Class queue for each service category.(optional)m Per-VC queues drain into class queue or link
q When a cell is received :m Data cell : forwarded to destination port (VS).m FRM cell : turned around as BRM (VD).m BRM cell : ER is noted (VS).
q VS sends data + FRM cells at ACR to class queue.q A scheduler services the per-VC queues.
Raj JainThe Ohio State University
6
A Simple VS/VD ModelA Simple VS/VD Model
Node i Ri
sijrij
ERijexternalERij
internalERijfeedback
qiqij
q Internal Service Rate = f(External/DownstreamFeedback, Local congestion)
q Local Congestion = f(Qi); Qi = qi + Σ qij
q Upstream feedback = Internal service rate
q Example: Downstream = 100 Mbps,Internal =90 Mbps = Upstream Feedback
Raj JainThe Ohio State University
7
Simple VS/VD ModelSimple VS/VD Model
q Desired input rate to class queue is also fed back tothe upstream switch.
q Problem:
m Transient per-VC queues cannot drain.Input rate sij = Output rate rij
m Queues that build up during open loop phase do notdrain.
Raj JainThe Ohio State University
8
Ri
sij
rij
ERijexternalERij
internalERijfeedback
qi
qij
Correct VS/VD ModelCorrect VS/VD Model
q Internal Service Rate = f(External/DownstreamFeedback, Switch algorithm using qi)
q ACRij = f(Internal service rate, end system rules)
q Upstream feedback =f(qij)ACRij
q Example: Downstream = 100, Service =90, ACR=80,Upstream feedback=70 Mbps
Raj JainThe Ohio State University
9
Per-VC ERICA+Per-VC ERICA+q BRM received :
m ERijexternal := ER in RM cell
q FRM received :
m ER in RM := ERijfeedback
q At the end of each averaging interval :
m ERijinternal
:= Min{ Max (rij/Overload, g(qi)Ri/N), ERijexternal}
m Output rateACRij = rij := fn{ERij
internal, end system rules}
m ERijfeedback := g(qij)rij
Raj JainThe Ohio State University
10
Simulation ModelSimulation Model
Switch 1
Switch 2
Switch 3
D1
D5
S1
S5
275 or 50 ms 5 ms 5 µs5 ms
45 Mbps155 Mbps155 Mbps 155 Mbps
Link 2Link 1
VS/VD Loops
Raj JainThe Ohio State University
11
ParametersParametersq VS/VD and Non-VS/VD configurations.
q First hop = Satellite hop with 1 way delay:
m LEO = 50 ms
m GEO = 275 ms
q Link 2 = 45 Mbps (Bottleneck Link).
q All other links = 155.52 Mbps (149.76 with SONET)
q Persistent ABR sources: ICR = 30 Mbps
q Persistent TCP sources: Timer granularity = 500 ms.At 45 Mbps, 100 ms causes timeouts in GEO.Known problem with TCP Std deviation measurement.
Raj JainThe Ohio State University
12
ERICA+ Non-VS/VDERICA+ Non-VS/VDLEOLEO
Raj JainThe Ohio State University
13
0
5000
10000
15000
20000
25000
30000
35000
0 10002000
30004000
50006000
70008000
900010000
Qu
eue L
eng
th
Time in milliseconds
Five ABR : SW2 Queue Length
120 ms × 100 Mbps = 19 k cells⇒ Q < 3 RTT
ERICA+ Non-VS/VDERICA+ Non-VS/VDLEOLEO
Raj JainThe Ohio State University
14
ERICA+ Non-VS/VDERICA+ Non-VS/VDGEOGEO
Raj JainThe Ohio State University
15
ERICA+ Non-VS/VDERICA+ Non-VS/VDGEOGEO
0
20000
40000
60000
80000
100000
120000
140000
160000
0 10002000
30004000
50006000
70008000
900010000
Qu
eue L
eng
th
Time in milliseconds
Five ABR : SW2 Queue Length
570 ms × 100 Mbps = 134 kCells⇒ Q < 3 RTT
Raj JainThe Ohio State University
16
0
20000
40000
60000
80000
100000
120000
140000
160000
0 10002000
30004000
50006000
70008000
900010000
Qu
eue L
eng
th
Time in milliseconds
Five ABR : SW1 Queue Length
Queues move from bottleneck hop to non-bottleneck hop but do not come down.
ERICA w/ Simple VS/VDERICA w/ Simple VS/VD
Raj JainThe Ohio State University
17
0
500
1000
1500
2000
2500
3000
0 10002000
30004000
50006000
7000
8000
9000
10000
Qu
eue L
eng
th
Time in milliseconds
10 ms × 100 Mbps = 2.4 kCellsQ = Previous loop delay
ERICA w/ Simple VS/VDERICA w/ Simple VS/VDSw2 Queue
Raj JainThe Ohio State University
18
ERICA+ VS/VD LEOERICA+ VS/VD LEO
0
5000
10000
15000
20000
25000
30000
35000
0 10002000
30004000
50006000
70008000
900010000
Qu
eue L
eng
th
Time in milliseconds
Five ABR VS/VD : SW1 Queue Length
100 ms × 100 Mbps = 24 kCellsQ ≈ Previous loop delay
Raj JainThe Ohio State University
19
ERICA+ VS/VD LEOERICA+ VS/VD LEO
0
500
1000
1500
2000
2500
3000
0 10002000
30004000
50006000
70008000
900010000
Qu
eue L
eng
th
Time in milliseconds
Five ABR VS/VD : SW2 Queue Length
10 ms × 100 Mbps = 2.4 kCellsQ ≈ Previous loop delay
Raj JainThe Ohio State University
20
VS/VD GEO Sw1 QueueVS/VD GEO Sw1 Queue
0
20000
40000
60000
80000
100000
120000
140000
160000
0 10002000
30004000
50006000
70008000
900010000
Qu
eue L
eng
th
Time in milliseconds
Five ABR VS/VD : SW1 Queue Length
550 ms × 100 Mbps = 130 kCellsQ ≈ Previous loop delay
Raj JainThe Ohio State University
21
0
500
1000
1500
2000
2500
3000
0 10002000
30004000
50006000
70008000
900010000
Qu
eue L
eng
th
Time in milliseconds
Five ABR : SW2 Queue Length
10 ms × 100 Mbps = 2.4 kCellsQ ≈ Previous loop delay
ERICA+ VS/VD GEOERICA+ VS/VD GEO
Raj JainThe Ohio State University
22
ERICA+ VS/VD GEOERICA+ VS/VD GEOTCPTCP
02000400060008000
100001200014000160001800020000
0 5000 10000 15000 20000 25000 30000
Qu
eue L
eng
th
Time in milliseconds
Five TCP : SW1 Queue Length
550 ms × 100 Mbps = 130 kCellsQ << Previous loop delay
Raj JainThe Ohio State University
23
ERICA+ VS/VD GEOERICA+ VS/VD GEOTCPTCP
0
100
200
300
400
500
600
0 5000 10000 15000 20000 25000 30000
Qu
eue L
eng
th
Time in milliseconds
Five TCP : SW2 Queue Length
10 ms × 100 Mbps = 2.4 kCellsQ << Previous loop delay
Raj JainThe Ohio State University
24
VS/VD Sw. Feedbackdelay
B/wdiff.
MaxExp. Q(cells)
MaxObs. Q(cells)
OFF Sw1 120 0 0 0OFF Sw2 120 100 3*28 K 30 KON Sw1 100 100 3*25 K 30 KON Sw2 10 100 3*2.4 K 3 KOFF Sw1 570 0 0 0OFF Sw2 570 100 3*135 K 140 KON Sw1 550 100 3*130 K 140 KON Sw2 10 100 3*2.4 K 3 K
Simulation ResultsSimulation Results
Raj JainThe Ohio State University
25
ObservationsObservationsq Without VS/VD:
m Single control loop for the entire connection.
m All queues are in the bottleneck switch.
m Buffer requirements for terrestrial switch areproportional to satellite propagation delay.
q With VS/VD:
m Control loop broken at each switch.
m Queues remain at the switch between the satelliteand the terrestrial loop (satellite switch).
m Terrestrial switch only requires small buffers.
Raj JainThe Ohio State University
26
SummarySummary
q VS/VD switch architecture:
m Per-VC queues drain at an ACR based only on theexternal congestion and class Q
m Feedback to upstream queue must include externalcongestion, class Q, and per-VC Q.
m Each queue must monitor its input and output rate.
Raj JainThe Ohio State University
27
Summary (Cont)Summary (Cont)
q With correct implementation of VS/VD:Maximum queue at each switch< Bandwidth delay product of the previous loop⇒ Can help isolate long-delay hops from short-delayhops.
q Workgroup switches on satellite paths will not needbuffering proportional to round-trip even if they arethe bottleneck.
q Motion: Add sample VS/VD scheme to baseline text
Switch 1
Switch 2
S5
Raj JainThe Ohio State University
28
Future WorkFuture Workq More complex configurations.
q Presence of VBR background.
q Analysis of complexity of VS/VD switch.
q Scheduling policies for per-VC and class queues.
Raj JainThe Ohio State University
29
MotionMotionq Add the following two paragraphs to
I.5.4 of the baseline text.I.5.4 A Sample Explicit Rate VS/VD Switch Algorithm
One simple method to implement VS/VD is to have a separate queue(per-VC queue) for each VC. A server at the head of each of thesequeues monitors the input rate of the queue, provides feedback to theupstream queue, and controls the output rate of the queue based on thefeedback from the corresponding downstream server. When providingfeedback, each server only allocates up to the rate at which it isallowed to output (ACR). However, if queues are large, the server mayallocate only a part of its ACR to the previous hop so that its queuescan drain quickly. The main features and options of the algorithm aresimilar to the ERICA+ algorithm. ERICA+ is an extension of theERICA algorithm, and uses queue length to dynamically set the targetABR capacity.
Raj JainThe Ohio State University
30
Motion (Motion (contdcontd.).)
The basic rate allocation algorithm consists of the following steps atthe end of every averaging interval. The port overload is calculated asthe ratio of the total measured service rate of the per-VC queues andthe target ABR capacity. The fair share term for VCs is calculated asthe ratio of the target ABR capacity to the number of active ABRVC. VCshare is calculated for each VC as the ratio of its measuredservice rate to the overload. The ER for each VC is calculated as ER= Min(Max(Fair Share, VC share), ER from downstream node). TheACR at which the VC's queue drains is determined from this ER aswell as the source-end-system rules for the VS. The feedback to theprevious hop for the VC is calculated as a fraction (based on the VC'squeue length) of the calculated ACR.