|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PDU Session Establishment in DetailPDU Session Establishement is equivalent to PDN Establishment in LTE. Main purpose of this process is to assign UE IP and inform the UE of various the IP address of various corenetwork components (application layer component). With respect of IP allocation, PDU session establishment correponds to PDN connectivity procedure in LTE. Another important role of PDU Session Establishment is to establish QoS Flow. The QoS procedure will be explained in detail in this note (QoS / QFI / QRI). As mentioned above, main functionality of PDU Session Establishment will be treated in a few separate notes. In this note, I will focus mostly on the message structure of PDU Session Establishment signaling.
Before you move onIn this note, I would mostly focus on the two NAS messages between UE and the Network (especially AMF) and contents of the two messages, but there are a lot of other network components and interactions among those components happen. It is difficult to describe about every components, interactions and the functionalities in single page. So I wrote a few separate notes that are related to the functionalities of PDU Establishment process as listed below. Depending on your own interest and needs, follow through these notes in your own order.. but whatever you pick as the first note, you would need to go through all of these notes as you go deeper into this subject (i.e, PDU establishment process).
Signaling SequenceAccording to 24.501 - 6.4.1.2 UE-requested PDU session establishment procedure initiation goes as follows. < Case A > Normal PDU Establishment
< Case B > No PDU Session Establishment Accept
< Case C > PDU SESSION ESTABLISHMENT REJECT
Following is a table listing various reject cause and the expected UE behavior based on 24.501-6.4.1.4, 6.4.1.7 and 24.501-AnnexA. I put only high level and most critical (most critical to me) in the 'Expected UE behavior' column. There are much more futher details specified in the specification.
Message StructureIn this section the overall message structure and functionalities of important IE (Information Element) will be explained. The overall structure of PDU Session related message is as follows : NGAP : Downlink NAS Transport -> NAS : DL NAS Transport -> PDU Session related Message NGAP : Uplink NAS Transport -> NAS : UL NAS Transport -> PDU Session related Message If you want to see the contents of full log with Amarisoft Log viewer, go to LogAnalysis section and click on 'Sample Log' in this tutorial of Amarisoft TechAcademy. PDU Session Establishment RequestWhen UE needs to establish a PDU session, it sends to AMF "PDU Session Establishment Request" message containing the information as listed below and AMF forward it to an SMF. PDU Session Establishment Request (24.501 - 8.3.1.1) PDU seesion Type (24.501 - 9.11.4.11) SSC mode (24.501 - 9.11.4.16) 5GSM capability (24.501 - 9.11.4.1) Maximum number of supported packet filters (24.501 - 9.11.4.9) Always-on PDU session requested (24.501 - 9.11.4.4) SM PDU DN request container (24.501 - 9.11.4.15) Extended protocol configuration options (24.501 - 9.11.4.6) Request Type (24.501-9.11.3.47) Example 01 >This is a sample message from the log provided by Amarisoft. { message c1: ulInformationTransfer: { criticalExtensions ulInformationTransfer: { dedicatedNAS-Message '7E02FF096300027E006701001E2E0509C1FFFF93A17B001380000A00000 200000100000C00000300000D00120581250403696D73'H } } }
The decoded contents of the above NAS message is as below :
Protocol discriminator = 0x7e (5GS Mobility Management) Security header = 0x2 (Integrity protected and ciphered) Auth code = 0xff096300 Sequence number = 0x02 Protocol discriminator = 0x7e (5GS Mobility Management) Security header = 0x0 (Plain 5GS NAS message, not security protected) Message type = 0x67 (UL NAS transport) Payload container type = 1 (N1 SM information) Payload container: Protocol discriminator = 0x2e (5GS Session Management) PDU session identity = 5 Procedure transaction identity = 9 Message type = 0xc1 (PDU session establishment request) Integrity protection maximum data data: Maximum data rate per UE for user-plane integrity protection for uplink = 0xff (Full data rate) Maximum data rate per UE for user-plane integrity protection for downlink = 0xff (Full data rate) PDU session type = 0x3 (IPv4v6) SSC mode = 0x1 (1) Extended protocol configuration options: Ext = 1 Configuration protocol = 0 Protocol ID = 0x000a (IP address allocation via NAS signalling) Data = Protocol ID = 0x0002 (IM CN Subsystem Signaling Flag) Data = Protocol ID = 0x0001 (P-CSCF IPv6 Address Request) Data = Protocol ID = 0x000c (P-CSCF IPv4 Address Request) Data = Protocol ID = 0x0003 (DNS Server IPv6 Address Request) Data = Protocol ID = 0x000d (DNS Server IPv4 Address Request) Data = PDU session ID = 5 Request type = 0x1 (initial request) DNN = "ims" PDU Session Establishment AcceptPDU Session Establishment Accept (24.501 - 8.3.2.1) PDU Session ID (24.501 - 9.4) Selected PDU session type (24.501 - 9.11.4.11) Selected SSC mode (24.501 - 9.11.4.16) Authorized QoS rules (24.501 - 9.11.4.13) Session AMBR (24.501 - 9.11.4.14) 5GSM cause (24.501 - 9.11.4.2) PDU address (24.501 - 9.11.4.10) RQ Timer Value (24.501 - 9.11.2.3) S-NSSAI (24.501 - 9.11.2.8) Always-on PDU session indication (24.501 - 9.11.4.3) Mapped EPS bearer contexts (24.501 - 9.11.4.8) EAP message (24.501 - 9.11.2.2) Authorized QoS flow descriptions (24.501 - 9.11.4.12) Extended protocol configuration options (24.501 - 9.11.4.6) DNN (24.501 - 9.11.2.1B) Example 01 > PDU Address, DNN,QoS, No Slice InfoThis is a sample message from the log provided by Amarisoft.
{ message c1: dlInformationTransfer: { rrc-TransactionIdentifier 0, criticalExtensions dlInformationTransfer: { dedicatedNAS-Message '7E0206FC019B027E0054431081C176589E9EBFCD7490B34CBFBFE56 B450981C176589E9EBFCD7446404791118261539040490100'H } } }
Protocol discriminator = 0x7e (5GS Mobility Management) Security header = 0x2 (Integrity protected and ciphered) Auth code = 0x66f143b0 Sequence number = 0x03 Protocol discriminator = 0x7e (5GS Mobility Management) Security header = 0x0 (Plain 5GS NAS message, not security protected) Message type = 0x68 (DL NAS transport) Payload container type = 1 (N1 SM information) Payload container: Protocol discriminator = 0x2e (5GS Session Management) PDU session identity = 5 Procedure transaction identity = 9 Message type = 0xc2 (PDU session establishment accept) Selected PDU session type = 0x3 (IPv4v6) Selected SSC mode = 0x1 (1) Authorized QoS rules: QoS rule 1: QoS rule identifier = 1 Rule operation code = 1 (create new QoS rule) DQR = 1 (the QoS rule is the default QoS rule) Number of packet filters = 1 Packet filter identifier = 15 Packet filter direction = 3 (bidirectional) Match-all QoS rule precedence = 255 QFI = 1 Session AMBR: Session-AMBR for downlink = 3000000 kbps Session-AMBR for uplink = 1000000 kbps PDU address: PDU session type = 3 (IPv4v6) IPv6 = ::2001:468:3000:1 IPv4 = 192.168.4.2 Authorized QoS flow descriptions: QoS flow description 1: QFI = 1 Operation code = 1 (create new QoS flow description) E = 1 (parameters list is included) Number of parameters = 1 5QI = 5 Extended protocol configuration options: Ext = 1 Configuration protocol = 0 Protocol ID = 0x000d (DNS Server IPv4 Address) Data = 8.8.8.8 Protocol ID = 0x0003 (DNS Server IPv6 Address) Data = 2001:4860:4860:0:0:0:0:8888 Protocol ID = 0x000c (P-CSCF IPv4 Address) Data = 192.168.4.1 Protocol ID = 0x0001 (P-CSCF IPv6 Address) Data = 2001:468:3000:1:0:0:0:0 Protocol ID = 0x0002 (IM CN Subsystem Signaling Flag) Data = DNN = "ims.mnc001.mcc001.gprs" PDU session ID = 5 Example 02 > PDU Address, DNN,QoS, Slice InfoProtocol discriminator = 0x2e (5GS Session Management) PDU session identity = 1 Procedure transaction identity = 5 Message type = 0xc2 (PDU session establishment accept) Selected PDU session type = 0x1 (IPv4) Selected SSC mode = 0x1 (1) Authorized QoS rules: QoS rule 1: QoS rule identifier = 1 Rule operation code = 1 (create new QoS rule) DQR = 1 (the QoS rule is the default QoS rule) Number of packet filters = 1 Packet filter identifier = 15 Packet filter direction = 3 (bidirectional) Match-all QoS rule precedence = 255 QFI = 1 Session AMBR: Session-AMBR for downlink = 5000 Mbps Session-AMBR for uplink = 2000000 kbps 5GSM cause = 0x32 (PDU session type IPv4 only allowed) PDU address: SI6LLA = 0 PDU session type = 1 (IPv4) IPv4 = 192.168.3.2 Length of S-NSSAI contents = 1 (SST) SST = 0x01 Mapped EPS bearer context 1: EPS bearer identity = 5 Operation code = 1 (create new EPS bearer) E = 1 (parameters list is included) Number of EPS parameters = 2 Mapped EPS QoS parameters: QCI = 9 APN-AMBR: APN-AMBR for downlink = 4864000000 bits APN-AMBR for uplink = 1792000000 bits Authorized QoS flow descriptions: QoS flow description 1: QFI = 1 Operation code = 1 (create new QoS flow description) E = 1 (parameters list is included) Number of parameters = 2 5QI = 9 EPS bearer identity = 5 Extended protocol configuration options: Ext = 1 Configuration protocol = 0 Protocol ID = 0x8021 (IPCP) Data = 03 00 00 0a 81 06 08 08 08 08 Protocol ID = 0x000d (DNS Server IPv4 Address) Data = 8.8.8.8 DNN = "internet.mnc001.mcc001.gprs" UL NAS TransportUL NAS transport (24.501 - 8.2.10.1) Extended protocol discriminator (24.501 - 9.2) Security header type (24.501 - 9.3) UL NAS TRANSPORT message identity (24.501 - 9.7) Payload container type (24.501 - 9.11.3.40) Payload container (24.501 - 9.11.3.39) PDU session ID (24.501 - 9.11.3.41) Old PDU session ID (24.501 - 9.11.3.41) Request Type (24.501 - 9.11.3.47) S-NSSAI (24.501 - 9.11.2.8) DNN (24.501 - 9.11.2.1B) Additional information (24.501 - 9.11.2.1) MA PDU session information (24.501 - 9.11.3.31A) Release assistance indication (24.501 - 9.11.3.46A) DL NAS TransportDL NAS transport (24.501 - 8.2.11.1) Extended protocol discriminator (24.501 - 9.2) Security header type (24.501 - 9.3) DL NAS TRANSPORT message identity (24.501 - 9.7) Payload container type (24.501 - 9.11.3.40) Payload container (24.501 - 9.11.3.39) PDU session ID (24.501 - 9.11.3.41) Additional information (24.501 - 9.11.2.1) 5GMM cause (24.501 - 9.11.3.2) Back-off timer value (24.501 - 9.11.2.5) 5GSM capabilityThis is an information element(IE) is to convey information about the supported features and capabilities of the User Equipment (UE) or the network during the PDU session establishment procedure. This allows the network to establish a PDU session that is optimized for the UE's features and capabilities, ensuring a seamless and efficient user experience. If the UE's capabilities are not compatible with the network's requirements or the requested service, the network may reject the PDU session establishment with an appropriate 5GSM cause value. RqoS 0 Reflective QoS not supported 1 Reflective QoS supported Multi-homed IPv6 PDU session (MH6-PDU) 0 Multi-homed IPv6 PDU session not supported 1 Multi-homed IPv6 PDU session supported Brief description of the configuration listed above are : 0: Reflective QoS not supported - Indicates that the UE does not support reflective QoS, which means that the UE requires explicit signaling from the network to determine the QoS parameters. 1: Reflective QoS supported - Specifies that the UE supports reflective QoS, allowing it to derive the QoS parameters from the network without explicit signaling. 0: Multi-homed IPv6 PDU session not supported - Indicates that the UE does not support multi-homed IPv6 PDU sessions, which means it cannot maintain multiple IPv6 addresses and multiple paths for a single PDU session. 1: Multi-homed IPv6 PDU session supported - Specifies that the UE supports multi-homed IPv6 PDU sessions, allowing it to maintain multiple IPv6 addresses and multiple paths for a single PDU session, improving resilience and load balancing. 5GSM causeThis is is an information element(IE) used in 5G PDU Establishment messages and other 5G Session Management procedures to convey information about the success or failure of a specific procedure. It provides a cause code that indicates the reason behind the outcome of the procedure, whether it's successful, rejected, or encounters an error. 5GSM cause IEI Cause value Operator determined barring Insufficient resources Missing or unknown DNN Unknown PDU session type User authentication or authorization failed Request rejected, unspecified Service option not supported Requested service option not subscribed Service option temporarily out of order PTI already in use Regular deactivation Network failure Reactivation requested Invalid PDU session identity Semantic errors in packet filter(s) Syntactical error in packet filter(s) Out of LADN service area PTI mismatch PDU session type IPv4 only allowed PDU session type IPv6 only allowed PDU session does not exist Insufficient resources for specific slice and DNN Not supported SSC mode Insufficient resources for specific slice Missing or unknown DNN in a slice Invalid PTI value Maximum data rate per UE for user-plane integrity protection is too low Semantic error in the QoS operation Syntactical error in the QoS operation Invalid mapped EPS bearer identity Semantically incorrect message Invalid mandatory information Message type non-existent or not implemented Message type not compatible with the protocol state Information element non-existent or not implemented Conditional IE error Message not compatible with the protocol state Protocol error, unspecified Always-on PDU sessionAn always-on PDU session is to provides a continuous data path between the UE and the network to make it sure that the connection remains active even when there is no user data being transmitted. This kind of connection can be established by PDU Session Esbalishment process as shown below.
0 Always-on PDU session not allowed 1 Always-on PDU session required 0 Always-on PDU session not requested 1 Always-on PDU session requested Use cases of Always-on PDU sessionThere are many cases of use cases for this type of connection. Some of them are listed below.
How to disable Always-on Session after it is enabled ?Even though always-on-PDU-session has obvious advantage and use cases, there is some drawback as well. This type of Session can consume more resources and battery life on the UE due to the constant connection. Due to the drawback, UE or Network may want to disable the feature. There are several ways to disable this type of session and some of the ways are listed below.
EAP messageThis is defined in RFC 3784. Extended protocol configuration optionsLength of extended protocol configuration options contents Extended protocol configuration options contents (24.008-10.5.6.3) < 24.008-Figure 10.5.136: Protocol configuration options information element > GPRS TimerThe GPRS timer is used in various cellular network procedures, such as the PDU (Protocol Data Unit) Establishment process, to manage and control the duration of specific events or actions. GPRS Timer IEI Timer Value Unit value is incremented in multiples of 2 seconds value is incremented in multiples of 1 minute value is incremented in multiples of decihours value indicates that the timer is deactivated.
If the timer value indicates that the timer is deactivated, it means that the specific event or action associated with the timer is not active or applicable in the current context. Mapped EPS bearer contexts"Mapped EPS bearer contexts" indicates the mapping of existing EPS (Evolved Packet System) bearers from a 4G LTE network to 5G PDU sessions when a UE transitions from the 4G network to the 5G network. This mapping ensures that the ongoing data sessions and services are seamlessly continued during the network transition. During the PDU Session Establishment process in a 5G network, the UE and the network may include the "Mapped EPS bearer contexts" information in the PDU Session Establishment Request and PDU Session Establishment Accept messages, respectively. This information indicates which EPS bearer contexts from the 4G LTE network are being mapped to the new 5G PDU session and the corresponding QoS flow identifiers. Length of Mapped EPS bearer contexts contents Mapped EPS bearer context 1 EPS bearer identity Length of Mapped EPS bearer context Number of EPS parameters Ebit Operation code EPS parameters list EPS parmeter identifier 1 Length of EPS parameter contents 1 EPS parameter contents 1 EPS parmeter identifier 2 Length of EPS parameter contents 2 EPS parameter contents 2 ... EPS parmeter identifier n Length of EPS parameter contents n EPS parameter contents n Mapped EPS bearer context 2 EPS bearer identity Length of Mapped EPS bearer context Number of EPS parameters Ebit Operation code EPS parameters list EPS parmeter identifier 1 Length of EPS parameter contents 1 EPS parameter contents 1 EPS parmeter identifier 2 Length of EPS parameter contents 2 EPS parameter contents 2 ... EPS parmeter identifier n Length of EPS parameter contents n EPS parameter contents n ... Mapped EPS bearer context N EPS bearer identity Length of Mapped EPS bearer context Number of EPS parameters Ebit Operation code EPS parameters list EPS parmeter identifier 1 Length of EPS parameter contents 1 EPS parameter contents 1 EPS parmeter identifier 2 Length of EPS parameter contents 2 EPS parameter contents 2 ... EPS parmeter identifier n Length of EPS parameter contents n EPS parameter contents n PDU address (24.501 - 9.11.4.10)PDU address IEI PDU session type value IPv4 IPv6 IPv4v6 PDU address information IPv4 Address (4 Byte) IPv6 Address (8 Byte) IPv4v6 Address (12 Byte) PDU session type"PDU session type" indicates the type of data traffic that will be transmitted over the PDU session between UE and the 5G Core Network (5GC). The PDU session type determines the characteristics of the PDU session, such as the IP version used for the data traffic and the type of data bearers required. The PDU session type is negotiated between the UE and the 5GC during the PDU Session Establishment process. The UE indicates its supported PDU session types in the PDU Session Establishment Request message, and the network selects the appropriate PDU session type based on the UE's capabilities, network configuration, and specific use case. Once the PDU session type is agreed upon, the network assigns IP addresses and allocates resources accordingly, enabling the UE to send and receive data over the established PDU session. IPv4 IPv6 IPv4v6 Unstructured Ethernet reserved QoS rulesQoS rule 1 QoS rule identifier Length of QoS rule Number of packet filters DQR bit 0 the QoS rule is not the default QoS rule. 1 the QoS rule is the default QoS rule. Rule operation code Reserved Create new QoS rule Delete existing QoS rule Modify existing QoS rule and add packet filters Modify existing QoS rule and replace all packet filters Modify existing QoS rule and delete packet filters Modify existing QoS rule without modifying packet filters Reserved Packet filter list QoS rule precedence QoS flow identifier (QFI) QoS rule 2 QoS rule identifier Length of QoS rule Number of packet filters DQR bit 0 the QoS rule is not the default QoS rule. 1 the QoS rule is the default QoS rule. Rule operation code Reserved Create new QoS rule Delete existing QoS rule Modify existing QoS rule and add packet filters Modify existing QoS rule and replace all packet filters Modify existing QoS rule and delete packet filters Modify existing QoS rule without modifying packet filters Reserved Packet filter list QoS rule precedence QoS flow identifier (QFI) .... Request Type (24.501-9.11.3.47)The purpose of the Request type information element is to indicate the type of the 5GSM message. Request type value initial request existing PDU session initial emergency request existing emergency PDU session modification request reserved Spare Request Type IEI
23.502 - 4.3.2.2.1 states
Session-AMBR (Aggregate Maximum Bit Rate) - (24.501-9.11.4.14)Session-AMBR IEI value is not used value is incremented in multiples of 1 Kbps value is incremented in multiples of 4 Kbps value is incremented in multiples of 16 Kbps value is incremented in multiples of 64 Kbps value is incremented in multiples of 256 kbps value is incremented in multiples of 1 Mbps value is incremented in multiples of 4 Mbps value is incremented in multiples of 16 Mbps value is incremented in multiples of 64 Mbps value is incremented in multiples of 256 Mbps value is incremented in multiples of 1 Gbps value is incremented in multiples of 4 Gbps value is incremented in multiples of 16 Gbps value is incremented in multiples of 64 Gbps value is incremented in multiples of 256 Gbps value is incremented in multiples of 1 Tbps value is incremented in multiples of 4 Tbps value is incremented in multiples of 16 Tbps value is incremented in multiples of 64 Tbps value is incremented in multiples of 256 Tbps value is incremented in multiples of 1 Pbps value is incremented in multiples of 4 Pbps value is incremented in multiples of 16 Pbps value is incremented in multiples of 64 Pbps value is incremented in multiples of 256 Pbps Length of Session-AMBR contents Unit for Session-AMBR for downlink Session-AMBR for downlink Unit for Session-AMBR for uplink Session-AMBR for uplink SM PDU DN request containerDN-specific identity : network access identifier (NAI) format according to IETF RFC 7542 S-NSSAIS-NSSAI IEI Length of S-NSSAI contents SST SST and mapped HPLMN SST SST and SD SST, SD and mapped HPLMN SST SST, SD, mapped HPLMN SST and mapped HPLMN SD SST(Slice/service type) SD(Slice differentiator) Mapped HPLMN SST Mapped HPLMN SD SSC (Session and Service Continuity) modeSSC (Session and Service Continuity) modes refer to different ways of handling mobility and data flow during a PDU session when the User Equipment (UE) moves between different access networks or between 4G and 5G networks. SSC mode 1 SSC mode 2 SSC mode 3 unused; shall be interpreted as "SSC mode 1", if received by the network unused; shall be interpreted as "SSC mode 2", if received by the network unused; shall be interpreted as "SSC mode 3", if received by the network
Payload container type (24.501-9.11.3.40)The purpose of the Payload container type information element indicates type of payload included in the payload container information element. This type can be one of the followings : N1 SM information SMS LTE Positioning Protocol (LPP) message container SOR transparent container UE policy container UE parameters update transparent container Location services message container CIoT user data container Multiple payloads MA PDU session information (24.501 - 9.11.3.31A)The purpose of the MA PDU(Multi Access PDU) session information information element is to convey the MA-related information for the PDU session. Currently there is only one value specified for this IE MA PDU session network upgrade is allowed
Reference
YouTube
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||