Version

Gi AVPs

Gi (application id: 1)

Gi interface is a part of the GPRS (General Packet Radio Service) network, enabling communication between the Gateway GPRS Support Node (GGSN) and external packet data networks (PDNs), such as the Internet. This interface handles the secure and efficient transmission of user data between the mobile network and external networks, allowing users to access services like the Internet from their mobile devices.

A PDP (Packet Data Protocol) Context is a logical association between a MS (Mobile Station) and PDN (Public Data Network) running across a GPRS network. The context defines aspects such as Routing, QoS (Quality of Service), Security, Billing etc.

Gi interface workflow

Packet Data Protocol (PDP) Context Activation

  • Activate PDP Context Request: The process starts when the terminal equipment (TE) sends a PDP Context Activate Request to the SGSN (Serving GPRS Support Node).
  • The SGSN forwards this request to the GGSN to create a PDP context.
  • Create PDP Context Request: The GGSN processes the request and establishes the PDP context, which facilitates the user's data connection to the external network (e.g., the Internet) via the Gi interface.

User Data Transmission

  • Once the PDP context is established, user data can be transmitted between the TE and the PDN through the GGSN, utilizing the Gi interface for data routing and transmission to external networks.

PDP Context Deactivation

  • Deactivate PDP Context Request: When the user decides to terminate the session, a Deactivate PDP Context Request is sent from the TE to the SGSN.
  • The SGSN forwards this request to the GGSN.

Delete PDP Context Request:

  • The GGSN processes the deactivation request, terminating the PDP context and stopping the user’s data session.

Deactivate PDP Context Accept:

  • The SGSN informs the TE that the PDP context deactivation is accepted.

Note: The AAA (Authentication, Authorization, and Accounting) processes in a GPRS network, particularly those involving the GGSN, are typically managed via interfaces like Gx (for policy control) and Gy (for online charging), not the Gi interface. The Diameter protocol may be used in these contexts, but it is separate from the primary function of the Gi interface, which focuses on user data transmission rather than direct AAA communication.
For complete technical specification of Gi interface in Diameter protocol please refer to: [3GPP TS 29.061]

package com.mobius.software.telco.protocols.diameter.primitives.gi

Name

AVP Code

Data Type

Vendor

3GPP-Allocate-IP-Type

27

OctetString

3GPP

Used to indicate the specific IP address allocation requirements to the AAA server during the lifetime of a Packet Data Network (PDN) connection. This AVP ensures that the AAA server knows how to handle Access-Request signaling from the P-GW (Packet Gateway) or GGSN (Gateway GPRS Support Node), particularly in scenarios where both IPv4 and IPv6 address allocations may be needed. Values:

0: Do not allocate IPv4 or IPv6 (e.g., IPv6 prefix is allocated locally, not by AAA).

1: Allocate IPv4 address only.

2: Allocate IPv6 prefix only.

3: Allocate both IPv4 address and IPv6 prefix.

4-255: Reserved for future use.

3GPP-CAMEL-Charging-Info

24

OctetString

3GPP

Used to encapsulate CAMEL (Customized Applications for Mobile network Enhanced Logic) charging information from the Serving GPRS Support Node (SGSN) Call Detail Record (CDR). This AVP serves as a container for the CAMELInformationPDP Information Element (IE), preserving its tag and length as defined in [TS29.060].

3GPP-CG-Address

4

OctetString

3GPP

Represents the address of the Charging Gateway (CG) within the Diameter protocol. The CG is a critical component in 3GPP networks responsible for consolidating and forwarding charging data to billing systems. This AVP encapsulates the Charging Gateway's address, ensuring accurate and reliable routing of charging information.

3GPP-CG-IPv6-Address

14

OctetString

3GPP

Used to specify the IPv6 address of the Charging Gateway (CG) within a 3GPP network. This AVP ensures the accurate identification of the CG for communication, charging data routing, and billing processes in networks utilizing IPv6 addressing.

3GPP-Charging-Characteristics

13

UTF8String

3GPP

Used to convey charging-related characteristics associated with a session or subscriber in 3GPP networks. It provides details on how the user's charging requirements or policies should be handled by network elements such as the GGSN or P-GW.

3GPP-Charging-ID

2

OctetString

3GPP

Used to uniquely identify a charging session in 3GPP networks. It is primarily employed for correlating charging information between network elements, such as the GGSN/P-GW and the AAA server.

3GPP-GGSN-Address

7

OctetString

3GPP

Used to specify the address of the Gateway GPRS Support Node (GGSN) in a 3GPP network. It plays a critical role in identifying the GGSN responsible for managing a user session in GPRS and evolved packet core (EPC) architectures.

3GPP-GGSN-IPv6-Address

16

OctetString

3GPP

Used to specify the IPv6 address of the Gateway GPRS Support Node (GGSN) in a 3GPP network. It serves as an identifier for the GGSN, which manages user sessions and data flow in General Packet Radio Service (GPRS) and evolved packet core (EPC) environments.

3GPP-GGSNMCC-MNC

9

UTF8String

3GPP

Contains the Mobile Country Code (MCC) and Mobile Network Code (MNC) associated with the Gateway GPRS Support Node (GGSN) in a 3GPP network. This AVP uniquely identifies the mobile network operator responsible for a particular GGSN.

Elements:

MCC: A 3-digit code representing the country (e.g., 310 for the United States).

MNC: A 2- or 3-digit code representing the network operator (e.g., 260 for T-Mobile USA).

3GPP-GPRS Negotiated QoS Profile

5

UTF8String

3GPP

Encapsulates the Quality of Service (QoS) profile negotiated during a GPRS session. It is represented as a UTF-8 encoded string containing release-specific QoS parameters based on the mobile network's generation and configuration. The value is a UTF-8 encoded string consisting of two parts:

Release Indicator: A two-character string indicating the 3GPP release.

For GGSN:

  • 98: Release 98

  • 99: Release 99 or Release 4

  • 05: Release 5 or Release 6

  • 07: Release 7 or higher

For P-GW:

  • 08: Release 8 or higher

Release-Specific QoS Parameters: The QoS profile encoded as UTF-8 hexadecimal values. Each octet is represented as two UTF-8 characters defining its hexadecimal representation.

For GGSN:

  • Release 98: 3 octets → 6 UTF-8 characters

  • Release 99/Release 4: 11 octets → 22 UTF-8 characters

  • Release 5/Release 6: 14 octets → 28 UTF-8 characters

  • Release 7 and higher: 16 octets → 32 UTF-8 characters

For P-GW:

Includes parameters such as:

  • QCI (QoS Class Identifier)

  • ARP (Allocation and Retention Priority)

  • GBR QoS information (UL/DL MBR, UL/DL GBR)

  • APN-AMBR (Aggregated Maximum Bit Rate for uplink and downlink)

3GPP-IMEISV

20

OctetString

3GPP

Contains the International Mobile Equipment Identity and Software Version (IMEISV), a unique identifier assigned to mobile devices. The IMEISV is represented as a sequence of UTF-8 characters encoded according to [TS23.003]. 

The IMEISV consists of three primary components:

TAC (Type Allocation Code): 8 digits identifying the device model and manufacturer.

SNR (Serial Number): 6 digits uniquely identifying the device within the model.

SVN (Software Version Number): 2 digits representing the software version installed on the device.

Encoding Variants:

16 UTF-8 Characters: For IMEISV (TAC = 8, SNR = 6, SVN = 2).

15 UTF-8 Characters: For IMEI without the SVN (TAC = 8, SNR = 6, Spare = 1).

14 UTF-8 Characters: For IMEI without the Spare digit (TAC = 8, SNR = 6).

Protocol Specifications:

GGSN Encoding: Encodes IMEI(SV) based on [TS29.060].

P-GW Encoding: Encodes IMEI(SV) based on the ME Identity IE format in [TS29.274].

3GPP-IMSI

1

UTF8String

3GPP 

Contains the International Mobile Subscriber Identity (IMSI), which is a unique identifier assigned to a mobile subscriber. The IMSI consists of three main components:

MCC (Mobile Country Code): 3 digits identifying the subscriber’s home country.

MNC (Mobile Network Code): 2 or 3 digits identifying the subscriber’s home network within the country.

MSIN (Mobile Subscriber Identification Number): Up to 10 digits uniquely identifying the subscriber within the network.

UTF-8 encoding of the IMSI as defined in [TS23.003]. No padding characters are included between the MCC, MNC, and MSIN. If the IMSI has fewer than 15 digits, any padding in the GTP information element is removed before UTF-8 encoding.

3GPP-IMSI-MCCMNC

8

UTF8String

3GPP

Provides the Mobile Country Code (MCC) and Mobile Network Code (MNC) extracted from the IMSI (International Mobile Subscriber Identity). It is encoded as UTF-8 text and serves as a compact representation of a subscriber's home country and home network. Structure:

MCC (3 digits): Identifies the country. Example: 310 for the USA, 404 for India

MNC (2 or 3 digits): Identifies the network operator within the country. Example: 260 for T-Mobile USA, 45 for Airtel India

UTF-8 encoding as defined in [TS23.003]. No padding characters are used between MCC and MNC.

Length Constraints: 7 or 8 octets. 7 characters for MCC + 2-digit MNC. 8 characters for MCC + 3-digit MNC.

3GPP-IPv6-DNSServers

17

OctetString

3GPP 

Provides a list of IPv6 addresses representing the Domain Name System (DNS) servers associated with an Access Point Name (APN). This AVP helps define the DNS infrastructure that user devices connected to the APN should use for resolving domain names. The servers are listed in the order of preference, such as:

Primary DNS Server (first in the list).

Secondary DNS Server (next in the list).

Additional DNS Servers (if available).

IPv6 Address Format: Encoded as OctetString. Each IPv6 address is 16 octets long.

If multiple DNS servers are provided, the AVP contains concatenated 16-octet segments for each server.

3GPP-MSTimeZone

23

OctetString

3GPP

Specifies the local time zone and Daylight Saving Time (DST) information for the location of the Mobile Station (MS). It provides the offset between Universal Time Coordinated (UTC) and the local time where the MS resides. This AVP is encoded as an OctetString and adheres to the encoding rules specified in [TS29.060].

3GPP-NegotiatedDSCP

26

OctetString

3GPP 

Used to convey the Differentiated Services Code Point (DSCP) value that has been negotiated between the network and the user equipment (UE). The DSCP is a key component of Quality of Service (QoS) in IP-based networks, and it defines the level of service priority assigned to specific traffic flows.

3GPP-NSAPI

10

OctetString

3GPP 

Used to represent the Network Service Access Point Identifier (NSAPI) or EPS Bearer ID, depending on the network configuration (e.g., GPRS or EPS). It is encoded as a Text Type (UTF-8 encoded hexadecimal string) and uniquely identifies a PDP context or EPS bearer within a session.

3GPP-Packet-Filter

25

OctetString

3GPP 

Represents a packet filter used to define the characteristics of data traffic in terms of source, destination, and protocol-specific attributes. 

Direction:

0: Downlink (traffic from network to user device).

1: Uplink (traffic from user device to network).

Type Values: Different types of attributes that define the filter characteristics. Examples include IPv4/IPv6 addresses, ports, protocol identifiers, and traffic class information.

Structure of Packet Filter:

Each attribute is encoded as specified:

1: IPv4 Address: 4 octets for address + 4 octets for mask. Address transmitted first.

2: IPv6 Address: 16 octets for address + 16 octets for mask. Address transmitted first.

3: Protocol Identifier/Next Header: 1 octet for protocol identifier (IPv4) or next header (IPv6).

4: Single Destination Port: 2 octets for the destination port number.

5: Destination Port Range: 2 octets for low limit + 2 octets for high limit. Low limit transmitted first.

6: Single Source Port: 2 octets for the source port number.

7: Source Port Range: 2 octets for low limit + 2 octets for high limit. Low limit transmitted first.

8: Security Parameter Index (IPv6): 4 octets for IPSec security parameter index.

9: Type of Service/Traffic Class: 1 octet for value + 1 octet for mask. Value transmitted first.

10: Flow Label (IPv6): 3 octets for IPv6 flow label. Bits 8–5 of first octet are spare; remaining 20 bits hold flow label.

Multiple Filters: All filters associated with a session must be transmitted together. Partial transmission is not allowed.

3GPP-PDP-Type

3

Enumerated

3GPP 

Specifies the Packet Data Protocol (PDP) Type used to identify the type of packet data connection established in the network. This AVP is represented as an unsigned 32-bit enumerated integer. Values:

0: IPv4: GGSN, P-GW

1: PPP: GGSN

2: IPv6: GGSN, P-GW

3: IPv4v6 (dual-stack): P-GW

GGSN Support: Values 0, 1, and 2 are supported.

P-GW Support: Values 0, 2, and 3 are supported.

3GPP-RAT-Type

21

OctetString

3GPP 

Provides the Radio Access Technology (RAT) type currently serving the User Equipment (UE). This AVP is encoded as an Octet String, where the specific value represents a predefined RAT type. The RAT-Type field uses the following predefined values assigned to particular radio access technology and applicable network element:

0: GERAN (2G): GGSN, P-GW

1: UTRAN (3G): GGSN, P-GW

2: E-UTRAN (4G/LTE): GGSN, P-GW

3: WLAN: GGSN, P-GW

4: GAN: GGSN, P-GW

5: HSPA: GGSN, P-GW

6: I-WLAN: GGSN, P-GW

101: IEEE 802.16e (WiMAX): P-GW

102: 3GPP2 eHRPD: P-GW

103: 3GPP2 HRPD: P-GW

104: 3GPP2 1xRTT: P-GW

7-100: Reserved for future use: GGSN, P-GW

105-255: Reserved for future use: GGSN, P-GW

3GPP-Secondary-RAT-Usage

31

OctetString

3GPP 

Provides information on the Secondary Radio Access Technology (RAT) usage for a PDU session. This AVP, encoded as an Octet String, supports reporting multiple secondary RAT usage attributes within a single RADIUS Accounting Request message, particularly in Interim-Update or STOP messages. Encoding Structure:

Octet 3:

Bits 1-4 (RAT Field): Specifies the type of RAT being used:

0: NR

1: NR-U

2: EUTRA

3: EUTRA-U

4: Unlicensed Spectrum

5-15: Reserved for future use

Bit 5 (SESS Field):

1: Indicates secondary RAT usage for the PDU session.

0: Not applicable for the session.

Bits 6-8: Reserved (set to 0).

Octets 4-28:

Encoded according to Secondary RAT Usage Data Report IE as specified in [TS29.274].

Contains detailed usage information, including session duration, data volume, and RAT switching events.

3GPP-Selection-Mode

12

UTF8String

3GPP 

Contains the selection mode value used during the process of PDP context activation or default bearer establishment.  This AVP is primarily used to convey information about how the PDP context or bearer was selected—either by the user, network, or as default behavior—ensuring that the selection mode is correctly interpreted and applied across GGSN or P-GW systems.

Mapping Rules:

For the GGSN: The binary selection mode value from the Create PDP Context message is mapped to the corresponding character as specified in [TS29.060].

For the P-GW: The binary selection mode value from the Create Default Bearer Request message is mapped similarly as per [TS29.274].

Example Values:

1: Default value for the selection mode.

2: Selection mode explicitly set by the network.

3: User-defined selection mode.

3GPP-Session-Stop-Indicator

11

OctetString

3GPP 

Signaling parameter used in Diameter-based 3GPP networks to indicate the termination of a session.

3GPP-SGSNAddress

6

OctetString

3GPP 

Used in Diameter signaling within 3GPP networks to carry the address of the Serving GPRS Support Node (SGSN). The SGSN is a critical node in the GPRS and evolved packet core (EPC) architectures, managing mobility, session management, and packet routing for mobile devices.

The value is encoded as a binary representation of the SGSN's address. The type of address (IPv4/IPv6) should be inferred from the length or associated AVPs.

Length: 

IPv4: 4 octets (32 bits).

IPv6: 16 octets (128 bits).

Example Encoding:

IPv4 Address: 192.0.2.1 -> Hex: C0 00 02 01

IPv6 Address: 2001:db8::1 -> Hex: 20 01 0D B8 00 00 00 00 00 00 00 00 00 00 00 01

3GPP-SGSN-IPv6-Address

15 

OctetString

3GPP 

Used to carry the IPv6 address of the Serving GPRS Support Node (SGSN) in 3GPP networks.

3GPP-SGSN-MCC-MNC

18 

UTF8String

3GPP 

Represents the Mobile Country Code (MCC) and Mobile Network Code (MNC) associated with the Serving GPRS Support Node (SGSN). It is encoded as a UTF-8 string, containing the MCC-MNC values as specified by [TS23.003] and [TS29.060]. The MCC is always a 3-digit code that identifies the country of the SGSN, while the MNC is a 2 or 3-digit code that identifies the specific network within that country.

3GPP-UE-Local-IP-Address

32 

OctetString

3GPP 

Provides the local IP address of the User Equipment (UE). This AVP is used in scenarios where the UE's IP address is needed for session management, routing, or quality of service (QoS) handling. The IP address is represented in Octet String format and can either be an IPv4 or IPv6 address, determined by the IP Type field:
1: UE local IPv4 address

2: UE local IPv6 address

3GPP-UE-Source-Port

33 

OctetString

3GPP 

Provides the source port information used by the User Equipment (UE) for communication. This AVP is essential for identifying the protocol and port number associated with the source of traffic from the UE. It plays a critical role in routing, monitoring, and policy application within the network. The AVP contains two fields:

Source Port Type Field: Indicates whether the source port is for UDP or TCP communication:
1: UDP Source Port.

2: TCP Source Port.

Port Number Field: Specifies the port number used by the UE.

Bit 8 of Octet 4 represents the most significant bit of the port number.

Bit 1 of Octet 5 represents the least significant bit of the port number.

Examples:

UDP Source Port: 1 0x12 0x34 (Hexadecimal representation of port 4660).

TCP Source Port: 2 0xAB 0xCD (Hexadecimal representation of port 43981).

3GPP-UserLocation-Info

22 

OctetString

3GPP 

Provides geographical location information of the user. It plays a critical role in location-based services, billing, and network optimizations by relaying information about the user’s physical location. This AVP contains two primary fields:

Geographic Location Type: Specifies the type of location information being provided, such as Cell Global Identifier (CGI) or Service Area Identifier (SAI).

Geographic Location: Contains the actual location data based on the specified Geographic Location Type.

3GPP-User-Location-Info-Time

30 

OctetString

3GPP 

Records the time associated with the user’s most recent known location. This AVP encodes the time in NTP (Network Time Protocol) format as an Unsigned32 value, representing the number of seconds elapsed since January 1, 1900 (UTC).

TWAN-Identifier

29 

OctetString

3GPP 

Conveys the location information for a Trusted WLAN Access Network (TWAN) in mobile network environments. The TWAN-Identifier field is encoded as an Octet String and adheres to the same coding conventions as the GTP TWAN Identifier specified in [TS29.274]. The field starts at Octet 5 and contains the necessary information to uniquely identify the TWAN location.

 


 

Start innovating with Mobius

What's next? Let's talk!

Mobius Software

As a company you'll get:

  • Get started quickly

  • Support any business model

  • Join millions of businesses

Questions? websupport@mobius.com