In Section 3, an overview of the test environment is
provided. The parameter settings used in the measure-
ments are described in Section 4. In Section 5, the re-
sults are presented. The results and their implications
are discussed in Section 6. Finally, in Section 7, some
conclusions are drawn and plans for future work are
presented.
2 BACKGROUND
In this section some background on GPRS and TCP
is provided. The main purpose is to provide the infor-
mation required for the rest of the paper, not to give a
complete picture of either GPRS or TCP.
2.1 Overview of GPRS
GPRS provides more efficient sharing of radio re-
sources and higher data rates than circuit-switched
GSM. The GPRS system requires two new nodes:
the Gateway GPRS Support Node (GGSN) and the
Serving GPRS Support Node (SGSN). A GSM time
slot allocated for GPRS is called a packet data chan-
nel (PDCH). The radio resources are more efficiently
used than in GSM, since the PDCHs in a cell are
shared between the GPRS users, and not, as in GSM,
reserved for one user at a time. Access to the PD-
CHs is controlled by the Radio Link Control/Medium
Access Control (RLC/MAC) protocol (GSM04.60,
2000) which provides a link between the mobile sta-
tion (MS) and the Base Station Subsystem (BSS). The
MAC protocol is similar to slotted ALOHA. In addi-
tion, the Logical Link Control (LLC) protocol pro-
vides a logical link between the MS and its associ-
ated SGSN. RLC and LLC support both acknowl-
edged and unacknowledged data transmission. The
Base Station Subsystem GPRS Protocol (BSSGP) op-
erates between the SGSN and the BSS. BSSGP is fur-
ther described in Section 3.
2.2 Overview of TCP
The TCP protocol provides reliable data transport. Er-
ror recovery is triggered by a timeout event or by three
duplicate acknowledgments. The timeout value is dy-
namically adjusted based on estimates of the round
trip time (RTT). In order to prevent congestion in the
network, the amount of data the TCP sender can inject
into the network is limited by a congestion window
(cwnd) and several algorithms for congestion control
are employed (Allman et al., 1999).
After a timeout event, the missing data is retrans-
mitted and the slow start algorithm is used. The cwnd
is first set to one segment, and then it is increased
with one segment for each incoming acknowledgment
which results in an exponential increase in the trans-
mission rate. When a slow start threshold (ssthresh)
value is reached, the congestion avoidance algorithm
is used instead. Here, one new segment is added to the
cwnd each RTT. After retransmission due to three du-
plicate acknowledgments fast retransmit and fast re-
covery are used. The cwnd is reduced to half of the
value it had before the data loss. After the TCP sender
receives an acknowledgment covering all the retrans-
mitted data, the congestion avoidance algorithm is
used.
The performance of TCP may be enhanced by the
use of optional features. The selective acknowledg-
ments (SACK) option (Mathis et al., 1996) gives the
TCP sender precise information about the TCP seg-
ments that have arrived at the receiver. The times-
tamps option (Jacobson et al., 1992) provides an addi-
tional means to identify segments and their acknowl-
edgments.
3 TEST ENVIRONMENT
The GPRS testbed used for the measurements is
shown in Figure 1. The testbed consists of a client,
a GPRS network, and a server. The client uses the
GPRS network to access services provided by the
server. The client in this testbed is a laptop connected
with a serial cable to a GPRS terminal at the R ref-
erence point. The GPRS terminal accesses the GPRS
network over the radio interface. In order to provide
controllable and repeatable radio conditions, an em-
ulated radio environment is used at the radio inter-
face. The emulated radio environment interconnects
the client with the BSS which consists of a BSC and at
least one Base Transceiver Station (BTS). The GPRS
terminal communicates with the BTS in the cell on
which it currently camps. The BTS is connected at
the Abis interface with a BSC which provides control
functions and physical links over the Gb interface to
an SGSN. The SGSN is connected to a GGSN over
the Gn interface. The GGSN connects the GPRS net-
work to the server, over the Gi interface.
Measurement data can be gathered at several places
in the testbed. On the client and the server machines,
Ethereal (Ethereal, 2004) captures packets which are
further analyzed with Tcptrace (Ostermann, 2004).
Between the BTS and the BSC, the NetHawk ana-
lyzer (NetHawk, 2004) captures GPRS data and con-
trol information, such as RLC/MAC blocks.
Since the server is placed in a wired network which
is faster than the GPRS network, data from the server
is buffered in the GPRS network before it is transmit-
ted over the radio interface to the client. The max-
imum time that user data may be buffered before it
is transmitted over the radio interface, is determined
THE IMPACT OF PREEMPTIVE PRIORITY IN GPRS ON TCP PERFORMANCE: A MEASUREMENT STUDY
431