applied research lab, washington university, st. louis supported in part by: nsf grant ani-9714698...

8
1/8/2002 Anshul Kantawala 1 Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel Queue State Deficit Round Robin (QSDRR) Anshul Kantawala

Upload: colleen-shaw

Post on 01-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 1

Applied Research Lab, Washington University, St. Louis

Supported in part by: NSF grant ANI-9714698 and Intel

Queue State Deficit Round Robin (QSDRR)

Anshul Kantawala

Page 2: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 2

Deficit Round Robin (DRR)

• Per-flow queue with deficit counter

• Round-robin scheduler

• Drop from longest active queue

DeficitCounter

100

100

200

100100100

100 200

100 100 200

100100

100

100

100

100100100100

100100 200

100 100 200

200

100

100

100100

100 200

100 100

100200

Page 3: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 3

Advantages of DRR

• Requires only O(1) work in comparison to other fair-queueing algorithms Stochastic FQ, Self-Clocked FQ, Virtual Clock

• Easy to implement in hardware

Page 4: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 4

QSDRR - Basic Idea

• DRR consists of two parts Packet scheduler - round robin with deficit

counter Packet drop policy - discard from longest queue

• In QSDRR Same packet scheduler Different packet drop policy

Page 5: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 5

QSDRR Algorithm

• Maintain state variable Q as drop queue

• If Q is undefined set Q to current longest queue

• Else (Q is defined) If Q is shorter than all other queues

• set Q to current longest queue

Else continue dropping packets from Q

Page 6: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 6

Results

• Fair-share goodput for a multi-hop network configuration

Fair Share Percentage vs. Buffer Size(cross-traffic flows)

100.00

110.00

120.00

130.00

140.00

150.00

160.00

0 1000 2000 3000 4000 5000 6000

Buffer size (pkts)

Fai

r S

har

e (%

)DRR RED DropTail Queue State DRR Blue

Fair Share Percentage vs. Buffer Size(end-to-end flows)

0.0010.0020.00

30.0040.0050.0060.00

70.0080.0090.00

0 1000 2000 3000 4000 5000 6000

Buffer size (pkts)

Fai

r S

har

e (%

)

DRR RED DropTail Queue State DRR Blue

Page 7: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 7

Implementation in MSR

• Entry function: msr_drr_enqueue(msr_bufhdr_t *hdr)

• Dequeue Periodic dequeue - high overhead for per-

packet interrupt Use overbooking and APIC queue thresholds to

compensate for period skew

Page 8: Applied Research Lab, Washington University, St. Louis Supported in part by: NSF grant ANI-9714698 and Intel 1/8/2002Anshul Kantawala1 Queue State Deficit

1/8/2002 Anshul Kantawala 8

Dequeue Formula

• BS_MAX = B_MAX - max((APIC_q - APIC_th), 0)

• B_MAX = (LinkRate * Period) *Alpha

• Alpha = overbooking ratio

• APIC_q = current APIC transmit queue occupancy

• APIC_th = APIC queue threshold

• Period, Alpha, and APIC_th are global constants defined in MSR_Policy_Object