41
Generalized Processing Generalized Processing Sharing (GPS) Sharing (GPS) Is work conserving Is a fluid model Service Guarantee GPS discipline can provide an end-to-end bounded-delay service to a session whose traffic is constrained by a leaky bucket. Fair Allocation GPS can ensure fair allocation of bandwidth among all backlogged sessions regardless of whether or not their traffic is constrained. Thus, it is suitable for feedback based congestion control algorithms.

Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Generalized Processing Generalized Processing Sharing (GPS)Sharing (GPS)

• Is work conserving• Is a fluid model• Service Guarantee

– GPS discipline can provide an end-to-end bounded-delay service to a session whose traffic is constrained by a leaky bucket.

• Fair Allocation– GPS can ensure fair allocation of bandwidth

among all backlogged sessions regardless of whether or not their traffic is constrained. Thus, it is suitable for feedback based congestion control algorithms.

Page 2: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

GPS ExampleGPS Example

0 152 104 6 8

50% 10% 10% 10%10% 10%

• Red session has packets backlogged between time 0 and 10

• Other sessions have packets continuously backlogged

Page 3: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

GPSGPS• A work conserving GPS is defined as

• where– Φi – weight of flow i

– Wi(t1, t2) – total service received by flow i during [t1, t2)

– W(t1, t2) – total service allocated to all flows during [t1, t2)

– B(t1) – number of flows backlogged

1

1 2 1 21

( )

( , ) ( , )( )

i jj B t

Wi t t W t ti B t

Page 4: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Packet vs. Fluid SystemPacket vs. Fluid System

• GPS is defined in an idealized fluid model– multiple queues can be serviced

simultaneously– no non-preemption unit

• Real system are packet systems– one queue is served at any given time– packet transmission is not preempted

• Goal– define packet algorithms approximating the

fluid system– maintain most of the important properties

Page 5: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Approximating GPS with Approximating GPS with WFQWFQ

• Fluid GPS system service order

0 2 104 6 8

• Weighted Fair Queueing– select the first packet that finishes in GPS

Page 6: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

• Standard techniques of approximating fluid GPS– select packet that will finish first in GPS assuming that

there are no future arrivals

• Important properties of GPS– finishing order of packets currently in system

independent of future arrivals

• Implementation based on virtual time– assign virtual finish time to each packet upon arrival– packets served in increasing order of virtual times

Packet Approximation of Packet Approximation of Fluid SystemFluid System

Page 7: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

System Virtual TimeSystem Virtual Time• Virtual time (VGPS) – service that backlogged

flow with weight = 1 would receive in GPS

( )

( , )( , ) ( )i ijj B t

W t t dtW t t dt i B t

( )

1GPS

jj B t

V W

t t

( )

( )i i

jj B t

W W i B tt t

2

11 2

( )

( ) ( )1,t

i ijj

tB

tt

Wt

W t t dt i B t

Page 8: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Service Allocation in GPSService Allocation in GPS

• The service received by flow i during an interval [t1,t2), while it is backlogged is

12

11 2( , ) ( )

tGPS

i i t t

VW t t dt i B t

t

1 2 2 1 1( , ) ( ( ) ( ( )))i i GPS GPSW t t V Bt tV t i

Page 9: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

System Virtual Time in GPS System Virtual Time in GPS

Load = BW

0 4 128 16

0 4 128 16

1/2

1/81/81/81/8

( )V tLoad = BW / 2

Page 10: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Virtual Start and Finish Virtual Start and Finish TimesTimes

Approximate the ideal distribution in a packet system

Utilize the time the packets would start Sik and

finish Fik in a fluid system

Load = BW

0 4 128 16

( )V tLoad = BW / 2

( )kiF t( )k

iS tpkt k

( ) ( )k

k k ii i i

LF t S t r

Page 11: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Virtual Time Implementation Virtual Time Implementation of WFQof WFQ

• : virtual start time of the k-th packet on session j• : virtual finish time of the k-th packet on session j• : guaranteed rate for session j• : arrival time of the k-th packet on session j• :set of backlogged sessions in GPS system at

time • service rate of session j in GPS at time is

1max{ , ( )}k k kj j jS F V a

kjk k

j j j

LF S r

(0) 0GPSV

( )

( ) 1GPS

jj BGPS

Vr

kjS

kjF

jrkja

( )GPSB

( )GPSV

r

Page 12: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Virtual Time Implementation Virtual Time Implementation of WFQof WFQ

S Fj j

kj

j j j

LF S r

(0) 0GPSV

( )

( ) 1GPS

jj BGPS

Vr

max{ , ( )}kj j jS F V a

If session j backlogged

If session j unbacklogged

• Need to keep per flow instead of per packet virtual start, finish time only

• System virtual time is used to reset a flow’s virtual start time when a flow becomes backlogged again after being idle

Page 13: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Research in Designing Research in Designing Packet Fair Queueing Packet Fair Queueing

AlgorithmsAlgorithms• Improve worst-case fairness: important for

hierarchical scheduler– use Smallest Eligible virtual Finish time First (SEFF) policy– examples: WF2Q, WF2Q+

• Reduce complexity– use simpler virtual time functions– examples: SCFQ, SFQ, DRR, FBFQ, leap-forward Virtual

Clock, WF2Q+

• Improve resource allocation flexibility– Fair Service Curve

• Implement in Combined Input Output Switch

Page 14: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Approximating GPS with Approximating GPS with WFQWFQ

• Fluid GPS system service order

0 2 104 6 8• Weighted Fair Queueing

– select the first packet that finishes in GPS

• Observation: packet finishes in WFQ no late than in GPS– basis for proving delay bound for WFQ

• Another observation: some packet finishes service much earlier in WFQ in GPS

Page 15: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

A More Accurate A More Accurate Approximation of GPSApproximation of GPS

50% 10%10% 10%10% 10%

• Problem with WFQ– WFQ can be ahead of

GPS too much

• Worst-case Fair Weighted Fair Queueing (WF2Q)– a packet is eligible if it

starts service in GPS – among all eligible

packets, select the one that finishes first in GPS

– optimal algorithm in approximating GPS

– normalized WFI is one maximal size packet

• WF2Q service order

0 2 104 6 8

Page 16: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Worst-case Packet Fair (I)Worst-case Packet Fair (I)• To quantify the discrepancy between the services provided by a

packet discipline and the GPS discipline.• A service discipline s is called worst-case fair for session i if for any

time , the delay of a packet arriving at is bounded above by , i.e.,

where is the throughput guarantee to session i, is the queue size of session i at time and is a constant independent of the queues of the other sessions sharing the multiplexer.A service discipline s is called worst-case fair if it is worst-case fair for all sessions.

• Normalized Worst-case Fair Index for session i at server s:• Normalized Worst-case Fair Index for server s :

, ,

1i s i s

iQ C

r

,, ,

ki s ik k

i s i i si

Q ad a Cr

ir ,k

i s iQ a k

ia ,i sC

,,

i i si s

r Cc

r

,maxs i sic c

Page 17: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Worst-case Packet Fair (II)Worst-case Packet Fair (II)• GPS is worst-case fair with .• may increase linearly as a function of number of

session n.In the example, consider the packet . It won’t depart until time , thus

• The Normalized Worst-case Fair Index:

0GPSc WFQc

11np

max2 1 *n L

r

1,1 1

1, , ,

max max max

max

2 12

1

ni WFQn n

WFQ i WFQ i WFQi

Q aC d a

rL L Ln n

r r rLn

r

max11,

12WFQ WFQ

r Lnc Cr r

Page 18: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

WFWF22QQ• Is a packet approximation algorithm of GPS.• WF2Q provides almost identical service with GPS,

the maximum difference is no more than one packet size.

• Difference between WF2Q and WFQ– In a WFQ system, when the server chooses the next

packet for transmission at time t, it selects among all the packets that are backlogged at t, and selects the first packet that would complete service in the corresponding GPS.

– In a WF2Q system, when the server chooses the next packet at time t, it chooses only from the packets that have started receiving service in the corresponding GPS at t, and chooses the packet among them that would complete service first in the corresponding GPS.

Page 19: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Problem with WFProblem with WF22QQ

• The time complexity of implementing WF2Q is high. Because it’s based on a virtual time function which is defined with respect to the corresponding GPS system. It leads to considerable computational complexity due to the need for simulating events in the GPS system.

Page 20: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

2020

Virtual Time in Fluid GPS Virtual Time in Fluid GPS SystemSystem

ServiceTime

Virtual Time(normalized service)

t1

• Virtual time function represents the cumulative fair amount of service• a previously idle session starts to receive service at the virtual time level when it becomes active

– no compensation for the idle period– start receiving service immediately after becoming active

• Accurate but difficult to compute– need to emulate fluid system, worst case complexity O(N)

1 2 3 4

previous idle session

Page 21: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

2121

Virtual Time in Packet Virtual Time in Packet SystemSystem

ServiceTime

Virtual Time?(normalized service)

t1

• Can we compute system virtual time based on information in the packet system?– no need to emulate fluid system

• Normalized amounts of service received by backlogged sessions are different

• Which level to set the previous idle session?

previous idle session

1 2 3 4

Page 22: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

2222

Virtual Time in Packet Virtual Time in Packet SystemSystem

Service

Time

Virtual Time?(normalized service)

t1

• Set too low: newly backlogged session receives more than its fair share, performance for other sessions degrade

• Set too high: performance for newly backlogged session degrade• Tradeoff between accuracy and simplicity

previous idle session

2 3 41

Page 23: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

2323

Heuristics of Computing Heuristics of Computing Virtual Time in Packet Virtual Time in Packet

SystemSystemService

Time

Virtual Time?(normalized service)

t1

• SCFQ: virtual finish time of packet being serviced• SFQ: virtual start time of packet being serviced• WF2Q+:

previous idle session

( )( ) max{ ( ) ,min }j B tv t v t Sj

2 3 41

Page 24: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

1/2

1/8

1/8

1/8

1/8

SCFQ [Golestani94]

)(tV

Smallest Finish time First (SFF)

2 64 88

88

8

1/2

1/8

1/8

1/8

1/8

Self Cock Fair Queuing (SCFQ)Self Cock Fair Queuing (SCFQ)Packet Arrivals

• System virtual time function– the finish time of the current packet being

serviced

• Packet selection policy– Smallest virtual Finish time First (SFF)

Page 25: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

1/2

1/8

1/8

1/8

1/8

Start Time Fair Queuing (SFQ)Start Time Fair Queuing (SFQ)Packet Arrivals

• System virtual time function– the start time of the current packet being

serviced

• Packet selection policy– Smallest virtual Start time First (SSF)

1/2

1/8

1/8

1/8

1/8

SFQ

( )V t

2 640

00

00

Page 26: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Hierarchical Resource Hierarchical Resource SharingSharing

• Resource contention/sharing at different levels

• Resource management policies should be set at different levels, by different entities – resource owner– service providers– organizations– applications

Link

Provider 1

seminar video

ECESCS

U.PittCMU

Provider 2

DistributedSimulation

WEB

VideoAudioControl

155 Mbps

40 Mbps60 Mbps

10 Mbps30 Mbps

100 Mbps 55 Mbps

Campus

seminar audio

Page 27: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Hierarchical Generalized Hierarchical Generalized Processor SharingProcessor Sharing

• Idealized fluid algorithm– service multiple queues simultaneously,

in proportional to shares– parent distributes service

instantaneously to children

50% 10%

10% 10%10% 10%

physical resource 100%

GPS server60%

Page 28: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

H-GPS ExampleH-GPS Example

50% 10%

10% 10%10% 10%

• Red session has packets backlogged between time 0 and 10

• Other sessions have packets continuously backlogged

60%

0 2 104 6 8 20

Page 29: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

GPS and H-GPS PropertiesGPS and H-GPS Properties• Proven end-to-end delay bounds for guaranteed

traffic• Adaptation friendly

– no punishment in the future for using excess service– scalable technique for estimating excess bandwidth for

adaptive applications

• GPS: guaranteed service for each flow• H-GPS: guaranteed service for all classes

– leaf class: individual flow– interior class: traffic aggregate– QoS met for all traffic classes simultaneously– ideal semantics for hierarchical resource management

Page 30: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Packet Approximation of H-Packet Approximation of H-GPSGPS

• Idea 1: use similar approach as approximating GPS– select packet finishing first in H-GPS,

assuming there are no future arrivals

• Problem– relative finish order of packets dependent

on future arrivals– can not use virtual time implementation

Page 31: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

H-GPS ExampleH-GPS Example

50% 10%

10% 10%10% 10%

• Red session has packets backlogged between time 0 and 10

• Other sessions have packets continuously backlogged

• Need to make a decision at time 11

60%

0 2 104 6 8 20

Page 32: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

H-GPS: Decision at Time 11H-GPS: Decision at Time 11• Red session has

packets backlogged between time 0 and 10

• Other sessions have packets continuously backlogged

• Need to make a decision at time 11

• Case 1: no future red arrivals

• Case 2: red session active at time 11

• Relative finish order dependent on future arrivals

50% 10%

10% 10%10% 10%

60%

0 2 104 6 8 20

Page 33: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Packet Approximation of H-Packet Approximation of H-GPSGPS

• Idea 1– select packet finishing first

in H-GPS assuming there are no future arrivals

– problem:• finish order in system

dependent on future arrivals

• virtual time implementation won’t work

• Idea 2– use a hierarchy of PFQ to

approximate H-GPS

6 4

321

GPS GPS GPS

GPS GPS

GPS

10

6 4

321

PFQPFQ

PFQ PFQ

PFQ

10

PFQ

Packetized H-GPSH-GPS

Page 34: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

• Many PFQ algorithms– SCFQ, SFQ, FBFQ, WFQ– how do properties of PFQ relate to H-PFQ?

• Worst-case Fair Index– measuring the accuracy of PFQ in

approximating GPS– tight H-PFQ delay bound small

WFI of PFQ

• All previously proposed PFQ algorithms have large WFI’s

H-PFQH-PFQ

Page 35: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

H-GPS and H-WFQ ExampleH-GPS and H-WFQ Example

50%

10%10% 10%10% 10%

• Two levels of hierarchy

• GPS order at top level

• WFQ order at top level

0 2 104 6 8

5%45%

Page 36: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

H-GPS and H-WFQ ExampleH-GPS and H-WFQ Example

50%

10%10% 10%10% 10%

• Arrival process– active at time 5– all other flows continuously

backlogged

• Top level GPS server• Top level WFQ server at [0,4]

– make decision assuming there are no future arrivals

– select packets in class – only class is active

• Class active at time 5– has to endure a long delay 0 2 1

04 6 8

5%45%

Page 37: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

H-GPS and H-WFH-GPS and H-WF22Q ExampleQ Example

50%

10%10% 10%10% 10%

• Arrival process– active at time 5– all other flows

continuously backlogged

• Top level GPS server• Top level WFQ server

– there are no future arrival

– never ahead of GPS by one packet size

– class receives service immediately after becoming active

0 2 104 6 8

5%45%

Page 38: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

WFWF22Q+Q+

• WFQ and WF2Q– need to emulate fluid GPS system– high complexity

• WF2Q+– provide same delay bound and WFI as WF2Q– lower complexity

Page 39: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Example HierarchyExample Hierarchy

Page 40: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Uncorrelated Cross TrafficUncorrelated Cross Traffic

Delay under H-WFQ

Delay under H-WF2Q+Delay under H-SFQ

Delay under H-SCFQ

20ms

60ms

40ms

20ms

60ms

40ms

Page 41: Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service

Correlated Cross TrafficCorrelated Cross Traffic

Delay under H-WFQ

Delay under H-WF2Q+Delay under H-SFQ

Delay under H-SCFQ

20ms

60ms

40ms

20ms

60ms

40ms