Higher Response Time Moments for M/m/1 Discriminatory Processor Sharing Queues

Obtaining response time moments in processor sharing (PS) queues is difficult due to serving of multiple jobs. Egali-atarian PS (EPS) queues are limited to one class of arriving jobs. Discriminatory PS (DPS) assigns weights to different job classes and offers more diverse modeling capabilities than EPS. It is known that response time is the representative metric for delay as specified in service level agreements (SLAs), which consider higher moments important. Hence, we build an automated numerical algorithm for calculating higher moments of response time in M/M/1-DPS queues for multiple job classes and test two different case studies.


INTRODUCTION
The processor sharing (PS) discipline has important applications in web server design [4] and bandwidth-sharing protocols in packet-switched networks [11] with delay as the key measure.In a PS system with service rate 1 and n jobs, each job is served at 1/n times the speed of the processor.PS has the following useful properties: an implicit fairness where expected job response time is directly proportional to its size; arriving jobs access server resources without queueing; handling heavy-tailed service times, which may arise as short jobs are allowed to overtake long jobs.Often, the egality of PS omits applications with priority jobs and, hence, we consider variants of PS.Discriminatory PS (DPS) [16], where each job j in the system receives its own percentage of the server, extends PS by supporting multiple job classes.In DPS, K job types are served by a vector of weights (α j > 0, j = 1, . . ., K) and, assuming there are n i class i jobs (i = 1, . . ., K) in the system, each class j job is served at rate: Hence, the share of a job class increases with the number of jobs, which prevents classes with smaller weights from starving.DPS becomes PS if α i = α j , for i, j = 1, . . ., K.
By varying DPS weights, the choice of instantaneous service weights of different job classes enables differentiated quality of service among specific type of jobs.For example, ADSL subscribers are offered different payment rates in return for corresponding shares of available bandwidth.Existing work in the literature proves, via experiments, that the expected unconditional response time of PS systems is reduced by 33% with DPS [15].With such work focusing primarily on reducing mean response times, it is important to consider higher moments to understand the effects of variance and skewness on response time distributions.Similarly, existing work for approximating response times in M/M/1-DPS queues [3,7,12,17] is limited by the number of moments obtained or the number of job classes considered.Hence, this paper provides an automated algorithm to iteratively calculate higher response time moments (i.e. more than two) for multiple job classes in M/M/1-DPS queues.Our contributions are as follows: • Extend the two-moment equations introduced by Kim and Kim [7] (utilized in an algorithm by Chis and Harrison [17]) via an automated algorithm.
• Provide an explicit formula for the third moment of response time in M/M/1-DPS queues for two classes.
• Obtain arbitrary (up to any order) response time moments numerically for multi-class M/M/1-DPS queues.
This paper is organized as follows: section 2 defines response time; section 3 offers related work on response time in DPS queues; section 4 presents the moment-generating algorithm for M/M/1-DPS queues; section 5 summarizes results on two case studies; section 6 concludes the paper.

BACKGROUND
Response time (or sojourn time) is the time needed, after a job enters a system, to attain the required service and depart the system.In queueing systems, response time T is the sum of queueing time (or time spent waiting to start service) and service time.Let λ be the arrival rate, µ be the service rate, and ρ = λ/µ < 1 be the steady state system utilization.For PS systems, the mean unconditional response time at equilibrium (E[T ]) can be computed using Little's law: where L is the mean number of jobs in the system.When jobs require x units of service time, the mean conditional response time is E[T (x)] = x/(1 − ρ).Calculating higher moments of response time under PS requires layered branching of arriving jobs [8].Further, DPS scheduling adds complexity with multiple job classes.The next section summarizes existing methods for analyzing response time in DPS queues.

RELATED WORK
One of the earliest significant works on DPS queues was Kleinrock [16] in 1967.Subsequently, Fayolle et al [12] summarized DPS results of Kleinrock and Mitrani in 1980 and obtained expected conditional response times for M/M/1-DPS queues as a solution of integro-differential equations.Further, Laplace transforms were used to obtain mean response times for multiple classes, but there were no results on higher response time moments.Yashkov [8] abstracted PS scheduling as a layered branching of arriving jobs in 1987, but only references DPS queues via Fayolle.
In a PS queue with utilization ρ, it is known [1,3] that the response time T of an arriving job requiring x units of service has a distribution function with Laplace transform: where r is the smaller root of the equation ρr 2 −(ρ+1+s/µ)r+ 1 = 0.This result is derived by solving a partial differential equation (PDE) for a generating function G(z, s, x), namely: In 2004, Kim and Kim [7] offered a joint transform to obtain response time moments for M/M/1-DPS queues with K job classes.Response time moments were derived by differentiating a PDE that governed a joint transform of elapsed response time and number of customers in the system.Thus, Kim and Kim solved (K +1)(K +2)/2 independent equations to obtain conditional response time moments.When K = 1, substituting equal α i weights into the aforementioned PDE from [7] and simplifying duly yields equation (3).For K = 2, a mechanized algorithm to solve the Kims' equations for the second moments was obtained for multiple job types [17] that allowed arbitrary weighted α i , mean service requirements 1/µ i and arrival rates λ i .Explicit expressions for the first two moments of class 1 jobs, which assume equal weights α 1 = α 2 = 0.5, were found to be: and where the class-utilizations are ρ i = λ i /µ i , for i = 1, 2, and The moments for class 2 are symmetrical, interchanging the subscripts 1 and 2 in the expressions.

M/M/1-DPS RESPONSE TIME
To obtain the general k th moment in M/M/1-DPS queues, we extend the work of [17] by forming a novel automated algorithm, implemented in Wolfram's Mathematica.The numerical algorithm is based on the direct approach of solving the moment-equations obtained by differentiating the Kim's joint transform PDE [7] repeatedlyk times for the k th moment; the details are given in figure 1.This example screenshot of the algorithm initializes different weights and rates for two job classes and outputs four response time moments (sufficient for the purpose of this work), but easily extends to higher moments as it is fast in its numerical iterations.We display the third moment E[T 3  1 ] in equation ( 6) symbolically for job class 1 (with corresponding class 2 moment E[T 3  2 ] obtained by inverting subscripts 1 and 2).Note that we set α 1 = α 2 = 0.5 for presentation purposes, but the weight ratio can take any value: where

Response time distribution
Response time distribution can be approximated from moments using, for example, the generalized lambda distribution (GLD) [5,9].The GLD is a distribution-fitting approximation, which inputs the first four response time moments to match four "lambda" parameters and outputs density and distribution functions.The GLD "quality-of-fit" is ascertained only through a goodness-of-fit test as closed-form solutions do not exist for the lambda parameters.With response time moments obtained from variations of equations ( 4), ( 5), ( 6) and the algorithm from figure 1 (with different values for α priority weights), one can easily parametrize the GLD and obtain distributions.For our results, we compare response time moments from our analytical approximations with simulations on two different case studies.

RESULTS
We calculate results from two workloads: first, we collect inter-arrival times of TCP traffic from experiments on Intel Core i7-2600 CPU @ 3.40GHz machines, which form the TCP dataset; secondly, we use parameters from a GRID network application [13].Both datasets exhibit multiple job classes with different access priorities and, hence, are suitable for our M/M/1-DPS queue.Class priorities are calculated using packet type and size.We approximate analytical response time moments using the numerical algorithm in figure 1 .To obtain simulated moments, we execute 10000 runs of one million observations using a standard MATLAB package and provide 95% confidence intervals.

TCP datasets
Data is collected from servers running data applications with TCP packet delivery.Using inter-arrival times from a TCP dataset, we parametrize our M/M/1-DPS queue as follows: Hence, we obtain analytical (A) and simulated (S) response time moments for class 1 in table 1 with corresponding class 2 moments in table 2. Analytical moments are calculated from the numerical algorithm in figure 1 .Further, all moments are centralized to reveal the spread from the mean.Table 1: Class 1 response time moments from TCP dataset 1.Further, we set different priority weights for each job class, which is typical of TCP packets arriving with different-sized requests.For example, one class i may have higher share of the server (i.e.larger α i value), but have lower mean service rate (µ i ).We collect mean arrival and service rates from a second TCP dataset and parametrize our queue with λ 1 = 0.2, λ 2 = 0.6, µ 1 = 2, µ 2 = 1.2, α 1 = 0.33 and α 2 = 0.67.The corresponding multi-class response time moments are summarized in tables 3 and 4. The applicability of modeling multiple arrivals and the flexibility of setting arbitrary weights allows the automated algorithm in figure 1 to improve existing work; previously, either all α i weights were equal, as with Chis and Harrison's work [17], or different weights were used to approximate response time for up to two moments only, as with Kim and Kim's work [7].
Table 3: Class 1 response time moments from TCP dataset 2.

CONCLUSION
We provide an automated algorithm to yield higher response time moments in M/M/1-DPS queues with multiple job classes.The results reveal that analytical approximations match simulated moments well.Applications include modeling multi-class Internet traffic, where delay addresses SLA constraints, and spatiotemporal resource allocation in networks.Extensions of this work include generalizing job arrivals to MAPs and, hence, finding response time moments in MAP/M/1-DPS queues.Alternatively, multiple streams of TCP packets can be modeled as job arrival processes using variations of the Markov-modulated Poisson process (MMPP), which is a special case of MAP.Discretized MMPPs (or hidden Markov models) replicate the burstiness of TCP packet traces, which can be clustered in groups, and, hence, allow model parameters to converge on multiple traces simultaneously at reduced computational complexity [10].Further, arrival parameters of queueing models can be updated incrementally via online EM learning algorithms [2,6,14], which are suitable for live systems.

Figure 1 :
Figure 1: Mathematica code of the automated algorithm with two job classes and four moments.

Table 2 :
Class 2 response time moments from TCP dataset 1.

Table 4 :
Class 2 response time moments from TCP dataset 2.

Table 5 :
Class 1 response time moments from GRID dataset.

Table 6 :
Class 2 response time moments from GRID dataset.