Section: 16.4.7.2 Coding 3GPP Vendor-Specific RADIUS attributes
Content: In this subclause the provisions of IETF RFC 2865 [38] apply, which in particular specify the following: - the Length field of an attribute is one octet, and it indicates the length of this Attribute including the Type, Length and Value fields. - type String may be 1-253 octets long and it contains binary data (values 0 through 255 decimal, inclusive). Strings of length zero (0) shall not be sent, but the entire attribute shall be omitted. A NULL terminating character shall not be appended to an attribute of type String. - type Text may be 1-253 octets long and it contains UTF-8 encoded characters. Text of length zero (0) shall not be sent, but the entire attribute shall be omitted. A NULL terminating character shall not be appended to an attribute of type Text. - type Address is 32 bit value and most significant octet is the first one. - type Integer is 32 bit unsigned value and most significant octet is the first one. The RADIUS vendor Attribute is encoded as follows (as per IETF RFC 2865 [38]) n 7 3GPP Vendor Id = 10415 The string part is encoded as follows: m 2 and m 248 The 3GPP specific attributes encoding is clarified below. NOTE 1: Unless otherwise stated, the encoding of the value field of a 3GPP vendor-specific attribute is identical for Gi and Sgi. 1 – 3GPP-IMSI 3GPP Type: 1 n 15 Length: m 17 IMSI value: Text type: A GGSN (or a P-GW) receives IMSI that is encoded according to 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24] (or 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]) and converts IMSI into the UTF-8 characters, which are encoded as defined in 3GPP TS 23.003[ Numbering, addressing and identification ]  [40]. There shall be no padding characters between the MCC and MNC, and between the MNC and MSIN. If the IMSI is less than 15 digits, the padding in the GTP information element shall be removed by the GGSN (or the P-GW) and not encoded in this sub-attribute. 2 – 3GPP-Charging ID 3GPP Type: 2 Length: 6 Charging ID value: 32 bits unsigned integer 3 – 3GPP-PDP type 3GPP Type: 3 Length: 6 PDP type value: Unsigned 32 bits integer type PDP type may have the following values: 0 = IPv4 1 = PPP 2 = IPv6 3 = IPv4v6 4 = Non-IP 5 = Unstructured 6 = Ethernet For P-GW, this sub-attribute represents PDN Type and therefore only the values "0", "2", "3" and "4" are applicable. The value 5 Unstructured and 6 Ethernet of PDP type does not apply for the present specification. For specifications referencing the present RADIUS VSA, those values shall only apply if it is explicitely endorsed within the referencing specification. 4 – 3GPP-Charging Gateway address 3GPP Type: 4 Length: 6 Charging GW address value: Address type. 5 – 3GPP-GPRS Negotiated QoS profile 3GPP Type: 5 Length: For GGSN, L 37 (release 7 or higher) or L 33 (release 6 or release 5) or L 27 (release 4 or release 99) or L = 11 (release 98). For P-GW, the length varies depending on the value of QCI. See below for details. QoS profile value: Text type UTF-8 encoded QoS profile syntax: "<Release indicator> – <release specific QoS IE UTF-8 encoding>" <Release indicator> = UTF-8 encoded number (two characters) : 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 For SMF: "15"= Release 15 or higher <release specific QoS profile UTF-8 encoding> = UTF-8 encoded QoS profile for the release indicated by the release indicator. The UTF-8 encoding of a QoS IE is defined as follows: each octet is described by 2 UTF-8 encoded characters, defining its hexadecimal representation. For GGSN: The QoS profile definition is in 3GPP TS 24.008[ Mobile radio interface Layer 3 specification; Core network protocols; Stage 3 ]  [54]. The release 98 QoS profile data is 3 octets long, which then results in a 6 octets UTF-8 encoded string. The release 99 and release 4 QoS profile data is 11 octets long, which results in a 22 octets UTF-8 encoded string. The release 5 and release 6 QoS profile data is 14 octets long, which results in a 28 octets UTF-8 encoded string. The release 7 (and higher) QoS profile data is 16 octets long, which results in a 32 octets UTF-8 encoded string. For P-GW: It contains the following QoS parameters associated with the EPS bearer: - QCI - ARP - GBR QoS information (UL/DL MBR, UL/DL GBR) or UL/DL APN-AMBR. In other words if the value of QCI indicates a GBR bearer, the GBR QoS information shall be present. If the value of QCI indicates a non-GBR bearer, the APN-AMBR information shall be present. The encoding of the EPS bearer QoS profile parameters is specified in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]: ARP is specified in Bearer QoS IE; QCI, UL MBR, DL MBR, UL MBR and DL MBR are specified in Flow QoS IE; UL APN-AMBR and DL APN-AMBR are specified in AMBR IE. For GBR QCIs, the encoding of UTF-8 encoded QoS Profile field shall be as follows: For non-GBR QCIs, the UL/DL MBR and UL/DL GBR fields shall not be present; UL APN-AMBR and DL APN-AMBR fields shall be encoded (in UTF-8 encoded format) respectively after the QCI field. For SMF: It contains the following QoS parameters associated with the QoS flow: - 5QI - ARP - GBR QoS information (UL/DL MFBR, UL/DL GFBR) or UL/DL Session-AMBR. In other words if the value of 5QI indicates a GBR QoS flow, the GBR QoS information shall be present. If the value of 5QI indicates a non-GBR QoS flow, the Session-AMBR information shall be present. 5QI value range is 0-255. ARP shall be encoded as Allocation/Retention Priority IE defined in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. The UTF-8 encoded UL/DL MFBR, UL/DL GFBR and UL/DL Session-AMBR has the following pattern: '^\d+(\.\d+)? (bps|Kbps|Mbps|Gbps|Tbps)$' Examples: "125 Mbps", "0.125 Gbps", "125000 Kbps" For GBR 5QIs, the encoding of UTF-8 encoded QoS Profile field shall be as follows: For non-GBR 5QIs, the encoding of UTF-8 encoded QoS Profile field shall be as follows: The above structures for encoding the QoS profile of Release indicator "15" do not apply for the present specification. For specifications referencing the present VSA, those formats shall only apply if it is explicitely endorsed within the referencing specification. 6 – 3GPP-SGSN address 3GPP Type: 6 Length: 6 SGSN address value: Address type. 7 – 3GPP-GGSN address 3GPP Type: 7 Length: 6 GGSN address value: Address type. 8 – 3GPP-IMSI MCC-MNC 3GPP Type: 8 Length: n shall be 7 or 8 octets depending on the presence of MNC digit 3 IMSI MCC-MNC address value: Text type. This is the UTF-8 encoded characters representing the IMSI MCC-MNC numerical values. In accordance with 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24] (for GGSN), 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81] (for P-GW) and 3GPP TS 23.003[ Numbering, addressing and identification ]  [40], the MCC shall be 3 digits and the MNC shall be either 2 or 3 digits. There shall be no padding characters between the MCC and MNC. 9 – 3GPP-GGSN MCC-MNC 3GPP Type: 9 Length: n shall be 7 or 8 octets depending on the presence of MNC digit 3 GGSN address value: Text type. This is the UTF-8 encoding of the GGSN MCC-MNC values. In accordance with 3GPP TS 23.003[ Numbering, addressing and identification ]  [40] and 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24] the MCC shall be 3 digits and the MNC shall be either 2 or 3 digits. There shall be no padding characters between the MCC and MNC. 10 – 3GPP-NSAPI 3GPP Type: 10 Length: 3 NSAPI value: Text Type. It is the value of the NSAPI of the PDP context the RADIUS message is related to. It is encoded as its hexadecimal representation, using one UTF-8 encoded character. The GGSN should receive NSAPI values in the following hexadecimal range 05 – 0F. The GGSN shall discard digit 0 and convert the remaining digit into one UTF-8 coded character. For P-GW, the value of this sub-attribute represents the EPS Bearer ID as specified in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. 11 – 3GPP-Session Stop Indicator 3GPP Type: 11 Length: 3 Value is set to all 1. 3GPP-Session Stop Indicator value: Bit String type. 12 – 3GPP-Selection-Mode 3GPP Type: 12 Length: 3 Selection mode value: Text type. The format of this sub-attribute shall be a character that represents a single digit, mapping from the binary value of the selection mode in the Create PDP Context message (3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24]) for the GGSN, and the Create Session Request message (3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]) for the P-GW. Where 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24] provides for interpretation of the value, e.g. map ‘3’ to ‘2’, this shall be done by the GGSN. 13 – 3GPP-Charging-Characteristics 3GPP Type: 13 Length: 6 Charging characteristics value: Text type. The charging characteristics is value of the 2 octets. The value field is taken from the GTP IE described in 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24], subclause 7.7.23 for the GGSN and 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81] for the P-GW. Each octet of this IE field value is represented via 2 UTF-8 encoded character, defining its hexadecimal representation. 14 – 3GPP-Charging Gateway IPv6 address 3GPP Type: 14 Length: 18 Charging GW IPv6 address value: IPv6 Address. Charging GW IPv6 address is Octet String type. 15 – 3GPP-SGSN IPv6 address 3GPP Type: 15 Length: 18 SGSN IPv6 address value: IPv6 Address. SGSN IPv6 address is Octet String type. 16 – 3GPP-GGSN IPv6 address 3GPP Type: 16 Length: 18 GGSN IPv6 address value: IPv6 Address. SGSN IPv6 address is Octet String type. 17 – 3GPP-IPv6-DNS-Servers 3GPP Type: 17 Length: m = n × 16 + 2; n 1 and n 15; k = m-15 IPv6 DNS Server value: IPv6 Address. IPv6 DNS Server address is Octet String type. The 3GPP- IPv6-DNS-Servers sub-attribute provides a list of one or more (‘n’) IPv6 addresses of Domain Name Server (DNS) servers for an APN. The DNS servers are listed in the order of preference for use by a client resolver, i.e. the first is ‘Primary DNS Server’, the second is ‘Secondary DNS Server’ etc. The sub-attribute may be included in Access-Accept packets. 18 – 3GPP-SGSN MCC-MNC 3GPP Type: 18 Length: n shall be 7 or 8 octets depending on the presence of MNC digit 3 SGSN MCC-MNC address value: Text type. This is the UTF-8 encoding of the MCC-MNC values extracted from the RAI or from the Serving Network. In accordance with 3GPP TS 23.003[ Numbering, addressing and identification ]  [40] and 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24] (for the GGSN and P-GW connected to a Gn/Gp SGSN) and 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81] (for the P-GW in GTP/PMIP S5/S8, S2a, S2b), the MCC shall be 3 digits and the MNC shall be either 2 or 3 digits. There shall be no padding characters between the MCC and MNC. 19 – 3GPP-Teardown Indicator 3GPP Type: 19 Length: 3 Octet 3 is Octet String type. For GGSN, if the value of TI is set to "1", then all PDP contexts that share the same user session with the PDP context identified by the Acct-Session-Id shall be torn down. Only the PDP context identified by the Acct-Session-Id shall be torn down if the value of TI is "0" (see subclause 16.3.4 "AAA-Initiated PDP context termination"), or if TI is missing. For P-GW, the usage of Teardown-Indicator is as follows (see subclause 16.3a.3 for more deails): - if the value of TI is set to "1", then all IP-CAN bearers that share the same user session with the IP-CAN bearer identified by the Acct-Session-Id shall be torn down. - if the value of TI is "0", or if TI is missing, only the IP-CAN bearer identified by the Acct-Session-Id shall be torn down. If the Acct-Session-Id identifies the default bearer, the P-GW shall tear down all the IP-CAN bearers that share the same user session identified by the Acct-Session-Id. 20 -3GGP- IMEISV 3GPP Type: 20 IMEISV value: Text type. A GGSN receives IMEI(SV) that is encoded according to 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24]. A P-GW receives IMEI(SV) that is encoded in ME Identity IE specified in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. The GGSN or the P-GW converts IMEI(SV) into a sequence of UTF-8 characters.IMEI(SV) shall be encoded as defined in 3GPP TS 23.003[ Numbering, addressing and identification ]  [40]. 14 n 16 n = 16 for IMEISV, where TAC = 8 digits SNR = 6 digits & SVN = 2 digits; n = 15 for IMEI, where TAC = 8 digits SNR = 6 digits & Spare = 1 digit; n = 14 for IMEI, where TAC = 8 digits SNR = 6 digits (Spare digit is not sent) 21 – 3GPP-RAT-Type 3GPP Type: 21 The 3GPP-RAT-Type sub-attribute indicates which Radio Access Technology is currently serving the UE. RAT field: Radio Access Technology type values. RAT field is Octet String type. For GGSN, it shall be coded as specified in 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24]. For P-GW, it shall be coded as follows: 0-9 As specified in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81] 10-50 Spare for future use 51 NR 52 NR in unlicensed bands 53 Trusted WLAN 54 Trusted Non-3GPP access 55 Wireline access 56 Wireline Cable access 57 Wireline BBF access 58 NR RedCap 59-100 Spare for future use 101 IEEE 802.16e 102 3GPP2 eHRPD 103 3GPP2 HRPD 104 3GPP2 1xRTT 105 3GPP2 UMB 106-255 Spare for future use The value 51-58 does not apply for the present specification. For specifications referencing the present RADIUS VSA, the value shall only apply if it is explicitely endorsed within the referencing specification. 22 – 3GPP-User-Location-Info 3GPP Type: 22 Length=m, where m depends on the Geographic Location Type For example, m= 10 in the CGI and SAI types. Geographic Location Type field is used to convey what type of location information is present in the ‘Geographic Location’ field. For GGSN, the Geographic Location Type values and coding are as defined in 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24]. For P-GW, the Geographic Location Type values and coding are defined as follows: 0 CGI 1 SAI 2 RAI 3-127 Spare for future use 128 TAI 129 ECGI 130 TAI and ECGI 131 eNodeB ID 132 TAI and eNodeB ID 133 extended eNodeB ID 134 TAI and extended eNodeB ID 135 NCGI 136 5GS TAI 137 5GS TAI and NCGI 138 NG-RAN Node ID 139 5GS TAI and NG-RAN Node ID 140-255 Spare for future use Geographic Location field is used to convey the actual geographic information as indicated in the Geographic Location Type. For GGSN, the coding of this field is as specified in 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24]. For P-GW, the coding of this field shall be as follows: - If the Geographic Location Type has a value indicating CGI, SAI, RAI, TAI or ECGI (i.e. the value field is equal to 0, 1, 2, 128, or 129), the coding of the Geographic Location field shall be as per clauses 8.21.1 to 8.21.5, respectively, in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81], - If the Geographic Location Type has a value indicating TAI and ECGI (i.e. the value field is equal to 130), in Geographic Location field both TAI and ECGI shall be encoded one after another as per clauses 8.21.4 and 8.21.5 in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. TAI information shall be encoded first starting with Octet 4 of 3GPP-User-Location-Info. - If the Geographic Location Type has a value indicating eNodeB ID (i.e. the value field is equal to 131), the coding of the Geographic Location field shall be as defined in subclause 8.21.7 in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. - If the Geographic Location Type has a value indicating TAI and eNodeB ID (i.e. the value field is equal to 132), in Geographic Location field both TAI and eNodeB ID shall be encoded one after another as per subclauses 8.21.4 and 8.21.7 in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. - If the Geographic Location Type has a value indicating extended eNodeB ID (i.e. the value field is equal to 133), the coding of the Geographic Location field shall be as defined in subclause 8.21.8 in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. - If the Geographic Location Type has a value indicating TAI and extended eNodeB ID (i.e. the value field is equal to 134), in Geographic Location field both TAI and extended eNodeB ID shall be encoded one after another as per subclauses 8.21.4 and 8.21.8 in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. NOTE 1: The Geographic Location Type values "TAI and ECGI" is used only in 5GC-EPC interworking e.g in 3GPP TS 29.214[ Policy and charging control over Rx reference point ]  [121]. The Geographic Location Type values "NCGI", "5GS TAI", "5GS TAI and NCGI", "NG-RAN Node ID" and "5GS TAI and NG-RAN Node ID" are only introduced to extend the 3GPP-User-Location-Info AVP derived from the 3GPP Vendor-Specific RADIUS attributes and shall not apply for the present specification. For specifications referencing the present data type, those values shall only apply if they are explicitely endorsed within the referencing specification. For those values, the Geographic Location field shall be coded as follows: NOTE 2: The Geographic Location Type values "NCGI", "NG-RAN Node ID" and "5GS TAI and NG-RAN Node ID" are not used in 5G till current releases, while the value "5GS TAI and NCGI" is used only in 5GC e.g in 3GPP TS 29.214[ Policy and charging control over Rx reference point ]  [121]. - If the Geographic Location Type has a value indicating NCGI (i.e. the value field is equal to 135), the coding of the Geographic Location field shall be as per subclause 9.3.1.7 in 3GPP TS 38.413[ NG-RAN; NG Application Protocol (NGAP) ]  [115]. Spare bits shall be placed just after the PLMN Identity and shall be set to zero. - If the Geographic Location Type has a value indicating 5GS TAI (i.e. the value field is equal to 136), the coding of the Geographic Location field shall be as per subclause 9.3.3.11 in 3GPP TS 38.413[ NG-RAN; NG Application Protocol (NGAP) ]  [115]. - If the Geographic Location Type has a value indicating 5GS TAI and NCGI (i.e. the value field is equal to 137), in Geographic Location field both 5GS TAI and NCGI shall be encoded one after another as per subclause 9.3.3.11 in 3GPP TS 38.413[ NG-RAN; NG Application Protocol (NGAP) ]  [115] and per subclause 9.3.1.7 in 3GPP TS 38.413[ NG-RAN; NG Application Protocol (NGAP) ]  [115]. Spare bits for the NCGI shall be placed just after the PLMN Identity and shall be set to zero. - If the Geographic Location Type has a value indicating NG-RAN Node ID (i.e. the value field is equal to 138), the first octet of the Geographic Location field shall be length of the NG-RAN Node ID in unit of bit, and it also indicates the type of NG-RAN node as follows: 1. length value = 18, short ng-eNodeB ID 2. length value = 20, ng-eNodeB ID 3. length value = 21, long ng-eNodeB ID 4. length value = 22-32, gNodeB ID Starting from the second octet of the Geographic Location field, the coding shall be as per subclause 9.3.1.5 in 3GPP TS 38.413[ NG-RAN; NG Application Protocol (NGAP) ]  [115], i.e. first PLMN information then NG-RAN Node ID. Spare bits shall be set to zero. - If the Geographic Location Type has a value indicating 5GS TAI and NG-RAN Node ID (i.e. the value field is equal to 139), in Geographic Location field both 5GS TAI and NG-RAN Node ID shall be encoded one after another as per subclause 9.3.3.11 in 3GPP TS 38.413[ NG-RAN; NG Application Protocol (NGAP) ]  [115] and as described for NG-RAN Node ID (i.e. the value field is equal to 138). Spare bits shall be set to zero. Geographic Location Type and Geographic Location fields are Octet String type. 23 – 3GPP-MS-TimeZone 3GPP Type: 23 Length=4 The Time Zone field and the Daylight Saving Time fields are used to indicate the offset between universal time and local time in steps of 15 minutes of where the MS/UE currently resides. For GGSN, both fields are coded as specified in 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24] and represented as Octet String type. For, P-GW, both fields are coded as specified in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81] in UE-Time Zone IE and represented as Octet String type. 24 – 3GPP-Camel-Charging-Info 3GPP Type: 24 Length=m m depends on the size of the CAMELInformationPDP IE. The CAMEL Charging Information Container field is used to copy the CAMELInformationPDP IE including Tag and Length from the SGSN’s CDR (S-CDR). The coding of this field is as specified in 3GPP TS 29.060[ General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface ]  [24] and represented as Octet String type. 25 – 3GPP-Packet-Filter 3GPP Type: 25 Length: n Each 3GPP-Packet-Filter sub-attribute contains only one packet filter. Multiple 3GPP-Packet-Filter sub-attributes can be sent in one RADIUS Accounting Request message. When the GGSN/P-GW sends the packet filter information, the RADIUS message shall carry ALL (or none) of the packet filters. Packet Filter Value: Direction Value: 00000000: Downlink 00000001: Uplink 00000010: Bidirectional The packet filter content is represented as Octet String type. The packet filter content is defined below: NOTE 3: The sending of this sub-attribute is not recommended for an inter-operator interface for security reason. 26 – 3GPP-Negotiated-DSCP 3GPP Type: 26 Length: 3 Negotiated DSCP value: Octet String DSCP value: Octet String type. 27 – 3GPP-Allocate-IP-Type 3GPP Type: 27 If multiple Access-Request signalling towards a AAA server is needed during the lifetime of a PDN connection (e.g. for PDN/PDP type IPv4v6 and deferred IPv4 addressing), this sub-attribute shall be included in the Access-Request message to indicate how the AAA server needs to treat the request. The P-GW/GGSN may also use this sub-attribute if the AAA server is configured to allocate both IPv4 address and IPv6 prefix but the P-GW/GGSN requires assignment of only one IP type or both IP types (e.g. because the UE supports single IP stack and it has requested PDN/PDP type of IPv4 or IPv6). If this sub-attribute does not exist in Access-Request from P-GW/GGSN to the AAA server, the IP address allocation shall be based on the IP address allocation policy configured in the the AAA server. IP Type field: It is encoded in Octet String type and the following decimal equivalent values apply: 0 Do not allocate IPv4 address or IPv6 prefix. The typical use case is for PDN/PDP type IPv4v6 and deferred IPv4 addressing and only IPv4 address is allocated by the AAA server but IPv6 prefix is allocated by some other means, e.g. local pool in the P-GW/GGSN. The Access-Request from the P-GW/GGSN to the AAA server during the UE’s initial access to the network shall set the value of this sub-attribute to 0. 1 Allocate IPv4 address The typical use case is for PDN/PDP type IPv4v6 and deferred IPv4 addressing and the IPv4 address (and/or IPv6 prefix) is allocated by the AAA server. The Access-Request from the P-GW/GGSN to the AAA server when the P-GW/GGSN receives UE-initiated IPv4 address allocation signalling (e.g. DHCPv4) after UE’s successful initial access to the PDN shall set the value of this attribute to 1. In this case, if the AAA server had allocated an IPv6 prefix earlier during UE’s initial access to the network, same IPv6 prefix shall be kept allocated. 2 Allocate IPv6 prefix The typical use case is for PDN/PDP type IPv4v6 and deferred IPv4 addressing and both IPv4 address and IPv6 prefix are allocated by the AAA server. The Access-Request from the P-GW/GGSN to the AAA server during the UE’s initial access to the network shall set the value of this sub-attribute to 2. 3 Allocate IPv4 address and IPv6 prefix Currently there is no use case identified to use this specific value for PDN/PDP tpe IPv4v6 and deferred IPv4 addressing. One potential use case is for PDN/PDP type IPv4v6 and non-deferred IPv4 addressing and both IPv4 address and IPv6 prefix are allocated by the AAA server. The Accesss-Request from the P-GW/GGSN to the AAA server may use this value to have both IPv4 address and IPv6 prefix assigned to the UE. 4-255 Reserved for future use 28 – External-Identifier 3GPP Type: 28 n 72 / 253 (n 72 octets shall be supported, n 253 octets recommended, refer to 3GPP TS 29.336[ Home Subscriber Server (HSS) diameter interfaces for interworking with packet data networks and applications ]  [101] and IETF RFC 4282 [102]) Length: m 74 / 255 (m 74 octets shall be supported, m 255 octets recommended, refer to 3GPP TS 29.336[ Home Subscriber Server (HSS) diameter interfaces for interworking with packet data networks and applications ]  [101] and IETF RFC 4282 [102]) External-Identifier value: Text type. A globally unique identifier of a UE used towards external server instead of IMSI and MSISDN, refer to 3GPP TS 23.682[ Architecture enhancements to facilitate communications with packet data networks and applications ]  [100] and 3GPP TS 23.003[ Numbering, addressing and identification ]  [40]. 29 – TWAN-Identifier 3GPP Type: 29 Length=m, where m depends on the type of location that is present as described in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. TWAN Identifier field is used to convey the location information in a Trusted WLAN Access Network (TWAN). The coding of this field shall be the same as for the GTP TWAN Identifier starting with Octet 5, as per clause 8.100 in 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. TWAN Identifier field is Octet String type. 30 – 3GPP-User-Location-Info-Time 3GPP Type: 30 Length=6 User Location Info time field is Unsigned32 type, it indicates the NTP time at which the UE was last known to be in the location which is reported during bearer deactivation or UE detach procedure. 31 – 3GPP-Secondary-RAT-Usage 3GPP Type: 31 Length=28 Multiple 3GPP-Secondary-RAT-Usage sub-attributes can be sent in one RADIUS Accounting Request Interim-Update/STOP message. Octet 3 is Octet String type. The encoding of RAT field (bit 1 to bit 4) is: 0 – NR 1 – NR-U 2 – EUTRA 3 – EUTRA-U 4 – Unlicensed Spectrum 5-15 – spare, reserved for future use SESS (bit 5): If it is set to 1, it indicates the secondary RAT usage of the PDU session. The values 1, 2 and 3 of RAT field and SESS field do not apply for the present specification. For specifications referencing the present RADIUS VSA, they shall only apply if it is explicitely endorsed within the referencing specification. Bit 6 to bit 8 of octet 3 is spare and reserved for future use. The encoding of octets 4 to 28 is specified in Secondary RAT Usage Data Report IE of 3GPP TS 29.274[ 3GPP Evolved Packet System (EPS); Evolved General Packet Radio Service (GPRS) Tunnelling Protocol for Control plane (GTPv2-C); Stage 3 ]  [81]. 32 – 3GPP-UE-Local-IP-Address 3GPP Type: 32 Length=7 or 19 IP Type field: It is encoded in Octet String type and the following decimal equivalent values apply: 1 UE local IPv4 address 2 UE local IPv6 address UE local IP address field: It is encoded in Octet String type, with 4 octets when the IP Type is UE local IPv4 address, or with 16 octets when the IP Type is UE local IPv6 address. 33 – 3GPP-UE-Source-Port 3GPP Type: 33 Length=5 Source Port Type field: It is encoded in Octet String type and the following decimal equivalent values apply: 1 UDP Source Port 2 TCP Source Port Port Number field: It is encoded in Octet String type, with bit 8 of Octet 4 represents the most significant bit of the port number and bit 1 of Octet 5 represents the least significant bit.