diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang index 08b8fc7211dd4b505c121951bbdd93d1e606a462..75786fb27af3923b91782746359c9cd448eb42fc 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,7 @@ module _3gpp-5g-common-yang-types { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + 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 +22,46 @@ module _3gpp-5g-common-yang-types { revision 2020-11-05 { reference CR-0412 ; } revision 2019-10-20 { reference "Initial version."; } + 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..b28a1a52179696bd6ca57b02c45a3c4d303cf8a2 100755 --- a/yang-models/_3gpp-5gc-nrm-amffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-amffunction.yang @@ -8,7 +8,10 @@ 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-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp ;} + 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 +20,16 @@ module _3gpp-5gc-nrm-amffunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + 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 gnbcuup3gpp: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-common-trace.yang b/yang-models/_3gpp-common-trace.yang index bf194a6ea0d3fdfd133a3927bf33a6ecae124030..7108cb6a631a132d7cd870fece29df491be42832 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-10-06 { reference "CR-0459"; } revision 2024-08-06 { reference "CR-0376 CR-0378 CR-0420"; } revision 2024-05-12 { reference "CR-0401"; } revision 2024-05-06 { reference CR-0359; } @@ -559,7 +560,7 @@ module _3gpp-common-trace { } } - leaf-list listOfNETypes { + leaf-list listOfNeTypes { type enumeration { enum MSC_SERVER; enum SGSN; @@ -680,15 +681,15 @@ module _3gpp-common-trace { -reportingTrigger: conditional for M1 in LTE or NR and M1/M2 in UMTS, -eventThreshold: conditional for A2 event reporting or A2 event triggered periodic reporting, - -collectionPeriodRrmNR: conditional for M4 and M5 in NR, + -collectionPeriodRRMNR: conditional for M4 and M5 in NR, -collectionPeriodM6NR: conditional for M6 in NR, -collectionPeriodM7NR: conditional for M7 in NR, - -collectionPeriodRrmLte (conditional for M3 in LTE), + -collectionPeriodRRMLTE (conditional for M3 in LTE), -measurementPeriodLTE (conditional for M4 and M5 in LTE), - -collectionPeriodM6Lte (conditional for M6 in LTE), - -collectionPeriodM7Lte (conditional for M7 in LTE), - -collectionPeriodRrmUmts (conditional for M4 and M5 in UMTS), - -measurementPeriodUmts (conditional for M6 and M7 in UMTS), + -collectionPeriodM6LTE (conditional for M6 in LTE), + -collectionPeriodM7LTE (conditional for M7 in LTE), + -collectionPeriodRRMUMTS (conditional for M4 and M5 in UMTS), + -measurementPeriodUMTS (conditional for M6 and M7 in UMTS), -measurementQuantity (conditional for 1F event reporting), -beamLevelMeasurement (conditional for M1 in NR), -excessPacketDelayThresholds (conditional for M6 UL measurement in NR). @@ -726,8 +727,8 @@ module _3gpp-common-trace { configuration, see TS 38.321, TS 36.321 and TS 38.331, TS 36.331. For measurement M4 in UMTS, reporting is either according to RRM configuration, see TS 25.321 and TS 25.331 or periodic or event - triggered periodic using parameter collectionPeriodRrmUmts and - eventThresholdUphUmts. + triggered periodic using parameter collectionPeriodRRMUMTS and + eventThresholdUphUMTS. - For measurement M3 in UMTS, the reporting is done upon availability, see TS 37.320. @@ -736,9 +737,9 @@ module _3gpp-common-trace { M3, M4, M5, M6 and M7 in LTE and for measurements M5, M6 and M7 in UMTS periodical reporting is applied. The configurable parameter is the interval between two measurements (collectionPeriodRrmNr, - collectionPeriodM6NR, collectionPeriodM7Nr, collectionPeriodRrmLte, - measurementPeriodLte, collectionPeriodM6Lte, collectionPeriodM7Lte, - collectionPeriodRrmUmts, measurementPeriodUmts). If no collection + collectionPeriodM6NR, collectionPeriodM7NR, collectionPeriodRRMLTE, + measurementPeriodLte, collectionPeriodM6LTE, collectionPeriodM7LTE, + collectionPeriodRRMUMTS, measurementPeriodUMTS). If no collection period is configured for M5 in UMTS, all available measurements are logged according to RRM configuration."; @@ -834,7 +835,7 @@ module _3gpp-common-trace { reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; } - leaf collectionPeriodRrmNr { + leaf collectionPeriodRRMNR { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { @@ -848,7 +849,7 @@ module _3gpp-common-trace { reference "Clause 5.10.30 of 3GPP TS 32.422"; } - leaf collectionPeriodM6Nr { + leaf collectionPeriodM6NR { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { @@ -874,7 +875,7 @@ module _3gpp-common-trace { reference "clause 5.10.34 of TS 32.422"; } - leaf collectionPeriodM7Nr { + leaf collectionPeriodM7NR { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { @@ -887,7 +888,7 @@ module _3gpp-common-trace { reference "clause 5.10.35 of TS 32.422"; } - leaf collectionPeriodRrmLte { + leaf collectionPeriodRRMLTE { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { @@ -918,7 +919,7 @@ module _3gpp-common-trace { reference "Clause 5.10.23 of 3GPP TS 32.422"; } - leaf collectionPeriodM6Lte { + leaf collectionPeriodM6LTE { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { @@ -932,7 +933,7 @@ module _3gpp-common-trace { reference "Clause 5.10.32 of TS 32.422 "; } - leaf collectionPeriodM7Lte { + leaf collectionPeriodM7LTE { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint16 { @@ -945,7 +946,7 @@ module _3gpp-common-trace { reference "Clause 5.10.33 of TS 32.422 ."; } - leaf eventThresholdUphUmts { + leaf eventThresholdUphUMTS { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint16 { @@ -958,7 +959,7 @@ module _3gpp-common-trace { reference "5.10.39 of TS 32.422"; } - leaf collectionPeriodRrmUmts { + leaf collectionPeriodRRMUMTS { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + ' or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { @@ -973,7 +974,7 @@ module _3gpp-common-trace { reference "Clause 5.10.21 of 3GPP TS 32.422"; } - leaf measurementPeriodUmts { + leaf measurementPeriodUMTS { when '../../../jobType = "IMMEDIATE_MDT_ONLY"' + 'or ../../../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { @@ -1443,7 +1444,7 @@ module _3gpp-common-trace { immediateMdtConfig is applicable. In case of LOGGED_MDT_ONLY or LOGGED_MBSFN_MDT the attribute loggedMdtConfig is applicable."; - leaf anonymizationOfMDTData { + leaf anonymizationOfMdtData { when ../areaScope ; type enumeration { enum NO_IDENTITY;