GPRS Protocol Stack: Architecture and Layer Functions

gprs
protocol stack
data communication
gsm
mobile communication

This document provides an overview of the GPRS (General Packet Radio Service) protocol stack, detailing the functions of Layer 1, Layer 2, and Layer 3 based on the GPRS standard.

As illustrated in the figure below, the Session Management (SM) and GPRS Mobility Management (GMM) layers are responsible for signaling. The Subnetwork Dependent Convergence Protocol (SNDCP) handles data transmission. Above these layers are the IP and Application layers.

Data from the SNDCP and GMM layers flows through the LLC, RLC, MAC, and PHY layers.

gprs protocol stack

GPRS Layer 3

SM (Session Management)

The Session Management layer is responsible for:

  • Establishing data calls.
  • Negotiating Quality of Service (QoS) parameters. These parameters include reliability, delay, throughput, and precedence.
  • Passing PDP_context_activation_request OR Modify_PDP_context_accept frames.
  • Adding an SM header before passing the Protocol Data Unit (PDP) to the GMM layer.

A PDP Context includes the following fields:

  • PDP Type (e.g., IPv4)
  • PDP Address (e.g., 192.1.1.40)
  • Negotiated QoS
  • GGSN Address
  • NSAP (Network Service Access Point)

GMM (GPRS Mobility Management)

The GPRS Mobility Management layer:

  • Adds a GMM header to the PDP context activation request received from the SM layer.
  • Receives GPRS attach requests directly and adds a GMM header.

The GMM layer performs the following functions:

  • Registration
  • Authentication
  • Attach
  • Location Management (Routing area update, cell update)
  • Encryption Management
  • TLLI (Temporary Logical Link Identity) Management

GMM operates in three states: IDLE, STANDBY, and READY.

SNDCP (Subnetwork Dependent Convergence Protocol)

The Subnetwork Dependent Convergence Protocol:

  • Performs N-PDU compression, storage, and segmentation to n201 size.
  • Converts and segments external network formats (N-PDUs) into the subnetwork format (GPRS format). This format is called SN-PDUs.

The SNDCP layer also handles the following functions:

  • Compression of N-PDUs.
  • Negotiation of compression parameters between the Mobile Station (MS) and the sub-network.
  • Management of multiple PDP context PDU transfers.

GPRS Layer 2

The Logical Link Control layer:

  • Takes GMM PDUs as input for signaling and SN PDUs as input for data transmission.
  • Performs functions such as encryption, protection and framing, storage (this feature is not available for connectionless mode), and L2 data connection (connectionless mode for GMM PDUs).
  • The encrypted SN PDU, called the LLC PDU, has a maximum length of 1560 octets.

The Radio Link Control layer:

  • Divides LLC PDUs into RLC blocks, a process called segmentation, and inserts an RLC header.

  • Segments the LLC PDU into octets of length 23. This 23-octet RLC/MAC block is structured as follows:

    • MAC header - 1 octet
    • RLC header and control octets - 2, 3, 4 or 6 octets
    • LLC PDU data - 20, 19, 18 or 16 octets (for CS1 operation)

MAC (Medium Access Control)

The Medium Access Control layer:

  • Inserts the MAC header.
  • Manages logical/physical channel scheduling, control, and management.

RLC and MAC Control/Data Block

The RLC/MAC block is the unit transmitted through Layer 1 over the air, carrying signaling/data information. A Block Check Sequence (BCS) is included at the end of the block for error detection.

Control blocks are 22 bytes in size and are encoded using CS-1 coding.

  • MAC Header: PT, RRBP, S/P, USF

  • Optional Bytes: RBSN, RTI, FS, AC, PR, TFI, D

  • Control message content

    • PT: Indicates the type of data (control or data).
    • USF: A 3-bit field used as a multiplexing field for multiple MSs using a single uplink time slot. It is unique for each MS.
    • RBSN: Reduced Block Sequence Number, used for sequencing the RLC/MAC control blocks.
    • TFI (Temporary Flow Identifier): Indicates an uplink or downlink TBF (Temporary Block Flow).
    • D: Direction of TBF.
  • MAC Header: PT, Spare bits, R
  • Control message content
  • MAC Header: PT, RRBP, S/P, USF, PR, TFI, FBI, BSN, E
  • Optional bytes: multiples of (LI, M, E)
  • RLC Data information
  • MAC Header: PT, CV, SI, R Spare, PI, TFI, TI, BSN, E

  • Optional bytes: LI, M, E, TLLI, PFI, E

  • RLC Data information

    • CV: The Countdown Value, indicating the number of RLC blocks with a particular TBF left to be transmitted by the Mobile Subscriber (UE).
    • TLLI: Identifies the GPRS user, and the TLLI indicator (TI) dictates the presence of the TLLI field.
    • E bit: Reserved for future use.

GPRS Layer 1 (Physical layer)

The GPRS physical layer is similar to the GSM physical layer used for data transmission. See GSM Physical layer documentation for more details.

References

  1. SNDCP - GSM 44.065
  2. SM - 44.008 section 6
  3. LLC - GSM 44.064
GSM Uplink Packet Switched Data Call Flow

GSM Uplink Packet Switched Data Call Flow

Explore the packet switched (PS) data call flow in GSM uplink, detailing GPRS attach and PDP context activation between mobile devices and network elements.

gsm
packet switching
data communication

Understanding GPRS: A Terminology Guide

Explore key terms related to GPRS (General Packet Radio Service), including frame structure, network nodes (SGSN, GGSN), coding schemes, interfaces, and related concepts.

gprs
gsm
data communication
GSM Protocol Stack and Architecture Explained

GSM Protocol Stack and Architecture Explained

Explore the GSM protocol stack and architecture for Mobile Stations (MS) and Base Transceiver Stations (BTS), covering Layer 1 (PHY) and Layer 2 (LAPD, LAPDm).

gsm
protocol stack
mobile communication
GSM Mobile Originated (MO) Call Flow Explained

GSM Mobile Originated (MO) Call Flow Explained

Explore the GSM Mobile Originated (MO) call flow, detailing the messages exchanged between the mobile device and network layers during call setup and release.

gsm
mobile communication
call flow