Subscribe to the::unwired's RSS Feedthe::unwired at Twitterthe::unwired on Facebookthe::unwired on Google Plus
the::unwired Article
SPEED: How fast is GPRS and what's the maximum today you can reach
Posted by Arne Hess - on Tuesday, 24.09.02 - 16:16:00 CET under 09 - Thoughts - Viewed 40040x
Not Tagged

I had a lot of discussions in the past with friends, co-workers and Pocket PC enthusiasts about the new Pocket PC Phone Edition and GPRS. While GPRS wasn't interesting for too many peoples until today because it could be used with a Notebook or WAP only, it becomes more and more interesting now because it's the bearer service used on the o2 xda or the T-Mobile Phone Edition. However, for most of you it seems that GPRS is still a secret in the ways how it works and how fast it could be. So here is more background information for you to understand GPRS better and therefore understand better what a Phone Edition Pocket PC is able to deliver or even not:

GPRS works with 2 components: the Coding Schemes (up to 4) and the Time Slots (up to 8 while 8 is the maximum a GSM/GPRS Base Station supports; doesn't matter if it is voice or data).

Coding Schemes
Both, the handset and the network supports Coding Schemes. While there are 4 different CS available in theory, today only CS1 and 2 are implemented on the network side (CS3 and 4 are pretty expensive to implement because you have to reengineer the front- and backend network) and also today's handsets supports CS1 and 2 only.

CS1 supports 9.05 Kbit/s per time slot while CS2 supports 13.4 Kbit/s per time slot.

 
Coding Scheme CS1 CS2 CS3 CS4
Data rate Kbit/s 9.05 Kb/s 13.4 Kb/s 15.6 Kb/s 21.4 Kb/s
Maximum data speed
with 8 time-slots
72.4 Kb/s 107.2 Kb/s 124.8 Kb/s 171.2 Kb/s

Time Slots
Beside the Coding Schemes you have the time slots. Time slots are the available channels which can be bundled. While you need one time slot for voice only you can bundle this time slots for data. This is also used for HSCSD (High Speed Circuit Switched Data) and for sure for GPRS also. What does it mean: Depending on the network condition and the current traffic in your area/Base Station (BTS) the network can gives you more or less time slots to be used for GPRS. While you can request an amount of time slots with HSCSD; the amount of time slots is assigned dynamically on GPRS.
So under best conditions you could get 8 time slots which would mean no one else, attached to the same Base Station, could make a phone call anymore because you use all the available bandwidth. So the operators implemented 4 time slots for GPRS only which means you can use up to 4 * CS1/CS2. However this depends also on the traffic and on noon it could be that you get 1 * CS1/CS2 only.

In theory, with CS2, you could reach a GPRS speed of 107.20 Kbit/s = 8 * 13.4 Kb/s while using 4 channels in reality you can get 53.6 Kbit/s. With CS1 a maximum GPRS speed of 72.4 Kbit/s is possible in theory and in reality a speed of 36.2 Kbit/s.

Time slots are used dynamically. While the cellular networks are pretty busy on daytime or traffic jams (it's even possible that you can not setup a voice call because of the busy Base Station you are attached to) it's more or less empty in night times. This means that you could get higher GPRS rates in the evening/night. A typical network condition could looks like the following example:

Green is busy due to voice calls, red are the empty/available network resources for GPRS.

Since GPRS is TCP/IP based, the network can accepts more GPRS user than it has available bandwidth because TCP/IP is used anti-cyclical. The attached users will never request data at the same time but with time delays. An example: If 2 users are connected with CS2 to 4 time slots both will have 53.6 Kbit bandwidth available because while one user requests data the other one is idle while he is reading a web page. This process is handled dynamically by the GPRS networks but it shows you also that there's no QoS (Quality of Service) available right now because it could happens that the time slots are reduced to 3 only if other users started voice calls.

Handset Classes
Beside the network implementations you also have the handset implementations. Here we often read something about "Class xyz" device. First of all - most devices (I've never heard anything different) supports CS1 and 2 but not all devices supports up to 4 time slots. And even if it supports up to 4 time slots you have to differentiate between downloads (Rx) and uploads (Tx) and how many simultaneous slots can be used:

The GPRS standard defines 29 handset classes while the first 12 classes are the most important. These classes defines how many time slots the devices supports for sending and receiving data and how many time slots can be used simultaneously:

 
Class Download
(Rx)
Upload
(Tx)

Max.
slots

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 5
8 4 1 5
9 3 2 5
10 4 2 5
11 4 3 5
12 4 4 5

Typical handset classes today are "4" and "10" but what does it mean?
A Class 4 device can use 3 time slots for downloading data and 1 slot only for uploading data. It supports a maximum of 4 slots to be used simultaneously which means all available time slots can be used at the same time
Typical Class 4 devices are the o2 xda, T-Mobile MDA/Phone Edition.

A Class 10 device supports 4 time slots for downloading data and 2 slots for uploading but supports a maximum of 5 slots to be used simultaneously. This means a 4 + 1 or 3 + 2 GPRS connection. This is assigned dynamically by the handset, depending if you are requesting or sending data.
Typical Class 4 devices are the Compaq Wireless Pack or the Option GlobeTrotter PC card.

This differentiation is also important to know if you also plan to upload a huge amount of data. While the xda can send E-Mails or upload data through FTP with a maximum speed of 13.4 Kb/s only a Compaq Wireless Pack can send the data with the double speed of 26.8 Kbit/s. This is even more important if you plan to send E-Mails with attachments like PowerPoint presentations.

Final Conclusion

Your GPRS connection speed depends on a lot of factors. First of all the network condition is important as this defines which Coding Scheme will be used. The current network traffic defines how many time slots will be available to be used and the device class defines how many time slots can be used in general and how many can be used simultaneously.
All this is important to understand why a GPRS connection is sometimes faster and sometimes even slower than a regular GSM CSD connection because the different CS defines the maximum speed and not the real, available speed.

But this means also that GSM 1800/1900 MHz networks are better for GPRS usage than GSM 900 MHz networks. Because of the different MHz bands a 1800/1900 network requires more Base Stations which means a higher density and less people uses the same Base Station while GSM 900 networks required less BTSs which means more people uses the same Base Station and therefore less capacity is available for GPRS usage.

Cheers ~ Arne