• 沒有找到結果。

1 23

all rights are held exclusively by Springer Science+Business Media, LLC. This e-offprint is for personal use only and shall not be self-archived in electronic repositories. If you wish to self-archive your work, please use the accepted author’s version for posting to your own website or your institution’s repository.

You may further deposit the accepted author’s

version on a funder’s repository at a funder’s

request, provided it is not made publicly

available until 12 months after publication.

Modeling the IEEE 802.11e HCCA mode

Alexander LeonovichHuei-Wen Ferng

Ó Springer Science+Business Media, LLC 2012

Abstract It was shown that the hybrid coordination function control channel access (HCCA) is capable of guaranteeing quality of service in wireless local area net-works. However, there is still no comprehensive analytical model for HCCA. Therefore, novel modeling of pure HCCA based on the cyclic-service queueing system is provided in this paper. Our model is general enough to accept a wide range of schedulers and various types of traffic under the finite buffer policy. Via comparisons with simulations, high accuracy of the analytical model is exhibited. Furthermore, some valuable insights and rec-ommendations on how to improve the HCCA performance are revealed by investigating the HCCA mode through the proposed model.

Keywords Wireless LAN  IEEE 802.11e  HCCA  Performance

1 Introduction

IEEE 802.11e [1] aims at offering QoS support in WLANs.

In addition to the existing point coordination function (PCF) and distributed coordination function (DCF), HCF, which includes a contention access called enhanced dis-tributed channel access (EDCA) and a controlled access called HCCA, was introduced in IEEE 802.11e. EDCA enhances DCF with differentiated traffic priorities, while HCCA supports parameterized QoS with strict definitions

of QoS requirements. Certainly, they have drawn much attention. One can witness that EDCA was widely exam-ined by simulations, e.g., [2,3], and analytical models, e.g., [4,5]. However, the conclusions on its efficiency were not always positive. Although EDCA improves DCF, it is still not sufficient to provide effective traffic protection and QoS guarantee, especially with presence of real-time traffic or under a high traffic load [2, 3]. Therefore, extensive research work to further improve EDCA, e.g., [6,7], had been done by developing effective admission control schemes. On the other hand, numerous simulation results concerning HCCA, e.g., [3, 8], showed that it has high capability to provide QoS as well as supports a compara-tively high number of admitted flows. Therefore, most of multimedia applications with rigorous QoS requirements may rely on HCCA because of its polling-based medium access mechanism and parameterized QoS support. More-over, some researchers noticed that coexistence of EDCA and HCCA under some specific conditions is unnecessary and may cause performance degradation [3]. Meanwhile, the fine tuning of HCCA could be expected to bring about high system performance [3,8,9]. Therefore, knowing the potential capability of pure HCCA to provide high QoS alone is good and may offer a partial solution to coexis-tence of EDCA and HCCA.1

Nevertheless, the practical implementation of HCCA is still a sophisticated task mainly due to the fine tuning complexity and loose definition in the standard. Also, inefficiencies of HCCA for QoS provision were reported in the literature, e.g., those in [9]. To allow researchers/

developers to deeply understand the HCCA mode and to enable easier system implementation necessitate a A. Leonovich H.-W. Ferng (&)

Department of Computer Science and Information Engineering, National Taiwan University of Science and Technology, Taipei 106, Taiwan

e-mail: [email protected]

1 Coexistence of modes changes queue states and brings some issues.

However, those issues can be avoided under the pure focus on HCCA.

123

Wireless Netw

DOI 10.1007/s11276-012-0500-x

Author's personal copy

comprehensive analytical model. However, there were only a few attempts to create sophisticated but tractable ana-lytical models for HCCA. For example, Traud et al. [10]

proposed an analytical voice over IP (VoIP) capacity model to evaluate the performance of IEEE 802.11e. To the best of our knowledge, the first analytical queueing model to describe the HCCA mode was suggested by Rashid et al.

in [11]. Focusing on the presence of variable bit rate (VBR) traffic, a time-limited PH/PH/1 queueing model with fixed vacations equal to the HCCA service interval (SI) was employed by the authors. However, the proposed model still cannot be considered as universal even if the derived results possess relative accuracy. The reason is that polling time repetition intervals for the same station are rarely constant since serving periods of other stations usually differ from those pre-assigned by the scheduler, especially with presence of VBR traffic. Such an assumption is not practical at all and has less flexibility. Furthermore, [11]

assumed non-realistic infinite buffers. The aforementioned reasons make [11] fail to fit the HCCA mode.

Considering the dynamic structure of HCCA, a novel analytical model for HCCA based on the queueing system is proposed in this paper. Since a cyclic-service system with the time-limited policy controlled by transmission opportunity (TXOP) periods fits HCCA, such a system concept is employed in this paper. Unlike [12] which considered the exponentially distributed time limits, the generally distributed time limits are considered in this paper. Further considering finite buffers, we develop our own novel analytical model to describe the HCCA mode to derive the average packet delay, number of packets at each queue, system throughput, and packet loss probability. The derived results make parameterized QoS performance evaluation, impact investigation of system parameters on the ability of QoS guarantee, and recommendations on how to tune the HCCA system parameters to achieve the desired QoS level feasible.

The rest of this paper is organized as follows. We define the analytical model, discuss the assumptions, and get the performance metrics of the model in Sect.2. The analytical results are then compared with the simulation results for the purpose of model validation in Sect.3. Afterwards, we apply the proposed analytical model to investigate the

HCCA mode in detail and give insights into the system operation in Sect.4. Finally, Sect.5 concludes this paper.

2 Analytical model

First of all, let us make some necessary assumptions to define a realistic but tractable analytical model. Looking into the HCCA operational process defined in the simple scheduler of the IEEE 802.11e standard [1] with the help of Fig.1, the system can be viewed as a single server, which is the hybrid coordinator (HC), with multiple queues cor-responding to QoS stations (QSTAs). This server polls QSTAs in the order conformable to its polling list with a repetition interval of the SI.2Since the service time of a QSTA queue is limited by its TXOP and a QSTA shall not start transmission of a new packet if the remaining TXOP is not long enough, the time-limited service discipline with the non-preemptive service policy is associated with the system. Explicitly, a cyclic-service system with the length of a cycle equal to the SI well suits such a system. Here, the HC visits the stations in the list one by one during an SI. At the beginning of a new SI, the HC visits the stations repeatedly. Note that the time interval to visit a station by the HC within an SI varies for sure. This reflects the situ-ation with VBR traffic when the actual TXOP time is fluctuating and makes our model more flexible. Further-more, we assume that TXOP periods3 are mutually inde-pendent and generally distributed and packet service times follow a general distribution. Here, the packet service time includes the time to transfer one medium access control (MAC) layer frame and the time to receive an acknowl-edgment plus two short interframe spaces (SIFSs). As for

Beacon HCCA

Fig. 1 Time diagram of the HCCA mode

2 We assume here a fixed SI and no possibility for extra polling when analyzing the simple scheduler of the IEEE 802.11e standard.

3 Here, we mean the scheduled TXOPs. Of course, it is absolutely right to say that the length of TXOP length is fixed and depends on the service (QoS) priority under the precondition that the simple scheduler defined in the IEEE 802.11e standard is considered.

However, we try to allow our model to be general to describe a variety of schedulers proposed for the IEEE 802.11e HCCA mode. In the literature, some schedulers may employ traffic prediction schemes and may change the length of TXOP every service interval according to the traffic information.

Wireless Netw

123

Author's personal copy

packets arriving at each QSTA queue, they follow a Pois-son process. Because TXOPs are assigned on a per-QSTA basis rather than a per-flow basis, each QSTA is respon-sible for allocating TXOPs to its flows.

Let us further examine the server policy during a TXOP.

According to the standard, a QSTA should send a QoS-Null frame to the HC if there is enough remaining TXOP time to send a control frame, or it ceases control of the channel.

For some cases, a short time period before the end of TXOP is wasted without serving queues. These time periods are then represented by generally distributed changeover periods with the aid of the analysis of the cyclic-service system. Considering a real system when HCCA and EDCA coexist, it is possible that the HC may use those unused periods to activate the contention period controlled by EDCA. Aiming at analyzing pure HCCA, we assume that no packets are served during changeover periods. Finally, an error-free channel is assumed unless otherwise specified.

2.1 Formulation of the queueing model

To build our analytical model, we consider a non-preemptive single-server system with M queues served in a cyclic manner. Packets arriving at queue i follow a Poisson process with rate ki. A general packet service time distribution with mean lXi and probability density function (pdf) fXi(t) is employed, where Xiis a random variable representing the packet service time of queue i. It is clear that the traffic load offered to queue i denoted by qiis qi= kilXiand the total traffic load offered to the system denoted by q is q =P

i=1

M qi. The time period that queue i is visited by the server is specified by a timer and its initial value is generally distributed with pdf fHi(t), where Hidenotes a random vari-able indicating the initial value of the associated timer. When the server starts serving queue i, its timer starts counting down. The server finishes serving the current queue for the following two conditions: queue emptiness and timer expi-ration. Letting Ci stand for the random variable of the changeover time from queue i - 1 to queue i, the corre-sponding pdf and mean are then denoted by fCi(t) and lCi,

respectively. For queue i, a finite buffer of size Kiis asso-ciated. For convenience, K¼ ðK1; K2; . . .; KMÞ denotes a vector of buffer sizes. Definitely, packets arriving at queue i get lost/blocked when the queue is full. To tackle the diffi-culties associated with the finite buffer policy and for the sake of neater and simpler analysis, we adopt the idea introduced in [13] by assuming that all queues virtually have infinite-size buffers and are able to store all arriving packets.

However, the server serves at most Kipackets waiting there when it comes to serve queue i.

To describe our system, the cyclic-service system model with the time-limited service policy is employed. Like [14], we observe the system at the following four time instants:

starting and completed instants of packet service and those of queue visiting. As a result, we have four embedded Markov chains (EMCs). For EMC j (j = 1, 2, 3, 4 cor-responding to these four time instants, respectively), the system state is defined as nj¼ ðnj;1; nj;2; . . .; nj;MÞ, where nj,istands for the number of packets in queue i observed at time instant j. Denoting the equilibrium state probability of EMC j concerning queue i by PiðnjÞ, the corresponding joint generating function (GF) of PiðnjÞ (see [15] for details) is then given by

xj;iðzÞ ¼ X1 analy-sis, additional notations are defined as follows:

DxiðzÞ ðDciðzÞÞ: it is a joint GF regarding the probability of the vector composed of the numbers of packets arriving at all queues when serving a packet at queue i (during the changeover period from queue i - 1 to queue i).

c: it is a long-term ratio of the number of visits com-pleted at queue i and the number of packets completely served at all queues.

Similar to [14], the following relation among the four EMCs can be obtained (see [16, Sect. 1]):

cx3;iðzÞ þ x2;iðzÞ ¼ cx4;iðzÞ þ x1;iðzÞ: ð1Þ To find additional relations between EMCs, let us relate the states of packet service at the starting and completed

Fig. 2 Typical time instants with the corresponding joint GFs: (1) starting instants of queue visiting (j = 3) and packet service (j = 1);

(2) completed instant of packet service (j = 2) and starting instant of

the next packet service (j = 1); (3) completed instants of packet service (j = 2) and queue visiting (j = 4), where CO denotes a changeover interval

Wireless Netw

123

Author's personal copy

instants. It is clear that the number of packets at all queues at the completed instant of packet service for queue i is equal to the number of packets at all queues present at the starting instant of packet service for queue i plus the number of packets arriving during the packet service period, and minus one packet recently served at queue i. In terms of joint GFs, we have

x2;iðzÞ ¼ x1;iðzÞDxiðzÞ=zi: ð2Þ Similarly, we can obtain the following relation

x3;iðzÞ ¼ x4;i1ðzÞDciðzÞ ð3Þ

by noting that the number of packets at all queues at the starting instant when visiting queue i is equal to the number of packets at all queues at the completed instant when visiting queue i - 1 plus those packets arriving during the changeover period. Finally, combining Eqs. (1–3) leads to x2;iðzÞ ¼ cDxiðzÞ

zi DxiðzÞx4;i1ðzÞDciðzÞ  x4;iðzÞ

: ð4Þ

In the subsequent sections, c and x4;iðzÞ are further derived.

2.1.1 Derivation ofc

First, let us determine a mean cycle time T which is the mean time interval between two consecutive visits of the same queue by the server. With the aid of [14], we have T¼XM

i¼1

lCi

1 q: ð5Þ

Since the system with the virtual buffer policy is in equilibrium in the long run, the packet arrival and service rates should be identical. Therefore, the average number of packets completely served during T is equal toPM

i¼1kiT.

Because each queue is visited by the server once in a cycle, c is obtained as follows:

c¼ 1

PM

i¼1kiT: ð6Þ

2.1.2 Derivation ofx4;iðzÞ

To find x4;iðzÞ, the time-limited service policy and the fact of finite-buffer queues should be considered. Since the idea on how to analyze the polling system with a limited service policy has been previously introduced in [12], the method of [12] is now applied to analyze our system by taking some extra conditions into account. Let us introduce a set of service limits Lf g, which are the maximum numbers ofi packets the server can serve during each visit, limited by a set of initial time periods of timers f g. Then, we canHi

define a set of service limit probabilities p ij

, where pijis the probability that the service of queue i is terminated due

to the timer expiration after serving exactly j packets. By definition, we have

pij¼ PðHi X1i  . . .  Xij1 Xij; Hi X1i  . . .

 Xij\Xijþ1Þ; ð7Þ

where Xik is a random variable representing the kth packet service time at queue i. Note that fXk

iðtÞ ¼ fXiðtÞ; k ¼ 1; 2; . . ., since X1i; Xi2; . . . are i.i.d. random variables. Furthermore, Hi and Xik, Vk, are independent as well. In terms of the joint pdf, we then have

pij¼ For the further discussion, let us focus on the instant when queue i is in service with the corresponding service limit Li. One needs to keep in mind the fact that the service of queue i ends either if queue i becomes empty or the service limit Li has been reached. To simplify expressions and derivations, we consider the following modification to the system: the server always serves exactly Li ‘‘packets’’ when visiting queue i. To make the modified system work equivalently to the original system, the following special treatment is employed. If queue i becomes empty after serving j (j \ Li) packets, the remaining Li- j ‘‘packets’’ served during this visit are actually not real packets. Hence, ‘‘virtual’’ service times are associated with these packets to let the system state remain unchanged during the virtual service time.

For the modified system, let us introduce Yi;j¼ ðY1i;j; Y2i;j; . . .; YMi;jÞ as a random vector composed of num-bers of packets at all queues right after j packet service completions at queue i. Letting PYi;jðn2Þ be the probability that Yi;j¼ n2, its joint GF wi;jðzÞ can be obtained via

Given that j packets at queue i have been completely served during the current visit and j \ Li, the next system state, i.e., Yi;jþ1, depends on the current state and the events coming during the service of packet j ? 1. If queue i currently becomes empty, the special treatment is employed; otherwise, the next system state is related to the current state, the packets arriving during the service time of the (j ? 1)th packet, and the packet served.

Defining Di¼ ðDi1; . . .; DiMÞ as a random vector composed of the numbers of packets arriving at all queues during the service time of a packet at queue i, then the system state at the (j ? 1)th service completion can be described as follows: for j¼ 0; . . .; Li 1, where li is a vector with Wireless Netw

123

Author's personal copy

zeroes except for the ith element which is 1. Applying Eq. (9) and letting I be the index of the queue the server is currently visiting with lengthy algebraic derivations (see [16, Sect. 3]), the joint GF of the next system state, i.e., wi;jþ1ðzÞ, can be written as Further incorporating the probability of timer expiration after serving exactly j packets at queue i gives

x4;iðzÞ ¼X1

j¼0

pijwi;jðzÞ: ð11Þ

Note that wi;0ðzÞ represents the joint GF concerning the system state after the 0th packet service completion of queue i, i.e., the starting instant of queue visiting. Hence, wi;0ðzÞ ¼ x3;iðzÞ. From Eq. (3), we have

wi;0ðzÞ ¼ x4;i1ðzÞDciðzÞ: ð12Þ Obviously, Eqs. (10–12) can relate x4;iðzÞ to x4;i1ðzÞ.

Denoting FiðÞ as the mapping function from x4;i1ðzÞ to x4;iðzÞ so that x4;iðzÞ ¼ Fiðx4;i1ðzÞÞ for i ¼ 2; . . .; M and The above equation then gives a functional equation of x4;iðzÞ. Solving Eq. (13) numerically by the discrete Fou-rier transform (DFT) then yields x4;iðzÞ. For interested readers, please refer to [16, Sect. 4] for details.

2.2 Performance measures for the constructed queueing model

Having c and x4;iðzÞ acquired previously, we are able to determine the joint GF associated with the probability of the system state at the completed instant of packet service, i.e., x2;iðzÞ, by using Eq. (4). With x2;iðzÞ, one can further

obtain the queue length distribution and packet waiting time distribution. Letting Ni(zi) denote the probability generating function (pgf) of the marginal queue length pdf for queue i at the completed instant of packet service, we have the system (with the virtual buffer policy) is in equilibrium, the total arrival rate and the service completion rate are identical.

This yields that the probability of an arbitrary packet service completion occurring at queue i is simply the ratio of kiand the total arrival rate. We then have

x2;ið1; . . .; 1Þ ¼ ki= XM To find the packet waiting time distribution of queue i, let us observe a probing packet at queue i from its arriving instant until its service completion instant. Since all packets are served in the order of arrival, the number of packets in queue observed at the completed instant of the probing packet is equal to the number of packets arrived during the waiting time and service time of the probing packet. Before the following derivation, let us denote ti(t) to be the pdf of the system sojourn time (waiting time plus service time) of a packet. By definition, we have

NiðziÞ¼DX1

packets at queue i observed at the completed instant of packet service and Yiis the random variable of queue length at queue i observed at the completed instant of packet service. Note that P[Yi= yi] can be obtained as follows: Combining Eqs. (17) and (18) leads to

NiðziÞ ¼X1

where Ti(s) is the Laplace transform of the pdf of the system sojourn time of a packet, i.e.,

TiðsÞ¼D Z1

0

esttiðtÞdt: ð20Þ

From Eq. (19), we then have

TiðsÞ ¼ Nið1  s=kiÞ: ð21Þ

Because the non-preemptive packet service discipline is considered, the Laplace transform of the pdf of the packet waiting time at queue i denoted by Wi(s) can be acquired as follows:

WiðsÞ ¼ TiðsÞ=XiðsÞ ¼ Nið1  s=kiÞ=XiðsÞ; ð22Þ where Xi(s) is the Laplace transform of the pdf of the packet service time at queue i.

To obtain the packet dropping probability, we observe the dropping probability of a randomly chosen probing packet among packets arriving at queue i during the packet service time of the packet currently being served. Let us

To obtain the packet dropping probability, we observe the dropping probability of a randomly chosen probing packet among packets arriving at queue i during the packet service time of the packet currently being served. Let us