The GPRS core network is the central part of the general packet radio service (GPRS) which allows 2G, 3G and WCDMA mobile networks to transmit Internet Protocol (IP) packets to external networks such as the Internet.  The GPRS system is an integrated part of the GSM network switching subsystem.

The network provides mobility management, session management and transport for IP packet services in GSM and WCDMA networks.  The core network also provides support for other functions such as billing and lawful interception.  It was also proposed, at one stage, to support packet radio services in the US D-AMPS TDMA system, however, in practice, all of these networks have been converted to GSM so this option has become irrelevant.

PRS module is an open standards driven system. The standardization body is the 3GPP.

GPRS tunnelling protocol (GTP)

GPRS Tunnelling Protocol is the defining IP-based protocol of the GPRS core network.  Primarily it is the protocol which allows end users of a GSM or WCDMA network to move from place to place while continuing to connect to the Internet as if from one location at the Gateway GPRS support node (GGSN).  It does this by carrying the subscriber's data from the subscriber's current serving GPRS support node (SGSN) to the GGSN which is handling the subscriber's session.  Three forms of GTP are used by the GPRS core network.

GTP-U for transfer of user data in separated tunnels for each Packet Data Protocol (PDP) context
GTP-C for control reasons including:
 setup and deletion of PDP contexts;
 verification of GSN reachability;
 updates; e.g., as subscribers move from one SGSN to another.
GTP' (pronounced "GTP Prime") for transfer of charging data to the Charging Gateway Function.

GPRS support nodes (GSN)
A GSN is a network node that supports the use of GPRS in the GSM core network.  All GSNs should have a Gn interface and support the GPRS tunneling protocol.  There are two key variants of the GSN, namely gateway GPRS support node and serving GPRS support node.

Gateway GPRS support node (GGSN)
The gateway GPRS support node (GGSN) is one of two components of the GPRS PS domain. The GGSN together with the SGSN handle packet transmissions between the GPRS network and external packet-switched networks, such as the Internet or an X.25 network.

From an external network's point of view, the GGSN is a router to a "sub-network", because the GGSN ‘hides’ the GPRS infrastructure from the external network. When the GGSN receives data addressed to a specific user, it checks if the user is active. If it is, the GGSN forwards the data to the SGSN serving the mobile user, but if the mobile user is inactive, the data is discarded. In the other direction, mobile-originated packets are routed to the right network by the GGSN.

The GGSN is the anchor point that enables the mobility of the user terminal in the GPRS/UMTS networks. In essence, it carries out the role in GPRS equivalent to the home agent in Mobile IP. It maintains routing necessary to tunnel the protocol data units (PDUs) to the SGSN that services a particular mobile station (MS).

The GGSN converts the GPRS packets coming from the SGSN into the appropriate packet data protocol (PDP) format (e.g., IP or X.25) and sends them out on the corresponding packet data network. In the other direction, PDP addresses of incoming data packets are converted to the GSM address of the destination user. The readdressed packets are sent to the responsible SGSN. For this purpose, the GGSN stores the current SGSN address of the user and his or her profile in its location register. The GGSN is responsible for IP address assignment and is the default router for the connected user equipment (UE). The GGSN also performs authentication and charging functions.

Other functions include subscriber screening, IP pool management and address mapping, QoS and PDP context enforcement.

With LTE scenario the GGSN functionality moves to SAE gateway (with SGSN functionality working in MME).

Serving GPRS support node (SGSN)
The Serving GPRS Support Node (SGSN) is the node that is serving the MS/UE. The SGSN supports GPRS and/or UMTS. The SGSN keeps track of the location of an individual MS/UE and performs security functions and access control. The SGSN is connected to the GERAN base station system through the Gb or Iu interface and/or to the UTRAN through the Iu interface.
A SGSN is responsible for the delivery of data packets from and to the mobile stations within its geographical service area. Its tasks include packet routing and transfer, mobility management (attach/detach and location management), logical link management, and authentication and charging functions. The location register of the SGSN stores location information (e.g., current cell, current VLR) and user profiles (e.g., IMSI, address(es) used in the packet data network) of all GPRS users registered with it.

Common SGSN functions
 Detunnel GTP packets from the GGSN (downlink)
 Tunnel IP packets toward the GGSN (uplink)
 Carry out mobility management when a standby mode mobile moves from one routing area to another routing area
 Billing a user according to data used.
 Mobile Equipment Identity Check Procedure (Gf/S13' interfaces).
 The SMS GMSCs and SMS IWMSCs support SMS transmission via the SGSN.
 The Offline Charging System (OFCS) collects charging records from SGSNs.
 The SGSN contains mechanisms for avoiding and handling overload situations. 
 The SGSN communicate with other SGSN(s) and/or MME(s) (Mobility Management Entity) (Gn/S16/S3 interfaces)

GSM/EDGE specific SGSN functions
Enhanced Data Rates for GSM Evolution (EDGE) specific SGSN functions and characteristics are:
 Maximum data rate of approx. 60 kbit/s (150 kbit/s for EDGE) per subscriber
 Connect via Frame Relay or IP to the packet control unit using the Gb protocol stack
 Accept uplink data to form IP packets
 Encrypt downlink data, decrypt uplink data
 Carry out mobility management to the level of a cell for connected mode mobiles

WCDMA specific SGSN functions
 Carry up to about 42 Mbit/s traffic downlink and 5.8 Mbit/s traffic uplink (HSPA+)
 Tunnel/detunnel downlink/uplink packets toward the radio network controller (RNC)

Access point

An access point is:
 An IP network to which a mobile set can be connected
 A set of settings that are used for that connection
 A particular option in a set of settings in a mobile phone

When a GPRS mobile phone sets up a PDP context, the access point
is selected.  At this point an Access Point Name (APN) is
determined

Example: aricenttechnologies.mnc012.mcc345.gprs
Example: geocell
Example: internet
Example: hcl.cisco.ggsn

This access point is then used in a DNS query to a private DNS
network.  This process (called APN resolution) finally gives the IP
address of the GGSN which should serve the access point.  At this
point a PDP context can be activated.

PDP context
The packet data protocol (PDP; e.g., IP, X.25, FrameRelay) context is a data structure present on both the serving GPRS support node (SGSN) and the gateway GPRS support node (GGSN) which contains the subscriber's session information when the subscriber has an active session.
When a mobile wants to use GPRS, it must first attach and then activate a PDP context.
This allocates a PDP context data structure in the SGSN that the subscriber is currently visiting and the GGSN serving the subscriber's access point.  The data recorded includes

 Subscriber's IP address
 Subscriber's IMSI
 Subscriber's Tunnel Endpoint ID (TEID) at the GGSN
 Subscriber's Tunnel Endpoint ID (TEID) at the SGSN

Reference points and interfaces
Within the GPRS core network standards, there are a number of interfaces and reference points (logical points of connection that probably share a common physical connection with other reference points).  Some of these names can be seen in the network structure diagram on this page.

Interfaces in the GPRS network

Ga The interface serves the CDRs (accounting-records) which are written in the GSN and sent to the charging gateway (CG).  This interface uses a GTP-based protocol, with modifications that supports CDRs (Called GTP'  and GTP prime).
Gb Interface between the base station subsystem and the SGSN the transmission protocol could be Frame Relay or IP.
Iu Interface between the Radio Network Controller and the SGSN. The interface exchanges signaling and payload. 
Gc Interface between the GGSN and HLR so that the GGSN can get the location details of a mobile station. To avoid implementing MAP/SS7 in the GGSN, this interface is optional. When not present, the GGSN routes inquires to the HLR via an SGSN.
Gd Interface between the SGSN and the SMS Gateway. Can use MAP1, MAP2 or MAP3.
Ge The interface between the SGSN and the service control point (SCP); uses the CAP protocol.
Gf The interface between the SGSN and the Equipment Identity Register (EIR), used for checking the mobile's equipment identity number (IMEI) against a list of reported stolen mobile phones.
Gi IP-based interface between the GGSN and a public data network (PDN) either directly to the Internet or through a WAP gateway.
Gmb The interface between the GGSN and the Broadcast-Multicast Service Center (BM-SC), used for controlling MBMS bearers.
Gn IP-based interface between SGSN and other SGSNs and (internal) GGSNs. DNS also shares this interface. Uses the GTP Protocol.
Gp IP-based interface between internal SGSN and external GGSNs. Between the SGSN and the external GGSN, there is the border gateway (which is essentially a firewall). Also uses the GTP Protocol.
Gr Interface between the SGSN and the HLR. Messages going through this interface uses the MAP3 protocol.
Gs Interface between the SGSN and the MSC (VLR). Uses the BSSAP+ protocol. This interface allows paging and station availability when it performs data transfer. When the station is attached to the GPRS network, the SGSN keeps track of which routing area (RA) the station is attached to. An RA is a part of a larger location area (LA). When a station is paged this information is used to conserve network resources. When the station performs a PDP context, the SGSN has the exact BTS the station is using.
Gx The online policy interface between the GGSN and the charging rules function (CRF). It is used for provisioning service data flow based on charging rules. Uses the diameter protocol.
Gy The online charging interface between the GGSN and the online charging system (OCS). Uses the diameter protocol (DCCA application).
Gz The off-line (CDR-based) charging interface between the GGSN and the Charging system Uses GTP'.
Lg The interface between the SGSN and the Gateway Mobile Location Center (GMLC), used for location-based services.
S3 This interface is defined between the SGSN and the MME and it is used to exchange user and bearer information in inter-system mobility procedures. This interface is implemented using eGTP-C.
S4 This interface is defined between the SGSN and the SGW (Serving Gateway). The term "S4-SGSN" refers to a Release-8 SGSN that has at least one set of S4/S3/S16 interfaces enabled.
S6d The interface between SGSN and Home Subscriber Server (HSS). It is a Diameter based interface that is used for transferring subscription and authentication data of the user to HSS for authenticating and authorizing user access.
S13' This interface is defined between the SGSN and the EIR (Equipment Identity Register). The S13' interface applies only to the S4-based SGSN. The interface is based on Diameter protocol.
S16 This interface is defined between two SGSNs and exclusively uses GTPv2-C.

See also
 Base station subsystem
 Packet control unit
 Network switching subsystem

References

External links

 3GPP web page including standards
 easy access to different specs
 GPRS attach and PDP context activation sequence diagrams

Main Reference
 3GPP TS 23.060 V13.4.0 (2015-09)

3GPP standards
Telecommunications infrastructure