Performance Analysis of RLC/MAC and LLC Layers in A GPRS Protocol Stack
Performance Analysis of RLC/MAC and LLC Layers in A GPRS Protocol Stack
5, SEPTEMBER 2004
1531
I. INTRODUCTION
HE first- and second-generation (1G and 2G) cellular systems, including advanced mobile phone service (AMPS),
global system for mobile communications (GSM), IS-136, and
IS-95, are circuit-switched (CS) systems designed primarily
for voice communications. In addition to voice services, CS
data communications at low rates (maximum 14.4 kb/s) are
supported by 1G and 2G systems [e.g., cellular digital packet
data (CDPD) on AMPS and digital fax and asynchronous
data transfer on GSM, IS-95]. With the increasing demand for
wireless mobile Internet access at high speeds, the evolution
of 2G systems to next-generation systems has been focused on
supporting packet-switched operation over the air in order
to make more efficient use of radio resources. For example,
general packet radio services (GPRS) and enhanced data rates
Manuscript received May 14, 2003; revised October 6, 2003, and April
20, 2004. This work was supported in part by the Department of Science and
Technology, Swarnajayanti Fellowship, New Delhi, Government of India,
under Project Ref 6/3/2002-S.F. This work was presented in part at the National
Conference on Communications (NCC 2001), Indian Institute of Technology,
Kanpur, India, January 2001.
The authors are with the Department of Electrical Communication Engineering, Indian Institute of Science, Bangalore 560 012, India (e-mail:
[email protected]; [email protected]).
Digital Object Identifier 10.1109/TVT.2004.832396
1532
Fig. 1.
Network-layer PDU segmentation into LLC frames, RLC blocks, and MAC bursts.
into variable-size LLC frames (see Fig. 1). The functions of the
LLC layer includes link-level flow control and ciphering. The
LLC layer can operate either in an acknowledged mode or in an
unacknowledged mode. In the unacknowledged mode of operation, the LLC layer does not attempt the recovery of erroneous
LLC frames. LLC frames, erroneously received or otherwise,
are passed on to the higher layers. In the acknowledged mode,
the LLC layer provides an ARQ mechanism to retransmit erroneous LLC frames. A frame-check sequence (FCS) is provided
in each LLC frame to detect LLC frame errors. A retransmission count variable N200 is defined [15]. The LLC is reset and
error recovery is passed on to higher layers (e.g., TCP) if LLC
frames errors could not be recovered within N200 retransmission attempts.
RLC Layer: The RLC layer is provided below the LLC layer
and above the MAC layer [16]. The RLC peers are at the MS and
the base station system (BSS). On the transmit side, the RLC
layer segments each LLC frame into several RLC data blocks
(see Fig. 1). Each RLC data block occupies four time slots, irrespective of the type of channel coding used. Coding schemes
CS-1, CS-2, CS-3, and CS-4 are defined with rate-1/2, rate-2/3,
rate-3/4, and rate-1 (i.e., no coding), respectively [16]. In the
case of coding scheme CS-1, each RLC block consists of 181 information bits, 40 block-check-sequence (BCS) bits, and seven
tail/control bits. With single-slot operation [i.e., only one slot
per GSM time-division multiple-access (TDMA) frame is allotted to a user], the information rate of coding scheme CS-1 is
9.05 kb/s (i.e., 181 b in four TDMA frames, where each TDMA
frame occupies 4.615 ms). Similarly, the maximum information rates possible using other coding schemes are 13.4 kb/s for
CS-2, 15.6 kb/s for CS-3, and 21.4 kb/s for CS-4 (see Fig. 2).
With multislot operation (i.e., allocation of up to eight slots in a
TDMA frame to a user), these maximum possible information
rates are increased eight-fold.
Like the LLC, the RLC too can operate either in an acknowledged or unacknowledged mode. In the acknowledged mode,
the RLC provides a selective repeat ARQ mechanism to recover erroneous RLC data blocks. A BCS is provided in each
1533
When the MAC at the mobile side receives RLC data blocks
to be transferred to the BS, it sends a request packet on the immediately following PRACH slot. The request packet indicates
, the number of PDTCH slots required. If the BS receives the
request packet without collision or channel errors and if PDTCH
slots are available to honor the request, the BS informs the reservation information to the mobile on the downlink packet-access-grant channel (PAGCH) channel. The reservation information include the PDTCH frequency-time slots that can be used
by the mobile for data transfer. The mobile then sends data in
those reserved slots. On the other hand, if the request packet
is lost (due to collision or channel errors) or if PDTCH slots are
not available, then the mobile will not get the reservation. The
mobile will then reschedule its request packet-retransmission attempt to a later time (typically, after a random backoff time).
The MAC control parameters include MAX_RETRANS,
PERSISTENCE_LEVEL, as defined in [16]. The MAC layer
can send channel requests on the PRACH slots up to a maxretransmission attempts in
imum of MAX RETRANS
the event of loss due to collision or channel errors. The delay
between retransmission attempts is defined by the PERSISTENCE_LEVEL.
Thus, in summary, in terms of error recovery at different
layers: 1) the MAC layer attempts to resolve collision of request packets; 2) RLC layer attempts to recover RLC data block
errors through a selective repeat ARQ mechanism; and 3) LLC
attempts recovery of erroneous LLC frames through another
ARQ mechanism. Link errors unresolved at the LLC layer are
passed on to higher layers (e.g., transport layer) to resolve.
III. ANALYSIS OF GPRS MAC PROTOCOL
In this section, we present a Markov-chain-based analysis to
evaluate the throughput and delay performance of the GPRS
1534
Fig. 4.
1535
only after the completion of the transfer of the previously accepted NW layer PDU.
2) Length of the NW layer PDU (including LLC/RLC
headers and checksums), measured in number of slots, is
.
geometrically distributed with parameter ,
3) Loss of request packets on PRACH is only due to collision.
4) Retransmission attempts of request packets following a
collision on PRACH (or nonavailability of PDTCH) are delayed by geometrically distributed random delays with pa. This parameter essentially models
rameter ,
the backoff delay (in the event of request packet loss), which
is characterized by the standards-defined parameter PERSISTENCE_LEVEL.
5) Propagation and processing delays are assumed to be negligible. This assumption can be valid in our considered system
of single-slot operation in which the response from the BS can
come within one TDMA frame time itself.
As per the GPRS MAC protocol and the system model described above, the mobile can be in any one of the following
states in a slot, namely, the idle, backlogged, data_Tx_success,
or data_Tx_failure states, as shown in Fig. 4. In the idle state,
a mobile remains idle with probability
and generates
a PDU with probability . If different mobiles send their request packets on the same PRACH slot, then one or more request packets can be received correctly, depending on the capture probability. The mobiles who lost their request packets go to
the backlogged state. If a mobiles request packet is successfully
received, but there are no available PDTCHs to serve the request, then also the mobile goes to the backlogged state. On the
other hand, if there are available PDTCHs to serve a successfully
received request, then the mobile goes to the data_Tx states,
where it sends data on the assigned PDTCH slots. The data_Tx
states include the data_Tx_success and data_Tx_failure states,
corresponding to the transmission on a PDTCH slot being, respectively, a success or failure.
A. Throughput Analysis
Let
represent the number of mobiles
be the
in the data_Tx_failure state,
number of mobiles in the data_Tx_success state, and
be the number of mobiles in the backlogged state,
at the beginning of slot . The three-dimensional (3-D) process
defines the state of
the system at time . Now, let us analyze the transition of the
system from
in slot to
in slot
,
,
,
,
,
,
. Refer to Fig. 5, which illustrates the
state transitions from slot to slot
.
out of mobiles
During slot , mobiles
in the data_Tx_failure state have data to transmit and the remobiles end the data transmission and go to
maining
,
the idle state. Out of those mobiles, mobiles,
mogo to the data_Tx_success state and the remaining
biles stay in the data_Tx_failure state.
Fig. 5.
+ 1.
Also,
mobiles
out of
mobiles in the
data_Tx_success state have data to transmit and the remaining
mobiles end data transmission and go to the idle state.
Out of those
mobiles,
mobiles
go to the
mobiles stay
data_Tx_failure state and the remaining
in the data_Tx_success state.
mobiles in the backlogged state,
moOut of
biles attempt request packet transmission and the remaining
mobiles stay in the backlogged state. Also,
idle mobiles send request packets giving a total of requests,
succeeds. The remaining
out of which ,
mobiles go to the backlogged state. Out of
succeeding
mobiles go to the data_Tx_success state and the
mobiles,
go to the data_Tx_failure state.
remaining
), the
So, at the end of slot (or at the beginning of slot
total number of mobiles in the data_Tx_failure state is
, in the data_Tx_success state it is
,
. Assuming that slot
and in the backlogged state is
errors can occur independently from slot to slot and denoting
to be the probability of slot error,1 transition probability
1It is noted that the slot-error rate P depends on the channel signal-to-noise
ratio (SNR) and the modulation and coding used. The modulation and coding
schemes can change dynamically in a practical GPRS system depending on the
channel conditions. The mapping of the channel SNR to the slot-error rate is
beyond the scope of this paper. References [10] and [13] give such mapping
between C/I to block error rate for various coding schemes.
1536
cap
(2)
(3)
where
Thus
(4)
The Markov chain
has a finite number
of states and is positive recurrent [20]. Hence, it has a stationary
steady-state distribution and is found by solving
(5)
new arrivals
request packet transmissions from
out of continue to tx data
out of continue to tx data
out of requests succeed and of
backlogged mobiles
out of go to success
out of go to failure
go to success
(1)
where
,
,
is the steady-state probability vector. The
average system throughput is obtained as
1537
(11)
(6)
The average per-channel throughput
The distribution of
by
is then given by
(7)
B. Delay Analysis
Next, we derive the mean PDU transfer delay performance.
is defined as the average
The mean PDU transfer delay
number of slots elapsed from the slot where a PDU arrived to
the slot where the PDU transmission is complete. The number
of users in the nonidle state (i.e., data_Tx_failure, data_Tx_success, and backlogged states) contribute to the mean delay. There
nonidle users in the system and averaging
are
it over steady-state distribution gives us
(12)
[ s being independent and identiand the distribution of
cally distributed (i.i.d.), since we consider i.i.d. slot errors] is
given by
(13)
is the slot-error rate. The distribution of in (11) can
where
be evaluated using Transform techniques, as follows:
(8)
idle users and each will generate requests
There are
with probability in each slot. The average arrival rate to the
system is given by
(9)
From Littles theorem, the average time an user spends in the
system is given by the ratio between the number of users in the
system to the average arrival rate. Hence
(10)
Note that the one in (10) is added to ensure that there is one slot
delay for the mobiles to enter into the nonidle state.
(14)
C. RLC LayerAcknowledged Mode
Note that the analysis in Sections III-A and B corresponds to
the RLC/MAC protocol operation with RLC in the unacknowledged mode (i.e., there is no ARQ at the RLC). In the acknowledged mode, however, RLC retransmits erroneous data blocks
using a selective repeat ARQ mechanism. Each RLC data block
consists of four slots. In our RLC layer analysis here, we consider a SLR mechanism by which a slot in error is repeatedly
retransmitted until it succeeds. This implies that the number of
retransmission attempts at the RLC layer is infinity. We derive
the throughput-delay performance of this SLR scheme as follows.
Let the random variable represent the length of PDU in
number of slots and the random variable represent the number
of transmission attempts of the th slot until success. Thus, ,
Therefore
(15)
Now, in order to obtain the average throughput and mean delay
for the RLC (acknowledged mode) with SLR, we need to simply
in (1) and (3).
change the parameter to
Note that the above analysis is for infinite number of retransmission attempts at the RLC with SLR. The effect of finite number of retransmission attempts at the RLC with SLR is
evaluated through simulations. Likewise, the performance using
BLR at RLC is also evaluated through simulations.
1538
Fig. 6.
RLC/MAC average per channel throughput versus new request arrival probability . N
TABLE I
EFFECTIVE PER-CHANNEL THROUGHPUT (IN KILOBITS PER SECOND) FOR BLR
,M
,L
,
VERSUS SLR FOR VARIOUS CODING SCHEMES. N
g
g
: ,
, AND P
. (SEE FIG. 6)
= =01 =1
= 10
= 10%
= 10 = 1
the effective data rate becomes 3.9 kb/s (i.e., 0.45 8.7 kb/s).
Note that the maximum information rate of 8.7 kb/s in the
above is obtained as follows: Each slot carries 114 (rate 1/2)
coded bits, so that 40 information bits, ten SCS bits, and seven
control bits constitute one slot before coding. Forty information
bits sent every 4.615 ms results in an effective information rate
of 8.7 kb/s. The effective data rates for other coding schemes
CS-2, CS-3, and CS-4 can be obtained likewise. It is noted that
when the slot-error rate is zero (or very low values of ) BLR
performs slightly better than SLR (i.e., maximum information
rate of 9.05 versus 8.7 kb/s), which is due to the increased
overheads due to the tail/control bits in SLR. However, as we
will see subsequently, SLR performs much better than BLR
when channel conditions are poor (moderate to high values of
).
From Fig. 6 we observe that the throughput results obtained
from (7) closely match the results obtained through simulation
(in fact, since there are no approximations involved in the analysis, this close match is expected). It is observed that for low
values of new request arrival probability the system spends
most time in the idle state, resulting in very low throughputs.
, the average time duration between arFor the case of
and during this time interval the average number of
rivals is
Fig. 7.
1539
Mean PDU transfer delay (in number of slots) at RLC/MAC versus new request arrival probability . N = 10, M = 10, L = 1, g = 0:1, and g = 0:1.
For
,
,
,
, and
,
is
0.09, which is very close to the value shown in Fig. 6. As increases, the fraction of time the system spends in the idle state
decreases, which results in increased throughput. When there
), all the slots carrying data
are no slot errors (i.e.,
traffic are successful, which represents the best possible perforthe per-channel throughput
mance. For example, for
achieved is 0.09 (i.e., an effective data rate of 666 b/s using
coding scheme CS-1) and for values closer to unity the perchannel throughput increases to 0.54 (4 kb/s using CS-1).
It is noted that the No Retx plot in Fig. 6 corresponds to
GPRS MAC with RLC in the unacknowledged mode of oper), when there
ation. For high slot-error rates (say,
are no RLC retransmissions, the fraction of successful slots decreases and, hence, the throughput decreases. On the other hand,
for the same slot-error rate (of 10%), SLR at the RLC improves
the throughput performance. This is because the fraction of time
the channel is left idle is reduced due to the retransmission attempts. As long as the slot-error rate is reasonably good, this
would result in increased throughput. Another observation in
Fig. 6 is that the throughput achieved with BLR at the RLC
is much lower than the SLR. This is because, in BLR, even if
one slot in a block is in error, the entire block (of four slots)
will be retransmitted; this considerably reduces the throughput.
, the normalized
For example, for high arrival rates
per-channel throughput , achieved using BLR, is 0.46 (effective data rate of 4.16 kb/s using CS-1), whereas SLR achieves
a per-channel throughput of 0.52 (effective data rate of 4.52
kb/s using CS-1). Likewise, for these SLR and BLR throughput
, the effective data rate (in kilobits per second)
values at
achieved using CS-2, CS-3, and CS-4 are computed and given
in Table I, from which it is observed that gains in throughput are
possible with SLR as compared to BLR.
The mean PDU transfer delay performance of the GPRS
RLC/MAC protocol is evaluated using (10) for the same set
of parameters used in Fig. 6. The mean PDU transfer delay in
number of slots is plotted in Fig. 7 as a function of . In the
case of No Retx (i.e., the RLC unacknowledged mode), it takes
the same number of slots to carry the traffic as in the no-error
case. Hence, the delay is the same for both the no-error case
as well as the error case with no retransmission. The delay for
SLR increases as it takes more slots to successfully deliver the
data slots. In BLR, since the entire block gets retransmitted
even if one slot in a block is in error, the delay performance is
worse than SLR. For example, for values near unity the mean
delay is 19 slots for SLR and 23 slots for BLR.
The effect of the number of channels
on the throughput
characteristics of the RLC/MAC protocol is shown in Fig. 8
,
,
,
, and
. The
for
total number of channels
is varied in the range from two to
ten. From Fig. 8, we observe the following. The per-channel
increases, up to a certain a value of
throughput increases as
, beyond which the throughput decreases. This is because,
at low values of , requests are backlogged due to the nonavailability of PDTCHs, whereas PDTCHs are idle most of the
time at high values of . More interestingly, around the opfor the chosen set of parameters and traffic
timum value of
load, SLR significantly outperforms BLR. For example, when
, BLR gives a per-channel throughput of 0.47, whereas
SLR gives 0.64. The mean PDU transfer delay performance for
the same set of parameters used in Fig. 8 is illustrated in Fig. 9.
1540
Fig. 8. RLC/MAC average per-channel throughput versus number of channels M . N = 10, L = 1, = 1, g = 0:1, and g = 0:1.
Fig. 9.
Mean PDU transfer delay at RLC/MAC versus number of channels M . N = 10, L = 1, = 1, g = 0:1, and g = 0:1.
Fig. 10.
RLC/MAC average per channel throughput versus slot-error rate P . N = 10, M = 10, L = 1, = 1, g = 0:1, and g = 0:1.
Fig. 11.
Mean PDU transfer delay at RLC/MAC versus slot-error rate P . N = 10, M = 10, L = 1, = 1, g = 0:1, and g = 0:1.
evaluation of the LLC, we use a similar system model as described in Section III, except that here we assume that the message length measured in the number of LLC frames is geometrically distributed with parameter . We consider selective acknowledgment of LLC frames [15]. Also, we assume that each
LLC frame consists of five RLC blocks (20 slots). If an erroretransmission
neous LLC frame is not recovered within
attempts, the LLC is reset and reestablished. We assume that
this reset and reestablishment delay is RESET_DELAY in the
number of slots.
A. LLC Performance Results
The average per-channel throughput at the LLC layer as a
is plotted
function of maximum RLC retransmission count
1541
,
,
,
,
,
in Fig. 12, for
, and RESET DELAY
slots. Both BLR as
are considwell as SLR at a slot-error rate of
values considered are 1, 2, and 3. We define
ered. The
the throughput at the LLC layer as the average number of
successful LLC frames. From Fig. 12, we observe that, for a
, increasing
increases throughput. By increasing
fixed
, we try to recover erroneous blocks in the RLC layer itself rather than giving up the entire frame (which contains
the erroneous blocks) to the LLC. We also observe that, as
is increased, throughput increases. When
is small,
LLC resets occur frequently. A reset makes the channel to
stay idle for RESET_DELAY slots. Hence, the per-channel
. By inthroughput at the LLC is less for small values of
1542
Fig. 12.
Fig. 13.
Mean PDU transfer delay at LLC versus the maximum number of RLC retransmissions
creasing
, we try to avoid too many resets, which results
in a better throughput.
The delay performance at the LLC layer for the same system
parameter values in Fig. 12 is plotted in Fig. 13. When both
and
are small, the LLC resets will occur frequently,
,
which will increase the PDU transfer delay. Thus, for small
. When
the delay performance improves by increasing
is large enough (e.g.,
), the delay performance for
2 or 3 is approximately the same. This is because most of
the erroneous RLC blocks are recovered at the RLC layer itself
and fewer errors are being passed to the LLC to recover. From
Figs. 12 and 13, it can be seen that improved throughput and
Fig. 14.
LLC average per-channel throughput versus slot-error rate P . N = 10, M = 10, L = 1, = 0:1, g = 0:1, and g = 0:2.
Fig. 15.
Mean PDU transfer delay at LLC versus slot-error rate P . N = 10, M = 10, L = 1, = 0:1, g = 0:1, and g = 0:2.
(16)
where
represents the number of information bits in each
RLC block including the LLC header and checksum. FL represents the LLC frame length in terms of the number of RLC
blocks, BL represents the RLC block length in terms of number
of slots, and OH represents the number of overhead bits per LLC
1543
frame. Note that the 4.615 in the denominator of the above expression accounts for the one slot duration, which is equivalent
to one TDMA frame length of 4.615 ms. For the coding scheme
b for BLR and
b for SLR. In our
CS-1,
simulations, we set FL
and BL
for BLR and FL
and BL
for SLR. The overhead bits OH
corresponds to
in Fig. 14
LLC header and checksum bits. Note that
corresponds to full recovery in the RLC layer. This means that
the per-channel throughput is the same at both RLC and LLC
layers, but the effective data rates in kb/s are different. For SLR
is 0.77,
(see Fig. 14), the per-channel throughput at
which corresponds to an effective data rate of 6.19 kb/s at the
1544
= 24 TCP
(17)
with the corresponding probability density function (pdf)
. We model the ON period to consist of a
geometrically distributed number of TCP packets. We assume
that one TCP packet consists of five LLC frames and that each
LLC frame contains 536 B. An LLC frame is segmented into 25
RLC blocks, each four slots in size. An erroneous RLC block
times by the ARQ mechanism
can be retransmitted up to
at the RLC layer. If the RLC layer cannot recover the erroneous
blocks, they are passed on to the LLC layer. The ARQ mechanism at the LLC layer then tries to recover erroneous LLC
times. TCP takes care of
frames by retransmission up to
the unrecovered erroneous LLC frames. We simulated 20 TCP
), each sending TCP
sessions from mobile users (i.e.,
packets to some hosts in an external packet-data network and
evaluated the performance. The ON times of the sessions have
a mean of five TCP packets. The Tahoe version of TCP with a
is used in the simulations
fast retransmit threshold of
[7].
as a
Fig. 16 shows the evolution of TCP window size
,
,
function of time for a slot-error rate of
,
,
, maximum window size of
TCP packets, and a round trip timeout (rto) value of 5000
Fig. 17.
slots.
and
R . M = 2, N = 20, L = 1, R
(18)
where
represents the number of information bits in each
RLC block including the IP/LLC headers and checksum,
represents the TCP packet length in terms of number of LLC
frames, FL represents the LLC frame length in terms of the
1545
= 3,
= 3, and
1546
2+
2+
2+
2+
2+