GTP'
GTP' is an IP based protocol used within GSM and UMTS networks. It can be used with UDP or TCP. GTP' uses the same message structure as GTP, but it is largely a separate protocol. GTP' uses registered UDP/TCP port 3386.
GTP' can be used for carrying charging data from the "Charging Data Function" of the GSM or UMTS network to the "Charging Gateway Function". In most cases, this should mean from many individual network elements such as the GGSNs to a centralised computer which then delivers the charging data more conveniently to the network operator's billing center.
GTP' is used on the Ga interface within the 3GPP GPRS Core Network definition.
GTP' reuses aspects of GTP, although to quote 3GPP TS 32.295, "only the signalling plane of GTP is partly reused". GTP' defines a different header, additional messages, field values, as well as a synchronisation protocol to avoid losing or duplicating CDRs on CGF or SGSN/GGSN failure. Transferred CDRs, if following 3GPP standards, are encoded in ASN.1.
Header
GTP' v1 and v2 headers contain the following fields; Version : The first header field in a GTP' packet is the 3-bit version field. For GTP' v2, this has a value of 2.
; Protocol Type : a 1-bit value that differentiates GTP' from GTP.
; Reserved: a 3-bit reserved field.
; Header Length : a 1-bit value that for GTP' version 0 indicates if using a 20 byte header or this 6 byte header. This bit must be unset for subsequent GTP' versions and in these does not indicate the header length as this must always be 6 bytes.
; Message Type: An 8-bit field that states the message type. Possible values:
Message Type | Description |
1 | Echo Request |
2 | Echo Response |
3 | Version Not Supported |
4 | Node Alive Request |
5 | Node Alive Response |
6 | Redirection Request |
7 | Redirection Response |
240 | Data Record Transfer Request |
241 | Data Record Transfer Response |
; Length: A 16-bit field that states the length of the packet being encapsulated by GTP'.
; Sequence Number: A 16-bit field that uniquely identifies this packet and allows detection of loss or duplication
Message Types
GTP' uses the GTP Version Not Supported, Echo Request and Echo Response messages unchanged, but adds the following messages- Node Alive Request
- Node Alive Response
- Redirection Request
- Redirection Response
- Data Record Transfer Request
- Data Record Transfer Response
Node Alive Request / Response
Redirection Request/Response
The Redirection messages are used to:- divert the flow of CDRs from the CDFs to another CGF when the sender is being removed from service.
- advise that the CGF has lost its connection to a downstream system
This message contains details about the cause, and optionally address of an alternate CGF.
Data Record Transfer Request/Response
The Data Record Transfer messages are used to reliably transport CDRs from the point of generation to non-volatile storage in the CGF.Data Record Transfer Request
Each Data Record Transfer Request message can contain a message of one of four types:- Send Data Record Packet - This message contains zero or more CDRs. CDRs may be encoded in ASN.1 using BER or, less commonly, PER.
- Send possibly duplicated Data Record Packet - This message contains one or more CDRs, and this message has previously been sent to another CGF.
- Cancel Data Record Packet - This message orders the CGF to remove one or more Data Record Packet from the CGF "possibly duplicated" pending queue.
- Release Data Record Packet - This message orders the CGF to write the contents of one or more Data Record Packets from the CGF "possibly duplicated" pending queue.
The ability to send a Data Record Transfer Request containing zero CDRs is used as a test to detect the success or failure of the CGF to have already written records assigned to that sequence number and is an important part of the above mechanism.
Data Record Transfer Response
The Data Record Transfer Response acknowledges receipt of one or more Data Record Transfer messages; responses can be grouped for reasons of efficiency but must be sent more frequently than the sending CDFs timeout.The acknowledgement includes a cause and can be a rejection of the contained records.