An Equivalent Random Method with hyper-exponential service

An Equivalent Random Method with hyper-exponential service An Equivalent Random Method with hyper-exponential service

classweb.gmu.edu
from classweb.gmu.edu More from this publisher
05.08.2013 Views

Performance Evaluation 57 (2004) 409–422 An Equivalent Random Method with hyper-exponential service John F. Shortle Systems Engineering and Operations Research, George Mason University, 4400 University Drive, MS 4A6, Fairfax, VA 22030, USA Received 17 March 2003; received in revised form 18 February 2004 Available online 27 April 2004 Abstract The Equivalent Random Method (ERM) has been widely used to predict blocking probabilities at overflow service stations. The method assumes that service times follow an exponential distribution. While this may be a reasonable assumption for voice traffic, it is not a good assumption for dial-up Internet traffic, where service times typically have a coefficient of variation (standard deviation/mean) greater than 1. In this paper, we give a modified ERM for two-term hyper-exponential service distributions. The method is based on an efficient algorithm to estimate the peakedness of the overflow process of an M/H2/S/S queue. Finally, we investigate the accuracy of the modified ERM using simulation and also compare systems with hyper-exponential service to systems with heavy-tailed service. © 2004 Elsevier B.V. All rights reserved. Keywords: Equivalent Random Method; Internet traffic; Overflow queues; Queues with blocking 1. Introduction The purpose of this paper is to investigate the accuracy of the Equivalent Random Method (ERM) when service times are not exponential. We are particularly interested in hyper-exponential service times, which are typical of dial-up Internet connections (e.g., [12]). The Equivalent Random Method (ERM) is a method to size the number of servers (or trunks) along both primary and overflow routes in a circuit-switched network. It was formulated by Wilkinson in 1956 [15] (the same kind of method was also proposed at the same time by Bretschneider [2]) and later extended by many others. The method has been used extensively since the 1970s to design the public-switched telephone network (PSTN). One drawback is that the ERM assumes call lengths have a common exponential distribution. While this may be a reasonable assumption for voice traffic, it is not a good assumption for dial-up Internet traffic, where service times typically have a coefficient of variation (standard deviation/mean) greater than 1. The exponential assumption is also not valid when the network carries a mixture of traffic types (like voice and data), each with a different mean holding time. E-mail address: jshortle@gmu.edu (J.F. Shortle). 0166-5316/$ – see front matter © 2004 Elsevier B.V. All rights reserved. doi:10.1016/j.peva.2004.02.003

Performance Evaluation 57 (2004) 409–422<br />

<strong>An</strong> <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> <strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong><br />

John F. Shortle<br />

Systems Engineering and Operations Research, George Mason University, 4400 University Drive,<br />

MS 4A6, Fairfax, VA 22030, USA<br />

Received 17 March 2003; received in revised form 18 February 2004<br />

Available online 27 April 2004<br />

Abstract<br />

The <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> (ERM) has been widely used to predict blocking probabilities at overflow <strong>service</strong> stations.<br />

The method assumes that <strong>service</strong> times follow an <strong>exponential</strong> distribution. While this may be a reasonable assumption for<br />

voice traffic, it is not a good assumption for dial-up Internet traffic, where <strong>service</strong> times typically have a coefficient of<br />

variation (standard deviation/mean) greater than 1. In this paper, we give a modified ERM for two-term <strong>hyper</strong>-<strong>exponential</strong><br />

<strong>service</strong> distributions. The method is based on an efficient algorithm to estimate the peakedness of the overflow process of<br />

an M/H2/S/S queue. Finally, we investigate the accuracy of the modified ERM using simulation and also compare systems<br />

<strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> to systems <strong>with</strong> heavy-tailed <strong>service</strong>.<br />

© 2004 Elsevier B.V. All rights reserved.<br />

Keywords: <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong>; Internet traffic; Overflow queues; Queues <strong>with</strong> blocking<br />

1. Introduction<br />

The purpose of this paper is to investigate the accuracy of the <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> (ERM)<br />

when <strong>service</strong> times are not <strong>exponential</strong>. We are particularly interested in <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> times,<br />

which are typical of dial-up Internet connections (e.g., [12]).<br />

The <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> (ERM) is a method to size the number of servers (or trunks) along both<br />

primary and overflow routes in a circuit-switched network. It was formulated by Wilkinson in 1956 [15]<br />

(the same kind of method was also proposed at the same time by Bretschneider [2]) and later extended<br />

by many others. The method has been used extensively since the 1970s to design the public-switched<br />

telephone network (PSTN).<br />

One drawback is that the ERM assumes call lengths have a common <strong>exponential</strong> distribution. While<br />

this may be a reasonable assumption for voice traffic, it is not a good assumption for dial-up Internet<br />

traffic, where <strong>service</strong> times typically have a coefficient of variation (standard deviation/mean) greater<br />

than 1. The <strong>exponential</strong> assumption is also not valid when the network carries a mixture of traffic types<br />

(like voice and data), each <strong>with</strong> a different mean holding time.<br />

E-mail address: jshortle@gmu.edu (J.F. Shortle).<br />

0166-5316/$ – see front matter © 2004 Elsevier B.V. All rights reserved.<br />

doi:10.1016/j.peva.2004.02.003


410 J.F. Shortle / Performance Evaluation 57 (2004) 409–422<br />

In response to these and other problems in modern telecommunications networks, several generalizations<br />

of the ERM have been given. For example, Borst et al. [1] consider an application to wireless<br />

communications where calls at the secondary server can be transferred back to the primary server. Fischer<br />

et al. [5] examine a system where primary traffic is also offered to the secondary server, and they compute<br />

the blocking level for both streams. Fredericks [7] and Labetoulle [9] consider mixtures of traffic<br />

and estimate blocking probabilities for both streams. Schehrer [14] considers an application to ISDN<br />

traffic where the mean holding times at the primary and secondary stations are different. Machihara [11]<br />

considers <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong>.<br />

This paper gives a modified ERM which works when the <strong>service</strong> distribution is a two-term <strong>hyper</strong><strong>exponential</strong><br />

distribution. We develop the method by extending a peakedness calculation given by Machihara<br />

[11]. While Machihara’s approximation works only for certain offered loads, the modified approximation<br />

works for all loads. Using this peakedness calculation, we can construct a modified ERM for<br />

<strong>hyper</strong>-<strong>exponential</strong> distributions. We also conduct simulation experiments to compare the <strong>hyper</strong>-<strong>exponential</strong><br />

<strong>service</strong> model <strong>with</strong> heavy-tailed <strong>service</strong> models.<br />

Section 2 gives an overview of the classical ERM. Section 3 gives an efficient algorithm to approximate<br />

overflow characteristics when the <strong>service</strong> distribution is a two-term <strong>hyper</strong>-<strong>exponential</strong>. Section 4 gives<br />

a modified ERM based on this approximation. Section 5 uses simulation to evaluate the performance<br />

of the modified ERM and to compare <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> distributions <strong>with</strong> heavy-tailed <strong>service</strong><br />

distributions.<br />

2. The <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong><br />

This section reviews the ERM (see also [16]) and defines notation. The ERM can be used to efficiently<br />

approximate blocking probabilities on primary and overflow trunk groups.<br />

Fig. 1 shows a typical configuration for overflow traffic. Each call arrives at one of n primary trunk<br />

groups, where trunk group i has Si trunks. If all primary trunks are busy, the call overflows to a common,<br />

secondary trunk group, which has K trunks. If all secondary trunks are busy, the call is blocked. A problem<br />

is to find the number of secondary trunks K such that the blocking probability at these trunks is b (say,<br />

b = 0.01).<br />

To do this, we typically characterize all traffic streams <strong>with</strong> two quantities: load a and peakedness<br />

z. 1 Load is the mean number of trunks in <strong>service</strong> when the stream is offered to an infinite group of<br />

trunks. Let V be the variance of the number of trunks in <strong>service</strong> when offered to an infinite group<br />

of trunks. Then z ≡ V/a is the peakedness of this input stream. A stream <strong>with</strong> Poisson arrivals has<br />

peakedness z = 1. Overflow streams typically have peakedness z > 1, since overflow calls tend<br />

to come in bursts. In Fig. 1, the arriving stream to trunk group i has load and peakedness (Ei, 1),<br />

representing Poisson arrivals. The overflow stream from trunk group i has load and peakedness<br />

(ai,zi).<br />

If <strong>service</strong> times are <strong>exponential</strong>, we can quickly calculate ai and zi as follows (e.g., [16]):<br />

ai = EiB(Ei,Si), (1)<br />

1 While these two parameters are not sufficient to determine blocking probabilities for a general arrival stream [8], these<br />

parameters appear to characterize overflow streams quite well for <strong>exponential</strong> <strong>service</strong>.


J.F. Shortle / Performance Evaluation 57 (2004) 409–422 411<br />

Arriving Traffic Overflow Traffic<br />

(E 1 , 1)<br />

(E 2 , 1)<br />

(E n , 1)<br />

S 1 Trunks<br />

S2 Trunks<br />

.<br />

S n Trunks<br />

(a 2 , z 2 )<br />

(a 1, z 1)<br />

(a n , z n )<br />

K Trunks<br />

Fig. 1. A typical overflow configuration: calls which are blocked at the primary trunks overflow to a common set of secondary<br />

trunks.<br />

(E, 1)<br />

Similar System<br />

S Trunks<br />

(a, z)<br />

K Trunks<br />

Fig. 2. <strong>An</strong> overflow configuration stochastically similar to Fig. 1.<br />

Ei<br />

zi = 1 − ai +<br />

, (2)<br />

Si − Ei + ai + 1<br />

where B(·, ·) is the Erlang-B blocking probability. (The Erlang-B blocking probability applies to general<br />

<strong>service</strong> distributions and only requires Poisson arrivals. Thus, Eq. (1) holds for arbitrary <strong>service</strong> distributions,<br />

but Eq. (2) only holds for <strong>exponential</strong> <strong>service</strong>.) If the n arrival streams are independent, then the<br />

load and peakedness of the combined overflow stream are<br />

n<br />

a = ai, z = 1<br />

n<br />

ziai. (3)<br />

a<br />

i=1<br />

i=1<br />

The ERM seeks to find a simpler network in the form of Fig. 2 which is stochastically similar to the<br />

original network in Fig. 1. Specifically, the ERM finds an offered load E and a trunk group size S such<br />

that load and peakedness (a, z) of the overflow stream in Fig. 2 are close to the load and peakedness of the<br />

combined overflow stream in Fig. 1 (Eq. (3)). Given such an E and S, the probability that a call offered<br />

to the secondary trunk group is blocked is<br />

B(E, K + S)<br />

. (4)<br />

B(E, S)<br />

We seek to generalize this process for <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong>.<br />

3. Peakedness calculation <strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong><br />

A necessary step in the ERM is computation of the peakedness of the overflow traffic streams. In<br />

this section, we give an efficient algorithm to compute this when the <strong>service</strong> distribution is a two-term


412 J.F. Shortle / Performance Evaluation 57 (2004) 409–422<br />

<strong>hyper</strong>-<strong>exponential</strong>. In other words, we seek an analogous expression for zi, Eq. (2), for <strong>hyper</strong>-<strong>exponential</strong><br />

<strong>service</strong>. The method is based on work by Machihara [10,11] who derives an analytical expression for zi<br />

(though this expression can be numerically challenging to evaluate). For completeness, we summarize<br />

Machihara’s analytical result below.<br />

Consider an M/H2/S/S queue <strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> distribution G:<br />

G c (x) = 1 − G(x) = k1 e −µ1t<br />

+ k2 e −µ2t<br />

, (5)<br />

where k1 + k2 = 1. Let µ = (k1/µ1 + k2/µ2) −1 be the <strong>service</strong> rate. Let λ be the Poisson arrival rate, let<br />

E = λ/µ be the offered load, and let a = EB(E, S) be the load of the overflow process. The peakedness<br />

of the overflow process is [10]<br />

⎛<br />

2<br />

z = 1 − a + ⎝1 + 2µi<br />

⎞<br />

2 kj ⎠ k2 i µ<br />

· qS(µi)(IS+1 − S(µi)) −1 e T , (6)<br />

i=1<br />

ki<br />

µi + µj<br />

j=1,j=i<br />

where IS+1 is the (S + 1) × (S + 1) identity matrix, e is the 1 × (S + 1) vector (1, 1,... ,1), q is the<br />

1 × (S + 1) probability vector that solves qS(0) = q and qeT = 1, and S(s) is an (S + 1) × (S + 1)<br />

matrix computed recursively as follows:<br />

<br />

λ<br />

0(s) = ,<br />

s + λ<br />

<br />

n(s) = In+1 − 1<br />

λ Qn(s)<strong>An</strong>,n−1n−1(s)<strong>An</strong>−1,n<br />

−1 λQn(s),<br />

where Qn(s) is a diagonal (n + 1) × (n + 1) matrix<br />

⎡<br />

1<br />

⎤<br />

⎢ s + nµ1 + λ<br />

⎢<br />

Qn(s) = ⎢<br />

⎣<br />

1<br />

s + (n − 1)µ1 + µ2 + λ<br />

. ..<br />

1<br />

s + nµ2 + λ<br />

⎥ ,<br />

⎥<br />

⎦<br />

<strong>An</strong>,n−1 is a constant (n + 1) × n matrix<br />

⎡<br />

nµ1<br />

⎢ µ2 (n − 1)µ1<br />

⎢ 2µ2<br />

⎢<br />

(n − 2)µ1<br />

<strong>An</strong>,n−1 = ⎢<br />

. ..<br />

⎢<br />

⎣<br />

and <strong>An</strong>−1,n is a constant n × (n + 1) matrix<br />

⎡<br />

k1 k2<br />

⎤<br />

⎢<br />

<strong>An</strong>−1,n = ⎣<br />

. .. . ..<br />

⎥<br />

⎦ .<br />

k1 k2<br />

µi<br />

. ..<br />

(n − 1)µ2 µ1<br />

nµ2<br />

⎤<br />

⎥ ,<br />

⎥<br />


80<br />

Servers (S)<br />

0<br />

0<br />

J.F. Shortle / Performance Evaluation 57 (2004) 409–422 413<br />

Blocking < 0.01%<br />

Blocking = 0.01%<br />

Offered Load (E)<br />

Fig. 3. A contour plot of (z<strong>hyper</strong> − zexp)/zexp. The figure only shows values for which blocking at the primary station is greater<br />

than 0.01%.<br />

Fig. 3 shows the difference in peakedness z between Eq. (6) (when the <strong>service</strong> distribution is <strong>hyper</strong><strong>exponential</strong>)<br />

and Eq. (2) (when the <strong>service</strong> distribution is <strong>exponential</strong>). Specifically, the figure is a contour<br />

plot of<br />

z = z<strong>hyper</strong> − zexp<br />

,<br />

zexp<br />

where z<strong>hyper</strong> is computed using Eq. (6) and zexp is computed using Eq. (2). The <strong>hyper</strong>-<strong>exponential</strong> distribution<br />

(Eq. (5)) has parameters<br />

1<br />

1<br />

= 0.28597512, = 6.60204571, k1 = 0.88695109, (7)<br />

µ1<br />

µ2<br />

giving a mean of 1 and a standard deviation of 3. The <strong>exponential</strong> distribution has the same mean of 1.<br />

The figure also shows the contour line of 0.01% blocking (that is, where B(E, S) = 0.01%). We did not<br />

evaluate z for blocking levels less than 0.01%, since the overflow process is less relevant for such low<br />

blocking probabilities.<br />

We make several observations from the figure. First, the peakedness <strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> is<br />

always less than the peakedness <strong>with</strong> <strong>exponential</strong> <strong>service</strong>, since z < 0. Second, the gap between z<strong>hyper</strong><br />

and zexp increases <strong>with</strong> increasing S. Fixing the blocking level at 0.01%, we still see that the difference<br />

between z<strong>hyper</strong> and zexp increases moving away from the origin.<br />

One problem <strong>with</strong> the exact calculation is that it is slow when the number of servers is large. For<br />

example, on a 1 GHz PC, the time to calculate z <strong>with</strong> S = 80 servers is about 1.5 min. While this is<br />

not impossibly slow, we typically need to evaluate z at much larger values of S (several hundred); in<br />

addition, the modified ERM, which we give later, requires multiple evaluations of z. Thus, we seek a<br />

quicker method. Machihara [11] has given a quick approximation; however, it only applies for certain<br />

combinations of E and S. In this section, we give a modified approximation which works for all values.<br />

Machihara’s approximation is based on computing a lower bound zL and an upper bound zU for z.<br />

These bounds come from the following queueing systems:<br />

• Upper bound (zU): M/M/S/S → /M/∞.<br />

• Exact (z): M/H2/S/S → /H2/∞.<br />

• Lower bound (zL): M/M/S/S → /H2/∞.<br />

70<br />

-25%<br />

-20%<br />

-15%<br />

-10%


414 J.F. Shortle / Performance Evaluation 57 (2004) 409–422<br />

More specifically, the exact value z is the peakedness of the overflow process of an M/H2/S/S queue<br />

offered to an infinite trunk group (<strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> at the infinite trunk group). The upper<br />

bound zU is the peakedness of the same overflow process, but <strong>service</strong> times at both the primary and<br />

overflow stations are <strong>exponential</strong>. This is the classical overflow peakedness, so<br />

E<br />

zU = 1 − a +<br />

,<br />

S − E + a + 1<br />

(8)<br />

which is Eq. (2) and <strong>with</strong> a = EB(E, S). Empirically, zU is an upper bound for z from Fig. 3 and [11].<br />

The lower bound zL is the peakedness of the overflow process when customers at the primary station<br />

have <strong>exponential</strong> <strong>service</strong>, but customers at the overflow station have <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong>. Eckberg<br />

[4] shows that this is a lower bound. Machihara [11] gives that<br />

⎛<br />

2<br />

zL = 1 − a + ⎝1 + 2µi<br />

⎞<br />

2 kj ⎠ k2 i µ ˜gS(µi)<br />

,<br />

1 −˜gS(µi)<br />

(9)<br />

where<br />

i=1<br />

ki<br />

µi + µj<br />

j=1,j=i<br />

λ<br />

˜gn(s) =<br />

s + λ + nµ(1 −˜gn−1(s)) , n = 1, 2,... ,S, ˜g0(s) = λ<br />

s + λ .<br />

Both zL and zU can be calculated quickly. Now, there is some ρ, 0≤ ρ ≤ 1, such that<br />

z = ρzU + (1 − ρ)zL.<br />

More generally, we can regard ρ as a function of E and S and rewrite the above as<br />

ρ(E, S) = z(E, S) − zL(E, S)<br />

zU(E, S) − zL(E, S) .<br />

When S is not too large, we can calculate ρ(E, S) exactly (since we can calculate z(E, S) exactly using<br />

Eq. (6)). Fig. 4 shows a contour plot of ρ(E, S). Contours of ρ are roughly straight lines in (E, S) space.<br />

(Machihara [11] found that ρ is approximately 2/3, a constant. In fact, this is only true for certain values<br />

of E and S. InFig. 4, ρ(E, S) = 2/3 only when the blocking level B(E, S) is about 5%.)<br />

Fig. 4. A contour plot of ρ(E, S). The figure only shows values for which blocking at the primary station is greater than 0.01%.<br />

µi


J.F. Shortle / Performance Evaluation 57 (2004) 409–422 415<br />

To approximate z(E, S) when S is large, we can exactly calculate z(E, S) for small values of S and<br />

then extrapolate along these straight lines. The following algorithm does this.<br />

Algorithm 1. Given E and S (offered load and number of servers), approximate the peakedness z(E, S)<br />

of the overflow stream from an M/H2/S/S queue:<br />

1. Let s2 >s1 > 0 be two positive integers, such that we can quickly calculate the exact values z(E, s1)<br />

and z(E, s2). (In our implementation, we choose s1 = 10,s2 = 20. Evaluating z(E, s1) and z(E, s2)<br />

takes less than a second each on a 1 GHz PC.)<br />

2. Find E1,E2 such that<br />

and<br />

S − s1 = s2 − s1<br />

(E − E1), (10)<br />

E2 − E1<br />

ρ(E1,s1) = ρ(E2,s2). (11)<br />

The first equation implies that (E1,s1), (E2,s2), and (E, S) are co-linear. The second equation implies<br />

that (E1,s1) and (E2,s2) lie on the same contour of ρ. To solve both equations, we use a nested binary<br />

search:<br />

(a) Do a binary search on E2 to solve Eq. (10), where E1 is found by calling (b) as a subroutine.<br />

(b) Given E2, do a binary search on E1 to solve Eq. (11). 2<br />

3. Let ρ ∗ = ρ(E1,s1) = ρ(E2,s2) (using E1 and E2 from the previous step). From the straight-line<br />

assumption, we assume that ρ(E, S) ≈ ρ ∗ .<br />

4. Return:<br />

z = ρ ∗ zU(E, S) + (1 − ρ ∗ )zL(E, S),<br />

where zU(E, S) is given in Eq. (8) and zL(E, S) is given in Eq. (9).<br />

Since the contours in Fig. 4 are not completely straight, we can improve the approximation for ρ∗ in<br />

Step 3 using one extra point, by adding the following step to the algorithm.<br />

3 ′ . Let s3 be a positive integer greater than s2 and s1 (we choose s3 = 40); let E3 be such that (E3,s3) is<br />

co-linear <strong>with</strong> (E1,s1) and (E2,s2). Compute ρ(E3,s3) exactly. Then adjust ρ∗ as follows:<br />

ρ ∗ ← ρ ∗ + (ρ(E3,s3) − ρ ∗ E − E2<br />

) .<br />

E3 − E2<br />

This is linearly extrapolating ρ(E, S) along the line through (E1,s1), (E2,s2), and (E3,s3), based on<br />

the difference between ρ(E3,s3) and ρ(E2,s2).<br />

2 To start the binary search in (b), we choose the initial lower bound for E1 to be L = E2/2. If ρ(L, s1) >ρ(E2,s2), then this<br />

is not a valid lower bound. We divide L by 2 and repeat until ρ(L, s1) ≤ ρ(E2,s2). Similarly, to find an initial upper bound, we<br />

start <strong>with</strong> U = 2E2 and double until ρ(U, s1) ≥ ρ(E2,s2). Then, we run the binary search until the bounds differ by less than<br />

0.01. The binary search for (a) is similar. Let E ∗ be such that B(E ∗ ,s2) = B(E, S) (we expect (E2,s2) to have about the same<br />

blocking level as (E, S)). The initial lower and upper bounds for E2 are L = E ∗ /2 and U = 2E ∗ , where we may need to double<br />

or halve the values to ensure the binary search converges. Then, we run the binary search until the bounds differ by less than<br />

0.01.


416 J.F. Shortle / Performance Evaluation 57 (2004) 409–422<br />

Table 1<br />

Performance of Algorithms 1 and 1 ′<br />

E S Blocking (%) Percent error<br />

Exact peakd. Algorithm 1 (%) Algorithm 1 ′ (%) Machihara (%) Exp. (%)<br />

84.06 100 1.0 3.927 0.62 0.92 3.79 24.49<br />

131.58 150 1.0 4.832 0.85 1.00 3.03 24.77<br />

179.74 200 1.0 5.610 0.90 0.55 2.41 24.74<br />

120.64 100 20.0 3.496 −0.11 −0.13 −8.41 7.87<br />

182.98 150 20.0 3.783 −0.13 0.01 −9.58 6.78<br />

245.38 200 20.0 3.971 −0.07 0.06 −10.38 5.97<br />

Time to calculate (s)<br />

Exact peakd. Algorithm 1 Algorithm 1 ′ Machihara Exp.<br />

84.06 100 1.0 150 18 0.2 ≈0 ≈0<br />

131.58 150 1.0 711 18 0.2 ≈0 ≈0<br />

179.74 200 1.0 2222 18 0.2 ≈0 ≈0<br />

120.64 100 20.0 143 19 0.1 ≈0 ≈0<br />

182.98 150 20.0 710 19 0.1 ≈0 ≈0<br />

245.38 200 20.0 2231 19 0.1 ≈0 ≈0<br />

Table 1 shows the performance of the algorithm for several large values of E and S. For these cases,<br />

the algorithm has a relative error of less than 1%. It is also much faster than the exact calculation (over<br />

100 times faster when S = 200). The table also shows Machihara’s approximation. Although it is very<br />

quick, it is not consistently accurate. The last column shows the difference between using an <strong>exponential</strong><br />

approximation to the <strong>hyper</strong>-<strong>exponential</strong> (matching the mean and finding z using Eq. (2)) and the exact<br />

value.<br />

It is also possible to speed up Algorithm 1 if the <strong>service</strong> distribution does not change from problem<br />

to problem. In this case, we can pre-compute the values for ρ(E, S) for S = s1,s2,s3. This gives the<br />

following modification.<br />

Algorithm 1 ′ . Pre-compute ρ(E, S) for S = s1,s2,s3 and E = 1, 2,... ,250 (or some other large<br />

number). Use Algorithm 1 as described above, but use the pre-computed lookup table for all evaluations<br />

of ρ(E, S). When E is not an integer, interpolate between the pre-computed values.<br />

Table 1 shows that the modification is slightly less accurate than the original, but about 100 times faster<br />

(the table ignores the pre-computation time).<br />

4. Modified <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong><br />

The following algorithm generalizes the <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> for <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong>.<br />

Algorithm 2 (ERM <strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong>). Given: n, Si, and Ei (i = 1, 2,...n), where n is<br />

the number of primary trunk groups, Si the number of trunks in group i, and Ei the offered load to group


J.F. Shortle / Performance Evaluation 57 (2004) 409–422 417<br />

i. Determine an equivalent single trunk group system (E, S), where E is the offered load and S is the<br />

number of trunks, such that the overflow load and peakedness from this trunk group are the same as the<br />

combined overflow load and peakedness from the original n trunk groups. Assume that all <strong>service</strong> times<br />

follow a common two-term <strong>hyper</strong>-<strong>exponential</strong> distribution:<br />

1. For i = 1, 2,... ,n, compute the overflow load and peakedness:<br />

ai = EiB(Ei,Si), zi = z(Ei,Si),<br />

where z(Ei,Si) can be evaluated exactly using Eq. (6) or approximately using Algorithm 1, depending<br />

on the size of Si.<br />

2. Compute the load a and peakedness z of the combined overflow stream using Eq. (3).<br />

3. Find (E, S) such that<br />

z(E, S) ≈ z, EB(E, S) ≈ a,<br />

where z(E, S) is computed using Algorithm 1:<br />

(a) For an initial guess for (E, S), use the Rapp approximation (e.g., [13;16, p. 354]). The Rapp approximation<br />

solves Step 3 in the classical ERM, when <strong>service</strong> times are <strong>exponential</strong>. Specifically,<br />

let:<br />

Ê = az + 3z(z − 1),<br />

<br />

Ê(a + z)<br />

S =<br />

− a − 1 . (12)<br />

a + z − 1<br />

Eq. (12) is obtained by solving Eq. (2) for S and truncating to get an integer. To keep equality in<br />

Eq. (2) (since S was truncated), let<br />

(z − 1 + a)(S + a + 1)<br />

E = . (13)<br />

a + z<br />

This approximation works well in the classical ERM so long as S ≤ E (e.g., [16]). However, we<br />

need to do a search on S in the <strong>hyper</strong>-<strong>exponential</strong> case.<br />

(b) Decrement S by one unit. Recalculate E using Eq. (13). Evaluate z(E, S) using Algorithm 1.<br />

(c) Repeat the previous step until z(E, S) = z (or until two consecutive estimates for z(E, S) lie on<br />

either side of z).<br />

4. Return (E, S), the single trunk group system approximately equivalent to the original system.<br />

Then, we estimate the blocking probability on K overflow trunks as<br />

B(E, K + S)<br />

.<br />

B(E, S)<br />

Fig. 5 shows a sample application of Algorithm 2. The purpose is to compare the performance of a system<br />

<strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> to a similar system <strong>with</strong> <strong>exponential</strong> <strong>service</strong>. Specifically, the figure is<br />

a contour plot of b = (b<strong>hyper</strong> − bexp)/bexp, where b<strong>hyper</strong> is the blocking probability at an overflow<br />

trunk group, where all <strong>service</strong> times are <strong>hyper</strong>-<strong>exponential</strong> (this is computed using Algorithm 2); bexp


418 J.F. Shortle / Performance Evaluation 57 (2004) 409–422<br />

Fig. 5. A contour plot of (b<strong>hyper</strong> − bexp)/bexp—that is, a comparison of the blocking probabilities using <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong><br />

and <strong>exponential</strong> <strong>service</strong>.<br />

is the blocking probability at the same overflow trunk group, where all <strong>service</strong> times are <strong>exponential</strong>,<br />

<strong>with</strong> matching mean (this is computed using the standard ERM as in [16, Chapter 7], using the Rapp<br />

approximation).<br />

The figure specifically considers the following example: there are n = 10 primary trunk groups. Each<br />

trunk group has S servers (the y-axis) and the offered load to each trunk group is E (the x-axis). For a given<br />

(E, S) pair, we choose the number K of overflow trunks to be such that bexp is about 1% (specifically,<br />

as high as possible but less than 1%). The figure only shows results when the Rapp approximation is<br />

accurate (the upper left hand corner is omitted, where blocking probabilities are very low). We use the<br />

<strong>hyper</strong>-<strong>exponential</strong> distribution parameters in Eq. (7).<br />

The figure shows that as the number of primary servers S increases, the difference between b<strong>hyper</strong> and<br />

bexp also increases. In other words, for systems <strong>with</strong> lower blocking, the <strong>hyper</strong>-<strong>exponential</strong> distribution<br />

makes more of a difference in system performance, compared <strong>with</strong> the classical model.<br />

5. Heavy-tailed distributions<br />

In this section, we compare systems <strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> to those <strong>with</strong> heavy-tailed <strong>service</strong>.<br />

Heavy-tailed distributions arise frequently in modern telecommunications networks—particularly,<br />

those associated <strong>with</strong> Internet traffic. For example, file sizes on the World Wide Web [3], dial-up Internet<br />

call lengths [12], and TCP connection times have all been modeled using heavy-tailed distributions<br />

(for a survey, see [6]). These distributions have tails which decay more slowly than any <strong>exponential</strong><br />

function (e ax P(X>x)→∞,a > 0). Three common heavy-tailed distributions are the Weibull (<strong>with</strong> a<br />

shape parameter less than 1), the lognormal, and the Pareto.<br />

To compare heavy-tailed distributions <strong>with</strong> <strong>hyper</strong>-<strong>exponential</strong> distributions, we match the first three<br />

moments using the parameters µ1, µ2, and k1 in Eq. (5). (It is not always possible to create this match,<br />

since the moment-matching equations may give values for k1 which lie outside of [0, 1].) We consider<br />

the following distributions:


2.6<br />

2.5<br />

2.4<br />

2.3<br />

2.2<br />

2.1<br />

2<br />

J.F. Shortle / Performance Evaluation 57 (2004) 409–422 419<br />

Weibull Lognormal Pareto<br />

A. Hyper Apx (Theory)<br />

B. Hyper Apx (Sim)<br />

C. Original Dist (Sim)<br />

Fig. 6. Comparison of peakedness of overflow process of M/G/S/S and M/H2/S/S queues, where H2 is a <strong>hyper</strong>-<strong>exponential</strong><br />

fittoG. The 95% confidence intervals (not shown) are all <strong>with</strong>in ±0.02 of the mean values shown.<br />

• Weibull<br />

G c (x) = exp<br />

<br />

x<br />

α<br />

− , α = 0.4113, β = 0.3244.<br />

β<br />

• Lognormal<br />

2 <br />

−( ln x − µ)<br />

g(x) = exp<br />

/(x √ 2πσ2 ), µ =−1.1513, σ = 1.5174.<br />

• Pareto<br />

2σ 2<br />

G c (x) = (1 + x/k) −α , α = 2.25, k = 1.25.<br />

All distributions have the same first two moments: E(X) = 1 and E(X 2 ) = 10 (which gives a<br />

coefficient of variation of 3—typical of dial-up Internet call lengths [12]). The third moments E(X 3 ) are:<br />

312.5 (Weibull), 1000 (lognormal), and ∞ (Pareto). Table 2 gives the two-term <strong>hyper</strong>-<strong>exponential</strong> fit to<br />

these distributions. (It is not technically possible to create a moment-matched fittothis Pareto distribution,<br />

since it has an infinite third moment. Instead, we can create a pseudo-fit by assuming the third moment<br />

is some large number—here, 1,000,000.)<br />

Fig. 6 compares the peakedness of the overflow traffic from these <strong>service</strong> distributions. Specifically,<br />

the figure shows the peakedness z(E, S) (where E = 15 and S = 20) calculated three different ways for<br />

each distribution:<br />

A. Using the <strong>hyper</strong>-<strong>exponential</strong> fitinTable 2 and computing the overflow peakedness (from an M/H2/S/S<br />

queue) exactly using Eq. (6).<br />

Table 2<br />

Two-term <strong>hyper</strong>-<strong>exponential</strong> fit to three distributions<br />

1/µ1 1/µ2 k1<br />

Weibull 0.60649922 11.16516406 0.962731956<br />

Lognormal 0.89615921 39.52050746 0.997311520<br />

Pareto 0.99990399 41664.41676 0.999999998


420 J.F. Shortle / Performance Evaluation 57 (2004) 409–422<br />

5.5%<br />

5.0%<br />

4.5%<br />

4.0%<br />

3.5%<br />

3.0%<br />

Weibull Lognormal Pareto Exponential<br />

Classical ERM<br />

Prediction<br />

A. Hyper Apx (ERM)<br />

B. Hyper Apx (Sim)<br />

C. Original Dist (Sim)<br />

Fig. 7. Comparison of blocking probabilities on overflow trunks.<br />

B. Same as above, but estimating the overflow peakedness using simulation.<br />

C. Using the original distribution and estimating the overflow peakedness (from an M/G/S/S queue)<br />

using simulation.<br />

The simulation involved 10 replications of about 1.5 million arrivals each, <strong>with</strong> a warm-up period of<br />

about 15,000 arrivals each.<br />

Comparing A and B in Fig. 6 shows that the exact and simulated values for an M/H2/S/S queue are<br />

almost indistinguishable. In other words, simulation validates Eq. (6) from [10]. Comparing B and C,<br />

the Weibull and its <strong>hyper</strong>-<strong>exponential</strong> fit yield nearly the same overflow peakedness. However, there is<br />

substantial deviation for the lognormal and Pareto. This is most likely because the Weibull distribution<br />

is the “least heavy-tailed” of the three.<br />

Fig. 7 compares the blocking probabilities from these <strong>service</strong> distributions. We consider the following<br />

example: there are n = 10 primary trunk groups. Each trunk group has S = 40 servers; the offered load to<br />

each trunk group is E = 33. (This gives a 3.49% blocking probability on each trunk group.) The number<br />

of common overflow trunks is K = 23. Fig. 7 shows the blocking probability at these overflow trunks<br />

calculated three ways (similar to Fig. 6): (A) using the <strong>hyper</strong>-<strong>exponential</strong> fit and calculating the blocking<br />

probability using the modified ERM in Section 4, (B) using the <strong>hyper</strong>-<strong>exponential</strong> fit, but estimating the<br />

blocking probability using simulation, and (C) using the original <strong>service</strong> distribution and simulation.<br />

(For <strong>exponential</strong> <strong>service</strong>, the <strong>hyper</strong>-<strong>exponential</strong> “fit” in A and B is just the <strong>exponential</strong> distribution itself.<br />

Thus, case A corresponds to the blocking probability predicted by the classical ERM.) For each case, the<br />

simulation involved about 49.5 million total arrivals <strong>with</strong> a warm-up period of about 100,000 arrivals.<br />

In the figure, we observe the following: (1) The modified ERM gives a better prediction of blocking than<br />

the original ERM. In other words, if we regard case C as “exact,” then A is closer to C than the original<br />

ERM estimate (dashed line: case A, <strong>exponential</strong> <strong>service</strong>). (2) For all distributions, the modified ERM (case<br />

A) under-estimates the blocking probability observed in the analogous <strong>hyper</strong>-<strong>exponential</strong> simulation (case<br />

B). (3) The trend for all cases (A–C) is that higher peakedness yields higher blocking. That is, the Weibull<br />

distribution (more specifically, its <strong>hyper</strong>-<strong>exponential</strong> fit) has the least overflow peakedness among the<br />

distributions, followed by the lognormal, the Pareto, and then the <strong>exponential</strong>. The blocking probabilities<br />

in all cases increase from left to right in the figure. In particular, <strong>exponential</strong> <strong>service</strong> yields the worst<br />

blocking among the distributions.


J.F. Shortle / Performance Evaluation 57 (2004) 409–422 421<br />

One possible explanation, comparing the Weibull and <strong>exponential</strong> cases, is the following: the Weibull<br />

distribution is more volatile than the <strong>exponential</strong> distribution (<strong>with</strong> the same mean). That is, relatively<br />

speaking, the Weibull case has many very small <strong>service</strong> times and, additionally, a few very large <strong>service</strong><br />

times. Hence, when all servers are busy, there is a high chance that a server will become free, since many<br />

of the <strong>service</strong> times will finish soon. Hence, the overflow process is less bursty in the Weibull case than<br />

in the <strong>exponential</strong> case. (This argument is not as strong comparing the three heavy-tailed distributions<br />

<strong>with</strong> each other, since they all have the same first and second moments. This is perhaps why the Pareto<br />

case has higher blocking than the Weibull case, even though the Pareto has a larger third moment.)<br />

6. Conclusions<br />

We developed an efficient algorithm to estimate the peakedness of an overflow process of an M/H2/S/S<br />

queue (<strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong>) when S is large. Numerical experiments indicated that the method is<br />

accurate at least up to 200 servers. We then developed a modified ERM based on this approximation. In<br />

all numerical experiments (Figs. 3 and 5), <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> changed the system metrics more for<br />

larger systems (more servers). Somewhat surprising was that <strong>hyper</strong>-<strong>exponential</strong> distributions exhibited<br />

less peakedness and blocking than corresponding queues <strong>with</strong> <strong>exponential</strong> <strong>service</strong>. Generally, we expect<br />

<strong>service</strong> <strong>with</strong> higher variance to yield worse quality-of-<strong>service</strong> metrics.<br />

We also conducted simulation experiments to compare the <strong>hyper</strong>-<strong>exponential</strong> <strong>service</strong> model <strong>with</strong><br />

heavy-tailed <strong>service</strong> models. While the modified ERM was a better predictor than the classical ERM<br />

for these experiments, the modified ERM does not appear to be a precise predictor for these heavy-tailed<br />

systems. One exception is the peakedness calculation where the <strong>hyper</strong>-<strong>exponential</strong> and Weibull cases<br />

matched very closely.<br />

Acknowledgements<br />

This work was partially funded by the ORAU Ralph E. Powe Junior Faculty Enhancement Award. The<br />

author would like to express his thanks to ORAU for their support and to the anonymous reviewers for<br />

their helpful comments.<br />

References<br />

[1] S. Borst, R.J. Boucherie, O.J. Boxma, ERMR: a generalised <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> for overflow systems <strong>with</strong><br />

repacking, in: P. Key, D. Smith (Eds.), ITC 16, Elsevier, Amsterdam, 1999, pp. 313–323.<br />

[2] G. Bretschneider, Die Berechnung von Leitungsgruppen für überfließenden Verkehr in Fernsprechwählanlagen,<br />

Nachrichtentechnische Zeitschrift NTZ 9 (1956) 533–540.<br />

[3] M.E. Crovella, M.S. Taqqu, A. Bestavros, Heavy-tailed probability distributions in the World Wide Web, in: R.J. Adler,<br />

R.E. Feldman, M.S. Taqqu (Eds.), A Practical Guide to Heavy Tails: Statistical Techniques and Applications, Birkhäuser,<br />

Basel, 1998, pp. 3–25.<br />

[4] A.E. Eckberg, Generalized peakedness of teletraffic process, in: ITC 10, Session 4.4B, Paper 3, 1983.<br />

[5] M.J. Fischer, D.A. Garbin, G.W. Swinsky, <strong>An</strong> enhanced extension to Wilkinson’s equivalent random technique <strong>with</strong><br />

applications to traffic engineering, IEEE Trans. Commun. 32 (1) (1984) 2–4.<br />

[6] T.B. Fowler, A short tutorial on fractals and Internet traffic, The Telecommunications Review 10 (1999) 1–14.<br />

http://www.mitretek.org/home.nsf/telecommunications/telecommunicationsreview.


422 J.F. Shortle / Performance Evaluation 57 (2004) 409–422<br />

[7] A.A. Fredericks, Impact of holding time distributions on parcel blocking in multi-class networks <strong>with</strong> application to Internet<br />

traffic on PSTNs, in: P. Key, D. Smith (Eds.), ITC 16, Elsevier, Amsterdam, 1999, pp. 877–886.<br />

[8] J.M. Holtzman, The accuracy of the <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> <strong>with</strong> renewal inputs, Bell Syst. Tech. J. 52 (1973) 1673–<br />

1679.<br />

[9] J. Labetoulle, Mixing of traffics on a trunk group: calculations of blocking probabilities using an extension of the ERT<br />

method, in: ITC 11, Session 5.2B, Paper 1, 1985.<br />

[10] F. Machihara, <strong>An</strong> infinitely-many server queue having Markov renewal arrivals and <strong>hyper</strong><strong>exponential</strong> <strong>service</strong> times, J. Oper.<br />

Res. Soc. Jpn. 29 (1986) 338–350.<br />

[11] F. Machihara, <strong>An</strong> extended <strong>Equivalent</strong> <strong>Random</strong> <strong>Method</strong> for engineering networks <strong>with</strong> heterogeneous inputs, Oper. Res.<br />

87 (1987) 759–771.<br />

[12] M. Naldi, Measurement-based modelling of Internet dial-up access connections, Comput. Networks 31 (1999) 2381–2390.<br />

[13] Y. Rapp, Planning of junction network in a multiexchange area, Ericsson Technics 20 (1) (1964) 77–130.<br />

[14] R.G. Schehrer, A two moments method for overflow systems <strong>with</strong> different mean holding times, in: P. Key, D. Smith (Eds.),<br />

ITC 15, Elsevier, Amsterdam, 1997, pp. 1303–1314.<br />

[15] R.I. Wilkinson, Theories for toll traffic engineering in the USA, Bell Syst. Tech. J. 35 (1956) 421–514.<br />

[16] R.W. Wolff, Stochastic Modeling and the Theory of Queues, Prentice-Hall, Englewood Cliffs, NJ, 1989.<br />

John F. Shortle was born in Santa Barbara, CA. He received a B.S. in mathematics from Harvey Mudd<br />

College in 1992. He received a Ph.D. and M.S. in operations research from UC Berkeley in 1996. He<br />

worked for 3 years at US WEST Advanced Technologies developing stochastic, queueing, and simulation<br />

models to optimize networks and operations. In 2000, he won the INFORMS Daniel H. Wagner Prize for<br />

excellence in Operations Research Practice. He is currently an assistant professor of Systems Engineering<br />

at George Mason University. His research interests include simulation and queueing applications in<br />

telecommunications and air transportation.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!