diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang index 08b8fc7211dd4b505c121951bbdd93d1e606a462..4219405411fe8477bbdeb9580cdc82b835cf40e7 100755 --- a/yang-models/_3gpp-5g-common-yang-types.yang +++ b/yang-models/_3gpp-5g-common-yang-types.yang @@ -3,7 +3,6 @@ module _3gpp-5g-common-yang-types { namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types"; prefix "types5g3gpp"; - import ietf-yang-types { prefix yang; } import _3gpp-common-yang-types { prefix types3gpp; } @@ -15,6 +14,8 @@ module _3gpp-5g-common-yang-types { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2024-11-01 { reference CR-1405; } + revision 2024-10-06 { reference CR-1389; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-05-10 { reference CR-0916; } @@ -22,6 +23,71 @@ module _3gpp-5g-common-yang-types { revision 2020-11-05 { reference CR-0412 ; } revision 2019-10-20 { reference "Initial version."; } + grouping MappedCellIdInfoGrp { + description "This data type represents the mapping relationship between + Mapped Cell IDs and geographical areas (see clause 16.14.5 of TS 38.300"; + + list ntnGeoArea { + description "This attribute indicates a specific geographical location + mapped to Mapped Cell ID(s)."; + min-elements 1; + max-elements 1; + key idx; + leaf idx { type uint32; } + uses types3gpp:GeoAreaGrp; + } + + list mappedCellId { + description "This attribute is in format of NCGI to indicate a fixed + geographical area (See subclause 16.14.5 in TS 38.300)"; + min-elements 1; + max-elements 1; + key idx; + leaf idx { type uint32; } + uses NcgiGrp; + } + } + + grouping NcgiGrp { + description "Represents the Ncgi datatype"; + + list plmnId { + description "This attribute represents a PLMN Identity."; + min-elements 1; + max-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses types3gpp:PLMNId ; + } + + leaf nrCellId { + type string; + mandatory true; + description "This attribute represents NR Cell Identity. + It's a 36-bit string identifying an NR Cell Id as specified in + clause 9.3.1.7 of TS 38.413, in hexadecimal representation. Each + character in the string shall take a value of + '0' to '9', 'a' to 'f' or 'A' to 'F' and shall represent 4 bits. + The most significant character representing the 4 most significant + bits of the Cell Id shall appear first in the string, and the + character representing the 4 least significant bit of the + Cell Id shall appear last in the string. + + Pattern: '^[A-Fa-f0-9]{9}$' + + Example: + An NR Cell Id 0x225BD6007 shall be encoded as '225BD6007'."; + } + + leaf nId { + type string; + mandatory true; + description "Network Identity; Shall be present if PlmnIdNid identifies + an SNPN (see clauses 5.30.2.3, 5.30.2.9, 6.3.4, and 6.3.8 in + 3GPP TS 23.501."; + } + } + typedef NRTAC { type string; description "This holds the identity of the common Tracking Area Code diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang index 310e71835b97e066a22d95ba86e9e3f2b67a90be..cf6b290f25dbf59c50ca436afc9c49a1e51a2ea3 100755 --- a/yang-models/_3gpp-5gc-nrm-amffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-amffunction.yang @@ -8,7 +8,9 @@ module _3gpp-5gc-nrm-amffunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -17,16 +19,17 @@ module _3gpp-5gc-nrm-amffunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2024-11-01 { reference CR-1405; } + revision 2024-10-06 { reference CR-1389; } revision 2024-04-04 { reference CR-1139; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-01-07 { reference CR-0643; } revision 2020-11-06 { reference CR-0412 ; } revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-31 { reference "Ericsson refactoring."; } revision 2018-08-07 { reference "Initial revision"; } - - grouping GlobalRanNodeIDGrp{ + + grouping NTNGlobalRanNodeIDGrp{ list pLMNId { description "The PLMN Identifier is composed of @@ -116,14 +119,13 @@ module _3gpp-5gc-nrm-amffunction { } } - grouping satelliteBackhaulInfo{ + grouping SatelliteBackhaulInfoGrp{ description "Defines information related to satellite backhaul category and corresponding information of gNB."; reference "3GPP TS 23.501"; - list GlobalRanNodeID{ + list nTNGlobalRanNodeID{ description "Unique identifier of an NG-RAN node."; - uses GlobalRanNodeIDGrp; min-elements 1; max-elements 1; leaf GlobalRanNodeIDValue{ @@ -131,6 +133,7 @@ module _3gpp-5gc-nrm-amffunction { description "this relies on the choice of GlobalRanNodeID"; } key "GlobalRanNodeIDValue"; + uses NTNGlobalRanNodeIDGrp; } leaf satelliteBackhaulCategory{ @@ -160,20 +163,309 @@ module _3gpp-5gc-nrm-amffunction { } } + grouping GUAMInfoGrp { + description "Represents the GUAMInfo datatype."; + + list pLMNId { + description "This attribute represents a PLMN Identity."; + min-elements 1; + max-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses types3gpp:PLMNId ; + } + + leaf aMFIdentifier { + type int64; + description "The AMFI is constructed from an AMF Region ID, an + AMF Set ID and an AMF Pointer. The AMF Region ID identifies the region, + the AMF Set ID uniquely identifies the AMF Set within the AMF Region, + and the AMF Pointer uniquely identifies the AMF within the AMF Set. + (Ref. 3GPP TS 23.003)"; + } + } + + grouping N2InterfaceAmfInfoGrp { + description "Represents the N2InterfaceAmfInfo datatype."; + + leaf-list ipv4EndpointAddress { + type inet:ipv4-address; + min-elements 1; + description "This attribute represents available AMF endpoint + IPv4 address(es) for N2."; + } + + leaf-list ipv6EndpointAddress { + type inet:ipv6-address; + min-elements 1; + description "This attribute represents available AMF endpoint + IPv6 address(es) for N2."; + } + + leaf amfName { + type inet:host-name; + description "This attribute represents AMF Name FQDN as defined in + clause 28.3.2.5 of TS 23.003."; + } + } + + grouping BlockedLocationInfoGrp { + description "Repreasents the datatype BlockedLocationInfo"; + + list blockedLocation { + description "This provides the geographical location at which the PLMN + are not allowed in case of NTN."; + min-elements 1; + max-elements 1; + key "mnc mcc"; + uses types3gpp:PLMNId ; + } + + list blockedDurWindow { + description "This provides the time durations for which the PLMN are + not allowed at a given location in case of NTN"; + key idx; + leaf idx { type uint32 ; } + uses types3gpp:TimeWindowGrp; + } + + list blockedSlice { + description "This provides the slice for which the access is + not allowed at a given location in case of NTN. "; + max-elements 1; + key idx; + unique "sst sd"; + leaf idx { type uint32; } + uses types5g3gpp:SNssai; + } + } + + grouping NTNPLMNRestrictionsInfoGrp { + description "Represents the datatype NTNPLMNRestrictionsInfo"; + + list pLMNId { + description "This attribute represents a PLMN Identity."; + min-elements 1; + max-elements 1; + key "mnc mcc"; + uses types3gpp:PLMNId ; + } + + list blockedLocationInfoList { + description "This defines the information related with the location + for which the access restrictions are to be applied in case of NTN."; + key "idx"; + leaf idx { type uint32 ; } + uses BlockedLocationInfoGrp; + } + } + + grouping NtnLocationInfoGrp { + description "Represents the NtnLocationInfo datatype."; + + list location { + description "This defines the Location (geographical area) under + consideration to which the satellite coverage info belongs"; + key idx; + leaf idx { type uint32 ; } + uses types3gpp:GeoAreaGrp; + } + + list availabilityWindows { + description "This attribute defines the list of time windows at which + the satellite coverage will be available for this location. + Either availabilityWindows or nonAvailabilityWindows shall be present."; + key idx; + leaf idx { type uint32 ; } + uses types3gpp:TimeWindowGrp; + } + + list nonAvailabilityWindows { + description "This attribute defines the list of time windows at which + the satellite coverage will not be available for this location. + Either availabilityWindows or nonAvailabilityWindows shall be present."; + key idx; + leaf idx { type uint32 ; } + uses types3gpp:TimeWindowGrp; + } + } + + grouping SatelliteCoverageInfoGrp { + description "Represents the datatype SatelliteCoverageInfo"; + + leaf nRSatelliteRATtype { + type enumeration { + enum NRLEO; + enum NRMEO; + enum NRGEO; + enum NROTHERSAT; + } + description "This attribute defines the RAT Type for NR satellite + access."; + } + + list locationInfo { + description "This attribute defines the information about location and + corresponding time windows for which the satellite coverage will be + available or unavailable."; + key idx; + leaf idx { type uint32 ; } + uses NtnLocationInfoGrp; + } + } + + grouping SliceExpiryInfoGrp { + description "Represents the datatype SliceExpiryInfo"; + + list pLMNInfo { + min-elements 1; // ??? + config false; + description "It defines the PLMN(s) of a Network Function. "; + key idx; + leaf idx { type uint32 ; } + uses types5g3gpp:PLMNInfo; + } + + leaf expiryTime { + type yang:date-and-time; + config false; + description "This attribute provides information about the time at + which the slice is scheduled to be expired as it is not required + anymore. + This attribute will be set based on the sliceAvailability coming as + part of ServiceProfile."; + } + } + + grouping MappedCellIdInfoGrp { + description "Represents the datatype MappedCellIdInfo"; + + list ntnGeoArea { + description "This attribute indicates a specific geographical location + mapped to Mapped Cell ID(s)."; + min-elements 1; + max-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses types3gpp:GeoAreaGrp; + } + + list mappedCellId { + description "This attribute is in format of NCGI to indicate a fixed + geographical area (See subclause 16.14.5 in TS 38.300"; + min-elements 1; + max-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses types5g3gpp:NcgiGrp; + } + } + + grouping AmfInfoGrp { + description "Represents the data type AmfInfo."; + + leaf amfRegionId { + type int64; + mandatory true; + description "It represents the AMF Region ID, which identifies the + region. AllowedValues: defined in subclause 2.10.1 of 3GPP TS 23.003 "; + } + + leaf amfSetId { + type int64; + mandatory true; + description "It represents the AMF Set ID, which is uniquely identifies + the AMF Set within the AMF Region. + allowedValues: defined in subclause 2.10.1 of 3GPP TS 23.003"; + } + + list taiList { + min-elements 1; + description "The list of TAIs."; + key "idx"; + leaf idx { type uint32 ; } + uses types3gpp:TaiGrp; + } + + list taiRangeList { + min-elements 1; + description "The range of TAIs."; + key "idx"; + leaf idx { type uint32 ; } + uses nfp3gpp:TaiRangeGrp; + } + + list gUAMIdList { + description "List of supported Globally Unique AMF Ids (GUAMIs)."; + config false; + min-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses GUAMInfoGrp; + } + + list backupInfoAmfFailure { + description "List of GUAMIs for which the AMF acts as a backup for AMF + failure."; + min-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses GUAMInfoGrp; + } + + list backupInfoAmfRemoval { + description "List of GUAMIs for which the AMF acts as a backup for + planned AMF removal."; + min-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses GUAMInfoGrp; + } + + list n2InterfaceAmfInfo { + description "This attribute represents the N2 interface information of + the AMF. "; + max-elements 1; + key "idx"; + leaf idx { type uint32 ; } + uses N2InterfaceAmfInfoGrp; + } + + leaf amfOnboardingCapability { + type boolean; + default false; + description "This attribute indicates the AMF supports SNPN Onboarding + capability. This is used for the case of Onboarding of UEs for SNPNs + (see TS 23.501, clause 5.30.2.10). + - FALSE: AMF does not support SNPN Onboarding; + - TRUE: AMF supports SNPN Onboarding."; + } + + leaf highLatencyCom { + type boolean; + description "This attribute indicates whether the AMF supports High + Latency communication (e.g. for NR RedCap UE). This is used for CP NF + to discover AMF supporting High Latency communication (see TS 23.501, + clause 6.3.5). + - FALSE: AMF does not support High Latency communication e.g. for + NR RedCap UE; + - TRUE: AMF supports High Latency communication e.g. for NR RedCap UE;"; + } + } + grouping AMFFunctionGrp { description "Represents the AMFFunction IOC"; uses mf3gpp:ManagedFunctionGrp; - list pLMNIdList { + list pLMNInfoList { min-elements 1; - description "A list of PLMN identifiers (Mobile Country Code and Mobile - Network Code)."; - key "mcc mnc"; - uses types3gpp:PLMNId; + description "It defines the PLMN(s) of a Network Function. "; + key idx; + leaf idx { type uint32 ; } + uses types5g3gpp:PLMNInfo; } container aMFIdentifier { - //presence true; description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; uses types3gpp:AmfIdentifier; @@ -185,15 +477,14 @@ module _3gpp-5gc-nrm-amffunction { type inet:domain-name; } - list sNSSAIList { - min-elements 1; - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; + leaf-list cNSIIdList { + type string; + description "It is a set of NSI ID. NSI ID is an identifier for + identifying the Core Network part of a Network Slice instance when + multiple Network Slice instances of the same Network Slice are deployed, + and there is a need to differentiate between them in the 5GC. + See NSI ID definition in clause 3.1 of TS 23.501 and + subclause 6.1.6.2.7 of TS 29.531"; } list managedNFProfile { @@ -213,6 +504,39 @@ module _3gpp-5gc-nrm-amffunction { uses types5g3gpp:CommModel; } + list amfInfo { + max-elements 1; + description "This attribute represents information of an AMF + NF Instance."; + key "idx"; + leaf idx { type uint32 ; } + uses AmfInfoGrp; + } + + list nTNPLMNRestrictionsList { + description "This attribute defines the location restrictions per PLMN + that relates to non-terrestrial network access."; + key "idx"; + leaf idx { type uint32 ; } + uses NTNPLMNRestrictionsInfoGrp; + } + + list satelliteCoverageInfoList { + description "This attribute defines the information related to NR + Satellite RAT type and corresponding information of satellite coverage"; + key "idx"; + leaf idx { type uint32 ; } + uses SatelliteCoverageInfoGrp; + } + + list sliceExpiryInfo { + description "This provides information related to a network slice + validity."; + key "idx"; + leaf idx { type uint32 ; } + uses SliceExpiryInfoGrp; + } + list satelliteBackhaulInfoList{ description "Specifies a list of satellite backhaul information. It can be used by NF and NF services."; @@ -222,7 +546,7 @@ module _3gpp-5gc-nrm-amffunction { } key "GlobalRanNodeIDValue"; min-elements 1; - uses satelliteBackhaulInfo; + uses SatelliteBackhaulInfoGrp; } leaf-list mdtUserConsentReqList { @@ -243,12 +567,30 @@ module _3gpp-5gc-nrm-amffunction { Any MDT measurement, whose name is not specified in this list, is not subject to user consent at MDT activation."; } + + list mappedCellIdInfoList { + description "It provides the list of mapping between GEO area and + Mapped Cell ID."; + key "idx"; + leaf idx { type uint32 ; } + uses MappedCellIdInfoGrp; + } + + leaf aMFSetRef { + type types3gpp:DistinguishedName; + description "This is the DN of AMFSet"; + } } augment "/me3gpp:ManagedElement" { list AMFFunction { - description "5G Core AMF Function"; - reference "3GPP TS 28.541"; + description "This IOC represents the AMF functionality in 5GC. + For more information about the AMF, see 3GPP TS 23.501. + + The attribute sliceExpiryInfo is used when the validity information of + a network slice need to be configured. The attribute + sliceExpiryInfo.pLMNInfo indicates the network slice to which the + validity information applies."; key id; uses top3gpp:Top_Grp; container attributes { diff --git a/yang-models/_3gpp-5gc-nrm-lmffunction.yang b/yang-models/_3gpp-5gc-nrm-lmffunction.yang index 6069ae5133d295ea5ef9e24c50bcb2acf088d83c..2a612372fc964b0ec67c36564e2d2f23c0eb0dcd 100755 --- a/yang-models/_3gpp-5gc-nrm-lmffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-lmffunction.yang @@ -9,28 +9,218 @@ module _3gpp-5gc-nrm-lmffunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } - + import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + import _3gpp-nr-nrm-ntnfunction { prefix ntn3gpp; } + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the LMF function defined in 3GPP TS 23.501. - 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"; + revision 2024-11-01 { reference CR-1405 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2019-10-25 { reference "S5-194457 S5193518"; } + revision 2019-05-15 { reference "initial revision"; } + + grouping LmfInfoGrp { + description "Represents the LmfInfo datatype."; + + leaf-list servingClientTypes { + type enumeration { + enum EMERGENCY_SERVICES { + description "External client for emergency services"; + } + enum VALUE_ADDED_SERVICES { + description "External client for value added services"; + } + enum PLMN_OPERATOR_SERVICES { + description "External client for PLMN operator services"; + } + enum LAWFUL_INTERCEPT_SERVICES { + description "External client for Lawful Intercept services"; + } + enum PLMN_OPERATOR_BROADCAST_SERVICES { + description "External client for PLMN Operator Broadcast services"; + } + enum PLMN_OPERATOR_OM { + description "External client for PLMN Operator O&M"; + } + enum PLMN_OPERATOR_ANONYMOUS_STATISTICS { + description "External client for PLMN Operator anonymous statistics"; + } + enum PLMN_OPERATOR_TARGET_MS_SERVICE_SUPPORT { + description "External client for PLMN Operator target MS service + support"; + } + } + description "This attribute represents a list of external client type(s), + e.g. emergency client. The NRF should only include this LMF instance + to NF discovery with 'client-type' query parameter indicating one of + the external client types in the list. + + Absence of this attribute means the LMF is not dedicated to serve + specific client types."; + } + + leaf lmfId { + type string; + description "This attribute represents the LMF identification. + See clause 6.1.6.3.6 TS 29.572"; + } + + leaf-list servingAccessTypes { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + min-elements 1; + description "This attribute contains 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."; + } + + leaf-list servingAnNodeTypes { + type enumeration { + enum GNB; + enum NG; + enum ENB; + } + min-elements 1; + description "This attribute contains the AN node type (i.e. gNB or NG-eNB) + supported by the LMF. + If not included, it shall be assumed that all AN node types are + supported."; + } + + leaf-list servingRatTypes { + type string; + min-elements 1; + description "This attribute contains the RAT type (e.g. 5G NR, eLTE or + any of the RAT Types specified for NR satellite access) supported by + the LMF. + If not included, it shall be assumed that all RAT types are supported + allowedValues: see clause 5.4.3.2 of TS 29.571"; + } + + list taiList { + description "This attribute contains TAI list that the LMF can serve. + It may contain one or more non-3GPP access TAIs. + The absence of both this attribute and the taiRangeList attribute + indicates that the LMF can be selected for any TAI in the serving + network."; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses types3gpp:TaiGrp; + } + + list taiRangeList { + description "This attribute contains TAI range list that the LMF can + serve. It may contain one or more non-3GPP access TAI ranges. + The absence of both this attribute and the taiList attribute indicates + that the LMF can be selected for any TAI in the serving network."; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses nfp3gpp:TaiRangeGrp; + } + + leaf-list supportedGADShapes { + type enumeration { + enum POINT { + description "indicates Ellipsoid Point"; + } + enum POINT_UNCERTAINTY_CIRCLE { + description "indicates Ellipsoid point with uncertainty circle"; + } + enum POINT_UNCERTAINTY_ELLIPSE { + description "indicates Ellipsoid point with uncertainty ellipse"; + } + enum POLYGON { + description "indicates Polygon"; + } + enum POINT_ALTITUDE { + description "indicates Ellipsoid point with altitude"; + } + enum POINT_ALTITUDE_UNCERTAINTY { + description "indicates Ellipsoid point with altitude and + uncertainty ellipsoid"; + } + enum ELLIPSOID_ARC { + description "indicates Ellipsoid Arc"; + } + enum LOCAL_2D_POINT_UNCERTAINTY_ELLIPSE { + description "indicates Local 2D point with uncertainty ellipse"; + } + enum LOCAL_3D_POINT_UNCERTAINTY_ELLIPSOID { + description "indicates Local 3D point with uncertainty ellipsoid"; + } + } + min-elements 1; + description "This attribute contains the GAD shapes supported by the LMF. + If not included, it doesn't indicate that the LMF doesn't support any + GAD shapes. + The allowedValues are: see clause 6.1.6.3.4 of TS 29.572 "; + } + } - revision 2019-05-15 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; + grouping TrpMappingInfoGrp { + description "This data type represents the mapping relationship between + satellite and TRPs."; + + leaf satelliteId { + type string { + pattern '[0-9]{5}'; + } + mandatory true; + description "This attribute indicates satellite Id. It shall be formatted + as a fixed 5-digit string, padding with leading digits '0' to complete + a 5-digit length."; + } + + leaf-list trpIds { + type uint8 { + range 1..max; + } + description "This attribute indicates TRPs uniquely within an NG-RAN + node (see TS 38.455 clause 9.2.24). A gNB may serve several TRPs. + For NTN, a TRP may be located on board the satellite."; + } } + + grouping TrpInfoGrp { + description "This data type represents the mapping relationship between + gNB and TRPs."; + + leaf gNBId { + type uint32; + mandatory true; + description "It identifies a gNB within a PLMN. The gNB ID is part of + the NR Cell Identifier (NCI) of the gNB cells. + See 'gNB Identifier (gNB ID)' of subclause 8.2 of TS 38.300. See + 'Global gNB ID' in subclause 9.3.1.6 of TS 38.413"; + } + list trpMappingInfoList { + description "This is the list of TRP mapping between satellite and TRPs."; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses TrpMappingInfoGrp; + } + } + grouping LMFFunctionGrp { uses mf3gpp:ManagedFunctionGrp; list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; min-elements 1; max-elements 6; @@ -39,22 +229,58 @@ module _3gpp-5gc-nrm-lmffunction { } list managedNFProfile { + description "This parameter defines profile for managed NF. See TS 23.501"; key idx; min-elements 1; uses types3gpp:ManagedNFProfile; } list commModelList { + description "The attribute specifies a list of commModel. It can be used + by NF and NF services to interact with each other in 5G Core network + (see TS 23.501)"; min-elements 1; key "groupId"; uses types5g3gpp:CommModel; } + + list lmfInfo { + description "This attribute represents information of an LMF NF Instance"; + max-elements 1; + key idx; + leaf idx { type uint32; } + uses LmfInfoGrp; + } + + list mappedCellIdInfoList { + description "It provides the list of mapping between GEO area and + Mapped Cell ID."; + key idx; + leaf idx { type uint32; } + uses types5g3gpp:MappedCellIdInfoGrp; + } + + list ephemerisInfos { + description "This is the list of Ephemeris related information"; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses ntn3gpp:EphemerisGrp; + } + + list trpInfoList { + description "This is the list of TRP (Transmission-Reception Point) + related information on LMF (see TS 38.305 clause 5.4.4)."; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses TrpInfoGrp; + } } augment "/me3gpp:ManagedElement" { list LMFFunction { - description "5G Core LMF Function"; - reference "3GPP TS 28.541"; + description "5G Core LMF Function defined in TS 23.501"; key id; uses top3gpp:Top_Grp; container attributes { diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang index 33033562c97cb2786a484c86444f6faab748eef0..be566c2b307c1d9ef7ec94c7667200ad27ab9c1f 100755 --- a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang @@ -72,7 +72,15 @@ module _3gpp-5gc-nrm-nwdaffunction { default false; description "It indicate whether the NWDAF supports analytics metadata provisioning:"; - } + } + + leaf roamingExchange { + type boolean ; + default false; + description "It indicates whether the NWDAF + supports roaming exchange capability"; + } + } grouping MlAnalyticsInfoGrp { @@ -370,6 +378,20 @@ module _3gpp-5gc-nrm-nwdaffunction { decomposition, in that case the NWDAF only supports the analytics services."; } + + leaf roamingAnalytics { + type boolean ; + config false; + description "It indicates whether the NWDAF supports + Nnwdaf_RoamingAnalytics service"; + } + + leaf roamingData { + type boolean ; + config false; + description "It indicates whether the NWDAF supports + Nnwdaf_RoamingData service"; + } } augment "/me3gpp:ManagedElement" { diff --git a/yang-models/_3gpp-5gc-nrm-stmfunction.yang b/yang-models/_3gpp-5gc-nrm-stmfunction.yang new file mode 100644 index 0000000000000000000000000000000000000000..5ad40a9c23956f0141890fee8bd7e3c7f6ec707b --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-stmfunction.yang @@ -0,0 +1,103 @@ +module _3gpp-5gc-nrm-stmfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-stmfunction; + prefix stm3gpp; + + import _3gpp-common-top { prefix top3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the STM function defined in 3GPP TS 28.abc. + Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + TTA, TTC). All rights reserved."; + reference "3GPP TS 28.abc + Signalling traffic monitoring management"; + + revision 2024-11-07 { reference "S5-247077"; } + + grouping StmCtrlGrp { + description "Represents the StmCtrl IOC."; + + leaf-list reportingNFList { + type types3gpp:DistinguishedName; + description "List of Network Function Distinguished Name, which + specifies the target network interface type to be monitored. If + this parameter is not present or it is empty, then all applicable + interface types from the target NF shall be monitored"; + } + + leaf-list networkInterfaceTypeList { + type enumeration { + enum ALL; + enum N4; + enum N5; + enum N7; + enum N8; + enum N10; + enum N11; + enum N12; + enum N13; + enum N14; + enum N15; + enum N22; + enum N58; + enum N59; + enum N80; + enum N81; + } + default ALL; + description "List of network interface type. it specifies the network + function whose signalling traffic is to be monitored. If this + parameter is not present or it is empty, then all Network Functions + within the SubNetwork or ManagedElement shall be monitored. This + parameter shall be omitted if the STM control object is specified + under a ManagedFunction. "; + reference "Clause 4.2.3 of 3GPP TS 23.501 for details on the + allowed values."; + } + + leaf stmTargetUri { + type inet:uri; + mandatory true; + description "It specifies the Uniform Resource Identifier (URI) of the STM + consumer that shall receive the monitored signalling message copies "; + reference "Clause 4.4 of 3GPP TS 32.158"; + } + + leaf administrativeState { + default LOCKED; + type types3gpp:BasicAdministrativeState ; + description "It is used by the STM consumer to lock or unlock the + StmCtrl instance in order to stop or start the signalling traffic + monitoring"; + } + + leaf operationalState { + config false; + mandatory true; + type types3gpp:OperationalState ; + description "It is used by STM consumer to report its working state"; + } + } + + grouping StmCtrlSubTree { + description "Contains classes that manage Signalling traffic monitoring + management"; + + list StmCtrl { + description "This IOC represents the STM Control and Configuration + parameters of a particular STM controlling. It can be + name-contained by SubNetwork, ManagedElement, or ManagedFunction."; + + key id; + uses top3gpp:Top_Grp ; + container attributes { + uses StmCtrlGrp ; + } + + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-filemanagement.yang b/yang-models/_3gpp-common-filemanagement.yang index 1e03291afae984f4b8f63e2155f954999b59d817..4ead4f89a6e0625b0e1ccf761db14d008e32c9d3 100644 --- a/yang-models/_3gpp-common-filemanagement.yang +++ b/yang-models/_3gpp-common-filemanagement.yang @@ -8,6 +8,7 @@ module _3gpp-common-filemanagement { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-yang-extensions { prefix yext3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -17,6 +18,7 @@ module _3gpp-common-filemanagement { TTA, TTC). All rights reserved."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; + revision 2024-11-07 { reference CR-0474 ; } revision 2023-09-18 { reference CR-0271 ; } revision 2023-02-14 { reference CR-0234; } revision 2022-10-24 { reference CR-0196; } @@ -52,12 +54,22 @@ module _3gpp-common-filemanagement { uses top3gpp:Top_Grp; leaf fileLocation { - description "Provides the location of a file. - allowedValues: File URI (See RFC 8089)"; - mandatory true; - type string; + type inet:uri; yext3gpp:notNotifyable; yext3gpp:inVariant; + description "Location of the file incl. the file transfer protocol, + and the file name for the case the file content cannot be retrieved + by reading the 'fileContent' attribute. + + The allowed file transfer protocols are: + - sftp + - ftpes + - https + + Examples: + 'sftp://companyA.com/datastore/fileName.xml', + 'https://companyA.com/ManagedElement=1/Files=1/File=1' + "; } leaf notificationRecipientAddress { diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang index 705d01a2912c0e572c59d0cbad770cdb36099105..d8ab19d689ff5645c2dd7342f8eb687ed2f528bc 100755 --- a/yang-models/_3gpp-common-managed-element.yang +++ b/yang-models/_3gpp-common-managed-element.yang @@ -13,6 +13,7 @@ module _3gpp-common-managed-element { import _3gpp-5gc-nrm-configurable5qiset { prefix fiveqi3gpp; } import _3gpp-5gc-nrm-ecmconnectioninfo { prefix econn3gpp ; } import _3gpp-nr-nrm-ecmappingrule { prefix ecmap3gpp ; } + import _3gpp-5gc-nrm-stmfunction { prefix stm3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -34,7 +35,8 @@ module _3gpp-common-managed-element { 3GPP TS 28.620 Umbrella Information Model (UIM)"; - revision 2024-08-21 { reference CR-1337 ; } + revision 2024-11-19 { reference "Add STM"; } + revision 2024-10-01 { reference "CR-0437,CR-0438" ; } revision 2024-01-30 { reference CR-0328 ; } revision 2023-11-14 { reference CR-0305 ; } revision 2023-09-18 { reference CR-0271 ; } @@ -126,6 +128,10 @@ module _3gpp-common-managed-element { ManagedElement."; } + feature StmCtrlUnderManagedElement { + description "The StmCtrlSubtree shall be contained under ManagedElement"; + } + grouping ManagedElement_Grp { description "Abstract class representing telecommunications resources. An ME communicates with a manager (directly or indirectly) for the @@ -314,6 +320,9 @@ module _3gpp-common-managed-element { uses ecmap3gpp:NRECMappingRuleSubtree { if-feature ECMappingRuleUnderManagedElement; } - + + uses stm3gpp:StmCtrlSubTree { + if-feature StmCtrlUnderManagedElement ; + } } } diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang index ea4390cc348f5167fb4501fdb3fcbd70c2a9d8a3..8a012d09aa0f6cada86062adb7e56cb9a3892fc5 100755 --- a/yang-models/_3gpp-common-managed-function.yang +++ b/yang-models/_3gpp-common-managed-function.yang @@ -8,6 +8,7 @@ module _3gpp-common-managed-function { import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-measurements { prefix meas3gpp; } import _3gpp-common-trace { prefix trace3gpp; } + import _3gpp-5gc-nrm-stmfunction { prefix stm3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -24,6 +25,7 @@ module _3gpp-common-managed-function { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2024-11-19 { reference "Add STM"; } revision 2024-02-24 { reference CR-0346; } revision 2023-09-18 { reference CR-0271; } revision 2023-04-26 { reference CR-0250; } @@ -48,6 +50,10 @@ module _3gpp-common-managed-function { feature TraceUnderManagedFunction { description "The TraceSubtree shall be contained under ManagedFunction"; } + + feature StmCtrlUnderManagedFunction { + description "The StmCtrlSubtree shall be contained under ManagedFunction"; + } grouping OperationGrp { description "This data type represents an operation."; @@ -351,5 +357,9 @@ module _3gpp-common-managed-function { uses trace3gpp:TraceSubtree { if-feature TraceUnderManagedFunction ; } + + uses stm3gpp:StmCtrlSubTree { + if-feature StmCtrlUnderManagedFunction ; + } } } \ No newline at end of file diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index e2cf97b8a3e946cdd07ac0bab2727e1d71104a5c..28c838a66b8557f551b6b49f884716fee2acb754 100755 --- a/yang-models/_3gpp-common-measurements.yang +++ b/yang-models/_3gpp-common-measurements.yang @@ -56,6 +56,7 @@ module _3gpp-common-measurements { Integration Reference Point (IRP); Information Service (IS)"; + revision 2024-11-01 { reference CR-0488; } revision 2024-05-06 { reference CR-0359; } revision 2024-02-24 { reference CR-0346; } revision 2023-11-18 { reference "CR-0299 CR-0305"; } @@ -187,6 +188,7 @@ module _3gpp-common-measurements { grouping SupportedPerfMetricGroupGrp { list SupportedPerfMetricGroups { config false; + key idx; description "Captures a group of supported performance metrics and associated parameters related to their production and reporting. A SupportedPerfMetricGroup attribute which is part of an MOI may @@ -195,6 +197,8 @@ module _3gpp-common-measurements { can specify supported metrics for contained ManagedFunctions like a GNBDUFunction."; + leaf idx { type uint32; } + leaf-list performanceMetrics { type string; min-elements 1; diff --git a/yang-models/_3gpp-common-qmcjob.yang b/yang-models/_3gpp-common-qmcjob.yang index 5d991ae156ff97a668029c82b778f635865ccec4..b69cd9a19050efdd05e5d1ddd6b3c5fa0bf16351 100644 --- a/yang-models/_3gpp-common-qmcjob.yang +++ b/yang-models/_3gpp-common-qmcjob.yang @@ -27,6 +27,7 @@ module _3gpp-common-qmcjob { Integration Reference Point (IRP); Information Service (IS)"; + revision 2024-11-05 { reference CR-0480; } revision 2024-04-04 { reference CR-0334; } revision 2023-09-18 { reference CR-0271 ; } revision 2023-02-14 { reference "CR-0234"; } @@ -50,12 +51,8 @@ module _3gpp-common-qmcjob { list areaScope { key "idx"; leaf idx { type uint32 ; } - description "It specifies the area where data shall be collected. - List of eNB/list of gNB/eNB/gNB for RLF or RCEF. - List of cells or Tracking Area for QMC. - Cell, TA, LA, RA are mutually exclusive."; - reference "Clause 5.10.2 of 3GPP TS 32.422"; - + description "It defines the area scope of QoE, which is specified + in clause 5.4 of TS 28.405."; uses trace3gpp:AreaScopeGrp; } @@ -182,12 +179,15 @@ module _3gpp-common-qmcjob { producer. For details of Management Based Activation of QoE Measurement Collection see clause 4.5 and for details of Signalling Based Activation of QoE Measurement Collection see clause 4.6 of TS 28.405. - The attributes areaScope and pLMNTarget are only relevant when + The attribute pLMNTarget is only relevant when Management Based Activation is used and the attribute qoETarget is only relevant when Signalling Based Activation is used. All other attributes are common for both Management Based Activation and Signalling Based Activation. + The areaScope attribute defines the area scope of QoE, which is + specified in clause 5.4 of TS 28.405. + When a MnS consumer wishes to deactivate a QMC Job, the MnS consumer shall delete the corresponding QMCJob instance. NOTE: If the reporting is ongoing, when a request to delete a QMCJob @@ -198,43 +198,7 @@ module _3gpp-common-qmcjob { jobId can be used to associate multiple QMCJob instances. For example, it is possible to configure the same jobId value for multiple QMCJob instances required to produce the data (e.g. Streaming services and - MTSI reports) for a specific network analysis. - The QoE Measurement Collection provides capability for collecting QoE - information from: - - UEs which are in the specified area in case of Management Based - Activation or - - an individual UE in case of Signalling Based Activation. - The QoE Measurement Collection enables collection of application layer - from the UE for specified end user service type. The supported service - types are: - - Streaming services, see TS 26.247. - - MTSI services, see TS 26.114. - - VR services, see TS 26.118. - A QMCJob instance represents the job for collecting QoE measurements - according to the job parameters. For details of the QoE measurement - collection configuration parameters see clause 5 of TS 28.405. A QMCJob - instance can be name-contained by SubNetwork or ManagedElement. - A QMC Job is activated by creating a QMCJob object instance in the - MnS producer. For details of Management Based Activation of QoE - Measurement Collection see clause 4.5 and for details of Signalling - Based Activation of QoE Measurement Collection see - clause 4.6 of TS 28.405. The attributes areaScope and pLMNTarget are - only relevant when Management Based Activation is used and the - attribute qoETarget is only relevant when Signalling Based Activation - is used. All other attributes are common for both Management Based - Activation and Signalling Based Activation. - - When a MnS consumer wishes to deactivate a QMC Job, the MnS consumer - shall delete the corresponding QMCJob instance. - NOTE: If the reporting is ongoing, when a request to delete a QMCJob - instance is received, the reporting does not end. The QMCJob instance - is deleted, when the last reporting for the QMC Job expires. - - The jobId attribute presents the job identifier of a QMCJob instance. - The jobId can be used to associate multiple QMCJob instances. - example, it is possible to configure the same jobId value for multiple - QMCJob instances required to produce the data (e.g. Streaming services - and MTSI reports) for a specific network analysis."; + MTSI reports) for a specific network analysis."; key id; uses top3gpp:Top_Grp; container attributes { diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang index ddd472941d58fa4e07081352f39dfd301da42e7b..59868e1c63d5702a691e9a06ce65f4a149cf88c2 100755 --- a/yang-models/_3gpp-common-subnetwork.yang +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -14,6 +14,7 @@ module _3gpp-common-subnetwork { import _3gpp-5gc-nrm-configurable5qiset { prefix fiveqi3gpp; } import _3gpp-5gc-nrm-ecmconnectioninfo { prefix econn3gpp ; } import _3gpp-nr-nrm-ecmappingrule { prefix ecmap3gpp ; } + import _3gpp-5gc-nrm-stmfunction { prefix stm3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -34,6 +35,7 @@ module _3gpp-common-subnetwork { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2024-11-19 { reference "Add STM"; } revision 2024-01-30 { reference CR-1337 ; } revision 2024-01-30 { reference CR-0328 ; } revision 2023-11-14 { reference CR-0305 ; } @@ -142,6 +144,10 @@ module _3gpp-common-subnetwork { feature. The CESManagementFunction shall be contained under SubNetwork."; } + feature StmCtrlUnderManagedSubNetwork { + description "The StmCtrlSubtree shall be contained under SubNetwork"; + } + grouping Domain_Grp { description "A domain is a partition of instances of managed entities such that : @@ -274,12 +280,14 @@ module _3gpp-common-subnetwork { if-feature EcmConnectionInfoUnderSubNetwork; } + uses stm3gpp:StmCtrlSubTree { + if-feature StmCtrlUnderManagedSubNetwork ; + } yangmnt:mount-point children-of-SubNetwork { description "Mountpoint for ManagedElement"; reference "RFC8528 YANG Schema Mount"; } - // augment external parts here } } diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index 30a4db45b2bb86cb8a7377a8b37dad152e80c036..3c0f3401b434d6138b2b0e8409e37bdef7d460b1 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -4,10 +4,11 @@ module _3gpp-common-trace { prefix "trace3gpp"; import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types {prefix types3gpp; } import _3gpp-common-yang-extensions {prefix yext3gpp; } import ietf-inet-types { prefix inet; } import _3gpp-common-files { prefix files3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types {prefix types5g3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -25,6 +26,8 @@ module _3gpp-common-trace { Integration Reference Point (IRP); Information Service (IS)" ; + revision 2024-11-07 { reference "CR-0480"; } + revision 2024-10-01 { reference "CR-0457"; } revision 2024-08-13 { reference "CR-0387 CR-0377"; } revision 2024-08-07 { reference "CR-0405 CR-0421 CR-0379"; } revision 2024-05-12 { reference "CR-0401"; } @@ -106,10 +109,7 @@ module _3gpp-common-trace { } grouping AreaScopeGrp { - description "Represents the AreaScope dataType. - This <> defines the area scope of MDT and QoE. - The Area Scope for MDT is specified in clause 5.10.2 of TS 32.422. - The Area Scope for QoE is specified in clause 5.4 of TS 28.405."; + description "This <> defines an area scope."; choice AreaScopeChoice { leaf-list eutraCellIdList { @@ -133,6 +133,15 @@ module _3gpp-common-trace { description "Tracking Area Code list"; } + list sliceIdList { + description "Network Slice Id list"; + key idx; + uses types5g3gpp:PLMNInfo; + min-elements 1; + max-elements 16384; + leaf idx { type string; } + } + list taiList { description "Tracking Area Identity list"; key idx; @@ -1430,14 +1439,10 @@ module _3gpp-common-trace { description "Defines the configuration parameters of IOC TraceJob which are specific for MDT. The attribute anonymizationOfMdtData specifies the level of anonymization - of MDT data. The optional attribute areaScope allows to - specify the area in terms of cells or Tracking Area/Routing - Area/Location area where the MDT data collection shall take - place. In case of RLF_REPORT_ONLY and RCEF_REPORT_ONLY the - optional attribute areaScope allows to specify the eNB or list - of eNBs or gNB or list of gNBs where the reports should be - collected. The optional attribute sensorInformation allows to - specify the sensor information to include. Based on the value + of MDT data. The attribute areaScope defines the area scope + of MDT, which is specified in clause 5.10.2 of TS 32.422. + The optional attribute sensorInformation allows to specify + the sensor information to include. Based on the value configured for attribute jobType in IOC TraceJob, the attributes immediateMdtConfig or loggedMdtConfig are available: In case of IMMEDIATE_MDT_ONLY or IMMEDIATE_MDT_AND_TRACE the attribute @@ -1458,21 +1463,9 @@ module _3gpp-common-trace { list areaScope { key "idx"; leaf idx { type uint32 ; } - description "It specifies the area where data shall be collected. - List of eNB/list of gNB/eNB/gNB for RLF or RCEF. - - List of cells/TA/LA/RA for signaling based MDT or management - based Logged MDT. - - List of cells for management based Immediate MDT. - - List of NPN IDs for management based MDT. - - Cell, TA, LA, RA are mutually exclusive. - - This attribute shall be present if MDT is supported."; - reference "Clause 5.10.2 of 3GPP TS 32.422"; - + description "It specifies the area where data shall be collected. "; + min-elements 0; + max-elements 1; uses AreaScopeGrp; } @@ -1551,8 +1544,8 @@ module _3gpp-common-trace { type uint32; mandatory true; units milliseconds; - description "It specifies the Granularity period used to produce 5GC UE level - measurements. The period is defined in milliseconds (ms)."; + description "It specifies the Granularity period used to produce 5GC UE + level measurements. The period is defined in milliseconds (ms)."; } leaf nfTypeToMeasure { @@ -1613,10 +1606,9 @@ module _3gpp-common-trace { enum SPR; enum MHI; enum RA_REPORT; - enum UHI_REPORT; } description "Specifies the RRC reports requested. "; - reference "Clause 5.X of 3GPP TS 32.422 for additional details on the + reference "Clause 5.14 of 3GPP TS 32.422 for additional details on the allowed values."; } @@ -1738,22 +1730,22 @@ module _3gpp-common-trace { ManagedEntity playing a role of ServinGWFunction. In case of signaling based Trace/MDT, the traceTarget attribute shall - be able to carry (IMSI or IMEI(SV)or SUPI), the mDTAreaScope attribute + be able to carry (IMSI or IMEI(SV)or SUPI), the areaScope attribute shall be able to carry a list of (cell or E-UtranCell or NRCellDU or TA/LA/RA). In case of management based Immediate MDT, the traceTarget attribute - shall be null value, the mDTAreaScope attribute shall carry a list of + shall be null value, the areaScope attribute shall carry a list of (Utrancell or E-UtranCell or NRCellDU). In case of management based Logged MDT, the traceTarget attribute shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated - on the specified eNB or RNC or gNB in traceTarget. The mDTAreaScope + on the specified eNB or RNC or gNB in traceTarget. The areaScope attribute shall carry a list of (Utrancell or E-UtranCell or NRCellDU or TA/LA/RA). In case of RLF reporting, or RCEF reporting, the traceTarget - attribute shall be null value, the mDTAreaScope attribute shall carry + attribute shall be null value, the areaScope attribute shall carry one or list of eNBs/gNBs"; reference "3GPP TS 32.422"; } @@ -1874,10 +1866,10 @@ module _3gpp-common-trace { 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 ueCoreMeasConfig 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 - ueCoreMeasConfig are applicable. + of attribute ueCoreMeasConfig 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 ueCoreMeasConfig 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-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 25d9a5b5b16205f7252de52c381f6ce87fc822eb..37fadf04ae1a6b6cc2e6a054ad55945c6be5fb6c 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -16,6 +16,7 @@ module _3gpp-common-yang-types { TTA, TTC). All rights reserved."; reference "3GPP TS 28.623"; + revision 2024-11-01 { reference CR-0463; } revision 2024-08-13 { reference CR-0387; } revision 2024-05-18 { reference CR-0359; } revision 2024-04-12 { reference CR-0346; } @@ -620,10 +621,24 @@ module _3gpp-common-yang-types { } typedef Tac { - type int32 { - range 0..16777215 ; - } - description "Tracking Area Code"; + type string { + pattern "([A-Fa-f0-9]{4})|([A-Fa-f0-9]{6})" ; + } + description "Tracking Area Code + 2 or 3-octet string identifying a tracking area code as specified in + clause 9.3.3.10 of 3GPP TS 38.413 [34], in hexadecimal representation. + Each character in the string shall take a value of + '0' to '9', 'a' to 'f' or 'A' to 'F' and shall represent 4 bits. + The most significant character representing the 4 most significant + bits of the TAC shall appear first in the string, and the character + representing the 4 least significant bit of the TAC shall appear last + in the string. + + pattern: '(^[A-Fa-f0-9]{4}$)|(^[A-Fa-f0-9]{6}$)' + + Examples: + A legacy TAC 0x4305 shall be encoded as '4305'. + An extended TAC 0x63F84B shall be encoded as '63F84B'"; reference "TS 23.003 clause 19.4.2.3"; } @@ -632,7 +647,7 @@ module _3gpp-common-yang-types { as specified in clause 28.6 of TS 23.003, clause 8.2 of TS 38.300 and clause 9.3.3.11 of TS 38.413. It is composed of the PLMN identifier (PLMN-Id, which is composed of the MCC and MNC) and - the Tracking Area Code (TAC). "; + the Tracking Area Code (TAC)."; list plmnId { description "PLMN Identity."; min-elements 1; @@ -641,7 +656,11 @@ module _3gpp-common-yang-types { uses types3gpp:PLMNId; } - leaf tac { type Tac; } + leaf tac { + type Tac; + mandatory true; + description "Tracking Area Code"; + } } grouping GeoCoordinateGrp { diff --git a/yang-models/_3gpp-nr-nrm-bwpset.yang b/yang-models/_3gpp-nr-nrm-bwpset.yang index cba0ca407fd9f8445ba55ee37b6c66d826ad4e49..42f70035212a2ab845bd2b59cb4743ac73b9007a 100644 --- a/yang-models/_3gpp-nr-nrm-bwpset.yang +++ b/yang-models/_3gpp-nr-nrm-bwpset.yang @@ -16,6 +16,7 @@ module _3gpp-nr-nrm-bwpset { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2024-11-01 { reference CR-1405 ; } revision 2024-08-19 { reference CR-1314 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-06-29 { reference CR-0756 ; } @@ -27,7 +28,7 @@ module _3gpp-nr-nrm-bwpset { } augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - list BWPLSett { + list BWPSet { description "Represents a bandwidth part (BWP) set."; key id; uses top3gpp:Top_Grp; diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 839cb879c47bac02062c1b0a6f2e31a7c7a959e6..aaf83c7ee507585fae9ac80ae2245e30a06c35b3 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -4,6 +4,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { prefix "gnbcucp3gpp"; import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-yang-extensions { prefix yext3gpp; } import _3gpp-common-managed-function { prefix mf3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } @@ -19,6 +20,8 @@ module _3gpp-nr-nrm-gnbcucpfunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2024-11-07 { reference "CR-1443"; } + revision 2024-08-19 { reference "CR-1405"; } revision 2024-08-19 { reference "CR-1337 CR-1352"; } revision 2024-05-24 { reference CR-1273 ; } revision 2024-04-04 { reference CR-1139; } @@ -56,7 +59,85 @@ module _3gpp-nr-nrm-gnbcucpfunction { feature DMROFunction { description "Class representing D-SON function of MRO feature"; } - + + grouping BackhaulAddressGrp { + description "This data type represents the properties describing the + backhaul address of gNB. "; + + leaf gNBId { + type uint32 ; + mandatory true; + description "It identifies a gNB within a PLMN. The gNB ID is part of + the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. + Global gNB ID in subclause 9.3.1.6 of TS 38.413"; + } + + list tAI { + key tac; + min-elements 1; + max-elements 1; + description "Tracking Area Identity"; + reference "subclause 9.3.3.11 in TS 38.413"; + uses types3gpp:TaiGrp; + } + } + + grouping MappingSetIDBackhaulAddressGrp { + description "This data type represents the properties describing the + mapping relationship between set ID and backhaul address of gNB."; + + leaf setID { + type uint32 { + range 0..4194304; // 22 bits + } + mandatory true; + description "This specifies the set ID of a victim Set (RIM-RS1 Set) or + aggressor Set (RIM-RS2 set). (See subclause 7.4.1.6 in TS 38.211). + + allowedValues: + The bit length of the set ID is maximum 22bit."; + } + + list backhaulAddress { + description "The attribute specifies backhaulAddress which is defined as + a datatype."; + min-elements 1; + max-elements 1; + key gNBId; + uses BackhaulAddressGrp; + } + } + + grouping tceIDMappingInfoGrp { + description "This data type represents the properties describing the + mapping relationship between TCE ID, PLMN where TCE resides and + IP address of TCE."; + + leaf tceIPAddress { + type inet:ip-address; + mandatory true; + description "This attribute indicates IP address of TCE. + (See subclause 4.1.1.9.2 in TS 32.422)"; + } + + leaf tceID { + type int64; + mandatory true; + description "This attribute indicates TCE Id. + (See subclause 4.1.1.9.2 in TS 32.422)"; + } + + list pLMNTarget { + description "Indicates the PLMN where TCE resides. + (See subclauses 4.1.1.9.2 and 4.9.2 in TS 32.422)"; + min-elements 1; + max-elements 1; + key mnc; + uses types3gpp:PLMNId; + } + } + grouping GNBCUCPFunctionGrp { description "Represents the GNBCUCPFunction IOC."; reference "3GPP TS 28.541"; @@ -94,66 +175,82 @@ module _3gpp-nr-nrm-gnbcucpfunction { uses types3gpp:PLMNId; } - leaf-list x2BlockList { - type string; + list x2BlockList { description "List of nodes to which X2 connections are prohibited."; + key idx; + leaf idx {type uint32;} + uses GeNBIdGrp; } - leaf-list x2AllowList { - type string; + list x2AllowList { description "List of nodes to which X2 connections are enforced."; + key idx; + leaf idx {type uint32;} + uses GeNBIdGrp; } - leaf-list xnBlockList { - type string; + list xnBlockList { description "List of nodes to which Xn connections are prohibited."; + key idx; + leaf idx {type uint32;} + uses GgNBIdGrp; } - leaf-list xnAllowList { - type string; + list xnAllowList { description "List of nodes to which X2 connections are enforced."; + key idx; + leaf idx {type uint32;} + uses GgNBIdGrp; } - leaf-list xnHOBlockList { - type string; - description "List of nodes to which handovers over Xn are prohibited."; - } - - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the GNBCUCPFunction - supports (is associated to)."; - } - - leaf-list x2HOBlockList { - type string; + list x2HOBlockList { description "List of nodes to which handovers over X2 are prohibited."; + key idx; + leaf idx {type uint32;} + uses GeNBIdGrp; } - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the GNBCUCPFunction supports - (is associated to)."; + list xnHOBlockList { + description "List of nodes to which handovers over Xn are prohibited."; + key idx; + leaf idx {type uint32;} + uses GgNBIdGrp; } - leaf dCHOControl { - type boolean; - description "This attribute determines whether the CHO function is - enabled or disabled."; + list mappingSetIDBackhaulAddressList { + description "The attribute specifies a list of mappingSetIDBackhaulAddress + which is defined as a datatype. Which is used to + retrieve the backhaul address of the victim set."; + min-elements 1; + key idx; + leaf idx {type uint32; } + uses MappingSetIDBackhaulAddressGrp; } - - leaf dLTMCellSwitchControl { - type boolean; - description "This attribute determines whether the distributed SON - function LTM Cell Switch is enabled or disabled."; + + list tceIDMappingInfoList { + description "This attribute includes a list of TCE ID, PLMN where TCE + resides and the corresponding TCE IP address. It is used in Logged MDT + case to provide the information to the gNodeB or GNBCUCPFunction to + get the corresponding TCE IP address when there is an MDT log + received from the UE."; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses tceIDMappingInfoGrp; } - + leaf dDAPSHOControl { type boolean; description "This attribute determines whether the DAPS handover function is enabled or disabled."; } + leaf dCHOControl { + type boolean; + description "This attribute determines whether the CHO 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 @@ -183,6 +280,26 @@ module _3gpp-nr-nrm-gnbcucpfunction { subject to user consent at MDT activation."; } + list mappedCellIdInfoList { + description "This attribute provides the list of mapping between + geographical location and Mapped Cell ID."; + key idx; + leaf idx { type uint32; } + uses types5g3gpp:MappedCellIdInfoGrp; + } + + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the GNBCUCPFunction + supports (is associated to)."; + } + + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the GNBCUCPFunction supports + (is associated to)."; + } + leaf ephemerisInfoSetRef { type types3gpp:DistinguishedName; description "This is the DN of EphemerisInfoSet."; @@ -220,6 +337,39 @@ module _3gpp-nr-nrm-gnbcucpfunction { } } + grouping GgNBIdGrp { + description "Represents the properties of a global gNB ID (GgNBId)."; + + uses types3gpp:PLMNId; + + leaf gnbIdLength { + type int32 {range "22..32";} + mandatory true; + description "This indicates the number of bits for encoding the gNB ID. See 'Global gNB ID' in subclause 9.3.1.6 of TS 38.413"; + } + + leaf gnbId { + description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) + is part of the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + } + + grouping GeNBIdGrp { + description "Represents the properties of a global eNB ID (GeNBId)."; + uses types3gpp:PLMNId; + + leaf enbId { + description "It identifies an eNB within a PLMN. The eNB ID is part of the E-UTRAN Cell Global Identifier (ECGI) of the eNB + cells."; + reference "eNB ID in 3GPP TS 36.300. Global eNB ID in 3GPP TS 36.413."; + mandatory true; + type int32 {range "0..4194303";} + } + } + augment "/me3gpp:ManagedElement" { list GNBCUCPFunction { diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang index fed4880c9bd0f7b85ecab68ff4a7d963f8abaaeb..4238ccf3b8f8e0ec632bdd74797bccfbeb87e224 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang @@ -19,6 +19,7 @@ module _3gpp-nr-nrm-gnbcuupfunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2024-11-01 { reference CR-1405 ; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-04-26 { reference CR-0916; } @@ -38,74 +39,6 @@ module _3gpp-nr-nrm-gnbcuupfunction { GNBCUUPFunction"; } - grouping TAIGrp { - description "Tracking Area Identity"; - - list pLMNId { - key "mcc mnc"; - description "PLMN IDs for the Tracking area"; - uses types3gpp:PLMNId; - } - - leaf nRTAC { - type types5g3gpp:NRTAC; - description "Identity of the common Tracking Area Code for the PLMNs - allowedValues: - a) It is the TAC or Extended-TAC. - b) A cell can only broadcast one TAC or Extended-TAC. - See TS 36.300, subclause 10.1.7 (PLMNID and TAC relation). - c) TAC is defined in subclause 19.4.2.3 of 3GPP TS 23.003 and - Extended-TAC is defined in subclause 9.3.1.29 of 3GPP TS 38.473. - d) For a 5G SA (Stand Alone), it has a non-null value."; - } - } - - grouping BackhaulAddressGrp { - description "Indicates the backhauladdress of gNB."; - - leaf gNBId { - type uint32 { - range "0..4294967295"; - } - description "It identifies a gNB within a PLMN. The gNB ID is part of - the NR Cell Identifier (NCI) of the gNB cells."; - reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. - Global gNB ID in subclause 9.3.1.6 of TS 38.413"; - } - - list tAI { - key nRTAC; - min-elements 1; - max-elements 1; - description "Tracking Area Identity"; - reference "subclause 9.3.3.11 in TS 38.413"; - uses TAIGrp; - } - } - - grouping MappingSetIDBackhaulAddressGrp { - description "Mapping relationship between setID and backhaulAddress of gNB"; - - leaf idx { - type uint32 ; - description "ID value"; - } - - leaf setID { - type uint32; - mandatory true; - description "Indicates the setID of gNB."; - reference "Subclause 7.4.1.6 in TS 38.211"; - } - - list backhaulAddress { - key gNBId; - min-elements 1; - max-elements 1; - description "Indicates the backhauladdress of gNB."; - uses BackhaulAddressGrp; - } - } grouping GNBCUUPFunctionGrp { description "Represents the GNBCUUPFunction IOC."; reference "3GPP TS 28.541"; @@ -147,15 +80,6 @@ module _3gpp-nr-nrm-gnbcuupfunction { uses types5g3gpp:PLMNInfo; } - list mappingSetIDBackhaulAddressList { - key idx; - description "Specifies a list of mappingSetIDBackhaulAddress used to - retrieve the backhaul address of the victim set. - Must be present if Remote Interference Management function is - supported."; - uses MappingSetIDBackhaulAddressGrp; - } - leaf configurable5QISetRef { type types3gpp:DistinguishedName; description "DN of the Configurable5QISet that the GNBCUUPFunction