tcp performance over gprs - michael meyer · pdf filetcp performance over gprs michael meyer...

Download TCP Performance over GPRS - Michael Meyer · PDF fileTCP Performance over GPRS Michael Meyer Ericsson Eurolab Deutschland GmbH ... variety of channel conditions 4 different coding

If you can't read please download the document

Upload: doxuyen

Post on 06-Feb-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • TCP Performance over GPRSMichael Meyer

    Ericsson Eurolab Deutschland GmbHEricsson Allee 1

    52134 Herzogenrath, Germany

    Abstract - GPRS is the new packet-oriented data service for GSM.Soon it will be possible to take advantage of the features providedby GPRS for Internet Access like fast connection set-up, volume-based charging and staying on-line for long periods. For non-real-time Internet applications TCP is the applied transport protocol.Often it was suspected that GPRS introduces severe performancedegradations for TCP-traffic since both apply their own ARQmechanism. It is well known that layered protocol interactions canhave very negative influences. This paper examines with simu-lations the performance of TCP over GPRS. The behaviour of theprotocols will be analysed under various conditions. It will beshown that both TCP and GPRS are well harmonised.

    I. INTRODUCTION

    Nowadays, the current growth rates of data traffic in fixedcommunication environments are extrapolated for wirelessenvironments. It is expected that there will be a significantdemand for wireless data services in the near future. It seemsthat the success of wireless data is at the moment just prohibitedbecause certain requirements for data rates and cost are notfulfilled. But it is not visionary to predict that with enhanceddata services e.g. for GSM with HSCSD (High Speed CircuitSwitched Data), GPRS (General Packet Radio Service), EDGE(Enhanced Data Rates for GSM Evolution) and ultimatelyUMTS (Universal Mobile Telecommunication System) this willchange.

    GSM already supports data users with circuit switchedservices covering data rates from 1.2 to 64 kbit/s (with HSCSD).Soon GPRS takes off to offer improved services for data usersin mobile networks. GPRS is the packet-oriented extension ofGSM. It will allow data transmission up to rates of more than100 kbit/s. Since GPRS operates packet-oriented, many userscan share the scarce radio resource. In this way a very flexibleaccess is possible while idle users can still be online always andanywhere. A detailed description of GPRS is given in [1].

    Under question is still how Internet applications will behaveover GPRS. This paper tries to give some insight into this topic.It focuses on bulk data transmitted using TCP/IP. TCP(Transmission Control Protocol) is the Internet standardprotocol for ensuring end-to-end reliability betweencommunicating peer nodes.

    In this scenario two worlds of protocols come together. Onone hand, the Internet protocols TCP and IP, which are notespecially designed for wireless environments. On the otherhand, highly sophisticated radio protocols, which optimise datatransmission over the problematic radio interface. This linksuffers from time-varying characteristics, shadowing,

    interference and high bit error rates. Traditionally, networkingresearchers focus on wireline environments and have littleexperience with radio transmission, while radio engineersconcentrated on their specific problems. With GPRS arose forthe first time the requirement that this cellular network serviceshould offer optimal support for Internet applications and itwas therefore designed in this direction.

    Has this design goal been achieved? Since there is currentlyno system available, simulations have been performed toexamine this question. The simulator [2] comprises an eventdriven model of GPRS- and Internet protocols. It allowsstudying the performance under various conditions, which arespecifiable by simulation parameters.

    In brief, TCP offers mechanisms for congestion avoidanceensuring network stability for the Internet. More important forthis study is the ARQ (Automatic Repeat Request)functionality. It provides sliding window based ARQ includingan adaptive time-out mechanism for ensuring reliable datatransmission. The ARQ is additionally supported by a functioncalled Fast Retransmit, which allows the retransmission ofsingle lost packets without waiting for time-outs. For a detaileddescription of TCP see [3].

    Numerous papers describe methods to improve the TCPperformance over wireless links [4,5]. This paper howeverfocuses on an analysis of standard TCP to investigate whichspecific problems occur for GPRS. It will be shown that mostof the findings made in the above mentioned studies are notapplicable or negligible for GPRS. Therefore most of theseproposed modifications are not necessary.

    Usually it is assumed that packet losses on the radio linkcause severe problems for TCP, since TCP reacts on packetlosses with slowing down the transmission leading finally toperformance degradation. But differently from studies forWLAN systems like [5] GPRS offers a reliable link with itsown ARQ mechanism included in the RLC protocol (RadioLink Control) [6]. This is adapted to the GSM radio specificenvironment and based on radio blocks much smaller thanusual maximum segment sizes for TCP for an optimal trade offbetween FEC (Forward Error Correction) and ARQ.

    In this paper it will be shown which performance can beexpected under a number of different scenarios whiledownloading bulk data, i.e. large files.

  • II. GPRS

    GPRS is the packet-oriented extension of GSM. Thisextension relies on the re-use of the radio infrastructure of GSMwhile introducing new network nodes in the core networkproviding the required packet switching functionality. GPRS ismainly intended to provide better service for Internetapplications compared to existing circuit switched services ofGSM. Certain timeslots of the TDMA frame can be statically ordynamically allocated to GPRS. These are denoted as PacketData Channels (PDCH). GPRS provides mechanisms forefficient sharing of these radio resources by multiplexingseveral users over one PDCH as well as the possibility that oneuser transmits over several PDCH in parallel if the terminalequipment supports this. For a more detailed description of theconcept of GPRS see [1].

    GPRS provides besides other modes of operation a reliableRLC mode, which is favorable for non-real-time applications.Based on FEC ensuring reasonable block error rates, the RLCARQ mechanism recovers received erroneous packets.

    One RLC block, which forms the retransmission unit forGPRS, is transmitted in four consecutive bursts according to theTDMA concept of GSM. In order to minimize delays,interleaving is also performed within these 4 bursts (comparedto 22 bursts for circuit-switched data). To cope with a widevariety of channel conditions 4 different coding schemes werestandardized. They are summarized in Table 1. The values arerelated to a single timeslot. If a user is able to transmit overseveral PDCH in parallel the data rates have to be multiplied bythe given number of timeslots.

    Table 1: GPRS Coding Schemes

    Coding Scheme Code Rate Payload Bitsper RLC Block

    Data Rate

    CS-1 1/2 160 8.0 kbit/sCS-2 ~2/3 240 12.0 kbit/sCS-3 ~3/4 288 14.4 kbit/sCS-4 1 400 20.0 kbit/s

    Fig. 1: GPRS Protocol Stack

    The transfer of RLC Data Blocks is controlled by a selectiveARQ mechanism coupled with the modulo-128 numbering ofthe RLC Data Blocks within one Temporary Block Flow. Thesending side (the MS or the network) transmits blocks within awindow of 64 blocks and the receiving side periodically sendsACK/NACK messages. Every such message acknowledges allcorrectly received RLC Data Blocks up to an indicated blocksequence number (BSN), thus moving the beginning of thesending window on the sending side. Additionally, a bitmapthat starts at the same RLC Data Block is used to selectivelyrequest erroneously received RLC Data Blocks forretransmission. The sending side then retransmits theerroneous RLC Data Blocks, eventually resulting in furthersliding the sending window.

    III. TCP

    TCP is the most widely used transport protocol for non-real-time Internet applications like WWW, File Transfer and Email.It provides a connection-oriented end-to-end service ensuringthe reliable transfer of data. Besides the data reliability and in-order delivery TCP is also responsible for flow control in theInternet to avoid congestion. This is achieved by complexmechanisms trying to probe for a data rate as high as possiblebut backing off as soon as congestion occurs. TCP segmentlosses are interpreted as congestion signals as they aretraditionally caused by buffer overflows in routers. If such anevent is detected, TCP adjusts its parameters like window sizeand retransmission timeout values, thus slowing down.

    In wireless environments, poor radio characteristics can leadto packet losses or at least to very long delays leading to TCPtimeouts. In these cases the reason for packet losses is notcongestion and the basic working assumption for TCP iswrong. Thus its countermeasures are also not optimal.Timeouts should only occur if segments are definitely lost andnot only too long delayed. For an in-depth discussion of thisproblem see also [7].

    IV. SIMULATION RESULTS

    In order to be able to study the influences of the involvedprotocols an event-driven simulator was developed. The mainconcept and structure of the simulator was already described inother publications, e.g. [2]. In order to spend more effort on theobtained results a thorough description is neglected here.

    This paper aims at providing insight into the behavior ofTCP over GPRS. The study focuses on a single user.Accordingly, multiplexing or sharing resources with otherusers is not the topic of this paper. Further research will bedevoted to these issues.

    The simulation results, which will be presented in thissection, are based on the following parameter settings of thesimulator.

    GTP

    PHY

    SNDCP

    LLC

    RLC

    MAC

    LLC Relay

    L1 L1

    LLC IP

    PHY

    BSSGP

    FR

    L1 L1 L1L1

    L2 L2

    L2

    SNDCP

    IP

    TCPUDP

    Appl.

    IP

    TCPUDP

    Appl.

    IPIP