5gc PDU session establishment

5G network transmits the data sent and received between the terminal (UE) and the external network in the form of data packets. Usually, the data packets of these users are called PDUs (packet data units). These PDUs can be IP, Ethernet, and Unstructured, and DNN (Data Network Name) is used to identify different destination networks outside these 5G networks. DNN is similar to 4G APN (Access Point Name), such as "3gnet" APN accessing the public network. 5G network refers to the path established between terminal and external network as a PDU Session.
The 5GC supports a PDU Connectivity Service i.e. a service that provides exchange of PDUs between a UE and a data network identified by a DNN. The PDU Connectivity Service is supported via PDU Sessions that are established upon request from the UE
In the QoS model of 5G network, SMF is the network functional entity that performs session management QoS control. In 5G network, the user's signing information is combined with the operator's policy control information in PCF to determine the terminal QoS. For example, in UDM, users sign up, store ARP/QFI, Session AMBR information of default QoS Flow, terminal AMBR; in SMF, store ARP/GFBR/MFBR, Session AMBR of single QoS Flow; in PCF, store ARP/QFI, Session AMBR information of default QoS Flow, and QoS parameters of proprietary QoS Flow.
In the scenario where PCF is deployed, the final QoS policy is decided by PCF. SMF sends policy control request to PCF, controls QoS Flow according to the instructions of PCF, UPF is responsible for QoS Flow mapping in the downstream direction, UE and RAN are responsible for QoS Flow mapping in the upstream direction.
Under the condition of 4G network, when the terminal attaches the Attach to the network, it needs to establish the default bearer, while 5G does not need to. When the terminal registers the Registration in the network, it does not need to establish a PDU session similar to 4G bearer. In this way, when 5G terminal has business requirements, the application for establishing PDU session will be initiated. In 5G network, the establishment of PDU session can only be initiated by the terminal. Then you will say that only the terminal can initiate the PDU session. If the terminal needs to send, what can be done if the external network has data to send to the terminal? At this time, the network paging the terminal, the terminal receives the paging response, and then initiates the Service Request process to apply for the establishment of PDU session. Under the real network conditions, the scene is much more complex. The terminal will be in such a situation that it needs to establish a PDU session, which is to execute other processes in addition to the basic process of establishing a PDU session.
Please refer to section 4.3.2 of TS 23.502 for the specific flow chart. In the non roaming or roaming local dredging scenario, the terminal initiates the PDU session establishment request.


The actual network is relatively complex, and the interaction network element is configured with various parameters, so the signaling information is complex. This paper describes and shows the process of PDU session establishment request from the simplified network environment. The network elements involved in the figure include UE, RAN, AMF, SMF, PCF, UPF, UDM and external DN.
In short, the PDU session establishment process is that the terminal initiates the PDU session establishment request. AMF initiates the SMF discovery and selection process to NRF according to the slice NSSAI and DNN configured by the terminal. The selected SMF establishes the context of the session. SMF takes the signing information of the user response to UDM, and then sends the policy control message to UPF, RAN and UE. UPF establishes the PDU session connection with RAN and UE .
The selection and discovery of NE messages are internal message tracking results.

1. UE-AMF PDU Session Establishment Request

The terminal initiates the PDU session establishment application, which is the "PDU Session Establishment Request" signaling. The key field "PDU Session ID" carried by the terminal identifies the ID of the PDU session established by the application. This ID is unique for each terminal, and the number range is only limited to this UE. In this request, the request type is "initial request", indicating the initial request (the established PDU session needs to be stimulated The Service Request business request process can be used when the active user interface is connected). The DNN value of "IMS" indicates that this PDU session is established for IMS. In this process, the PDU session is established for IMS registration, so the DNN here is IMS.
In addition, PDU session establishment request can also carry more parameters, such as NSSAI of request, SSC mode (session and service continuity mode), etc.

2. SMF selection

After receiving the request sent by the terminal to establish a PDU session, AMF needs to select the SMF that determines the session management. As the name implies, SMF is the Session Management Function, which is to perform the Session Management Function. SMF, according to the decision of the operator, controls the session policy, assigns IP address, determines SSC mode, etc. This is not discussed in detail. For detailed function description, please refer to section 6.2.2 of TS 23.501.

The general principle of NF discovery and selection, in other words, if the service address is configured locally, it will be configured locally; otherwise, it will be requested from NRF.
The discovery and selection principles of SMF are described in section 6.3.2 of TS 23.501. AMF initiates SMF selection request and NRF is deployed in the network. So here is a query request of SMF service to NRF. The target NF of the request is SMF and the service name of the request is smfPduSession. Other parameters include the PLMN list of the requester and the target service, which is used to check the service PLMN. The slice information of the request here is the Allow NSSAI (allowed NSSAI) obtained from the previous terminal registration. If the request to establish a PDU session does not carry the requested slice information, AMF will use slices for the PDU session according to the default slice information.
Here, the slice information of DNN is the DNN of PDU session initiated by the terminal, which is also IMS.
TS 23.501 Table 7.2.3-1 describes the services provided by SMF, "managing PDU sessions according to policies and billing rules received from PCF. This service allows network feature consumers to process PDU sessions. ".

SdrMsgHeader: { {Topic:525056 DestKey:{KeyType:2349
GroupId:4294967295 KeyValue:[0 52 0 170]} DestFilter: Ext:[]} }
SrcKey: < KeyType: 2170 KeyValue: "aaaa"

DstKey: < KeyType: 2349 KeyValue: "aaaa"
SearchPara: < TargetNfType: NFTypeSMF RequesterNfType: NFTypeAMF ServiceNames: ServiceNamensmfPdusession RequesterNfInstanceFqdn:
"AMF1.CLUSTER1.NET2.AMF.5GC.MNC008.MCC460.3GPPNETWORK.ORG"
TargetPlmnList: <
mcc: "460"
mnc: "01"

RequesterPlmnList: <
mcc: "460"
mnc: "01"
Snssais: <
sst: 1
sd: "010101"
bitFlag: 2
Dnn: "IMS"
TracePara: < UserIdType: UserIdTypeSUPI UserId: "aaaa-aaaaaaaaaaaaaaa"

The NRF response is obtained by querying. The target NF instance ID is "1a53d55c-75b1-4610-9023-3d79c9bf3f45", the service instance ID is "service_instance_", and the service name is "servicenamensmfpdussession". Apiroot: "http://20.20.20.19:31000.

-------UEAM-TRACE-------

TransMsgHeader: { "Topic": 525058, "DestKey": {
"KeyType": 2170,
"GroupId": 4294967295,
"KeyValue": "ADQAqg==" }, "DestFilter": null, "Ext": null } DstKey: < KeyType: 2170 KeyValue: "aaaa"

RetCode: StatusOK NfProfiles: < NfInstanceId: "1a53d55c-75b1-4610-9023-3d79c9bf3f45" NfServices: <
ServiceInstanceId: "service_instance_0"
ServiceName: ServiceNamensmfPdusession
Version: <
apiVersionInUri: "v1"
apiFullVersion: "1.r15.0.0"

**Apiroot: "http://20.20.20.19:31000"**
LogicLink: <
  Link: "[]byte{0x0, 0x5, 0x3, 0x30, 0x1a, 0x53, 0xd5, 0x5c, 0x75, 0xb1, 0x46, 0x10, 0x90, 0x23, 0x3d, 0x79, 0xc9, 0xbf, 0x3f, 0x45, 0xc, 0xb9, 0x10, 0x7b, 0x6f, 0x1, 0x0}"
  
IPAddr: <
  Schema: UriSchemehttp
  IpType: IPv4
  LocalIPV4Addr: "20.20.20.9:0"
  PeerIPV4Addr: "20.20.20.19"
  PeerIPV4Port: 31000
>

Capacity: 30 Priority: 30
LocalNfInstanceId: "7478c5d1-9648-40ed-7016-85ea90338f70" SearchPara: < TargetNfType: NFTypeSMF RequesterNfType: NFTypeAMF
ServiceNames: ServiceNamensmfPdusession RequesterNfInstanceFqdn:
"AMF1.CLUSTER1.NET2.AMF.5GC.MNC008.MCC460.3GPPNETWORK.ORG"
TargetPlmnList: <
mcc: "460"
mnc: "01"
RequesterPlmnList: <
mcc: "460"
mnc: "01"
Snssais: <
sst: 1
sd: "010101"
bitFlag: 2
Dnn: "IMS"
TracePara: < UserIdType: UserIdTypeSUPI UserId: "aaaa-aaaaaaaaaaaaaaa"

3. AMF-SMF SmContextCreate session management context creation request

AMF queries NRF to get the candidate information of SMF. Because the network scale here is simple, there is only one service instance for the candidate information to choose. Then select this SMF to initiate the request to establish the session management context. The SBI service interface is adopted between AMF and SMF. Based on HTTP2.0, "post / nsmf pdusesession / V1 / SM contexts" submits the session management data corresponding to "imsi-4600112010100019" to SMF's services for processing. Here is the resource to increase session management. Boldface indicates DNN, slice information SNSSAI, corresponding service network information, AMF and access type, access network type, terminal location information (TAC and NRCellID), terminal time zone information, etc. of the PDU Session 5. The URL of the session information is "http://20.20.20.9:31000/nsmf-pdusesession/smcontextstatus/v1/sm-contexts/0881be18120a08fd101205003400aa05".

3.1 Nsmf_SmContextCreateRequest

------HTTP-TRACE-BEGIN------ domain: request, role: client local_addr:20.20.20.9:29184 peer_addr:20.20.20.19:31000 protocal:
TCP msgtype:117571587 rid=112499410, scheme=http, stream id=951

POST /nsmf-pdusession/v1/sm-contexts HTTP/2.0 user-agent:
AMF-7478c5d1-9648-40ed-7016-85ea90338f70 content-type:
multipart/related; boundary=----Boundary host: 20.20.20.19:31000
content-length: 909

------Boundary Content-Type: application/json

{"supi":"imsi-460011200100019","gpsi":"msisdn-8618612000019","pduSessionId":5,"dnn":"IMS","sNssai":{"sst":1,"sd":"010101"},"servingNfId":"7478c5d1-9648-40ed-7016-85ea90338f70","guami":{"plmnId":{"mcc":"460","mnc":"01"},"amfId":"000041"},"servingNetwork":{"mcc":"460","mnc":"01"},"requestType":"INITIAL_REQUEST","n1SmMsg":{"contentId":"n1msg"},"anType":"3GPP_ACCESS","ratType":"NR","ueLocation":{"nrLocation":{"tai":{"plmnId":{"mcc":"460","mnc":"01"},"tac":"000C26"},"ncgi":{"plmnId":{"mcc":"460","mnc":"01"},"nrCellId":"21001f001"}}},"ueTimeZone":"+08:00","smContextStatusUri":"http://20.20.20.9:31000/nsmf-pdusession/smcontextstatus/v1/sm-contexts/0881be18120a08fd101205003400aa05","selMode":"VERIFIED","epsInterworkingInd":"WITH_N26"}
------Boundary Content-Type: application/vnd.3gpp.5gnas Content-Id: n1msg

                   MsgEnter   ng-sm-msg
pDU-session-identity:0x5 (5)
procedure-transaction-identity:0x44 (68)
msg-body
  pDUSessionEstablishmentRequest
    integrity-protection-maximum-data-rate
      maximum-data-rate-per-UE-for-user-plane-integrity-protection-for-uplink:full-data-rate

(255)
maximum-data-rate-per-UE-for-user-plane-integrity-protection-for-downlink:full-data-rate
(255)
pDU-session-type
spare:0x0 (0)
pDU-session-type-value:ipv6 (2)
sSC-mode
spare:0x0 (0)
sSC-mode-value:sSC-mode-1 (1)
extended-protocol-configuration-options
extended-protocol-configuration-options-contents-ue2net:80 00 0A 00 00 02 00 00 01 00 00 03 00

------Boundary–
------HTTP-TRACE-END------

3.2 Nsmf_SmContextCreateResponse

After receiving the request of session management context creation from AMF, SMF responds and sends back the response result to AMF. 201 Created indicates the creation is successful. The session context URL is "http://20.20.20.19:31000/nsmf-pdusesession/v1/sm-contexts/2160787646".

------HTTP-TRACE-BEGIN------ domain: response, role: client local_addr:20.20.20.9:29184 peer_addr:20.20.20.19:31000 protocal:
TCP msgtype:117571588 rid=112499410, scheme=http, stream id=951

HTTP/2.0 201 Created content-type: application/json content-length: 2
location:
http://20.20.20.19:31000/nsmf-pdusession/v1/sm-contexts/2160787646

{}
------HTTP-TRACE-END------

4,SMF-UDM Registration/Subscription retrive/Subscription for updates

As the terminal initiates the application for establishing PDU session, the connection management status of the terminal will change, so SMF will update the terminal connection management information in UDM; in addition, in order to process the PDU session establishment request initiated by the terminal, SMF needs to obtain the signing information of the terminal, including slice and DNN, QoS file, SSC mode, etc.

4.1 Nudm_RegistrationSMFRequest

First, SMF calls nudm registrationsmfrequest to initiate SMF related registration, "put / nudm UECM / V1 / imsi-46001120010019 / Registrations / SMF registrations / 5" to register SMF registration information with digit 19 of IMSI, which corresponds to SMF instance ID, PDU session ID, SNSSAI and DNN, PLMN List, pgwFQDN information, etc. of this PDU session.

------HTTP-TRACE-BEGIN------ domain: request, role: client local_addr:20.20.20.19:28737 peer_addr:10.0.0.82:8080 protocal: TCP
msgtype:117637203 rid=53382330, scheme=http, stream id=319

PUT
/nudm-uecm/v1/imsi-4600112001
00019/registrations/smf-registrations/5
HTTP/2.0 user-agent: SMF-1a53d55c-75b1-4610-9023-3d79c9bf3f45
content-type: application/json host: epc.mnc001.mcc460.3gppnetwork.org
content-length: 226

{"smfInstanceId":"1a53d55c-75b1-4610-9023-3d79c9bf3f45","pduSessionId":5,"singleNssai":{"sst":1,"sd":"010101"},"dnn":"ims","plmnId":{"mcc":"460","mnc":"01"},"pgwFqdn":"hzsmf001bhw.hz.zj.node.5gc.mnc000.mcc460.3gppnetwork.org"}
------HTTP-TRACE-END------

4.2 Nudm_RegistrationSMFResponse

UDM processes the information in the registration request sent by SMF, and sends it back to 201Created if it succeeds.

------HTTP-TRACE-BEGIN------ domain: response, role: client local_addr:20.20.20.19:28737 peer_addr:10.0.0.82:8080 protocal: TCP
msgtype:117637204 rid=53382330, scheme=http, stream id=319

HTTP/2.0 201 Created content-type: application/json content-length:
226 location:
http://10.0.0.82:8080/nudm-uecm/v1/imsi-460011200100019/registrations/smf-registrations

{"smfInstanceId":"1a53d55c-75b1-4610-9023-3d79c9bf3f45","pduSessionId":5,"singleNssai":{"sst":1,"sd":"010101"},"dnn":"ims","plmnId":{"mcc":"460","mnc":"01"},"pgwFqdn":"hzsmf001bhw.hz.zj.node.5gc.mnc000.mcc460.3gppnetwork.org"}
------HTTP-TRACE-END------

4.3 Nudm_GetUESessionManagementSubscriptionDataRequest

SMF requests session management signing information from UDM, "GET
/Nudm SDM / V1 / imsi-46001120010019 / SM data? Single nssai = {"sst": 1, "sd": "010101"} & DNN = IMS ", key fields are IMSI, single nssai and DNN,

------HTTP-TRACE-BEGIN------ domain: request, role: client local_addr:20.20.20.19:28736 peer_addr:10.0.0.82:8080 protocal: TCP
msgtype:117637147 rid=53398715, scheme=http, stream id=499

GET
/nudm-sdm/v1/imsi-460011200100019/sm-data?single-nssai={"sst":1,"sd":"010101"}&dnn=ims

HTTP/2.0 user-agent: SMF-1a53d55c-75b1-4610-9023-3d79c9bf3f45 host:
epc.mnc001.mcc460.3gppnetwork.org

------HTTP-TRACE-END------

4.4 Nudm_GetUESessionManagementSubscriptionDataResponse

UDM queries the user's signing information according to the slice and DNN information requested by SMF, and sends back the corresponding PDU session types that can be created by SMF (here, the default PDU session type is IPv4, the allowed session types are IPv4v6 and IPv6), SSC mode (here, the default SSC mode is 1, the allowed SSC modes are 2 and 3), and the indication of EPS interoperability iwkEpsInd:True, 5G QoS profile information , 5QI is 9, ARP allocation and reservation priority is 1, session aggregation rate sessionAmbr uplink and downlink are 1Gbps, billing CC field "3gppChargingCharacteristics".

------HTTP-TRACE-BEGIN------ domain: response, role: client local_addr:20.20.20.19:28736 peer_addr:10.0.0.82:8080 protocal: TCP
msgtype:117637148 rid=53398715, scheme=http, stream id=499

HTTP/2.0 200 OK content-type: application/json content-length: 624

[{"singleNssai":{"sst":1,"sd":"010101"},"dnnConfigurations":{"ims":{"pduSessionTypes":{"defaultSessionType":"IPV4","allowedSessionTypes":["IPV4V6","IPV6"]},"sscModes":{"defaultSscMode":"SSC_MODE_1","allowedSscModes":["SSC_MODE_2","SSC_MODE_3"]},"iwkEpsInd":true,"ladnIndicator":false,"5gQosProfile":{"5qi":9,"arp":{"priorityLevel":1,"preemptCap":"NOT_PREEMPT","preemptVuln":"NOT_PREEMPTABLE"},"priorityLevel":1},"sessionAmbr":{"uplink":"1
Gbps","downlink":"1
Gbps"},"3gppChargingCharacteristics":"0000","staticIpAddress":[{"ipv6Addr":"2408:851a:400:1::19"}],"upSecurity":{"upIntegr":"NOT_NEEDED","upConfid":"NOT_NEEDED"}}}}]

------HTTP-TRACE-END------

5,SMF-AMF Nsmf_SmContextCreateResponse

After UDM completes the connection management registration of the corresponding PDU session and retrieves the session management contract information, SMF sends back the response of the creation context to AMF. "Http://20.20.20.19:31000/nsmf-pdusesession/v1/sm-contexts/2160787646" is the corresponding session management context address in SMF.

------HTTP-TRACE-BEGIN------ domain: response, role: client local_addr:20.20.20.9:29184 peer_addr:20.20.20.19:31000 protocal:
TCP msgtype:117571588 rid=112499410, scheme=http, stream id=951

HTTP/2.0 201 Created content-type: application/json content-length: 2
location:
http://20.20.20.19:31000/nsmf-pdusession/v1/sm-contexts/2160787646

{}
------HTTP-TRACE-END------

6,PDU Session authertication/authiorization

VOID

7. SMF-PCF SM Policy Association Establishment

As mentioned earlier, PCF is the entity executing policy control decision in 5G network. SMF needs to initiate a policy control application to PCF. Here is the establishment of Policy Association for application session management. The first step is to find and select PCF.

7a. SMF_PCF Selection

Initiate a PCF selection request to NRF. The targetntype is NFTypePCF, the service name is "ServiceNamenpcfSmpolicycontrol", and the PLMN List of both the target and the requester is "460 01". Slice and DNN, SUPI information of requester.

TransMsgHeader: { "Topic": 525056, "DestKey": {
"KeyType": 2349,
"GroupId": 0,
"KeyValue": "AAAABw==" }, "DestFilter": null, "Ext": null } SrcKey: < KeyType: 2066 KeyValue: "aaaaaaaaaa"

DstKey: < KeyType: 2349 KeyValue: "aaaa"
ReqInfoType: BOTH SearchPara: < TargetNfType: NFTypePCF RequesterNfType: NFTypeSMF ServiceNames:
ServiceNamenpcfSmpolicycontrol TargetPlmnList: <
mcc: "460"
mnc: "01"
RequesterPlmnList: <
mcc: "460"
mnc: "01"
bitFlag: 6
> Snssais: <
sst: 1
sd: "010101"
bitFlag: 2

Dnn: "ims" Supi: "imsi-460011aaaaa0019" Gpsi: "msisdn-861861aaa0019"
TracePara: < UserIdType: UserIdTypeSUPI UserId: "aaaa-aaaaaaaaaaaaaaa"

NRF returns the list of available PCFs according to SMF request slice and DNN information, providing the ID of PCF network function instance and service instance, "Apiroot:" http://10.10.10.24:8080 ". In DNNlist, DNN of service includes" ims "," ctnet "," huawei.com "," 3gnet ".

TransMsgHeader: { "Topic": 525061, "DestKey": {
"KeyType": 2066,
"GroupId": 4294967295,
"KeyValue": "AA4AAMQ2AAEABQ==" }, "DestFilter": null, "Ext": null } DstKey: < KeyType: 2066 KeyValue: "aaaaaaaaaa"

RetCode: StatusOK NfProfiles: < NfInstanceId: "4947a69a-f61b-4bc1-b9da-47c9c5d14b65" NfServices: <
ServiceInstanceId: "4947a69a-f61b-4bc1-b9da-47c9c8690002"
ServiceName: ServiceNamenpcfSmpolicycontrol

Version: <
apiVersionInUri: "v1"
apiFullVersion: "1.prer15.1.0"

**Apiroot: "http://10.10.10.24:8080"**
LogicLink: <
  Link: "[]byte{0x0, 0x0, 0x4, 0x30, 0x49, 0x47, 0xa6, 0x9a, 0xf6, 0x1b, 0x4b, 0xc1, 0xb9, 0xda, 0x47, 0xc9, 0xc5, 0xd1, 0x4b, 0x65,

0x13, 0x76, 0x9d, 0x71, 0x60, 0x0, 0x0}"
>
IPAddr: <
Schema: UriSchemehttp
Fqdn: "bsghzpcrf01fe01bhw.zz.zzdc.pcrf.epc.mnc001.mcc460.3gppnetwork.org"
IpType: IPv4
LocalIPV4Addr: "20.20.20.19:0"
PeerIPV4Addr: "10.10.10.24"
PeerIPV4Port: 8080
>

**PcfInfo: <
DnnList: "ims"
DnnList: "ctnet"
DnnList: "huawei.com"
DnnList: "3gnet"
SupiRanges: <
start: "460010aaaaa0000"
end: "460019aaaaa9999"

RxDiamHost: "rx-diam.host"
RxDiamRealm: "rx-diam.domain"**

Priority: 1
LocalNfInstanceId: "1a53d55c-75b1-4610-9023-3d79c9bf3f45" ReqInfoType: BOTH SearchPara: < TargetNfType: NFTypePCF
RequesterNfType: NFTypeSMF ServiceNames:
ServiceNamenpcfSmpolicycontrol TargetPlmnList: <
mcc: "460"
mnc: "01"
RequesterPlmnList: <
mcc: "460"
mnc: "01"
bitFlag: 6
Snssais: <
sst: 1
sd: "010101"
bitFlag: 2
Dnn: "ims" Supi: "imsi-460011aaaaa0019" Gpsi: "msisdn-861861aaa0019"
TracePara: < UserIdType: UserIdTypeSUPI UserId: "aaaa-aaaaaaaaaaaaaaa"

7b.Npcf_SmPolicyControlCreateRequest

------HTTP-TRACE-BEGIN------ domain: request, role: client local_addr:20.20.20.19:28672 peer_addr:10.10.10.24:8080 protocal:
TCP msgtype:118030339 rid=73011560, scheme=http, stream id=1

POST /npcf-smpolicycontrol/v1/sm-policies HTTP/2.0 user-agent:
SMF-1a53d55c-75b1-4610-9023-3d79c9bf3f45 content-type:
application/json host:
bsghzpcrf01fe01bhw.zz.zzdc.pcrf.epc.mnc001.mcc460.3gppnetwork.org
content-length: 1165

{"accNetChId":{"accNetChaIdValue":199229956,"sessionChScope":true},"chargEntityAddr":{"anChargIpv4Addr":"20.20.20.19"},"gpsi":"msisdn-8618612000019","supi":"imsi-460011200100019","pduSessionId":5,"pduSessionType":"IPV6","chargingcharacteristics":"0000","dnn":"ims","notificationUri":"http://20.20.20.19:31000/npcf-smpolicycontrol/notification/v1/sm-policies/08c1a018120d0892101208000e0000c4360001","accessType":"3GPP_ACCESS","ratType":"NR","servingNetwork":{"mnc":"01","mcc":"460"},"userLocationInfo":{"nrLocation":{"tai":{"plmnId":{"mcc":"460","mnc":"01"},"tac":"000C26"},"ncgi":{"plmnId":{"mcc":"460","mnc":"01"},"nrCellId":"21001f001"}}},"ueTimeZone":"+08:00","subsSessAmbr":{"uplink":"1000000000
bps","downlink":"1000000000
bps"},"subsDefQos":{"5qi":9,"arp":{"priorityLevel":1,"preemptCap":"NOT_PREEMPT","preemptVuln":"NOT_PREEMPTABLE"},"priorityLevel":1},"numOfPackFilter":16,"online":true,"offline":true,"sliceInfo":{"sst":1,"sd":"010101"},"qosFlowUsage":"IMS_SIG","servNfId":{"servNfInstId":"7478c5d1-9648-40ed-7016-85ea90338f70","guami":{"plmnId":{"mcc":"460","mnc":"01"},"amfId":"000041"}},"suppFeat":"1127A","smfId":"1a53d55c-75b1-4610-9023-3d79c9bf3f45"}
------HTTP-TRACE-END------

7c.Npcf_SmPolicyControlCreateResponse

PCF requests SMF and sends corresponding policy control information, including PCC rules and QoS characteristics. Here, pccrules 10136 is the corresponding PCC rules, that is, the corresponding QoS Flow processing rules. According to the description of the standard QoS model QFI of 5G in TS 23.501 5.7.4, a 5QI of 5 is recommended for IMS signaling. So in the PCF response message, the returned QoS Flow usage is "IMS? Sig" (IMS signaling).

------HTTP-TRACE-BEGIN------ domain: response, role: client local_addr:20.20.20.19:28672 peer_addr:10.10.10.24:8080 protocal:
TCP msgtype:118030340 rid=73011560, scheme=http, stream id=1

HTTP/2.0 201 Created content-type: application/json content-length:
711 location:
http://10.10.10.24:8080/npcf-smpolicycontrol/v1/sm-policies/e852a11ae47db52c281627950

{"pccRules":{"10316":{"flowInfos":[{"flowDescription":"permit out ip
from any to any","flowDirection":"BIDIRECTIONAL"}],"pccRuleId":"10316","precedence":65534,"refQosData":["10312"],"refTcData":["3"]}},"qosDecs":{"10312"
:{"5qi":5,"arp":{"preemptCap":"NOT_PREEMPT","preemptVuln":"PREEMPTABLE","priorityLevel":2},"defQosFlowIndication":true,"maxbrDl":"1000000000
bps","maxbrUl":"1000000000
bps","qosId":"10312"}},"qosFlowUsage":"IMS_SIG","sessRules":{"123":{"authDefQos":{"5qi":5,"arp":{"preemptCap":"NOT_PREEMPT","preemptVuln":"PREEMPTABLE","priorityLevel":2}},"authSessAmbr":{"downlink":"1000000000
bps","uplink":"1000000000
bps"},"sessRuleId":"123"}},"traffContDecs":{"3":{"flowStatus":"ENABLED","tcId":"3"}}}

------HTTP-TRACE-END------

8,SMF_UPF Selection

After receiving the policy control information of PCF, SMF should control UPF to distribute the control parameters of QoS Flow. First, UPF should be selected. UPF does not belong to the control surface and does not use the service architecture. PFCP protocol is used for interaction between SMF and UPF. The UPF selection here belongs to the internal message. The requested UPF instance ID is "UPF instance" 2, which is the connection relationship established by PFCP protocol on SMF.

SourcKey: < KeyType: 2061 KeyValue: "aaaa"

DstKey: < KeyType: 2350 KeyValue: "aaaa-aaaaaaaaaaaaaaaaa"
CustomSearchPara: < TargetNfType: "NFTypeUPF" RequesterNfType: "NFTypeSMF" UpfCon: <
InstanceId: "upf_instance_2"

TracePara: < UserIdType: UserIdTypeSUPI UserId: "aaaa-aaaaaaaaaaaaaaa"

UPF selects the response message. This UPF instance can be DNN as "ims", "3gnet", DNNupfinfoList, which describes the PDU session type of DNN. Here we see IPv4, IPv6, IPv4 V6, unstructured, Ethernet.

TransMsgHeader: { "Topic": 525107, "DestKey": {
"KeyType": 2061,
"GroupId": 4294967295,
"KeyValue": "wMsAvg==" }, "DestFilter": null, "Ext": null } SrcKey: < KeyType: 2350 KeyValue: "aaaa-aaaaaaaaaaaaaaaaa"

DstKey: < KeyType: 2061 KeyValue: "aaaa"
CustomSearchResult: < RetCode: StatusOK UpfResult: <
MetaResult: <
NfInstanceId: "upf_instance_2"
NfStatus: NFStatusREGISTERED
FQDN: "huawei3"
Capacity: 100
APN: "3gnet"
APN: "ims"
Area: "area02"
Area: "area05"
Area: "area07"
SnssaiUpfInfos: <
sNssai: <
sst: 1
sd: "010101"

    dnnUpfInfoList: <
      dnn: "3gnet"
      pduSessionTypes: PduSessionTypeIPV4
      pduSessionTypes: PduSessionTypeIPV6
      pduSessionTypes: PduSessionTypeIPV4V6
      pduSessionTypes: PduSessionTypeUNSTRUCTURED
      pduSessionTypes: PduSessionTypeETHERNET
    >
    dnnUpfInfoList: <
      dnn: "ims"
      pduSessionTypes: PduSessionTypeIPV4
      pduSessionTypes: PduSessionTypeIPV6
      pduSessionTypes: PduSessionTypeIPV4V6
      pduSessionTypes: PduSessionTypeUNSTRUCTURED
      pduSessionTypes: PduSessionTypeETHERNET
    >
  >
  PduSessionType: PduSessionTypeIPV4
  PduSessionType: PduSessionTypeIPV6
  PduSessionType: PduSessionTypeIPV4V6
  PduSessionType: PduSessionTypeUNSTRUCTURED
  PduSessionType: PduSessionTypeETHERNET
  Op: MOD
>

LocalNfInstanceId: "1a53d55c-75b1-4610-9023-3d79c9bf3f45" CustomSearchPara: < TargetNfType: "NFTypeUPF" RequesterNfType:
"NFTypeSMF" UpfCon: <
InstanceId: "upf_instance_2"

TracePara: < UserIdType: UserIdTypeSUPI UserId: "aaaa-aaaaaaaaaaaaaaa"

10,SMF-UPF PFCPSessionEstablishment

After selecting UPF, SMF sends PFCP session establishment request to UPF and issues QoS Flow control parameters.

10a PFCPSessionEstablishmentRequest

There are many parameter sets in PFCP session establishment request. Generally speaking, it is mainly UPF forwarding rules. First, it is PDR (Packet Detection Rule). The characteristic of QoS Flow is PDR sent by one or more SMF S to UPF. Section TS 23.501 5.8.2.4.2 defines the PDR composition of IP type, Ethernet and unstructured PDU session type, taking IP type (including IPV4, IPV6 and IPV4 V6) as the definition For example, PDR consists of core network tunnel information, network instance, QFI, IP packet filter set defined in section 5.7.6.2 and application ID.
The following figure shows the basic information of PFCP session establishment. For example, the message type is "pfcpsessionassemblyrequest", the IP address type of the node is IPv6, and the address is 2401XXXX.

The optional PDR ID here is 0x9801, and the corresponding priority is 65534. The allowed outgoing IP any to any, that is, any IP can be used.

The following figure shows the information of a specific PDR. The QFI of this PDR is 1, the source data interface is N3, and the outgoing message header removal aspect is to remove the UDP header of GTPU. The FAR (forwarding rule) ID is 0x20100001, and the QER-ID is 0x7400002 and 0x7300001.
UPF filters the incoming packets according to PDR packet filtering, IP packets on the match are forwarded according to the forwarding rules of FAR, and the forwarded QoS is conducted according to the regulations of QER, so that the incoming IP packets can be mapped to QoS Flow. For other packets, such as Ethernet and unstructured packets, the details are different.

In user ID information, IMSI value is the user of PDU session, as well as slice information, access network technology type and PDN session type.

10b PFCPSessionEstablishmentResponse

UPF accepts the PFCP session establishment request sent by SMF and sends back Accept.

11,Namf_Communication_N1N2MessageTransfer

SMF sends messages to AMF, which forwards them to UE,

------HTTP-TRACE-BEGIN------ domain: request, role: server local_addr:20.20.20.9:31000 peer_addr:20.20.20.19:28736 protocal:
TCP msgtype:118161423 rid=138600715, scheme=http, stream id=425

POST /namf-comm/v1/ue-contexts/imsi-460011200100019/n1-n2-messages
HTTP/2.0 host:
amf1.cluster1.net2.amf.5gc.mnc008.mcc460.3gppnetwork.org
content-length: 713 user-agent:
SMF-1a53d55c-75b1-4610-9023-3d79c9bf3f45 content-type:
multipart/related; boundary=----Boundary

------Boundary Content-Type: application/json

{"n1MessageContainer":{"n1MessageClass":"SM","n1MessageContent":{"contentId":"n1msg"}},"n2InfoContainer":{"n2InformationClass":"SM","smInfo":{"pduSessionId":5,"n2InfoContent":{"ngapMessageType":47,"ngapIeType":"PDU_RES_SETUP_REQ","ngapData":{"contentId":"n2msg"}}}},"pduSessionId":5}
------Boundary Content-Type: application/vnd.3gpp.5gnas Content-Id: n1msg

                   MsgEnter   ng-sm-msg
pDU-session-identity:0x5 (5)
procedure-transaction-identity:0x44 (68)

------Boundary Content-Type: application/vnd.3gpp.ngap Content-Id: n2msg

                   Ngap-Msg   ngnas-message:00 00 05 00 82 00 0A 0C 3B 9A 3F 00 30 3B 9A 3F 00 00 8B 00 16 07 F0 24 08 81 40 3F 00 3F

00 00 00 00 00 00 00 00 01 00 F8 00 3F 00 86 00 01 10 00 8A 00 02 09
00 00 88 00 07 01 01 00 00 05 04 4A

------Boundary–
------HTTP-TRACE-END------

12,N2PDUSessionRequest(PDUSession ResourceSetupRequest)

AMF sends a request to RAN to allocate PDU session resources, where AMF-UE-NGAP-ID identifies the NGAP-ID of the terminal in AMF, and RAN-UE-NGAP-ID is the NGAP-ID of the terminal in RAN. It also contains PDU session ID and slice information.

13,RAN-UE PDU Session Establishment Accept

14,PDUSessionResourceSetupResponse

The RAN side allocates the resource with session ID 5 of PDU, sends back the establishment acceptance response, and hi sends other transmission layer information, such as GTP tunnel information.

15,AMF-SMF Nsmf_PDUSessionUpdateSMContextRequest

After the session resource allocation information of PDU is sent back from RAN side, AMF sends a request to SMF to update the session management context, and sends SM message returned from RAN side to SMF.

------HTTP-TRACE-BEGIN------ domain: request, role: client local_addr:20.20.20.9:29184 peer_addr:20.20.20.19:31000 protocal:
TCP msgtype:117571593 rid=112532180, scheme=http, stream id=955

POST /nsmf-pdusession/v1/sm-contexts/2160787646/modify HTTP/2.0
user-agent: AMF-7478c5d1-9648-40ed-7016-85ea90338f70 content-type:
multipart/related; boundary=----Boundary host: 20.20.20.19:31000
content-length: 528

------Boundary Content-Type: application/json

{"guami":{"plmnId":{"mcc":"460","mnc":"01"},"amfId":"000041"},"servingNetwork":{"mcc":"460","mnc":"01"},"anType":"3GPP_ACCESS","ueLocation":{"nrLocation":{"tai":{"plmnId":{"mcc":"460","mnc":"01"},"tac":"000C26"},"ncgi":{"plmnId":{"mcc":"460","mnc":"01"},"nrCellId":"21001f001"}}},"n2SmInfo":{"contentId":"n2smInfo"},"n2SmInfoType":"PDU_RES_SETUP_RSP"}
------Boundary Content-Type: application/vnd.3gpp.ngap Content-Id: n2smInfo

                   Ngap-Msg   ngnas-message:20 0F E0 24 08 3F 60 A0 00 00 00 00 00 00 00 00 00 00 3E B4 F4 A4 3F 00 01 14 

------Boundary–
------HTTP-TRACE-END------

16,SMF-UPF PFCPSessionModification

16a.N4SessionModificationRequest

After receiving the session management message sent from the RAN side forwarded by AMF, SMF sends the PFCP session update request to UPF, in which the FAR-ID, TEID and IPv6 information are updated, corresponding to the SEID and IPv6 address of UPF, and the path of this PDU session is established.

16b.N4SessionModificationResponse

UPF responds to PFCP session modification request initiated by SMF and sends request accepted for confirmation.

17,Nsmf_PDUSessionUpdateSMContextResponse

SMF sends back to AMF a successful response to a PDU session context update.

------HTTP-TRACE-BEGIN------ domain: response, role: client local_addr:20.20.20.9:29184 peer_addr:20.20.20.19:31000 protocal:
TCP msgtype:117571594 rid=112532180, scheme=http, stream id=955

HTTP/2.0 200 OK content-type: application/json content-length: 2

{}
------HTTP-TRACE-END------

At this time, the PDU session is established successfully.

Published 2 original articles, praised 0 and visited 40
Private letter follow

Tags: Session network JSON

Posted on Mon, 13 Jan 2020 07:31:10 -0500 by tomdude48