diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang index 7db030b642272af240f10dd8dda839a99c2857ed..eb3a3e1efca919f6407523d16596f4b56eee6aaf 100755 --- a/yang-models/_3gpp-5gc-nrm-amffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-amffunction.yang @@ -25,6 +25,140 @@ module _3gpp-5gc-nrm-amffunction { revision 2019-05-31 { reference "Ericsson refactoring."; } revision 2018-08-07 { reference "Initial revision"; } + grouping GlobalRanNodeIDGrp{ + + list pLMNId { + description "The PLMN Identifier is composed of + a Mobile Country Code (MCC) and + a Mobile Network Code (MNC)."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + choice GlobalRanNodeID{ + description "Unique identifier of an NG-RAN node."; + reference "3GPP TS 38.413"; + mandatory true; + case gNB { + leaf GlobalgNBID{ + description "Unique identifier of a gNB."; + reference "3GPP TS 38.413"; + type int64; + mandatory true; + } + } + + case ng-eNB{ + leaf Globalng-eNBID{ + type string{ + pattern '^(MacroNGeNB-[A-Fa-f0-9]{5}|LMacroNGeNB- + [A-Fa-f0-9]{6}|SMacroNGeNB + -[A-Fa-f0-9]{5})$'; + } + description "This represents the identifier of + the ng-eNB ID as specified in + clause 9.3.1.8 of 3GPP TS 38.413."; + mandatory true; + } + } + + case N3IWF{ + leaf N3IWFID{ + type string{ + pattern '^[A-Fa-f0-9]+$'; + } + description "This IE shall contain the N3IWF + identifier received over NGAP and + shall be encoded as a string of + hexadecimal characters."; + mandatory true; + } + } + + case TNGF{ + leaf TNGFID{ + type string{ + pattern '^[A-Fa-f0-9]+$'; + } + description "This represents the identifier of + the TNGF ID as specified in clause + 9.3.1.161 of 3GPP TS 38.413 in hexadecimal + representation."; + mandatory true; + } + } + + case TWIF{ + leaf TWIFID{ + type string; + description "This represents the TWIF identification + as specified in clause + 9.3.1.163 of TS 38.413"; + mandatory true; + } + } + + case W-AGF{ + leaf W-AGFID{ + type string{ + pattern '^[A-Fa-f0-9]+$'; + } + description "This represents the identifier of + the W-AGF ID as specified in + clause 9.3.1.162 of 3GPP TS 38.413 + in hexadecimal representation."; + mandatory true; + } + } + } + } + + grouping satelliteBackhaulInfo{ + description "Defines information related to satellite backhaul category + and corresponding information of gNB."; + reference "3GPP TS 23.501"; + + list GlobalRanNodeID{ + description "Unique identifier of an NG-RAN node."; + uses GlobalRanNodeIDGrp; + min-elements 1; + max-elements 1; + leaf GlobalRanNodeIDValue{ + type string; + description "this relies on the choice of GlobalRanNodeID"; + } + key "GlobalRanNodeIDValue"; + } + + leaf satelliteBackhaulCategory{ + description "Satellite backhaul category refers to the type of the + satellite used in the backhaul. Only a single backhaul category + can be indicated."; + reference "3GPP TS 29.571"; + type enumeration{ + enum GEO; + enum MEO; + enum LEO; + enum OTHER_SAT; + enum DYNAMIC_GEO; + enum DYNAMIC_MEO; + enum DYNAMIC_LEO; + enum DYNAMIC_OTHER_SAT; + enum NON_SATELLITE; + } + mandatory true; + } + + leaf geoSatelliteId{ + description "Unique identifier of a GEO satellite."; + reference "3GPP TS 29.571"; + type string; + //condition present only if the UPF is deployed on the satellite. + } + } + grouping AMFFunctionGrp { description "Represents the AMFFunction IOC"; uses mf3gpp:ManagedFunctionGrp; @@ -38,7 +172,7 @@ module _3gpp-5gc-nrm-amffunction { } container aMFIdentifier { - presence true; + //presence true; description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; uses types3gpp:AmfIdentifier; @@ -66,6 +200,7 @@ module _3gpp-5gc-nrm-amffunction { min-elements 1; max-elements 1; uses types3gpp:ManagedNFProfile; + description ""; } list commModelList { @@ -77,6 +212,18 @@ module _3gpp-5gc-nrm-amffunction { uses types5g3gpp:CommModel; } + list satelliteBackhaulInfoList{ + description "Specifies a list of satellite backhaul information. It can be + used by NF and NF services."; + leaf GlobalRanNodeIDValue{ + type string; + description "this relies on the choice of GlobalRanNodeID"; + } + key "GlobalRanNodeIDValue"; + min-elements 1; + uses satelliteBackhaulInfo; + } + } augment "/me3gpp:ManagedElement" { diff --git a/yang-models/_3gpp-5gc-ecmconnectioninfo.yang b/yang-models/_3gpp-5gc-nrm-ecmconnectioninfo.yang similarity index 96% rename from yang-models/_3gpp-5gc-ecmconnectioninfo.yang rename to yang-models/_3gpp-5gc-nrm-ecmconnectioninfo.yang index a5f590d5a093436e9d5a1beff94d4b91d73320f2..b8b795ab4508c1af74d780ad835dc48e6a6afc00 100644 --- a/yang-models/_3gpp-5gc-ecmconnectioninfo.yang +++ b/yang-models/_3gpp-5gc-nrm-ecmconnectioninfo.yang @@ -1,6 +1,6 @@ -module _3gpp-5gc-ecmconnectioninfo { +module _3gpp-5gc-nrm-ecmconnectioninfo { yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-5gc-ecmconnectioninfo"; + namespace "urn:3gpp:sa5:_3gpp-5gc-nrm-ecmconnectioninfo"; prefix "econn3gpp"; import ietf-inet-types { prefix inet; } @@ -11,11 +11,12 @@ module _3gpp-5gc-ecmconnectioninfo { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the EcmConnectionInfo Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2023-11-14 { reference CR-1136 ; } + revision 2024-01-29 { reference CR-1166 ; } + revision 2023-11-05 { reference CR-1131 ; } grouping GeoLocGrp { description "This datatype represent the geographical location."; @@ -250,4 +251,4 @@ module _3gpp-5gc-ecmconnectioninfo { } } } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-nfprofile.yang index 8f6155866e105420fe6f23810c68212f1ad37d28..43f988955e6056eafe3fbf7ee79920019286c999 100755 --- a/yang-models/_3gpp-5gc-nrm-nfprofile.yang +++ b/yang-models/_3gpp-5gc-nrm-nfprofile.yang @@ -10,6 +10,7 @@ module _3gpp-5gc-nrm-nfprofile { import _3gpp-5gc-nrm-nfservice { prefix nfs3gpp; } organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "NF profile class. Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; @@ -40,16 +41,19 @@ module _3gpp-5gc-nrm-nfprofile { } leaf heartBeatTimer { - description "Time in seconds expected between 2 consecutive heart-beat messages from - an NF Instance to the NRF. It may be included in the registration request. - When present in the request it shall contain the heartbeat time proposed by the NF service consumer."; + description "Time in seconds expected between 2 consecutive + heart-beat messages from an NF Instance to the NRF. + It may be included in the registration request. + When present in the request it shall contain the + heartbeat time proposed by the NF service consumer."; type uint16; } list plmnList { description "PLMN(s) of the Network Function. - This IE shall be present if this information is available for the NF. - If not provided, PLMN ID(s) of the PLMN of the NRF are assumed for the NF."; + This IE shall be present if this information + is available for the NF. If not provided, PLMN ID(s) + of the PLMN of the NRF are assumed for the NF."; min-elements 1; key "mcc mnc"; @@ -57,17 +61,22 @@ module _3gpp-5gc-nrm-nfprofile { } list sNssais { - description "S-NSSAIs of the Network Function. If not provided, the NF can serve any S-NSSAI. - When present this IE represents the list of S-NSSAIs supported in all the PLMNs listed in the plmnList IE."; + description "S-NSSAIs of the Network Function. If not + provided, the NF can serve any S-NSSAI. When present + this IE represents the list of S-NSSAIs supported in + all the PLMNs listed in the plmnList IE."; min-elements 1; key "sst sd"; uses Snssai; } list perPlmnSnssaiList { - description "This IE may be included when the list of S-NSSAIs supported by the NF for each PLMN it is supporting is different. - When present, this IE shall include the S-NSSAIs supported by the Network Function - for each PLMN supported by the Network Function. When present, this IE shall override sNssais IE."; + description "This IE may be included when the list of + S-NSSAIs supported by the NF for each PLMN it is supporting + is different. When present, this IE shall include the S-NSSAIs + supported by the Network Function for each PLMN supported by + the Network Function. When present, this IE shall + override sNssais IE."; min-elements 1; key idx; leaf idx { type uint32; } @@ -82,14 +91,15 @@ module _3gpp-5gc-nrm-nfprofile { } leaf fqdn { - description "FQDN of the Network Function. For AMF, the FQDN registered with the NRF - shall be that of the AMF Name."; + description "FQDN of the Network Function. For AMF, the + FQDN registered with the NRF shall be that of the AMF Name."; type inet:domain-name; } leaf interPlmnFqdn { - description "If the NF needs to be discoverable by other NFs in a different PLMN, - then an FQDN that is used for inter-PLMN routing is specified."; + description "If the NF needs to be discoverable by other + NFs in a different PLMN, then an FQDN that is used + for inter-PLMN routing is specified."; type inet:domain-name; } @@ -122,8 +132,9 @@ module _3gpp-5gc-nrm-nfprofile { } leaf-list allowedNfDomains { - description "Pattern representing the NF domain names allowed to access the NF instance. - If not provided, any NF domain is allowed to access the NF."; + description "Pattern representing the NF domain names allowed + to access the NF instance. If not provided, + any NF domain is allowed to access the NF."; min-elements 1; type string; } @@ -137,54 +148,67 @@ module _3gpp-5gc-nrm-nfprofile { } leaf priority { - description "Priority (relative to other NFs of the same type) in the range of 0-65535, to be used for NF selection; - lower values indicate a higher priority. If priority is also present in the nfServiceList parameters, - those will have precedence over this value. The NRF may overwrite the received priority value when exposing + description "Priority (relative to other NFs of the same type) + in the range of 0-65535, to be used for NF selection; + lower values indicate a higher priority. + If priority is also present in the nfServiceList + parameters, + those will have precedence over this value. + The NRF may overwrite the received priority value + when exposing an NFProfile with the Nnrf_NFDiscovery service."; type uint16; } leaf capacity { - description "Static capacity information in the range of 0-65535, expressed as a weight - relative to other NF instances of the same type; if capacity is also present - in the nfServiceList parameters, those will have precedence over this value."; + description "Static capacity information in the range of 0-65535, + expressed as a weight relative to other NF instances of + the same type; if capacity is also present in the nfServiceList + parameters, those will have precedence over this value."; type uint16; } leaf load { - description "Dynamic load information, ranged from 0 to 100, indicates the current load percentage of the NF."; + description "Dynamic load information, ranged from 0 to 100, + indicates the current load percentage of the NF."; type types3gpp:Load; } leaf locality { - description "Operator defined information about the location of the NF instance (e.g. geographic location, data center)."; + description "Operator defined information about the location + of the NF instance (e.g. geographic location, data center)."; type string; } grouping udrInfo { leaf groupId { - description "Identity of the UDR group that is served by the UDR instance. - If not provided, the UDR instance does not pertain to any UDR group."; + description "Identity of the UDR group that is served + by the UDR instance. + If not provided, the UDR instance does not pertain + to any UDR group."; type string; } list supiRanges { - description "List of ranges of SUPI's whose profile data is available in the UDR instance."; + description "List of ranges of SUPI's whose profile data + is available in the UDR instance."; key "start end pattern"; min-elements 1; uses SupiRange; } list gpsiRanges { - description "List of ranges of GPSIs whose profile data is available in the UDR instance."; + description "List of ranges of GPSIs whose profile data is + available in the UDR instance."; key "start end pattern"; min-elements 1; uses IdentityRange; } list externalGroupIdentifiersRanges { - description "List of ranges of external groups whose profile data is available in the UDR instance."; + description "List of ranges of external groups whose profile + data is available in the UDR instance."; key "start end pattern"; min-elements 1; uses IdentityRange; @@ -201,35 +225,41 @@ module _3gpp-5gc-nrm-nfprofile { grouping udmInfo { leaf groupId { - description "Identity of the UDM group that is served by the UDM instance. - If not provided, the UDM instance does not pertain to any UDM group."; + description "Identity of the UDM group that is served by the + UDM instance. If not provided, the UDM instance does + not pertain to any UDM group."; type string; } list supiRanges { - description "List of ranges of SUPI's whose profile data is available in the UDM instance."; + description "List of ranges of SUPI's whose profile data is + available in the UDM instance."; key "start end pattern"; min-elements 1; uses SupiRange; } list gpsiRanges { - description "List of ranges of GPSIs whose profile data is available in the UDM instance."; + description "List of ranges of GPSIs whose profile data is + available in the UDM instance."; key "start end pattern"; min-elements 1; uses IdentityRange; } list externalGroupIdentifiersRanges { - description "List of ranges of external groups whose profile data is available in the UDM instance."; + description "List of ranges of external groups whose profile + data is available in the UDM instance."; key "start end pattern"; min-elements 1; uses IdentityRange; } leaf-list routingIndicators { - description "List of Routing Indicator information that allows to route network signalling with SUCI - to the UDM instance. If not provided, the UDM can serve any Routing Indicator. + description "List of Routing Indicator information that allows + to route network signalling with SUCI + to the UDM instance. If not provided, + the UDM can serve any Routing Indicator. Pattern: '^[0-9]{1,4}$'."; min-elements 1; type string; @@ -239,20 +269,24 @@ module _3gpp-5gc-nrm-nfprofile { grouping ausfInfo { leaf groupId { - description "Identity of the AUSF group. If not provided, the AUSF instance does not pertain to any AUSF group."; + description "Identity of the AUSF group. If not provided, + the AUSF instance does not pertain to any AUSF group."; type string; } list supiRanges { - description "List of ranges of SUPIs that can be served by the AUSF instance. If not provided, the AUSF can serve any SUPI."; + description "List of ranges of SUPIs that can be served by + the AUSF instance. If not provided, the AUSF can serve any SUPI."; key "start end pattern"; min-elements 1; uses SupiRange; } leaf-list routingIndicators { - description "List of Routing Indicator information that allows to route network signalling with SUCI - to the AUSF instance. If not provided, the AUSF can serve any Routing Indicator. + description "List of Routing Indicator information that allows + to route network signalling with SUCI + to the AUSF instance. If not provided, + the AUSF can serve any Routing Indicator. Pattern: '^[0-9]{1,4}$'."; min-elements 1; type string; @@ -282,9 +316,12 @@ module _3gpp-5gc-nrm-nfprofile { } list taiList { - description "The list of TAIs the AMF can serve. It may contain the non-3GPP access TAI. - The absence of this attribute and the taiRangeList attribute indicate that - the AMF can be selected for any TAI in the serving network."; + description "The list of TAIs the AMF can serve. + It may contain the non-3GPP access TAI. + The absence of this attribute and + the taiRangeList attribute indicate that + the AMF can be selected for any TAI in the + serving network."; key idx; leaf idx { type uint32; } @@ -294,8 +331,10 @@ module _3gpp-5gc-nrm-nfprofile { } list taiRangeList { - description "The range of TAIs the AMF can serve. The absence of this attribute and the taiList - attribute indicate that the AMF can be selected for any TAI in the serving network."; + description "The range of TAIs the AMF can serve. + The absence of this attribute and the taiList + attribute indicate that the AMF can be selected + for any TAI in the serving network."; min-elements 1; key idx; leaf idx { type uint32; } @@ -303,7 +342,8 @@ module _3gpp-5gc-nrm-nfprofile { } list backupInfoAmfFailure { - description "List of GUAMIs for which the AMF acts as a backup for AMF failure."; + description "List of GUAMIs for which the AMF acts + as a backup for AMF failure."; key idx; leaf idx { type uint32; } @@ -313,7 +353,8 @@ module _3gpp-5gc-nrm-nfprofile { } list backupInfoAmfRemoval { - description "List of GUAMIs for which the AMF acts as a backup for planned AMF removal."; + description "List of GUAMIs for which the AMF acts + as a backup for planned AMF removal."; key idx; leaf idx { type uint32; } @@ -323,8 +364,10 @@ module _3gpp-5gc-nrm-nfprofile { } list n2InterfaceAmfInfo { - description "N2 interface information of the AMF. This information needs not be sent in NF Discovery responses. - It may be used by the NRF to update the DNS for AMF discovery by the 5G Access Network."; + description "N2 interface information of the AMF. + This information needs not be sent in NF Discovery responses. + It may be used by the NRF to update the DNS for + AMF discovery by the 5G Access Network."; max-elements 1; key idx; @@ -344,9 +387,12 @@ module _3gpp-5gc-nrm-nfprofile { } list taiList { - description "The list of TAIs the SMF can serve. It may contain the non-3GPP access TAI. - The absence of this attribute and the taiRangeList attribute indicate that - the SMF can be selected for any TAI in the serving network."; + description "The list of TAIs the SMF can serve. + It may contain the non-3GPP access TAI. + The absence of this attribute and the taiRangeList + attribute indicate that + the SMF can be selected for any TAI + in the serving network."; key idx; leaf idx { type uint32; } @@ -356,8 +402,10 @@ module _3gpp-5gc-nrm-nfprofile { } list taiRangeList { - description "The range of TAIs the SMF can serve. The absence of this attribute and the taiList - attribute indicate that the SMF can be selected for any TAI in the serving network."; + description "The range of TAIs the SMF can serve. + The absence of this attribute and the taiList + attribute indicate that the SMF can be selected + for any TAI in the serving network."; min-elements 1; key idx; leaf idx { type uint32; } @@ -370,8 +418,10 @@ module _3gpp-5gc-nrm-nfprofile { } leaf-list accessType { - description "If included, this IE shall contain the access type (3GPP_ACCESS and/or NON_3GPP_ACCESS) supported by the SMF. - If not included, it shall be assumed the both access types are supported."; + description "If included, this IE shall contain the access type + (3GPP_ACCESS and/or NON_3GPP_ACCESS) supported by the SMF. + If not included, it shall be assumed the both + access types are supported."; min-elements 1; max-elements 2; @@ -391,15 +441,18 @@ module _3gpp-5gc-nrm-nfprofile { leaf-list smfServingArea { description "The SMF service area(s) the UPF can serve. - If not provided, the UPF can serve any SMF service area."; + If not provided, the UPF can serve any + SMF service area."; min-elements 1; type string; } list interfaceUpfInfo { - description "List of User Plane interfaces configured on the UPF. When this IE is provided in the NF Discovery response, - the NF Service Consumer (e.g. SMF) may use this information for UPF selection."; + description "List of User Plane interfaces configured on the UPF. + When this IE is provided in the NF Discovery response, + the NF Service Consumer (e.g. SMF) may use + this information for UPF selection."; key idx; leaf idx { type uint32; } @@ -409,7 +462,8 @@ module _3gpp-5gc-nrm-nfprofile { } leaf iwkEpsInd { - description "Indicates whether interworking with EPS is supported by the UPF. + description "Indicates whether interworking with EPS is + supported by the UPF. true: Supported false (default): Not Supported"; @@ -417,7 +471,8 @@ module _3gpp-5gc-nrm-nfprofile { } leaf-list pduSessionTypes { - description "List of PDU session type(s) supported by the UPF. The absence of this attribute indicates that the UPF can be selected + description "List of PDU session type(s) supported by the UPF. + The absence of this attribute indicates that the UPF can be selected for any PDU session type."; min-elements 1; @@ -436,7 +491,8 @@ module _3gpp-5gc-nrm-nfprofile { } list supiRanges { - description "List of ranges of SUPIs that can be served by the PCF instance. If not provided, the PCF can serve any SUPI."; + description "List of ranges of SUPIs that can be served by + the PCF instance. If not provided, the PCF can serve any SUPI."; key "start end pattern"; min-elements 1; uses SupiRange; @@ -444,7 +500,8 @@ module _3gpp-5gc-nrm-nfprofile { leaf rxDiamHost { description "This IE shall be present if the PCF supports Rx interface. - When present, this IE shall indicate the Diameter host of the Rx interface for the PCF. + When present, this IE shall indicate the Diameter host + of the Rx interface for the PCF. Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; type string; @@ -452,7 +509,8 @@ module _3gpp-5gc-nrm-nfprofile { leaf rxDiamRealm { description "This IE shall be present if the PCF supports Rx interface. - When present, this IE shall indicate the Diameter realm of the Rx interface for the PCF. + When present, this IE shall indicate the Diameter realm + of the Rx interface for the PCF. Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; type string; @@ -477,7 +535,8 @@ module _3gpp-5gc-nrm-nfprofile { } leaf-list ipDomainList { - description "List of IPv4 address domains, as described in subclause 6.2 of 3GPP TS 29.513, handled by the BSF. + description "List of IPv4 address domains, as described in + subclause 6.2 of 3GPP TS 29.513, handled by the BSF. If not provided, the BSF can serve any IP domain."; min-elements 1; type string; @@ -494,21 +553,24 @@ module _3gpp-5gc-nrm-nfprofile { grouping chfInfo { list supiRangeList { - description "List of ranges of SUPIs that can be served by the CHF instance. If not provided, the CHF can serve any SUPI."; + description "List of ranges of SUPIs that can be served by + the CHF instance. If not provided, the CHF can serve any SUPI."; key "start end pattern"; min-elements 1; uses SupiRange; } list gpsiRangeList { - description "List of ranges of GPSI that can be served by the CHF instance. If not provided, the CHF can serve any GPSI."; + description "List of ranges of GPSI that can be served + by the CHF instance. If not provided, the CHF can serve any GPSI."; key "start end pattern"; min-elements 1; uses IdentityRange; } list plmnRangeList { - description "List of ranges of PLMNs (including the PLMN IDs of the CHF instance) that can be served by the CHF instance. + description "List of ranges of PLMNs (including the PLMN + IDs of the CHF instance) that can be served by the CHF instance. If not provided, the CHF can serve any PLMN."; min-elements 1; @@ -520,7 +582,10 @@ module _3gpp-5gc-nrm-nfprofile { grouping nrfInfoGrp { list servedUdrInfo { - description "This attribute contains all the udrInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the udrInfo + attributes + locally configured in the NRF or the NRF received + during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -533,7 +598,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedUdmInfo { - description "This attribute contains all the udmInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the udmInfo + attributes + locally configured in the NRF or the NRF + received during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -546,7 +614,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedAusfInfo { - description "This attribute contains all the ausfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the + ausfInfo attributes + locally configured in the NRF or the NRF + received during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -559,7 +630,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedAmfInfo { - description "This attribute contains all the amfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the amfInfo + attributes + locally configured in the NRF or the NRF received + during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -572,7 +646,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedSmfInfo { - description "This attribute contains all the smfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the smfInfo + attributes + locally configured in the NRF or the NRF received + during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -585,7 +662,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedUpfInfo { - description "This attribute contains all the upfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the upfInfo + attributes + locally configured in the NRF or the NRF received + during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -598,7 +678,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedPcfInfo { - description "This attribute contains all the pcfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the pcfInfo + attributes + locally configured in the NRF or the NRF received + during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -611,7 +694,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedBsfInfo { - description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the bsfInfo + attributes + locally configured in the NRF or the NRF received + during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -624,7 +710,10 @@ module _3gpp-5gc-nrm-nfprofile { } list servedChfInfo { - description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + description "This attribute contains all the bsfInfo + attributes + locally configured in the NRF or the NRF received + during NF registration."; key nfInstanceID; leaf nfInstanceID { @@ -638,6 +727,7 @@ module _3gpp-5gc-nrm-nfprofile { } list nrfInfo { + description "nrfinfo"; key idx; leaf idx { type uint32; } max-elements 1; @@ -655,31 +745,53 @@ module _3gpp-5gc-nrm-nfprofile { } leaf nfServicePersistence { - description "If present, and set to true, it indicates that the different service instances of a same NF Service in this NF instance, - supporting a same API version, are capable to persist their resource state in shared storage and therefore these resources - are available after a new NF service instance supporting the same API version is selected by a NF Service Consumer (see 3GPP TS 23.527). - Otherwise, it indicates that the NF Service Instances of a same NF Service are not capable to share resource state inside the NF Instance."; + description "If present, and set to true, it indicates that + the different + service instances of a same NF Service + in this NF instance, + + supporting a same API version, are capable to persist + their resource state in shared storage and + therefore these resources + are available after a new NF service + instance supporting + the same API version is selected by a NF + Service Consumer (see 3GPP TS 23.527). + Otherwise, it indicates that the NF Service + Instances of + a same NF Service are not capable to share + resource state inside the NF Instance."; type boolean; } list nfServices { - description "List of NF Service Instances. It shall include the services produced by the NF that can be discovered by other NFs."; + description "List of NF Service Instances. It shall include + the services produced by the NF that can be + discovered by other NFs."; key serviceInstanceID; min-elements 1; uses nfs3gpp:NFServiceGrp; } leaf nfProfileChangesSupportInd { - description "NF Profile Changes Support Indicator. This IE may be present in the NFRegister or NFUpdate (NF Profile Complete Replacement) request and shall be absent in the response. - true: the NF Service Consumer supports receiving NF Profile Changes in the response. - false (default): the NF Service Consumer does not support receiving NF Profile Changes in the response."; + description "NF Profile Changes Support Indicator. + This IE may be present + in the NFRegister or NFUpdate (NF Profile Complete + Replacement) request + and shall be absent in the response. + true: the NF Service Consumer supports receiving NF Profile + Changes in the response. + false (default): the NF Service Consumer does not support + receiving NF Profile Changes in the response."; type boolean; } leaf nfProfileChangesInd { - description "NF Profile Changes Indicator. This IE shall be absent in the request to the NRF and may be included by the NRF in NFRegister or NFUpdate (NF Profile Complete Replacement) response. + description "NF Profile Changes Indicator. This IE shall be absent + in the request to the NRF and may be included by the NRF + in NFRegister or NFUpdate (NF Profile Complete Replacement) response. true: the NF Profile contains NF Profile changes. false (default): complete NF Profile."; @@ -712,58 +824,81 @@ module _3gpp-5gc-nrm-nfprofile { grouping SupiRange { leaf start { - description "First value identifying the start of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g., IMSI ranges)."; + description "First value identifying the start of + a SUPI range. + To be used when the range of SUPI's can be + represented + as a numeric range (e.g., IMSI ranges)."; type string { pattern '^[0-9]+$'; } } leaf end { - description "Last value identifying the end of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g. IMSI ranges)."; + description "Last value identifying the end of + a SUPI range. + To be used when the range of SUPI's can be + represented + as a numeric range (e.g. IMSI ranges)."; type string { pattern '^[0-9]+$'; } } leaf pattern { - description "Pattern representing the set of SUPI's belonging to this range. - A SUPI value is considered part of the range if and only if the SUPI string fully matches the regular expression."; + description "Pattern representing the set of SUPI's belonging + to this range. + A SUPI value is considered part + of the range + if and only if the SUPI string + fully matches the regular expression."; type string; } } grouping IdentityRange { leaf start { - description "First value identifying the start of an identity range. To be used when the range of identities can be represented as a numeric range (e.g., MSISDN ranges)."; + description "First value identifying the start of an identity range. + To be used when the range of identities can be represented + as a numeric range (e.g., MSISDN ranges)."; type string { pattern '^[0-9]+$'; } } leaf end { - description "Last value identifying the end of an identity range. To be used when the range of identities can be represented as a numeric range (e.g. MSISDN ranges)."; + description "Last value identifying the end of an identity range. + To be used when the range of identities can be represented + as a numeric range (e.g. MSISDN ranges)."; type string { pattern '^[0-9]+$'; } } leaf pattern { - description "Pattern representing the set of identities belonging to this range. - An identity value is considered part of the range if and only if the identity string fully matches the regular expression."; + description "Pattern representing the set of identities + belonging to this range. + An identity value is considered part of the range + if and only if the identity string fully + matches the regular expression."; type string; } } grouping TacRange { leaf start { - description "First value identifying the start of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g., TAC ranges)."; + description "First value identifying the start of a TAC range, + to be used when the range of TAC's can be represented + as a hexadecimal range (e.g., TAC ranges)."; type string { pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}$)'; } } leaf end { - description "Last value identifying the end of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g. TAC ranges)."; + description "Last value identifying the end of a TAC range, + to be used when the range of TAC's can be represented as + a hexadecimal range (e.g. TAC ranges)."; type string { pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6})$'; } @@ -803,14 +938,19 @@ module _3gpp-5gc-nrm-nfprofile { } leaf-list dnaiList { - description "List of Data network access identifiers supported by the UPF for this DNN. - The absence of this attribute indicates that the UPF can be selected for this DNN for any DNAI."; + description "List of Data network access identifiers supported + by the UPF for this DNN. + The absence of this attribute indicates that the UPF + can be selected for this DNN for any DNAI."; min-elements 1; - type string; //dnai is the type but its only a string with desc: DNAI (Data network access identifier), is this needed as its own typedef or string is ok + type string; //dnai is the type but its only a string with + //desc: DNAI (Data network access identifier), + //is this needed as its own typedef or string is ok } leaf-list pduSessionTypes { - description "List of PDU session type(s) supported by the UPF for a specific DNN."; + description "List of PDU session type(s) supported by + the UPF for a specific DNN."; min-elements 1; type PduSessionType; } @@ -818,14 +958,17 @@ module _3gpp-5gc-nrm-nfprofile { grouping Snssai { leaf sst { - description "Unsigned integer, within the range 0 to 255, representing the Slice/Service Type. - It indicates the expected Network Slice behaviour in terms of features and services."; + description "Unsigned integer, within the range 0 to 255, + representing the Slice/Service Type. + It indicates the expected Network Slice behaviour + in terms of features and services."; mandatory true; type uint32; } leaf sd { - description "3-octet string, representing the Slice Differentiator, in hexadecimal representation."; + description "3-octet string, representing the Slice Differentiator, + in hexadecimal representation."; type string { pattern '^[A-Fa-f0-9]{6}$'; } @@ -872,7 +1015,8 @@ module _3gpp-5gc-nrm-nfprofile { choice address { case ipv4EndpointAddresses { leaf-list ipv4EndpointAddresses { - description "Available endpoint IPv4 address(es) of the User Plane interface."; + description "Available endpoint IPv4 address(es) of + the User Plane interface."; min-elements 1; type inet:ipv4-address; } @@ -880,7 +1024,8 @@ module _3gpp-5gc-nrm-nfprofile { case ipv6EndpointAddresses { leaf-list ipv6EndpointAddresses { - description "Available endpoint IPv6 address(es) of the User Plane interface."; + description "Available endpoint IPv6 address(es) of + the User Plane interface."; min-elements 1; type inet:ipv6-address; } @@ -888,14 +1033,16 @@ module _3gpp-5gc-nrm-nfprofile { case endpointFqdn { leaf endpointFqdn { - description "FQDN of available endpoint of the User Plane interface."; + description "FQDN of available endpoint of the + User Plane interface."; type inet:domain-name; } } } leaf networkInstance { - description "Network Instance associated to the User Plane interface."; + description "Network Instance associated to the + User Plane interface."; type string; } } @@ -981,11 +1128,20 @@ module _3gpp-5gc-nrm-nfprofile { mandatory true; type string; } + + leaf-list dnaiList { + description "List of Data network access identifiers supported by + the SMF for this DNN. The absence of this attribute indicates that + the SMF can be selected for this DNN for any DNAI."; + min-elements 1; + type string; + } } - + grouping PlmnSnssai { list plmnId { - description "PLMN ID for which list of supported S-NSSAI(s) is provided."; + description "PLMN ID for which list of supported S-NSSAI(s) + is provided."; min-elements 1; max-elements 1; key "mcc mnc"; @@ -993,7 +1149,8 @@ module _3gpp-5gc-nrm-nfprofile { } list sNssaiList { - description "The specific list of S-NSSAIs supported by the given PLMN."; + description "The specific list of S-NSSAIs supported + by the given PLMN."; min-elements 1; key "sst sd"; uses Snssai; diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang index 1bc7ce5ebf09a474c5f3362fb30804c2230044f6..8550fcc3d94be3eb8ba780a88087419b78edb895 100755 --- a/yang-models/_3gpp-5gc-nrm-smffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-smffunction.yang @@ -91,6 +91,27 @@ module _3gpp-5gc-nrm-smffunction { description "DN of the Dynamic5QISet that the SMFFunction supports (is associated to)."; } + + list dnaiSatelliteMappingList { + description "List of the mapping relationship between + satellite ID and at least one DNAI."; + min-elements 1; + key "satelliteid"; + uses dnaiSatelliteMapping; + } + } + + grouping dnaiSatelliteMapping { + leaf-list dnaiList { + description "List of Data network access identifiers."; + min-elements 1; + type string; + } + + leaf satelliteid { + description "Unique identifier of a GEO satellite."; + type string; + } } augment "/me3gpp:ManagedElement" { diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index 2fa8fa9146620e922d26df74905343a457407fde..219bb3c0ca53511558e9a10938c23cda6c670110 100755 --- a/yang-models/_3gpp-common-fm.yang +++ b/yang-models/_3gpp-common-fm.yang @@ -14,16 +14,12 @@ module _3gpp-common-fm { description "Defines a Fault Management model Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS)"; + reference "3GPP TS 28.111"; + revision 2024-01-18 { + description "The specification of the file is moved from 28.623 to 28.532"; + reference "28.623 CR-0315"; + } revision 2023-09-18 { reference CR-0271 ; } revision 2023-05-10 { reference CR-0250; } revision 2022-10-24 { reference CR-0196; } diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang index 153510be97cc7fad4f3f908e5bdb1207c4a29eff..233aa6f4a2ab338201ffe86eab7eb0c679110085 100755 --- a/yang-models/_3gpp-common-managed-element.yang +++ b/yang-models/_3gpp-common-managed-element.yang @@ -11,14 +11,14 @@ module _3gpp-common-managed-element { import _3gpp-common-trace { prefix trace3gpp; } import _3gpp-common-files { prefix files3gpp; } import _3gpp-5gc-nrm-configurable5qiset { prefix fiveqi3gpp; } - import _3gpp-5gc-ecmconnectioninfo { prefix econn3gpp ; } + import _3gpp-5gc-nrm-ecmconnectioninfo { prefix econn3gpp ; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines ManagedElement which will be augmented by other IOCs - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM) @@ -33,6 +33,7 @@ module _3gpp-common-managed-element { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2024-01-30 { reference CR-0328 ; } revision 2023-11-14 { reference CR-0305 ; } revision 2023-09-18 { reference CR-0271 ; } revision 2023-08-10 { reference CR-0257; } diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang index 7bca2e5de8a75ed0216d1c846c669064bcca1e38..d6d5f7010369bea58396611428ff5c1ba8e16cca 100755 --- a/yang-models/_3gpp-common-subnetwork.yang +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -12,13 +12,13 @@ module _3gpp-common-subnetwork { import ietf-yang-schema-mount { prefix yangmnt; } import _3gpp-common-files { prefix files3gpp; } import _3gpp-5gc-nrm-configurable5qiset { prefix fiveqi3gpp; } - import _3gpp-5gc-ecmconnectioninfo { prefix econn3gpp ; } + import _3gpp-5gc-nrm-ecmconnectioninfo { prefix econn3gpp ; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines basic SubNetwork which will be augmented by other IOCs - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM) @@ -33,6 +33,7 @@ module _3gpp-common-subnetwork { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2024-01-30 { reference CR-0328 ; } revision 2023-11-14 { reference CR-0305 ; } revision 2023-09-18 { reference CR-0271 ; } revision 2023-08-10 { reference CR-0257; } diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index e037ff83c734245ce6ea13f7047ad71862e0bd3f..ed049c654bd3ff02eaa5ee899a27525eff563ff8 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -10,7 +10,7 @@ module _3gpp-common-subscription-control { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines IOCs for subscription and heartbeat control. - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM) @@ -18,6 +18,7 @@ module _3gpp-common-subscription-control { Solution Set (SS) definitions 3GPP TS 28.623"; + revision 2024-01-18 { reference "CR-0309 CR-0329" ; } revision 2023-09-18 { reference CR-0271 ; } revision 2023-08-10 { reference "CR0257 CR0260"; } revision 2022-10-20 { reference CR-0196; } @@ -42,45 +43,53 @@ module _3gpp-common-subscription-control { discriminated by notificationFilter attribute."; } - list scope { - key "scopeType"; - min-elements 1; - max-elements 1; + choice scope { description "Describes which object instances are selected with respect to a base object instance."; - leaf scopeType { - type enumeration { - enum BASE_ONLY; - enum BASE_ALL; - enum BASE_NTH_LEVEL; - enum BASE_SUBTREE; - } - description "If the optional scopeLevel parameter is not supported - or absent, allowed values of scopeType are BASE_ONLY and BASE_ALL. + case type-level { + leaf scopeType { + type enumeration { + enum BASE_ONLY; + enum BASE_ALL; + enum BASE_NTH_LEVEL; + enum BASE_SUBTREE; + } + mandatory true; + description "If the optional scopeLevel parameter is not supported + or absent, allowed values of scopeType are BASE_ONLY and BASE_ALL. - The value BASE_ONLY indicates only the base object is selected. - The value BASE_ALL indicates the base object and all of its - subordinate objects (incl. the leaf objects) are selected. + The value BASE_ONLY indicates only the base object is selected. + The value BASE_ALL indicates the base object and all of its + subordinate objects (incl. the leaf objects) are selected. - If the scopeLevel parameter is supported and present, allowed - values of scopeType are BASE_ALL, BASE_ONLY, BASE_NTH_LEVEL - and BASE_SUBTREE. + If the scopeLevel parameter is supported and present, allowed + values of scopeType are BASE_ALL, BASE_ONLY, BASE_NTH_LEVEL + and BASE_SUBTREE. - The value BASE_NTH_LEVEL indicates all objects on the level, - which is specified by the scopeLevel parameter, below the base - object are selected. The base object is at scopeLevel zero. - The value BASE_SUBTREE indicates the base object and all of its - subordinate objects down to and including the objects on the level, - which is specified by the scopeLevel parameter, are selected. - The base object is at scopeLevel zero."; - } + The value BASE_NTH_LEVEL indicates all objects on the level, + which is specified by the scopeLevel parameter, below the base + object are selected. The base object is at scopeLevel zero. + The value BASE_SUBTREE indicates the base object and all of its + subordinate objects down to and including the objects on the level, + which is specified by the scopeLevel parameter, are selected. + The base object is at scopeLevel zero."; + } - leaf scopeLevel { - when '../scopeType = "BASE_NTH_LEVEL" or ../scopeType = "BASE_SUBTREE"'; - type uint16; - mandatory true; - description "See description of scopeType."; + leaf scopeLevel { + when '../scopeType = "BASE_NTH_LEVEL" or ../scopeType = "BASE_SUBTREE"'; + type uint16; + mandatory true; + description "See description of scopeType."; + } + } + case dataNodeSelector { + leaf dataNodeSelector { + type string; + description "The value shall follow the rules of RFC 8641 + filter-spec"; + reference "RFC 8641 section 5."; + } } } @@ -91,7 +100,11 @@ module _3gpp-common-subscription-control { If notificationFilter is present, only notifications that pass the filter criteria are forwarded to the notification recipient; all other notifications are discarded. - The filter can be applied to any field of a notification."; + The filter can be applied to any field of a notification. + + The format of the string shall confrm to a + JSON expressions (Jex) 'JexConditionsExpr'"; + reference "3GPP TS 32.161"; } } @@ -288,4 +301,4 @@ module _3gpp-common-subscription-control { } } } -} \ No newline at end of file +} diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index a17cdbf98b0cd3c4ae130440ecb8714cebdfc3aa..cd2a69cb7605a80a64e7c6d8cd15218217ed8130 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -25,6 +25,7 @@ module _3gpp-common-trace { Integration Reference Point (IRP); Information Service (IS)" ; + revision 2024-01-29 { reference "CR-0316"; } revision 2023-11-06 { reference "CR-0290 CR-0294"; } revision 2023-11-03 { reference CR-0302 ; } revision 2023-09-18 { reference CR-0271 ; } @@ -1233,6 +1234,38 @@ module _3gpp-common-trace { } } + grouping UEMeasConfigGrp { + description "Represents the UEMeasConfig dataType. + This <> defines the aconfiguration parameters of IOC TraceJob + which are specific for UE level measurements collection."; + + leaf-list ueMeasurements { + type string; + description "It specifies the List of UE level measurements."; + } + + leaf ueMeasGranularityPeriod { + type uint32; + description "It specifies the Granularity period used to produce UE level + measurements. The period is defined in milliseconds (ms)."; + } + + leaf-list nfTypeToMeasure { + type string; + description "It specifies the NF types to measure."; + } + + leaf-list objectInstances { + type string; + description "List of object instances."; + } + + leaf-list rootObjectInstances { + type string; + description "List of root object instances."; + } + } + grouping TraceJobGrp { leaf jobType { @@ -1244,12 +1277,17 @@ module _3gpp-common-trace { enum RLF_REPORT_ONLY; enum RCEF_REPORT_ONLY; enum LOGGED_MBSFN_MDT; + enum 5GC_UE_LEVEL_MEASUREMENTS_ONLY; + enum TRACE_AND_5GC_UE_LEVEL_MEASUREMENTS; + enum IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS; + enum TRACE_AND_IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS; } default TRACE_ONLY; description "Specifies the MDT mode and it specifies also whether the - TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined - Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and - RLF reporting."; + TraceJob represents only MDT, Logged MBSFN MDT, Trace, or 5GC UE level measurement collection, or any combination + of Trace, immediate MDT and 5GC UE level measurement collection. + The attribute is applicable for Trace, MDT, RCEF and + RLF reporting, and 5GC UE level measurement collection."; reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the allowed values."; } @@ -1388,7 +1426,9 @@ module _3gpp-common-trace { list traceConfig { when '../jobType = "TRACE_ONLY"' - + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"' + + ' or ../jobType = "TRACE_AND_5GC_UE_LEVEL_MEASUREMENTS"' + + ' or ../jobType = "TRACE_AND_IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS"'; key idx; description "Trace config"; max-elements 1; @@ -1401,7 +1441,9 @@ module _3gpp-common-trace { + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"' + ' or ../jobType = "RLF_REPORT_ONLY"' + ' or ../jobType = "RCEF_REPORT_ONLY"' - + ' or ../jobType = "LOGGED_MBSFN_MDT"'; + + ' or ../jobType = "LOGGED_MBSFN_MDT"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS"' + + ' or ../jobType = "TRACE_AND_IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS"'; key idx; description "MDT config"; max-elements 1; @@ -1409,6 +1451,17 @@ module _3gpp-common-trace { leaf idx { type string; } } + list ueMeasConfig { + when '../jobType = "5GC_UE_LEVEL_MEASUREMENTS_ONLY"' + + ' or ../jobType = "TRACE_AND_5GC_UE_LEVEL_MEASUREMENTS"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS"' + + ' or ../jobType = "TRACE_AND_IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS"'; + key idx; + description "5GC UE level measurements config"; + max-elements 1; + uses UEMeasConfigGrp; + leaf idx { type string; } + } list nPNTarget { description "applicable only for NR and shall be present in case of NPN either a PNI-NPN or a SNPN) and for management-based activation when @@ -1477,14 +1530,15 @@ module _3gpp-common-trace { selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN. - The attribute jobType specifies the kind of data to collect. - In case of TRACE_ONLY, the configuration parameters of attribute - traceConfig shall be applied. In case of IMMEDIATE_MDT_ONLY, - LOGGED_MDT_ONLY, RLF_REPORT_ONLY, RCEF_REPORT_ONLY and - LOGGED_MBSFN_MDT the configuration parameters of attribute - mdtConfig or a subset of these shall be applied. - In case of IMMEDIATE_MDT_AND_TRACE both attributes, traceConfig and - mdtConfig are applicable. + The attribute jobType specifies the kind of data to collect. In case of + Trace only, the configuration parameters of attribute traceConfig shall + be applied. In case of Immediate MDT only, Logged MDT only, RLF reports + only, RCEF reports only and Logged MBSFN MDT, the configuration parameters + of attribute mdtConfig or a subset of these shall be applied. In case of + UE measurements only, the configuration parameters of attribute ueMeasConfig + shall be applied. In case of any combination of Trace, Immediate MDT, + Trace and UE measurements, the configuration parameters of the corresponding + attributes traceConfig, mdtConfig and ueMeasConfig are applicable. Creation and deletion of TraceJob instances by MnS consumers is optional; when not supported, the TraceJob instances may be created diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 7ddb27b0be141a5e4a554ce967856b60ab8119f2..d7e206c642d324682b4cb18dcc79478e32e2b9c1 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -9,15 +9,17 @@ module _3gpp-nr-nrm-gnbcucpfunction { import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-5gc-nrm-configurable5qiset { prefix fiveqi3gpp; } + import ietf-inet-types { prefix inet; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the GNBCUCPFunction Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2024-01-12 { reference CR-1138 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-04-26 { reference CR-0916; } revision 2022-07-28 { reference "CR-0770"; } @@ -141,6 +143,40 @@ module _3gpp-nr-nrm-gnbcucpfunction { description "This attribute determines whether the DAPS handover function is enabled or disabled."; } + + list qceIdMappingInfoList { + description "List of the mapping relationship between QoE collection entity + identity, PLMN where QoE collection entity resides, and the IP address of + the QoE collection entity."; + key idx; + min-elements 1; + uses QceIdMappingInfoGrp; + leaf idx { type string; } + } + } + + grouping QceIdMappingInfoGrp { + leaf qoECollectionEntityAddress { + type inet:ip-address; + description "Specifies the address to which the QMC reports shall be + transferred. Ipv4 or Ipv6 address may be used."; + } + + leaf qoECollectionEntityIdentity { + type string; + description "Specifies the unique identity to which the QMC reports + shall be transferred."; + } + + list pLMNTarget { + description "The PLMN identifier where QoE collection entity + resides. "; + key "mcc mnc"; + min-elements 1; + max-elements 1; + yext3gpp:inVariant; + uses types3gpp:PLMNId; + } } augment "/me3gpp:ManagedElement" {