# GPRS

General Packet Radio Service (GPRS), also called 2.5G, is a mobile data standard on the 2G cellular communication network's global system for mobile communications (GSM). Networks and mobile devices with GPRS started to roll out around the year 2001; it offered, for the first time on GSM networks, seamless data transmission using packet data for an "always-on" connection (eliminating the need to "dial-up"), so providing improved Internet access for web, email, WAP services, Multimedia Messaging Service (MMS) and others.
Up until the rollout of GPRS, only circuit switched data was used in cellular networks, meaning that one or more radio channels were occupied for the entire duration of a data connection. On the other hand, on GPRS networks, data is broken into small packets and transmitted through available channels. This increased efficiency also gives it theoretical data rates of 56–114 kbit/s, significantly faster than the preceding Circuit Switched Data (CSD) technology. GPRS was succeeded by EDGE ("2.75G") which provided improved performance and speeds on the 2G GSM system.

## Technical overview

The GPRS core network allows 2G, 3G and WCDMA mobile networks to transmit IP packets to external networks such as the Internet. The GPRS system is an integrated part of the GSM network switching subsystem.
GPRS is a best-effort service, implying variable throughput and latency that depend on the number of other users sharing the service concurrently, as opposed to circuit switching, where a certain quality of service (QoS) is guaranteed during the connection. It uses unused time-division multiple access (TDMA) channels in the GSM system for efficiency. Unlike older circuit switching data, GPRS was sold according to the total volume of data transferred instead of time spent online, which is now standard.

### Services offered

GPRS extends the GSM Packet circuit switched data capabilities and makes the following services possible:
* SMS messaging and broadcasting
* "Always on" internet access
* Multimedia messaging service (MMS)
* Push-to-talk over cellular (PoC)
* Instant messaging and presence—wireless village
* Internet applications for smart devices through wireless application protocol (WAP)
* Point-to-point (P2P) service: inter-networking with the Internet (IP)
* Point-to-multipoint (P2M) service: point-to-multipoint multicast and point-to-multipoint group calls
If SMS over GPRS is used, an SMS transmission speed of about 30 SMS messages per minute may be achieved. This is much faster than using the ordinary SMS over GSM, whose SMS transmission speed is about 6 to 10 SMS messages per minute.

### Frequencies

As the GPRS standard is an extension of GSM capabilities, the service operates on the 2G and 3G cellular communication GSM frequencies. GPRS devices can typically use (one or more) of the frequencies within one of the frequency bands the radio supports (850, 900, 1800, 1900 MHz). Depending on the device, location and intended use, regulations may be imposed either restricting or explicitly specifying authorised frequency bands.
GSM-850 and GSM-1900 are used in the United States, Canada, and many other countries in the Americas. GSM-900 and GSM-1800 are used in: Europe, Middle East, Africa and most of Asia. In South Americas these bands are used in Costa Rica (GSM-1800), Brazil (GSM-850, 900 and 1800), Guatemala (GSM-850, GSM-900 and 1900), El Salvador (GSM-850, GSM-900 and 1900). There is a more comprehensive record of international cellular service frequency assignments

### Protocols supported

GPRS supports the following protocols:
* Internet Protocol (IP). In practice, built-in mobile browsers use IPv4 before IPv6 is widespread.
* Point-to-Point Protocol (PPP) is typically not supported by mobile phone operators but if a cellular phone is used as a modem for a connected computer, PPP may be used to tunnel IP to the phone. This allows an IP address to be dynamically assigned (using IPCP rather than DHCP) to the mobile equipment.
* X.25 connections are typically used for applications like wireless payment terminals, although it has been removed from the standard. X.25 can still be supported over PPP, or even over IP, but this requires either a network-based router to perform encapsulation or software built into the end-device/terminal; e.g., user equipment (UE).
When TCP/IP is used, each phone can have one or more IP addresses allocated. GPRS will store and forward the IP packets to the phone even during handover. The TCP restores any packets lost (e.g. due to a radio noise induced pause).

### Hardware

Devices supporting GPRS are grouped into three classes:

#### Class A

    Can be connected to GPRS service and GSM service (voice, SMS) simultaneously. Such devices are now available.

#### Class B

    Can be connected to GPRS service and GSM service (voice, SMS), but using only one at a time. During GSM service (voice call or SMS), GPRS service is suspended and resumed automatically after the GSM service (voice call or SMS) has concluded. Most GPRS mobile devices are Class B.

#### Class C

    Are connected to either GPRS service or GSM service (voice, SMS) and must be switched manually between one service and the other.
Because a Class A device must service GPRS and GSM networks together, it effectively needs two radios. To avoid this hardware requirement, a GPRS mobile device may implement the dual transfer mode (DTM) feature. A DTM-capable mobile can handle both GSM packets and GPRS packets with network coordination to ensure both types are not transmitted at the same time. Such devices are considered pseudo-Class A, sometimes referred to as "simple class A". Some networks have supported DTM since 2007.
USB 3G/GPRS modems have a terminal-like interface over USB with V.42bis, and RFC 1144 data formats. Some models include an external antenna connector. Modem cards for laptop PCs, or external USB modems are available, similar in shape and size to a computer mouse, or a pendrive.

### Addressing

A GPRS connection is established by reference to its access point name (APN). The APN defines the services such as wireless application protocol (WAP) access, short message service (SMS), multimedia messaging service (MMS), and for Internet communication services such as email and World Wide Web access.
In order to set up a GPRS connection for a wireless modem, a user must specify an APN, optionally a user name and password, and very rarely an IP address, provided by the network operator.

### GPRS modems and modules

GSM module or GPRS modules are similar to modems, but there's one difference: the modem is an external piece of equipment, whereas the GSM module or GPRS module can be integrated within an electrical or electronic equipment. It is an embedded piece of hardware. A GSM mobile, on the other hand, is a complete embedded system in itself. It comes with embedded processors dedicated to provide a functional interface between the user and the mobile network.

## Coding schemes and speeds

The upload and download speeds that can be achieved in GPRS depend on a number of factors such as:
* the number of BTS TDMA time slots assigned by the operator
* the channel encoding used.
* the maximum capability of the mobile device expressed as a GPRS multislot class

### Multiple access schemes

The multiple access methods used in GSM with GPRS are based on frequency-division duplex (FDD) and TDMA. During a session, a user is assigned to one pair of up-link and down-link frequency channels. This is combined with time domain statistical multiplexing which makes it possible for several users to share the same frequency channel. The packets have constant length, corresponding to a GSM time slot. The down-link uses first-come first-served packet scheduling, while the up-link uses a scheme very similar to reservation ALOHA (R-ALOHA). This means that slotted ALOHA (S-ALOHA) is used for reservation inquiries during a contention phase, and then the actual data is transferred using dynamic TDMA with first-come first-served.

### Channel encoding

The channel encoding process in GPRS consists of two steps: first, a cyclic code is used to add parity bits, which are also referred to as the Block Check Sequence, followed by coding with a possibly punctured convolutional code. The Coding Schemes CS-1 to CS-4 specify the number of parity bits generated by the cyclic code and the puncturing rate of the convolutional code. In Coding Schemes CS-1 through CS-3, the convolutional code is of rate 1/2, i.e. each input bit is converted into two coded bits. In Coding Schemes CS-2 and CS-3, the output of the convolutional code is punctured to achieve the desired code rate. In Coding Scheme CS-4, no convolutional coding is applied. The following table summarises the options.
| GPRS Coding scheme | Bitrate including RLC/MAC overhead (kbit/s/slot) | Bitrate excluding RLC/MAC overhead (kbit/s/slot) | Modulation | Code rate |
| CS-1 | 9.20 | 8.00 | GMSK | 1/2 |
| CS-2 | 13.55 | 12.00 | GMSK | ≈2/3 |
| CS-3 | 15.75 | 14.40 | GMSK | ≈3/4 |
| CS-4 | 21.55 | 20.00 | GMSK | 1 |
* ↑ This is rate at which the RLC/MAC layer protocol data unit (PDU) (called a radio block) is transmitted. As shown in TS 44.060 section 10.0a.1, a radio block consists of MAC header, RLC header, RLC data unit and spare bits. The RLC data unit represents the payload, the rest is overhead. The radio block is coded by the convolutional code specified for a particular Coding Scheme, which yields the same PHY layer data rate for all Coding Schemes.
* ↑ Cited in various sources, e.g. in TS 45.001 table 1. is the bitrate including the RLC/MAC headers, but excluding the uplink state flag (USF), which is part of the MAC header, yielding a bitrate that is 0.15 kbit/s lower.
* ↑ The net bitrate here is the rate at which the RLC/MAC layer payload (the RLC data unit) is transmitted. As such, this bit rate excludes the header overhead from the RLC/MAC layers.
The least robust, but fastest, coding scheme (CS-4) is available near a base transceiver station (BTS), while the most robust coding scheme (CS-1) is used when the mobile station (MS) is further away from a BTS.
Using the CS-4 it is possible to achieve a user speed of 20.0 kbit/s per time slot. However, using this scheme the cell coverage is 25% of normal. CS-1 can achieve a user speed of only 8.0 kbit/s per time slot, but has 98% of normal coverage. Newer network equipment can adapt the transfer speed automatically depending on the mobile location.
In addition to GPRS, there are two other GSM technologies which deliver data services: circuit-switched data (CSD) and high-speed circuit-switched data (HSCSD). In contrast to the shared nature of GPRS, these instead establish a dedicated circuit (usually billed per minute). Some applications such as video calling may prefer HSCSD, especially when there is a continuous flow of data between the endpoints.
The following table summarises some possible configurations of GPRS and circuit switched data services.
    Technology Download (kbit/s) Upload (kbit/s) TDMA timeslots allocated (DL+UL) CSD 9.6 9.6 1+1 HSCSD 28.8 14.4 2+1 HSCSD 43.2 14.4 3+1 GPRS 85.6 21.4 (Class 8 & 10 and CS-4) 4+1 GPRS 64.2 42.8 (Class 10 and CS-4) 3+2 EGPRS (EDGE) 236.8 59.2 (Class 8, 10 and MCS-9) 4+1 EGPRS (EDGE) 177.6 118.4 (Class 10 and MCS-9) 3+2

### Multislot Class

The multislot class determines the speed of data transfer available in the Uplink and Downlink directions. It is a value between 1 and 45 which the network uses to allocate radio channels in the uplink and downlink direction. Multislot class with values greater than 31 are referred to as high multislot classes.
A multislot allocation is represented as, for example, 5+2. The first number is the number of downlink timeslots and the second is the number of uplink timeslots allocated for use by the mobile station. A commonly used value is class 10 for many GPRS/EGPRS mobiles which uses a maximum of 4 timeslots in downlink direction and 2 timeslots in uplink direction. However simultaneously a maximum number of 5 simultaneous timeslots can be used in both uplink and downlink. The network will automatically configure for either 3+2 or 4+1 operation depending on the nature of data transfer.
Some high end mobiles, usually also supporting UMTS, also support GPRS/EDGE multislot class 32. According to 3GPP TS 45.002 (Release 12), Table B.1, mobile stations of this class support 5 timeslots in downlink and 3 timeslots in uplink with a maximum number of 6 simultaneously used timeslots. If data traffic is concentrated in downlink direction the network will configure the connection for 5+1 operation. When more data is transferred in the uplink the network can at any time change the constellation to 4+2 or 3+3. Under the best reception conditions, i.e. when the best EDGE modulation and coding scheme can be used, 5 timeslots can carry a bandwidth of 5*59.2 kbit/s = 296 kbit/s. In uplink direction, 3 timeslots can carry a bandwidth of 3*59.2 kbit/s = 177.6 kbit/s.

#### Multislot Classes for GPRS/EGPRS

    Multislot Class Downlink TS Uplink TS Active TS 1 1 1 2 2 2 1 3 3 2 2 3 4 3 1 4 5 2 2 4 6 3 2 4 7 3 3 4 8 4 1 5 9 3 2 5 10 4 2 5 11 4 3 5 12 4 4 5 30 5 1 6 31 5 2 6 32 5 3 6 33 5 4 6 34 5 5 6

#### Attributes of a multislot class

Each multislot class identifies the following:
* the maximum number of Timeslots that can be allocated on uplink
* the maximum number of Timeslots that can be allocated on downlink
* the total number of timeslots which can be allocated by the network to the mobile
* the time needed for the MS to perform adjacent cell signal level measurement and get ready to transmit
* the time needed for the MS to get ready to transmit
* the time needed for the MS to perform adjacent cell signal level measurement and get ready to receive
* the time needed for the MS to get ready to receive.
The different multislot class specification is detailed in the Annex B of the 3GPP Technical Specification 45.002 (Multiplexing and multiple access on the radio path)

## Usability

The maximum speed of a GPRS connection offered in 2003 was similar to a modem connection in an analog wire telephone network, about 32–40 kbit/s, depending on the phone used. Latency is very high; round-trip time (RTT) is typically about 600–700 ms and often reaches 1s. GPRS is typically prioritized lower than speech, and thus the quality of connection varies greatly.
Devices with latency/RTT improvements (via, for example, the extended UL TBF mode feature) are generally available. Also, network upgrades of features are available with certain operators. With these enhancements the active round-trip time can be reduced, resulting in significant increase in application-level throughput speeds.

## History

GSM was designed for voice, not data. It did not provide direct access to the Internet and it had a limited capacity of 9600 bauds per second. The limitations of Circuit Switched Data (CSD) also included higher costs. GPRS opened in 2000 as a packet-switched data service embedded in the channel-switched cellular radio network GSM. GPRS extends the reach of the fixed Internet by connecting mobile terminals worldwide.
GPRS was established by European Telecommunications Standards Institute (ETSI) in response to the earlier CDPD and i-mode packet-switched cellular technologies and is integrated into GSM Release 97 and newer releases. It is now maintained by the 3rd Generation Partnership Project (3GPP).
The CELLPAC protocol developed 1991–1993 was the trigger point for starting in 1993 the specification of standard GPRS by ETSI SMG. Especially, the CELLPAC Voice & Data functions introduced in a 1993 ETSI Workshop contribution anticipate what was later known to be the roots of GPRS. This workshop contribution is referenced in 22 GPRS-related US patents. Successor systems to GSM/GPRS like W-CDMA (UMTS) and LTE rely on key GPRS functions for mobile Internet access as introduced by CELLPAC.
According to a study on history of GPRS development, Bernhard Walke and his student Peter Decker are the inventors of GPRS — the first system providing worldwide mobile Internet access.

## Enhanced GPRS

Enhanced Data rates for GSM Evolution (EDGE), also known as 2.75G and under various other names, is a 2G digital mobile phone technology for packet switched data transmission. It is a subset of General Packet Radio Service (GPRS) on the GSM network and improves upon it offering speeds close to 3G technology, hence the name 2.75G. EDGE is standardized by the 3GPP as part of the GSM family and as an upgrade to GPRS.