
Queuing TheoryFor Dummies Jean-Yves Le Boudec 1
All You Need to Know About Queuing Theory • Queuing is essential to understand the behaviour of complex computer and communication systems • In depth analysis of queuing systems is hard • Fortunately, the most important results are easy • We will study this topic in two modules • 1. simple concepts (this module) • 2. queuing networks (later) 2
1. Deterministic Queuing • Easy but powerful • Applies to deterministic and transient analysis • Example: playback buffer sizing 3
Solution of Playback Delay Pb bits A(t) A’(t) D(t) d(t) (D2): r (t - d(0) - D) (D1): r(t - d(0) + D) time d(0) - D d(0) d(0) + D A. 5
2. Operational Laws • Intuition: • Say every customer pays one Fr per minute present • Payoff per customer = R • Rate at which we receive money = N • In average λ customers per minute, N = λ R 6
Little Again • Consider a simulation where you measure R and N. You use two counters responseTimeCtr and queueLengthCtr. At end of simulation, estimate R =responseTimeCtr / NbCust N =queueLengthCtr / Twhere NbCust = number of customers served and T=simulation duration • Both responseTimeCtr=0 and queueLengthCtr=0 initially • Q: When an arrival or departure event occurs, how are both counters updated ?A: queueLengthCtr += (tnew - told) . q(told) where q(told) is the number of customers in queue just before the event.responseTimeCtr += (tnew - told) . q(told)thus responseTimeCtr == queueLengthCtr and thusN = R . NbCust/T ; now NbCust/T is our estimator of 7
Network Laws 10
Bottleneck Analysis • Example • Apply the following two bounds (1) (2) 17 11
Bottlenecks A 13
DASSA • Intuition: within one busy period: to every departure we can associate one arrival with same number of customers left behind 14
Optimal Sharing • Compare the two in terms of • Response time • Capacity 22
The Processor Sharing Queue • Models: processors, network links • Insensitivity: whatever the service requirements: • Egalitarian 23
PS versus FIFO • PS • FIFO 24
4. A Case Study • Impact of capacity increase ? • Optimal Capacity ? 25
Methodology 26
4.2 Single Queue Analysis Assume no feedback loop: 29
4.3 Operational Analysis • A refined model, with circulating users • Apply Bottleneck Analysis ( = Operational Analysis ) waiting time 1/c Z/(N-1) -Z 30
Conclusions • Queuing is essential in communication and information systems • M/M/1, M/GI/1, M/G/1/PS and variants have closed forms • Bottleneck analysis and worst case analysis are usually very simple and often give good insights • … it remains to see queuing networks 33