30
Raj Jain The Ohio State University 1 97-1086R1: Per-VC Rate 97-1086R1: Per-VC Rate Allocation Techniques Allocation Techniques For ABR Feedback in For ABR Feedback in VS/VD Networks VS/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 /

97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

Embed Size (px)

Citation preview

Page 1: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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 Jain
Horizontal small
Page 2: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 3: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 4: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 5: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 6: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 7: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR 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.

Page 8: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 9: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 10: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 11: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 12: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

Raj JainThe Ohio State University

12

ERICA+ Non-VS/VDERICA+ Non-VS/VDLEOLEO

Page 13: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 14: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

Raj JainThe Ohio State University

14

ERICA+ Non-VS/VDERICA+ Non-VS/VDGEOGEO

Page 15: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 16: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 17: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 18: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 19: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 20: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 21: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 22: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 23: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 24: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 25: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 26: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 27: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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

Page 28: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 29: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.

Page 30: 97-1086R1: Per-VC Rate Allocation Techniques For ABR ...jain/atmf/ftp/af_vsv2.pdf · The Ohio State University Raj Jain 1 97-1086R1: Per-VC Rate Allocation Techniques For ABR Feedback

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.