What is GPRS Tunneling Protocol or GTP ?

What is GPRS Tunneling Protocol or GTP ?

GPRS Tunnelling Protocol (GTP) used by mobile network operators on various interfaces in roaming and Radio Access Network (RAN) deployments and within the packet core in 3G and 4G networks. GTP allows mobile subscribers to use their phones (user equipment) to maintain a connection to a Packet Data Network (PDN) for internet access while on the move.

What Wikipedia says about GTP

GPRS Tunneling Protocol (GTP) is a group of IP-based communications protocols used to carry general packet radio service (GPRS) within GSMUMTS and LTE networks. In 3GPP architectures, GTP and Proxy Mobile IPv6 based interfaces are specified on various interface points.

GTP uses tunnels to allow two GPRS support nodes (GSNs) to communicate over a GTP-based interface and to separate traffic into different communication flows. GTP creates, modifies, and deletes tunnels for transporting IP payloads between the user equipment, the GPRS support nodes (GSNs) in the GPRS backbone network and the internet.

GTP can be decomposed into separate protocols, GTP-C, GTP-U and GTP’.There are two different version of GTP-C, GTPv1-C and GTPv2-C

GTPv1-C is defined in 3GPP TS 29.060. It is used on a Gn interface, that is, the interface between GPRS support nodes (GSNs) within a public land mobile network (PLMN), and also across a Gp interface between GSNs in different PLMNs. It is also used for roaming and inter access mobility between Gn/Gp SGSNs and mobility management entities (MMEs). GTPv1-C carries various types of control plane signalling messages. The registered port number for GTPv1-C is 2123.

GTPv2-C is defined in 3GPP TS 29.274. It is used on various EPC (Evolved Packet Core) signalling interfaces, such as S3, S5, S8, and S11. GTPv2-C carries various types of control plane signalling messages. The registered port number for GTPv2-C is 2123.

GTP-U is defined in 3GPP TS 29.281. It encapsulates and routes user plane traffic across multiple signalling interfaces such as S1, S3, S5, and S8. GTP-U messages are either user plane or signalling messages.

GTP’ (GTP prime) uses the same message structure as GTP-C and GTP-U, but has an independent function. It can be used for carrying charging data from the charging data function (CDF) of the GSM or UMTS network to the charging gateway function (CGF). In most cases, this should mean from many individual network elements such as the GGSNs to a centralized computer that delivers the charging data more conveniently to the network operator’s billing center.

GPRS Protocol Stack:

 Hello friends, here I am going to describe basic idea of GPRS protocol stack based on interface.So, here we used Gn and Gb interface for using GPRS protocol stack

Gn interface protocols:


GTP (GPRS tunneling protocol) receives IP datagram and X.25 packets from the external network and tunnels them across the GPRS support nodes. Because there will be multiple GGSN and SGSN interfaces, the GTP provides for every packet a tunnel identifier (TID) that identifies the destination and transaction to which the packet/datagram belongs. Transactions are identified using logicalidentifiers as well as the IMSI.

TCP/UDP consists of the transmission control protocol (TCP), which is used to transfer PDUs (protocol data units) across the Gn interface with reliability (acknowledgment and re-transmissions). The user datagram protocol (UDP),is used across the Gn interface to carry the GTP-PDUs for all signaling information and user data that do not require reliability.


IP (Internet protocol) is used to route user data and signaling information across the Gn interface. The IP datagram size will be limited to the physical layer maximum transmission unit (MTU) capabilities. An IP datagram can be as large as 65,535 octets, but if the physical layer MTU is less than this, fragmentation must be done. The source gateway support node (GGSN

or SGSN) has to first decide the MTU size and then carry out the fragmentation. The IP addressing used will route the data across the Gn interface, including any intermediate GSNs (gateway support nodes), to the GSN address at the final destination.


Gb interface protocols:


SNDCP (sub network dependent convergence protocol) is used between the SGSN and the mobile phone. This protocol converts the network layer PDUs (N-PDUs) on the Gn interface into a format suitable for the underlying GPRS network architecture. SNDCP performs a number of functions:

  • Multiplexing of N-PDUs from one or several network layer entities onto the appropriate LLC connection
  • Buffering of N-PDUs for the acknowledged service
  • Delivery sequence management for each NSAPI
  • Compression and decompression of the protocol information and user data
  • Segmentation and reassembly of the compressed data to the maximum length of the LLC-PDU
  • Negotiation of the control parameters (XID) between SNDCP entities.

LLC (logical link control) protocol provides a highly reliable, ciphered logical link between the SGSN and the mobile phone. The LLC uses both acknowledged and unacknowledged modes of frame transmission, depending on a user’s negotiated quality of service. This protocol also manages frame re-transmission, buffering, and information length based on the negotiated QoS delay class.

  • BVCI (BSSGP virtual connection identifier) is sent to the network services layers for routing signaling and data information to the correct peer functional entities. Each BVCI between two peer entities is unique.
  • LSP (link selection parameter) is used in conjunction with the BVCI to aid in selecting a physical link for the load-sharing process.
  • NSEI (network service entity identifier) used at the BSS and the SGSN provides the network management functionality required for operation of the Gb interface. The NSEI together with the BVCI uniquely identifies a BSSGP virtual connection.

NS (network service) layer uses frame relay across the Gb interface and could be a point-to-point connection between the SGSN and the BSS or a frame relay network. The NS layer uses a DLCI (data link connection identifier) look-up table to indicate the routing path

between the SGSN and the BSS. The initial value of the DLCI field is derived from the BVCI, NSEI, and LSP supplied by the BSSGP layer. This value changes as the frame passes through the frame relay network and reaches its final destination.

Um interface protocols:

 RLC (radio link control) is responsible for a number of functions:

  • Transferring LLC-PDUs between the LLC layer and the MAC function
  • Segmentation of LLC-PDUs into RLC data blocks and re-assembly of RLC data blocks to fit into TDMA frame blocks
  • Segmentation and re-assembly of RLC/MAC control messages into RLC/MAC control blocks
  • Backward error correction for selective transmission of RLC data blocks.

The RLC segmentation function is a process of taking one or more LLC-PDUs and dividing them into smaller RLC blocks. The LLC-PDUs are known collectively as a temporary block flow (TBF) and are allocated the resources of one or more packet data channels (PDCH).The TBF is temporary and is maintained only for the duration of the data transfer. Each TBF is assigned a temporary flow identity (TFI) by the network.The RLC data blocks consist of an RLC header, an RLC data unit, and spare bits. The RLC data block along with a MAC header may be encoded using one of four defined coding schemes. The coding scheme is critical in deciding the segmentation process.

 MAC (medium access control) controls the access signaling across the air interface, including the management of shared transmission resources (assignment of the radio block to multiple users on the same timeslot).

MAC achieves these functionalities by placing a header in front of the RLC header in the RLC/MAC data and control blocks. The MAC header contains several elements, some of which are direction-specific,referring to the downlink or uplink.

The key parameters of MAC header are:

  • Uplink status flag (USF), is sent in all downlink ARLC/MAC blocks and indicates the owner or use of the next uplink radio block on the same timeslot.
  • Relative reserved block period (RRBP), identifies a single uplink block in which the mobile phone will transmit control information.
  • Payload type (PT), the type of data (control block or data block) contained in the remainder of the RLC/MAC block.
  • Countdown value (CV), is sent by the mobile to allow the network to calculate the number of RLC data blocks remaining in the current uplink TBF.

23 thoughts on “What is GPRS Tunneling Protocol or GTP ?

  1. Thanks for another informative blog. Where else could I get that type of information written in such an ideal way? I’ve a project that I’m just now working on, and I’ve been on the look out for such information.

  2. Hi! I know this is kind of off topic but I was wondering which blog platform are you using for this website? I’m getting fed up of WordPress because I’ve had issues with hackers and I’m looking at options for another platform. I would be awesome if you could point me in the direction of a good platform.

  3. My brother suggested I may like this blog. He used to be entirely right. This submit actually made my day. You cann’t consider just how much time I had spent for this info! Thank you!

  4. Hi are using WordPress for your site platform? I’m new to the blog world but
    I’m trying to get started and create my own. Do you require any coding expertise
    to make your own blog? Any help would be really appreciated!

    1. hei Roby.. No coding exp required. WordPress is awesome. You can use it . Pls contact me mytelecomgyan@gmailcom

  5. Good day! I could have sworn I’ve been to this site before but after going through many of the
    articles I realized it’s new to me. Nonetheless, I’m definitely happy I discovered it and I’ll be
    book-marking it and checking back often!

  6. I and also my guys were actually following the best tactics on your web page while at once developed a horrible feeling I had not thanked the blog owner for those strategies. All of the men came certainly stimulated to read through all of them and now have pretty much been tapping into these things. Thank you for genuinely so helpful and then for making a decision on this kind of extraordinary issues most people are really wanting to be informed on. Our sincere regret for not expressing appreciation to you sooner.

  7. I simply want to mention I am new to blogging and really savored you’re web blog. Very likely I’m want to bookmark your blog . You actually come with tremendous article content. Cheers for sharing with us your web site.

Leave a Reply

Your email address will not be published. Required fields are marked *