整合 SIP 與 IEEE 802.11e 支援換手及提供多重品質等級的 VoIP 應用
Integrating SIP and IEEE 802.11e to Support Handoff and Multi-grade
QoS for VoIP Applications
研 究 生:李 淩 Student:Ling Lee
指導教授:曾煜棋 Advisor:Yu-Chee Tseng
國 立 交 通 大 學
資 訊 科 學 與 工 程 研 究 所
碩 士 論 文
A ThesisSubmitted to Institute of Computer Science and Engineering College of Computer Science
National Chiao Tung University in partial Fulfillment of the Requirements
for the Degree of Master
in
Computer Science
June 2006
Hsinchu, Taiwan, Republic of China
Integrating SIP and IEEE 802.11e to Support Handoff
and Multi-grade QoS for VoIP Applications
Student: Ling Lee
Advisor: Prof. Yu-Chee Tseng
A Thesis
Submitted to Institute of Computer Science and Engineering
College of Computer Science
National Chiao Tung University
in partial Fulfillment of the Requirements
for the Degree of
Master
in
Computer Science
July 2006
Hsinchu, Taiwan
SIP
IEEE 802.11e
VoIP
!"# $%&'()* + , -. /012 3 4 56789:;<=>?@ AB789:CDEFG9: HIJKLM5NO P AQRSTUBVWX YEFGZ [ " IJ\] A ^_`a 9: HIJbcde Ofghi4JKL jBklm n RSop B IEEE 802.11e78qr9:Es tu 9: HIbc deJvw j \] Bkm n RSxy9: HIzFG [{de|} A RS@~ ^_ " I uIEEE 802.11eEJbc deO
" IustJ jRS . J9: J J " I $¡¢£ j¤ n[{de|}¥ ¦§¨© ª«¬J]®®¯ (PI) O j° ±² ~RS JV³´JX Yµ¶· A¸¹º " IJ»¼· A \]M½¾¿stÀ J " IÁÂÃJ· j ÄÅ NÆ ARSM Qµ¶ÇÈÉ 789:ÊË Ì] A ^_ÍÎ k .Ï ¶J$¡ÐÑÒÓÔ¶J jÕ ÀRS Ö×uØÙ J°±ÚÛRS JOÜ j ÝÞ ß à IEEE 802.11e Abc de A " I A9á9: HI Ast A789 : A " I
Integrating SIP and IEEE 802.11e to Support
Handoff and Multi-grade QoS for VoIP Applications
Student: Ling Lee Advisors: Prof. Yu-Chee Tseng
Institute of Computer Science and Engineering College of Computer Science
National Chiao-Tung University
ABSTRACT
With the increasing popularity of wireless networks and the growing demand for VoIP services, there is a need to guarantee QoS for VoIP calls while supporting as many calls as possible. This paper considers the handoff and QoS issues of VoIP calls under IEEE 802.11e WLANs. Assuming that VoIP calls can be supported by multiple levels of QoS, we show how to conduct call admission control and handoff by integrating SIP and QoS mechanisms of IEEE 802.11e. The proposed scheme is designed to dynamically adjust the resource distribution among existing calls according to the network condition. Multi-level QoS is achieved by adjusting codecs and packetization intervals of calls. The result shows better utilization of bandwidth, decreased blocking rate for new calls, and less dropping rate for handoff calls. In addition, we also show how to achieve early resumption of resources as calls leave a QAP. Both analytical and simulation results are presented to evaluate the performance of the proposed schemes.
Keywords: IEEE 802.11e, quality of service (QoS), call admission control (CAC), voice over IP (VoIP), handoff, wireless network, Session Initiation Protocol (SIP).
Acknowledgments
I want to thank many important people. Because of them, there are possibilities for me to obtain much unexpected happiness in my life. My first note of thanks goes to my advisor, Prof. Yu-Chee Tseng. With the wonderful research conditions he provided and his attentive instructions, I came to discover the pleasure of research. I am also grateful to my senior, Jen-Jee Chen. Without his help and suggestions, I would not be able to have this thesis done. During those days at National Chiao-Tung University, I enjoy the moments studying with all HSCC members. Learning with them benefited me in many ways. Finally, I dedicate this thesis to my family and Wei-Kai for their supports and encouragements.
Contents
34 i Abstract ii Acknowledgements iii Contents iv List of Figures viList of Tables vii
1 Introduction 1
2 Preliminaries 3
2.1 IEEE 802.11e MAC Protocol . . . 3
2.2 SIP and SDP . . . 4
3 The Proposed QoS Mechanisms 7 3.1 The Call Admission Control Algorithm . . . 8
3.2 The Resource Adjustment Algorithm . . . 16
4 Analysis 19 5 Simulation Results 27 5.1 Validation of Analytical Results . . . 27
5.2 Influence of CAC and RA . . . 27
5.3 Influence of Pr . . . 31
5.4 Influence of Traffic Characteristic . . . 31
Bibliography 35
List of Figures
2.1 Structure of the IEEE 802.11e EDCA Parameter Set information element. 4
2.2 Structure of the TSPEC information element. . . 4
2.3 An example of SIP call setup and tear-down. . . 5
2.4 An example of SIP with SDP message bodies: (a) INVITE siganl and (b) OK signal. . . 6
3.1 The proposed message flows of the CAC procedure in IEEE 802.11e networks. 10 3.2 The orders of information elements in (a) Probe Request and (b) Probe Response. . . 11
3.3 Basic operations of 802.11e EDCF. . . 12
3.4 The bandwidth degrade algorithm. . . 14
3.5 An example of bandwidth degrade. . . 15
3.6 The RA algorithm. . . 17
3.7 The bandwidth upgrade algorithm. . . 18
3.8 An example of bandwidth upgrade. . . 18
4.1 The state transition diagram of a QSTA’s rate change. . . 19
4.2 Generic state transitions under our analytical model. . . 20
4.3 A state transition example with y = 2 (q1 and q2 are the maximum num-bers of calls that can be accommodated with P Imax at rates R1 and R2, respectively). . . 21
5.1 Comparison of simulation and analytical results on blocking rate and drop-ping rate (λh = 0.8, λn= 1.2). . . 28
5.2 Comparisons of different schemes on: (a) channel utilization and (b) goodput. 29 5.3 Comparisons of: (a) call blocking rate and (b) call dropping rate. . . 30
5.4 The impact of Pr on: (a) call blocking rate and (b) call dropping rate . . . 32
5.5 The impact of the percentage of handoff calls on: (a) call blocking rate and (b) call dropping rate. . . 33
List of Tables
3.1 The Packet Size Table, which contains the packet sizes (in bytes) when different codecs and packetization intervals are used. . . 12 3.2 Parameters of IEEE 802.11e EDCA. . . 12 4.1 The required MT of a bi-directional voice call under different physical rates
Chapter 1
Introduction
As wireless networks become more mature, a lot of research efforts have been dedicated to wireless Voice over IP (VoIP) techniques. In particular, VoIP over WLAN is believed to be one of the most important Internet applications to offer a viable alternative to traditional phone services. Before this happens, the critical QoS (Quality of Service) issues on WLAN have to be addressed. The IEEE 802.11 Task Group E (802.11e) [1] has been formed to expand the current 802.11 MAC protocol to support applications with QoS requirements. However, neither call admission control nor resource management algorithm is specified for VoIP applications.
In addition, user mobility is another important issue for wireless VoIP over WLAN services. Due to WLAN’s limited coverage, handoff between APs is sometimes inevitable. Failure to reserve sufficient bandwidths for handoff calls may force them being dropped. Dropping ongoing calls has a very negative impact from users’ perspective. While resource reservation for handoff calls is necessary, maintaining fairness among handoff calls and existing calls within a WLAN is also important. All these issues are new challenges to WLAN.
In recent years, there has been increasing interest in supporting QoS for multimedia applications. Reference [2] proposes a cross-layer protocol to facilitate VoIP traffics over IEEE 802.11e WLANs. It shows how to increase the number of VoIP sessions that can be supported under a QAP with compromising QoS and how to improve the MAC mechanism of IEEE 802.11e to facilitate the transmission of VoIP traffics. However, it only addresses the call establishment issue; the handoff issue is not discussed.
The number of concurrent VoIP sessions that can be supported in a WLAN is evaluated in [3]. It is reported that besides the bandwidth limitation of the physical layer, the codec, packetization interval (PI), and delay budget may influence the number of VoIP sessions that can be supported. It is further shown that PI has more impact than other factors.
Currently, there is no systematical method for changing PIs and codecs of VoIP calls to improve the overall capacity of a WLAN.
Typical multimedia applications can tolerate some degree of temporary bandwidth fluctuation with little or no perceived degradation in quality by using rate-adaptive codec or hierarchical encoding. Based on this characteristic, several resource management algo-rithms have been proposed. Reference [4] proposes an adaptive framework for provision-ing QoS in multimedia wireless cellular networks by combinprovision-ing call admission control and bandwidth adaption under a QoS-Adaptive Multimedia Service (QoS-AMS) framework. The objective is to reduce new call blocking and handoff call dropping probabilities. Ref-erence [5] also proposes an adaptive bandwidth allocation mechanism with degradable QoS. To increase bandwidth utilization, the system can free some bandwidth for new users by lowering the QoS levels of existing users. Nevertheless, these works do not give the details to achieve bandwidth adjustment.
This paper focuses on the QoS and call admission control mechanisms for handoff calls over IEEE 802.11e WLANs. We address this issue especially for VoIP applications. When handoff calls are accepted to a QAP, they may increase the competition among QSTAs and thus reduce the bandwidth shares of existing calls. Since VoIP calls can be supported by different codecs and PIs, we propose mechanisms for IEEE 802.11e QAPs to degrade the QoS levels (reflected by their codecs and PIs) of some existing calls as resources are too stringent. Normally, the choice of PIs is more sensitive than the choice of codecs. So enlarging the PI of a call has more impact on saving bandwidth, but at the cost of increased end-to-end latency for voice packets. (Note that the payloads seen by applications will not be affected by PIs.) The ITU-T recommends of a bound of 150 ms for one-way end-to-end delay [6]. This bound will be followed in our design. Accordingly, we also propose resource degrade and upgrade algorithms as calls enter and leave a QAP, respectively. In particular, the resource upgrade algorithm is to support early resource resumption as some calls terminate or handover out of a QAP.
The rest of this paper is organized as follows. Some preliminaries are given in Chapter 2. The proposed QoS handoff mechanisms are introduced in Chapter 3. Chapter 4 and 5 present our analysis and simulation results, respectively. Finally, conclusions are drawn in Chapter 6.
Chapter 2
Preliminaries
2.1
IEEE 802.11e MAC Protocol
The IEEE 802.11e Working Group is currently defining a supplement to the existing legacy 802.11 MAC sublayer to support QoS. It introduces a new HCF (Hybrid Coordination Function), which includes two access mechanisms, EDCA (Enhanced Distributed Channel Access) and HCCA (HCF Controlled Channel Access), corresponding to the existing DCF and PCF, respectively, in 802.11. Two new features, AC (Access Category) and TXOP (Transmission Opportunity), are introduced in HCF. A TXOP is a bounded time interval during which a QSTA (Quality of Service Station) can hold the medium and transmit multiple frames consecutively with SIFS spacing. A station can obtain a TXOP by either contention or scheduled access assigned by polling messages.
EDCA of IEEE 802.11e
To differentiate services, the eight user priorities in 802.1D are mapped to four IEEE 802.11e ACs. Each AC has its own transmit queue with an independent EDCA function to contend the medium. These four ACs are background (AC BK), best effort (AC BE), video (AC VI), and voice (AC VO), and are prioritized by different AIFS and contention window sizes. If a collision occurs among ACs within a QSTA, the highest priority AC wins the contention and the other AC(s) will backoff. The EDCA Parameter Set infor-mation elements (Fig. 2.1), which are sent in beacon frames, specify the parameters of ACs.
Admission Control in EDCA
IEEE 802.11e allows a QSTA to request to add a new traffic stream by sending an ADDTS Request to its QAP. The information carried in an ADDTS Request includes the
! " ! # ! #$ ! % % % % & ' ( ) * &) + ,-$* * $! . $! . ' ( / % ) * % % ) + * . * .
Figure 2.1: Structure of the IEEE 802.11e EDCA Parameter Set information element.
Octets: Element ID (13) Length (55) TS Info Nominal MSDU Size Maximum MSDU Size Minimum Service Interval Maximum Service Interval Inactivity Interval 1 1 3 2 2 4 4 4 Suspension Interval 4 Minimum Data Rate Mean Data Rate Maximum Burst Size Minimum PHY Rate Surplus Bandwidth Allowance 4 4 2 Medium Time 2 Service Start Time 4 Peak Data Rate 4 4 4 4 Delay Bound
Figure 2.2: Structure of the TSPEC information element.
direction of the stream and a TSPEC (Traffic Specification) information element (Fig. 2.2). Admission control is conducted by the QAP by calculating the needed MT (Medium Time) as opposed to its remaining MT. Then, an ADDTS Response can be replied.
2.2
SIP and SDP
SIP (Session Initiation Protocol ) is a protocol for establishing an IP multimedia session. It’s an application-layer control protocol to setup, modify, and terminate multimedia sessions. While SIP is not used to transport media traffic, it often chooses RTP (Real-time Transport Protocol) as its transportation protocol and uses SDP (Session Description Protocol ) [7] to specify its session characteristics. Fig. 2.3 shows an example of call setup and tear-down in SIP. When a caller wants to make a VoIP call with a callee, it sends an INVITE including the codecs that the caller supports in a SDP message body. Fig. 2.4(a) shows an example, where G.726 (format 2), and G.723 (format 4) are the offered codecs, with 4400 as its receiving port. If the callee decides to accept the request, it replies a
Caller Callee [email protected] [email protected] INVITE Ringing OK ACK Communication BYE OK
Figure 2.3: An example of SIP call setup and tear-down.
Ringing and an OK signal with the selected codec. In Fig. 2.4(b), the selected codec is G.723, and the receiving port is 888. If the port number is 0, it means a rejection.
INVITE sip: [email protected] SIP/2.0
From: Caller <sip: [email protected]>; tag=abc123 To: Callee <sip: [email protected] >
CSeq: 1 INVITE
Content-Type: application/sdp Content-Disposition: session v=0
o= George 123 001 IN IP4 station1.nctu.edu.tw s=
c=IN IP4 station1.nctu.edu.tw t=0 0 m=audio 4400 RTP/AVP 2 4 a=rtpmap 2 G726-32/8000 a=rtpmap 4 G723/8000 (a) (b) SIP/2.0 200 OK
From: Caller <sip: [email protected]>; tag=abc123 To: Callee <sip: [email protected] >
CSeq: 1 INVITE
Content-Type: application/sdp Content-Disposition: session v=0
o= callee 456 001 IN IP4 station2.nctu.edu.tw s=
c=IN IP4 station2.nctu.edu.tw t=0 0
m=audio 888 RTP/AVP 4 a=rtpmap 4 G723/8000
Figure 2.4: An example of SIP with SDP message bodies: (a) INVITE siganl and (b) OK signal.
Chapter 3
The Proposed QoS Mechanisms
We consider an IEEE 802.11e wireless network operating in the infrastructure mode to support VoIP applications. Although IEEE 802.11e supports QoS, the resource reserva-tion and handoff handling issues for particular applicareserva-tions are left open to designers. In this work, we consider using SIP signaling to support VoIP over IEEE 802.11e networks. We propose two mechanisms to solve the handover problem. The first one is a Call Admission Control (CAC) algorithm, which is performed whenever a new call or a handoff call arrives at a QAP. The CAC algorithm accepts or rejects an arriving call according to the amount of available resources versus the QoS requirements of the call. The second mechanism is a Resource Adjustment (RA) algorithm, whose purpose is to dynamically change bandwidth allocation among on-going calls in a QAP for better resource utilization and fairness. This is feasible because multimedia services can typically operate under different bandwidths.
In order to dynamically adjust resource allocation, we assume that VoIP calls can be supported by multiple levels of QoS. Each QoS level corresponds to a voice codec and a packetization interval (PI), where PI is the period that voice data is encapsulated into packets for transmission. For most current systems, the default PI is 20 ms. Larger PIs would introduce less header overhead, but may suffer from higher delays and are more sensitive to packet loss. Given a PI and a data generation rate of λ, the amount of data to be transmitted per PI is (λ × P I + h), where h is the header overhead. Therefore, the bandwidth required per time unit is (λ ×P I + h)/P I = λ + h/P I. Clearly, a larger PI will incur less traffic. For example, if we use G.726 at rate 32 kbps, with a header size of 74 bytes and a PI of 10 ms, the required bandwidth is 32 kbps+74 bytes/10 ms=91.2 kbps. However, with a PI of 20 ms, the required bandwidth reduces to 32 kbps+74 bytes/20 ms=61.6 kbps.
to a PI. Note when a call changes from a PI to another P I0
, the difference of resource usage is (λ − h/P I0) − (λ − h/P I) = h(1/P I0 − 1/P I). This value is only dependent
of PI and P I0, but is independent of λ (and thus independent of which codec is used).
Therefore, the system state of a QAP can be denoted as s = (s1, s2, s3, ..., sk), where si
is the number of calls served at the ith level (these calls may use different codecs). The following terminologies will be used in our CAC and RA algorithms.
• Btotal: the total bandwidth of a QAP.
• Bth: the threshold of occupied bandwidth (below which new calls can be accepted).
• Bf ree: the current free bandwidth of the QAP.
• Bdeg: the maximum available free bandwidth of the QAP after degrading all existing
calls to the lowest QoS level.
• P Idef: the default PI for all new calls.
• Walloc: the bandwidth allocated to the request call.
3.1
The Call Admission Control Algorithm
The CAC algorithm is to determine whether a new call or a handoff call can be accepted depending on the available bandwidth in the network. Fig. 3.1 shows the proposed CAC procedure. The caller under QAP1 first establishes a VoIP call with the callee by a SIP INVITE signal containing necessary codec and PI information. QAP1, on receiving this INVITE signal, will estimate its current available resource and possibly filter out some codecs that it cannot support due to bandwidth constraints (refer to box A in Fig. 3.1). If the callee can successfully choose a codec, QAP1 will reserve sufficient resources for the call (refer to boxes C, D and, E in Fig. 3.1). Then, the voice communication can be started. When the caller is moving away from QAP1, due to degraded signal qual-ity, the caller will actively look for the next serving QAP by sending IEEE 802.11 Probe Requests. When a QAP receives a Probe Request, it will estimate whether it has enough available bandwidth and reply a proper IEEE 802.11 Probe Response (refer to box A in Fig. 3.1). The caller will collect all Probe Responses and select a new QAP (refer to box B in Fig. 3.1). Suppose that the caller selects QAP3. It will send QAP3 an IEEE 802.11 Re-Association Request to trigger QAP3 to execute resource reservation (refer to box C in Fig. 3.1). In the meanwhile, QAP3 and QAP1 will exchange the caller’s context by Inter Access Point Protocol (IAPP [8]). Via IAPP, QAP1 is informed of the departure
of the caller and may execute the RA algorithm. Finally, the caller will exchange IEEE 802.11e ADDTS Request and Response with QAP3 (refer to boxes D and E in Fig. 3.1) to actually reserve the bandwidth. If these steps go through successfully, the caller and the callee can resume their voice communication. In the following, we will explain the detail actions to be taken in boxes A, B, C, D, and E.
A. Resource Estimation at the QAP
When a new call or a handoff call arrives at a QAP, the QAP will evaluate its available resource and the required resource of the call. In the new call event, the INVITE signal from the caller will carry all codec and PI information to the callee. In the handoff call event, we propose that the caller utilizes its Probe Requests to convey the codec and PI information with two new IEEE 802.11 information elements: codec and PI. Fig. 3.2 shows the proposed orders of the information elements in Probe Request and Probe Response.
With these information, the QAP can estimate if it has sufficient resource to serve this call. To compute the required resource, we propose that each QAP keeps a Packet Size Table (PST) as in Table 3.1. For example, using G.726 with a sampling rate of 32 kbps and PI=20 ms, each packet is of size 154 bytes (80 bytes of voice payload, 40 bytes of IPv4/UDP/RTP/error-checking overhead, and 34 bytes of MAC/error-checking overhead). Therefore, given a call’s codec, PI, and current physical rate r, we can compute the required Medium Time (MT ):
MT (codec, P I, r) = (total time needed per BI)
= (time to send one packet) × (BI/P I) ×(surplus bandwidth allowance)
= {[(HRT P + HU DP + HIP + HM AC) + L(c)]/r
+(DIF S + averageCW + P HY header) + (SIF S + ACK)}
×(BI/P I) × (surplus bandwidth allowance), (3.1)
where L(c) is the payload of codec c per packet, averageCW is the average contention window size seen by the QAP, and HRT P, HU DP, HIP, and HM AC are header sizes of RTP,
UDP, IP, and MAC packets, respectively. The basic operation of 802.11e is shown in Fig. 3.3. Note that assuming 802.11b, the ACK and the PHY header must be transmitted at 1 Mbps. For an overview, relevant parameters of 802.11e EDCA are listed in Table 3.2. The surplus bandwidth allowance is to take the extra medium access overhead (contention,
Caller QAP1 QAP3 INVITE INVITE Callee QAP4 Ringing OK Ringing OK ADDTS Request ADDTS Response ACK ACK Communication B Probe Response Probe Request A Probe Request A Probe Response Communication Authentication ADDTS Request D ADDTS Response E Re-Association Request C Security Block IAPP Move-Notify IAPP Move-Response Re-Association Response C D E A Internet
1 2 SSID Supported Rates 8 Codec 9 Packetization Interval Information Elements Order 1 2 Timestamp Beacon Interval 3 Capability Information ... Information Elements Order ... 23 24 QBSS Load
EDCA Parameter Set
26 27 Codec Packetization Interval (a) (b)
Figure 3.2: The orders of information elements in (a) Probe Request and (b) Probe Response.
Packetization Interval (ms)
Codec Data Rate (kbps)
5 10 20 30 40 G.711 64 113 154 234 314 394 G.726 16 84 94 114 134 154 32 94 114 154 194 234 G.728 16 84 94 114 134 154 G.723.1 5.3 94 6.3 98
Table 3.1: The Packet Size Table, which contains the packet sizes (in bytes) when different codecs and packetization intervals are used.
Channel Busy Sender Receiver DIFS Backoff DATA
PHY MAC PAYLOAD DIFS
SIFS
ACK
Backoff
Next Frame
Figure 3.3: Basic operations of 802.11e EDCF.
collision, etc.) into account; in this work, we assume its value to be 1.1. For example, when BI is 1 sec and min PHY rate is 11 Mbps, if we use G.726 with rate of 32 kbps and PI of 20 msec, then MT = [154/11(bytes/Mbps) + (50 + 70 + 192) + (10 + 248)] × (1000/20) × 1.1 = 37.51 ms.
Each QAP will keep its maximum available free bandwidth Bdeg, which is equal to
Bf ree plus the releasable resource after moving all existing calls to the lowest QoS level.
That is, Bdeg = Bf ree+
Pk−1
i=1 h(1/P Ii− 1/P Ik). If a codec’s required MT is larger than
RTP + UDP + IP header 40 bytes
MAC header for DATA 34 bytes
PHY header 192 µsec
ACK 248 µsec
DIFS 50 µsec
SIFS 10 µsec
Slot Time 20 µsec
CWmin(for voice) 7
CWmax(for voice) 15
the QAP’s Bdeg, the QAP will drop the INVITE or the Probe Request silently or reply
a SIP response to the caller with a status code of 480, which means “temporarily not available”.
B. QAP Selection at the Caller
After scanning all channels, the caller will choose a target QAP based on various criteria, such as signal strength, codec, PI, etc. For example, we may prefer a lighter loaded QAP. Alternatively, we may choose the one with better signal quality. This is outside the scope of this work.
C. Resource Reservation at QAP
First, we will determine the codec c, PI p, and physical rate r to be used by the call. The value of r can be measured from signal quality. In the new call event, the OK signal will contain the value of c, and we will assume p = P Idef. In the handoff event, the
Re-association Request will contain the current c and p used by the caller. Then the QAP will decide to accept or reject the call based on the following rules:
• If this is a handoff call, it will be accepted if the requested MT is no more than Bdeg; otherwise, the call is rejected.
• If this is a new call, there are two cases:
– If MT (c, P Imax, r) ≤ Bdeg and Bdeg > (Btotal − Bth), the call is accepted
directly.
– If MT (c, P Imax, r) ≤ Bdeg but Bdeg ≤ (Btotal− Bth), the call is accepted with
a probability Pr.
Note that the selection of Pr can be based on the DCRS (Dynamic Channel Reservation
Scheme) proposed in [9]. In this work, we will only consider adjusting PI for handoff calls, although adjusting codec is also possible.
If the call cannot be accepted, the QAP will drop the OK silently (for new call) or reply the Re-Association Response to the caller with a status code of 37, which means “The request has been declined.” (for handoff call). If the call can be accepted, we will check if MT (c, p, r) ≤ Bf ree. If so, the selected codec and PI will be relayed to the caller
via an OK (for new call) or a Re-association Response (for handoff call). Otherwise, the current available resource is not able to support the request and we will call function degrade(c, p, r) in Fig. 3.4. The function will repeatedly select an existing call to reduce
degrade(c, p, r)
1: t P I = p ;
2: while (not all calls are served by P Imax) do
3: let X be the call with the smallest PI in the system;
in case of tie, the one with the lowest physical rate is selected;
4: change X ’s PI to next(X.PI);
5: Bf ree = Bf ree+ MT (X.codec, X.P I, X.rate)
−MT (X.codec, next(X.P I), X.rate);
6: if (Bf ree ≥ MT (c, t P I, r)) then
7: return(t P I);
8: else if (there is no call with PI smaller than or equal to t P I) then
9: t P I = next(t PI);
10: end if; 11: end while; 12: return(P Imax);
Figure 3.4: The bandwidth degrade algorithm.
its QoS level. The call with the best QoS level will be degraded first. If there are multiple candidates, the one with the lowest physical rate will be degraded first. Function next() will return the next QoS level. This is repeated until sufficient resources are released.
Fig. 3.5 shows an example. Suppose that there are k = 4 QoS levels, and the current system state is (3,2,0,2). Also suppose that the required resources for these QoS levels are (8, 7.5, 7, 6.5), (6, 5.5, 5, 4.5), (4, 3.5, 3, 2.5), and (2, 1.5, 1, 0.5), respectively (the four num-bers map to four physical rates in an ascending order). The total capacity is equal to 35. So, there is no resource remaining. Suppose that an incoming call requests a QoS level of 2 (physical rate = 1 Mbps). As the resource required is 6, we need to degrade three calls from QoS level 1 to level 2. The next incoming call also requests a QoS level of 2 (physical rate = 1 Mbps). The resource required is 6, too. We need to degrade three of level-2 calls. The calls with lower transmission rates should be degraded first, so we move two calls with 1 Mbps and one with 2 Mbps to level 3. Then the system state will change to (0, 4, 3, 2). The last incoming call requests a QoS level of 2 (physical rate = 5.5 Mbps). According to the algorithm, we move three level-2 calls to level 3. The final system state is (0, 2, 6, 2). D. ADDTS Request by the Caller
After determining the codec and PI, the caller will send a bidirectional ADDTS Request to the QAP by including a TSPEC element to request for resources. We suggest to convey VoIP service requirements by the following fields in TSPEC:
corre-! " # ! " $ $ %&' ( ( ) * + ' , " ( ( - - . $ $ %&' $ $ %&'
Figure 3.5: An example of bandwidth degrade. sponding codec.
• Mean Data Rate = the packetization interval selected by the callee. • Maximum Data Rate = the acceptable shortest packetization interval. • Medium Time = the codec selected by the callee.
E. ADDTS Response by the QAP
According to the caller’s ADDTS Request and the Packet Size Table, QAP can compute the required medium time following Eq.(3.1). Each QAP keeps the following variables:
• T XOP Budget[ACi] = The remaining bandwidth that can be allocated to ACi, i =
0..3.
• T xAdDn[ACi][T SID] = The admitted medium time for stream TSID of ACi in the
downlink direction.
• T xAdUp[ACi][T SID] = The admitted medium time for stream TSID of ACi in the
uplink direction.
• T xAdDn[ACi] = This value is set to
P
∀T SIDT xAdDn[ACi][T SID], to record the
overall resource allocated to ACi in the downlink direction.
• T xUsedDn[ACi] = The summation of used medium time of all downlink streams
Initially, T XOP Budget[ACi] contains all the bandwidth (in terms of medium time)
that is reserved for ACi. Whenever a new stream is added, the corresponding resource is
subtract from T XOP Budget[ACi], and the resource is assigned to T xAdDn[ACi][T SID]
and/or T xAdUp[ACi][T SID]. Also, each QSTA should keep the following variables:
• T xAdUp[ACi][T SID] = The admitted medium time for stream TSID of ACi in the
uplink direction in this QSTA per BI.
• T xAdUp[ACi] = This value is set to P∀T SIDT xAdUp[ACi][T SID], to record the
overall resource allocated to ACi in the uplink direction.
• T xUsedUp[ACi] = The summation of used medium time of all uplink streams of
ACi.
Resource reservation at QAP is done as follows. First, we compute the value of T XOP Budget[ACi] − 2 × MT (c, p, r). If the value is non-negative, there is sufficient
resource to support this call and we can set variables as follows: T XOP Budget[ACi] = T XOP Budget[ACi] − 2 × MT (c, p, r);
T xAdDn[ACi][T SID] = MT (codec, P I, P HY );
T xAdUp[ACi][T SID] = MT (codec, P I, P HY );
T xAdDn[ACi] = T xAdDn[ACi] + T xAdDn[ACi][T SID];
Up to this point, the admitted resources have been guaranteed. The QAP will reply an ADDTS Response to the caller with the Mean Data Rate=PI and Medium Time=MT(c,p,r) in TSPEC. If there is no sufficient resource, then an ADDTS Response is replied with Medium Time=0.
At the caller’s side, if an ADDTS response with a positive Medium Time is received,
the QSTA will set its T xAdUp[ACi][T SID]= Medium Time, retrieves the PI in the
Mean Data Rate field, and passes it to the upper layer VoIP application program. Oth-erwise, the call is considered rejected. In both cases, the caller should reply a response signal with the proper status code to the callee.
3.2
The Resource Adjustment Algorithm
Fairness among existing users and handoff users is an important issue. The goal of resource adjustment is to re-allocate bandwidth to calls for fairness. The RA algorithm may be
Resource Adjustment()
1: On a call X moving to a lower rate r :
Bf ree = Bf ree+ MT (X.codec, X.P I, X.rate);
if(Bf ree < MT (X.codec, X.P I, r))
degrade(X.codec,X.PI,r);
2: On a call X leaving:
Bf ree = Bf ree+ MT (X.codec, X.P I, X.rate);
upgrade();
3: On a call X moving to a higher rate r :
Bf ree = Bf ree+ MT (X.codec, X.P I, X.rate) − MT (X.codec, X.P I, r);
upgrade();
Figure 3.6: The RA algorithm.
triggered by the following two events: departure of calls and transmission rate change of existing calls (refer to Fig. 3.6). On events that a call moves to a lower rate, the function degrade(c,p,r) will be called if there is no sufficient resource. On events that a call departs or moves to a higher rate, the value of Bf ree will be updated, and then the
function upgrade() in Fig. 3.7 will be invoked. This function will repeatedly select an existing call to upgrade its QoS level. The call with the worst QoS level will be upgraded first. If there are multiple candidates, the one with the highest physical rate will be upgraded first. Function prev() will return the previous QoS level. This is repeated until Bf ree is not enough to upgrade any existing call.
Fig. 3.8 shows an example. Suppose that there are k = 4 QoS levels, and the current system state is (4, 1, 1, 3). The resource requirement is the same as the example in Fig. 3.5. Let the total capacity be 41. Suppose that a level 1 call leaves the network (physical rate = 1 Mbps), releasing a bandwidth of 2. The released bandwidth can upgrade the call at QoS level 4 with rate 11 Mbps to level 3. The system state after upgrade is (4, 1, 2, 1). Next, a level-2 call with rate 2Mbps leaves, releasing a bandwidth of 5.5. This can upgrade the only call at level 4 to level 3, resulting a system state of (4, 1, 2, 0).
upgrade()
1: while (TRUE) do
2: let X be the call with the largest PI in the system;
in case of tie, the one with the highest physical rate is selected;
3: if Bf ree ≥ MT (X.codec, prev(X.P I), X.rate) − MT (M.codec, X.P I, X.rate) then
4: change X ’s PI to prev(X.PI);
5: Bf ree = Bf ree−MT (X.codec, prev(X.P I), X.rate)+MT (M.codec, X.P I, X.rate); 6: else
7: return;
8: end if;
9: end while;
Figure 3.7: The bandwidth upgrade algorithm.
!" # $ # !" %&% # ' # ( ) * + %&% %&% %&% %&% %&% %&% # #
%&% # %&% # %&% #
, '&% &% # , #&% &% , # &% % %&% -, -&% . .&% / !" ' !" ' !" &%
Chapter 4
Analysis
In this section, we derive an analytical model to evaluate the performance of our QoS mechanisms. Our goal is to analyze the blocking probability of new calls, the dropping probability of handoff calls, and the call dropping probability due to change of transmis-sion rates. Without loss of generality, we assume all calls use the same G.726 codec at the default rate 32 kbps. Thus, during a degrade or upgrade process, calls will only change their PIs, but not codec. Suppose that there are m PIs, P I1, P I2, ..., P Im(in an ascending
order), and y transmission rates, R1, R2, ..., Ry (in a descending order).
Due to mobility, the rate change of a QSTA is modeled by the state diagram in Figure 4.1. From each state, a QSTA can transit to a higher or a lower rate with a rate ν following a Poisson distribution. In each QAP, new and handoff calls arrive by Poisson distributions with rates y · λn and y · λh, respectively. These rates are evenly distributed
to calls of all physical rates R1, R2, ..., Ry. Call holding time and cell residence time are
exponentially distributed with means of 1/µh and 1/µr, respectively. Thus, the channel
occupancy time of a call is exponentially distributed with mean 1/µ = 1/(µh+ µr). The
required bandwidth of a call with P Imax at the transmission rate Ri is denoted by Φi.
According to our CAC algorithm, computation of accepting or rejecting a call is all based on the assumption that all calls can be degraded to the lowest QoS level. In other words, a QAP drops or blocks a call when all existing calls use P Imax and the sum of
their used bandwidth meets some conditions. Therefore, to obtain blocking and dropping probabilities, we can assume that all calls use P Imax.
Transmission rate (Mbps) 11 5.5 2 1
Occupied MT (sec)/per session 0.041 0.050 0.083 0.134
Table 4.1: The required MT of a bi-directional voice call under different physical rates under our analytical model.
Figure 4.2: Generic state transitions under our analytical model.
For simplicity, we assume that a QAP can support y = 4 physical rates, 11, 5.5, 2 and 1 Mbps. For a bi-direction voice stream, assuming BI = 1sec, surplus = 1.1, and P Imax = 40ms, the required MT per BI of a call under each rate is listed in Table 4.1.
Our system can be modeled by a y = 4 dimensional Markov process. Each system state is written as (n1, n2, n3, n4), where ni is the number of calls at rate Ri, i = 1...4.
For each state (n1, n2, n3, n4), there 14 possible state transitions, as shown as Figure 4.2,
where n1 = a, n2 = b, n3 = c, n4 = d. Horizontal transitions are caused by call arrival or
departure events. The arrival rates are all modeled by λh+ Prλn. The departure rate for
rate Ri is niµ. For ease of presentation, we let Pr = 1 when n1Φ1+ n2Φ2+ n3Φ3+ n4Φ4 <
Bth; otherwise, new calls are accepted with a probability Pras defined in Sec. 3.1. Vertical
transitions are caused by transmission rate change.
A simplified two-dimension Markov process is shown in Figure 4.3 for the case of y = 2. The states marked by gray are those with Pr = 1, where all new calls can be accepted.
Under other states, a new call will be dropped with a fixed probability (1 − Pr).
Φ Φ Φ Φ Φ Φ Φ Φ Φ Φ Φ + Φ Φ + Φ Φ + Φ Φ + Φ ΦΦ ΦΦ ΦΦ Φ Φ Φ Φ Φ Φ ΦΦ Φ Φ Φ Φ Φ Φ Φ Φ Φ Φ Φ Φ Φ ΦΦ ΦΦ ΦΦ
Figure 4.3: A state transition example with y = 2 (q1 and q2 are the maximum numbers
Pn1,n2,...,ny of each state. There are four cases:
Case I: For the state such that n1 = n2 = ... = ny = 0,
y (λh+ λn) Pn1,n2,...,ny = µ
y
X
i=1
Pn1,n2,...,ni+1,...,ny. (4.1)
Case II: For states such that Py
i=1(niΦi) < Bth, " y (λh+ λn) + y X i=1 ni ! µ + y−1 X i=1 ni+ y X i=2 ni ! ν # Pn1,n2,...,ny = y X i=1 (ni+ 1) µPn1,n2,...,ni+1,...,ny+ (λh+ λn) Pn1,n2,...,ni−1,...,ny + y X i=2 (ni+ 1) νPn1,n2,...,ni−1−1,ni+1,...,ny + y−1 X i=1 (ni+ 1) νPn1,n2,...,ni+1,ni+1−1,...,ny . (4.2)
Case III: For states such that Py
i=1(niΦi) >= Bth and Pi=1y (niΦi) + Φy < Btotal,
" y (λh+ Prλn) + y X i=1 ni ! µ + y−1 X i=1 ni+ y X i=2 ni ! ν # Pn1,n2,...,ny = y X i=1 (ni+ 1) µPn1,n2,...,ni+1,...,ny + y X i=1 λh+ Ii+ ¯IiPr λn Pn1,n2,...,ni−1,...,ny + y X i=2 (ni+ 1) νPn1,n2,...,ni−1−1,ni+1,...,ny + y−1 X i=1 (ni+ 1) νPn1,n2,...,ni+1,ni+1−1,...,ny , (4.3) where for z ∈ {1, ..., y} Iz = 1, P y i=1(niΦi) − Φz < Bth 0, otherwise .
Case IV: For states such that Py
i=1(niΦi) <= Btotal and Pi=1y (niΦi) − Φy >= Bth,
" y X i=1 Ii ! (λh+ Prλn) + y X i=1 ni ! µ + y−1 X i=1 ni+ y X i=2 ni ! ν # Pn1,n2,...,ny = y−1 X i=1 Ii(ni+ 1) µ + ¯Ii+1ν Pn1,n2,...,ni+1,...,ny +Iy(ny + 1) µPn1,n2,...,ny−1,ny+1 + (λh+ Prλn) y X i=1 Pn1,n2,...,ni−1,...,ny + y X i=2 Ii−1,i(ni+ 1) νPn1,n2,...,ni−1−1,ni+1,...,ny + y−1 X i=1 (ni + 1) νPn1,n2,...,ni+1,ni+1−1,...,ny , (4.4) where for z ∈ {1, ..., y} Iz = 1, P y i=1(niΦi) + Φz <= Btotal 0, otherwise
and for (m, n) ∈ {(1, 2) , (2, 3) , ..., (y − 1, y)}
Im,n = 1, P
y
i=1(niΦi) − Φm+ Φn <= Btotal
0, otherwise .
Let Pb be the blocking probability of new calls, Pd be the dropping probability of
handoff calls, and Ptd be the call dropping probability due to change of transmission
rates. Given any system state ¯n = (n1, n2, ..., ny), let the bandwidth requirement τ (¯n) =
Py
i=1(niΦi). We can derive:
Pb = X τ(¯n)≥Bth Pn1,n2,...,ny (4.5) Pd = 1 y y X i=1 X τ(¯n)+Φi>Btotal Pn1,n2,...,ny (4.6) Ptd = y−1 X i=1 X τ(¯n)−Φi+Φi+1>Btotal ni Py−1 i=1 ni +Pyi=2ni Pn1,n2,...,ny ! . (4.7)
To compute Pb, Pd, and Ptd, we have to solve the steady-state probabilities Pn1,n2,...,ny. This can be done by the recursive technique proposed by Herzog et al. [10], which states
that there exists a subset of the state probabilities, called boundaries, such that all other states can be expressed as linear combinations of the boundary states. Therefore, we can determine the boundaries first and then derive the expressions for all remaining state probabilities as functions of the boundary values. This can significantly reduce the com-plexity of solving of Pn1,n2,...,ny as compared to traditional matrix inversion techniques. It has been shown to be suitable to solve a wide class of queuing problems.
First, we choose all states (n1, n2, ..., ny) such that ny = 0 as boundaries. According
to [10], we can rewrite the state probabilities as:
Pn1,n2,...,ny = Btotal Φy−1 X αy−1=0 ... Btotal Φ2 X α2=0 Btotal Φ1 X α1=0 Cα1,α2,...,αy−1 n1,n2,...,ny Pα1,α2,...,αy−1,αy=0 (4.8) Cα1,α2,...,αy−1 n1,n2,...,ny−1,ny=0 =
1, if n1 = α1, n2 = α2, ..., and ny−1 = αy−1
0, otherwise .
The coefficients Cα1,α2,...,αy−1
n1,n2,...,ny for ny 6= 0 can be solved recursively. Next, we rewrite Eq.s (4.1)–(4.4) by: Bn1,n2,...,nyPn1,n2,...,ny = y X i=1 Ari n1,n2,...,nyPn1,n2,...,ni+1,...,ny + y X i=1 Ali n1,n2,...,nyPn1,n2,...,ni−1,...,ny + y X i=2 Aui n1,n2,...,nyPn1,n2,...,ni−1−1,ni+1,...,ny + y−1 X i=1 Adi n1,n2,...,nyPn1,n2,...,ni+1,ni+1−1,...,ny, (4.9)
where the coefficients Ari
n1,n2,...,ny, A li n1,n2,...,ny, A ui n1,n2,...,ny, A di n1,n2,...,ny, and Bn1,n2,...,ny are abbreviations of those in Eq.s (4.1)–(4.4). Then we rewrite Eq. (4.9) as:
Pn1,n2,...,ny−1,ny+1 = Bn1,n2,...,nyPn1,n2,...,ny− Py−1 i=1 Arni1,n2,...,nyPn1,n2,...,ni+1,...,ny Ary n1,n2,...,ny − Py i=1Alni1,n2,...,nyPn1,n2,...,ni−1,...,ny Ary n1,n2,...,ny − Py i=2Auni1,n2,...,nyPn1,n2,...,ni−1−1,ni+1,...,ny Ary n1,n2,...,ny − Py−1 i=1 Adni1,n2,...,nyPn1,n2,...,ni+1,ni+1−1,...,ny Ary n1,n2,...,ny . (4.10)
After some manipulation, Eq. (4.10) can be further rewritten as:
Pn1,n2,...,ny−1,ny = Bn1,n2,...,ny−1Pn1,n2,...,ny−1− Py−1 i=1 A ri n1,n2,...,ny−1Pn1,n2,...,ni+1,...,ny−1 Ary n1,n2,...,ny−1 − Py i=1A li n1,n2,...,ny−1Pn1,n2,...,ni−1,...,ny−1 Ary n1,n2,...,ny−1 − Py i=2A ui n1,n2,...,ny−1Pn1,n2,...,ni−1−1,ni+1,...,ny−1 Ary n1,n2,...,ny−1 − Py−1 i=1 A di n1,n2,...,ny−1Pn1,n2,...,ni+1,ni+1−1,...,ny−1 Ary n1,n2,...,ny−1 . (4.11)
For each fixed state (α1, α2, ..., αy−1, 0), if we let Pn¯ = 1 and Pn¯0 = 0 for all ¯n0 6= ¯n, from Eq.s (4.8) and (4.11), we can obtain:
Cα1,α2,...,αy−1 n1,n2,...,ny = Bn1,n2,...,ny−1C α1,α2,...,αy−1 n1,n2,...,ny−1− Py−1 i=1 A ri n1,n2,...,ny−1C α1,α2,...,αy−1 n1,n2,...,ni+1,...,ny−1 Ary n1,n2,...,ny−1 − Py i=1A li n1,n2,...,ny−1C α1,α2,...,αy−1 n1,n2,...,ni−1,...,ny−1 Ary n1,n2,...,ny−1 − Py i=2A ui n1,n2,...,ny−1C α1,α2,...,αy−1 n1,n2,...,ni−1−1,ni+1,...,ny−1 Ary n1,n2,...,ny−1 − Py−1 i=1 A di n1,n2,...,ny−1C α1,α2,...,αy−1 n1,n2,...,ni+1,ni+1−1,...,ny−1 Ary n1,n2,...,ny−1 (4.12)
After obtaining all coefficients Cα1,α2,...,αy−1
n1,n2,...,ny , the probabilities of boundaries can be derived by solving the remaining unused bBtotal
Φ1 c × b
Btotal
Φ2 c × ... × b
Btotal
Φy−1c independent equations in Eq. (4.9) as well as the normalizing condition:
X n1 X n2 ...X ny Pn1,n2,...,ny = 1 (4.13) .
Having solved the boundaries, all steady-state probabilities Pn1,n2,...,ny can be determined from (4.8). Thus, Pb, Pd, and Ptd can then be derived.
Chapter 5
Simulation Results
To verify the correctness and applicability of our proposed algorithm, an event-driven simulator written is developed in C++. The following assumptions are made in our simulation. (1) The same call arrival model, call holding time, and call residence time as specified in Chapter 4 are used in the simulation. (2) The communication channel is assumed to be error-free. (3) No RTS/CTS is used. (4) The BI=500 ms. (5) There is only AC VO traffic in the network, and its CWmin=7, CWmax=15, and IFSN=2. (6)
G.726 with 32 kbps is used as the voice source. The offered network load is defined as ρ = (λn+ λh)/(µr+ µh). To obtain steady states, each simulation case is run with one
million arrivals. The performance metrics are new call blocking rate, handoff call dropping rate, and channel utilization.
5.1
Validation of Analytical Results
In this experiment, we assume that 40% of arrival calls are handoff calls. The channel occupancy time is 2 second. Pris set to 0.8 when Bdeg ≤ (Btotal−Bth). Fig. 5.1 shows the
blocking rate and dropping rate of both analytical and simulation results. The maximal difference of blocking rate between simulation and analytical results is about 0.44%, which appears when ρ = 20. It can be seen that analytical results match well with simulation results.
5.2
Influence of CAC and RA
In this experiment, we want to evaluate the impact of CAC and RA. Pr is set to 0.8
when Bdeg ≤(Btotal− Bth). We compare our scheme against the CAC-only and
“no-CAC-no-RA” cases. For the CAC-only case, the PIs of calls are fixed. Fig. 5.2(a) shows the channel utilization under different offered loads. Clearly, our scheme has very good
0 1 2 3 4 5 6 7 8 9 10 11 12 13 rate (%) 0 4 8 12 16 20 24 ρ : Blocking Rate(analysis)
∗ : Blocking Rate (simulation) / : Dropping Rate (analysis) ◦ : Dropping Rate (simulation)
... . ... / / / / / / / . ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ... ... . ... ... . .... . . ... . . ... . . .... . . ... . ... . . . .... . ... . ... ... . . . .... . ... . ... ... ... . . ... . . ... . ... . . ... . . ... . . ... . . . ... . . ... . . . ... . . . ... ... ... ... ... . ... . ... . ... . . ... . ... . . ... . . ... . . . ... . . . . ∗ ∗ ∗ ∗ ∗ ∗ ∗ . ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ... . . ... . ... . ... ... ... . ... . ... ... . . ... . ... ... . . ... . ... ◦ ◦ ◦ ◦ ◦ ◦ ◦
Figure 5.1: Comparison of simulation and analytical results on blocking rate and dropping rate (λh = 0.8, λn= 1.2).
utilization because calls can always be upgraded when there are extra resources. The no-CAC-no-RA (PI=20) case outperforms the CAC-only (PI=20) case because it accepts every incoming request in all network situations. Fig. 5.2(b) shows the medium time per session receives (which is approximated by the total used medium time divided by the total number of ongoing calls). With call admission control, the medium time of our scheme is better than that of the no-CAC-no-RA case. Even when the work load is high, our scheme can still guarantee the minimum bandwidth requirement of all calls. As ρ ≥ 32, the minimum time of the no-CAC-no-RA case will drop to an unacceptable level. This shows that our scheme can well utilize network resources while guarantee the quality of calls.
Fig. 5.3 shows the new call blocking rate and handoff call dropping rate versus different offered loads. The rates of the no-CAC-no-RA case are all zero because every incoming request is accepted. From Fig. 5.3(a), we see that our scheme is only slightly worse than the CAC-only (PI=40) case after ρ ≥ 12 because of our call acceptance policy. However, the benefit is our lower handoff call dropping rate, as shown in Fig. 5.3(b).
0 10 20 30 40 50 60 70 80 90 100 Channel utilization (%) 0 4 8 12 16 20 24 28 32 ρ (a) : CAC + RA • : CAC − only (P I = 10) ∗ : CAC − only (P I = 20) / : CAC − only (P I = 40) ◦ : no − CAC − no − RA (P I = 20) . . ... . . ... • • • • • • • • • . ... ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ . . ... / / / / / / / / / . ... ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 Medium time per session (sec) 0 4 8 12 16 20 24 28 32 ρ (b) : CAC + RA ? : CAC − only (P I = 5) • : CAC − only (P I = 10) ∗ : CAC − only (P I = 20) / : CAC − only (P I = 40) ◦ : no − CAC − no − RA (P I = 20) . . ... . . . . . . . . . . . . . ... ? ? ? ? ? ? ? ? ? ? ? . . . . . . . . . . . . . ... • • • • • • • • • • • . . . . . . . . . . . . . ... ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ . . . . . . . . . . . . . ... / / / / / / / / / / / . . . . . . . . . . . . . ... ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦
0 10 20 30 40 50 60 70 80 Call blocking rate (%) 0 4 8 12 16 20 24 ρ (a) : CAC + RA ? : CAC − only (P I = 10) • : CAC − only (P I = 20) ∗ : CAC − only (P I = 40) ◦ : no − CAC − no − RA (P I = 20) . ... . . . ... ? ? ? ? ? ? ? ... • • • • • • • ... ∗ ∗ ∗ ∗ ∗ ∗ ∗ ... ◦ ◦ ◦ ◦ ◦ ◦ ◦ 0 10 20 30 40 50 60 70 80 Call dropping rate (%) 0 4 8 12 16 20 24 ρ (b) : CAC + RA ? : CAC − only (P I = 10) • : CAC − only (P I = 20) ∗ : CAC − only (P I = 40) ◦ : no − CAC − no − RA (P I = 20) . ... . . ... ? ? ? ? ? ? ? . ... • • • • • • • . . ... ∗ ∗ ∗ ∗ ∗ ∗ ∗ ... ◦ ◦ ◦ ◦ ◦ ◦ ◦
5.3
Influence of
P
rThe value of Pr reflects the possibility that a QAP permits new calls to start. Clearly, a
larger Pr will benefit new calls but hurt handoff calls. Fig. 5.4 shows the impact of Pr
on call blocking and dropping probabilities. From these curves, a suggested value of Pr
could range from 0.2 to 0.6.
5.4
Influence of Traffic Characteristic
Next, we evaluate the influence of traffic characteristic. We change the percentage of handoff calls while keep the offered load unchanged. Fig. 5.5 shows this impact on call blocking and call dropping rates. We can see that our scheme is quite insensitive to this change, unless the offered load is very high. This concludes that our scheme can provide good QoS to handoff calls.
0 10 20 30 Call blocking rate (%) 0 0.2 0.4 0.6 0.8 1.0 Pr (a) : ρ = 24 ? : ρ = 20 • : ρ = 16 ∗ : ρ = 12 / : ρ = 8 . ... . ... ? ? ? ? ? ... • • • • • ... ∗...∗...∗...∗...∗.... / / / / / 0 1 2 3 4 5 6 7 8 9 Call dropping rate (%) 0 0.2 0.4 0.6 0.8 1.0 Pr (b) : ρ = 24 ? : ρ = 20 • : ρ = 16 ∗ : ρ = 12 / : ρ = 8 . ... . ... ? ? ? ? ? ... •...•...•...•...•.... ∗...∗...∗...∗...∗. / / / / /
0 5 10 15 20 Call blocking rate (%) 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 λh/(λn+ λh) (a) : ρ = 24 ? : ρ = 20 • : ρ = 16 ∗ : ρ = 12 / : ρ = 8 ... ... ? ? ? ? ? ... • • • • • ... ∗...∗...∗...∗...∗.... / / / / / 0 1 2 3 4 5 Call dropping rate (%) 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 λh/(λn+ λh) (b) : ρ = 24 ? : ρ = 20 • : ρ = 16 ∗ : ρ = 12 / : ρ = 8 ... ... ? ? ? ? ? . ... •...•...•...•...• ∗...∗...∗...∗...∗ / / / / /
Figure 5.5: The impact of the percentage of handoff calls on: (a) call blocking rate and (b) call dropping rate.
Chapter 6
Conclusions
In this paper, we have proposed a CAC and a RA mechanisms to solve the handoff and re-source redistribution issues over IEEE 802.11e wireless networks. By upgrading/degrading resources allocated to calls, we can make better use of the network resource. We have also derived an analytical model to evaluate our system with multi-level QoS support. Three performance metrics, blocking probability, dropping probability, channel utilization, have been derived. Our numerical analysis shows the importance of CAC and RA mechanisms, especially when user mobility is high and fairness is important. Our simulation results also support our conclusions.
Bibliography
[1] IEEE Std 802.11e-2005, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications. Amendment 8: Medium Access Control (MAC) Quality of Service Enhancements. Nov 2005.
[2] P.-Y. Wu, Y.-C. Tseng, and H. Lee. Design of QoS and Admission Control for VoIP Services over IEEE 802.11e WLANs. National Computer Symposium, 2005. Taiwan. [3] S. Garg and M. Kappes. Can I add a VoIP Call? In Proc. of International Conference
on Communications (ICC 2003), 26(1), May 2003.
[4] N. Nasser. Adaptability Enhanced Framework for Provisioning Connection-level QoS in Multimedia Wireless Networks. IEEE and IFIP International Conference on Wire-less and Optical Communications Networks (WOCN), pages 275–279, Mar 2005. [5] C.-T. Chou and K.-G. Shin. Analysis of Adaptive Bandwidth Allocation in Wireless
Networks with Multilevel Degradable Quality of Service. IEEE Trans. on Mobile Computing, 3(1):5–17, Jan./Feb. 2004.
[6] G. Karlsson. Asynchronous transfer of video. IEEE Communication Magazine, 11:118–126, Aug 1996.
[7] M. Handley and V. Jacobson. SDP: Session Description Protocol, RFC2327. in IETF, 1998.
[8] Recommended Practice for Multi-Vendor Acess Point Interoperability via an Inter-Access Point Protocol Across Distribution Systems Supporting IEEE 802.11 Opera-tion. IEEE Draft 802.1f/Final Version, Jan 2003.
[9] Y.-C. Kim, D.-E. Lee, B.-J. Lee, Y.-S. Kim, and B. Mukherjee. Dynamic Channel Reservation based on Mobility in Wireless ATM. Proc. of IEEE wmATM’99, pages 100–106, 1999.
[10] U. Herzog, L. Woo, and K. Chandy. Solution of queueing problems by a recursive technique. IBM J. Res. Dev., 19:295–300, May 1975.
[11] J. Rosenberg, H. Schulzrinne, E. Schooler, M. Handley, G. Camarillo, A. Johnston, J. Peterson, and R. Sparks. SIP: Session Initiation Protocol, RFC3261 in IETF. June 2002.
[12] D. Conllins. Carrier Grade Voice over IP. McGraw-Hill Companies, Inc, second edition, 2003.
[13] W. Wang, S. C. Liew, and V. O. K. Li. Solutions to Performance Problems in VoIP over 802.11 Wireless LAN. IEEE Trans. on Vehicular Technology, Jan. 2005.
[14] A. Malla, M. El-Kadi, S. Olario, and P. Todorova. A Fair Resource Allocation Protocol for Multimedia Wireless Networks. IEEE Transactions On Parallel And Distributed Systems, 14(1), Jan 2003.
Curriculum Vita
Ling Lee ([email protected]) received her B.S. degree in Computer Science from the National Chiao-Tung University, Taiwan, in 2004. Her research interests include wireless networks, VoIP, and QoS issues.