An efficient model for dimensioning an ATA-based ...

5 downloads 1586 Views 470KB Size Report
May 8, 2012 - Advanced Technology Attachment (ATA) provides a hard disk interface .... are homogeneous with mean failure rate n and mean repair rate m.
Computers and Electrical Engineering 38 (2012) 1388–1398

Contents lists available at SciVerse ScienceDirect

Computers and Electrical Engineering journal homepage: www.elsevier.com/locate/compeleceng

An efficient model for dimensioning an ATA-based virtual storage system q Tien Van Do a,⇑, Hyotaek Lim b, Ram Chakka c a b c

Department of Telecommunications, Budapest University of Technology and Economics, H-1117, Magyar tudósok körútja 2, Budapest, Hungary Department of Ubiquitous IT, Graduate School of Design and IT, Dongseo University, Sasang-gu, Busan 617-716, South Korea Meerut Institute of Engineering and Technology (MIET), Meerut 250005, India

a r t i c l e

i n f o

Article history: Received 6 June 2011 Received in revised form 3 April 2012 Accepted 3 April 2012 Available online 8 May 2012

a b s t r a c t Internet Advanced Technology Attachment (iATA) is a block-level storage network protocol used by iATA servers to offer a storage solution for clients. With iATA, mobile users can access their valuable data through the network from anywhere and at anytime as if the storage device is attached locally. In the iATA architecture, iATA servers and iATA clients exchange necessary protocol messages over IP networks. This paper proposes an analytical queuing model based on quasi-birth-and-death (QBD) processes to evaluate the performability of an iATA server in a network environment. An exact solution method is developed and presented, however it has state space explosion problem. Therefore, we present a novel computational algorithm to approximate the performance measures. Comparison with numerical results obtained by the exact solution shows that the proposed algorithm is both accurate and fast. Ó 2012 Elsevier Ltd. All rights reserved.

1. Introduction Storage limitations in mobile appliances have become a significant problem of research interest due to the rapid growth of data centric applications over IP. Block-level I/O protocols are preferred over file-level I/O protocols from the aspects of low latency, high performance and low overheads. Internet Small Computer System Interface (iSCSI) are a popular blocklevel I/O protocols that are deployed in Storage Area Networks (SAN) [1–6]. iSCSI protocols were developed by the Internet Engineering Task Force (IETF) to transport Small Computer System Interface (SCSI) commands, status, data over networks using the TCP/IP protocol [1–6]. Advanced Technology Attachment (ATA) provides a hard disk interface for storage solutions in the Small Office and Home Office (SoHo) environment due to its low cost and technological simplicity. ATA over Ethernet (AoE) is another well known storage interface, however this can be used only to access disks in local area network environments based on Ethernet. There have been some successful attempts to enable block-level ATA commands to be sent over the Internet. Towards the above, a new block-level storage network protocol, iATA (Internet Advanced Technology Attachment) has been proposed as a transport protocol for carrying ATA block-level access protocol over the ubiquitous TCP/IP network. With iATA, mobile users can access their valuable data through the network from anywhere and at anytime as if the storage device is attached locally [1–6]. The design of iATA and the proof of concept (the iATA server) were dealt in detail in [1–6]. Recently, there are several further contributions [7,8] that emphasize the importance and utility of the application of iATA for mobile users. To the knowledge of the authors, there have not been any analytical models with computational algorithms for the performance of iATA operation. Therefore, there is a need to derive a model and viable computational algorithms to evaluate the

q

Reviews processed and proposed for publication to Editor-in-Chief by Associate Editor Dr. Yixin Diao.

⇑ Corresponding author.

E-mail addresses: [email protected] (T.V. Do), [email protected] (R. Chakka). 0045-7906/$ - see front matter Ó 2012 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.compeleceng.2012.04.002

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

1389

performance of iATA. Such a model and its viable computational algorithms are much needed for the design and quick dimensioning of efficient iATA operations. This paper proposes a new analytical queuing model to evaluate the performance of the iATA protocol in a network environment. We use a three-dimensional Markov process to characterize the interaction between iATA clients and the iATA server. In this framework, to compute the stationary distribution of the system, we apply the spectral expansion method (SEM) [9,10]. Note that SEM has evolved to be a popular technique useful for the performance and dependability modeling of many discrete event systems. Efficient solution algorithms for spectral expansion were developed in early nineties [9–11]. Furthermore, the spectral expansion method is proved to be a mature technique for the performance analysis of a wide variety of problems [9,12–27] and can be used for network dimensioning purposes [28,29]. Alternatively, we could use the matrix-geometric method (MGM) [30] as well. The above mentioned methods are exact. However, they fail to compute results in a reasonable time when the state space of the system is large. Also, for large system dimensions, both SEM and MGM face the problem of numerical instability [9]. In order to cope with this state space explosion, we also develop a new and computationally efficient approximate solution algorithm. Comparisons of this approximation solution with numerical results obtained by the exact solution (using SEM or MGM) show that the proposed algorithm is both reasonably accurate and fast. Therefore, it can be efficiently used for dimensioning purpose. It is also demonstrated that the approximate algorithm is numerically stable. The rest of this paper is organized as follows. In Section 2 we provide a brief overview of the operation of the iATA servers. In Section 3 we develop a performance model of the iATA servers which is new. SEM is used to solve this performance model exactly. In Section 4 we propose an approximate computationally efficient solution algorithm to evaluate the performance of iATA servers and illustrate its efficacy by comparing the numerical results with those of the exact solution. Finally, the paper is concluded in Section 5.

2. Brief description of iATA Internet Advanced Technology Attachment (iATA) is a block-level protocol that encapsulates ATA commands, status and data into TCP/IP packets, and thus leverages the investment of the existing TCP/IP network. The client-server architecture is incorporated into iATA protocol design. An iATA server exports its ATA devices to client by making them available on the TCP/IP network, while the iATA client is able to access those exported ATA devices by sending request commands to the server. As a result, this has formed a many-to-many relationships between iATA client entities and the specific iATA server [1,2,5,6]. The iATA server program [1,2] is built in the Linux environment, which acts as an intermediate bridge between the network interface and the ATA hard disk devices. It is implemented by using multi-processes approach, where multiple clients are allowed to perform both read and write operations on different independent exported hard disks (from the iATA server) simultaneously. Nevertheless, multiple clients are allowed to perform only a read operation on a single exported hard disk (from a server) simultaneously, but not the write operation simultaneously. In general, the iATA server program is endowed with the functionalities and responsibilities to listen and accept client connection, receive and process iATA request PDU (Protocol Data Unit), transmit decapsulated ATA commands and data to ATA devices for execution, generate an iATA response PDU and a reply to the client. Fig. 1 depicts the structure of the iATA server program [1,2]. The program is firstly initiated to listening on a particular port. When there is an incoming client connection request, the iATA server forks a child process to handle the session. The connection and session module is used to handle each client session independently, as well as to maintain the connection state.

Fig. 1. The structure of iATA server program.

1390

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

Once the connection is established successfully, it is ready to receive the iATA request PDU from the client. The request packet routed from TCP/IP network is retrieved to the iATA server from Ethernet device, using network I/O facility provided by Linux system calls. ATA commands and data that are encapsulated in iATA request PDU are subsequently extracted and sent to the underlying ATA devices through device management module and ATA I/O interface. A locking mechanism is added in this module to avoid concurrency access which was mentioned previously. Each ATA device can only handle a maximum of one write request at a time. After the execution of ATA commands and data on ATA device, iATA server collects the status and data, encapsulates them into a new iATA response PDU and transmits back to the client in a reverse manner [1,2].

3. An analytical model and solution 3.1. An analytical model The system and the interaction between iATA clients and the specific iATA server is modeled as an open queuing network with two stages. The first stage models the contention in the specific wireless Access Point (AP) of the IP network (Fig. 2). The second stage stands for the contention for the threads in the real iATA server. We assume that the second stage has a maximum of K servers in the queuing model, corresponding to the maximum K operative threads of the iATA server. Furthermore, the second stage also includes a buffer of size b to store requests when all available threads are busy. Each incoming request from clients will be served by one iATA server-thread. Assume that requests from clients attached to the specific AP arrive according to Poisson process with a mean rate of r1. Additional requests from outside the specified AP are also allowed. Let r2 be the arrival rate (the inter-arrival times are exponentially distributed) of these additional requests from outside of the specified AP. The service times of a request in stages 1 and 2 are exponentially distributed with parameters (service rates) l1 and l2, respectively. In order to take into account the loss of requests due to the unreliable network environment (caused by packet losses, outage/breakdowns of network devices), jobs departing from the second stage are assumed to leave the system with probability 1  h2, and request service again from the first stage (i.e., fed back to the first stage) with probability h2. Jobs departing from the first stage leave the system with probability h1 and request service from stage 2 with probability 1  h1. The queuing capacity of the first stage is L. Let b denote the size of the buffer that contains the requests waiting for service (not those already in service) at the second stage. Software failures are possible in the iATA host machine. To model the software failures in the iATA host machine, we assume that threads in the second stage are homogeneous with mean failure rate n and mean repair rate m. Note that the approach presented here can be also extended to handle other cases in which a specified mechanism is applied to control the number of threads in the iATA server. An important example of such control mechanisms can be found in the operation of Apache server [22,31]. The queuing capacity of the second stage is b + k when there are k operative servers (0 6 k 6 K), the latter representing k operative threads. One job will be lost or removed from the system if a server fails and a job is being served by a just-failed server. The system can be described by the Markov process X3D = {I2(t), J(t), P(t); t P 0}, where I2(t),J(t),P(t) represent the number of jobs in stage 2, the number of jobs in stage 1 and the number of operative (non-failed) servers in stage 2 at time instant t, S S S respectively. Thus the state space of X3D is (0, . . ., b)  (0, . . ., L)  (0) (0, . . ., b + 1)  (0, . . ., L)  (1) . . . (0, . . ., b + K)  (0, . . ., L)  (K). If the two state variables (I2(t), P(t)) are lexicographically sorted to form a single variable I(t) as illustrated in Table 1, the Markov process X3D can be described by only two variables {I(t), J(t), t P 0}. Note that I(t) ranges from 1 to P N ¼ K  b þ 1 þ Kl¼1 l þ b þ K ¼ 12 ð1 þ KÞð2 þ 2b þ KÞ. Let us define the following functions based on Table 1. If I(t) = i, then we can write I2 ðtÞ ¼ fI2 ðiÞ ¼ fI2 ðIðtÞÞ; PðtÞ ¼ fP ðiÞ ¼ fP ðIðtÞÞ. It can be observed that the evolution of X3D is driven by the following transitions.

Fig. 2. A typical iATA scenario.

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

1391

Table 1 Ordering of the phase variable I(t). I(t)

(I2(t), P(t))

1 2 .. . b+1 b+2 .. . 2b + 3 .. .

PK

(0,0) (1,0) .. . (b,0) (0,1) .. . (b + 1,1) .. . (0,K)

PK

.. . (b + K, K)

K bþ1þ .. . K bþ1þ

l¼1 l

l¼1 l

þbþK

(a) Aj(i,l) denotes a transition rate from state (i,j) to state (l,j) (1 6 i, l 6 N; j = 0,1,. . .). Note that Aj(i,l) does not depend on j, hence

Aj ði; lÞ ¼ Aði; lÞ ¼

8 r2 > > > > > > > > > > minðfP ðiÞ; fI2 ðiÞÞl2 ð1  h2 Þ > > > > > > > > > > > < maxðfP ðiÞ  fI2 ðiÞ; 0Þn > > > minðfP ðiÞ; fI2 ðiÞÞn > > > > > > > > > > > > > ðK  kÞm > > > > > : 0

if f P ðiÞ ¼ fP ðlÞ and f I2 ðlÞ ¼ fI2 ðiÞ þ 1; if f P ðiÞ ¼ fP ðlÞ and f I2 ðlÞ ¼ fI2 ðiÞ  1; if f P ðiÞ ¼ fP ðlÞ þ 1 and f I2 ðiÞ ¼ fI2 ðlÞ;

:

if f P ðiÞ ¼ fP ðlÞ þ 1 and f I2 ðiÞ ¼ fI2 ðlÞ þ 1; if f P ðlÞ ¼ fP ðiÞ þ 1 and f I2 ðiÞ ¼ fI2 ðlÞ; otherwise:

(b) Bj(i,l) represents one step upward transition rate from state (i,j) to state (l, j + 1) (1 6 i, k 6 N; j = 0,1,. . .). Note that Bj(I,k) does not depend on j, hence

Bj ði; lÞ ¼ Bði; lÞ ¼

8 minðfP ðiÞ; fI2 ðiÞÞl2 h2 > > >
r1 > > : 0

if i ¼ l ¼ 1; . . . ; N; otherwise:

and f I2 ðiÞ ¼ fI2 ðlÞ þ 1

(c) Cj(i, k) is the transition rate from state (i, j) to state (k, j  1) (1 6 i, k 6 N; j = 1,. . .). Note that Cj(i,k) does not depend on j, hence let

8 l1 h1 > > > < l ð1  h Þ 1 1 C j ði; lÞ ¼ Cði; lÞ ¼ > > > : 0

l ¼ i; if f I2 ðlÞ ¼ fI2 ðiÞ þ 1 and f P ðiÞ ¼ fP ðlÞ otherwise:

Let DA, DB and DC be diagonal matrices. The diagonal elements of DA, DB and DC are the sum of the elements in the corresponding rows of A, B and C, respectively. The infinitesimal generator matrix of X3D can be written as follows:

2

3

A00

Q0

0

...

...

...

...

6Q 6 2 6 6 0 6 6 0 6 6 6 .. 4 .

Q1 Q2

Q0 Q1

0 Q0

... 0

... ...

0 .. .

Q2 ...

Q1 ...

Q0 ...

0 .. .

... 7 7 7 ... 7 7 ; ... 7 7 7 .. 7 . 5

...

...

...

...

...

Q2

ALL

where A00 = A  DA  DB, Q0 = B, Q1 = A  DA  DB  DC, ALL = A  DA  DC and Q2 = C.

ð1Þ

1392

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

When the Markov process is irredicible and the corresponding balance equations of the state probabilities have a unique normalizeable solution, we say the process is ergodic and there exists a steady state for that process. The objective of this analysis is to determine the steady state probability pi,j of the state (i,j) in terms of the known parameters of the system. pi,j is defined as:

pi;j ¼ limPðIðtÞ ¼ i; JðtÞ ¼ jÞ; i ¼ 1; . . . ; N; j ¼ 0; 1; . . . ; L:

ð2Þ

t!1

All the states in a row of the lattice Markov process have the same value j for the r.v. J(t). Similarly, any column consists of states with same i. Here, it is mathematically convenient to define the row vectors vj as,

v j ¼ ðp0;j ; pi;j ; . . . ; pN;j Þ;

j ¼ 0; 1; . . . ; L:

ð3Þ

Thus, the elements of vj are the probabilities of all states in a row, where J = j. In order to solve for the probability distribution {pi,j}, it is necessary to solve the balance equations. It is mathematically more elegant to work with vectors vj compared to pi,j. The balance equations can be rewritten as

v 0 A00 þ v 1 Q 2 ¼ 0; v j Q 0 þ v jþ1 Q 1 þ v jþ2 Q 2 ¼ 0; v L1 Q 0 þ v L ALL ¼ 0:

ð4Þ j ¼ 0; 1; . . . ; L  1:

ð5Þ ð6Þ

We have another equation L X

v j e ¼ 1;

ð7Þ

j¼0

where e is the column vector of N elements each of which is equal to 1. 3.2. Solution based on the spectral expansion method Eq. (5) is a homogeneous vector difference equation of order 2, with constant coefficients. Therefore,

vj ¼

N N X X ak wk ajk þ bk /k bLj k ; k¼1

0 6 j 6 L;

ð8Þ

k¼1

where (ak,wk), k = 1, . . ., N are the eigenvalue-eigenvector pairs (we have to choose N eigenvalues of the least absolute values) of the characteristic matrix polynomial associated with (5)

QðaÞ ¼ Q 0 þ Q 1 a þ Q 2 a2 ;

ð9Þ

and (bk,/k), k = 1, . . ., N are the eigenvalue-eigenvector pairs (we have to choose N eigenvalues of the least absolute values) of the matrix polynomial,

e ðbÞ ¼ Q þ Q b þ Q b2 : Q 2 1 0

ð10Þ

Now it remains to determine the constants ak and bk, k = 1, . . ., N, that are still unknown, to complete the solution. To get these unknowns, we have Eqs. (4) and (6). This is a set of 2N linear equations. However 2N  1 of these equations are linearly

Computational Time (s)

100000

K=2 K=5

10000

1000

100

10

10

15

20

25

b Fig. 3. Computational time of the exact method.

30

1393

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

MQL

10

1

σ2=0.0, Exact σ2=0.0, Appr. σ2=1.0, Exact σ2=1.0, Appr.

0.1

1

1.5

2

2.5

3

3.5

4

σ1

MQL

1

0.1

σ2=0.0, Exact σ2=0.0, Appr. σ2=1.0, Exact σ2=1.0, Appr.

0.01 1

1.5

2

2.5

3

3.5

4

σ1

Fig. 4. Comparison between exact and approximation results (K = 2, b = 14, L = 1000, l1 = 5, l2 = 6, n = 0.001, m = 0.5, h1 = 0.6, h2 = 0.2); MQL: mean queue length.

Computational Time (s)

1000

100

10

1

Proposed setting 1 setting 2

0.1 20

30

40

50

60

70

80

90

100

K Fig. 5. Comparison of different settings of k1 (Proposed: k1 = (r1 + r2h2)/(1  h2 + h1 h2); setting 1: k1 = r1, setting 2: k1 = r1 + r2h2).

independent, since the generator matrix of the Markov process is singular. On the other hand, an additional independent equation is provided by Eq. (7). Hence, the number of independent linear equations is 2N, which are enough to find the coefficients. Alternatively, we can use the matrix-geometric method to compute the stationary distribution as well. It is shown by [19,32] that both the methods (the SE and the matrix-geometric method) have the same computational complexity.

1394

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

10000 K=2, New method K=2, Spectral Expansion

Computational Time (s)

1000 100 10 1 0.1 0.01

10

20

15

30

25

b

100000 K=5, New method K=5, Spectral Expansion

Computational Time (s)

10000 1000 100 10 1 0.1

10

15

20

25

30

b

Fig. 6. Comparison between the proposed approximate algorithm and the spectral expansion method.

Computational Time (s)

100

10

1

0.1

b=2 b=5 b=10 b=20

20

30

40

50

60

70

80

90

100

K Fig. 7. Computational time of the new approximation.

4. A simple, fast, numerically stable approximate solution algorithm and numerical results The spectral expansion method presented in Section 3.2 requires the computations (e.g., matrix inversion) with matrices of size N  N and the solution of 2N linear equations. Thus, the computational complexity of the spectral expansion is of O(N3) (this is explained in [9,10] in detail, also see [33] for the analysis of the computational complexity of matrix inversions and solving linear equations), which depends on K and b because of N ¼ 12 ð1 þ KÞð2 þ 2b þ KÞ.

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

1395

In Fig. 3, we plot the computational time vs K and b for the stationary distribution of QBD process X3D using parameters

l1 = 5, l2 = 6, n = 0.001, m = 0.5, h1 = 0.6, h2 = 0.2, L = 1000, r1 = 3.0 and r2 = 0.0. The computational procedure is implemented in Mathematica and performed on a machine with an Intel Xeon E5410 2.33 GHz processor. It is observed the computational time drastically increases as b and K increase. Therefore, a faster computational method is needed. In what follows, we present a new computational method based on the flow conservation and the decomposition of the network into two single queues. Let k1 be the total arrival rate of jobs at stage 1, k2 denote the total arrival rate of jobs at stage 2, p1,loss be the loss probability at stage 1, and p2,loss denote the loss probability at stage 2. The flow conservation laws hold as follows.

k2 ¼ k1 ð1  p1;loss Þð1  h1 Þ þ r2 k1 ¼ k2 ð1  p2;loss Þh2 þ r1 :

ð11Þ

A simple approximate algorithm is derived based on the flow conservation and the decomposition of the network into two single queues (see Algorithm 1) Algorithm 1. The proposed algorithm 1: Initialize k1 2:  = 1010 3: repeat 4: Calculate the loss probability (p1,loss) of stage 1 the M/M/1/L queue (the average queue length can also be computed), 5: k2 = k1(1  p1,loss)(1  h1) + r2 6: Solve the M/M/K queue with breakdowns and repairs, and a buffer of size b (calculate the loss probability and queue length based on Appendix A), 7: kprev = k1 8: k1 = k2(1  p2,loss)h2 + r1 9: until jk1  kprevj < 

In Fig. 4, we report the comparison of the mean queue lengths obtained with the exact method and the results calculated with the approximation for K = 2. The maximum discrepancy is less than 3% only which makes it acceptable for the system dimensioning purpose. We found that the choice of the initial value of k1 influences the convergence of the computation algorithm (see Fig. 5). We propose to set k1 as the solution of Eq. (11) by setting the initial values of p1,loss and p2,loss to be zero. That is, k1 is initialized to be (r1 + r2h2)/(1  h2 + h1h2). This way, we have achieved fast convergence of the iterative solution (see Fig. 5). For l1 = 5, l2 = 6, n = 0.001, m = 0.5, h1 = 0.6, h2 = 0.2, L = 1000, r1 = 3.0 and r2 = 0.0, we plot the computational times of the proposed method and the spectral expansion method vs b in Fig. 6. The numerical results clearly show that the proposed algorithm is fast. For l1 = 5, l2 = 6, n = 0.001, m = 0.5, h1 = 0.6, h2 = 0.2, L = 1000, r1 = 3.0 and r1 = 0.0, we plot the computational time of the new approximation method vs K and b in Fig. 7 using the proposed setting k1 = (r1 + r2 h2)/(1  h2 + h1h2). It is observed that the computational time of the approximate algorithm is fast even for large values of K and b (note that the exact method failed to produce results in a reasonable time). 5. Conclusion We have proposed an analytical model based on QBD processes and the spectral expansion solution to evaluate the performance of iATA server. The solution is exact but with O(N3) computational time complexity. When N is large, numerical instability results. In order to reduce the computational time requirement and increase numerical stability for large N, we have also developed a computationally more efficient but approximate solutionl algorithm based system decomposition. Comparison of the results obtained by the approximate algorithm with those the exact solution algorithm shows that the proposed approximate algorithm is accurate, much faster and numerically stable for large N. Therefore, it can be effectively used for dimensioning and operating iATA servers. Acknowledgements This work is connected to the scientific program of the ‘‘Development of quality-oriented and harmonized R+D+I strategy and functional model at BME’’ project. This project is supported by the New Széchenyi Plan (Project ID: TÁMOP-4.2.1/B-09/1/ KMR-2010-0002). We wish to express our sincere thanks to reviewers for their constructive criticism. Their comments and suggestions have been helpful to improve the presentation of this paper.

1396

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

Appendix A. An analysis of the M/M/K queue with a buffer of size b, and breakdowns and repair We separately consider the M/M/K queue where there is a buffer of size b. Server failures happen and can be repaired. Customers arrive with rate k2 and are served with rate l2. Recall that I2(t) and P(t) represent the number of jobs at stage 2 and the number of operative (non-failed) servers in stage 2 at time t. The continuous time Markov process Y = {P(t), I2(t)} has the state space {(i, j): 0 6 i 6 K, 0 6 j 6 b + i} and is driven by the following transitions. ðYÞ

ðYÞ

(a) Aj ði; lÞ denotes a transition rate from state (i, j) to state (l, j) (0 6 i, l 6 K; j = 0,1, . . ., b + K). Let Aj be a matrix with ðYÞ elements Aj ði; lÞ. ðYÞ ðYÞ (b) Bj ði; lÞ represents one step upward transition from state (i, j) to state (l, j + 1) (0 6 i, k 6 K; j = 0,1, . . ., b + K). Let Bj be ðYÞ a matrix with elements Bj ði; lÞ. ðYÞ ðYÞ (c) C j ði; kÞ is the transition rate from state (i, j) to state (k, j  1) (0 6 i, k 6 K; j = 1, . . ., b + K). Let C j be a matrix with ðYÞ elements C j ði; lÞ. We obtain

2

ðYÞ

Aj

0 Km 0 6 maxð1  j; 0Þn 0 ðK  1Þm 6 6 .. .. ... ¼6 . . 6 4 0 0 0 0 j ¼ 0; . . . ; K þ b;

3 0 07 7 .. 7; .7 7 m5 . . . maxðK  1  j; 0Þn 0 ... 0 maxðK  j; 0Þn 0 0 0 .. .

... ... .. .

0 0 .. .

ðYÞ

Bj

¼ Diag½k1 1ðb  jÞ; k1 1ðb þ 1  jÞ; . . . ; k1 1ðb þ K  jÞ; j ¼ 0; . . . ; K þ b  1; 3 2 0 0 ... 0 0 0 7 6 minðj; 1Þn minðj; 1Þl2 ... 0 0 0 7 6 7 6 ðYÞ . . . . . . . .. .. .. .. .. .. .. Cj ¼ 6 7; 7 6 5 4 0 0 0 . . . minðj; K  1Þn minðj; K  1Þl2 0 0 ... 0 minðj; KÞn minðj; KÞl2 j ¼ 1; . . . ; K þ b; where

1ðyÞ ¼



1 if y > 0 0 otherwise

ðYÞ

:

ðYÞ

Let C 0 ¼ 0 and BbþK ¼ 0. The infinitesimal generator matrix of the continuous time Markov process Y can be written as follows:

2

ðYÞ

Q0

6 ðYÞ 6 C1 6 6 6 0 6 6 0 6 6 . 6 . 4 . ...

ðYÞ

0

ðYÞ

B1

ðYÞ

B0

Q1 C2

0 .. . ... ðYÞ

...

...

...

ðYÞ

0

...

...

Q2

ðYÞ

B2

ðYÞ

0

...

ðYÞ C3

Q3 .. . ...

ðYÞ

B3 .. . ...

.. . ... A

ðYÞ

B

ðYÞ

ðYÞ

C

0 .. . ðYÞ

C Kþb

...

3

7 ... 7 7 7 ... 7 7; ... 7 7 .. 7 7 . 5 ðYÞ Q Kþb

ðA:1Þ

ðYÞ

where Q j ¼ Aj ðYÞ D jðYÞ  D j  D j . ðYÞ ðYÞ ðYÞ ðYÞ A B C A B C ðYÞ Note that D j , D j and D j . The diagonal elements of D j , D j and D j are the sum of the elements in the rows of Aj , ðYÞ ðYÞ Bj and C j , respectively. The steady state probability pi,j of the state (i,j) of the continuous time Markov process Y is defined as:

pi;j ¼ t!1 limPðPðtÞ ¼ i; I2 ðtÞ ¼ jÞ; i ¼ 0; . . . ; K; j ¼ 0; 1; . . . ; b þ K:

ðA:2Þ

Let pj = {p0,j,p1,j, . . ., pK,j} be the stationary probabilities of the multi-dimensional Markov process. The balance equations can be expressed as follows:

p0 Q 0ðYÞ þ p1 C 1ðYÞ ¼ 0; ðYÞ ðYÞ ðYÞ pk1 Bk1 þ pk Q k þ pkþ1 C kþ1 ¼ 0; 1 6 k < b þ K; ðYÞ pbþK1 BðYÞ bþK1 þ pbþK Q bþK ¼ 0:

ðA:3Þ ðA:4Þ ðA:5Þ

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

1397

To compute the steady state probabilities, we shall proceed as follows. Let us define matrices Rk’s such as pk = pk  1Rk for k = 1, 2, . . ., b + K. Then, based on Eqs. (A.4) and (A.5), matrices Rk’s can be recursively computed using

h i1 ðYÞ ðYÞ RbþK ¼ BbþK1 Q bþK ; h i1 ðYÞ ðYÞ ðYÞ Rk ¼ Bk1 Q k þ Rkþ1 C kþ1 ;

ðA:6Þ ðk ¼ b þ K  1; . . . ; 1Þ:

ðA:7Þ

This means, that pk (k = 1, 2, . . ., b + K) can be express in p0 and the already computed Rk’s as

pk ¼ p0

k Y

Rk ; ðk ¼ 0; . . . ; b þ KÞ;

ðA:8Þ

i¼0

where R0 is the identity matrix by definition. Eq. (A.3) can be rewritten as





ðYÞ p0 Q ðYÞ ¼ 0: 0 þ R1 C 1

Finally, we can utilize the normalization equation probabilities.

ðA:9Þ PbþK k¼0

pk ek ¼ 1 and Eq. (A.9) to compute p0 and then the stationary

References [1] They Y-S, Yeoh C-M, Lee H, Lim H. Design and implementation of ATA-based virtual storage system for mobile device. In: MUE. IEEE Comp Soc, 2008. [2] Yeoh C-M, They Y-S, Lee H-J, Lim H. Design and implementation of iATA on Windows CE platform: an ATA-based virtual storage system. In: CMC ’09: Proceedings of the 2009 WRI international conference on communications and mobile computing, Washington, DC, USA, 2009. IEEE Comp Soc. p. 85–9. [3] Lee S, Lim H, Lee H-J. Secure data mechanism for iATA protocol. In: 5th international conference on computer sciences and convergence information technology (ICCIT), 2010. p. 1068–71. [4] Ong I, Lim H. Dynamic parameter configuration in virtual storage protocol for mobile appliances. In: 2nd international conference on computer engineering and technology (ICCET), vol. 6, 2010. p. V6–241–V6–244. [5] Tan H-Y, Chai B-L, Lim H, Lee H-J. Mobile virtual storage using iATA protocol with disk image based loop device. In: Proceedings of the 12th international conference on advanced communication technology, ICACT’10, Piscataway, NJ, USA, 2010. IEEE Press. p. 997–1002 [6] Ong I, Lim H. Dynamic load balancing and network adaptive virtual storage service for mobile appliances. JIPS 2011;7(1):53–62. [7] Luevisadpaibul N, Sombatsiri S, Piromsopa K. An FPGA implementation of ATA host controller toward scalable iATA NAS. In: Eighth international joint conference on computer science and software engineering (JCSSE), may 2011. p. 229–33. [8] Choi M, Park J, Jeong Y-S. Mobile cloud computing framework for a pervasive and ubiquitous environment. J Supercomp 2011:1–26. http://dx.doi.org/ 10.1007/s11227-011-0681-6. [9] Chakka R. Performance and reliability modelling of computing systems using spectral expansion. Ph.D. thesis, University of Newcastle upon Tyne (Newcastle upon Tyne), 1995. [10] Mitrani I, Chakka R. Spectral expansion solution for a class of Markov models: application and comparison with the matrix-geometric method. Perform Eval 1995;23:241–60. [11] Chakka R, Mitrani I. Heterogeneous multiprocessor systems with breakdowns: performance and optimal repair strategies. Theor Comput Sci 1994;125(1):91–109. P [12] Chakka R, Do TV. The MM Kk¼1 CPP k =GE=c=L G-queue and its application to the analysis of the load balancing in MPLS networks. In: 27th Annual IEEE Conference on Local Computer P Networks (LCN 2002), 6–8 November 2002, Tampa, FL, USA, Proceedings. p. 735-36. [13] Chakka R, Do TV. The MM Kk¼1 CPP k =GE=c=LG-queue with heterogeneous servers: steady state solution and an application to performance evaluation. Perform Eval 2007;64:191–209. [14] Chakka R. Spectral expansion solution for some finite capacity queues. Ann Oper Res 1998;79:27–44. [15] Chakka R, Do TV, Pandi Z. Generalized Markovian queues and applications in performance analysis in telecommunication networks. In: Kouvatsos DD, editor. First international working conference on performance modelling and evaluation of heterogeneous networks (HET-NETs 03), July 2003. p. 60/1– 10 [16] Chakka R, Harrison PG. A Markov modulated multi-server queue with negative customers – the MM CPP/GE/c/L G-queue. Acta Inform 2001;37:881–919. [17] Chakka R, Harrison PG. The MMCPP/GE/c queue. Queueing Syst 2001;38:307–26. [18] Chakka R, Mitrani I. Multiprocessor systems with general breakdowns and repairs. In: SIGMETRICS, 1992. p. 245–46. [19] Do TV. Comments on multi-server system with single working vacation. Appl Math Model 2009;33(12):4435–7. [20] Do TV, Chakka R, Harrison PG. An integrated analytical model for computation and comparison of the throughputs of the UMTS/HSDPA user equipment categories. In: MSWiM ’07: Proceedings of the 10th ACM symposium on modeling, analysis, and simulation of wireless and mobile systems, Chania, Crete Island, Greece, October 2007. ACM; 2007. p. 45–51. [21] Do TV, Do NH, Chakka R. Performance evaluation of the high speed downlink packet access in communications networks based on high altitude platforms. In: Al-Begain K, Heindl A, Telek M, editors. ASMTA. Lecture notes in computer science, vol. 5055. Berlin Heidelberg: Springer-Verlag; 2008. p. 310–22. [22] Do TV, Krieger UR, Chakka R. Performance modeling of an apache web server with a dynamic pool of service processes. Telecommun Syst 2008;39(2):117–29. [23] Do TV, Papp D, Chakka R, Truong MXT. A Performance model of MPLS multipath routing with failures and repairs of the LSPs. In: Kouvatsos D, editor. Performance modelling and analysis of heterogeneous networks. Aalborg, Denmark: River Publishers; 2009. p. 27–43. [24] Drekic S, Grassmann WK. An eigenvalue approach to analyzing a finite source priority queueing model. Ann OR 2002;112(1-4):139–52. [25] Grassmann WK. The use of eigenvalues for finding equilibrium probabilities of certain markovian two-dimensional queueing problems. INFORMS J Comput 2003;15(4):412–21. [26] Grassmann WK, Drekic S. An analytical solution for a tandem queue with blocking. Queueing Syst 2000(1-3):221–35. [27] Mitrani I. Approximate solutions for heavily loaded markov-modulated queues. Perform Eval 2005;62(1-4):117–31. [28] Do TV, Kálmán B, Király C, Pándi Z. A tool for the service planing and management of multi-layer networks. In: Networks 2000: 9th international telecommunications network strategy and planning symposium, Canada, 2000.

1398

T.V. Do et al. / Computers and Electrical Engineering 38 (2012) 1388–1398

[29] Zsóka Z, Jereb L, Izsó T, Unghváry F. FLEXPLANET, a flexible multi-layer network design tool. In: Networks 2008: 13th international telecommunications network strategy and planning symposium, 2008. [30] Latouche G, Ramaswami V. Introduction to matrix analytic methods in stochastic modeling. ASA-SIAM Ser Stat Appl Probab 1987. [31] Apache Web Server. Available from: . [32] Tran HT, Do TV. Computational aspects for steady state analysis of QBD processes. Period Polytech Ser El Eng 2000:179–200. [33] Press WH, Teukolsky SA, Vetterling WT, Flannery BP. Numerical recipes: the art of scientific computing. 3rd ed. New York, NY, USA: Cambridge University Press; 2007. Tien Van Do received the M.Sc. and Ph.D. degrees in telecommunications engineering from the Technical University of Budapest, Hungary, in 1991 and 1996, respectively. He is an associate professor in the Department of Telecommunications of the Technical University of Budapest. He has participated and lead work packages in the COPERNICUS-ATMIN 1463, the FP4 ACTS AC310 ELISA, FP5 HELINET, FP6 CAPANINA projects funded by EC. His research interests are queuing theory, telecommunication networks, cloud computing, performance evaluation and planning of ICT Systems. Hyotaek Lim received his B.Sc. degree in Computer Science from Hongik University in 1988, the M.Sc. degree in Computer Science from POSTECH and the Ph.D. degree in Computer Science from Yonsei University in 1992 and 1997, respectively. Since 1994, he has been with Dongseo University, Korea, where he is currently a professor in the Division of Computer and Information Engineering. His research interests include ubiquitous and mobile networking, storage area networks, and network management. Ram Chakka obtained B.E. (Electrical and Electronics 1980), M.S.(Engineering) (Computer Science and Automation, 1986) from the Indian Institute of Science, and Ph.D. (Computer Science, 1995) from the Newcastle University, UK. He is the Director Research at MIET, India. His research work has been published in many top quality International journals, books and International conferences. He is a recipient of the award, Certificate of Excellence for Outstanding Scholarship, while working at Norfolk State University, USA.

Suggest Documents