Commit 80dc25d2 authored by Yann Garcia's avatar Yann Garcia
Browse files

Merge branch 'TTF_T048'

parents 87607f2e 29214b4b
Loading
Loading
Loading
Loading
+22 −21
Original line number Diff line number Diff line
@@ -35,30 +35,31 @@ Package NGAP_Common {
	Event accepts
	Event aborts
	        
	        
	//TP_AMF NGAP events
	Event isInCM_CONNECTED
	Event hasActiveUeNgapContext
	Event hasNoPduSessionResourceEstablishedForTheConcernedPduSessionId
	Event hasSentPDU_SESSION_RESOURCE_SETUP_REQUEST
	Event hasEstablishedPduSessionResourceForTheConcernedPduSessionId
	Event hasSentPDU_SESSION_RESOURCE_RELEASE_COMMAND
	Event isNotRegisteredToAMF
	Event hasEstablishedInitialContext
	Event hasEstablished_NG_C_AssociationToAMF
	Event hasNotEstablished_NG_C_AssociationToAMF
	Event hasEstablishedTNL_AssociationToAMF
	Event isRegisteredToAMF
	Event initiatesPduSessionResourceModificationToAddQoSFlow
	Event processTheUENasDeregistration
	Event isInCM_CONNECTED //UE is in CM_CONNECTED state
	Event hasActiveUeNgapContext //The AMF maintains a valid UE NGAP context identified by the AMF UE NGAP ID and RAN UE NGAP ID and associated with an active UE-associated logical NG-connection towards the NG-RAN node.
	Event hasNoPduSessionResourceEstablishedForTheConcernedPduSessionId //The AMF does not maintain any established PDU Session Resource in the UE NGAP context for the concerned PDU Session ID, and no NGAP PDU Session Resource Setup procedure is ongoing for that PDU Session ID.
	Event hasSentPDU_SESSION_RESOURCE_SETUP_REQUEST //The AMF has transmitted a PDU_SESSION_RESOURCE_SETUP_REQUEST message to the NG-RAN node for the concerned UE and is awaiting the corresponding PDU_SESSION_RESOURCE_SETUP_RESPONSE.
	Event hasEstablishedPduSessionResourceForTheConcernedPduSessionId //The AMF maintains an established PDU Session Resource in the UE NGAP context for the concerned PDU Session ID following a successful PDU Session Resource Setup procedure.
	Event hasSentPDU_SESSION_RESOURCE_RELEASE_COMMAND //The AMF has transmitted a PDU_SESSION_RESOURCE_RELEASE_COMMAND message to the NG-RAN node for the concerned UE and is awaiting the corresponding PDU_SESSION_RESOURCE_RELEASE_RESPONSE.
	Event isNotRegisteredToAMF //The UE has no active 5G registration with the AMF.
	Event hasEstablishedInitialContext //The UE context is established in the gNB after successful Initial Context Setup procedure triggered by the AMF.
	Event hasEstablished_NG_C_AssociationToAMF //An NG-C (NGAP) association exists between the gNB and AMF, reached after successful NG Setup procedure.
	Event hasNotEstablished_NG_C_AssociationToAMF //No NG-C (NGAP) association exists between the gNB and AMF.
	Event hasEstablishedTNL_AssociationToAMF //A transport-layer (SCTP) association between gNB and AMF is established before any NGAP procedures.
	Event isRegisteredToAMF //The UE has completed the 5G Registration procedure and received a Registration Accept from the AMF.
	Event initiatesPduSessionResourceModificationToAddQoSFlow //AMF initiates PDU_SESSION_RESOURCE_MODIFY_REQUEST to add the QoS flow for already established PDU session.
	Event processTheUENasDeregistration //UE performs the NAS Deregistration signalling to release its registration and associated contexts from the AMF.
	
	
	//TP_GNB NGAP events
	Event isRegisteredToAMF
	Event havingSentPDUSessionEstablishment
	Event hasEstablishedPDUsession
	Event hasEstablished_NG_C_AssociationToAMF
	Event u_Plane_inactivity_timer_expires
	Event hasSuccessfullyEstablishedTNLconnection
	Event isRegisteredToAMF //The UE has completed the 5G Registration procedure and received a Registration Accept from the AMF.
	Event havingSentPDUSessionEstablishment //The UE has sent a PDU Session Establishment Request and is awaiting the network response.
	Event hasEstablishedPDUsession //The AMF maintains an established PDU Session Resource in the UE NGAP context for the concerned PDU Session ID following a successful PDU Session Resource Setup procedure.
	Event hasEstablished_NG_C_AssociationToAMF //An NG-C (NGAP) association exists between the gNB and AMF, reached after successful NG Setup procedure.
	Event u_Plane_inactivity_timer_expires //The user-plane inactivity timer expires when no uplink or downlink user-plane traffic is detected for a configured duration.
	Event hasSuccessfullyEstablishedTNLconnection //A transport network layer (TNL) connection is successfully established after completion of the SCTP association setup between the gNB and the AMF.
		

	// NGAP messages
+12 −14
Original line number Diff line number Diff line
@@ -11,26 +11,24 @@ Package NGNAS_Common {
	}
	
	//TP AMF NGNAS events
	Event isInOverloadedState
	Event indicateUEdeactivation
	Event indicateUEderegistration
	Event isInOverloadedState // The AMF is in an overload condition and overload control procedures are active.
	Event indicateUEdeactivation  // The UE is administratively deactivated in the 5GC.
	Event indicateUEderegistration  // The UE is administratively de-registered in the 5GC.
	
        
	// This template may be used as default AUTHENTICATION REQUEST message within a DOWNLINK NAS TRANSPORT message. */
	Template AUTHENTICATION_REQUEST {
        the IUT entity sends an DOWNLINK_NAS_TRANSPORT containing {
				NAS_PDU containing {
					extended_protocol_discriminator set to 5GS_MOBILITY_MANAGEMENT_MESSAGES, //reference ts_124007v180200p: Table 11.2.3.1.1A.1: EPD values 
                    extended_protocol_discriminator set to 5GS_MOBILITY_MANAGEMENT_MESSAGES, //!reference ts_124007v180200p: Table 11.2.3.1.1A.1: EPD values 
                    security_header_type set to NOT_SECURITY_PROTECTED,
					spare_half_octet,
					authentication_request_message_identity set to AUTHENTICATION_REQUEST,
                    message_type set to AUTHENTICATION_REQUEST,
                    ngKSI containing {
						nas_key_set_identifier set to "111"
					},
					spare_half_octet,
					ABBA,
                    Authentication_parameter_RAND,
                    Authentication_parameter_AUTN
                        nas_key_set_identifier set to "111"},
                    ABBA containing {
                        ABBA_contents set to " '0000'H "},
                    Authentication_parameter_RAND set to RV_Authentication_parameter_RAND,
                    Authentication_parameter_AUTN set to RV_Authentication_parameter_AUTN
				}
		}
		to the GNB entity
+32 −14
Original line number Diff line number Diff line
/*
Copyright (c) ETSI 2025.
Copyright (c) ETSI 2026.

This software is subject to copyrights owned by ETSI. Non-exclusive permission
is hereby granted, free of charge, to copy, reproduce and amend this file
@@ -567,12 +567,6 @@ Package TP_AMF_NGAP {
	                            PDU_Session_Resource_Item containing {
	                                PDU_SessionId set to PX_PDU_SessionId}},
                            Cause set to PX_VA_Cause}
                            //VA1="RadioNetwork.user-inactivity"
                            //VA2="RadioNetwork.unspecified";
                            //VA3="RadioNetwork.release due to NG-RAN generated reason";
                            //VA4="RadioNetwork.cell not available";
                            //VA5="RadioNetwork.radio resource not available";
                            //VA6="RadioNetwork.radio connection with UE lost";
                        from the GNB entity
                    }
                    then {
@@ -583,18 +577,42 @@ Package TP_AMF_NGAP {
                                    RAN_UE_NGAP_ID set to PX_RAN_UE_NGAP_ID}}
                            ,
                            Cause set to PX_VA_Cause}
                            //VA1="RadioNetwork.user-inactivity"
                            //VA2="RadioNetwork.unspecified";
                            //VA3="RadioNetwork.release due to NG-RAN generated reason";
                            //VA4="RadioNetwork.cell not available";
                            //VA5="RadioNetwork.radio resource not available";
                            //VA6="RadioNetwork.radio connection with UE lost";
                        to the GNB entity
                        and the IUT entity accepts a UE_CONTEXT_RELEASE_COMPLETE containing {
                            AMF_UE_NGAP_ID set to RV_AMF_UE_NGAP_ID,
                            RAN_UE_NGAP_ID set to PX_RAN_UE_NGAP_ID}
                    }
                }    
                Variant TP_NGAP_AMF_CMP_03_ID_01 {
                    Bindings {
                        value PX_VA_Cause set to "RadioNetwork.user-inactivity"
                    }
                }                        
                Variant TP_NGAP_AMF_CMP_03_ID_02 {
                    Bindings {
                        value PX_VA_Cause set to "RadioNetwork.unspecified"
                    }
                }                       
                Variant TP_NGAP_AMF_CMP_03_ID_03 {
                    Bindings {
                        value PX_VA_Cause set to "RadioNetwork.release due to NG-RAN generated reason"
                    }
                }                        
                Variant TP_NGAP_AMF_CMP_03_ID_04 {
                    Bindings {
                        value PX_VA_Cause set to "RadioNetwork.cell not available"
                    }
                }                        
                Variant TP_NGAP_AMF_CMP_03_ID_05 {
                    Bindings {
                        value PX_VA_Cause set to "RadioNetwork.radio resource not available"
                    }
                }                        
                Variant TP_NGAP_AMF_CMP_03_ID_06 {
                    Bindings {
                        value PX_VA_Cause set to "RadioNetwork.radio connection with UE lost"
                    }
                }
            } // end TP_NGAP_AMF_CMP_03
                
        } //end Package UE_Context_Release_AMF_initiated
@@ -1229,6 +1247,6 @@ Package TP_AMF_NGAP {
            } // end TP TP_NGAP_AMF_IMP_08_2
                
        } //end Package NG_Reset
    }
    } //end Package Clause_8_7_Interface_Management_Procedures
} //end Package TP_AMF_NGAP
+20 −0
Original line number Diff line number Diff line
@@ -358,6 +358,26 @@ module LibNGAP_Templates {
                        /**
                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.3 PDU SESSION RESOURCE RELEASE COMMAND
                         */
                        template (present) InitiatingMessage mw_n2_PDUSessionResourceReleaseCommand_base_nas := {
                            procedureCode := id_PDUSessionResourceRelease,
                            criticality   := reject,
                            value_        := {
                                              PDUSessionResourceReleaseCommand := {
                                                                                   protocolIEs := {
                                                                                                   *,
                                                                                                   {
                                                                                                       id := id_NAS_PDU,
                                                                                                       criticality := ignore,
                                                                                                       value_ := { NAS_PDU := ? }
                                                                                                   },
                                                                                                   *
                                                                                                  }
                                                                                    }
                                            }
                        } // End of template mw_n2_PDUSessionResourceReleaseCommand_base_nas
                        template (present) InitiatingMessage mw_n2_PDUSessionResourceReleaseCommand(
                                                                                                    template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
                                                                                                    template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
+17 −0
Original line number Diff line number Diff line
@@ -2321,6 +2321,23 @@ module LibNGAP_Functions {
                        log( vc_recvNgNasUl_Msg );
                        log("****************************************");

                    }
                }
            } else if (match(vc_recvNGAP_PDU.initiatingMessage, mw_n2_PDUSessionResourceReleaseCommand_base_nas)) {
                var integer numOfIEs := lengthof(vc_recvNGAP_PDU.initiatingMessage.value_.PDUSessionResourceReleaseCommand.protocolIEs)

                for (var integer i:=0;i<numOfIEs;i:=i+1){

                    if ( (vc_recvNGAP_PDU.initiatingMessage.value_.PDUSessionResourceReleaseCommand.protocolIEs[i].id) == 38 /*id_NAS_PDU*/) {
                        vc_recvNAS_PDU := vc_recvNGAP_PDU.initiatingMessage.value_.PDUSessionResourceReleaseCommand.protocolIEs[i].value_.nAS_PDU;
                        var bitstring bs := oct2bit(vc_recvNAS_PDU);
                        var integer v_result := decvalue(bs,vc_recvNgNasUl_Msg);
                        log("****************************************");
                        log("PDUSessionResourceReleaseCommand - NAS-PDU! ");
                        log( vc_recvNAS_PDU );
                        log( vc_recvNgNasUl_Msg );
                        log("****************************************");

                    }
                }
            }