channel-state dependent scheduling of delay …akk4212/channel-aware-scheduling.pdf ·...
TRANSCRIPT
CHANNEL-STATE DEPENDENT SCHEDULING OF DELAY-BOUNDED TRAFFIC IN BEYOND 3G WIRELESS
MULTIMEDIA NETWORKS
By
Ahmed Khattab Fathi Khattab B.Sc. in Electronics and Communications Engineering – Cairo University
A Thesis Submitted to the
Faculty of Engineering at Cairo University in Partial Fulfillment of the
Requirements for the Degree of
Master of Science in
Electronics and Electrical Communications Engineering
Supervised by Dr. Khaled Mohamed Fouad Elsayed
Professor, Faculty of Engineering, Cairo University
Faculty of Engineering, Cairo University
Giza, Egypt 2004
ii
TABLE OF CONTENTS
TABLE OF CONTENTS ...…………………………………………………..... II
LIST OF TABLES …………………………………………………………... IV
LIST OF FIGURES …………………………………………………………... V
LIST OF SYMBOLS ……………………………………………………….... VIII
LIST OF ABBREVIATIONS ………………………………………………….. IX
ACKNOWLEDGEMENTS …………………………………………………..... X
ABSTRACT ………………………………………………………………..... XII
Chapter 1: Introduction ……………………………………………….... 1
1.1. Thesis Organization …………………………………………. 5
Chapter 2: Scheduling in Wireless Networks ………………………….. 7
2.1. Wireless Network Challenges ……………………………….. 8
2.1.1. Wireless Link Variability …………………………..... 8
2.1.2. Fairness …………………………………………….... 9
2.1.3. Scarcity of Resources ………………………………... 10
2.2. Multiuser Diversity in Wireless Systems …………………..... 10
2.3. Cross Layer Designs ……………………………………….... 13
2.4. Thesis Motivation ………………………………………….... 17
Chapter 3: Channel-Aware Scheduling Disciplines for Delay
Bounded Traffic in TDM-Based Wireless Networks ……..
19
3.1. Network Model ……………………………………………… 20
3.2. Previous Work ……………………………………………….. 23
3.3. The Proposed Scheduling Schemes …………………………. 27
3.3.1. Channel Dependent Earliest Due Date (CD-EDD)
Scheduling Discipline ………………………………..
29
3.3.2. A Set of Violation Fair Rules ……………………….. 31
iii
Chapter 4: Simulation Results and Discussions of the TDM-Based
Scheduling Disciplines ……………………………………...
35
4.1. Simulation Setup …………………………………………….. 35
4.2. Performance Metrics ………………………………………… 37
4.3. Results and Discussions ……………………………………... 39
Chapter 5: Channel-Aware Scheduling for Delay-Bounded Traffic in
OFDMA-Based Wireless Networks ………………………..
63
5.1. Network Model ……………………………………………… 65
5.2. Scheduling in OFDMA Networks …………………………… 68
5.2.1. Static Subcarrier Management ……………………..... 68
5.2.2. Dynamic Subcarrier Management …………………... 69
5.3. Problem Formulation ………………………………………... 72
5.4. Subcarrier Allocation Algorithm ……………………………. 75
5.5. Subcarrier Assignment Algorithm …………………………... 80
Chapter 6: Simulation Results and Discussions of the OFDMA-Based
Scheduling …………………………………………………...
83
6.1. Simulation Setup …………………………………………….. 83
6.2. Results and Discussions ……………………………………... 87
Chapter 7: Conclusions and Future Research ………………………… 101
7.1. Conclusions ………………………………………………….. 101
7.2. Future Research Directions ………………………………….. 103
REFERENCES ……………………………………………………………..... 105
APPENDIX A: CODE SAMPLES …………………………………………….. 111
iv
LIST OF TABLES
Table 4.1 The system capacity of HDR cell achieved by different
disciplines
Table 4.2 Fading levels and its corresponding capacities used in
simulations
Table 4.3 Simulation results summary
Table 6.1 Summary of simulation parameters
v
LIST OF FIGURES
Figure 2.1 Throughput region for a simple channel model
Figure 3.1 Channel state dependent downlink scheduling architecture for
multiple users sharing a wireless TDMA channel
Figure 4.1 The average throughput per user for 20 m sec delay bound
Figure 4.2 The average throughput per user for 60 m sec delay bound
Figure 4.3 The average throughput per user for 100 m sec delay bound
Figure 4.4 The average throughput per user for 200 m sec delay bound
Figure 4.5 The average throughput per user for 300 m sec delay bound
Figure 4.6 The average throughput per user for 400 m sec delay bound
Figure 4.7 Delay distributions of user 1 and user 14 for 20 m sec delay bound
Figure 4.8 Delay distributions of user 1 and user 14 for 60 m sec delay bound
Figure 4.9 Delay distributions of user 1 and user 14 for 100 m sec delay bound
Figure 4.10 Delay distributions of user 1 and user 14 for 200 m sec delay bound
Figure 4.11 Delay distributions of user 1 and user 14 for 300 m sec delay bound
Figure 4.12 Delay distributions of user 1 and user 14 for 400 m sec delay bound
Figure 4.13 The maximum and the minimum 95-percentile delays
Figure 4.14 The maximum and the minimum percentage of lost packets
Figure 4.15 Delay distributions of user 1 and user 14 for 20 m sec delay bound (VF rules)
Figure 4.16 Delay distributions of user 1 and user 14 for 60 m sec delay bound (VF rules)
vi
Figure 4.17 Delay distributions of user 1 and user 14 for 100 m sec delay bound (VF rules)
Figure 4.18 Delay distributions of user 1 and user 14 for 200 m sec delay bound (VF rules)
Figure 4.19 Delay distributions of user 1 and user 14 for 300 m sec delay bound (VF rules)
Figure 4.20 Delay distributions of user 1 and user 14 for 400 m sec delay bound (VF rules)
Figure 4.21 The maximum and the minimum 95-percentile delays (VF rules)
Figure 4.22 The maximum and the minimum percentage of lost packets (VF rules)
Figure 4.23 The throughput behavior at 20 m sec delay bound
Figure 4.24 The throughput behavior at 60 m sec delay bound
Figure 4.25 The throughput behavior at 100 m sec delay bound
Figure 4.26 The throughput behavior at 200 m sec delay bound
Figure 4.27 The throughput behavior at 300 m sec delay bound
Figure 4.28 The throughput behavior at 400 m sec delay bound
Figure 5.1 Orthogonal Frequency Division Multiple Access (OFDMA) transceiver
Figure 5.2 An example of channel gain variations taken from [26]
Figure 5.3 Subcarrier Allocation Algorithm
Figure 5.4 Subcarrier Assignment Algorithm
Figure 6.1 The power-delay profile of the B Model pedestrian environment.
Figure 6.2 Throughput performance for a 20 msec delay bound.
Figure 6.3 Throughput performance for a 50 msec delay bound.
vii
Figure 6.4 Throughput performance for a 100 msec delay bound.
Figure 6.5 Throughput fairness indices of both the dynamic algorithm and the static algorithm for different delay bounds.
Figure 6.6 Deadline violation fairness for different delay bounds.
Figure 6.7 Delay tails of the best and worst channel users (N = 42 users).
Figure 6.8 Delay tails of the best and worst channel users (1.5% and 2.3% of the best and the worst users packets were lost) (N = 120 users, T = 20 msec).
Figure 6.9 Delay tails of the best and worst channel users (0.07% and 1.4% of the best and the worst users packets were lost) (N = 165 users, T = 50 msec).
Figure 6.10 Delay tails of the best and worst channel users (6.7% and 16.9% of the best and the worst users packets were lost) (N = 170 users, T = 100 msec).
viii
LIST OF SYMBOLS
ai Delay weighted constant
B Channel of bandwidth
C(t) The instantaneous Shannon channel capacity
di(t) Time to expire of user i HoL packet at time t
δi Deadline violation probability
δij(t) Indicator that subcarrier j is to be assigned to user i at time t
|h(t)| The normalized gain (or fading level) of the wireless channel at
the time t
μi(t) The actual rate that could be used for transmission by the ith
user at time t in TDM-based networks
iµ The mean rate supported or previously offered to the ith user in
TDM-based networks
μji(t) The actual rate that could be used for transmission by the ith
user over the jth subcarrier at time t in OFDMA-based networks
( )i tµ The average subcarrier capacity of the ith user
N Number of users in the system
Nt Number of active users at time t in the system
NVi(t) The number of deadline due date violations encountered in the
flow of the ith user up to time t.
( )NV t The average of the number of violations in all N queues
ni(t) The number of subcarriers to be assigned to the ith user at the
slot starting at time t
RT(t) The total instantaneous system throughput
ri The average rate of user i video stream
S Total number of subcarriers
S' Number of remaining subcarriers
t Time index
Ti Delay Bound of user i
Wi(t) Waiting time of user i HoL packet at time t
ix
LIST OF ABBREVIATIONS
CD-EDD Channel Dependent – Earliest Deadline Due
CDMA Code Division Multiple Access
EDD Earliest Deadline Due
EDGE Enhanced Data rates for GSM Evolution
FDMA Frequency Division Multiple Access
GPRS General Packet Radio Services
HDR High Data Rate
HoL Head of Line
LWDF Largest Weighted Delay First
MBWA Mobile Broadband Wireless Access
M-LWDF Modified – Largest Weighted Delay First
OFDM Orthogonal Frequency Division Multiplexing
OFDMA Orthogonal Frequency Division Multiple Access
PDA Personal Digital Assistant
QoS Quality of Service
RTT Radio Transmission Technology
SISO Single Input Single Output
SNR Signal to Noise Ratio
TCP Transmission Control Protocol
TDMA Time Division Multiple Access
UMTS Universal Mobile Telecommunications System
UTRA UMTS Terrestrial Radio Access
VF Violation Fair
WWW World Wide Web
x
ACKNOWLEDGEMENTS
I have the pleasure and honor to express heart-felt gratitude to my thesis
supervisor Dr. Khaled M. Fouad Elsayed for encouragement and unfailing
guidance which enabled achieving the research goals.
Grateful thanks are also due to Dr. Mohammed Khairy for providing valuable
advice and needed information.
The role of engineer Islam Sherif is also gratefully acknowledged.
Last, but not least, a special expression of gratitude and appreciation goes to
my family for their patience and generous support.
xi
xii
ABSTRACT
Providing delay guarantees to time-sensitive traffic in beyond 3G
wireless multimedia networks is a challenging issue. This is due to the time-
varying link capacities and the variety of real-time applications expected to be
handled by such networks. Multiuser diversity schemes exploiting variation in
users' channel conditions have been shown to offer orders of magnitude increase
in the performance of wireless systems. In this thesis, we address the problem of
channel-aware scheduling of delay bounded traffic for two different wireless
network models.
First, we consider this problem in a Time Division Multiple Access
(TDMA) based wireless networks. We propose two channel-aware scheduling
disciplines that are capable of providing such delay guarantees in wireless
networks. Namely, the Channel Dependent Earliest-Due-Date (CD-EDD)
discipline, which attempts to guarantee the targeted delay bounds, and the
Violation Fair (VF) scheduling, which attempts to provide fairness in both
bandwidth sharing as well as the targeted delay bounds delivered to the different
users.
The second system considered is multiuser scheduling in Orthogonal
Frequency Division Multiple Access (OFDMA) based broadband wireless
networks. In ODFMA, the scheduling problem is further complicated by the
existence of multiple subcarriers. We propose heuristic algorithms for both
subcarrier allocation and assignment in such a network. These dynamic
algorithms utilize multiuser diversity to increase the system efficiency by
attempting to guarantee the required delay bounds while providing fairness in
throughput sharing among different users.
A unique feature of our work is the possibility of explicit provisioning of
statistical QoS as well as enhancing fairness in data rate, delay bound, and delay
bound violation. We provide extensive simulation results to show the different
performance aspects of the proposed schemes.
1
Chapter 1 Introduction
Future wireless networks are designed to support wideband data
communications as well as voice communications. Such networks will be the
basis for a wireless information society where access to information and
information services is available anytime, anywhere, and to anybody. This
objective has been encouraged by the tremendous growth of the wireless industry
over the few past decades. Internet is another branch of the telecommunication
industry which has enjoyed similar dramatic growth which has resulted in the
ever growing range of services available through the World Wide Web (WWW).
Thus, the introduction of mobile Internet brought about by the convergence of
these two technologies is the future objective of the telecommunication industry.
Multiple enhancements have being implemented in both the currently
deployed cellular mobile systems and the Internet networking. The progressive
introduction of the General Packet Radio Services (GPRS), Enhanced Data rates
for GSM Evolution (EDGE), the High Data Rate (HDR/CDMA) and the third
generation Universal Mobile Telecommunications System (UMTS) clearly
illustrates this evolution. At the same time, several wireless technologies have
been designed in order to include arrangements for accessing Internet services
such as IEEE 802.11, 802.16 and HIPERLAN2. Each of these technologies has
been optimized for operation over a particular range of service bit rate versus
user speed of mobility. Moreover, several technologies have been upgraded to
enable ad-hoc networking. In this hybrid environment, the need to provide
ubiquitous connectivity for slow and fast moving users with different rate
requirements arises. Beyond 3G and 4G networks are being developed towards
achieving this objective. Such networks could be implemented based on a
common Internet Protocol (IP) core network internetworking with multiple
2
access networks for broadcast, wide area cellular and short range
communications. Thus, beyond 3G and 4G wireless networks should enable the
"person to machine" and "machine to machine" networking parallel to the
"person to person" communication concept of cellular wireless for ubiquitous
connectivity to the Internet services.
Because wireless frequency is a scarce resource, efficient frequency
utilization is becoming increasingly important. Resource allocation schemes and
scheduling policies are critical to achieving these goals. In wireline networks,
resource allocation schemes and scheduling policies play important roles in
providing service performance guarantees, such as throughput, delay, delay-jitter,
fairness, and loss rate [1]. However, resource allocation and scheduling schemes
from the wireline domain do not carry over to wireless systems because wireless
channels have unique characteristics not found in wireline channels, such as
limited bandwidth, time-varying and location-dependent channel conditions, and
channel-condition-dependent throughput.
In wireless networks, the channel conditions of mobile users are time-
varying. Radio propagation can be roughly characterized by three nearly
independent phenomena: path-loss variation with distance, slow log-normal
shadowing, and fast multipath-fading. Path losses vary with the movement of
mobile stations. Slow log-normal shadowing and fast multipath-fading are time-
varying with different time scales. Thus, users perceive time-varying service
quality and/or quantity because channel conditions are time-varying. For voice
users, better channel conditions may result in better voice quality. For packet
data service, better channel conditions (or larger signal to interference plus noise
ratio (SINR)) can be used to provide higher data rates by reducing coding or
spreading and/or increasing the constellation density. Previous research showed
that cellular spectral efficiency (in terms of b/s/Hz/sector) can be increased by a
factor of two or more if users with better links are served at higher data rates.
Procedures to exploit this are already in place for all the major cellular standards:
adaptive modulation and coding schemes are implemented in the 3G TDMA
3
standards, and variable spreading and coding are implemented in the 3G CDMA
standards. In general, a user is served with better quality and/or at a higher bit
rate when the channel condition is better.
On one hand, good scheduling schemes should be able to exploit the
time-varying channel conditions of users to achieve higher utilization of wireless
resources. On the other hand, the potential to exploit higher data throughputs in
an opportunistic way, when channel conditions permit, introduces the tradeoff
problem between wireless resource efficiency and fairness among users. Because
wireless spectrum is a scarce resource, improving the efficiency of spectrum
utilization is important, especially to provide high-rate-data services. Hence, we
cannot expect the same throughput for all users because the users in general can
have very different channel conditions. However, a scheme designed only to
maximize the overall throughput could be very unfair among users, especially
users with widely disparate distances from the base station. For example,
allowing only users close to the base station to transmit with high transmission
power may result in very high throughput, but is unfair to other users. This basic
dilemma motivates our work: to improve wireless resource efficiency by
exploiting time-varying channel conditions, and at the same time satisfy the
delay quality of service (QoS) for multiple multimedia users sharing a fading
channel, and enhancing the level of fairness among users.
In this thesis, we address this problem in two wireless network models
based on different multiple access methods. We develop simple and efficient
scheduling schemes, which can yield substantial capacity gain. The efficiency is
achieved by virtue of multiuser diversity. Multiuser diversity refers to a type of
diversity present across different users in a fading environment. This diversity
can be exploited by scheduling transmissions so that users transmit when their
channel conditions are favorable. Using such an approach leads to a system
capacity that increases with the number of users. In order to realize this
mechanism, the scheduler should be equipped with a scheme to estimate the
channel state of every user in the system, with this information, the scheduler can
4
exploit multiuser diversity. However, making the scheduling decision only
dependent on the users' channel conditions will cause severe degradation of the
service offered to the users with long period of bad channel states. The proposed
solutions employ mechanisms to compensate such users in order to serve their
packets before expiry. A unique feature of our work is explicit provisioning of
statistical QoS, which is the capability characterized by a data rate, delay bound,
and delay-bound violation probability triplet.
First, we consider a time-slotted system in which time is the resource to
be shared among the users. Such a network is called Time Division Multiple
Access (TDMA) networks. The scheduler function is to select only one user for
transmission in each time slot. We propose two scheduling disciplines applicable
in such a network.
In the second part of the thesis, we address scheduling in OFDMA-based
broadband wireless networks. Orthogonal Frequency Division Multiple Access
(OFDMA) is a multiple access scheme used in such networks to support high
speed communication over fading channels. The channel is subdivided into a set
of subcarriers as in Orthogonal Frequency Division Multiplexing (OFDM). This
set of subcarriers is the common system resource to be shared among users. The
scheduling problem is how to distribute this set of subcarriers among users
present in the system. Such a kind of problem is computationally complex. So,
our methodology is to subdivide it into a couple of lower complexity problems,
namely, subcarrier allocation problem and subcarrier assignment problem. We
propose novel practical opportunistic algorithms for these two problems in this
thesis. The objective of these algorithms is also to fairly provide the requested
quality of service to real-time traffic users, and in the meantime, increase the
system efficiency by utilizing multiuser diversity.
5
1.1 Thesis Organization
The remainder of this thesis is organized as follows. In chapter 2, we
highlight the basic characteristics of wireless systems which make scheduling
multiple users a challenging issue. Then we discuss multiuser diversity and the
recently introduced concept of cross-layer optimization in wireless systems.
Multiuser diversity is our key technique to increase the system efficiency in
resource utilization. The motivation of the thesis is then identified.
In chapter 3, we consider the channel-aware scheduling problem in TDM-
based wireless networks for multiple delay-sensitive users. First, we describe the
network model. Then, we present a comprehensive study of the literature in this
area. From this study, we identify the main characteristic of the solution of such a
problem. We propose two channel-aware scheduling schemes that are capable of
providing delay guarantees for time-sensitive traffic in wireless networks. The
first proposed scheme, the Channel-Dependent Earliest-Due-Date (CD-EDD)
discipline, attempts to guarantee the targeted delay bounds in addition to
exploiting multiuser diversity to make best utilization of the variable capacity of
the channel. In the second scheme, the Violation Fair (VF) scheduling, we
attempt to ensure that the number of packets dropped due to deadline violation is
fairly disturbed among users. This provides fairness in both bandwidth sharing as
well as the quality of service delivered to different users.
In chapter 4, we provide extensive simulation results to show the different
performance aspects of the proposed schemes. In particular, we show that it can
simultaneously guarantee a delay upper bound while providing fairness in these
guarantees among all users, as well as providing fairness in the throughput
sharing among different users in fading wireless channel networks.
6
In chapter 5, we tackle the problem of channel-aware scheduling of
multimedia users in OFDMA-based wireless networks. After describing such
wireless networks, we discuss the scheduling problem and briefly describe the
different scheduling schemes proposed so far in the literature. We present a
mathematical formulation of the scheduling problem. Then we propose efficient
opportunistic subcarrier allocation and assignment algorithms that utilize
multiuser diversity to achieve a performance gain while yet satisfying the QoS
constraints of multimedia traffic.
In chapter 6, we explore the various characteristics of the subcarrier
allocation and assignment algorithms proposed in chapter 5 through a set a
simulation tests. In order to qualify the achievements of our dynamic algorithms,
we compare them with the best known static algorithm.
Finally, in chapter 7, we summarize the thesis and conclude the main
findings of this research. Then we point out some future research directions
advised from this study.
7
Chapter 2 Scheduling in Wireless Networks
The rapid growth of wireless technology, when coupled with the
explosive growth of the Internet, has increased the demand for wireless data
services. Traffic on beyond 3G wireless networks is expected to be a mix of real-
time traffic such as voice, multimedia teleconferencing, games; and data-traffic
such as WWW browsing, messaging and file transfers. These applications will
require diverse quality of service (QoS) guarantees. Various scheduling
disciplines have been developed in order to guarantee certain required QoS over
wireline networks. However, these service disciplines, such as Weighted Fair
Queuing (WFQ), virtual clock, and Earliest-Due-Date First (EDD) [1], are not
directly applicable in wireless networks because they do not consider the
characteristics of wireless channel. These characteristics include high error rate,
bursty errors, location-dependent and time-varying wireless link capacity, scarce
bandwidth, user mobility, and power limitation of the mobile hosts. All of the
above characteristics cause the development of efficient and effective scheduling
algorithms for wireless networks to be very challenging.
In this chapter, we first highlight the wireless network peculiarities that
made the design of efficient scheduling disciplines a very challenging issue. We
then briefly introduce a new kind of diversity inherently present in a wireless
network with a multiple of users. This type of diversity is called multiuser
diversity which exploits variation in channel states of the users in a wireless
system. This issue has been recently considered as cross-layer optimization
technique in wireless networks; and have been shown to offer orders of
magnitude increase in the capacity and the performance of wireless systems.
8
2.1 Wireless Networks Challenges
2.1.1 Wireless Link Variability
The biggest difference between a wireless network and a wireline
network is the transmission link variability. Due to the high quality of the wired
transmission media such as fiber and copper, packet transmissions on wireline
networks enjoy very low error rate. However, wireless channels are more error-
prone and suffer from interference, fading, and shadowing. As a result, the
capacity of a wireless link has very high variability. Specifically, there are two
types of wireless link variations [2]:
(i) Small-scale channel variations
This is the rapid fluctuations of the signal's strength over a small
travel distance or small time interval. Such fast changes may be caused
by either the multipath propagation of radio signals or the mobility of
the user terminals as well as the surrounding environment. Thus, this
phenomenon is usually called multipath fading or shadowing. Fast
channel variations due to fading are such that thee states of different
channels can asynchronously switch from “good” to “bad” within a few
milliseconds and vice-versa. This causes bursts of errors to occur during
which packets cannot be efficiently transmitted on the link.
(ii) Large-scale channel variations
Unlike the fast channel variations caused by fading, there is
another type of variations occurring on a much greater space – time
scale. Large-scale channel variations means that the average channel
state conditions (signal strength) changes according to the relative
distance between the transmitter and the receiver. For example, in a
cellular wireless system, the same wireless link capacity may be seen
having different value depending on relative location to the base station.
9
Thus, due to small-scale and large-scale changes in the channel, some
users may inherently demand more resources (e.g. channel access time or
bandwidth) than others based on their location or mobility pattern, even if their
data rate requirement is the same as or even less than other users. Such link
variations require the scheduling algorithms to be equipped with certain dynamic
mechanisms that can deal with these time-dependent and location-dependent
changes.
2.1.2 Fairness
Since wireline media may be considered error-free, the service rate
allocated is indeed the amount of service share that is received by a particular
flow. Providing fairness in resource sharing in wireline networks is usually
guaranteed by dedicating a certain service rate to a flow, and the scheduling
algorithm prevents different flows from interfering with each other. However, the
fairness issue in wireless networks is more complicated because of the wireless
link peculiarities discussed above. It may happen that a packet is scheduled for
transmission on a wireless link according to a certain service discipline or
fairness guideline, which is independent of link state, and the link is actually in a
high-error state. If the packet is transmitted, it will be corrupted and the
transmission will waste transmission resources. In this case, deferring
transmission of this packet till the link recovers from the high-error state is
clearly a reasonable choice. The affected flow, hence, temporarily loses its share
of the transmission bandwidth. To ensure fairness, the flow should be
compensated for this loss later when the link recovers. But determining how to
compensate for it is not an easy task. An alternative view of fairness arises in
wireless networks. In particular, the system should provide fair temporal access
to the transmission medium rather than fair throughput, i.e. ensure that each user
is able to access the medium for a (weighted) fair share of time. Also, fairness
guarantees may be required on a long-term basis or short-term basis.
10
2.1.3 Scarcity of Resources
The most precious resource in wireless networks is the bandwidth. A very
challenging issue in wireless networks designs is the efficient utilization of the
wireless channels. This can be achieved by maximizing the effective service
delivered, and at the same time, minimizing the unproductive transmissions on
low quality links.
Usually, mobile terminal in wireless networks are operated with limited
amount of power. This imposes another constraint in wireless designs. For
example, a scheduling algorithm that needs to use every uplink packet’s arrival
time to compute scheduling order is not a good choice. This is because it
demands a large amount of power from mobile hosts for transmitting the
information of arrival times to the base station.
Another important issue that characterizes wireless networks is that real-
time services such as voice and multimedia applications should be provided
efficiently. Thus, the complexity of different algorithms deployed in wireless
networks, such as admission control and scheduling algorithms, should not be
too high. So that it can be executed at high speed to serve real-time multimedia
traffic with stringent timing requirements.
2.2 Multiuser Diversity in Wireless Systems
An effective way to increase the capacity of a time-varying channel is the
use of diversity. The idea of diversity is to create multiple independent signal
paths between the transmitter and the receiver so that higher channel capacity can
be achieved. Diversity can be implemented over time, space, and frequency.
These traditional diversity methods are essentially applicable to a single-user
11
link. The basic idea is to improve performance by having several independent
signal paths between the transmitter and the receiver.
Recently, however, Knopp and Humblet [3] introduced another kind of
diversity, which is inherent in a wireless network with multiple users sharing a
time-varying channel. This diversity, termed multiuser diversity [4,5], comes
from the fact that different users usually have independent channel gains for the
same shared medium. With multiuser diversity, the strategy of maximizing the
total Shannon (ergodic) capacity is to allow at any time slot only the user with
the best channel to transmit. This strategy is called Knopp and Humblet’s
scheduling.
This multiuser diversity is best motivated by an information theoretic
result of Knopp and Humblet [3]. They focused on the power control uplink in
the single cell, with multiple users communicating to the base station via time-
varying channels. To maximize the total information theoretic capacity, they
showed that the optimal strategy is to schedule at any one time only the user with
the best channel to transmit to the base station. This means that the only user who
is allowed to transmit is the one with the largest instantaneous power (received at
the base station), and the others must remain quite until one of them becomes the
strongest. Diversity gain arises from the fact that in a system with many users,
there is likely to be a user with a very good channel at any time instant. Overall
system throughput is maximized by allocating at any time the common channel
resource to the user that can best exploit it.
This is completely in opposite sense to conventional power control.
Conventional power control is used to equalize the powers received from
different users at the base station. In wireless networks, the average received
power of a given user is related to his distance from the base station, and
correspondingly there is a certain loss in signal strength or path loss. The
instantaneous power, on the other hand, is usually time-varying due to multipath
fading. Power control is usually done in two ways, namely, open-loop or closed-
12
loop manners. The former refers to the case where the uplink and downlink
channels are assumed to be strongly correlated and estimation of the received
power at the base station is based on the signal received by the user. In the later,
estimation is performed in the base station which then instructs the users, via the
downlink channel, to transmit at a certain power. Provided that the received
powers don't vary too quickly, the power controller simply attempts to keep all
the received powers at some nominal level by inverting both the path loss and
fading effects of the channel.
Results in [3] have shown that Knopp and Humblet scheduling can
increase the total (ergodic) capacity dramatically, in the absence of delay
constraints, as compared to the traditionally used (weighted) round robin (RR)
scheduling where each user is a priori allocated fixed time slots. However, under
this scheme, a user in a fade of an arbitrarily long period will not be allowed to
transmit during this period (for example when a user is far from the base station
and its mobility is low may never have the opportunity to transmit it data),
resulting in an arbitrarily long delay; therefore, this scheme provides no delay
guarantees and thus is not suitable for delay-sensitive applications, such as voice
or video.
Another problem of such greedy scheduling is the unfairness in resource
sharing. This is due the absence of a way to compensate users in fade for
relatively long periods. In [6] and [7], the authors present a scheduling scheme
for the Qualcomm/HDR system which satisfies the following fairness property: if
another scheduling algorithm is used to increase the throughput of a specific user
by x% over what that user receives under the HDR scheduling algorithm, the
sum of all the percentage decreases suffered by the throughputs of all the other
users under the new algorithm will be more than x% [7]. The scheduler at the
base station determines the next terminal to be served based not only on the
instantaneous channel gain of the users but also on the amount of data that has
already been transmitted to each terminal. Therefore, when a user is prevented
from transmission for relatively long period its data transmission rate decreases
13
significantly. This make the scheduler give this user the advantage to transmit
over all other users even though there channel qualities may be much better that
this one's. This property is known as proportional fairness.
The authors of [8 – 14] have studied opportunistic wireless scheduling.
Opportunistic transmission scheduling polices are those who exploits the time
varying channel conditions and maximizes the system performance stochastically
under a certain resource allocation fairness constraint. They extend scheduling
policies for wireline networks to wireless networks which provide various
degrees of performance guarantees, including short-term and long-term fairness,
as well as short-term and long-term throughput bounds. For example, the authors
in [8] presented a wireless credit-based fair queuing, a scheduler for wireless
packet networks with provable short- and long-term transmission rate fairness
guarantees. A framework for opportunistic scheduling over multiple wireless
channels was developed in [9]. In [10, 11, 14], the authors summarize various
opportunistic scheduling schemes and discuss the advantages and costs
associated with opportunistic scheduling. The authors of [12] generalized the
opportunistic scheduling problem to include multiple interface systems in which
several users can be served simultaneously. An efficiency-based scheduling
scheme that gives flexibility in adjusting the way resources are allocated among
multiple interactive best-effort data users was proposed in [13].
2.3 Cross Layer Designs
Recently there has been increased interest in protocols for wireless
networks which rely on intelligent interactions between various layers of the
network protocol stack. Generically termed cross layer design, many of these
proposals are aimed at achieving performance improvements [15]. In this section,
we provide an overview of the cross-layer paradigm shift that is beginning to
14
take place as wireless communications evolves from a circuit-switched
infrastructure to a packet-based infrastructure.
Cross-layer networking can be easily demonstrated when the knowledge
of the physical and MAC layers is shared with higher layers in order to provide
efficient methods for allocating network resources to different users and
applications. In essence, future networks will need to provide "impedance
matching" of the instantaneous radio channel conditions of layer 1 and layer2
with the traffic and congestion conditions for layers 3 and above. Further, such
matching will need to be coordinated with a wide range of particular
applications, making the topic of cross-layer networking an increasingly
important one for the evolving wireless build-out. The advantages of cross-layer
networking appear to be real, and will be increasingly important as capacities
offered through the wireless LAN interface approach the level of capacity that
can be handled over the Internet backbone. For example, network layer
throughput performance can be significantly improved if the physical layer
information (channel conditions) is used at the network layer and transport layer
for controlling TCP traffic over wireless links. Energy-based routing algorithms
[16-18], currently developed for ad-hoc wireless networks, are another example
of how different layer information can be shared to improve wireless networks
performance. Also, channel state dependent scheduling (a cross-layer method) of
multiple users sharing a wireless link, can be used to increase the overall system
throughput. This last example of cross-layer designs will be the main focus of
this thesis.
In order to get insight of how significant gains can be achieved by cross-
layer networking, let us consider the following simple example [15], in which the
idea of the throughput region of a multi-user wireless network is illustrated.
Consider a wireless network with two users. Suppose that packets arriving from
the wireline network to the base-station are temporarily buffered, before they are
forwarded to the mobile users. Let us denote the rate at which data arrives for
mobile users 1 and 2 (from the wireline network) by λ1 and λ2 packets/slot,
15
respectively. A natural question one should ask is “what are the pairs of (λ1, λ2)
that the wireless system can support without the queues at the base-station
overflowing?” Assuming a very simple wireless channel model as follows: In the
first channel state, if user 1 is scheduled, the data rate achieved by User 1 is ’a’
packets/slot, while if user 2 is scheduled, the data rate achieved by User 2 is ’b’
packets/slot. Similarly, in the second channel state, if user 1 is scheduled, the
achieved rate (for User 1) is ’c’ packets/slot, while if user 2 is scheduled, the
achieved rate (for User 2) is ’d’ packets/slot.
In Figure 2.1, we have illustrated the rates described above. The left-most
panel illustrates the first channel state. The x-axis indicates the rate allocated to
user 1 in channel state 1, and the y-axis indicates the rate allocated to user 2.
Suppose that whenever the wireless channel is in state 1, the base-station
scheduler decides to transmit to user 1 half the time, and for the other half of the
time, user 2 is scheduled. Then, the average rate allocated to user 1 in state 1
would be a/2 packets/slot, and the average rate allocated to user 2 would be b/2
packets/slot. Similarly, we can choose various splitting rules for channel state 1
(for example, 1/5 of the time send to user 1, 3/5 of the time send to user 2, and do
nothing for 1/5 of the time). The shaded region in the left-most panel in Figure
2.1 is the collection of average rates to users 1 and 2 over all such splitting rules.
Similarly, the middle panel illustrates the corresponding achievable region in
channel state 2.
Figure 2.1 Throughput region for a simple channel model taken from [15].
Channel state 2
π2 = 0.5
R2
c
µ2
d
µ1
Channel state 1
π1 = 0.5
R1
a
µ2
b
µ1
Stability region
achievable rates
µ2
µ1 a+c 2
b+d 2
µ1: User 1 rate µ2: User 2 rate
16
Now, choose any vectors νi Є Ri, i = 1, 2 where R1, R2 are the achievable
regions in states 1 and 2, respectively. Then, the throughput region is defined as
V = { ν : ν = π1ν1 + π2ν2 }, where π1, π2 are the steady-state probabilities of being
in channel-states 1 and 2, respectively. Observe that V is merely the convex
combination of the achievable regions in each state. This is illustrated in the right
panel in Figure 2.1. Thus, if the packet arrival rates (λ1, λ2) lie within the
throughput region, we can be guaranteed that the queue lengths will not become
unbounded.
It can be shown that if the channel state was not used for packet
scheduling, the throughput region would be that to the left of the dotted line in
the right panel of Figure 2.1 (sub-optimal use of network resources). The
significant gains due to channel state dependent scheduling algorithms can be
illustrated by means of a simple example. Consider a wireless system consisting
of three users in a TDM-based network. The access time is slotted, and the
channels to be constant over a time-slot. We assume that the channels are either
ON or OFF, equally likely, and the channels being independent of each user.
Thus, in this system, there are eight possible (instantaneous) channel states for
the three independent users, ranging from (ON,ON,ON) to (OFF,OFF,OFF).
When a user’s channel is ON, one packet can be transmitted successfully to the
mobile user during the time-slot. The associated scheduling problem is to decide
which user is allowed access to the channel during each particular time-slot.
A naive scheduling rule would be to employ the round-robin mechanism.
In such a scheme, the users periodically are given access to the channel, with
each user getting 1/3 of the slots over time. As the channel of each user is equally
likely to be ON or OFF in each time-slot, it follows that over time, on average,
each user will get a data rate of 1/6 packets/slot.
On the other hand, suppose that the base-station uses knowledge of the
instantaneous channel state. Then, a simple policy would be to schedule and
transmit to a user whose channel is in the ON state. If more than one user’s
17
channel is in the ON state, then the scheduler could pick a user randomly
(equally likely) among those users whose channel are ON, and send data to the
selected user. This simple example assumes that all the users have identical
traffic demands. For the case where some users have greater needs than others,
such users would be assigned channel access with greater likelihood. We observe
that this policy ensures that no data is sent by the base-station if and only if all
users’ channels are OFF (which occurs on average, only 1/8 of the time). Thus,
the total data rate achieved by this state dependent rule is 1 – 1/8 = 7/8
packets/slot. As this rule is symmetric across users, it follows that on average, the
data rate per user is 7/24 packets/slot, which is almost twice the throughput as the
round-robin scheme which provided 1/6 packets/slot. In addition, the base station
does not radiate power during bad channel conditions, thereby decreasing
interference levels in the wireless network. Moreover, it is obvious that the larger
the variation in the channel, the larger will be the gain due to state-dependent
scheduling. This gain achieved due to channel-state dependent scheduling is the
multi-user diversity gain discussed in section 2.2.
The above example illustrates the significance of multi-user diversity
gain in network scheduling. However, a central question is how to design on-line
algorithms which achieve this gain, while also supporting diverse quality of
service requirements for various users.
2.4 Thesis Motivation
The previous sections illustrate the challenges imposed on the scheduling
problem by the wireless nature. The gains that can be accrued based on cross-
layer methods, such as multiuser diversity schemes, were clarified. However,
these schemes provide no delay guarantees and thus are not suitable for delay-
sensitive applications. Besides, greedy schemes such as Knopp and Humblet
scheduling don't provide farness in system resource management. Now, we
18
formulate the objective of our research. In this thesis, we are trying to find
answers to the following questions:
(i) How can multiple real-time data users be supported simultaneously
with good quality of service (QoS), namely, with packet delays not
exceeding given thresholds with high probability?
(ii) How can system resources be fairly allocated among various users
(keeping in mind that some users may demand more system resources
than others, even if their QoS requirements are the same or even less,
due to the difference in their wireless channel quality)?
Though these questions have not been answered fully, there has been
extensive research on various aspects of the above problems. In the rest of this
thesis, we are attempting to find practical answers in different wireless networks.
Specifically, we are considering two different popular multiplexing schemes that
are candidates for systems beyond 3G, namely TDMA and OFDMA.
19
Chapter 3 Channel-Aware Scheduling Disciplines for Delay-
Bounded Traffic in TDM-Based Wireless Networks
Providing delay guarantees to time-sensitive traffic in future wireless
multimedia networks is a challenging issue. This is due to the time-varying link
capacities and the variety of real-time applications expected to be handled by
such networks. Multiuser diversity schemes exploiting variation in channel states
of users in a wireless system have been shown to offer orders of magnitude
increase in the performance of wireless systems. In this chapter we propose and
evaluate the performance of two channel-aware scheduling schemes that are
capable of providing such delay guarantees in wireless networks. In the first
proposed scheme, the Channel-Dependent Earliest-Due-Date (CD-EDD)
discipline, the expiration time of the head of line packets of users' queues is taken
into consideration in conjunction with the current channel states of users in the
scheduling decision. This policy attempts to guarantee the targeted delay bounds
in addition to exploiting multiuser diversity to make best utilization of the
variable capacity of the channel. In the second scheme we attempt to ensure that
the number of packets dropped due to deadline violation are fairly disturbed
among users. This provides fairness in both bandwidth sharing as well as the
quality of service delivered to different users. A unique feature of our work is
explicit provisioning of statistical QoS as well as ensuring fairness in data rate,
delay bound, and delay bound violation.
In the next chapter, we provide extensive simulation results to show the
different performance aspects of the proposed schemes. In particular, we show
that it can simultaneously guarantee a delay upper bound while providing
fairness among all users with different channels, as well as providing fairness of
throughput sharing among different users in fading wireless channel networks.
20
3.1 Network Model
We first describe the cellular wireless network model used, and more
specifically the downlink of such a network, where a base station transmits data
to N mobile terminal users, each of which requires certain QoS guarantees. In
cell-structured wireless networks, the service area is divided into cells, and each
is served via a base station. A single cell is considered in which a centralized
scheduler at the base station controls the downlink scheduling, and uplink
scheduling uses an additional mechanism such as polling to collect transmission
requests from mobile terminals [8], [9]. We assume that downlink and uplink
transmission don't interfere with each other. We consider a time slotted system,
where time is the resource to be shared among users. A time-slotted cellular
system can have more than one channel (frequency band), but at any given time,
only one user can occupy a given channel within a cell. Here, we focus on the
scheduling problem for a single channel over which a number of users could be
time-division multiplexed. Time division multiple access (TDMA) systems
divides the time into time slots of length Ts, during which data transmission of a
single user, the scheduled user, is carried out using all resources available to the
base station at that time instant. For downlink scheduling, packets destined to
different users are put in separate queues, one corresponding to a user's data
flow.
As described in the previous chapter, The time varying channel
conditions of wireless links are related to three basic phenomena: fast fading on
the order of milliseconds, shadow fading on the order of tens to hundreds of
milliseconds, and finally, longtime-scale variations due to user mobility. The
channel fading processes of the users are assumed to be stationary, ergodic and
independent of each other, and we also assume that the channel gains are
constants over one time slot's duration. Since our algorithm will exploit the
users’ channel conditions in making the scheduling decision, we consider
wireless systems with mechanisms to make predicted channel conditions
available to the base station as is commonly the case with technologies such as
21
HDR [6], UMTS-HS-DPA [19], (E)GPRS [20], etc. The particular mechanism
employed by a system depends on the communication standard. For example, in
HDR and UMTS-HS-DPA, the underlying physical channel uses explicit channel
notification so that the scheduler has the best possible knowledge about the
channel conditions. In UMTS-DCH, there is a logical control channel assigned
with every user that allows a coarse estimation of the channel condition. The
packet extensions (E)GPRS to GSM-TDMA systems offer various coding
schemes to support data transmission over a wide range of channel conditions.
These are typically switched on a slower timescale, e.g., based on experienced
frame error rates. Regardless, the recently selected coding scheme that
determines the ‘throughput per RLC-block’ can serve as a coarse indicator of the
channel condition for the scheduler. In general, the faster and more precisely the
channel quality can be predicted, the better the scheduler can incorporate this
information into its decision as to which user to schedule next [8]. Thus, we will
assume that base station has the current (or delayed) channel state information of
each user.
Figure 3.1 shows the architecture for channel state aware scheduling of
multiuser traffic over a fading time slotted wireless channel. The scheduler
makes a decision to serve a particular queue at the beginning of every time slot.
This decision could depend on HoL packet delay information, such as its waiting
time and its time to expire, as well as channel states. Once a decision has been
made, the chosen queue is serviced in that slot at the maximum possible rate
corresponding to the state of its channel.
A very important and challenging problem in the design of high speed
communications networks is that of providing Quality of Service (QoS)
guarantees, usually specified in terms of rate guarantees, loss probabilities or
delays of packets in the network. The control of delays is often of crucial
importance, especially for real time applications like audio and video streaming.
Real-time traffic class have been modeled as a stream of packets, with each
packet having an expiry time beyond which the packet is of no use to the end
22
user. The objective of the scheduler is to transmit each packet before its expiry,
and if this is not possible, to minimize the number of lost packets due to deadline
expiry. Expiry occurs when a packet have been waiting in the base station queue
time greater than its deadline and have not been served. Such a packet is dropped
by the system.
Such QoS requirements can be specified in terms of deadline Ti
(deterministic QoS requirements) or accompanied with allowed violation
probability δi (opportunistic QoS) for each user traffic flow. In this thesis, we
will use the following model in defining QoS: for every user out of the N users in
the system, let Wi to be the delay encountered by user i packets, then the
scheduling rule should also satisfy the QoS constraints given in the form
( )P i i iW T δ> ≤ (3.1)
for i = 1, 2, …. , N. The problem is to minimize the violation occurrences.
Figure 3.1. Channel state dependent downlink scheduling architecture for multiple users sharing a
wireless TDMA channel.
1
2
User 1
User 2
User N N Scheduler
Wireless channel
Mobile Terminals
Link Status Monitoring
Base Station
23
In what follows in this chapter, all scheduling disciplines, either the
proposed ones or the existing ones, are introduced and discussed in systems
functioning according to the model presented in this section, unless other models
are stated.
3.2 Previous Work
In this section, we present a survey of existing scheduling disciplines
applicable in wireless networks with delay-sensitive users' traffic. In [21], the
authors proposed to apply the wireline EDD discipline scheduling in wireless
networks. They called it Feasible Earliest Due Date (FEDD) scheduling. They
assumed a simple channel state model in which the channel can be either "good"
or "bad". Thus, FEDD scheduling chooses to schedule the packet which has the
earliest time to expiry from the set of queues whose channels are marked good
only. So that, such a scheduler is similar to the wireline one. Wireline EDD was
proved to be optimal for i.i.d. Bernoulli arrival processes. This algorithm showed
unfairness in throughput sharing, since the user suffering from long periods of
bad state will not be compensated by any mechanism, thus the authors suggested
to use a rate-proportional scheduler which provides guaranteed minimum
bandwidth to each connection and distributes the residual bandwidth using the
FEDD criterion.
The authors in [22] proposed a modification to the Largest Weighted
Delay First (LWDF) scheduling discipline that take the time varying
characteristics of wireless channels. The LWDF [23] discipline is a
parameterized version of the first-input first-output (FIFO) that works as follows:
at the beginning of the time slot starting at time t, serve at the maximal possible
rate the queue of user j, where
arg max{ ( )}i iij aW t= (3.2)
24
where Wi(t) is the waiting time of the ith user head of line (HoL) packet (i.e. the
maximum waiting time of any packet of the ith queue) at the time slot starting at
time t, and ai > 0, i = 1,2, …., N, are a fixed set of constants. If the delay QoS
requirements for all users is in the form of the deadline due violation probability
as in equation (3.1). It was proved in [23] that the choice of weights ai that makes
LWDF discipline nearly throughput optimal (note however that this choice of the
weights is valid only for large values of the delay bound Ti and very small values
of δi) is :
log ii
i
aTδ
= − (3.3)
The proposed modification of [22] was to use multiuser diversity in order
to increase the efficiency of channel utilization (and hence the system
throughput) and also compensate delayed users. The proposed Modified Largest
Weighted Delay First (M-LWDF) discipline schedules the jth user, where
arg max{ ( ) ( )}i i iij t W tγ µ= (3.4)
where μi(t) is the state of the channel of user i at time t, i.e. the actual rate
supported by the channel. This rate is assumed to be constant over one slot. It
had been proven in [22] that choosing ii
i
aγ
µ= , where ai is chosen as in (3.3)
and iµ is the mean rate supported over the ith channel that corresponds to the
average fading level of the channel, makes the M-LWDF discipline throughput
optimal. In practice, the mean rate can be measured over a certain, but relatively
long, time window [7] by averaging the rate actually given to that user in that
window. The M-LWDF scheduling rule could be rewritten as schedule the jth
user, where
25
( )arg max{ ( )}i
i iii
tj a W tµµ
= (3.5)
The scheme provides good QoS for delay sensitive users only with properly
chosen parameters and can be easily implemented. It was shown in [22] that M-
LWDF rule is optimal in the sense that it can handle all the offered traffic and
renders the stability of all queues if this is feasible to any other rule, such a rule is
called a throughput optimal one. The authors in [22] also showed how M-LWDF
can be used to achieve alternative QoS defined in terms of a predefined
minimum long-term throughput for each user. Unfortunately, M-LWDF
scheduling was found to be highly dependent on the value of the parameters ai,
and its performance change significantly with the QoS requirements of users'
flows.
In order to reduce the dependency of the M-LWDF rule on the settings of the
parameters ai, the authors in [22] also proposed a new scheduling discipline,
which was further investigated and implemented in [24] for CDMA/HDR system
and modified in [25]. The proposed scheme was called the exponential rule
scheduling discipline. This scheme schedules the jth user at the time slot starting
at time t for transmission, where
( )
arg max{ ( ) }i ia W t aW
b aWi ii
j t eγ µ−
+= (3.6)
and
1
1 ( )N
i ii
aW a W tN =
= ∑ (3.7)
and b > 0 is an arbitrary constant, and γi > 0, i = 1,2, … ,N, were set as in the M-
LWDF in the form ii
i
aγ
µ= to represent the tradeoff between the QoS
requirements and being proportionally fair discipline. For b =1, the exponential
rule will be in the form [22]
26
( )
1( )arg max{ }
i ia W t aW
i aWii
i
tj a eµµ
−
+= (3.8)
This policy attempts to equalize the weighted delays aiWi(t) of all the
queues when their differences are large. If one of the queues would have larger
(weighted) delay than the others by more than order aW , then the exponent
term becomes very large and overrides the channel considerations (as long as its
channel can support a non-zero rate), hence leading to that queue getting priority.
(It can be easily noticed that the aW term in the exponent can be dropped
without changing the rule as it is common for all queues. This term is present
only to emphasis the motivation of the rule). On the other hand, for small
weighted delay differences (i.e. less than order aW ), the exponential term is
close to unity, and the policy behaves as the proportionally fair rule. Hence, the
exponential rule policy gracefully adapts from a proportionally fair one to one
which balances delays [22], [24]. The choice of b = 1 in [24] is simply to prevent
the exponent from blowing up when the weighted delays are small.
It was proven in [26] that the exponential rule is a throughput optimal
policy for a quit general assumptions on the channel and arrival processes.
Moreover, simulation results in [24] showed that the exponential rule scheduling
exhibits better delay tails compared to any other scheduling policy in the sense
that the delays of all users are about the same and are all reasonably small but for
large values of Ti and very small values of δi, which is not desired practically.
Besides, like the M-LWDF discipline, the exponential rule scheduling was found
to be highly dependent on parameter settings. Therefore, It was advised that for
future research identifying good scheduling rules which are less dependent on the
"proper" parameter setting would be desirable [22].
27
3.3 The Proposed Scheduling Schemes
The goal of this thesis is to find good performing disciplines for delay
sensitive traffic, that could be used to schedule users with time-varying link
conditions. From the above study of such a problem, we mean by the word "good
performing" that such a discipline should have attempt to achieve the following
objectives:
§ Maximize the overall system throughput
This could be easily achieved if the scheduling discipline utilizes the
multiuser diversity, inherently existing in systems under consideration.
Multiuser diversity efficiently utilize the channel capacity by giving
higher priority to the user with the best channel conditions at a certain
time instant, which means that this user can transmit with the highest
possible rate, and thus increase the system throughput.
§ Graceful compensation of large delays
For real-time traffic packet, it is necessary that the delivery of such a
packet be done within a certain time period, usually defined by a
deadline, otherwise, the information contained in this packet will be
irrelevant for the receiver. So that the system drops such a packet and
may ask the transmitter to resend it, which reduce the system efficiency.
Thus, a good scheduling discipline should have a mechanism to
compensate queues whose packets are experiencing long delays in the
system. This case may be encountered by users far from the base station,
which yields that their channels are suffering from long periods of bad
conditions. Such a mechanism will :
i. Guarantee the QoS requirements if defined as delay bound or
packet loss ratio.
28
ii. Minimize the number of packets dropped due to deadline
violation, which in turn increase the system throughput.
§ Fairness in resource sharing
Fairness is an intuitively desirable property of scheduling disciplines. A
fair scheduling discipline should distribute the resources available to the
system, such as capacity and time, fairly among different users. Fairness
may be accomplished in
i. Delay distributions
A scheduling algorithm that keeps all the delays close to each
other at a relatively small value is much better one that keeps one
user's (or some users') delay very small while other users
experience much larger delays
ii. Service rate
On the long term, the difference between any two users in the rate
by which their queue are served should be as small as possible.
This could be achieved by means of proportionally fair rate
assignment.
iii. Number of packets lost
This also will increase the fairness in throughput sharing.
§ Weak dependency on the parameters setting
As advised for future research in [22], it is desirable to identify good
scheduling disciplines which are less dependent on the proper parameter
setting, i.e. their performance does not change significantly for wide
29
range of QoS requirements, and thus could be employed in different
systems serving wide range of applications.
3.3.1 Channel Dependent Earliest Due Date (CD-EDD)
Scheduling Discipline
In classical wireline earliest due date scheduling, each packet is assigned
a deadline, and the scheduler serves packets in order of their deadlines. The
queue with the smallest deadline will be served first by the maximum available
rate. If the scheduler is overcommitted, then some packets miss their deadlines.
Thus with EDD, scheduled packets are experiencing delays lower than the
assigned deadlines, so it can be used to provide QoS requirement of delay
sensitive applications. This policy was shown to be optimal in the wireline case
(for independent identically distributed Bernoulli arrival and channel processes).
EDD can not be employed in wireless networks since it does not consider the
time varying characteristics of wireless links. It was not reported in the literature
the existence of a scheduling discipline that combines the EDD scheduling
concept with a mechanism to adapt with the characteristics of wireless networks.
(with the exception of the attempt in [21] which dos not actually adapt with the
time varying nature of wireless channel, since it assumed the very ideal channel
model of good or bad).
We propose a new scheduling discipline, which we call the channel
dependent earliest due date first (CD-EDD) policy. This is basically a channel
state-dependent EDD policy where the scheduler chooses to schedule the queue
whose HoL packet has the earliest time to expire and the best channel conditions,
and consequently the highest transmission rate, among all queues. The proposed
CD-EDD scheduling policy is as follows:
30
At the time slot starting at time t, schedule with the maximum possible
rate the queue of the jth user, where
( ) ( )arg max{ }( )
i iii
ii
t W tj ad t
µµ
= (3.9)
where
ai is the weighting parameter reflecting the statistical QoS requirements
of the ith user.
μi(t) is the actual rate that could be used for transmission by the ith user at
time t, which reflects the current channel state of the user's channel.
iµ is the mean rate supported or previously offered to the ith user. Wi(t) is the delay experienced by the HoL packet since its entrance to the
ith user queue in the base station.
di(t) is the time to expire of the ith user HoL packet, which is the
difference between the deadline, Ti, and the delay experienced till time t,
Wi(t), i.e.
( ) ( )i i id t T W t= − (3.10)
The behavior of the CD-EDD policy can be described as follows: when
certain queue have its HoL packet waiting in the system for a relatively long
period (but have not expired yet), its time to expire will decrease significantly.
So that, the term ( )( )
i
i
W td t
will grow significantly due to the contribution of 1( )id t
until it overcomes other terms in the policy which represent the cause of such a
large delay, namely the bad channel conditions of that user. This also reduces the
number of packets that could be lost due to deadline due violation. On the other
hand, if the delay characteristics of all users are about the same, i.e. their time to
31
expire and waiting times are close, the term ( )( )
i
i
W td t
will be common to all users,
and the policy then reduces to a proportionally fair one that exploit multiuser
diversity to efficiently utilize the channel bandwidth of multiuser systems in a
quite fair manner. It is worth mentioning that weights ai doesn't contribute
significantly in the decision. A rule of thumb for choosing ai which works in
practice is the one given in (3.1) since this rule is suggested by large deviations
of optimality results.
In other words, the CD-EDD is a scheduling discipline that can be used to
provide QoS guarantees, defined in terms of delay bounds, for real-time traffic in
wireless networks. This is achieved by increasing the priority of delayed users to
get access to the medium over time. An important feature of the CD-EDD policy
is its weak dependency on the value of QoS required, and thus can be used for a
wide variety of QoS requirements.
3.3.2 A Set of Violation Fair Rules
Another new idea than can be applied in conjunction with any scheduling
discipline in order to enhance the fairness characteristics of these policies is
proposed here, which is based on the number of deadline violations occurring to
packets of different queues. This requires that each queue in the base station to
be accompanied with a counter that counts the number of packets lost in this
queue's flow. This may be implemented practically be means of sliding windows
basis. Let us define
NVi(t) to be the number of deadline due date violations encountered in the
flow of the ith user up to time t.
( )NV t to be the average of the number of violations in all N queues, i.e.
32
1
1( ) ( )N
ii
NV t NV tN =
= ∑ (3.11)
The scheduler may use these numbers of deadline violations and find a
way to compensate users suffering from unfairness in the number of packets
recently lost. For example the scheduler could give more credit or increase the
priority level so that such a user could access the system resources. This could be
achieved be a scheduling discipline that includes a term like ( )( )
iNV tNV t
, such a
scheduling discipline we will call a violation fair (VF) discipline.
Initially, we considered this idea directly to the proportionally fair [7]
scheduling discipline, yielding the violation fair-proportionally fair policy. So, in
each time slot the scheduler chooses the jth user, where
( ) ( )arg max{ }( )
i i
ii
t NV tjNV t
µµ
= (3.12)
This will reduce the number of packets lost for users of bad channel
conditions which enhances the fairness characteristics of the proportionally fair
policy. On the other hand, it still lacks a mechanism for provisioning QoS
guarantees for delay sensitive traffic.
Applying the proposed idea to both the M-LWDF and the exponential
rule policy, resulting in the violation fair modified largest weighted delay first
(VF-M-LWDF) discipline
( ) ( )arg max{ ( )}
( )i i
i iii
t NV tj a W tNV t
µµ
= (3.13)
and the violation fair exponential (VF-EXP) discipline
33
( )
1( ) ( )arg max{ }( )
i ia W t aW
i i aWii
i
t NV tj a eNV t
µµ
−
+= (3.14)
enhances their performance in the sense that the addition of the violation fair
term will ensure fairness in both the delay times and throughput. This could be
explained since both the M-LWDF and the exponential minimize the packet
delay and when the number of lost packets is fairly distributed among users, the
long term service rate will be equal for all users. Another very important gain of
these two disciplines, which appeared in simulation results, is that their
performance is not much dependent on the parameter setting as was the case in
the original rules.
Finally, if the proposed violation fairness technique is applied with the
previously proposed CD-EDD, we can get a scheduling discipline applicable in
wireless network that explicitly provide QoS to delay sensitive traffic, with a
unique fairness characteristic in data rate, delay bound, and delay bound
violation triplet. The violation fair-channel dependent-earliest deadline due date
(VF-CD-EDD) scheduler chooses, at the time slot starting at time t, the jth user
for transmission, where
( ) ( ) ( )arg max{ }
( ) ( )i i i
iiii
t W t NV tj ad t NV t
µµ
= (3.15)
In chapter 4, we provide an extensive set of simulation that explore the
characteristics our proposed CD-EDD discipline compared with the M-LWDF
and the exponential rule disciplines as a reference. We also show the advantages
achieved by their violation fair versions, namely the VF-CD-EDD, the VF-M-
LWDF, and the VF-exponential scheduling discipline.
34
35
Chapter 4 Simulation Results and Discussions of the TDM-Based
Scheduling Disciplines
4.1 Simulation Setup
First, we describe the system model used in simulating the wireless cell-
structured channel-aware scheduler described in section 3.1. We chose the High
Data Rate (HDR) CDMA system model. HDR technology has recently been
proposed as a TDM-based overlay to CDMA as a means of providing packet data
services to mobile users. HDR is a downlink packet data service which occupies
a single data carrier of a CDMA system, where users share the channel in a time
division multiple access, i.e. at each time slot Ts only one user can transmit its
data at the full power available to the base station. A very attractive feature of
HDR enabling the use of efficient scheduling algorithms since it provides a
mechanism for link status monitoring as in chapter 3.
The cell serves N mobile users each receiving a data flow. The base
station contains N queues, one corresponding to a different data flow and an
associated scheduler. The scheduler makes a decision every 1.667 millisecond
based on the current information available at the start of the time slot. As we are
mainly interested in scheduling users with time sensitive traffic, we model the
packet arrival processes to each of the N user's queues as a Bernoulli processes
with a mean rate of 28.8 Kbps. This rate corresponds to the typical rate required
for streaming audio over the Internet. Real time users, like streaming audio, will
indeed generate a smooth traffic, and hence, a Bernoulli model seems reasonable
for such traffic. Like the original EDD, the CD-EDD is expected to be
throughput optimal for such traffic model. The HDR packet size is 128 bytes.
36
The QoS requirements of each user are expressed in the form of the probability
that the waiting time encountered by a typical packet of the ith user stream
exceeds the deadline Ti is less than or equal to δi . We assume for simplicity that
all users require the same service quality, i.e. they all have the same Ti and δi.
Even thought all users share a common channel, the channel capacity, of
that channel seen by different users is different. This is due to the wireless link
characteristics described above. The instantaneous capacity of a wireless can be
given by
2
2( ) log (1 ( ) )C t B h t SNR= + (4.1)
where C(t) is the channel capacity or the data rate (in bits per second) that can be
transmitted on a channel of bandwidth B (Hertz). The bandwidth of
HDR/CDMA channel is 1.25 MHz. While |h(t)| is the normalized gain (or fading
level) of the wireless channel at the time t, and SNR is the required signal to
noise ratio at the receiver antenna (13 dB for HDR/CDMA system). For
simulation purpose, we use the typical HDR and cell parameters given in [6].
The average fade level distribution of a typical mobile in HDR cell can be easily
found. The fading process of each user's channel can be represented by a
Rayliegh process. So, in order to simulate N channels, we pick N fading levels
according to the above distribution, and generate N Rayleigh processes with
means equal to these fading levels after being normalized. A sample of such a
process represents the normalized channel gain of a certain channel at time t with
a probability
2
222( )
r
Rrp r e σ
σ
−= , r ≥ 0 (4.2)
where σ is related to the mean normalized fading level h according to
37
2h π
σ= (4.3)
Accordingly, the mean data rate iµ that can be supported on the a channel of
mean fading level ih is
2
2log (1 )i iB h SNRµ = + (4.4)
It is worth mentioning that HDR doesn't not support arbitrary
transmission rates, i.e. the scheduled user can not transmit with the rate
computed above rather than the maximum possible rate from a set of discrete
rates. HDR user can transmit data at a rate of 9.6 * 2i Kbps, i = 0, 1,…, with a
maximum rate of 2 Mbps. Thus the state of channel ( )i tµ at the start of the time
slot at time t will be the actual rate that the channel can support, rather than the
channel capacity at that time instant. We have assumed that the channel
conditions do not change significantly within a time slot duration. Finally, all
simulations will be carried out for a duration of 10 minutes.
4.2 Performance Metrics
Here, we discuss the performance metrics we used to evaluate the
performance of various scheduling algorithms. These are the delay, throughput,
and loss criteria. We briefly outline them in turn.
§ Delay performance measures:
For real-time traffic, a good measure of performance is the delays packets
incur at the base station. A good scheduling algorithm should keep all delays
below the delay bound Ti with high probability. So that, the delay distribution
38
curves can be used to illustrate the delay behavior of the scheduling
disciplines under consideration. As remarked earlier, scheduling algorithms
which keep the delays of all the users about the same and keep them all
reasonably small are superior to those which may have better delay tails for
one of the users but have very bad delays for other users. (We remind that we
have assumed for simplicity that all users needs the same QoS).
Some parameters of the delay distribution, such as the worst-case delay, the
mea delay, or the 95-percentile delay, could be used to evaluate the QoS
received by a user. We will consider the 95-percetile delay as our measure of
the delay guarantees offered by a scheduling discipline. The 95-percentile
delay is defined as the delay which ninety-five of the packets of a user's
queue have suffered delays smaller than it.
§ Throughput measure:
Unlike non-real-time users, which may have their QoS requirements in the
form of a guaranteed minimum rate, real-time users do not need the scheduler
to preserve certain bandwidth for their packets' transmission. So that, we will
only take the total throughput achieved be the system as a measure of the
throughput performance of the scheduling disciplines at hand. The fairness of
bandwidth sharing between users is also a good indication of the efficiency
of any scheduling discipline.
§ Loss measure:
The fraction of packets lost, due to deadline violation, for a user can be used
to evaluate the loss performance of a scheduling discipline. This fraction is
required to be as small as possible in order to say that the scheduler is
suitable for scheduling real-time traffic. From fairness point of view, it is
better to equalize the fraction of packets lost in different queues.
39
4.3 Results and Discussions
First, we estimate the number of users, with traffic like the one described
above, that can be supported by a single HDR cell under each of the previously
mentioned scheduling policies. In this experiment, we simulate N users,
uniformly distributed throughout the cell, and monitor the average service rate
received by a single user for different values of N. Starting with only two users in
the system, as we increase N, and as long as the channel capacity can support
such a number of users, it is expected that the service rate received by each user
will be similar to its arrival rate. Any further increase of the number of user,
while keeping the channel capacity unchanged, will make the scheduler unable to
serve such users in the appropriate time so more packets will be discarded and
thus the average throughput share of each user will decrease. So, we will take the
number of users beyond which the average service rate received by any user in
the system start to decrease as the maximum number of user that can be
supported our network, or the system capacity.
Figures 4.1 through 4.6 show the average service rate per user versus the
number of users in the cell for different delay bounds, more specifically, 20, 60,
100, 200, 300, 400 milliseconds, respectively, and for a violation probability
(δi)of 95%. These delay-bounds are encountered practically in multimedia
streams. It is clear that the higher the delay bound, the higher the number of users
supported by the system because, for higher bounds, it takes relatively long time
before a packet expires so the scheduler can serve more users in that times. Table
4.1 summarizes the results of this experiment.
Delay bound (m sec) 20 60 100 200 300 400
CD-EDD 4 12 16 16 16 16
M-LWDF 4 10 12 16 16 16
EXP 4 8 12 16 16 16
Table 4.1. The system capacity of HDR cell achieved by different disciplines.
40
Figure 4.1. The average throughput per user for 20 m sec delay bound.
Figure 4.2. The average throughput per user for 60 m sec delay bound.
41
Figure 4.3. The average throughput per user for 100 m sec delay bound.
Figure 4.4. The average throughput per user for 200 m sec delay bound.
42
Figure 4.5. The average throughput per user for 300 m sec delay bound.
Figure 4.6. The average throughput per user for 400 m sec delay bound.
Note that the decreasing tendency of the previous figures is clear even though some unexpected increases appear due to the random nature of generating different simulation runs.
43
In our second experiment, we investigate the delay performance of
various scheduling disciplines. We begin with a comparison of the proposed CD-
EDD scheduling disciplines versus to both the M-LWDF and the exponential
rule scheduling disciplines reported as the most suitable policies for scheduling
delay sensitive traffic in the literature. In order to be able to evaluate the
performance of the scheduling techniques, the system should be loaded with its
maximum capacity. Based on the results of the first experiment in Table 4.1, we
will assume that the cell is serving 14 mobile terminals, i.e. N =14, and generate
14 i.i.d. Bernoulli processes each with a men rate of 28.8 Kbps to represent their
packet arrival processes. Using the procedure described before, we also generate
14 Rayleigh-faded channels with mean channel gains and the corresponding
channel capacities listed in Table 4.2.
User Number Mean Normalized
Channel Gain Mean Rate (Kbps)
1 0.1102083 400.72
2 0.1096598 397.14
3 0.1087368 391.14
4 0.1077732 384.91
5 0.1040045 360.88
6 0.1009808 342.00
7 0.0898876 276.01
8 0.0836667 241.43
9 0.0819434 232.18
10 0.0798461 220.60
11 0.0739499 191.24
12 0.0660818 154.27
13 0.0652852 150.72
14 0.0623138 137.80
Table 4.2. Fading levels and its corresponding capacities used in simulations.
44
In Figures 4.7 through 4.12, we plot the delay distribution tails for both
user 1 (with the best channel conditions) and user 14 (with the worst channel
conditions) for the M-LWDF, exponential rule, and the proposed CD-EDD
scheduling disciplines for the values of the delay bound given above. It is
obvious that all policies will have the same performance for very small bounds,
e.g. 20 milliseconds, with such a scare resources the networks can not serve such
a number of users with this high QoS. We observe that for moderate delay
bounds, e.g. 60 and 100 milliseconds, the performance of the exponential rule
scheduling slightly outperforms both the M-LWDF and CD-EDD disciplines. In
this case, all delays are kept at small value and about the same for all users.
While for higher bounds, e.g. 200, 300,and 400 milliseconds, we find that the
delay performance of the CD-EDD scheduler don't change significantly, while
the performance of both the M-LWDF and the exponential rule schedulers
degrades severely as the gab between the tails of the best user and the worst user
gets wider. This severe degrading in performance is caused by the dependency of
both rules on the quality of service required, which affects the value of the
weights {ai} that controls the performance of these rules. (Keep in mind that the
goal of the M-LWDF is to minimize the weighted delays while the exponential
rule scheduling tries to keep all the delays around the average of these weighted
delays ( aW ),they both do not target a certain bound to serve as much packet as
possible before this bound is violated.) On the other hand, the CD-EDD policy
does not suffer from such a dependency on the QoS, and consequently the weight
values, since the philosophy of this rule is mainly to serve more packets before
their deadlines expire. This may cause the packets of the best channel users to
experience relatively higher delays than in the case of other rules, but still lower
than the worst user. This occurs on the expense of preventing more packets from
being dropped due to deadline violation.
This can be further demonstrated when we plot the maximum and the
minimum 95 percentile delay and percentage of packets lost due to deadline
violations versus the delay bounds as shown in Figure 4.13 and 4.14,
45
respectively. It is clear that it is not desirable to keep one or some users' delays
below a value much smaller than the required bound while leaving one or some
users suffering from dropping a large percentage of their packets as the case with
both the M-LWDF and exponential rule schedulers. While in CD-EDD
discipline, the maximum and the minimum 95 percentile delay are about the
same and so close to the delay bound, besides the packet loss ratios are very
small and very close to each other. So, the base stations can guarantee strong
delay bounds for all delay sensitive users in a fair manner by using the CD-
EDD scheduling discipline, regardless of the value of those bounds.
When the same experiment was carried out for the violation fair versions
of the above disciplines, it was found that the performance of all the violation
fair policies is not much dependent on the QoS required (including the
disciplines which was originally suffering from that dependency). Figures 4.15
through 4.20 show their delay distribution tails of the best user and the worst user
for different delay bounds. It is observed that the tails became much more closer
for the violation fair CD-EDD, but a little bit higher delays, than those of either
the violation fair M-LWDF or violation fair exponential policies.
As shown in Figures 4.21 and 4.22, where the maximum and the
minimum 95 percentile delay and percentage of packets lost due to deadline
violations are plotted versus the delay bounds of the violation fair policies, the
service offered to different user, in terms of 95% delay, is about the same.
Furthermore, the amount of packets dropped in the system due to deadline
violations becomes very small. Moreover, this amount is distributed among all
users in a fair manner. Like the CD-EDD, the VF-CD-EDD have the superiority
since t achieves the smallest number of packets lost due to deadline violations.
46
Figure 4.7. Delay distributions of user 1 and user 14 for 20 m sec delay bound.
Figure 4.8. Delay distributions of user 1 and user 14 for 60 m sec delay bound.
47
Figure 4.9. Delay distributions of user 1 and user 14 for 100 m sec delay bound.
Figure 4.10. Delay distributions of user 1 and user 14 for 200 m sec delay bound.
48
Figure 4.11. Delay distributions of user 1 and user 14 for 300 m sec delay bound.
Figure 4.12. Delay distributions of user 1 and user 14 for 400 m sec delay bound.
49
Figure 4.13. The maximum and the minimum 95-percentile delays.
Figure 4.14. The maximum and the minimum percentage of lost packets.
50
Figure 4.15. Delay distributions of user 1 and user 14 for 20 m sec delay bound (VF rules).
Figure 4.16. Delay distributions of user 1 and user 14 for 60 m sec delay bound (VF rules).
51
Figure 4.17. Delay distributions of user 1 and user 14 for 100 m sec delay bound (VF rules).
Figure 4.18. Delay distributions of user 1 and user 14 for 200 m sec delay bound (VF rules).
52
Figure 4.19. Delay distributions of user 1 and user 14 for 300 m sec delay bound (VF rules).
Figure 4.20. Delay distributions of user 1 and user 14 for 400 m sec delay bound (VF rules).
53
Figure 4.21. The maximum and the minimum 95-percentile delays (VF rules).
Figure 4.22. The maximum and the minimum percentage of lost packets (VF rules).
54
Finally, we study the throughput characteristics of the aforementioned
scheduling disciplines. Here we are interested in studying the overall throughput
of the system as well as how the throughput is divided among users with
different channel conditions, i.e. fairness in throughput sharing. The results of
this experiment is illustrated in Figures 4.23 through 4.28. In part (a) of these
figures plot the overall throughput of the system versus the number of users
using the simulation setup of the first experiment. When the system is operating
with number of users less than the system capacity, the total throughput of the
system equal the sum of the arrival rate. When the system is serving more users
than the system capacity, we observe that, regardless of the delay bound:
§ The total throughput achieved using the CD-EDD is higher than any other
rule because this policy causes the smallest number of packet to be lost
due to deadline expiry.
§ The total throughput achieved using any violation fair discipline is less
than the throughput achieved with the non-violation fair counterpart. This
is because in order to achieve fairness in the ratio of packets lost among
different user, the violation fair polices may prevent users with good
channel conditions from transmitting their data for the sake of users with
bad channel conditions (such channels support low transmission rates
only). So the overall throughput achieved by the system will be lower
than the case where the scheduling policy do not intend to make users
with good channel condition drop some packet for the purpose of
fairness.
In part (b) of Figures 4.23 through 4.28, we compare the average
throughput share of a single user against the actual throughput shares of both the
best channel user and the worst channel user for different delay bounds for both
the original disciplines and their violation fair counterparts. In this experiment,
we use the same simulation model used in the previous experiment where the
base station serves the 14 user listed in Table 4.2. As seen in these figures, the
55
CD-EDD discipline achieves the greatest average throughput per user, besides, it
keeps the actual throughput share as close as possible to that average. Note that
the throughput shares of the best channel user and worst channel user are always
close to each other for various delay bounds for CD-EDD scheduling. This
means that the CD-EDD discipline is the most throughput fair policy that can
guarantee delay bounds for real-time users. On the other hand, even though the
violation fair disciplines leads to a slightly lower throughput per user as
previously discussed, they ensure fairness in throughput sharing among all users
regardless the delay bound. This is because in such disciplines, the number of
packets dropped due to deadline expiry is almost equal for all users. We
summarize the main results of our simulation experiments in Table 4.3.
CD-
EDD
M-
LWDF EXP
VF-CD-
EDD
VF-M-
LWDF VF-EXP
Delay bound
guarantee √ X X √ √ √
Independency
of QoS
requirement
√ X X √ √ √
Total system
throughput Highest Moderate Lowest Less than original counterparts
Delay
fairness √ Depend on QoS √ √ √
Throughput
fairness Best Good Worst √ √ √
Delay bound
violation
fairness
√ Bad Worst √ √ √
Table 4.3. Simulation results summary.
56
a) The total throughput achieved.
b) Throughput fairness.
Figure 4.23. The throughput behavior at 20 m sec delay bound.
57
a) The total throughput achieved.
b) Throughput fairness.
Figure 4.24. The throughput behavior at 60 m sec delay bound.
58
a) The total throughput achieved.
b) Throughput fairness.
Figure 4.25. The throughput behavior at 100 m sec delay bound.
59
a) The total throughput achieved.
b) Throughput fairness.
Figure 4.26. The throughput behavior at 200 m sec delay bound.
60
a) The total throughput achieved.
b) Throughput fairness.
Figure 4.27. The throughput behavior at 300 m sec delay bound.
61
a) The total throughput achieved.
b) Throughput fairness.
Figure 4.28. The throughput behavior at 400 m sec delay bound.
62
63
Chapter 5 Channel-Aware Scheduling for Delay-Bounded Traffic in
OFDMA-Based Wireless Networks
The proliferation of cheap, small and powerful notebook computers,
Personal Digital Assistants (PDAs) and other high speed mobile data terminals
has fueled the persisting demand for a mobile alternative to the wireline access
techniques, such as DSL and cable modems. Mobile Broadband Wireless Access
(MBWA) is an appealing system for providing flexible and easy deployment
solution to high speed mobile communications. The IEEE 802.20 (MBWA)
working group was formed to develop a standard which sets the specification of
physical and medium access control layers of an air interface for interoperable
mobile broadband wireless access systems, operating in licensed bands below 3.5
GHz, optimized for IP-data transport, with peak data rates per user in excess of 1
Mbps. It supports various vehicular mobility classes up to 250 Km/h in a MAN
environment and targets spectral efficiencies, sustained user data rates and
numbers of active users that are all significantly higher than achieved by existing
mobile systems [27].
Operating in the Giga-Hertz bands, channel impairments, multipath fading
and path loss become more significant with the increase in the number of
subscribers. Improved and flexible multiple access methods are needed to cope
with these impairments. Orthogonal Frequency Division Multiple Access
(OFDMA) is a promising multiple access scheme that has attracted interest.
OFDMA is based on Orthogonal Frequency Division Multiplexing (OFDM) and
inherits OFDM immunity to inter-symbol interference and frequency selective
fading. OFDM is a special case of multicarrier transmission, where a single high
speed data stream is transmitted over a number of lower rate subcarriers [28]. In
a single carrier system a single fade can cause the entire link to fail, but in
multcarrier systems, only a small percentage of the subcarriers will be affected.
64
So, multiuser OFDM is identified as a promising interface solution for broadband
wireless networks.
The scheduling problem in OFDMA-based networks is completely
different from the scheduling problem in other systems, and a much more
complicated one. Here, the scheduler is responsible for deciding how the
available subcarriers will be distributed among different users. Static subcarrier
assignment is an inefficient utilization of scarce radio resource. This is due to the
time-varying channel conditions, and the diverse quality of service requirements
of multimedia users. Recently, multiuser diversity [3] was introduced as a key
approach to enhance the resource utilization efficiency of wireless networks.
Dynamic resource management of OFDMA-based networks has attracted
enormous research interest. In this chapter, we consider the subcarrier
management problem in the downlink of OFDMA wireless multimedia networks.
This complex problem is subdivided into a couple of simpler ones: the subcarrier
allocation problem and subcarrier assignment problem. We propose an
opportunistic subcarrier allocation algorithm that uses the channel state
information and the delay information of different users to calculate the number
of subcarriers to be assigned to each active user in the system, while attempting
to guarantee the QoS required by these users. We also propose another
opportunistic algorithm for subcarrier assignment problem. The proposed
algorithm monitors the deadline violations in all queues, then progresses to
ensure fairness among different users in their service rates. This is achieved by
distributing the violation occurrences among all users evenly.
In this chapter, we first provide an overview of OFDMA-based networks
and the characteristics of the wireless channels in such networks. Then, we
describe the multiuser scheduling problem in such networks. A briefing survey of
the solution of this problem in the literature is included. Finally, the proposed
subcarrier allocation and subcarrier assignment algorithm are introduced. In the
next chapter, we provide an extensive set of simulation results that illustrates the
performance gains achieved by our opportunistic algorithms.
65
5.1 OFDMA Network Model
We consider a cell-structured OFDMA system model that consists of a
base station communicating simultaneously with N mobile user terminals using S
OFDM subcarriers. Although the presented study is applicable both to the uplink
and the downlink, for the sake of simplicity we concentrate here on the downlink
only, which is shown in Figure 5.1. As mentioned before, an OFDMA system is
a special case of OFDM systems. The only difference between them is that
OFDM is a transmission scheme that splits a single high data-rate stream into a
lower rate streams that are transmitted over a number of subcarriers. However,
OFDMA is a multiple access scheme that is used to coordinate the transmission
of multiple data streams (which belong to different users) over a number of
subcarriers. Thus, OFDMA transmitter employs a subcarrier allocation and
assignment function instead of the serial to parallel conversion used in OFDM
systems as a first step. Different modulation schemes could be used to transmit
data efficiently over subcarriers with different gains. The rest of OFDMA system
is the same as an OFDM system as seen in Figure 5.1. Inverse Fourier Transform
(or any practical implantation) can be used to generate the orthogonal carriers
required for OFDM signal. The OFDMA symbol is then converted to the serial
form. Intersymbol interference is eliminated almost completely by introducing a
guard time in every OFDMA symbol. Like OFDM, the OFDMA symbol is
cyclically extended to avoid intercarrier interference.
At the receiver of a certain user, the guard interval is firstly removed from
the received OFDMA symbol. The OFDMA symbol is fed to a serial to parallel
converter. Then Fourier Transform is used to retrieve the data from the
subcarriers. The base station is responsible for informing each user terminal
which subcarriers are assigned to it via the control subcarriers. Therefore, the
data sent to this user could be easily received by demodulating only those
subcarriers with the appropriate demodulation technique.
66
Figure 5.1. Orthogonal Frequency Division Multiple Access (OFDMA)
transceiver.
An OFDMA symbol is generally made of two types of subcarrier: data
subcarriers for data transmission, and pilot (control) subcarriers for other control
and various estimation purposes.
Wireless channels operating at high frequencies, like those used in
OFDMA-base networks, are characterized by their time-varying, frequency-
selective fading nature. Channel gains vary from subcarrier to subcarrier for a
single wireless terminal due to multipath propagation. Besides, channel gains of
each subcarrier vary over time, for the same user terminal, due to the movement
of the terminal and other objects within the surrounding area. So that, at a given
time, some frequency intervals (subcarriers) suffers severe fading, while others
User 1
User i
User N
Subcarrier Extraction for User i
Adaptive Demodulation
Adaptive Demodulation
Adaptive Demodulation
FFT
Guard
Removal
S/P
Subcarrier Allocation
and Assignment
with Different
Modulation
Adaptive Modulation Adaptive Modulation Adaptive Modulation Adaptive Modulation
IFFT
Guard
Insertion
P/S :
Channel Information from user i
i = 1, 2, ….N
Wireless Channel
User i Receiver
67
have a good response. In this case, if the channel information is available, sub-
carriers that have a good response could be selected for transmission. Thus,
higher transmission rate could be used to transmit data on that subcarrier.
Furthermore, Channel gains of a specific subcarrier vary from wireless terminal
to wireless terminal due to statistical independence. This implies that certain sub-
carriers that are in deep fade for some users are not necessarily bad for others
since the user channel fading characteristics are not the same for different users.
Hence, selection of good sub-carriers for one user may not necessarily block
other users from accessing their good sub-carriers. Figure 5.2 illustrates an
example of such channel gain variations [29]. This gives the general motivation
to develop the resource allocation algorithm that exploits multiuser diversity to
assigns an active user its best subcarriers, and hence increase the efficiency of
channel utilization. Another important question that arises here is how to select
the number of sub-carriers to be allocated for each user.
Figure 5.2. An example of channel gain variations taken from [29].
68
5.2 Scheduling in OFDMA Networks
In OFDMA networks, where a single channel (divided into a set of
subcarriers) is shared by multiple users, the scheduling problem becomes a
resource management one. The scheduler will be responsible for dividing the set
of subcarrier available to the base station into a number of mutually disjoint
subsets of subcarriers. Each subset is assigned to a certain user for a certain
period of time (scheduling interval). Recently, there has been some research on
subcarrier and bit allocation in multiuser OFDM systems. Those algorithms can
be categorized as static and dynamic allocation algorithms.
5.2.1 Static Subcarrier Management
Static subcarrier management schemes result from the use of the traditional
multiple access schemes, such as Time Division Multiple Access (TDMA) and
Frequency Division Multiple Access (FDMA), as a mechanism for distributing
the subcarriers in multiuser OFDM networks. In OFDM-TDMA, one of the users
(the scheduled one) is assigned all the subcarriers for a certain time interval (the
scheduling time slot). Due to the variation of the subcarrier channel gains for this
terminal, channel gains for some subcarriers might be quite low, while they are
quite high for other subcarriers. Due to the channel gain variations regarding one
subcarrier for different terminals, the subcarriers with a low channel gain for the
one terminal might experience a high channel gain for some other terminal.
TDMA, however, does not provide the flexibility to adapt fully to these channel
gain variations. Alternatively, in OFDM-FDMA, each user is assigned one or
several predetermined subcarriers. This scheme ignores the channel gain
variations of a certain subcarrier for the same user caused by the mobility of the
user. Thus, statically assigning certain subcarriers to terminals without adapting
to the channel gain variations would not exploit the performance enhancement
provided by multiuser diversity. As a consequence, any fixed assignment of
subcarriers to terminals will waste either power or bit rate [30, 31].
69
5.2.2 Dynamic Subcarrier Management
Recently, dynamic (real-time) radio resource management that considers
the users' instantaneous channel conditions has attracted enormous research
interest. This is due to the significant overall system efficiency increase obtained
when variations in channel gains among users (multiuser diversity) is exploited.
Many schemes known as bit loading algorithms [29 – 32] have been suggested
which adapt transmission power or bit rates optimally to the channel gains of
different subcarriers, where either a feasible overall bit rate or a maximum
available transmit power is given. They are based on a result from information
theory describing how to distribute transmission power over a set of subcarriers
with different channel gains in order to maximize the channel’s capacity. This is
known as the water filling principle first discussed by Shannon.
Wong et al [31] addressed the problem of minimizing the transmitted
power at a given bit rate per terminal. Subcarrier and bit allocation was done
dynamically through the use of nonlinear optimization with integer variables. An
extremely computationally complex iteration is required to find the two
Lagrangian multipliers used in the nonlinear optimization. A simple modification
to Wong's algorithm was proposed in [29]. The proposed extension allows each
user to specify its individual QoS requirements, defined in terms of bit rate and
bit error rate, and thus distributes subcarriers and transmit power among multiple
users according to their QoS traffic requirements.
An alternative problem of maximizing the overall bit rate of multiple
wireless terminals while the transmit power is upper bounded have been
considered in [32] by Yin and Liu. Such a problem can be decomposed into two
tasks: first determining the number of subcarriers each terminal is assigned and
then choosing the concrete subcarriers to be assigned. Yin and Liu suggested a
scheme where first the number of subcarriers assigned to each terminal is
determined by considering each terminal’s average channel gains and its required
bit rate. Then, the assignment of subcarriers to terminals is done. However,
70
assigning subcarriers to wireless terminals is not a trivial operation, even if the
number of subcarriers to be assigned to each terminal is already determined. Yin
and Liu suggested to solve this problem by using a graph algorithm solving the
maximum weight perfect matching problem. While this algorithm computes the
optimal assignment of subcarriers to terminals, it is still fairly computationally
expensive.
Due to the high complexity of the optimization techniques, the question of
heuristic approximations to such a kind of optimization problems became
relevant. Many suboptimal heuristic algorithms have been proposed recently [33
– 37]. The computational complexity of the heuristics is considerably smaller
than that of the optimum solution. On the other hand, their results are usually
close to the optimum solutions.
An iterative solution of the total transmit power minimization problem was
proposed in [33]. The problem is decomposed into two procedures: A subcarrier
allocation with fixed modulation, and then by using bit loading scheme, the
number of bits is incremented. The authors have also introduced a possible
resource allocation scheme when the objective is to maximize capacity, based on
proportional fair scheduling algorithm for point-to-point communication.
In [34], the authors presented two related heuristic algorithms for the
problem of assigning subcarriers to terminals, assuming that the number of
subcarriers allocated to each terminal is fixed. These algorithms assigned each
user the current best subcarriers in a prioritized manner.
Another dynamic subcarrier and bit allocation algorithm, which takes
advantage of the knowledge of instantaneous channel gain properly in subcarrier
and bit allocation, is presented in [35]. Initially, the greedy single user water-
filling approach is used to allocate subcarriers and bits as if all the subcarriers in
the system could be used exclusively by this user. In case that a subcarrier is
71
desired by more than one user, the algorithm will arbitrate the subcarrier to one
user appropriately so that total transmit power is minimized.
The authors in [36] introduced a different approach aiming to minimize the
number of subcarriers based on the rate requirements first, and then adjust the
minimum required transmitted power accordingly. In addition, interference
learning techniques were used in conjunction with the proposed scheme to
enhance the system performance for voice services.
When other types of QoS requirements, such as the delay requirements of
real-time traffic, are to be considered, the problem at hand becomes much more
complicated. This is pursued in [37, 38]. The authors in [37] presented a new
subcarrier allocation method that finds the number of subcarriers to be assigned
to each user in the start of every time slot. The method is based on allocating
subcarriers for terminals depending on the actual queue size of each terminal
relative to the overall data queued at the access point. In contrast to other
methods described above, channel gain information as well as any stream
specific knowledge is not included in the allocation of subcarriers. Although this
method is very simple, it responds intuitively to changes in the transmission
situation regarding wireless channel qualities or queue sizes. In the case of a
severe quality degradation of most channels for one terminal, its queue simply
increases, leading to a higher number of subcarriers allocated to this terminal for
the next downlink phases. Similarly, a burst of data arriving at the access point
for one terminal will lead to a higher number of subcarriers allocated to this
terminal for the next downlink phases. As a consequence the proposed variable
subcarrier allocation method can take advantage of the statistical variations in
data streams without explicitly provided information of the streams at the access
point.
The proposed adaptive resource allocation algorithm in [38] is based not
only on the channel conditions and power limitation observed in the physical
layer, but also the queue status, packet arrival, QoS requirements, service
72
discipline, and user fairness observed at the data link layer. The objective of the
authors was to minimize the overall transmission power while maintaining the
channel errors at a sufficiently low level, so that the assumption of error-free
channel in the scheduling part is generally valid. With error-free links, the system
can fairly guarantee various QoS requirements to all the users from the physical-
layer’s point of view.
5.3 Problem Formulation
In this chapter, we introduce a new approach to subcarrier management in
OFDMA-based wireless multimedia networks. The idea behind this approach is
that the subcarrier allocation and assignment is not only dependent on the
instantaneous channel conditions of different users, but also on the QoS
requirements and fairness among users. The QoS requirement of real-time traffic
users are generally defined in terms of a delay bound. A packet should be
delivered to the receiver before that deadline, otherwise, the information
contained in this packet will be of no use to the receiver. Before we formulate
our problem let us define the following parameters:
N : The number of users in the system.
Nt : The number of active users (i.e. its queue have at least one valid
packet) at time t.
S : The total number of data subcarriers.
ni(t) : The number of subcarriers to be assigned to the ith user at the slot
starting at time t.
ri : The average rate of the traffic of ith user.
μij(t) : The channel capacity (the maximum possible data transmission
rate) of the subcarrier number j if allocated to the ith user.
( )i tµ : The average "potential" subcarrier capacity of the ith user (if it
was allocated all the subcarriers).
73
( ) ( )1
1 S
i ijj
t tS
µ µ=
= ∑ (4.5)
di(t) : The time to expire of the ith user HoL packet, which is the
difference between the deadline, Ti, and the delay experienced by its HoL
packet up till time t, Wi(t), i.e
( ) ( )i i id t T W t= − (4.6)
We assume that the channel information is known at both the transmitter
and the receiver. The channel is assumed to be reciprocal. Mobile terminals may
be equipped with mechanisms to measure the rate at which they have been
served. This data may be reported back to the base station, so that it can estimate
the channel of all mobile channels based on that data as long as the channel
variation is slow. As a result, the resource allocation should be done within the
coherence time of the channel.
With the channel information, our objective of the resource allocation
problem can be defined as maximizing the total system throughput subject to a
constraint regarding the user’s QoS requirements. As we clarify further, the QoS
required by real-time users is assumed to be in the from of guaranteeing a delay
bound before which packets must be serviced, otherwise the system drops it.
Let’s define δij(t) as the indicator of allocating the subcarrier j to the user i in the
time slot starting at time t. Thus
( )ij
1 if subcarrier j is assigned to user it
0 otherwiseδ
=
(4.7)
and the total instantaneous system throughput RT(t) is
( ) ( ) ( )1 1
N S
T ij iji j
R t t tδ µ= =
= ∑∑ (4.8)
74
So that we formulate our subcarrier allocation/assignment problem as
( )
( ) ( ) { }max 0,1ij
T ijtR t for t
δδ ∈ (4.9)
subject to
( )1 1
N S
iji j
t Sδ= =
=∑∑ (4.10)
and
( )i iW t T i = 1,2,..., N< (4.11)
Note that, even though the second constraint in (4.11) don't explicitly
reflect the subcarrier assignments in the current time slot, however, it represent
the history of the previous assignments. This can be explained as follows: when
the previous assignments of a certain user(s) do not satisfy its delay requirement,
its waiting time approaches its deadline. The role of this constraint comes into
play by forcing the current assignments to compensate such user(s) by either
allocating more subcarriers or assigning better quality subcarriers in order to
prevent its (their) packets from expiry. However, a mathematical expression that
formulate the relationship between the waiting time of the HoL packet of a
certain queue and the subcarriers assigned to it (either in the current assignments
or the previous assignments) can not be driven explicitly. Thus, the optimal
solution of the above problem can not be obtained mathematically.
If this relationship between subcarrier assignments and HoL packets delays
could be found, the above problem can be solved with Integer Programming. We
refer to this approach as the optimal solution to our resource allocation problem.
Although the optimal solution gives the exact results, from an implementation
75
point of view, it is not preferred since in a time varying channel. In order to
allocate the subcarriers within the coherence time, the allocation algorithm
should be fast and the Integer Programming complexity increases exponentially
with the number of constraints. This real-time implementation requirement leads
to the quest for suboptimal solutions that are fast and close to the optimal
solution.
In what follows we propose a heuristic suboptimal solution of the above
problem. We decouple this NP-hard problem into two steps [32]:
1) Subcarrier Allocation: This step decides how many subcarriers to
be assigned to each user (i.e. determines ni(t)).
2) Subcarrier Assignment: This step determines which subcarriers to
be assigned to each terminal (i.e. the vectors δij(t) are calculated).
5.4 Subcarrier Allocation Algorithm
In our attempt to solve the above problem, we first determine the number
of subcarriers ni(t) to be assigned to every user in the set of active users Nt at that
time instant. Our allocation is based on three factors: the instantaneous subcarrier
channel gains of active users, users' average rates, and the delay information of
the HoL packets of these users. We not only exploit the statistical variations of
the users' channels, but also we use the statistical variations of users' queues in
order to increase the efficiency of channel throughput utilization.
The first step of our proposed dynamic subcarrier allocation algorithm is
to initially allocate to every active user in the system a number of subcarriers
( )'in t given by:
76
( ) ( )( )
'
1 1
t t
iii
j jj N j Nt t
trnr t
N N
t µ
µ∈ ∈
=∑ ∑
(4.12)
First, lets us assume that the weighting factor 1/t
i jj Nt
r rN ∈
∑ is equal for all
users and have a unity value. Then, a user with a relatively good channel
conditions in a certain video class, i.e. its average subcarrier capacity ( )i tµ , at
the time instant t, is greater than the mean of the average subcarrier capacities of
all the active users at that time instant, will be assigned initially two subcarriers.
On the other hand, a user with a relatively bad channel conditions in the same
class, i.e. its average subcarrier capacity ( )j tµ is less than or equal to the mean
of the average subcarrier capacities of all the active users at any time instant t,
will be assigned initially only one subcarrier. In this step, we exploit multiuser
diversity in order to efficiently utilize the scarce bandwidth of wireless channels.
However, video streams could be classified according to their average traffic
rates {ri} (which reflects the video quality). The weighting factor
1/t
i jj Nt
r rN ∈
∑ reflects the class of the ith user stream. If the average rate of the of a
certain user is greater than the mean of the average rates of all active users, then
number of subcarriers initially assigned to this user is increase due to its weight,
and vice versa.
At the end of this step, if all the available data subcarriers are assigned to
the set of users currently seeking service from the system, the allocation
algorithm terminates. However, if some subcarriers remain unused after this step,
the unused subcarriers are allocated to some of the active users. Let us denote the
number of the remaining unused subcarriers by S', where
( )'
t
iN
S S n t′ = − ∑ (4.13)
77
The role of the second step is to distribute any remaining subcarriers not
allocated by the first step among the active users. In this step of the algorithm, as
well as in the next step, the main goal is to use the remaining subcarriers
efficiently to prevent as many packets from expiry, and thus being dropped by
the system. In order to achieve this goal, the subcarrier allocation algorithm
should allocate the biggest share of the remaining subcarriers S' to the user with
the smallest time to expire di(t), and vice versa. Since the value of ( )1
id t
increases significantly as the time to expire di(t) decreases, our proposed
algorithm will distribute the remaining set of subcarriers S' among the active
users according to the ratios of ( )1
id t. When deadline due violations start to
occur (when the system is heavily loaded with users), the allocation algorithm
adapts to this situation by considering the number of violations NVi(t) in
calculating the share of additional subcarriers. Using ( ) ( )i iNV t /d t as the
distributing ratio, users recently suffering from more violations (than the average
of all users) will be compensated by allocating them more subcarriers. The
number of violations reflects the history of the previous assignments. However,
due to practical implementation it is computed in a certain time window (not the
entire history). Note that, this enhances causes fairness in distributing the
violations occurrences among all users. At this point, the number of subcarriers
to be assigned to the ith active user is now
( ) ( )
{ }( )
{ }( )
'
max 1, ( )
max 1, ( )
t
i
ii i
j
j N j
NV td t
n t n t SNV t
d t∈
′= +
∑ (4.14)
It is clear that the second component of the equation (4.14) may lead to
( )t
jj N
n t S∈
≥∑ . If the total number of allocated subcarriers equals the available
78
number, the algorithm terminates, and then moves to the subcarrier assignment
algorithm. In the next step of our proposed resource allocation algorithm, we
ensure that the number of subcarriers allocated is exactly equal to those available
in the system.
The last step in our subcarrier allocation procedure is only used when the
subcarrier allocation done in the first two steps exceeds the total number of data
subcarriers available to the system. Its function is to decrease the number of
subcarriers allocated to some users, so that the total allocated subcarriers equals
S. Our criteria in choosing these users, whose number of allocated subcarriers are
to be decreased, is the time to expire of their HoL packets and their violation
occurrences similar to what was done in the previous step of the algorithm. First,
we arrange the set of active users in a descending order according to their time to
expire. Then, the scheduler iterates over users in that order. In every iteration, the
scheduler decreases the number of subcarriers allocated to the user in turn by
one. Then checks whether the total subcarrier allocated equal to S or not. If it was
not yet equal, the algorithm continues one more iteration.
It is easily noticed that in the final step of the algorithm, users whose
packets' time to expire is small are allowed to keep their number of allocated
subcarriers in the first two steps. On the other hand, users whose number of
allocated subcarriers is most probably decreased are those whose packets' time to
expire are relatively large. Such a procedure for selecting users to degrade their
allocated resources is suitable for scheduling the delay-sensitive packets of
multimedia traffic. Figure 5.3 summarizes the subcarrier allocation algorithm.
The computational complexity of this algorithm is given by O (Nt
log(Nt)): The algorithm sorts the active users in the system according to their
time to expire once in every scheduling interval. Sorting a set of x elements
requires an algorithmic complexity of O(x log(x)).
79
Figure 5.3. Subcarrier Allocation Algorithm
Initially allocate every active user
( ) ( )( )
'
1 1
t t
iii
j jj N j Nt t
trnr t
N N
t µ
µ∈ ∈
=∑ ∑
( )t
iN
n t S=∑
Go to Subcarrier Assignment Algorithm
( )t
iN
n t S<∑
Distribute the remaining subcarriers
( )'
t
iN
S S n t′ = − ∑
among users according to their time to expire
( ) ( )
{ }( )
{ }( )
'
max 1, ( )
max 1, ( )
t
i
ii i
j
j N j
NV td t
n t n t SNV t
d t∈
′= +
∑
Arrange the active users in descending order
according to their time to expire
Decrease the number of subcarriers allocated to the user with the largest time to expire (in turn)
Yes
No
Yes
No
80
5.5 Subcarrier Assignment Algorithm
Once we have determined the number of subcarriers ni(t) allocated to the
ith user, the remaining part of the scheduling problem is to find out the exact
subcarrier assignment that maximize the total rate. This objective can be
achieved if multiuser diversity is used to assign every active user its best ni(t)
subcarriers. Such an assignment problem is equivalent to the maximum weighted
perfect matching problem in bipartite graphs [34]. An optimal solution can be
generated by the Hungarian algorithm [39], which has the complexity of O(S3),
where S is the number of subcarriers.
With the objective of enhancing the fairness characteristics of the
scheduling algorithm while maximizing the total rate, we propose a new low
complexity dynamic subcarrier assignment algorithm. The proposed algorithm is
a priority based algorithm. At some time instant (the start of a time window), the
algorithm assigns initially a unity priority to all users. Whenever a deadline due
violation occurs in a packet in a certain user's queue, its priority is incremented
by one. In every scheduling interval, the subcarrier assignment algorithm sorts
the active users in the system in a descending order according to their priorities.
The user with the highest priority starts to pick the best allocated subcarriers
from the set of all subcarrier. After assigning those subcarriers to that user, the
algorithm removes them from the set of available subcarriers. Then the algorithm
allows the user with the next higher priority to choose from this set of remaining
subcarriers, and so on. Clearly such an algorithm assigns the wireless terminal
with the highest priority (maximum number of recent deadline violations)
subcarriers with a better quality than it assigns the wireless terminal with the
lowest priority. Thus enhances the fairness performance of the scheduler. If more
than one user shares the same priority level, ties are broken by giving priority to
the user with the best channel quality (averaged over all subcarriers) to pick up
81
its allocated subcarriers first. This helps in maximizing the overall rate of the
system.
This case of equal priorities eventually occurs when the system supports
relatively small number of users (less than the maximum system capacity). In
this case no violations occur owing to the efficiency of our proposed subcarrier
allocation algorithm (as will be demonstrated by the simulation results). Hence,
the proposed subcarrier assignment algorithm reduces to an algorithm that
utilizes multiuser diversity in assigning the available subcarriers to the active
user in the system (by letting the user with the best channel conditions at ant time
instant to pick up its allocated subcarriers before the next better channel user, and
so on). Figure 5.4 summarizes the proposed subcarrier assignment algoritm.
The algorithm assigns S subcarriers to Nt wireless terminals. Each user
picks up its allocated subcarriers from a sorted list, which has to be regenerated
for each user (due to removal of some subcarriers assigned to the previous user).
Thus, the worst-case computational complexity of this assignment procedure is
given by O (Nt S log(S)). Even when added to the complexity of sorting the
active users according to their priorities (O (Nt log(Nt))), the computational
complexity of complete subcarrier assignment algorithm is much lower than that
of the optimal (Hungarian) algorithm.
In the next chapter, we carry out an extensive set of simulation
experiments in order to gain insight of the different performance aspects of the
proposed subcarrier allocation and assignment algorithms. Specifically, we are
interested in evaluating the delay, throughput, and fairness characteristics of the
algorithms. Without loss of generality, we assume that all users belong to the
same video quality class.
82
Figure 5.4. Subcarrier Assignment Algorithm
At the beginning of a time window: Reset the priorities of all users to 1
For every user
If a packet is dropped due to deadline expiry
à Increase the priority of this user by 1
Arrange the active users in a descending order according to their
priorities
Note that: In case of equal priorities, priority is to the user with the better
channel conditions
Allow the user with the highest priority (in turn) to select the best nj(t) subcarriers from the set of the
available subcarriers.
Remove the selected nj(t) subcarriers from the set of the available
subcarriers
83
Chapter 6 Simulation Results and Discussions of the OFDMA-
Based Scheduling
6.1 Simulation Setup
We first describe the simulation environment used in evaluating the
performance of the proposed subcarrier allocation and assignment algorithms. As
mentioned in chapter 5, we will consider the IEEE 802.20 Mobile Broadband
Wireless Access (MBWA) system model. The Mobile Broadband Wireless
Access (MBWA) systems being discussed in IEEE 802.20 standards group are
designed to provide a broadband, IP-oriented connection to a wireless user that is
comparable to wired broadband connections that are in use today. It is expected
that there will be a mixture of user applications similar to that of such wired
systems [40]. MBWA system shall support peak per-user data rates in excess of 1
Mbps on the downlink and in excess of 300 kbps on the uplink. These peak data
rate targets are independent of channel conditions, traffic loading, and system
architecture. The peak per user data rate targets are less than the peak aggregate
per cell data rate to allow for design and operational choices. Average user data
rates in a loaded system shall be in excess of 512Kbps downlink and 128Kbps
uplink. This shall be true for 90% of the cell coverage or greater [41].
Mobile broadband radio channel is a challenging environment, in which
the high mobility causes rapid variations across the time-dimension, multi-path
delay spread causes severe frequency-selective fading, and angular spread causes
significant variations in the spatial channel responses. For best performance, the
receiver and the transmitter algorithms must accurately track all dimensions of
the channel responses [42]. The proposed algorithms utilize these variations in
increasing the system capacity.
84
Among the different channel bandwidths suggested in [41, 43], we use a
channel of 5 MHz bandwidth. We assume that the number of data subcarriers S is
equal to 128 subcarriers. Data is transmitted on each subcarrier with an adaptive
modulation scheme, where five modulation types are available (BPSK, QPSK,
16-QAM, 64-QAM and 256-QAM). The modulation types are chosen such that
the highest possible rate can be transmitted in every scheduling interval.
For simulation purpose, the IEEE 802.20 working group adopted the test
environments and associated Single Input Single Output (SISO) channel models
put forth for UMTS Terrestrial Radio Access (UTRA). This is because the
deployment and propagation scenarios for which the UTRA models were
developed are so similar to those currently envisioned for IEEE 802.20 MBWA.
The working group defines three broad deployment/propagation scenarios [42],
referred to therein as "Test Environments", in which the performance of
candidate UTRA radio transmission technologies (RTTs) are to be evaluated.
These test environments are labeled Indoor Office, Pedestrian, and Vehicular.
Each test environment broadly defines a particular wireless propagation scenario,
and each scenario in turn has an associated channel model.
Moreover, each test environment is combined with a pair of
representative tapped delay line impulse response specifications, labeled A and
B, which characterize delay spread. The A model represents a frequently
occurring low delay spread situation, and the B model a frequently occurring
high delay spread situation within that test environment. In this work, we only
consider the B Model Pedestrian test environment. This model is valid for non-
line-of-sight case only. The tapped-delay line impulse response parameters for
the B Model Pedestrian test environment is shown in Figure 6.1. This model has
6 rays, an RMS delay spread of 750 ns. The Doppler velocity distribution model
is specified Jakes’. The user mobility rates of this environment range from 3
Km/hr up to 120 Km/hr [44]. According to these velocities, the maximum
Doppler frequency shift equals to 211 Hz for a carrier frequency of 1.9 GHz.
Thus, the coherence time of such a channel is about 4.7 milliseconds.
85
Figure 6.1. The power-delay profile of the B Model pedestrian environment.
Our approach in generating streams of packets that need to be transmitted
over the system is based on an actual video trace file. The file basically has
output from a 30 frames/sec MPEG-4 encoder targeted for an average rate of 256
Kbps and a peak rate of 2.3 Mpbs [45]. Each user receives the same video
stream, however they are randomly time-shifted at the beginning so that different
parts of the video stream arrive at different times at the access point for different
users. Each frame is decomposed into 50 bytes packets to be transmitted. A
packet is assigned a deadline before which it should be delivered to its
destination. We consider three values of this deadline, specifically, 20, 50, and
100 milliseconds. Such values are much less than the end-to-end delay allowed
for transmitting video streams (about 400 milliseconds). (In essence, we relax the
delay requirements of the core network). Video quality degradation is caused
receiving outdated packets or when not receiving these packets at all (if such a
packet is dropped by the scheduler).
86
At the base station, a centralized scheduler is responsible for multiplexing
multiple users sharing the previously described common channel. As discussed
above, this channel varies from one user to another due to the location-dependent
path loss, as well as the channel of a certain user varies over time due to the user
mobility. However, the channel gains do not change significantly within the
channel coherence time (which is 4.7 milliseconds in our case). Thus, setting the
scheduling interval (over which subcarrier allocation and assignment is
performed) to 1.667 milliseconds is a good choice. This is because in such a case
the scheduling decision can be based on a one-slot delayed version of the channel
information. This gives the scheduler/base station enough time to collect the
subcarrier channel gain information for all active users.
In the next section, we will provide an extensive set of simulation
experiments of the proposed scheduling scheme in the MBWA system. These
experiments will explore the various characteristics of the proposed opportunistic
subcarrier allocation and assignment algorithms including the overall system
capacity, fairness in both rate and delay requirements, and the control of
violation occurrences. The simulation period is three minutes.
Carrier frequency 1.9 GHz
Channel bandwidth 5 MHz
Number of data subcarriers (S) 128
User mobility speeds 3 – 120 Km/hr
Doppler frequency 211 Hz
Doppler spectrum Jakes' (6 rays)
Scheduling interval 1.667 msec
Traffic model Real trace file of MPEG-4 encoder
Frame rate: 30 frames/sec
Traffic average rate / peak rate 256 Kbps / 2.3 Mbps
Packet size 50 bytes
Table 6.1. Summary of simulation parameters.
87
6.2 Results and Discussions
In this section we present numerical results of the introduced
opportunistic subcarrier allocation and assignment algorithms. For comparison
reasons we always include also the results of the static OFDM-FDMA subcarrier
assignment. As discussed in chapter 5, OFDM-FDMA has been identified as the
best static subcarrier assignment. Thus we use it as a bench mark for illustrating
the performance gains achieved by our opportunistic subcarrier allocation and
assignment.
In the first experiment, we study the throughput performance of our
proposed scheduling algorithm via admitting users to the network while
monitoring the average throughput per user as well as the maximum and the
minimum throughput achieved. Figures 6.2-a, 6.3-a 6.4-a show the average user
throughput versus the number of admitted users for a 20, 50, and 100
milliseconds delay bounds, respectively. The aim of this experiment is to
determine the system capacity (the number of supportable terminals) for the
proposed opportunistic algorithm. The maximum number of users to be admitted
to the network if OFDM-FDMA assignment is used is 42 users only. This is
because for our model of user's traffic, 3 subcarriers per user are fairly enough to
support this traffic. Thus, a new user is admitted in this case only if there exist at
least 3 unused subcarriers. Defining the system capacity as the number of users
beyond which the average throughput per user falls to 99% of the average arrival
rate; we find that when the opportunistic allocation/assignment is used the
system can support 120, 165, and 165 users for a 20, 50, and 100 milliseconds
delay bound, respectively. While using static assignment, even though the system
can admit up to 42 users, the system can only support 15 users for 50
milliseconds delay bound and less than 10 users for 20 milliseconds delay bound
without degrading their service rates significantly. This is because with such
strong delay requirements, three low-quality subcarriers can not support the
required service rate.
88
It worth mentioning here that: the MBWA systems are required to
support more than 100 simultaneous active users per carrier [41]. An active user
is a terminal that that is registered with a cell and is using or seeking to use air
link resources to receive and/or transmit data within a short time interval. Thus,
the proposed subcarrier allocation and assignment algorithm is suitable for
application in future MBWA systems.
The explanation of the significant difference in system capacity of our
opportunistic algorithms is as follows: a user is not allocated/assigned any
subcarriers unless its queue contains at least one packet ready for transmission.
In addition to the capacity gain obtained from utilizing multiuser diversity in the
allocation/assignment processes. Thus our algorithms don't only take advantage
of the statistical variation of users' channels but also the statistical variation in
their queue states.
In order to qualify the fairness characteristics of the proposed
opportunistic subcarrier allocation and assignment algorithms, we plot the
maximum and the minimum achieved throughput for the above experiments in
Figures 6.2-b, 6.3-b 6.4-b. As show in these figures, when using the opportunistic
algorithm, the difference between the maximum and the minimum achieved
throughput is insignificant when the system is serving a number of users less
than or equal to the system capacity. Even when serving more than the system
capacity the difference is still acceptable. However, for the static OFDM-FDMA
assignment, that difference is highly noticed, especially for 20 and 50
milliseconds delay bounds. This is because even though 3 high-quality
subcarriers are enough to handle user's traffic, 3 low-quality channels can not
handle that traffic. As a consequence, the throughput share of users with low-
quality channels is much lower than their traffic arrival rates. Thus, low-quality
users play the major role in degrading the performance (the system capacity) of
the static algorithm. We define the throughput fairness index as the ratio of the
difference between the maximum and the minimum achieved throughput (λmax
and λmin, respectively) to the average throughput per user (λavg), i.e.
89
a) The average throughput per user.
b) The maximum and the minimum achieved throughput.
Figure 6.2. Throughput performance for a 20 msec delay bound.
90
a) The average throughput per user.
c) The maximum and the minimum achieved throughput.
Figure 6.3. Throughput performance for a 50 msec delay bound.
91
a) The average throughput per user.
d) The maximum and the minimum achieved throughput.
Figure 6.4. Throughput performance for a 100 msec delay bound.
92
max min
avg
Throughput Fairness Indexλ λ
λ−
= (6.1)
Using this index as a formal indicator of the fairness performance of the
scheduling algorithm, we gain more insight of the performance advantage of the
proposed opportunistic algorithms. The throughput fairness indices of both the
opportunistic algorithm and the static algorithm for different delay bounds are
plotted in Figure 6.5. The perfect fairness of the opportunistic algorithm when
the system is operating with a number of users less than its capacity (fairness
index approaches 0) can be easily noticed. The favor of this super fairness
performance is owed to the main objective of the proposed algorithm of
preventing all users from losing any of their packets (by being dropped due to
deadline expiry) by allocating them more subcarriers. Even when the system is
operated with users more than its capacity (users starts to lose their packets), the
fairness of distributing these lost packets among all users is achieved via the
subcarrier assignment algorithm. This is demonstrated by the next experiments.
Figure 6.5. Throughput fairness indices of both the opportunistic algorithm and
the static algorithm for different delay bounds.
93
Now, we study the deadline due violations behavior of the proposed
opportunistic algorithms. Figure 6.6 shows the maximum and the minimum
number of violation occurrences experienced by users in the same simulation
setup of the previous experiment. Again, it is clear that the subcarrier allocation
algorithm succeeded in saving users' packets from being dropped due to deadline
expiry regardless the channel-quality of different users. (Since no deadline
violations occurs for all users packets until the system is operating near its
capacity). Moreover, when the number of users in the system exceeds the system
capacity, the subcarrier assignment algorithm cooperates with the allocation
algorithm to ensure that the number of dropped packets in the system is fairly
distributed among all users in the network. This can be seen in Figure 6.6 where
the maximum percentage of packets lost (most probably in the queue of a low-
quality channel user) is close to the minimum percentage of packets lost (most
probably in the queue of a high-quality channel user). A remarkable result is that
this fairness behavior is independent of the value of the value of the delay bound.
On the other hand, the static subcarrier assignment lacks such characteristics.
a) Delay bound = 20 msec.
94
b) Delay bound = 50 msec.
c) Delay bound = 100 msec.
Figure 6.6. Deadline violation fairness for different delay bounds.
95
In our last experiment, we consider the delay performance of the
proposed subcarrier allocation and assignment algorithms. This can be achieved
through studying the distribution of the delays that users' packets incur at the
base station. A good scheduling algorithm should keep all delays below the delay
bound with high probability, which is achieved roughly when the delays are kept
close for all users. Due the large number of users the system can support, we
focus only on the delay distribution of the user with the best channel quality and
the user with the worst channel quality. The delay distributions of these
particular couple of users are sufficient to evaluate the delay performance of the
scheduling algorithm since they represent the opposite extremes of the channel
qualities.
First, we consider the system is serving only 42 users (the maximum
supportable number of users using the OFDM-FDMA static assignment). The
delay tail of both the static and the opportunistic scheduling algorithms for
different delay bounds are shown in Figure 6.7. A couple of observations can be
easily noticed: The first observation is that the delay performance of the
opportunistic algorithm (the delay distributions and the maximum delays of the
best and the worst channel users) is similar regardless the value of the delay
bound. The other observation is that the opportunistic algorithm keeps the delay
of all users far below the deadline and also close to each other. On the other
hand, the delay performance of the static algorithm is dependent on the value of
the delay bound and has a very poor performance compared to the opportunistic
algorithm. For example, when the delay bound is 100 msec (Figure 6.7-c), there
is a big gap between the delays incurred by the best channel user and those of the
worst channel user. While when the delay bound is 20 msec (Figure 6.7-a) the
gap is smaller but with packet delays close to the delay bound. Actually, some
packets incurred delays greater than the delay bound and thus dropped by the
system (the best channel user has lost 5% of its packets while the worst channel
user has lost 50% of its packets). Thus the small performance difference in
Figure 6.7-a is somehow misleading.
96
The good delay performance of the opportunistic algorithm comes from
the mechanism of compensation of low-quality users employed in the algorithm.
When a certain user (or group of users) is suffering from a long period of bad
channel conditions, the delay of its (their) HoL packet increases (increase), so
that the allocation algorithm allocates more subcarriers to this (these) user (even
on the expense of taking a part or all of the subcarrier initially assigned to other
higher-quality users). Preventing high-quality users from their subcarrier shares
increases their HoL packets delay. Thus in the next scheduling interval the
algorithm allocates them more subcarriers, and so on. Thus the delays of all users
are always kept small and below the deadline. It is worth mentioning that this
mechanism is not affected by the value of the delay bound since it is only
concerned by the difference in HoL delays of different users.
In order to have a fair comparison with the static assignment, we also
studied the delay performance of our opportunistic algorithm the system is
supporting its full capacity. The delay distributions of the best and the worst
channel users for a 20 milliseconds (and 120 users), a 50 milliseconds (and 165
users), and a 100 milliseconds (and 170 users) is shown in Figures 6.8, 6.9, and
6.10, respectively. As shown in these figures, even with such high user
population, our opportunistic subcarrier assignment and allocation algorithms
managed to keep the delays of users with different channel conditions very close.
These results emphasizes the efficiency of our algorithms to control the delay
performance independently of other factor such as the value of the delay bound
and user population.
Finally, the results presented in this chapter can be concluded as follows:
though rather a computationally inexpensive algorithm, the proposed
opportunistic scheduling algorithm can be used to provide statistical delay
guarantees for time-sensitive traffic in OFDMA-based wireless networks. The
algorithm exhibits a unique fairness behavior in the services (packet delays and
throughput) delivered to different users. Moreover, multiuser diversity used in
the algorithm offers orders of magnitude increase in the system capacity.
97
a) Delay bound = 20 msec (5.3% and 48.5% of the best and the worst users packets were lost).
b) Delay bound = 50 msec (18.3% of the worst user packets was lost).
98
c) Delay bound = 100 msec (2.9% of the worst user packets was lost).
Figure 6.7. Delay tails of the best and worst channel users (N = 42 users).
Figure 6.8. Delay tails of the best and worst channel users (1.5% and 2.3% of the best and the
worst users packets were lost) (N = 120 users, T = 20 msec).
99
Figure 6.9. Delay tails of the best and worst channel users (0.07% and 1.4% of the best and
the worst users packets were lost) (N = 165 users, T = 50 msec).
Figure 6.10. Delay tails of the best and worst channel users (6.7% and 16.9% of the best and
the worst users packets were lost) (N = 170 users, T = 100 msec).
100
101
Chapter 7 Conclusions and Future Research
7.1 Conclusions
This thesis addresses the problem of opportunistic scheduling of multiple
time-sensitive users sharing a common resource in wireless multimedia
networks. Opportunistic scheduling means that the scheduling decision is based
on the instantaneous user information, e.g. in our case, the channel state
information of different users and their delay information. We considered this
problem in two different models of wireless networks that are candidates of
beyond 3G networks. First, we studied TDM-based networks (in which time is
the resource to be shared among users). Then we tackled on OFDMA-based
mobile broadband wireless networks (in which the scheduler function is to
distribute the available subcarriers "the common resource" over different users).
Our approach was to exploit multiuser diversity inherently existing in
wireless systems. Multiuser diversity scheduling offers orders of magnitude
increase in the overall system performance. However, multiuser diversity
scheduling is unfair in resource sharing among different users cause it always
gives higher priority to high channel-quality users. As a consequence, low
channel-quality users will be prevented from accessing the wireless link, and thus
not obtain their required QoS (delay-bound guarantees in this case). In order to
remedy this situation, we introduced mechanisms to compensate such users and
that statistically guarantee their QoS requirements as well as achieving fairness
in resource sharing among all users in the system.
Regarding the problem of scheduling real-time users over TDM-based
wireless multimedia networks, we introduced the Channel Dependent Earliest-
Due-Date first (CD-EDD) scheduling discipline, a discipline that provides
102
statistical delay bound guarantees for time-sensitive traffic in networks with
time-varying channels. Gains in throughput and realized delay are achieved by
exploiting multi-user diversity techniques in which the scheduling decision takes
into account the current channel state for each user in the system. By considering
the packet loss due to deadline violation, we also presented a set of scheduling
policies that achieve fairness in delays, throughput, and packet loss ratios among
different users regardless of the value of the delay bound. The proposed
disciplines outperforms other existing polices in the sense that the services
received by different real-time users, namely, delays, rates, and loss ratios, are
fairly achieved for a wide of applications. The proposed policies have low
computational complexity and are suitable for application in future broadband
fixed or mobile wireless systems such as 802.16a and 802.20.
Also, we presented new opportunistic subcarrier allocation and
assignment mechanisms for parallel transmission of data streams to different
terminals in OFDMA-based broadband wireless systems. The subcarrier
allocation algorithm instantaneously determines the number of subcarriers each
terminal should receive by a dynamic assignment algorithm for the next
downlink scheduling interval. Our subcarrier allocation method is based on
allocating subcarriers for terminals depending on the knowledge of the channel
gain information of different users as well as other stream specific delay
information (the time to expire of the HoL packet) and the number of recent
deadline violations. Initially, we utilize multiuser diversity in allocation
subcarriers to active users. In the case of a severe channel-quality degradation of
one (or some) user channel, its (their) HoL packet time to expire approaches
zero, leading to a higher number of subcarriers allocated to this terminal for the
next downlink intervals. Similarly, any increase in the number of violations
experienced by a certain user over the average number of violations will lead to a
higher number of subcarriers allocated to this terminal for the next downlink
intervals. The allocated numbers of subcarriers are assigned to terminals
dynamically in a manner that ensure fairness in the deadline violation
occurrences among different users. The proposed algorithms have low
103
computational complexity and are suitable for application in 4G mobile
broadband wireless access systems such as the IEEE 802.20 standard.
7.2 Future Research Directions
During conducting this research, some interesting related ideas that may
be addressed relaying on the findings of this thesis came into picture. Among
these research ideas:
• How to further modify the proposed scheduling schemes in order to
be able to simultaneously provide different kinds of QoS (e.g. rate
guarantees for non-real-time users and delay guarantees for real-time
users). Supporting real-time flows with delay requirements and non-
real-time flows with throughput constraints simultaneously is an
important challenge for future wireless networks. Indeed, providing
differentiated quality-of-service levels increases a system’s total
utility when applications have diverse performance requirements, e.g.,
some preferring low delay, others high throughput, and others merely
best effort service. Consequently, both medium access control and
network-layer scheduling algorithms must select and transmit packets
in accordance with their QoS requirements.
• The application of the channel-aware scheduling with QoS guarantees
in other future wireless networks such as multi-hop and ad-hoc
networks. However, due to the distributed nature of these networks,
nodes may not be able to determine the next packet that would be
transmitted in a (hypothetical) centralized and ideal dynamic priority
scheduler. But this difficult problem becomes easier in hybrid
networks (where the network combines a centralized core
interoperating with distributed nodes).
104
• Performing Mathematical analysis of the proposed CD-EDD
scheduling discipline in order to proof its throughput optimality.
105
REFERENCES
[1] S. Kashave, An Engineering Approach to Computer Networking: ATM
Networks, the Internet, and the telephone Network. Addison Wesley,
1997.
[2] T. Rappaport, Wireless Communications: Principles and Practice. Upper
Saddle River, NJ: Prentice Hall, 2002.
[3] R. Knopp and P. A. Humblet, “Information capacity and power control in
single-cell multiuser communications,” in Proc. IEEE International
Conference on Communications (ICC’95), Seattle, USA, June 1995.
[4] M. Grossglauser and D. Tse, “Mobility increases the capacity of wireless
ad-hoc networks,” in Proc. IEEE INFOCOM’01, April 2001.
[5] D. Wu and R. Negi "Utilizing multiuser diversity for efficient support of
quality of service over a fading channel," Proc. IEEE ICC'03, Anchorage,
Alaska, USA, May 11-15, 2003.
[6] P. Bender, P. Black, M. Grob, R. Padovani, N. Sindhushayana, and A.
Viterbi, “CDMA/HDR: a bandwidth efficient high speed wireless data
service for nomadic users,” IEEE Communications Magazine, vol. 38, no.
7, pp. 70–77, July 2000.
[7] A. Jalali, R. Padovani, R. Pankaj "Data throughput of CDMA-HDR a
high efficiency-high data rate personal communication wireless system,"
in Proc. of Vehicular Technology Conference 2000-spring, vol. 3.
[8] Y. Liu, S. Gruhl, and E. Knightly. "WCFQ: An opportunistic wireless
scheduler with statistical fairness bounds," IEEE Transactions on
Wireless Communication, September 2003.
106
[9] Y. Liu and E. Knightly. "Opportunistic fair scheduling over multiple
wireless channels," in Proc. of IEEE INFOCOM, 2003.
[10] X. Liu, E. K. P. Chong, and N. B. Shroff "Transmission scheduling for
efficient wireless utilization," in Proc. of IEEE INFOCOM, 2000.
[11] X. Liu, E. K. P. Chong, and N. B. Shroff "Optimal opportunistic
scheduling in wireless networks," in Proc. of IEEE INFOCOM, 2000.
[12] S. S. Kulkarni and C. Rosenberg "Opportunistic scheduling policies for
wireless systems with short term fairness constraints," in Proc. of IEEE
GLOBECOM, December 2003.
[13] Z. Jiang and N. Shankaranarayana, "Channel quality dependent
scheduling for flexible wireless resource management," AT&T Labs.
[14] Y. Cao, and V. Li, “Scheduling algorithms in broad-band wireless
Networks,” IEEE Proc. of the IEEE, no. 1, January 2001.
[15] S. Shakkottai, T. Rappaport, and P. Karlsson, “Cross-layer design for
wireless networks,” IEEE Communications magazine, October, 2003.
[16] D. Johnson, D. Maltz, and J. Broch, “DSR: The dynamic source routing
protocol for multi-hop wireless ad hoc networks,” in Ad Hoc Networking,
edited by C. E. Perkins, pp. 139–172, Addison-Wesley, 2001.
[17] D. Braginsky and D. Estrin, “Rumor routing algorithm for sensor
networks,” 2001. Available at http://lecs.cs.ucla.edu/estrin/.
107
[18] A. Safwat, H. Hassanein, and H. Mouftah, “Optimal Cross-Layer Designs
for Energy-Efficient Wireless Ad hoc and Sensor Networks,” IEEE
International Performance, Computing and Communications Conference
(IPCCC) 2003.
[19] 3rd Generation Partnership Project; Technical Specification Group Radio
Access Network, “Physical layer aspects of utra high speed downlink
packet access (release 4) tr25.848 v4.0.0,” http://www.3gpp.org, Mar.
2001.
[20] 3rd Generation Partnership Project; Technical Specification Group Radio
Access Network, “Services provided by the physical layer (release 4) ts
25.302 v4.1.0,” http://www.3gpp.org, June 2001.
[21] S. Shakkottai and R. Srikant, "Scheduling real-time traffic with deadlines
over a wireless channel," in Proc. of ACM Workshop on Wireless and
Mobile Multimedia, Seatle, WA, August 1999.
[22] M. Andrews, K. Kumaran, K. Ramanan, A. L. Stolyar, R. Vijayakumar,
P. Whiting "CDMA data QoS scheduling on the forward link with
variable channel conditions," Bell Laboratories Technical Report, April,
2000.
[23] A.L. Stolyar and K. Ramanan, "Largest Weighted Delay First
Scheduling: Large Deviations and Optimality," Annals of Applied
Probability, 2001, Vol.11, No.1, pp. 1-48.
[24] S. Shakkottai and A.L. Stolyar, "Scheduling Algorithms for a Mixture of
Real-Time and Non-Real-Time Data in HDR," Proc. of the 17th
International Teletraffic Congress - ITC-17, Salvador da Bahia, Brazil,
24-28 September, 2001, pp. 793-804.
108
[25] K. Chang and Y. Han, "QoS-based adaptive scheduling for a mixed
service in HDR system," PIMRC 2002.
[26] S. Shakkottai and A. L. Stolyar, "Scheduling for Multiple Flows Sharing
a Time-Varying Channel: The Exponential Rule," Analytic Methods in
Applied Probability. In Memory of Fridrih Karpelevich. Yu. M. Suhov,
Editor. American Mathematical Society Translations, Series 2, Volume
207, pp. 185-202. American Mathematical Society, Providence, RI, 2002.
[27] M. Klerer, , “Introduction to IEEE 802.20: technical and procedural
orientation,” IEEE802.20 PD-04, March 2003.
[28] R. Nee, and R. Prasad, "OFDM for wireless multimedia
communications," Artech House universal personal communications
library, 2000.
[29] S. Pietrzyk and G. J. M. Janssen, “Multiuser subcarrier allocation for QoS
provision in the OFDMA systems,” in Proc. VTC 2002, vol. 2, 2002, pp.
1077–1081.
[30] W. Rhee and J. Cioffi, “Increase in capacity of multiuser OFDM system
using dynamic subchannel allocation,” in Proc. Vehicular Technology
Conference (VTC), 2000, pp. 1085 – 1089.
[31] C. Wong, R. Cheng, K. Letaief, and R. Murch, “Multiuser OFDM with
adaptive subcarrier, bit and power allocation,” IEEE Journal on Selected
Areas of Communications, vol. 17, no. 10, pp. 1747–1758, October
1999.
[32] H. Yin and H. Liu, “An efficient multiuser loading algorithm for ofdm-
based broadband wireless systems,” in Proc. IEEE Globecom, 2000.
109
[33] M. Ergen, S. Coleri, and P. Varraiya, “QoS aware adaptive resource
allocation techniques for fair scheduling in OFDMA based broadband
wireless access systems,” IEEE Transactions on Broadcasting, vol. 49,
no. 4, December 2003.
[34] J. Gross, H. Karl, F. Fitzek, and A. Wolisz, “Comparison of heuristic and
optimal subcarrier assignment algorithms,” in Proc. of Intl. Conf. on
Wireless Networks (ICWN), June 2003.
[35] G. Zhang, “Subcarrier and bit allocation for real-time services in
multiuser OFDM systems,” in Proc. of Intl. Conf. on Communications
(ICC), June 2004.
[36] N. Damji, and T. Le-Ngoc, “Adaptive downlink multi-carrier resource
allocation for real-time multimedia traffic in cellular systems,” in Proc. of
Intl. Conf. on Communications (ICC), June 2004.
[37] J. Gross, J. Klaue, H. Karl, and A. Wolisz, “Subcarrier allocation for
variable bit rate video streams in wireless OFDM systems,” in Proc. of
Vehicular Technology Conference (VTC), 2000
[38] Y. Zhang, and K. Letaief, “Adaptive resource allocation and scheduling
for multiuser packet-based OFDM networks,” in Proc. of Intl. Conf. on
Communications (ICC), June 2004.
[39] H. Kuhn, “The hungarian method for the assignment problem,” Naval
Research Logistics Quarterly, , no. 2, pp. 83–97, 1955.
[40] IEEE C802.20-03/80 “Traffic models for IEEE 802.20 MBWA system
simulations v.1,” September 2003.
110
[41] IEEE C802.20-03/81 “802.20 Requirements Document,” August 2003.
[42] IEEE C802.20-03/70 “Channel models for IEEE 802.20 MBWA system
simulation,” July 2003.
[43] IEEE P802.20-04/08 “802.20 SRD: data rates, spectral efficiency and
frequency assignments,” Jan 2004.
[44] IEEE C802.20-04/30 “Channel models for IEEE 802.20 MBWA system
simulation - Rev 04,” March 2004.
[45] Arizona State University Trace Website, Video Library:
"Jurassc_Park_One". Avialble at http://trace.eas.asu.edu/cgi-
bin/display.cgi?name=Jurassic_Park_One&format=qcif&encs=simple&g
ops=gopone&raco=rc&qlev=5&lyif=bpe&stuff=zero&type=frame
111
Appendix A Code Samples
Throughout the thesis, all simulation scenarios have been implemented
using C++ programs with the aid of IT++ library. IT++ is a C++ library of
mathematical, signal processing, speech processing, and communications classes
and functions. It has been developed by researchers in these areas. The itbase
library is the core of IT++ and it contains classes and functions for mathematics
with scalars, vectors, and matrices. This library is mainly built using a flexible
template of vector and matrix classes and lots of functions for vectors and
matrices. These functions are similar to the Matlab functions. Moreover, the
IT++ file format ".it" can be read using Matlab. This enabled us to use Matlab to
plot all figures in the thesis. The IT++ library originates from the former
department of Information Theory at Chalmers University of Technology,
Gothenburg, Sweden. Since the library is coded in C++ thus comes the name of
the library IT++.
Our simulation setup for different scenarios was carried out in two
separated steps. The first step was to simulate the channels of all users (according
to the intended channel model). These channels are then stored on disk. The
second step was to apply the scheduling algorithm over these users. This step
included the generation of users' traffic. The output of this step is the final output
to be passed to Matlab to be plotted.
As a sample of the channel simulation program, the code for simulating
the Jakes model of the 6-ray Rayliegh faded channel of the IEEE 802.20
Pedestrian-B environment used in testing the OFDMA algorithms is listed in
section A.1. Then in section A.2, we include the code of the proposed heuristic
subcarrier allocation and assignment as a sample of the scheduling programs.
112
A.1 Sample Program 1: Channel Simulation // This program simulates the 6-ray Rayliegh faded channels using Jakes Model. #include "itbase.h" #include "itcomm.h" using std::cout; using std::endl; void jakes (int K, double Jmax, int points, double p, cvec &h); int main() { int np = 6; // The number of paths per channel int N = 46; // Number of users int S = 128; // The number of subchannels double sim_period = 180.0; // The simulation period (in sec) double Ts = 5.0 * 0.001 / 3.0; // Ts is seconds double B = 5.0 * 1024.0 * 1024.0; // The channel BW = 5 MHz double EbNo = 2.0; // The signal to noise ratio in absolute units (3dB = 2) double Fd = (120000.0/(60.0*60.0)) * 1.9e9 / 3e8; // Doppler freq = Vmax*fc/C; double J = 1.0 / (2.0 * Ts * Fd); // The Jmax variable passed to jakes function int ns = ceil_i(sim_period / Ts); // Simperiod / Ts char file_name[128]; vec a(N); // Holds the gains of different users vec p(np); // The relative power of the different paths cvec h1(ns),h2(ns),h3(ns),h4(ns),h5(ns),h6(ns); // The 6 paths cvec currentchan(np); // Holds the states of the 6 paths at time t cvec currentsubchan(S); // Holds the states of subcarriers of a user at time t imat user(ns,S); Uniform_RNG A; // Initialization of some parameters p = "0 -0.9 -4.9 -8 -7.8 -23.9"; p = pow(10.0, p/10.0); // Generation of different users' gains RNG_randomize(); A.setup(1.0,2.0); a = A(N); sort(a); // Simulation of users' channels for (int u = N-1; u >= 0; u--) { jakes(0,J,ns,p(0),h1); jakes(0,J,ns,p(1),h2); jakes(0,J,ns,p(2),h3); jakes(0,J,ns,p(3),h4); jakes(0,J,ns,p(4),h5); jakes(0,J,ns,p(5),h6); for (int t = 0; t < ns; t++) { currentchan(0) = h1(t); currentchan(1) = h2(t); currentchan(2) = h3(t);
113
currentchan(3) = h4(t); currentchan(4) = h5(t); currentchan(5) = h6(t); currentsubchan = fft(currentchan, S); for (int sc = 0; sc < S; sc++) { user(t,sc) = floor_i(logb(2.0, ((B * logb(2.0,(1+sqr(abs(currentsubchan(sc)))*a(u)*EbNo/sum(p))) / S)/(9.6*1024)))); if (user(t,sc) < 0) user(t,sc) = 0; } } sprintf(file_name, "user%d%s", N-1-u, ".it" ); ofstream pf(file_name); if(!pf.is_open()) cout << " File is not open "; for (int nsi = 0; nsi < ns; nsi++) for (int Si = 0; Si < S; Si++) pf << user(nsi,Si) << " "; pf.close(); } return 0; } void jakes (int K, double Jmax, int points, double p, cvec &h) { // K = 0 (Rayleigh Channels) anf K = 1 (Rician Channel) // Jmax = 1/(Bd*T) where Bd is the Doppler frequency and T is the sampling rate // points = Number of instants you want to sample the channel // P = The Relative power of the channel (PATH) int N = 34; int No = 8; double alpha = 0.0; double beta = pi / (No + 1.0); double fac = randu() * 100000.0; double temp; vec xc(points), xs(points), X(points), Y(points); xc.zeros(); xs.zeros(); X.zeros(); Y.zeros(); for (int jj = 1; jj <= points; jj++) { xc(jj-1) = sqrt(2.0) * cos(pi*(jj+fac)/Jmax) * cos (alpha); temp = 0.0; for (int ii = 1; ii <= 8; ii++) temp = temp + 2.0 * cos(pi * cos(2.0*pi*ii/N) * (jj + fac) / Jmax) * cos(ii*beta); xc(jj-1) = xc(jj-1) + temp; } for (int jj = 1; jj <= points; jj++) { xs(jj-1) = sqrt(2.0) * cos(pi*(jj+fac)/Jmax) * sin (alpha); temp = 0.0; for (int ii = 1; ii <= 8; ii++) temp = temp + 2.0 * cos(pi * cos(2.0*pi*ii/N) * (jj + fac) / Jmax) * sin(ii*beta); xs(jj-1) = xs(jj-1) + temp; }
114
X = sqrt(2.0*K / (K+1.0)) + sqrt(1.0/(K+1.0)) * xc / sqrt(8.0); Y = sqrt(1.0/(K+1.0)) * xs / sqrt(9.0); h = to_cvec(X,Y); h = h * sqrt(p/2.0); }
A.2 Sample Program 2: The Scheduler #include "itbase.h" #include "itcomm.h" using std::cout; using std::endl; struct Queue { int len ; int HOL ; int violation_count; int HOL_pkt_len; vec elem_len_arriv; vec elem_HOL_wait; }; int sum(const ivec &V); void my_sort(vec array); int main() { // Variable Declaration double D = 20.0; // dead line of a packet double Ts = 5.0/3.0; // The time slot length (in msec) double sim_period = 180000.0; // The simulation period (in msecs) double current_time; // Time Slot Counter int Ts_counter = ceil_i(sim_period / Ts); int pktsize = 400; int S = 128; // The number of subcarriers int N = 46; // Number of users in the system int Nt; // number of active users at time t int St; double w_mean, m_mean; // hold the average of channels and delays at t double total_rate; vec subchan(S), w(N), m(N); ivec scheduled_users(N); // Holds the Indeces of the active users ivec z(N); // Hods the No. of subcarriers to be assigned to the users at t. ivec w_sorting(N); Queue user[N]; ivec vc(N); ivec p(N),q(N); bvec s(S); ivec throughput(N); // Some Initiations vc.ones(); throughput.zeros();
115
char file_name[128]; imat chan_state(N,S); ifstream ff[N]; RNG_randomize(); for (int f = 0; f < N; f++) { sprintf(file_name, "user%d%s", f, ".it" ); cout << file_name << endl; ff[f].open(file_name); if(!ff[f].is_open()) cout << " File is not open "; } // Initialize the queues for (int j = 0; j < N; j++) { user[j].len = 0; user[j].HOL = 0; user[j].violation_count = 0; user[j].HOL_pkt_len = pktsize; user[j].elem_len_arriv.set_size(2*Ts_counter); user[j].elem_HOL_wait.set_size(2*Ts_counter); user[j].elem_HOL_wait.ones(); user[j].elem_HOL_wait = -10 * user[j].elem_HOL_wait; } // Simulating Users Traffic int ii, l; float we; int start; for (int y = 0; y < N; y++) { ifstream in("terse.data"); if(!in.is_open()) cout << " File is not open "; l = 0; start = 11 * randi(0, 9327); // Find a random starting frame for this user while(!in.eof() && l < start) { in >> ii; l++; in >> we; } // Then reads the required number of frames from this starting frame for (int u = 0 ; u < 5400; u++) { in >> ii; l++; ii = ceil_i(1.0*ii/pktsize); // Calculate the number of packets in that frame for (int r = 0; r < ii; r++) //Add these packets to queue & Calculate their arrival times { user[y].elem_len_arriv(user[y].len) = u * 1000.0 / 30.0 ; user[y].len++; } in >> we;
116
} user[y].elem_len_arriv.set_size(user[y].len, true); in.close(); } // Here starts the scheduling functions (runs once every scheduling interval) for (int i = 0; i < Ts_counter; i++) { current_time = i * Ts; Nt = 0; m_mean = 0; w_mean = 0; w.ones(); w = w * -1; m.ones(); m = m * -1; z.zeros(); scheduled_users.set_size(N,false); scheduled_users.ones(); scheduled_users = scheduled_users * -1; s = ones_b(S); for (int nii = 0; nii < N; nii++) for (int Sii = 0; Sii < S; Sii++) ff[nii] >> chan_state(nii,Sii); if (!(i%1000)) vc.ones(); // sliding window of the violation counting for (int j = 0; j < N; j++) { bool x = true; while (x) { // if there is a packet in the jth user queue if ( current_time >= user[j].elem_len_arriv(user[j].HOL) && user[j].HOL < user[j].len) { // if this packet hasn't expired yet if (current_time - user[j].elem_len_arriv(user[j].HOL) <= D) { scheduled_users(Nt++) = j; // increase the number of active users if (current_time - user[j].elem_len_arriv(user[j].HOL) == D) w(j) = 1000; // As infinity else
w(j) = 1.0 / ( D - (current_time - user[j].elem_len_arriv(user[j].HOL))); w_mean = w_mean + w(j); m(j) = 0; for (int ss = 0; ss < S; ss++) m(j) = m(j) + (pow2(chan_state(j,ss)) * 9.6 * 1024 / S ); m_mean = m_mean + m(j); x = false; } else // if this packet has expired increase the no. of violations and then
check if there is a new packet { user[j].HOL ++; user[j].violation_count ++; if (user[j].violation_count >=1) vc(j)++; // = ceil_i((0.2 * user[j].violation_count) + (0.8 * vc(j))); } } else // No new packets in the jth user queue so go to the next user {
117
x = false; } } } // Subcarrer Allocation Algorithm if (Nt > 0) { w_mean = w_mean / Nt; m_mean = m_mean / Nt; scheduled_users.set_size(Nt,true); for (int y = 0; y < Nt; y++) z(scheduled_users(y)) = ceil_i(m(scheduled_users(y)) / m_mean); while (sum(z) != S) { if (sum(z) < S) { St = S - sum(z); if (!w_mean) for (int f = 0; f < Nt; f++) z(scheduled_users(f)) = z(scheduled_users(f)) + ceil_i( (double) St / Nt ); else for (int h = 0; h < Nt; h++) z(scheduled_users(h)) = z(scheduled_users(h)) + ceil_i(St * w(scheduled_users(h)) / (w_mean*Nt)); } else { w_sorting = sort_index(w); int r = 0; do { if (w(w_sorting(r)) >= 0) z(w_sorting(r))--; r++; if (r == N) r = 0; } while (S < sum(z)); } } } // Subcarrier Assignment Algorithm p.set_size(Nt,false); q.set_size(Nt,false); for (int t = 0; t < Nt; t++) p(t) = vc(scheduled_users(t)); for (int qq = 0; qq < Nt; qq++) { q(qq) = scheduled_users(max_index(p)); p(max_index(p)) = -1; } for (int e = 0; e < Nt; e++) { total_rate = 0; for (int sss = 0; sss < S; sss++)
118
subchan(sss) = 9.6 * 1024 * pow2(chan_state(q(e),sss)); int z_count = 0; while (z_count < z(q(e))) { if (s(max_index(subchan))) { if (max(subchan) >= 0) { s(max_index(subchan)) = 0; z_count++; total_rate = total_rate + max(subchan); subchan(max_index(subchan)) = -1; } } else subchan(max_index(subchan)) = -1; } do { if (user[q(e)].HOL_pkt_len <= 0) user[q(e)].HOL_pkt_len = pktsize + user[q(e)].HOL_pkt_len; user[q(e)].HOL_pkt_len = user[q(e)].HOL_pkt_len - ceil_i(total_rate*Ts*0.001); if(user[q(e)].HOL_pkt_len <= 0) { if(user[q(e)].elem_len_arriv(user[q(e)].HOL + 1) <= current_time
&& user[q(e)].HOL < user[q(e)].len) { user[q(e)].elem_HOL_wait(user[q(e)].HOL) = current_time –
user[q(e)].elem_len_arriv(user[q(e)].HOL); user[q(e)].HOL++; throughput(q(e))++; } else { user[q(e)].elem_HOL_wait(user[q(e)].HOL) = current_time –
user[q(e)].elem_len_arriv(user[q(e)].HOL); user[q(e)].HOL++; throughput(q(e))++; user[q(e)].HOL_pkt_len = pktsize; } } }while(user[q(e)].HOL_pkt_len <= 0); } } for (int r = 0; r < N; r++) ff[r].close(); cout << "The total throughput = " << sum(throughput)*pktsize/180.0 << endl; cout << "The average throughput = " << sum(throughput)*pktsize/(N*180.0) << endl; cout << "The maximum throughput = " << max(throughput)*pktsize/180.0 << " of user " << max_index(throughput)<< endl; cout << "The minimum throughput = " << min(throughput)*pktsize/180.0 << " of user " << min_index(throughput)<< endl; cout << "The best user throughput = " << throughput(0)*pktsize/180.0 << endl; cout << "The worst user throughput = " << throughput(N-1)*pktsize/180.0 << endl; int zz;
119
for (int i = 0; i < N; i++) { user[i].elem_HOL_wait.set_size(user[i].HOL, true); zz = 0; for (int l=0 ; l < user[i].elem_HOL_wait.length() ; l++) if (user[i].elem_HOL_wait(l) != -10) { user[i].elem_HOL_wait(zz) = user[i].elem_HOL_wait(l); zz++; } user[i].elem_HOL_wait.set_size(zz, true); } it_file u("dyn4620.it"); u << Name("y1") << user[0].elem_HOL_wait; u << Name("yN") << user[N-1].elem_HOL_wait; vec o(N), f(N); for(int u = 0; u < N; u++) { o(u) = user[u].violation_count; f(u) = (double) user[u].violation_count / (double) user[u].len; cout << user[u].violation_count << " " ; } cout << endl; for(int u = 0; u < N; u++) cout << user[u].elem_HOL_wait.length() << " " ; cout << endl; for(int u = 0; u < N; u++) cout << f(u) << " " ; cout << endl; cout << "The minimum number of violations is : " << min(o) << " for the user number : " << min_index (o) << endl; cout << "The maximum number of violations is : " << max(o) << " for the user number : " << max_index (o) << endl; cout << "The minimum drop ratio is : " << min(f) << " for the user number : " << min_index (f) << endl; cout << "The maximum drop ratio is : " << max(f) << " for the user number : " << max_index (f) << endl; my_sort(user[0].elem_HOL_wait); my_sort(user[N-1].elem_HOL_wait); return 0; } void my_sort(vec array) { int i, j; double temp; // holding variable int arrayLength = array.length( ); for (i=0; i< (arrayLength -1); i++) // to represent element to be compared { for(j = (i+1); j < arrayLength; j++) // to represent the rest of the elements { if (array(i) < array(j))
120
{ temp= array(i); array(i) = array(j); array(j) = temp; } } } int x = 0; while(((double)(x+1)/(double)arrayLength) <= 0.05) x++; while (array(x-1) == array(x)) x--; cout << endl; cout << (double)(x+1)/ (double)arrayLength << " percent of the waiting times are above : "; cout << array(x) << endl; return; } int sum(const ivec &V) { int X = 0; for (int i = 0; i < V.size(); i++) X = X + V(i); return X; }