7.1 Diameter AVPs

32.2993GPPCharging managementDiameter charging applicationsRelease 17Telecommunication managementTS

7.1.0 General

The use of the Attribute Value Pairs (AVPs) that are defined in the Diameter Protocol is specified in clause 6.2 for offline charging and in clause 6.4 for online charging. The information is summarized in the table 7.1.0.1 in alphabetical order. Detailed specification of some of these AVPs is available after the table and for the others can be found from RFC 6733 [401], RFC 4006 [402] and RFC 4005 [407].

Those Diameter AVPs that are used are marked "M", "OM" or "Oc" in the following table.
This implies that their content can be used by the CDF for offline and by the OCF for online charging purposes.
Those Diameter AVPs that are not used are marked "-" in table 7.1.0.1.

Table 7.1.0.1: Use Of IETF Diameter AVPs

AVP Name

AVP

Code

Used in

Value

Type

AVP Flag rules

ACR

ACA

CCR

CCA

Must

May

Should

not

Must

not

Accounting-Input-Octets

363

OC

Unsigned64

M

V

Accounting-Output-Octets

364

OC

Unsigned64

M

V

Accounting-Realtime-Required

483

Enumerated

Accounting-Record-Number

485

M

M

Unsigned32

M

V

Accounting-Record-Type

480

M

M

Enumerated

M

V

Accounting-Sub-Session-Id

287

Unsigned64

Acct-Application-Id

259

OC

OC

Unsigned32

M

V

Acct-Interim-Interval

85

OC

OC

Unsigned32

M

V

Acct-Multi-Session-Id

50

Unsigned32

Acct-Session-Id

44

OctetString

Auth-Application-Id

258

M

M

Unsigned32

M

V

AVP

*

Grouped

Called-Station-Id

30

OC

OC

UTF8String

M

V

CC-Correlation-Id

411

OC

OctetString

M

V

CC-Input-Octets

412

OC

OC

Unsigned64

M

V

CC-Money

413

Grouped

CC-Output-Octets

414

OC

OC

Unsigned64

M

V

CC-Request-Number

415

M

M

Unsigned32

M

V

CC-Request-Type

416

M

M

Enumerated

M

V

CC-Service-Specific-Units

417

OC

OC

Unsigned64

M

V

CC-Session-Failover

418

OC

Enumerated

M

V

CC-Sub-Session-Id

419

Unsigned64

CC-Time

420

OC

OC

Unsigned32

M

V

CC-Total-Octets

421

OC

OC

Unsigned64

M

V

CC-Unit-Type

454

M

Enumerated

M

V

Check-Balance-Result

422

Enumerated

Cost-Information

423

OC

Grouped

M

V

Cost-Unit

424

OC

UTF8String

M

V

Credit-Control

426

Enumerated

Credit-Control-Failure-Handling

427

OC

Enumerated

M

V

Currency-Code

425

M

Unsigned32

M

V

Destination-Host

293

OC

OC

DiamIdent

M

V

Destination-Realm

283

M

M

DiamIdent

M

V

Direct-Debiting-Failure-Handling

428

OC

Enumerated

M

V

Error-Message

281

UTF8String

Error-Reporting-Host

294

OC

DiamIdent

V,M

Event-Timestamp

55

OC

OC

OC

Time

M

V

Experimental-Result

297

OC

OC

Grouped

V,M

Experimental-Result-Code

298

OC

OC

Unsigned32

V,M

Exponent

429

OC

Integer32

M

V

Failed-AVP

279

OC

Grouped

M

V

Filter-Id

11

OC

UTF8String

M

V

Final-Unit-Action

449

OC

Enumerated

M

V

Final-Unit-Indication

430

OC

Grouped

M

V

Granted-Service-Unit

431

OC

Grouped

M

V

G-S-U-Pool-Identifier

453

OC

Unsigned32

M

V

G-S-U-Pool-Reference

457

OC

Grouped

M

V

Multiple-Services-Credit-Control

456

OC

OC

Grouped

M

V

Multiple-Services-Indicator

455

OM

Enumerated

M

V

OC-Feature-Vector

622

OC

OC

Unsigned64

V,M

OC-OLR

623

OC

Grouped

V,M

OC-Reduction-Percentage

627

OC

Unsigned32

V,M

OC-Report-Type

626

OC

Enumerated

V,M

OC-Sequence-Number

624

OC

Unsigned64

V,M

OC-Supported-Features

621

OC

OC

Grouped

V,M

OC-Validity-Duration

625

OC

Unsigned32

V,M

Origin-Host

264

M

M

M

M

DiamIdent

M

V

Origin-Realm

296

M

M

M

M

DiamIdent

M

V

Origin-State-Id

278

OC

OC

OC

Unsigned32

M

V

Proxy-Info

284

OC

OC

OC

OC

Grouped

M

V

Proxy-Host

280

M

M

M

M

DiamIdent

M

V

Proxy-State

33

M

M

M

M

OctetString

M

V

Rating-Group

432

OC

OC

OC

Unsigned32

M

V

Redirect-Address-Type

433

M

Enumerated

M

V

Redirect-Host

292

OC

DiamURI

M

V

Redirect-Host-Usage

261

OC

Enumerated

M

V

Redirect-Max-Cache-Time

262

OC

Unsigned32

M

V

Redirect-Server

434

OC

Grouped

M

V

Redirect-Server-Address

435

M

UTF8String

M

V

Requested-Action

436

OC

Enumerated

M

V

Requested-Service-Unit

437

OC

Grouped

M

V

Restriction-Filter-Rule

438

OC

IPFilterRule

M

V

Result-Code

268

M

M

Unsigned32

M

V

Route-Record

282

OC

OC

OC

DiamIdent

M

V

Service-Context-Id

461

OM

M

UTF8String

M

V

Service-Identifier

439

OC

OC

OC

Unsigned32

M

V

Service-Parameter-Info

440

Grouped

Service-Parameter-Type

441

Unsigned32

Service-Parameter-Value

442

OctetString

Session-Id

263

M

M

M

M

UTF8String

M

V

Subscription-Id

443

OC

OM

Grouped

M

V

Subscription-Id-Data

444

M

M

UTF8String

M

V

Subscription-Id-Type

450

M

M

Enumerated

M

V

Tariff-Change-Usage

452

OC

Enumerated

M

V

Tariff-Time-Change

451

OC

Time

M

V

Termination-Cause

295

OC

Enumerated

M

V

Unit-Value

445

M

Grouped

M

V

Used-Service-Unit

446

OC

Grouped

M

V

User-Equipment-Info

458

OC

OC

Grouped

M

V

User-Equipment-Info-Type

459

OM

M

Enumerated

M

V

User-Equipment-Info-Value

460

OM

M

OctetString

M

V

User-Name

1

OC

OC

OC

UTF8String

M

V

Value-Digits

447

M

Integer64

M

V

Validity-Time

448

OC

Unsigned32

M

V

Vendor-Id

266

Unsigned32

Vendor-Specific-Application-Id

260

Grouped

NOTE 1: Result-Code AVP is defined in Diameter Base Protocol in RFC 6733 [401]. Values which are used in offline and online charging applications are defined below.

NOTE 2: Experimental-Result AVP is defined in Diameter Base Protocol in RFC 6733 [401]. Values which are used in offline and online charging applications are defined below.

7.1.1 Accounting-Input-Octets AVP

The Accounting-Input-Octets AVP (AVP code 363) contains the number of octets transmitted during the data container recording interval, reflecting the volume counts for uplink traffic for a data flow.

7.1.2 Void

7.1.3 Accounting-Output-Octets AVP

The Accounting-Output-Octets AVP (AVP code 364) contains the number of octets transmitted during the data container recording interval, reflecting the volume count for downlink traffic for a data flow.

7.1.4 Void

7.1.5 Acct-Application-Id AVP

The Acct-Application-Id AVP (AVP code 259) shall contain the value of 3 as defined in RFC 6733 [401] according TS 29.230 [206].

7.1.6 Auth-Application-Id AVP

The Auth-Application-Id AVP (AVP code 258) shall contain the value of 4 as defined in RFC 4006 [402] according TS 29.230 [206].

7.1.7 Called-Station-Id AVP

The Called-Station-Id AVP (AVP code 30) shall contain the Access Point Name (APN) the user is connected to.

7.1.8 Event-Timestamp AVP

The Event-Timestamp AVP (AVP code 55) shall contain the time when the chargeable event is received in the CTF.

7.1.8A Experimental-Result AVP

The Experimental-Result AVP (AVP code 297) defined in RFC 6733 [401], shall contain the values used in offline and online charging applications. The Vendor-ID AVP shall contain 3GPP (10415), and following values are used for Experimental-Result-Code:

Permanent Failures (5xxx):

5011 DIAMETER_ERROR_FEATURE_UNSUPPORTED

At least one feature included in the request sent by the CTF is not supported by the CDF or OCF. This value is defined in TS 29.229 [204]

7.1.9 Multiple-Services-Credit-Control AVP

The Multiple-Services-Credit-Control AVP (AVP code 456) is of type grouped as specified in RFC 4006 [402]. It contains additional 3GPP specific charging parameters.

It has the following ABNF grammar:

<Multiple-Services-Credit-Control> ::= < AVP Header: 456 >

[ Granted-Service-Unit ]
[ Requested-Service-Unit ]
* [ Used-Service-Unit ]
[ Tariff-Change-Usage ]
* [ Service-Identifier ]
[ Rating-Group ]
* [ G-S-U-Pool-Reference ]
[ Validity-Time ]
[ Result-Code ]
[ Final-Unit-Indication ]
[ Time-Quota-Threshold ]
[ Volume-Quota-Threshold ]
[ Unit-Quota-Threshold ]
[ Quota-Holding-Time ]
[ Quota-Consumption-Time ]
* [ Reporting-Reason ]
[ Trigger ]
[ PS-Furnish-Charging-Information ]

[ Refund-Information ]

* [ AF-Correlation-Information]

* [ Envelope ]
[ Envelope-Reporting ]
[ Time-Quota-Mechanism ]
* [ Service-Specific-Info ]

[ QoS-Information ]

* [ Announcement-Information ]

[ 3GPP-RAT-Type ]

[ Related-Trigger ]
* [ AVP ]

7.1.10 Rating-Group AVP

The Rating-Group AVP (AVP code 432), is defined in RFC 4006 [402]. It contains the charging key (defined in TS 23.203 [218]). Each quota allocated to a Diameter CC session has a unique Rating Group value as specified in RFC 4006 [402].

7.1.11 Result-Code AVP

This subclause defines new Result-Code AVP (AVP code 268) values that shall be supported by all Diameter implementations that conform to the present document. The Result-Code AVP operates as described in RFC 6733 [401] and RFC 4006 [402]. The following result code descriptions are examples of the possible uses for the code:

Transient Failures (4xxx):

4010 DIAMETER_END_USER_SERVICE_DENIED

The OCF denies the service request due to service restrictions (e.g. terminate rating group) or limitations related to the end-user, for example the end-user’s account could not cover the requested service.

4011 DIAMETER_CREDIT_CONTROL_NOT_APPLICABLE

The OCF determines that the service can be granted to the end user but no further Credit-Control
needed for the service (e.g. service is free of charge or is treated for offline charging).

4012 DIAMETER_CREDIT_LIMIT_REACHED

The OCF denies the service request since the end- user’s account could not cover the requested service. If the CCR contained used-service-units they are deducted, if possible.

Permanent Failures (5xxx):

5003 DIAMETER_AUTHORIZATION_REJECTED

The OCF denies the service request in order to terminate the service for which credit is requested. For example this error code is used to inform IP CAN bearer has to be terminated in the CCR message or to inform blocklist the rating group in the Multiple-Service-Credit-Control AVP.

5030 DIAMETER_USER_UNKNOWN

The specified end user could not be found in the OCF.

5031 DIAMETER_RATING_FAILED

This error code is used to inform the CTF that the OCF cannot rate the service request due to insufficient rating input, incorrect AVP combination or due to an AVP or an AVP value that is not recognized or supported in the rating. For Flow Based Charging this error code is used if the Rating group is not recognized. The Failed-AVP AVP MUST be included and contain a copy of the entire AVP(s) that could not be processed successfully or an example of the missing AVP complete with the Vendor-Id if applicable. The value field of the missing AVP should be of correct minimum length and contain zeroes.

7.1.12 Service-Context-Id AVP

The Service-Context-Id AVP is defined in RFC 4006 [402]. It is of type UTF8String and contains a unique identifier of the Diameter Credit-Control service specific document that applies to the request.
This is an identifier allocated by the service provider/operator, by the service element manufacturer or by a standardization body and MUST uniquely identify a given Diameter Credit-Control service specific document. For offline charging, this identifies the service specific document (‘middle tier’ TS) on which associated CDRs should based. The format of the Service-Context-Id is:

"extensions".MNC.MCC."Release"."service-context" "@" "domain"

The 3GPP specific values for "service-context" "@" "domain" are:

32251@3gpp.org for PS charging

32253@3gpp.org for CPDT charging

32254@3gpp.org for Exposure function API charging

32260@3gpp.org for IMS charging

32270@3gpp.org for MMS service charging

32271@3gpp.org for LCS service charging

32272@3gpp.org for PoC service charging

32273@3gpp.org for MBMS service charging

32274@3gpp.org for SMS service charging

32275@3gpp.org for MMTel service charging

32276@3gpp.org for VCS charging

32277@3gpp.org for ProSe charging

32278@3gpp.org for Monitoring Event charging

32280@3gpp.org for AoC Service Information

32296@3gpp.org for ABMF Rc information

The "Release" indicates the 3GPP Release the service specific document is based upon e.g. 12 for Release 12.

As a minimum, "Release"."service-context" "@" "domain" shall be used. If the minimum is used all operator provisionable parameters (Oc and Om) are optional.

The MNC.MCC identifies the operator implementing the service specific document, which is used to determine the specific requirements for the operator configurable parameters.

The "extensions" is operator specific information to any extensions in a service specific document.

7.1.13 Service-Identifier AVP

The Service-Identifier AVP (AVP code 439), is defined in RFC 4006 [402]. For further details, please refer the middle-tier specification.

7.1.14 Used-Service-Unit AVP

The Used-Service-Unit AVP (AVP code 446) is of type grouped as specified in RFC 4006 [402]. It contains additional 3GPP specific charging parameters.

It has the following ABNF grammar:

<Used-Service-Unit> ::= < AVP Header: 446 >

[ Reporting-Reason ]

[ Tariff-Change-Usage ]

[ CC-Time ]

[ CC-Money ]

[ CC-Total-Octets ]

[ CC-Input-Octets ]

[ CC-Output-Octets ]

[ CC-Service-Specific-Units ]

*[ Event-Charging-TimeStamp ]

*[ AVP ]

7.1.15 User-Name AVP

The User-Name AVP (AVP code 1) contains the user name in the format of a NAI according to RFC 6733 [401].

7.1.16 Vendor-Id AVP

The Vendor-Id AVP (AVP code 266), as part of the grouped Vendor-Specific-Application-Id AVP, shall contain the value of 10415, which is the IANA registered value for ‘3GPP’ in TS 29.230 [206].

7.1.17 User-Equipment-Info AVP

The User-Equipment-Info  AVP (AVP code 458) is of type grouped and contains the identity and capability of the terminal the subscriber is using for the connection to network according to IETF RFC 4006 [402] with the following ABNF grammar:

User-Equipment-Info ::= < AVP Header: 458 >

{ User-Equipment-Info-Type }

{ User-Equipment-Info-Value }

For PS charging, when the User-Equipment-Info-Type AVP (AVP code 459) is set to IMEISV (0), the value within the User-Equipment-Info-Value AVP (AVP code 460) is of type OctetString and shall be a UTF-8 encoded hexadecimal. The composition of the IMEISV follows the definition in TS 23.003 [224] . If only IMEI is received a filler ‘F’ is used to make it 16 digits.

For IMS charging, when the User-Equipment-Info-Type AVP (AVP code 459) is set to IMEISV (0), the value within the User-Equipment-Info-Value AVP (AVP code 460) is of type OctetString and shall be a UTF-8 encoded decimal. The composition of the IMEISV follows the definition in TS 23.003 [224]. If only IMEI is received the number of digits are truncated to 15.