From b11dea5e6f00d41661af8a1abaaa6ea7a7d4167d Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Tue, 20 Sep 2022 13:07:52 +0200 Subject: [PATCH] Integration_Rel17_SA5_145_YANG into Rel-17 after SA5#145 and SA#97 c --- .../_3gpp-5gc-nrm-configurable5qiset.yang | 87 +++++------- yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang | 16 ++- yang-models/_3gpp-common-filemanagement.yang | 8 +- yang-models/_3gpp-common-managed-element.yang | 11 +- .../_3gpp-common-managed-function.yang | 2 +- yang-models/_3gpp-common-mnsregistry.yang | 41 ++++-- yang-models/_3gpp-common-subnetwork.yang | 12 +- yang-models/_3gpp-common-trace.yang | 23 +-- yang-models/_3gpp-common-yang-types.yang | 24 +++- yang-models/_3gpp-nr-nrm-dlbofunction.yang | 5 +- yang-models/_3gpp-nr-nrm-dmrofunction.yang | 2 +- yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 20 +-- yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang | 3 +- yang-models/_3gpp-nr-nrm-gnbdufunction.yang | 3 +- yang-models/_3gpp-nr-nrm-nrcelldu.yang | 4 +- yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 111 ++++++++++++--- yang-models/_3gpp-ns-nrm-networkslice.yang | 43 +++--- .../_3gpp-ns-nrm-networkslicesubnet.yang | 134 ++++++++++-------- yang-models/_3gpp-ns-nrm-sliceprofile.yang | 2 +- 19 files changed, 347 insertions(+), 204 deletions(-) diff --git a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang index 9561ede16..855d9ea76 100755 --- a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang +++ b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang @@ -1,32 +1,30 @@ module _3gpp-5gc-nrm-configurable5qiset { yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-configurable5qiset; - prefix Conf5QIs3gpp; - + prefix conf5QIs3gpp; + import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - + organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the configurable 5QIs, including - their QoS characteristics, that need to be pre-configured + description "This IOC represents the configurable 5QIs, including + their QoS characteristics, that need to be pre-configured (and configurable) to the 5G NFs."; reference "3GPP TS 28.541"; + revision 2022-07-27 { reference "CR-0769"; } revision 2022-04-29 { reference "CR-0729"; } revision 2022-01-07 { reference CR-0643; } revision 2020-08-04 { reference "CR-0321"; } revision 2020-06-03 { reference "CR-0286"; } - grouping PacketErrorRate { + grouping PacketErrorRateGrp { leaf scalar { type uint32 { range 0..9 ; } mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k + description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k where k is the Exponent."; } leaf exponent { @@ -34,18 +32,13 @@ module _3gpp-5gc-nrm-configurable5qiset { range 0..9 ; } mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k, + description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k, where k is the Exponent."; } } grouping FiveQICharacteristicsGrp { description "Represents the FiveQICharacteristics IOC."; - reference "3GPP TS 28.541"; - } - - list configurableFiveQIs { - key fiveQIValue; leaf fiveQIValue { type uint32 { range 0..255 ; @@ -60,87 +53,83 @@ module _3gpp-5gc-nrm-configurable5qiset { enum NON_GBR; } mandatory true; - description "It indicates the Resource Type of a 5QI, as specified + description "It indicates the Resource Type of a 5QI, as specified in TS 23.501 "; } - + leaf priorityLevel { type uint32 { range 0..127 ; } + mandatory true; + description "It indicates the Priority Level of a 5QI, as specified + in TS 23.501."; } - + leaf packetDelayBudget { type uint32 { range 0..1023 ; } - description "Indicates the Packet Delay Budget (in unit of 0.5ms)of a 5QI, + mandatory true; + description "Indicates the Packet Delay Budget (in unit of 0.5ms)of a 5QI, as specified in TS 23.501 "; } - + list packetErrorRate { key "scalar exponent"; + min-elements 1; max-elements 1; - uses PacketErrorRate; - reference "TS 23.501"; + uses PacketErrorRateGrp; + description "It indicates the Packet Error Rate of a 5QI, + as specified in TS 23.501."; } leaf averagingWindow { type uint32 { range 0..4095 ; } + mandatory true; units ms; reference "TS 23.501"; } - + leaf maximumDataBurstVolume { type uint32{ range 0..4095 ; } + mandatory true; units byte; } -} - - grouping FiveQiCharacteristicsSubtree { - description "Represents the FiveQICharacterics IOC."; - list FiveQICharacteristics { - key id; - uses top3gpp:Top_Grp; - container attributes { - uses FiveQICharacteristicsGrp; - } - } } grouping Configurable5QISetGrp { - description "Represents the Configurable5QISet IOC."; - list configurable5QIs { + description "Represents the Configurable5QISet IOC. + No attributes defined."; + } + + grouping FiveQICharacteristicsSubtree { + list FiveQICharacteristics { + description "This specifies the 5QI value and the corresponding + QoS characteristics for a 5QI."; key id; uses top3gpp:Top_Grp; container attributes { uses FiveQICharacteristicsGrp; } } - } + } grouping Configurable5QISetSubtree { list Configurable5QISet { - description "Specifies the non-standardized 5QIs, including their QoS - characteristics, that need to be pre-configured (and configurable) to + description "Specifies the non-standardized 5QIs, including their QoS + characteristics, that need to be pre-configured (and configurable) to the 5G NFs, see 3GPP TS 23.501."; key id; uses top3gpp:Top_Grp; container attributes { uses Configurable5QISetGrp; } + uses FiveQICharacteristicsSubtree; } } - - augment "/subnet3gpp:SubNetwork" { - uses Configurable5QISetSubtree; - } - - augment "/me3gpp:ManagedElement" { - uses Configurable5QISetSubtree; - } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang index b19c9f6d7..275507d95 100755 --- a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang +++ b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang @@ -1,6 +1,5 @@ module _3gpp-5gc-nrm-dynamic5qiset { yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-dynamic5qiset; prefix dyn5QIs3gpp; @@ -15,6 +14,7 @@ module _3gpp-5gc-nrm-dynamic5qiset { characteristics."; reference "3GPP TS 28.541"; + revision 2022-07-27 { reference "CR-0769"; } revision 2022-01-07 { reference CR-0643; } revision 2020-10-01 { reference "CR-0393"; } revision 2020-08-06 { reference "CR-0333"; } @@ -22,10 +22,15 @@ module _3gpp-5gc-nrm-dynamic5qiset { grouping Dynamic5QISetGrp { description "Represents the Dynamic5QISet IOC."; list dynamic5QIs { - key id; - uses top3gpp:Top_Grp; - container attributes { - uses Conf5QIs3gpp:FiveQICharacteristicsGrp; + description "This IOC specifies the dynamically assigned 5QIs + including their QoS characteristics, see 3GPP TS 23.501. + The instance of this IOC shall not be created or modified by the + MnS consumer except for the instance associated to + PCFFunction MOI or SMFFunction MOI when the PCF is not deployed."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses Conf5QIs3gpp:FiveQICharacteristicsGrp; } } } @@ -40,6 +45,7 @@ module _3gpp-5gc-nrm-dynamic5qiset { container attributes { uses Dynamic5QISetGrp; } + uses Conf5QIs3gpp:FiveQICharacteristicsSubtree; } } diff --git a/yang-models/_3gpp-common-filemanagement.yang b/yang-models/_3gpp-common-filemanagement.yang index 39dc1093f..b2c76e85e 100644 --- a/yang-models/_3gpp-common-filemanagement.yang +++ b/yang-models/_3gpp-common-filemanagement.yang @@ -59,9 +59,9 @@ module _3gpp-common-filemanagement { leaf cancelJob { description "Setting this attribute to TRUE cancels the file download job. - As specified in the definition of ProcessMonitor, cancellation is possible in - the NOT_STARTED and RUNNING state. Setting the attribute to FALSE has no - observable result."; + As specified in the definition of ProcessMonitor, cancellation is + possible in the NOT_STARTED and RUNNING state. Setting the attribute + to FALSE has no observable result."; type boolean; mandatory true; } @@ -92,4 +92,4 @@ module _3gpp-common-filemanagement { augment "/me3gpp:ManagedElement" { uses FileDownloadJobSubtree; } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang index 33acde382..066b356aa 100755 --- a/yang-models/_3gpp-common-managed-element.yang +++ b/yang-models/_3gpp-common-managed-element.yang @@ -9,7 +9,8 @@ module _3gpp-common-managed-element { import _3gpp-common-subscription-control { prefix subscr3gpp; } import _3gpp-common-fm { prefix fm3gpp; } import _3gpp-common-trace { prefix trace3gpp; } - + import _3gpp-5gc-nrm-configurable5qiset { prefix conf5QIs3gpp; } + organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -28,6 +29,7 @@ module _3gpp-common-managed-element { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2022-07-26 { reference CR-0180 ; } revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-08-03 { reference "CR-0095"; } @@ -37,6 +39,10 @@ module _3gpp-common-managed-element { revision 2019-06-17 { reference " S5-203316"; } revision 2019-05-08 { reference "Initial revision"; } + feature Configurable5qisetUnderManagedElement { + description "The Configurable5qiset shall be contained under ManagedElement"; + } + feature MeasurementsUnderManagedElement { description "The MeasurementSubtree shall be contained under ManagedElement"; @@ -244,5 +250,8 @@ module _3gpp-common-managed-element { if-feature TraceUnderManagedElement; } + uses conf5QIs3gpp:Configurable5QISetSubtree { + if-feature Configurable5qisetUnderManagedElement; + } } } \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang index 57d745917..a2bca7e83 100755 --- a/yang-models/_3gpp-common-managed-function.yang +++ b/yang-models/_3gpp-common-managed-function.yang @@ -322,4 +322,4 @@ module _3gpp-common-managed-function { if-feature TraceUnderManagedFunction ; } } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index df01996aa..e4336a99e 100755 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -17,9 +17,8 @@ module _3gpp-common-mnsregistry { revision 2021-10-18 { reference "S5-215263"; } revision 2021-08-29 { reference "Initial revision, S5-214388"; } - grouping MNSInfoGrp { - description "Represents the MNSInfo IOC."; - reference "3GPP TS 28.622"; + grouping MnsInfoGrp { + description "Represents the MnsInfo IOC."; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; @@ -48,27 +47,47 @@ module _3gpp-common-mnsregistry { } leaf-list mnsScope { - description "List of the managed object instances that can be accessed using the MnS. If a complete SubNetwork can be accessed using the MnS, this attribute may contain the DN of the SubNetwork instead of the DNs of the individual managed entities within the SubNetwork."; + description "List of the managed object instances that can be accessed + using the MnS. If a complete SubNetwork can be accessed using the MnS, + this attribute may contain the DN of the SubNetwork instead of the + DNs of the individual managed entities within the SubNetwork."; min-elements 1; type types3gpp:DistinguishedName; } - } augment "/subnet3gpp:SubNetwork" { list MNSRegistry { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.622"; + description "Represents the MNSRegistry IOC. + The IOC is instantiated by the system."; uses top3gpp:Top_Grp; key id; max-elements 1; + list MNSInfo { - description "Represents the MNSInfo IOC."; - reference "3GPP TS 28.622"; + description "This IOC represents an available Management Service (MnS) + and provides the data required to support its discovery. + It is name-contained by MnsRegistry. + + This information is used by the consumer to discover the producers + of specific Management Services and to derive the addresses of the + Management Service. + + Attributes mnsLabel, mnsType, and mnsVersion are used to describe + the Management Service. + + Attribute mnsAddress is used to provide addressing information for + the Management Service operations. + + Attribute mnsScope is used to provide information about the + management scope of the Management Service. The management scope is + defined as the set of managed object instances that can be accessed + using the Management Service."; + uses top3gpp:Top_Grp; key "mnsType mnsVersion mnsAddress"; - uses MNSInfoGrp; - } + uses MnsInfoGrp; } } } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang index 53739e61c..777936f24 100755 --- a/yang-models/_3gpp-common-subnetwork.yang +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -10,7 +10,8 @@ module _3gpp-common-subnetwork { import _3gpp-common-fm { prefix fm3gpp; } import _3gpp-common-trace { prefix trace3gpp; } import ietf-yang-schema-mount { prefix yangmnt; } - + import _3gpp-5gc-nrm-configurable5qiset { prefix conf5QIs3gpp; } + organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -28,6 +29,7 @@ module _3gpp-common-subnetwork { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2022-07-26 { reference CR-0180 ; } revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-06-08 { reference "CR-0092"; } @@ -49,6 +51,10 @@ module _3gpp-common-subnetwork { reference "Initial revision"; } + feature Configurable5qisetUnderSubNetwork { + description "The Configurable5qiset shall be contained under SubNetwork"; + } + feature ExternalsUnderSubNetwork { description "Classes representing external entities like EUtranFrequency, ExternalGNBCUCPFunction, ExternalENBFunction @@ -203,6 +209,10 @@ module _3gpp-common-subnetwork { uses trace3gpp:TraceSubtree { if-feature TraceUnderSubNetwork; } + + uses conf5QIs3gpp:Configurable5QISetSubtree { + if-feature Configurable5qisetUnderSubNetwork; + } yangmnt:mount-point children-of-SubNetwork { description "Mountpoint for ManagedElement"; diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index 8051893e7..f112b8034 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -541,7 +541,8 @@ module _3gpp-common-trace { } leaf tjTriggeringEvent { - when '../tjJobType = "TRACE_ONLY" or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when '../tjJobType = "TRACE_ONLY" or ' + + '../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type string ; mandatory true; description "Specifies the triggering event parameter of the trace session. @@ -750,7 +751,8 @@ module _3gpp-common-trace { } leaf tjMDTLoggingDuration { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + when '../tjJobType = "LOGGED_MDT_ONLY" or' + + ' ../tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "600|1200|2400|3600|5400|7200"; } @@ -764,7 +766,8 @@ module _3gpp-common-trace { } leaf tjMDTLoggingInterval { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + when '../tjJobType = "LOGGED_MDT_ONLY" or' + + ' ../tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "1280|2560|5120|10240|20480|" +"30720|40960|61440"; @@ -778,7 +781,8 @@ module _3gpp-common-trace { } leaf tjMDTLoggingEventThreshold { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + when '../tjJobType = "LOGGED_MDT_ONLY" or' + + ' ../tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "0..127"; } @@ -792,7 +796,8 @@ module _3gpp-common-trace { } leaf tjMDTLoggedHysteresis { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + when '../tjJobType = "LOGGED_MDT_ONLY" or ' + + '../tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "0..30"; } @@ -806,7 +811,8 @@ module _3gpp-common-trace { } leaf tjMDTLoggedTimeToTrigger { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + when '../tjJobType = "LOGGED_MDT_ONLY" or ' + + '../tjJobType = "LOGGED_MBSFN_MDT"'; type int32 ; description "It specifies the threshold which should trigger the reporting in case of event based reporting of logged NR MDT. @@ -992,7 +998,8 @@ module _3gpp-common-trace { } leaf tjMDTTraceCollectionEntityID { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + when '../tjJobType = "LOGGED_MDT_ONLY" or ' + + '../tjJobType = "LOGGED_MBSFN_MDT"'; type uint8; mandatory true; description "It specifies the TCE Id which is sent to the UE in @@ -1117,4 +1124,4 @@ module _3gpp-common-trace { } } } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 18084a2eb..0986cdefc 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -13,8 +13,10 @@ module _3gpp-common-yang-types { network slicing."; reference "3GPP TS 28.623"; + revision 2022-07-26 { reference CR-0180 ; } revision 2022-02-09 { reference "CR-0144"; } revision 2021-11-01 { reference "CR-0141"; } + revision 2021-09-30 { description "Added Longitude, Latitude, TenthOfDegrees, OnOff."; reference "CR-0138"; @@ -68,7 +70,7 @@ module _3gpp-common-yang-types { The progress of the process is described by the 'status' and 'progressPercentage' attributes. Additional textual qualifications for - the 'status' attribute may be provided by the 'progessStateInfo' and + the 'status' attribute may be provided by the 'progressStateInfo' and 'resultStateInfo' attributes. When the process is instantiated, the 'status' is set to 'NOT_RUNNING' @@ -80,7 +82,7 @@ module _3gpp-common-yang-types { During the 'RUNNING' state the 'progressPercentage' attribute may be repeatedly updated. The exact semantic of this attribute is subject to - further specialisation. The 'progessInfo' attribute may be used to + further specialisation. The 'progressInfo' attribute may be used to provide additional textual information in the 'NOT_RUNNING', 'CANCELLING' and 'RUNNING' states. Further specialisation of 'progressStateInfo' may be provided where this data type is @@ -428,6 +430,24 @@ module _3gpp-common-yang-types { } } + typedef BasicAdministrativeState { + reference "3GPP TS 28.625 and ITU-T X.731"; + type enumeration { + enum LOCKED { + value 0; + description "The resource is administratively prohibited from performing + services for its users."; + } + + enum UNLOCKED { + value 1; + description "The resource is administratively permitted to perform + services for its users. This is independent of its inherent + operability."; + } + } + } + typedef AdministrativeState { reference "3GPP TS 28.625 and ITU-T X.731"; type enumeration { diff --git a/yang-models/_3gpp-nr-nrm-dlbofunction.yang b/yang-models/_3gpp-nr-nrm-dlbofunction.yang index a9915f7f3..d532fe037 100644 --- a/yang-models/_3gpp-nr-nrm-dlbofunction.yang +++ b/yang-models/_3gpp-nr-nrm-dlbofunction.yang @@ -16,7 +16,7 @@ module _3gpp-nr-nrm-dlbofunction { Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2022-03-25 { reference "CR-XXXX"; } + revision 2022-03-25 { reference "CR-0683"; } revision 2021-10-22 { reference "CR-0577"; } feature DLBOUnderGNBCUCPFunction { @@ -49,6 +49,7 @@ module _3gpp-nr-nrm-dlbofunction { type int32 { range "-20..20"; } units "0.5 dB"; } + leaf maximumDeviationHoTriggerHigh { description "This parameter defines the maximum allowed upper deviation of the Handover Trigger, from the default point of @@ -97,4 +98,4 @@ module _3gpp-nr-nrm-dlbofunction { if-feature DLBOUnderSubNetwork; uses DLBOFunctionSubtree; } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dmrofunction.yang b/yang-models/_3gpp-nr-nrm-dmrofunction.yang index f56ee7012..4a065cdf9 100755 --- a/yang-models/_3gpp-nr-nrm-dmrofunction.yang +++ b/yang-models/_3gpp-nr-nrm-dmrofunction.yang @@ -98,4 +98,4 @@ module _3gpp-nr-nrm-dmrofunction { if-feature subnet3gpp:DMROFunction; uses DMROFunctionSubtree; } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 4c4cee4d6..ccfc57f6c 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -7,7 +7,6 @@ module _3gpp-nr-nrm-gnbcucpfunction { import _3gpp-common-managed-function { prefix mf3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -15,6 +14,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2021-11-06 { reference "CR-0611" ; } revision 2021-11-05 { reference "CR-0609"; } revision 2020-10-02 { reference CR-0384 ; } @@ -25,9 +25,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { revision 2020-04-28 { reference "0260"; } revision 2020-02-14 { reference S5-20XXXX ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } + revision 2019-06-17 { reference "Initial revision"; } feature DESManagementFunction { description "Classs representing Distributed SON Energy Saving feature"; @@ -46,7 +44,6 @@ module _3gpp-nr-nrm-gnbcucpfunction { description "Represents the GNBCUCPFunction IOC."; reference "3GPP TS 28.541"; uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; leaf gNBId { description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) @@ -102,24 +99,29 @@ module _3gpp-nr-nrm-gnbcucpfunction { leaf-list xnHOBlackList { 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)."; + description "DN of the Configurable5QISet that the GNBCUCPFunction + supports (is associated to)."; } leaf-list x2HOBlackList { type string; description "List of nodes to which handovers over X2 are prohibited."; } + leaf dynamic5QISetRef { type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the GNBCUCPFunction supports (is associated to)."; + description "DN of the Dynamic5QISet that the GNBCUCPFunction supports + (is associated to)."; } leaf dCHOControl { type boolean; - description "This attribute determines whether the CHO function is enabled or disabled."; + description "This attribute determines whether the CHO function is + enabled or disabled."; } leaf dDAPSHOControl { diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang index 944da20a7..973689b39 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang @@ -7,7 +7,6 @@ module _3gpp-nr-nrm-gnbcuupfunction { import _3gpp-common-managed-function { prefix mf3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3GPP SA5"; @@ -16,6 +15,7 @@ module _3gpp-nr-nrm-gnbcuupfunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2020-11-05 { reference CR-0412 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-08-03 { reference "CR-0321"; } @@ -98,7 +98,6 @@ module _3gpp-nr-nrm-gnbcuupfunction { description "Represents the GNBCUUPFunction IOC."; reference "3GPP TS 28.541"; uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; leaf gNBCUUPId { type uint64 { diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang index c52250c6d..1428af023 100755 --- a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang @@ -6,7 +6,6 @@ module _3gpp-nr-nrm-gnbdufunction { import _3gpp-common-managed-function { prefix mf3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } import _3gpp-common-yang-types { prefix types3gpp; } organization "3GPP SA5"; @@ -15,6 +14,7 @@ module _3gpp-nr-nrm-gnbdufunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2021-10-28 { reference CR-0607 ; } revision 2021-04-30 { reference CR-0490 ; } revision 2020-10-02 { reference CR-0384 ; } @@ -132,7 +132,6 @@ module _3gpp-nr-nrm-gnbdufunction { description "Represents the GNBDUFunction IOC."; reference "3GPP TS 28.541"; uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; leaf gNBId { type int64 { range "0..4294967295"; } diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang index 0cb6dce0c..48c399e32 100755 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -8,17 +8,16 @@ module _3gpp-nr-nrm-nrcelldu { import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import ietf-yang-types { prefix yang; } - organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the NRCellDU Information Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2021-10-28 { reference CR-0607 ; } revision 2021-01-25 { reference CR-0454 ; } revision 2020-11-25 { reference CR-0386 ; } @@ -82,7 +81,6 @@ module _3gpp-nr-nrm-nrcelldu { description "Represents the NRCellDU IOC."; reference "3GPP TS 28.541"; uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; leaf cellLocalId { description "Identifies an NR cell of a gNB. Together with the diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang index cfe977059..e968dc14e 100755 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -1,10 +1,16 @@ module _3gpp-nr-nrm-rrmpolicy { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-rrmpolicy"; - prefix "nrrrmpolicy3gpp"; + prefix "rrmpolicy3gpp"; import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp ; } + import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp ; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp ; } + import _3gpp-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp ; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp ; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -12,6 +18,7 @@ module _3gpp-nr-nrm-rrmpolicy { is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2020-11-05 { reference CR-0412 ; } revision 2020-04-28 { reference "CR0285"; } revision 2020-02-14 { reference "Initial revision"; } @@ -26,13 +33,6 @@ module _3gpp-nr-nrm-rrmpolicy { uses types5g3gpp:PLMNInfo; } - typedef CyclicPrefix { - type enumeration { - enum NORMAL; - enum EXTENDED; - } - } - grouping RRMPolicy_Grp { description "This IOC represents the properties of an abstract RRMPolicy . The RRMPolicy_ IOC needs to be subclassed to be instantiated. @@ -71,13 +71,11 @@ module _3gpp-nr-nrm-rrmpolicy { } } // grouping - grouping RRMPolicyRatioGrp { description "Represents the RRMPolicyRatio concrete IOC."; uses RRMPolicy_Grp; // Inherits RRMPolicy_ - leaf rRMPolicyMaxRatio { description " This attribute specifies the maximum percentage of radio resource that can be used by the associated rRMPolicyMemberList. @@ -113,16 +111,89 @@ module _3gpp-nr-nrm-rrmpolicy { } } - list RRMPolicyRatio { - description " The RRMPolicyRatio IOC is one realization of a RRMPolicy_ IOC, - see the inheritance in Figure 4.2.1.2-1. This RRM framework allows - adding new policies, both standardized (like RRMPolicyRatio) or as - vendor specific, by inheriting from the - abstract RRMPolicy_ IOC. For details see subclause 4.3.36."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses RRMPolicyRatioGrp; + grouping RrmPolicySubtree { + description "Contains RrmPolicy related classes. + Should be used in all classes (or classes inheriting from) + - NRCellCU, NRCellDU, GNBCUUPFunction, GNBCUCPFunction, GNBDUFunction + + If some YAM wants to augment these classes/list/groupings they must + augment all user classes!"; + + list RRMPolicyRatio { + description "This IOC represents the properties of RRMPolicyRatio. + RRMPolicyRatio is one realization of abstract RRMPolicy_ IOC. + RRMPolicyRatio has three attributes, apart from those inherited + (DN, resourceType, rRMPolicyMemberList). + + Structure of RRMPolicyRatio includes in order: Dedicated Resources, + Prioritized Resources, Shared Resources, etc. + + - The attribute rRMPolicyMaxRatio defines the maximum resource usage + quota for the associated rRMPolicyMemberList, including at least one of + shared resources, prioritized resources and dedicated resources. The + sum of the 'rRMPolicyMaxRatio' values assigned to all RRMPolicyRatio(s) + name-contained by same MangedEntity can be greater than 100. + - The attribute rRMPolicyMinRatio defines the minimum resource usage + quota for the associated RRMPolicyMemberList, including at least one + of prioritized resources and dedicated resources, which means the + resources quota that need to be guaranteed for use by the associated + rRMPolicyMemberList. The sum of the 'rRMPolicyMinRatio' values assigned + to all RRMPolicyRatio(s) name-contained by same MangedEntity shall be + less or equal 100. + - The attribute rRMPolicyDedicatedRatio defines the dedicated resource + usage quota for the RRMPolicyMemberList, including dedicated resources. + The sum of the 'rRMPolicyDedicatedRatio' values assigned to all + RRMPolicyRatio(s) name-contained by same MangedEntity shall be less + or equal 100. + + The following are the definition for above mentioned three resource + categories: + - Shared resources: means the resources that are shared with other + rRMPolicyMemberList(s) (i.e. the rRMPolicyMemberList(s) defined in + RRMPolicyRatio(s) name-contained by the same ManagedEntity). The shared + resources are not guaranteed for use by the associated + rRMPolicyMemberList. The shared resources quota is represented by + [rRMPolicyMaxRatio-rRMPolicyMinRatio]. + - Priortized resources: means the resources are preferentially used by + the associated RRMPolicyMemberList. These resources are guaranteed for + use by the associated RRMPolicyMemberList when it needs to use them. + When not used, these resources may be used by other + rRMPolicyMemberList(s) (i.e. the rRMPolicyMemberList(s) defined in + RRMPolicyRatio(s) name-contained by the same ManagedEntity). + The prioritized resources quota is represented by + [rRMPolicyMinRatio-rRMPolicyDedicatedRatio] + - Dedicated resources: means the resources are dedicated for use by + the associated RRMPolicyMemberList. These resources can not be shared + even if the associated RRMPolicyMember does not use them. The Dedicated + resources quota is represented by [rRMPolicyDedicatedRatio]."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses RRMPolicyRatioGrp; + } } } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/" + + "nrcellcu3gpp:NRCellCU" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/" + + "nrcelldu3gpp:NRCellDU" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbcuup3gpp:GNBCUUPFunction" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + uses RrmPolicySubtree; + } + } \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-networkslice.yang b/yang-models/_3gpp-ns-nrm-networkslice.yang index f187bd1a9..a606c96e1 100755 --- a/yang-models/_3gpp-ns-nrm-networkslice.yang +++ b/yang-models/_3gpp-ns-nrm-networkslice.yang @@ -3,7 +3,6 @@ module _3gpp-ns-nrm-networkslice { namespace urn:3gpp:sa5:_3gpp-ns-nrm-networkslice; prefix ns3gpp; - import _3gpp-ns-nrm-networkslicesubnet { prefix nss3gpp; } import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } @@ -20,6 +19,7 @@ module _3gpp-ns-nrm-networkslice { Information model definitions for network slice NRM (chapter 6) "; + revision 2022-07-26 { reference CR-balazs145-r17-541-yang-corrections ; } revision 2020-06-02 { reference "CR-0485, CR-0508"; } @@ -30,15 +30,15 @@ module _3gpp-ns-nrm-networkslice { } grouping NetworkSliceGrp { - - uses subnet3gpp:SubNetworkGrp; // Inherits from SubNetwork - + description "Represents the NetworkSlice IOC"; + leaf operationalState { description "The operational state of the network slice instance. - It describes whether or not the resource is physically installed + It describes whether or not the resource is installed and working."; - config false; type types3gpp:OperationalState; + config false; + mandatory true; } leaf administrativeState { @@ -46,6 +46,7 @@ module _3gpp-ns-nrm-networkslice { It describes the permission to use or prohibition against using the instance, imposed through the OAM services."; type types3gpp:AdministrativeState; + default LOCKED; } list serviceProfileList { @@ -56,23 +57,25 @@ module _3gpp-ns-nrm-networkslice { } leaf networkSliceSubnetRef { - type leafref { - path /nss3gpp:NetworkSliceSubnet/nss3gpp:id; - } - description "The NetworkSliceSubnet that the NetworkSlice is - associated with."; + type types3gpp:DistinguishedName; + config false; + mandatory true; + description "DN of NetworkSliceSubnet relating to the + NetworkSlice instance"; } } - list NetworkSlice { - description "Represents the properties of a network slice instance in - a 5G network."; - key id; - - container attributes { - uses NetworkSliceGrp; + augment /subnet3gpp:SubNetwork { + list NetworkSlice { + description "Represents the properties of a network slice instance in + a 5G network."; + key id; + + container attributes { + uses NetworkSliceGrp; + } + + uses top3gpp:Top_Grp; } - - uses top3gpp:Top_Grp; } } \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 98daa9b54..42584f70d 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -6,9 +6,7 @@ module _3gpp-ns-nrm-networkslicesubnet { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } import _3gpp-common-top { prefix top3gpp; } - // import _3gpp-ns-nrm-common { prefix ns3cmn; } include _3gpp-ns-nrm-sliceprofile; @@ -23,6 +21,7 @@ module _3gpp-ns-nrm-networkslicesubnet { Information model definitions for network slice NRM (chapter 6) "; + revision 2022-07-26 { reference CR-balazs145-r17-541-yang-corrections ; } revision 2021-05-05 { description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; reference "CR-0485"; @@ -39,11 +38,6 @@ module _3gpp-ns-nrm-networkslicesubnet { 3GPP TS 28.541 V15.X.XX"; } - feature MeasurementsUnderNetworkSliceSubnet { - description "The MeasurementSubtree shall be contained under - NetworkSliceSubnet."; - } - typedef ETSI-GS-NFV-Identifier { type string; reference "ETSI GS NFV-IFA 013"; @@ -114,13 +108,10 @@ module _3gpp-ns-nrm-networkslicesubnet { } grouping NetworkSliceSubnetGrp { - - uses subnet3gpp:SubNetworkGrp; - uses EPTransportGrp; - + description "Represents the NetworkSliceSubnet IOC."; leaf operationalState { - description "The operational state of the network slice instance. - It describes whether or not the resource is physically installed + description "The operational state of the resouce. + It describes whether or not the resource is installed and working."; mandatory true; config false; @@ -131,7 +122,7 @@ module _3gpp-ns-nrm-networkslicesubnet { description "The administrative state of the network slice instance. It describes the permission to use or prohibition against using the instance, imposed through the OAM services."; - mandatory true; + default LOCKED; type types3gpp:AdministrativeState; } @@ -157,61 +148,80 @@ module _3gpp-ns-nrm-networkslicesubnet { uses SliceProfileGrp; } - list managedFunctionRef { - description "The managed functions that the NetworkSliceSubnet is - associated with."; - key aggregatedManagedFunction; - leaf aggregatedManagedFunction { - type instance-identifier; + leaf priorityLabel { + type int32 ; + mandatory true ; + description "Specifies a label that consumer would assign a value on + an instance of network slice subnet. The management system takes + the value of this attribute into account. The effect of this + attribute value to the subject managed entity is not standardized"; + } + + leaf networkSliceSubnetType { + type enumeration { + enum TOP_SLICESUBNET; + enum RAN_SLICESUBNET; + enum CN_SLICESUBNET; } + mandatory true; + description "Indicates the type of network slice subnet, including: + - Top network slice subnet + - RAN network slice subnet + - CN network slice subnet"; + } + + leaf-list managedFunctionRef { + type types3gpp:DistinguishedName; + config false; + description "This holds a list of DN of ManagedFunction instances + supporting the NetworkSliceSubnet instance."; } leaf-list networkSliceSubnetRef { - type leafref { - path /NetworkSliceSubnet/id; - } - description "Lists the NetworkSliceSubnet instances associated with - this NetworkSliceSubnet."; + type types3gpp:DistinguishedName; + config false; + description "List of DNs of constituent NetworkSliceSubnet supporting + NetworkSliceSubnet instance ."; + } + + leaf-list epTransportRef { + type types3gpp:DistinguishedName; + description "List of transport level EPs associated with the + application level EP (i.e. EP_N3 or EP_NgU) or network slice subnet."; } } - list NetworkSliceSubnet { - description "Represents the properties of a network slice subnet - instance in a 5G network."; - key id; - - container attributes { - - uses NetworkSliceSubnetGrp; - - leaf-list parents { - description "Reference to direct parent NetworkSliceSubnet - instances. - If NetworkSliceSubnets form a containment hierarchy this is - modeled using references between the child NetworkSliceSubnet - and the parent NetworkSliceSubnet. - This reference MUST NOT be present for the top level - NetworkSliceSubnet and MUST be present for other - NetworkSliceSubnets."; - type leafref { - path "/NetworkSliceSubnet/id"; - } - } - - leaf-list containedChildren { - description "Reference to all directly contained NetworkSliceSubnet - instances. If NetworkSliceSubnets form a containment hierarchy - this is modeled using references between the child - NetworkSliceSubnet and the parent NetworkSliceSubnet."; - type leafref { - path "/NetworkSliceSubnet/id"; - } + augment /subnet3gpp:SubNetwork { + list NetworkSliceSubnet { + description "Represents the properties of a network slice subnet + instance in a 5G network. + + The NetworkSliceSubnet can be categorized by following types: + - RANSliceSubne represent the RAN network slice subnet in a 5G network, + which is associated to one or multiple 'RANSliceSubnetProfile'. + - CNSliceSubnet represent the CN network slice subnet in a 5G network, + which is associated to one or multiple 'CNSliceSubnetProfile'. + - TopSliceSubnet represent the top network slice subnet in a 5G network, + which is associated to one or multiple 'TopSliceSubnetProfile'. + + The attribute epTransportRef is used to specify a list of EP_Transport + instance as transport resources to be aggregated to a NetworkSliceSubnet + instance. The MnS consumer determines the EP_Transport instance(s) to + support EP_Application instances as part of the NetworkSliceSubnet + instance and request the MnS producer to configure the attribute + epTransportRef of the NetworkSliceSubnet. + + The EP_Transport is name contained by SubNetwork, and an EP_Transport + instance can be a new instance created for the EP_Application instances + as part of NetworkSliceSubnet instance or an existing instance reused + for EP_Application instance."; + key id; + + container attributes { + uses NetworkSliceSubnetGrp; } - } - - uses top3gpp:Top_Grp; - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderNetworkSliceSubnet; - } + + uses top3gpp:Top_Grp; + } } } \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang index c1441d45a..1e3217278 100755 --- a/yang-models/_3gpp-ns-nrm-sliceprofile.yang +++ b/yang-models/_3gpp-ns-nrm-sliceprofile.yang @@ -1049,4 +1049,4 @@ submodule _3gpp-ns-nrm-sliceprofile { uses TopSliceSubnetProfileGrp; } } -} +} \ No newline at end of file -- GitLab