Overview

The Evolved Packet Core (EPC) network is evolving and moving toward Control User Plane Separation (CUPS) based architecture where User-Plane and Control-Plane are separate node for P-GW, S-GW, and TDF products. The User Plane and Control Plane combined together provide functionality of a node for other elements in the EPC network. However, keeping them separate has numerous advantages from the network point of view – support different scaling for Control-Plane and User-Plane, support more capacity on per session level in User-Plane, and so on.

This chapter highlights high-level details, call flows, and configurations related to the Sx Interface implementation for P-GW, S-GW, and SAEGW products.

Product Description

Sx is the interface between the Control-Plane and User-Plane in a split P-GW, S-GW, and TDF architecture in an Evolved Packet Core (EPC) that provides Packet Forwarding Control Protocol (PFCP) service. One of the main tasks of the Sx interface is to enable the Control-Plane function to instruct the User-Plane function about how to forward user data traffic.

How It Works

The following section provides a brief overview of the Sx service works.

Architecture

The following illustration provides a reference model in the case of separation between Control-Plane and User-Plane.

This image is not available in preview/cisco.com


Note

  • The -C or -U suffix appended to S2a, S2b, S5 and S8 existing reference points only indicate the Control-Plane and User-Plane components of those interfaces.

  • The architecture only depicts the case when the Control-Plane and User-Plane functions of all S-GW, P-GW and TDF nodes are split. It also supports scenarios where the Control-Plane and User-Plane function of only one of these nodes is split while the Control-Plane and User-Plane function of the other interfacing node is not split. For example, it supports a scenario where the Control-Plane and User-Plane of the P-GW is split while that of the S-GW is not split. This split architecture of a node does not put any architectural requirements on the peer nodes with which it interfaces.

  • TDF is an optional functional entity.


The following sections describe the services supported on the Sx Interface.

Sx Service

The Sx Service provides an interface mentioned as the following reference points:

  • Sxa: Reference point between SGW-C and SGW-U.

  • Sxb: Reference point between PGW-C and PGW-U.

  • Sxc: Reference point between Traffic Detection Function-C (TDF-C) and TDF-U.

The Sx service is agnostic of the interface it supports. A single Sx service instance is capable of running on Sxa, Sxb, and Sxb interfaces. The Sx service runs in two different modes:

  • Sx-Control instance

  • Sx-Data instance

The Sx service is associated with the SAEGW service at the Control-Plane and User-Plane service at the User-Plane. There is one-to-one mapping of the Sx service with the Control-Plane and Data Plane.

The association of the SAEGW service occurs as follows:

saegw-service saegw-service
      associate sgw-service sgw-service
      associate pgw-service pgw-service
      associate gtpu-service control_gtpu up-tunnel
      associate sx-service sxc

The association of the User-Plane service occurs as follows:

user-plane-service user-plane-service
      associate gtpu-service sx-gtpu-service pgw-ingress
      associate gtpu-service sx-sgw_ingress_gtpu sgw-ingress
      associate gtpu-service sx-sgw_egress_gtpu sgw-egress
      associate gtpu-service control_gtpu cp-tunnel
      associate sx-service sxu

At the Control-Plane for SAEGW service (legacy SAEGW Service), CUPS-enabled flag in EGTPC service determines whether SAEGW is CUPS enabled or not. If SAEGW service is CUPS enabled, then Sx service is a mandatory parameter for SAEGW service to start. Only having association at the SAEGW service does not make Sx a mandatory parameter for SAEGW service.

If Sx service is a mandatory parameter (because of CUPS-enabled flag), then Sx service stop and Sx IP address brings down the SAEGW service.

For information about configuring the Sx Service, see the “Configuring Sx Service” section.

Sx-u Interface

This section explains the interaction between the Sx-u Interface, User-Plane-service, and SAEGW-service.

Sx-u is the User-Plane interface over the Sxa and Sxb reference points. The protocol used on the Sx-u Interface is GTP-U. Both IPv4 and IPv6 transport is supported.

At the User-Plane, Sx-u service is a mandatory parameter for User-Plane service to start. Being a mandatory parameter, Sx-u Interface stops and Sx-u IP address brings down the User-Plane service.

The Control-Plane establishes one Sx-u tunnel per function or session as described in the section below.

Sx-u Tunnel per PDN session

Control-Plane establishes one Sx-u tunnel per PDN session for router advertisement and router solicitation messages.

In this scenario, Control-Plane uses the existing Sx tunnel per PDN (created during GTP-C initial attach procedure) for installing Packet Detection Rule (PDR) or Forwarding Action Rule (FAR) related to data forwarding between the Control-Plane and User-Plane functions on the User-Plane.

For information about configuring the Sx-u Interface, see the Configuring Sx-u Interface section.

Sx Demux

The Sx Demux provides session de-multiplexing functionality on the Data plane. One instance of Sx Demux is started per context. When implemented, the Sx Demux supports the following behavior:

  1. Works as Sx Control-Plane Demux when implemented on the Control-Plane and supports handling of Node level messages such as Prime PDF Management Messages.

  2. Works as Sx Data Plane Demux when implemented on the Data Plane and supports:

    • Handling of Session level messages such as Session Establish Request.

    • Handling of Session level messages such as Session Establish Request.

  3. Works as Sx Data Pane Demux performing load balancing of Session Establish Request between all Session Managers.

  4. Supports default PFCP packet receiver port 8805.

The Sx service is associated with SAEGW service at Control-Plane and is associated with User-Plane Service at User-Plane. Sx Demux is initiated when the first Sx service is created with the minimum mandatory parameter in the context.

The Sx Demux functions as follows:

  • When working as Sx Data Demux

    The Session Manager (Data Plane) sends the add session response indicating addition of new session and delete session request on deletion of session on Session Manager. Sx Data Demux maintains session count per session manager.

  • When working as Sx Control Demux

    The Sx Control Demux uses Prime PDF Management Messages (proprietary messages) to communicate static and dynamic rule configuration from Control-Plane to associated Data plane.

Proprietary Sx Messages Information

Proprietary Prime PFD message format
Bits
Octets 8 7 6 5 4 3 2 1
1 Version Spare Spare Spare MP=0 S=0
2 Message Type
47 Prime PFD Management Request
48 Prime PFD Management Response
3 Message Length (1st Octet)
4 Message Length (2nd Octet)
5 Sequence Number (1st Octet)
6 Sequence Number (2nd Octet)
7 Sequence Number (3rd Octet)
8 Spare
Cisco PFD Management Request
Information elements P Condition / Comment IE Length IE ID
Config Action M 1 – Add configuration 1 Byte 202
2 – Delete Configuration
Co-Relation id M unique number which will represent transaction id. 2 Byte 203
During Split buffer message, correlation id will be same so that receiver can combine buffer.
Number of Sub Part O N – Indicates Total number of sub parts 1 Byte 204
Sub Part index O Indicates the part number going into this message. 1 Byte 205
Content TLV M Type – Indicates Rule-Def, Charging Action or Action priority line - 1 Byte 3003 byte
Length – Length of Content - 2 Byte 206
Value – Actual Buffer conent - Max size 3000 Bytes
Cisco PFD Management Response
Information elements P Condition / Comment IE Length IE ID
PFCP Cause M 1 Success 1 byte 19
0 Failure
CoRelation id M Unique number – same as request message. Indicates to sender that this correlation has been received. 2 byte 203
Sub Part Index O Indicates the part number received into this message. 1 byte 205
This will be only present when Split mode is used.
Header information
Proprietary Sx Stats Query Req/Rsp/Ack
Table 1. PFCP Header format for Node level Query Message
Octets 8 7 6 5 4 3 2 1
1 Version Spare Spare Spare MP=0 S=0
2 Message Type
44 Sx Stats Query Request
45 Sx Stats Query Response
46 Sx Stats Query Ack/NAck
3 Message Length (1st Octet)
4 Message Length (2nd Octet)
5 Sequence Number (1st Octet)
6 Sequence Number (2nd Octet)
7 Sequence Number (3rd Octet)
8 Spare
PFCP Header format for Subscriber/Session level Query Message
Octets 8 7 6 5 4 3 2 1
1 Version Spare Spare Spare MP=0 S=1
2 Message Type
44 Sx Stats Query Request
45 Sx Stats Query Response
3 Message Length (1st Octet)
4 Message Length (2nd Octet)
5 Session Endpoint Identifier (1st Octet)
6 Session Endpoint Identifier (2nd Octet)
7 Session Endpoint Identifier (3rd Octet)
8 Session Endpoint Identifier (4th Octet)
9 Session Endpoint Identifier (5th Octet)
10 Session Endpoint Identifier (6th Octet)
11 Session Endpoint Identifier (7th Octet)
12 Session Endpoint Identifier (8th Octet)
13 Sequence Number (1st Octet)
14 Sequence Number (2nd Octet)
15 Sequence Number (3rd Octet)
16 Spare
IEs and Message Formats

Stats reporting framework shall use the messages and IE types as outlined below.

Table 2. Information Elements in Sx Stats Query Request Message
Information elements P Condition / Comment IE Type IE ID
Correlation ID M Unique number, which will represent transaction ID Correlation ID 203
Stats Request C This IE shall be present if the Node Report Type indicates a statistics report request. Stats request 209
Table 3. Information Elements in Sx Stats Query Response Message
Information elements P Condition / Comment IE Type IE ID
PFCP Cause M 1 Success , 0 Failure PFCP Cause
Correlation ID M

Unique number, which will represent transaction ID.

During Split buffer message, Correlation ID will be same for all the messages so that receiver can identify uniquely the request to which the responses correspond.

Correlation ID 203
Stats response C This IE shall be present if the Node Report Type indicates a statistics report response. Stats response 212
Table 4. Information Elements in Sx Stats Query Ack/NAck
Information elements P Condition / Comment IE Type IE ID
Correlation ID M Unique number, which will represent transaction ID. Correlation ID 203
Stats Ack/NAck M This IE shall be present to inform Ack/NAck to peer. Stats response ACK/NACK 213

Sx Interface Private Information Element (IE) List

IE Type: 176
IE Name: PFCP_IE_QER_BURST_SIZE
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 176 (decimal)
3 to 4 Length = n
5 to 8 Uplink burst
9 to 12

Downlink burst

IE Type: 177
IE Name: PFCP_IE_QER_CONFORM_ACTION
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 177 (decimal)
3 to 4 Length = n
5 to 5 Uplink action

Spare: 3

val: 5
6 to 6

Downlink action

Spare: 3

val: 5
7 to 7

Uplink DSCP value

8 to 8

Downlink DSCP value

IE Type: 178
IE Name: PFCP_IE_QER_EXCEED_ACTION
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 178 (decimal)
3 to 4 Length = n
5 to 5 Uplink action

Spare: 3

val: 5
6 to 6

Downlink action

Spare: 3

val: 5
7 to 7

Uplink DSCP value

8 to 8

Downlink DSCP value

IE Type: 192
IE Name: PFCP_IE_SRCIP
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 192 (decimal)
3 to 4 Length = n

5 to 5

Spare: 5

is_mpl:1 is_v4:1 is_v6:1
6 to 9 Ipv4 Address
10 to 25 Ipv6 Address
26 to 26 MPL
IE Type: 198
IE Name: PFCP_IE_EXTENDED_INTR_INFO
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 198 (decimal)
3 to 4 Length = n

5 to 5

Spare: 6

Xid : 1 Poi_id : 1
6 to 9 Poi id Value

10 to 137

Xid Value

IE Type: 199
IE Name: PFCP_IE_SECONDARY_PDR_ID
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 199 (decimal)
3 to 4 Length = n
5 to 6 Secondary PDR ID
IE Type: 200
IE Name: PFCP_IE_EXTENDED_APPLY_ACTIONS
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 200 (decimal)
3 to 4 Length = n
5 to 5 EXTENDED_APPLY_ACTIONS
IE Type: 201
IE Name: PFCP_IE_UPDATE_ADDNL_FORW_PARAMS
IE Format and Encoding Information
Octet 1 and 2 Update Additional Forwarding Parameters IE Type = 201 (decimal)
Octets 3 and 4 Length = n
Information elements P Condition / Comment Appl. IE Type
Sxa Sxb Sxc
Destination Interface C This IE will be provided only if it is changed. X X X Destination Interface
When present, it indicates the destination interface of the outgoing packet.
Outer header removal C This IE will be provided only if it is changed. X X -
Outer Header Creation C This IE will be provided only if it is changed. X X - Outer Header Creation
Outer header marking C This IE will be provided only if it is changed. -
Forwarding Policy C This IE will be provided only if it is changed. - X X Forwarding Policy

Sx Message(s) Using the IE: Update FAR IE within Sx Session Modification Request.

IE Type: 202
IE Name: PFCP_IE_CONFIG_ACTION
IE Format and Encoding Information
Octet 1 and 2 Sub Part Number IE Type = 202 (decimal)
Octets 3 and 4 Length = 1 byte
Information elements P Condition / Comment IE Length IE ID
Config Action M Add or delete the config 1 Byte 202

Note

PFCP_IE_CONFIG_ACTION: This IE is Optional. The Sub Part Index parameter is Mandatory if this IE is present.

If this IE is not present then only Type and Length are available.


IE Type: 203
IE Name: PFCP_IE_CORRELATION_ID
IE Format and Encoding Information
Octet 1 and 2 Correlation ID IE Type = 203 (decimal)
Octets 3 and 4 Length = 2 bytes
Information elements P Condition / Comment IE Length IE ID
Co-Relation ID M Unique number which will represent transaction ID. 2 Bytes 203
During Split buffer message, correlation ID will be the same so that receiver can combine buffer.

Sx Message(s) Using the IE: Sx Prime PFD MGMT Request for configuring the UP with various configurations.

Sx Prime PFD MGMT Response

IE Type: 204
IE Name: PFCP_IE_SUB_PART_NUMBER
IE Format and Encoding Information
Octet 1 and 2 Sub Part Number IE Type = 204 (decimal)
Octets 3 and 4 Length = 1 byte
Information elements P Condition / Comment IE Length IE ID
Number of Sub Parts O N – Indicates total number of sub parts for this config 1 Byte 204

Sx Message(s) Using the IE: Sx Prime PFD MGMT Request for configuring the UP with various configurations.


Note

PFCP_IE_SUB_PART_NUMBER: This IE is Optional. The Sub Part Number Index parameter is Mandatory if this IE is present.

If this IE is not present then only Type and Length are available.


IE Type: 205
IE Name: PFCP_IE_SUB_PART_INDEX
IE Format and Encoding Information
Octet 1 and 2 Sub Part Index IE Type = 205 (decimal)
Octets 3 and 4 Length = 1 byte
Information elements P Condition / Comment IE Length IE ID
Sub Part index O Indicates the sub part number going into this config message. 1 Byte 205

Sx Message(s) Using the IE: Sx Prime PFD MGMT Request for configuring the UP with various configurations.

Sx Prime PFD MGMT Response.


Note

PFCP_IE_SUB_PART_INDEX: This IE is Optional. The Sub Part Index parameter is Mandatory if this IE is present.

If this IE is not present then only Type and Length are available.


IE Type: 206
IE Name: PFCP_IE_CONTENT_TLV
IE Format and Encoding Information
Octet 1 and 2 Content TLV IE Type = 206 (decimal)
Octets 3 and 4 Length = 3003 bytes
Information elements P Condition / Comment IE Length IE ID
Content TLV M Type – Indicates Ruledef, Charging Action,Action priority line, Rule and Route config, Group of Ruledef 3003 bytes 206
Rule in GoR - 1 Byte
Length – Length of Content - 2 Byte
Value – Actual Buffer content - Max size 3000 Bytes

Sx Message(s) Using the IE: Sx Prime PFD MGMT Request for configuring the UP with various configurations.

IE Type: 207
IE Name: PFCP_IE_RBASE_NAME
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 207 (decimal)
3 to 4 Length = n
5 to n Rulebase Name

Note

  • Octets 1-2—Indicates Rulebase IE. Type 202 Reserved

  • Octets 3-4—Indicates the length of rulebase name

  • Octets 5-n—Rulebase name

This IE contains the active Rulebase Name for a subscriber to be communicated to User Plane.


IE Type: 208
IE Name: PFCP_IE_NSH_INFO
IE Format and Encoding Information
Bits

Octets

8 7 6 5 4 3 2 1
1 to 2 Type = 208 (decimal)
3 to 4 Length = n
5 to 5 BitOctet
6 to 6 MSISDN Length
7 to 22 MSISDN
23 to 23 IMSI Length
24 to 40 IMSI
IE Type: 209
IE Name: PFCP_IE_STATS_REQUEST
IE Format and Encoding Information
Information Elements P Condition / Comment IE Type IE ID
Query Params M Query Params describes the type of the query and optionally the name of the entity being queried. Query Params 210
Classifier Params O These are used along with query params for narrowing down the search. Classifier Params 211

This IE is of grouped type and consists of two IEs: Query Params IE and the Classifier Params IE. Multiple instances of Classifier Params IE can be present.

IE Type: 210
IE Name: PFCP_IE_QUERY_PARAMS
IE Format and Encoding Information
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 210 (decimal)
3 to 4 Length = n
7 ENTITY TYPE
8 Spare QUERY TYPE QUERY ALL
9 to 10 Entity Name Length
10 to n Entity Name

Query Params is encoded as follows:

Octet 7: ENTITY TYPE – Numeric Identifier. Indicates the type of entity being queried:

1: Network Instance (APN name) – [PFCP IE ID: 22] 2: Rulebase etc. (Future use) – [PFCP IE ID: 207]

Octet 8 encodes the following flags:

  • QUERY ALL—Indicates whether you are querying one instance of the specified entity or all of them.

  • QUERY TYPE—Indicates whether you are querying individual ENTITY of the given type or we are expecting aggregated node level statistics. It takes values as follows:

    • 0: Bit when unset, indicates individual statistics.

    • 1: Bit when set indicates aggregated statistics.

Valid combinations of the preceding flags are used to realize the use cases.

IE Type: 211
IE Name: PFCP_IE_CLASSIFIER_PARAMS
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 211 (decimal)
3 to 4 Length = n
5 to 6 Classifier Type
7

Spare:6

NC: 1 SC: 1

8

Variable length

Classifier Params IE is encoded as follows:

Octet 5 to Octet 6: Encodes the type of the classifier. It is defined by the context set by entity type.

So, same numeric identifiers may mean different for two different entity types.

Octet 7 onwards is used to encode the Bit Octet 1, which is set either bit 1 or bit 2. Bit 1 represents String Classifier (SC) and Bit 2 is Num classifier (NC) .

Octet 8 onwards is used to encode the classifier content. This content is encoded as an octet string. In case of numeric classifiers, the numbers are appropriately converted into string format and are delivered as is to the application. This process removes the length limitation on type of encoded numeric identifiers.

Octet 8 onwards is used to encode variable length. The Variable length includes 4 bytes--Number of classifiers OR variable length “String Classifier”.

IE Type: 212
IE Name: PFCP_IE_STATS_RESPONSE
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 212 (decimal)
3 to 4 Length = n
5 ENTITY TYPE
6 Part Number
7 Total Number of Parts
8 to n Blob of data

ENTITY TYPE is the same as the one that is received in request. Else, Control Plane rejects the response from the User Plane.

The response from User plane can span across multiple messages depending upon the amount of data that needs to be sent to Control Plane.

  • Message ID identifies one subpart of the response.

  • Total number of messages this response consists of.

Blob of data consists of compressed context specific data. Contents of the same are uncompressed at Control Plane and interpreted as per the identifiers received (ENTITY TYPE). Blob of data is set of (data-len, data), where Length at Octets 3 to 4 includes data-len. In the IE Format and Encoding Information structure it is used to keep track of “data” that gets encoded as “Blob of data”.

IE Type: 213
IE Name: PFCP_IE_STATS_ACK
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 213 (decimal)
3 to 4 Length = n
5 RESPONSE TYPE
6 to n Missing message parts

RESPONSE TYPE is: 0: ACK (success) if all parts of the response are correctly received at CP 1: NACK (failure) - CP responds with the message parts that were not received within the specified time.

Octets 6 specifies missing part numbers at CP in case CP sends out a NAck. When the UP pushes the PfcpStatsResponseAck to CP, Octet 6 assigns a number for each Part numbers. If a specific PfcpStatsResponseAck is missing when the CP sends out a NACK ,then it fills those Part numbers.

Use of NAck mechanism is not envisaged as of now. These will be incorporated in call flows, if required in future.

IE Type: 214
IE Name: PFCP_IE_PACKET_MEASUREMENT
IE Format and Encoding Information

The Packet Measurement IE contains the measured traffic volume in packets. This IE is encoded as follows:

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 214 (decimal)
3 to 4 Length = n
5 Spare DLVOL ULVOL TOVOL
m to (m+7) Total Packets
p to (p+7) Uplink Packets
q to (q+7) Downlink Packets
s to (n+4) These octet(s) is/are present only if explicitly specified

The following flags are coded within Octet 5:

  • Bit 1 – TOVOL— If this bit is set to "1", then the Total Packets field appears. Else, the Total Packets field does not appear.

  • Bit 2 – ULVOL—If this bit is set to "1", then the Uplink Packets field appears. Else, the Uplink Packets field does not appear.

  • Bit 3 – DLVOL—If this bit is set to "1", then the Downlink Packets field appears. Else, the Downlink Packets field does not appear.

  • Bit 4 to bit 8—These are spare bits for future use, and are set to 0.

At least one bit is set to 1. However, you can set many bits to 1.

The Total Packets, Uplink Packets, and Downlink Packets fields are encoded as an Unsigned64 binary integer value. The fields contain the total, uplink, or downlink number of packets respectively.

This is not a mandatory IE for any message.

This IE is available in the following messages between Control Plane and User Plane.

  • Sx Session Modification over SxA, SxB, SxC, SxAB

  • Sx Usage Report Session Deletion Response over SxA, SxB, SxC, SxAB

  • Sx Usage Report Session Report Request over SxA, SxB, SxC, SxAB

IE Type: 215
IE Name: PFCP_IE_EXTENDED_MEASUREMENT_METHOD
IE Format and Encoding Information

A new IE (215 - Extended Measurement Method) is encoded as follows. This IE indicates the method for measuring the usage of network resources.

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 215 (decimal)
3 to 4 Length = n
5 Spare Spare Spare Spare Spare Spare Spare Pkt
6 to (n+4) These octet(s) is/are present only if explicitly specified.

Figure Extended Measurement Method

Octet 5 is encoded as follows:

  • Bit 1 – Pkt (Packet)—When set to 1, this bit indicates a request for measuring the usage of the traffic in packets.

  • Bit 2 to 8—These are spare bits for future use, and are set to 0.


Note

Only one bit is set to 1.


This is not a mandatory IE for any message.

This IE can be available in the following message between Control Plane and User Plane.

  • Sx Session Establishment over SxA, SxB, SxC, SxAB

Similarly, Usage Report from User Plane is enhanced to support the packet information.

IE Type: 216
IE Name: PFCP_IE_RECALCULATE_MEASUREMENT
IE Format and Encoding Information

This private IE has been added to support "Max number of change conditions" trigger for offline charging records, such as Gz and Rf.

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 216 (decimal)
3 to 4 Length = n
5 Spare Spare Spare Spare Spare Spare RCVOL RCDUR
6 to (n+4) These octet(s) is/are present only if explicitly specified.

The following flags are coded within Octet 5:

  • Bit 1 – RCDUR (Re-calculate Duration Measurement)—When set to 1, this flag indicates a request for resetting the Duration Measurement to ‘0’ by the UP function.

  • Bit 2 – RCVOL (Re-calculate Volume Measurement)—When set to 1, this flag indicates a request for resetting the Volume Measurement to ‘0’ by the UP function. Then, the UP function proceeds to repopulate the Volume Measurement. The repopulation is done by aggregating the Volume Measurement of all the URRs that contain Linked URR ID as the URR ID sent in Update URR IE.

  • Bit 3 to 8—Spare bits for future use, and are set to 0.

1. PFCP Session Modification Request

2. PFCP Session Report Response

IE Type: 217
IE Name: PFCP_IE_SUB_INFO
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 217 (decimal)
3 to 4 Length = n
5 to 5 BitOctet
6 to 6 MSISDN Length
7 to 22 MSISDN
23 to 23 IMSI Length
24 to 40 IMSI
41 to 41 IMEI Length
42 to 57 IMEI
58 to 61 Call ID

Octets 5-5: BitOctet. Indicates the available fields.

  • Bit 1—IMSI

  • Bit 2—MSISDN

  • Bit 3—IMEI

  • Bit 4—Call ID

IE Type: 218
IE Name: PFCP_IE_INTR_INFO
IE Format and Encoding Information

The IE is part of Create Dupl Params and Update Duplicate Params IE.

Create Duplicate Params IE can be part of Sx Establishment Request and Sx Session Modify Request.

Update Duplicate Params IE can be part of Sx Session Modify Request.

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 218 (decimal)
3 to 4 Length = n
5 to 5 BitOctet
6 to 9 Intercept ID
10 to 13 Charging ID
14 to 14 Bearer ID
15 to 18 Context name Length
19 to 22 Context name
23 Length of intercept key 1 byte
24 to 29 Intercept Key max 25 bytes, variable length mentioned in above octet
30 to 33 CP IPv4 Address 4 bytes
34 to 50 CP IPv6 address 16 bytes
51 to 51 S8HRBearer ID 1 byte
52 to 55 S8HR GTPC TEID 4 bytes
56 to 56 S8HR IMS media flag 1 byte

Octets 5-5: BitOctet. Indicates the available fields.

  • Bit 1—Intercept ID

  • Bit 2—Charging ID

  • Bit 3—Bearer ID

  • Bit 4—Context name

  • Bit 5—Intercept Key

  • Bit 6—CP IPv4 address

  • Bit 7—CP IPv6 address

  • Bit 8—S8HR Bearer ID, GTPC TEID, and IMS media flag


Note

The offset might change based on presence of an IE or not". For example, if Intercept ID bit 1 is not SET (==0), then Charging ID will be present in bit 6 to 9.


IE Type: 219
IE Name: PFCP_IE_NODE_CAPABILITY
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 219 (decimal)
3 to 4 Length = n
5 to 8 Max Sessions Supported

9 to (n+4)

These octet(s) is/are present only if explicitly specified.

The Max Sessions Supported value are encoded as an Unsigned32 binary integer value.

Max Sessions supported value is the maximum number of sessions that are supported by User Plane for this association with Control Plane.

IE Type: 220
IE Name: PFCP_IE_INNER_PACKET_MARKING
IE Format and Encoding Information

The Inner Packet Marking IE type is encoded as follows. It indicates the DSCP to be used for UL/DL Inner packet marking.

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 220 (decimal)
3 to 4 Length = n
5 to 6 ToS/Traffic Class

The ToS/Traffic Class is encoded on two octets as an OctetString. The first octet contains the DSCP value in the IPv4 Type-of-Service or the IPv6 Traffic-Class field and the second octet contains the ToS/Traffic Class mask field, which is set to "0xFC".

IE Type: 221
IE Name: PFCP_IE_TRANSPORT_LEVEL_MARKING_OPTIONS
IE Format and Encoding Information

TRANSPORT LEVEL MARKING OPTIONS is encoded as follows. It indicates the copy-inner/outer flags for encaps-header marking.

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 221 (decimal)
3 to 4 Length = n
5 to 5 Copy-Inner/Outer Flag

Copy-Inner/Outer flags are encoded on 1 Octet.

IE Type: 222
IE Name: PFCP_IE_PDHIR_OUTER_HEADER_CREATION
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 222 (decimal)
3 to 4 Length = n
5 to 6 Description

7 to 10

IPv4 address - based on description

11 to 27

IPv6 address - based on description

28 to 29

Port number

Octet 5 to 6: Specifies if the IPv4 or IPv6 address or both are present. IPv4 address is present only if 5th bit (1 << 4) is set to 1. IPv6 address is present only if 4th bit (1 << 3) is set to 1.

Both IPv4 and IPv6 addreses are present when description is 768. For example, i.e. (3 << 8 i.e. 0x300).

Port number is present only if IPv4 or IPv6 address is present.

IE Type: 223
IE Name: PFCP_IE_CHARGING_PARAMS
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 223 (decimal)
3 to 4 Length = n
5 to 6 Charging Chars
7 GTPP Group Name Length
8 GTPP Group Name
9 to 12 GTPP Context ID
13 Accounting Policy Name Length
14 Accounting Policy Name
15 to 18 Accounting Policy Service Type
19 to 22 Diameter Interim Interval
23 AAA Group Name Length
24 AAA Group Name
25 to 28 AAA Group Context ID
29 to 32 RADIUS Interim Interval
33 Gy Offline Charging
34 GTPP Dictionary

35

CC Group Name Length

36

CC Group Name


Note

The GTPP Group Name, Accounting Policy Name, Accounting Group Name, and CC Group Name parameters in this table denote the single byte format for representation purposes. Based on the length field set for these parameters, the byte position may vary as it is not fixed.


IE Type: 224
IE Name: PFCP_IE_GY_OFFLINE_CHARGE
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 224 (decimal)
3 to 4 Length = n
5 to 5 Gy Offline Charging Status
IE Type: 225
IE Name: PFCP_IE_BEARER_INFO
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 225 (decimal)
3 to 4 Length = n
5 to 5 QCI
6 to 6 ARP
7 to 8 Charging ID
IE Type: 226
IE Name: PFCP_IE_SUB_PARAMS
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 226 (decimal)
3 to 4 Length = n
5 to 8 BitOctet
9 to 10 Charging Characteristics
11 to 11 RAT Type
12 to 12 MCC MNC Length
Variable Length MCC MNC Value
4 bytes/16 bytes SGSN Address IPv4/IPv6
1 byte ULI Length
Variable Length ULI Value
4 bytes Congestion Level Value
1 byte Customer ID Length
Variable Length Customer ID value
4 bytes/16 bytes GGSN Address IPv4/IPv6
1 byte User Name Length
Variable Length User Name Value
1 byte RADIUS String Length
Variable Length RADIUS String Value
1 byte Session ID Length
Variable Length Session ID Value
1 byte MS Timezone Length
Variable Length MS Timezone Value
1 byte User Agent Length
Variable Length User Agent Value
1 byte Hash Value Length
Variable Length Hash Value
1 byte Called Station ID Length
Variable Length Called Station ID Value
4 bytes Content Filtering Policy ID
1 byte Charging Disabled Flag
1 byte TS Profile Length
Variable Length TS Profile
1 byte TS Subscription Scheme Length
Variable Length TS Subscription Scheme
1 byte Traffic Optimization Policy ID
4 bytes Consolidated CF Policy ID

Octets 1: BitOctet. Indicates the available fields.

  • Bit 1—Charging Characters

  • Bit 2—RAT Type

  • Bit 3—MCC/MNC

  • Bit 4—SGSN Address IPv4

  • Bit 5—SGSN Address IPv6

  • Bit 6—ULI

  • Bit 7—Congestion Level

  • Bit 8—Customer ID

  • Bit 9—GGSN Address IPv4

  • Bit 10—GGSN Address IPv6

  • Bit 11—UserName

  • Bit 12—Radius String

  • Bit 13—Session ID

  • Bit 14—MS Timezone valid

  • Bit 15—User Agent

  • Bit 16—Hash value

  • Bit 17—Call Station Id

  • Bit 18—Unused

  • Bit 19—Content Filtering Policy Id

  • Bit 20—Charging Disabled Value

  • Bit 21—TS profile

  • Bit 22—TS subscription

  • Bit 23—Traffic Optmization Policy ID

  • Bit 24—Consolidate CF policy ID


Note

The offset might change based on presence of an IE or not". For example, if Intercept ID bit 1 is not SET (==0), then Charging ID will be present in bit 6 to 9.


IE Type: 227
IE Name: PFCP_IE_RULE_NAME
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 227 (decimal)
3 to 4 Length = n
5 to 68 Rule Name
IE Type: 228
IE Name: PFCP_IE_LAYER2_MARKING
IE Format and Encoding Information

To pass the L2 Marking information to the UP for the bearer, a new custom-IE is defined and the FAR is modified to include it as follows. It identifies the Layer 2 Marking to be applied for the packets matching this FAR.

The length of the IE could be either 0 or 1.

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 228 (decimal)
3 to 4 Length = n
5 to 5

TYPE (2 Bits) PRIORITY (6 Bits)

Type : (1-DSCP, 2-QCI, 3-None) - beginning 2 Bits

Priority-Value: the last 6 bits

  • Internal-Priority in case of QCI/None type

  • DCSP value in case of DSCP type

IE Type: 229
IE Name: PFCP_IE_MONITOR_SUBSCRIBER_INFO
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 229 (decimal)
3 to 4 Length = n
5 Spare C D Action
d to (d+7) Data tracing parameters
p to (p+15) Protocol tracing parameters
s to (n+4) These octet(s) is/are present only if explicitly specified.

Action: STOP / START monitor subscriber tracing. STOP =1, START =2.

D = DATA events tracing is ON if D=1. The 8 octets (d to d+7) contain data events tracing (fastpath) information should be present only when D=1.

C = CONTROL events tracing is ON if C=1.

Data Tracing (fastpath) Information (8 octets): It will contain the data filter parameters like Packet capture, Packet capture size, and MEH header.

Octet 5:

  • Bit 1 to 2 – Action [action(2 bit), control(1 bit),data(1 bit)]

  • Bit 3 – Display Data Info

  • Bit 4 – Display Control Info

  • Bit 5 - C Bit

  • Bit 6 - D Bit

  • Bit 7 - Unused

  • Bit 8 - Unused

Octet 6:

  • Bit 1 – VPP enable/disable

  • Bit 2 – PCAP - Packet capture

  • Bit 3 – MEH

  • Bit 4 to 6 - Priority

Octet 2 to 3: Packet size

Octet 4 – 8: Reserved for future use. Currently, all set to 0.

Protocol Tracing Information (16 octets/128 bits): The 16 octets (p to p+15) contain protocol tracing information and should be present only when either control flag (C) or data flag (D) is enable. Each bit represents a unique protocol to monitor. For example, if 49th bit is 1, PFCP events tracing is ON. Protocol Tracing ‘Rulematch Events (Option 34)’, ‘L3 Data (Option 19)’, ‘EDR (Option 77)’ and ‘Subscriber Summary After Call Disconnect’ are controlled by control event flag.


Note

The offset might change based on presence of an IE or not". For example, if Intercept ID bit 1 is not SET (==0), then Charging ID will be present in bit 6 to 9.


IE Type: 230
IE Name: PFCP_IE_MON_SUB_REPORT_SESS_REP_REQ
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 230 (decimal)
3 to 4 Length = n
5 Status code
6 to 9 CLI Instance ID
10 Congestion Short Term
11 Congestion Longer Term
12 Flag Throttled
13 to 16 Accepted Packet Count
17 to 20 Rejected Packet Count
21 to 24 PCAP File Transfer Rate

Status code: It indicates the acceptance or the rejection of the subscriber trace at UP. Status code = 0 will mean a success. Values 1-255 will uniquely specify the specific error code or notification.

IE Type: 231
IE Name: PFCP_IE_CREATE_BLI
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 231 (decimal)
3 to 4 Length = n
5 to 6 numCreateBli
7 to n. Max(1280) Create BLI [PFCP_MAX_CREATE_BLI]
IE Type: 232
IE Name: PFCP_IE_BLI_ID
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 232 (decimal)
3 to 4 Length = n
5 to 6 BLI ID
IE Type: 233
IE Name: PFCP_IE_QCI
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 233 (decimal)
3 to 4 Length = n
5 to 6 QCI
IE Type: 234
IE Name: PFCP_IE_5QI
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 234 (decimal)
3 to 4 Length = n
5 to 6 5QI
IE Type: 235
IE Name: PFCP_IE_ARP
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 235 (decimal)
3 to 4 Length = n
5 to 6 ARP
IE Type: 236
IE Name: PFCP_IE_CHARGING_ID
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 236 (decimal)
3 to 4 Length = n
5 to 9 Charging ID
IE Type: 237
IE Name: PFCP_IE_RATING_GRP
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 237 (decimal)
3 to 4 Length = 2 bytes
5 to 8 Rating Group
IE Type: 238
IE Name: PFCP_IE_NEXTHOP
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 238 (decimal)
3 to 4 Length = n
5 to 10 Next hop ID
11 to 14 Next hop IP address
IE Type: 239
IE Name: PFCP_IE_NEXTHOP_ID
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 239 (decimal)
3 to 4 Length = 5
5 Next hop ID
IE Type: 240
IE Name: PFCP_IE_NEXTHOP_IP
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 240 (decimal)
3 to 4 Length = n
5 Spare V4 V6
m to (m+3) IPv4 Address
p to (p+15) IPv6 Address
IE Type: 241
IE Name: PFCP_IE_QGR_INFO
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 241 (decimal)
3 to 4 Length = n
5 to 6 Number of QGR
7 to 7 QGR 1 information stats - Bit Octet
8 to 8 QGR Operation(Add/Modify/Remove)
9 to 12 QGR Priority
13 to 13 QGR Name Length
14 to n QGR Name
n+1 to n+4 FAR ID
n+5 to n+8 QER ID
n+8 to n+11 URR ID
Same as 7 to n+11 Next QGR (if any) information stats
IE Type: 242
IE Name: PFCP_IE_UE_IP_VRF
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 242 (decimal)
3 to 4 Length = n
5 Spare Identical VRF flag IPv6 VRF Valid IPv4 VRF Valid
m to (m+1) VRF-1 Name Length = p
Variable Length VRF-1 Name
n to n+1 VRF-2 Name Length = q
Variable Length VRF-2 Name
IE Type: 243
IE Name: PFCP_IE_SERVICE_ID
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 243 (decimal)
3 to 4 Length = n
5 to 9 Service ID
IE Type: 244
IE Name: PFCP_IE_USER_PLANE_ID
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 244 (decimal)
3 to 4 Length = n
5 to 9 User Plane ID
IE Type: 245
IE Name: PFCP_IE_PEER_VERSION
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 245 (decimal)
3 to 4 Length = n
5 to 9 Peer version
10 to 14 StarOS GR version
15 to 16 Length
17 to n. Max(128) StarOS version [PFCP_STAROS_VERSION_MAX]
IE Type: 246
IE Name: PFCP_IE_GX_ALIAS
IE Format and Encoding Information

The IE is used to communicate a Gx-Alias GoR(Group-of-Ruledef) name, Start and End PDR IDs and also the operation to perform, from CP to UP during Sx Session Establishment/Modification Request message. There can be multiple instances of same IE in an Sx-message.

Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 246 (decimal)
3 to 4 Length n [Min=7, Max=69 {5+ACSCTRL_GRP_OF_RDEFS_NAMELEN (64)}]
5 Flags (Add/delete GoR Rules),for example, 1 for Add, 0 Delete rules in GoR
6 to 7 Start PDR ID
8 to 9 End PDR ID
10 to n+4 Gx-alias GoR name (min size=2, max size=64)
IE Type: 247
IE Name: PFCP_IE_NBR_INFO_SESS_REP_REQ
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 247 (decimal)
3 to 4 Length = n
5 to 33 NAT IP address
34 to 636 Port chunk information list
637 to 639 Allocation flag
640 to 644 naptNumUsersPerIP
645 to 649 Release timer
IE Type: 248
IE Name: PFCP_IE_NAT_IP
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 248 (decimal)
3 to 4 Length = n
5 to 29 IPv4 address
IE Type: 249
IE Name: PFCP_IE_PORT_CHUNK_INFO
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 249 (decimal)
3 to 4 Length = n
5 to 6 numPortChunkInfo
7 to n Max (600) Port chunk information [PFCP_MAX_PORT_CHUNK_INFO]
IE Type: 250
IE Name: PFCP_IE_ALLOCATION_FLAG
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 250 (decimal)
3 to 4 Length = n
5 to 9 Allocation flag
IE Type: 251
IE Name: PFCP_IE_NAPT_NUM_USERS_PER_USER
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 251 (decimal)
3 to 4 Length = n
5 to 7 NAPT_NUM_USERS_PER_USER
IE Type: 252
IE Name: PFCP_IE_RELEASE_TIMER
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 252 (decimal)
3 to 4 Length = n
5 to 7 Release timer
IE Type: 253
IE Name: PFCP_IE_QUERY_INTERFACE
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 253 (decimal)
3 to 4 Length = n
5 to 6 Spare:3
7 to 8 offline_urr:1
9 to 10 online_urr:1
11 to 12 radius_urr:1
13 to 14 bearer_urr:1
15 to 16 sess_urr:1
IE Type: 254
IE Name: PFCP_IE_BUSY_OUT_INACTIVITY_TIMEOUT
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 254 (decimal)
3 to 4 Length = n
5 to 9 Inactivity timeout
IE Type: 256
IE Name: PFCP_IE_TRIGGER_ACTION_REPORT
IE Format and Encoding Information
Bits
Octets 8 7 6 5 4 3 2 1
1 to 2 Type = 256 (decimal)
3 to 4 Length = n
5 to 7 Number of trigger actions
8 to n Max (1400) Trigger action [PFCP_MAX_TRIGGER_ACTION]