diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang index 4227463e99347c4444f687c7b7a6eebcb3fb240a..8eb695cbd69bdae70d8d711404f477f85ec689d6 100755 --- a/yang-models/_3gpp-5g-common-yang-types.yang +++ b/yang-models/_3gpp-5g-common-yang-types.yang @@ -2,21 +2,53 @@ module _3gpp-5g-common-yang-types { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types"; prefix "types5g3gpp"; - - + import _3gpp-common-yang-types { prefix types3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "The model defines common types for 5G networks and network slicing."; reference "3GPP TS 28.541"; - revision 2019-10-20 { - description "Initial version."; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } + revision 2020-11-05 { reference CR-0411 ; } + revision 2019-10-20 { reference "Initial version."; } + grouping SNssai { + description + "Single Network Slice Selection Assistance Information(S-NSSAI)"; + reference "3GPP TS 23.003"; + + leaf sd { + description "Slice Differentiator + If not needed, the value can be set to FFFFFF."; + type string{ + length 6; + pattern '[a-fA-F0-9]*'; + } + reference "3GPP TS 23.003"; + } + + leaf sst { + type uint8; + description "Slice/Service Type. + Values 0 to 127 belong to standardized SST range and are defined in + 3GPP TS 23.501. Values 128 to 255 belong to operator-specific range."; + } + } + + grouping PLMNInfo { + description "The PLMNInfo data type define a S-NSSAI member in a specific + PLMNId, and it have two attributes PLMNId and S-NSSAI (PLMNId, S-NSSAI). + The PLMNId represents a data type that is comprised of mcc + (mobile country code) and mnc (mobile network code), (See TS 23.003 + subclause 2.2 and 12.1) and S-NSSAI represents an data type, that is + comprised of an SST (Slice/Service type) and an optional + SD (Slice Differentiator) field"; + uses types3gpp:PLMNId; + uses SNssai; + } + typedef CommModelType { reference "3GPP TS 23501"; type enumeration { @@ -27,12 +59,14 @@ module _3gpp-5g-common-yang-types { enum DIRECT_COMMUNICATION_WITH_NRF { value 1; - description "Directly communicate to other NF service discovered by NRF."; + description "Directly communicate to other NF service discovered + by NRF."; } - + enum INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY { value 2; - description "Communicate to pre-configured other NF service through SCP as a proxy."; + description "Communicate to pre-configured other NF service through + SCP as a proxy."; } enum INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY { @@ -48,14 +82,13 @@ module _3gpp-5g-common-yang-types { type uint16; } leaf commModelType { - type CommModelType; + type CommModelType; } - leaf-list targetNFServiceList { - - type types3gpp:DistinguishedName; + leaf-list targetNFServiceList { + type types3gpp:DistinguishedName; } leaf commModelConfiguration { - type string; + type string; } } @@ -64,7 +97,7 @@ module _3gpp-5g-common-yang-types { type string; } leaf policy { - type string; + type string; } } diff --git a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang index 491226a18c978110b75f07a048743812bbc9ff6b..6ed22c55eda156f0e5bdabc4be6027ca2a2348f5 100755 --- a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang +++ b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang @@ -2,11 +2,11 @@ module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { yang-version 1.1; namespace urn:3gpp:sa5:_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl; - prefix gtpUPathQMCtrl3gpp; + prefix gupqmc3gpp; import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } import _3gpp-common-top { prefix top3gpp; } organization "3gpp SA5"; @@ -15,10 +15,16 @@ module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { of GTP-U path QoS monitoring defined in 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2021-01-25 { reference CR-0453; } + revision 2020-11-05 { reference CR-0411 ; } + revision 2020-09-30 { reference "CR-0377"; } revision 2020-08-03 { reference "CR-0321"; } revision 2020-04-10 { reference "S5-202103"; } grouping GtpUPathDelayThresholdsType { + description "Thresholds for reporting the packet delay for GTP-U path QoS + monitoring "; + reference "3GPP TS 29.244"; leaf n3AveragePacketDelayThreshold { mandatory true; type uint32; @@ -57,11 +63,12 @@ module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { } } - leaf-list gtpUPathMonitoredSNSSAIs { + list gtpUPathMonitoredSNSSAIs { + key "sd sst"; description "The S-NSSAIs for which the the GTP-U path QoS monitoring is to be performed."; reference "3GPP TS 23.003"; - type types3gpp:SNssai; + uses types5g3gpp:SNssai; } leaf-list monitoredDSCPs { @@ -116,7 +123,7 @@ module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { description "It specifies the period (in seconds) for reporting the packet delay for GTP-U path QoS monitoring."; type uint32; - } + } } augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { diff --git a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang index 0d814b663993694b106fbe8413603565ba4d1415..8ffbc937e59e25e507059d17a286517d5dcfe22e 100755 --- a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang +++ b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang @@ -5,20 +5,23 @@ module _3gpp-5gc-nrm-QFQoSMonitoringControl { prefix qFQMCtrl3gpp; import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the capabilities and properties for control - of QoS monitoring per QoS flow per UE for URLLC service defined - in 3GPP TS 23.501."; + of QoS monitoring per QoS flow per UE for URLLC service defined + in 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2020-08-03 { reference "CR-0321"; } revision 2020-04-10 { reference "S5-202101"; } grouping QFPacketDelayThresholdsTypeGrp { + description "Represents the QFPacketDelayThresholdsType"; leaf thresholdDl { type uint32; units milliseconds; @@ -51,11 +54,12 @@ module _3gpp-5gc-nrm-QFQoSMonitoringControl { } } - leaf-list qFMonitoredSNSSAIs { + list qFMonitoredSNSSAIs { description "The S-NSSAIs for which the QoS monitoring per QoS flow per UE is to be performed."; reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } leaf-list qFMonitored5QIs { @@ -110,9 +114,10 @@ module _3gpp-5gc-nrm-QFQoSMonitoringControl { } leaf qFMeasurementPeriod { - description "It specifies the period (in seconds) for reporting the packet delay for QoS monitoring per QoS flow per UE."; + description "It specifies the period (in seconds) for reporting the + packet delay for QoS monitoring per QoS flow per UE."; type uint32; - } + } } augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang index 46eb9fbfa18071823fe5932840afbf2b3aa73d4c..6f3f8a2ea9f82be3e7c895702d9e3437437ff03e 100755 --- a/yang-models/_3gpp-5gc-nrm-amffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-amffunction.yang @@ -10,58 +10,64 @@ module _3gpp-5gc-nrm-amffunction { import ietf-inet-types { prefix inet; } import _3gpp-common-top { prefix top3gpp; } + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "AMFFunction derived from basic ManagedFunction."; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-25 { reference "S5-194457 S5-193518"; } - - revision 2019-05-31 { - description "Ericsson refactoring."; - } - - revision 2018-08-07 { - description "Initial revision"; - } + revision 2019-05-31 { reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision"; } grouping AMFFunctionGrp { + description "Represents the AMFFunction IOC"; uses mf3gpp:ManagedFunctionGrp; list pLMNIdList { min-elements 1; - description "A list of PLMN identifiers (Mobile Country Code and Mobile Network Code)."; + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; key "mcc mnc"; uses types3gpp:PLMNId; } container aMFIdentifier { presence true; - description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; + description "An AMF identifier, comprising an AMF Region ID, an + AMF Set ID and an AMF Pointer."; uses types3gpp:AmfIdentifier; } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the + service-based interface."; type inet:domain-name; } - leaf-list sNSSAIList { - min-elements 0; // conditionally mandatory if network slicing feature is supported + 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"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } list commModelList { min-elements 1; key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; uses types5g3gpp:CommModel; } diff --git a/yang-models/_3gpp-5gc-nrm-amfregion.yang b/yang-models/_3gpp-5gc-nrm-amfregion.yang index 5a42f2aa7a546dc93dd9ae66c8e6db39160cf432..db13bb102caa488e6211063f66a2c71231082723 100755 --- a/yang-models/_3gpp-5gc-nrm-amfregion.yang +++ b/yang-models/_3gpp-5gc-nrm-amfregion.yang @@ -7,20 +7,26 @@ module _3gpp-5gc-nrm-amfregion { import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-managed-function { prefix mf3gpp; } - - description "This IOC represents the AMF Region which consists one or multiple AMF Sets."; + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AMF Region which consists one or + multiple AMF Sets."; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } + revision 2019-06-11 { reference "Ericsson refactoring."; } grouping AMFRegionGrp { + description "Represents the AMFRegion IOC"; 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; @@ -37,14 +43,15 @@ module _3gpp-5gc-nrm-amfregion { type types3gpp:Tac; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //conditional support only if the network slicing feature is supported. reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } leaf aMFRegionId { diff --git a/yang-models/_3gpp-5gc-nrm-amfset.yang b/yang-models/_3gpp-5gc-nrm-amfset.yang index 325584cfaeccb7018c2fd303970a26154687bdd3..a1419a6e514da1c49b6201fd5ce6df55b2eb9890 100755 --- a/yang-models/_3gpp-5gc-nrm-amfset.yang +++ b/yang-models/_3gpp-5gc-nrm-amfset.yang @@ -7,20 +7,25 @@ module _3gpp-5gc-nrm-amfset { import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - description "This IOC represents the AMF Set which consists of some AMFs that serve a given area and Network Slice."; + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AMF Set which consists of some AMFs + that serve a given area and Network Slice."; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } + revision 2019-06-11 { reference "Ericsson refactoring."; } grouping AMFSetGrp { + description "Represents the AMFSet IOC"; 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; @@ -30,21 +35,22 @@ module _3gpp-5gc-nrm-amfset { leaf-list nRTACList { description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; min-elements 1; config false; type types3gpp:Tac; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; //conditional support only if the network slicing feature is supported. reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } leaf aMFRegion { diff --git a/yang-models/_3gpp-5gc-nrm-ausffunction.yang b/yang-models/_3gpp-5gc-nrm-ausffunction.yang index 16c0b5e01b70665e9cadd6d4f6765ab8c11171e7..263f4dd05e154c3093aa458e5c84607bb83f8afd 100755 --- a/yang-models/_3gpp-5gc-nrm-ausffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-ausffunction.yang @@ -12,22 +12,25 @@ module _3gpp-5gc-nrm-ausffunction { import _3gpp-common-top { prefix top3gpp; } organization "3gpp SA5"; - description "This IOC represents the AUSF function in 5GC. For more information about the AUSF, see 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AUSF function in 5GC. For more + information about the AUSF, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-25 { reference "S5-194457 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } + revision 2019-05-22 {reference "initial revision"; } grouping AUSFFuntionGrp { + description "Represents the AUSFFuntion IOC"; 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; @@ -36,23 +39,26 @@ module _3gpp-5gc-nrm-ausffunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the + service-based interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } @@ -60,6 +66,9 @@ module _3gpp-5gc-nrm-ausffunction { list commModelList { min-elements 1; key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; uses types5g3gpp:CommModel; } } diff --git a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang index 3668cea21ee82bda9918122c4ee3911153b26ed3..078f306e46cde6ad876b5437ab2db22713c90a24 100755 --- a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang +++ b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang @@ -11,20 +11,24 @@ module _3gpp-5gc-nrm-dynamic5qiset { organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the dynamic 5QIs including their QoS characteristics."; + description "This IOC represents the dynamic 5QIs including their QoS + characteristics."; reference "3GPP TS 28.541"; + revision 2020-09-30 { reference "CR-0377"; } revision 2020-08-06 { reference "CR-0333"; } grouping Dynamic5QISetGrp { description "Represents the Dynamic5QISet IOC."; list dynamic5QIs { key "fiveQIValue"; + description "Represents the Dynamic5QISet IOC."; uses Conf5QIs3gpp:FiveQICharacteristics; } } grouping Dynamic5QISetSubtree { + description "Helps augmenting Dynamic5QISet into multiple places."; list Dynamic5QISet { description "Specifies the dynamic 5QIs including their QoS characteristics, see 3GPP TS 23.501."; diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang index f079e568f5f815d944108d68dbd4624f98ceb23f..830371f6a7cb716e89069566bc0656b9df9763a9 100755 --- a/yang-models/_3gpp-5gc-nrm-neffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-neffunction.yang @@ -7,41 +7,43 @@ module _3gpp-5gc-nrm-neffunction { import _3gpp-common-managed-function { prefix mf3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3gpp SA5"; - description "This IOC represents the NEF function in 5GC. For more information about the NEF, see 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NEF function in 5GC. For more + information about the NEF, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2019-10-20 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } + revision 2020-11-05 { reference CR-0411 ; } + revision 2019-10-20 { reference "initial revision"; } grouping NEFFunctionGrp { + description "Represents the NEFFunction IOC"; uses mf3gpp:ManagedFunctionGrp; leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the + service-based interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; - type types3gpp:SNssai; + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + key "sd sst"; + uses types5g3gpp:SNssai; } - + leaf-list capabilityList { description "List of supported capabilities of the NEF."; reference "3GPP TS 23.003"; type string; } - + leaf isINEF { type boolean; } diff --git a/yang-models/_3gpp-5gc-nrm-nfservice.yang b/yang-models/_3gpp-5gc-nrm-nfservice.yang index 8685e8e8eff88c4f441aa8bea44265835616d70a..7b905b1afcfd533b204b3ffaa969a8c676ec6031 100755 --- a/yang-models/_3gpp-5gc-nrm-nfservice.yang +++ b/yang-models/_3gpp-5gc-nrm-nfservice.yang @@ -7,18 +7,21 @@ module _3gpp-5gc-nrm-nfservice { import _3gpp-common-yang-types { prefix types3gpp; } import ietf-yang-types { prefix yang; } import ietf-inet-types { prefix inet; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "NF service class."; reference "3GPP TS 29.510"; - revision 2019-06-17 { - description "initial revision"; - } + revision 2020-11-05 { reference CR-0411 ; } + revision 2019-06-17 { reference "initial revision"; } grouping NFServiceGrp { + description "Represents the NFService IOC"; leaf serviceInstanceID { - description "Unique ID of the service instance within a given NF Instance."; + description + "Unique ID of the service instance within a given NF Instance."; mandatory true; type string; } @@ -30,7 +33,8 @@ module _3gpp-5gc-nrm-nfservice { } list versions { //check in review if key is ok (unique) - description "API versions supported by the NF Service and if available, the corresponding retirement date of the NF Service."; + description "API versions supported by the NF Service and if available, + the corresponding retirement date of the NF Service."; min-elements 1; key "apiVersionInUri apiFullVersion"; uses NFServiceVersion; @@ -55,15 +59,16 @@ module _3gpp-5gc-nrm-nfservice { } leaf interPlmnFqdn { - description "If the NF service needs to be discoverable by other NFs in a different PLMN, - then an FQDN that is used for inter PLMN routing."; + description "If the NF service needs to be discoverable by other NFs in a + different PLMN, then an FQDN that is used for inter PLMN routing."; //optional support type inet:domain-name; } list ipEndPoints { - description "IP address(es) and port information of the Network Function (including IPv4 and/or IPv6 address) - where the service is listening for incoming service requests."; + description "IP address(es) and port information of the Network Function + (including IPv4 and/or IPv6 address) where the service is listening + for incoming service requests."; //optional support key idx; @@ -75,7 +80,8 @@ module _3gpp-5gc-nrm-nfservice { } leaf apiPrefix { - description "Optional path segment(s) used to construct the {apiRoot} variable of the different API URIs."; + description "Optional path segment(s) used to construct the {apiRoot} + variable of the different API URIs."; //optional support type string; } @@ -90,7 +96,8 @@ module _3gpp-5gc-nrm-nfservice { list allowedPlmns { description "PLMNs allowed to access the service instance. - The absence of this attribute indicates that any PLMN is allowed to access the service instance."; + The absence of this attribute indicates that any PLMN is allowed to + access the service instance."; min-elements 1; //optional support @@ -100,7 +107,8 @@ module _3gpp-5gc-nrm-nfservice { leaf-list allowedNfTypes { description "Type of the NFs allowed to access the service instance. - The absence of this attribute indicates that any NF type is allowed to access the service instance."; + The absence of this attribute indicates that any NF type is allowed + to access the service instance."; min-elements 1; //optional support @@ -108,35 +116,40 @@ module _3gpp-5gc-nrm-nfservice { } leaf-list allowedNfDomains { - description "Pattern representing the NF domain names allowed to access the service instance."; + description "Pattern representing the NF domain names allowed to + access the service instance."; //optional support min-elements 1; type string; } - leaf-list allowedNssais { + list allowedNssais { description "S-NSSAI of the allowed slices to access the service instance. - The absence of this attribute indicates that any slice is allowed to access the service instance."; + The absence of this attribute indicates that any slice is allowed to + access the service instance."; min-elements 1; //optional support - type types3gpp:SNssai; - } + key "sd sst"; + uses types5g3gpp:SNssai; } leaf priority { - description "Priority (relative to other services of the same type) in the range of 0-65535, - to be used for NF Service selection; lower values indicate a higher priority."; + description "Priority (relative to other services of the same type) + in the range of 0-65535, to be used for NF Service selection; lower + values indicate a higher priority."; //optional support type uint16; } leaf capacity { - description "Static capacity information in the range of 0-65535, expressed as a weight relative to other services of the same type."; + description "Static capacity information in the range of 0-65535, + expressed as a weight relative to other services of the same type."; //optional support type uint16; } leaf load { - description "Dynamic load information, ranged from 0 to 100, indicates the current load percentage of the NF Service."; + description "Dynamic load information, ranged from 0 to 100, + indicates the current load percentage of the NF Service."; //optional support type types3gpp:Load; } @@ -272,13 +285,15 @@ module _3gpp-5gc-nrm-nfservice { grouping ChfServiceInfo { leaf primaryChfServiceInstance { - description "Shall be present if the CHF service instance serves as a secondary CHF instance of another primary CHF service instance."; + description "Shall be present if the CHF service instance serves as a + secondary CHF instance of another primary CHF service instance."; //conditional to support type string; } leaf secondaryChfServiceInstance { - description "Shall be present if the CHF service instance serves as a primary CHF instance of another secondary CHF service instance."; + description "Shall be present if the CHF service instance serves as a + primary CHF instance of another secondary CHF service instance."; //conditional to support type string; } diff --git a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang index 8f1ce2fb05e840809536bd7665d44e34a5cb3e3d..53755ba17771126e318d647d27826d49ce449911 100755 --- a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang @@ -11,23 +11,24 @@ module _3gpp-5gc-nrm-ngeirfunction { import _3gpp-common-top { prefix top3gpp; } organization "3gpp SA5"; - description "This IOC represents the 5G-EIR function in 5GC. For more information about the 5G-EIR, see 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the 5G-EIR function in 5GC. For more + information about the 5G-EIR, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-15 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } + revision 2019-05-15 {reference "initial revision"; } grouping NGEIRFunctionGrp { + description "Represents the NGEIRFunction IOC"; 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; @@ -35,25 +36,30 @@ module _3gpp-5gc-nrm-ngeirfunction { uses types3gpp:PLMNId; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } list commModelList { min-elements 1; key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; uses types5g3gpp:CommModel; } } diff --git a/yang-models/_3gpp-5gc-nrm-nrffunction.yang b/yang-models/_3gpp-5gc-nrm-nrffunction.yang index d9754bd457451e9844e60f64e67583665e36aeab..06e037f06d3f11d43ec09abac37497e901b2cf9d 100755 --- a/yang-models/_3gpp-5gc-nrm-nrffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nrffunction.yang @@ -10,22 +10,28 @@ module _3gpp-5gc-nrm-nrffunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the NRF function in 5GC. For more information about the NRF, see 3GPP TS 23.501 [2]."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2020-08-03 { reference "CR-0321"; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-05-15 { description "initial revision"; } + revision 2019-05-15 { reference "initial revision"; } grouping NRFFunctionGrp { + description "Represents the NRFFunction IOC"; 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; @@ -34,7 +40,8 @@ module _3gpp-5gc-nrm-nrffunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the service-based + interface."; type inet:domain-name; } @@ -47,14 +54,15 @@ module _3gpp-5gc-nrm-nrffunction { type string; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list nFProfileList { diff --git a/yang-models/_3gpp-5gc-nrm-nssffunction.yang b/yang-models/_3gpp-5gc-nrm-nssffunction.yang index 7d9407b0f84cd12aaea26d491fee30c6c5c63c52..fb63ef86192afb151775db27b8ed19e9494f94d8 100755 --- a/yang-models/_3gpp-5gc-nrm-nssffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nssffunction.yang @@ -9,17 +9,21 @@ module _3gpp-5gc-nrm-nssffunction { import ietf-inet-types { prefix inet; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the NSSF function in 5GC. For more information about the NSSF, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2020-08-03 { reference "CR-0321"; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - revision 2019-05-15 { description "initial revision"; } + revision 2019-05-15 { reference "initial revision"; } grouping NSSFFunctionGrp { + description "Represents the NSSFFunction IOC"; uses mf3gpp:ManagedFunctionGrp; list pLMNIdList { @@ -34,19 +38,21 @@ module _3gpp-5gc-nrm-nssffunction { uses types3gpp:PLMNId; } - leaf sBIFQDN { description "The FQDN of the registered NF instance in the service-based + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } leaf-list cNSIIdList { @@ -61,6 +67,7 @@ module _3gpp-5gc-nrm-nssffunction { list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } } diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang index 813b3bdeb0607129438fdd92543ea0c5044c7a2a..a6f3c61ce608d4deba14d620c74147b1c19e4fd4 100755 --- a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang @@ -12,23 +12,25 @@ module _3gpp-5gc-nrm-nwdaffunction { import _3gpp-common-top { prefix top3gpp; } organization "3gpp SA5"; - description "This IOC represents the NWDAF function in 5GC. For more information about the NWDAF, see 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NWDAF function in 5GC. For more + information about the NWDAF, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - revision 2019-05-15 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } + revision 2019-05-15 {reference "initial revision"; } grouping NWDAFFunctionGrp { + description "Represents the NWDAFFunction IOC"; 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; @@ -37,29 +39,35 @@ module _3gpp-5gc-nrm-nwdaffunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the service-based + interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } list commModelList { min-elements 1; key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; uses types5g3gpp:CommModel; } } diff --git a/yang-models/_3gpp-5gc-nrm-pcffunction.yang b/yang-models/_3gpp-5gc-nrm-pcffunction.yang index b9eaf0e0ae701918405b72d63c7fafd00f7ba0ad..de4d535cbb65455670bfe2107ac0e8a8443d9887 100755 --- a/yang-models/_3gpp-5gc-nrm-pcffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-pcffunction.yang @@ -12,25 +12,26 @@ module _3gpp-5gc-nrm-pcffunction { import _3gpp-common-top { prefix top3gpp; } organization "3gpp SA5"; - description "This IOC represents the PCF function in 5GC. For more information about the PCF, see 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the PCF function in 5GC. For more + information about the PCF, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2020-08-06 { reference "CR-0333"; } - - revision 2020-08-06 {reference "CR-0331"; } - - revision 2019-10-25 {reference "S5-194457 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } + revision 2020-08-06 { reference "CR-0331"; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + revision 2019-05-22 { reference "initial revision"; } grouping PCFFuntionGrp { + description "Represents the PCFFuntion IOC"; 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,37 +40,45 @@ module _3gpp-5gc-nrm-pcffunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the service-based + interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } list commModelList { min-elements 1; key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; uses types5g3gpp:CommModel; } leaf dynamic5QISetRef { type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the PCFFunction supports (is associated to)."; + description "DN of the Dynamic5QISet that the PCFFunction supports + (is associated to)."; } leaf configurable5QISetRef { type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the PCFFunction supports (is associated to)."; + description "DN of the Configurable5QISet that the PCFFunction supports + (is associated to)."; } } diff --git a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang index b8ea9c8003e314a56d91bca55f3c13600a7010e0..cb6e29c28218c1ac3d0cb17aa4ffc69f807abc90 100755 --- a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang +++ b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang @@ -2,7 +2,7 @@ module _3gpp-5gc-nrm-predefinedpccruleset { yang-version 1.1; namespace urn:3gpp:sa5:_3gpp-5gc-nrm-predefinedpccruleset; - prefix PredPccRules3gpp; + prefix PrePcRul3gpp; import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } @@ -12,22 +12,29 @@ module _3gpp-5gc-nrm-predefinedpccruleset { organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the predefined PCC rules, which are configured to SMF and referenced by PCF."; + description "This IOC represents the predefined PCC rules, which are + configured to SMF and referenced by PCF."; reference "3GPP TS 28.541"; + revision 2021-01-25 { reference "CR-0453"; } + revision 2020-09-30 { reference "CR-0377"; } revision 2020-08-21 { reference "CR-0330"; } grouping TscaiInputContainer { - description "It specifies the transports TSCAI input parameters for TSC traffic at the ingress interface of the DS-TT/UE for a PCC rule, see TS 29.512 [60]"; + description "It specifies the transports TSCAI input parameters for TSC + traffic at the ingress interface of the DS-TT/UE for a PCC rule."; + reference "3GPP TS 29.512"; leaf periodicity { type uint32; - mandatory false; - description "It identifies the time period between the start of two bursts in reference to the TSN GM, see TS 29.571 [61]."; + description "It identifies the time period between the start of two bursts + in reference to the TSN GM."; + reference "3GPPTS 29.571."; } leaf burstArrivalTime { type yang:date-and-time; - mandatory false; - description "It Indicates the arrival time (in date-time format) of the data burst in reference to the TSN GM, see TS 29.571 [61]."; + description "It Indicates the arrival time (in date-time format) of the + data burst in reference to the TSN GM."; + reference "3GPPTS 29.571."; } } @@ -40,21 +47,23 @@ module _3gpp-5gc-nrm-predefinedpccruleset { } leaf activationTime { type yang:date-and-time; - mandatory false; - description " It indicates the time (in date-time format) when the decision data shall be activated, see TS 29.512 [60] and TS 29.571 [61]."; + description " It indicates the time (in date-time format) when the + decision data shall be activated."; + reference "3GPPTS 29.512 and TS 29.571."; } leaf deactivationTime { type yang:date-and-time; - mandatory false; - description "It indicates the time (in date-time format) when the decision data shall be deactivated, see TS 29.512 [60] and TS 29.571 [81]."; + description "It indicates the time (in date-time format) when the decision + data shall be deactivatedTS 29.512 and TS 29.571."; } leaf accessType { type enumeration { enum 3GPP_ACCESS; enum NON_3GPP_ACCESS; } - mandatory false; - description "It provides the condition of access type of the UE when the session AMBR shall be enforced, see TS 29.512 [60]."; + description "It provides the condition of access type of the UE when the + session AMBR shall be enforced."; + reference "3GPPTS 29.512."; } leaf ratType { type enumeration { @@ -74,13 +83,14 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum UTRA; enum GERA; } - mandatory false; - description "It provides the condition of RAT type of the UE when the session AMBR shall be enforced, see TS 29.512 [60] and TS 29.571 [61]."; + description "It provides the condition of RAT type of the UE when the + session AMBR shall be enforced."; + reference "3GPPTS 29.512 and TS 29.571."; } } grouping SteeringMode { - description "It specifies the traffic distribution rule, see TS 29.512 [60]."; + description "It specifies the traffic distribution rule, see TS 29.512."; leaf steerModeValue { type enumeration { enum ACTIVE_STANDBY; @@ -89,52 +99,54 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum PRIORITY_BASED; } mandatory true; - description "It indicates the value of the steering mode, see TS 29.512 [60]."; + description "It indicates the value of the steering mode, see TS 29.512."; } leaf active { type enumeration { enum 3GPP_ACCESS; enum NON_3GPP_ACCESS; } - mandatory false; - description "It indicates the active access, see TS 29.571 [61]."; + description "It indicates the active access, see TS 29.571."; } leaf standby { type enumeration { enum 3GPP_ACCESS; enum NON_3GPP_ACCESS; } - mandatory false; - description "It indicates the Standby access, see TS 29.571 [61]."; + description "It indicates the Standby access, see TS 29.571."; } leaf threeGLoad { type uint8 { range 0..100; } - mandatory false; - description "It indicates the traffic load to steer to the 3GPP Access expressed in one percent."; + description "It indicates the traffic load to steer to the 3GPP Access + expressed in one percent."; } leaf prioAcc { type enumeration { enum 3GPP_ACCESS; enum NON_3GPP_ACCESS; } - mandatory false; - description "It indicates the high priority access, see TS 29.571 [61]."; + description "It indicates the high priority access."; + reference "3GPPTS 29.571."; } } grouping UpPathChgEvent { - description "It specifies the information about the AF subscriptions of the UP path change, see TS 29.512 [60]"; + description "It specifies the information about the AF subscriptions of the + UP path change."; + reference "TS 29.512"; leaf notificationUri { type string; mandatory true; - description "It provides notification address (Uri) of AF receiving the event notification."; + description "It provides notification address (Uri) of AF receiving the + event notification."; } leaf notifCorreId { type string; mandatory true; - description "It is used to set the value of Notification Correlation ID in the notification sent by the SMF, see TS 29.512 [60]."; + description "It is used to set the value of Notification Correlation ID in + the notification sent by the SMF, see TS 29.512."; } leaf dnaiChgType { type enumeration { @@ -143,13 +155,13 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum LATE; } mandatory true; - description "It indicates the type of DNAI change, see TS 29.512 [60]."; + description "It indicates the type of DNAI change, see TS 29.512."; } leaf afAckInd { type boolean; default false; - mandatory false; - description "It identifies whether the AF acknowledgement of UP path event notification is expected."; + description "It identifies whether the AF acknowledgement of UP path + event notification is expected."; } } @@ -157,27 +169,30 @@ module _3gpp-5gc-nrm-predefinedpccruleset { description "It specifies the traffic routing information."; leaf ipv4Addr { type string; - mandatory false; - description "It defines the Ipv4 address of the tunnel end point in the data network, formatted in the dotted decimal notation."; + description "It defines the Ipv4 address of the tunnel end point in the + data network, formatted in the dotted decimal notation."; } leaf ipv6Addr { type string; - mandatory false; - description "It defines the Ipv6 address of the tunnel end point in the data network."; + description "It defines the Ipv6 address of the tunnel end point in + the data network."; } leaf portNumber { type uint32; mandatory true; - description " It defines the UDP port number of the tunnel end point in the data network, see TS 29.571 [61]."; + description " It defines the UDP port number of the tunnel end point in + the data network, see TS 29.571."; } } grouping RouteToLocation { - description "It specifies a list of location which the traffic shall be routed to for the AF request."; + description "It specifies a list of location which the traffic shall be + routed to for the AF request."; leaf dnai { type string; mandatory true; - description "It represents the DNAI (Data network access identifier), see 3GPP TS 23.501 [2]."; + description "It represents the DNAI (Data network access identifier."; + reference "3GPPTS 23.501."; } container routeInfo{ description "It provides the traffic routing information."; @@ -185,13 +200,13 @@ module _3gpp-5gc-nrm-predefinedpccruleset { } leaf routeProfId { type string; - mandatory false; description "It identifies the routing profile."; } } grouping RedirectInformaton { - description "It specifies the redirect information for traffic control in the PCC rule."; + description "It specifies the redirect information for traffic control in + the PCC rule."; leaf redirectEnabled { type boolean; mandatory true; @@ -205,7 +220,8 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum SIP_URI; } mandatory true; - description "It indicates the type of redirect address, see TS 29.512 [60]."; + description "It indicates the type of redirect address."; + reference "3GPPTS 29.512."; } leaf redirectServerAddress { type string; @@ -215,11 +231,13 @@ module _3gpp-5gc-nrm-predefinedpccruleset { } grouping TrafficControlDataInformation { - description "It specifies the traffic control data for a service flow of a PCC rule."; + description "It specifies the traffic control data for a service + flow of a PCC rule."; leaf tcId { type string; mandatory true; - description "It univocally identifies the traffic control policy data within a PDU session."; + description "It univocally identifies the traffic control policy data + within a PDU session."; } leaf flowStatus { type enumeration { @@ -230,40 +248,49 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum REMOVED; } mandatory true; - description "It represents whether the service data flow(s) are enabled or disabled."; + description "It represents whether the service data flow(s) are enabled + or disabled."; } container redirectInfo { - description "It contains the redirect information indicating whether the detected application traffic should be redirected to another controlled address."; + description "It contains the redirect information indicating + whether the detected application traffic should be redirected to another + controlled address."; uses RedirectInformaton; } container addRedirectInfo { - description "It contains the additional redirect information indicating whether the detected application traffic should be redirected to another controlled address."; + description "It contains the additional redirect information indicating + whether the detected application traffic should be redirected to another + controlled address."; list redirectInfo { - description "The list of redirect information indicating whether the detected application traffic should be redirected to another controlled address."; + description "The list of redirect information indicating whether the + detected application traffic should be redirected to another + controlled address."; key "redirectServerAddress"; uses RedirectInformaton; } } leaf muteNotif { type boolean; - mandatory false; default false; - description "It indicates whether applicat'on's start or stop notification is to be muted."; + description "It indicates whether applicat'on's start or stop notification + is to be muted."; } leaf trafficSteeringPolIdDl { type string; - mandatory false; - description "It references to a pre-configured traffic steering policy for downlink traffic at the SMF, see TS 29.512 [60]."; + description "It references to a pre-configured traffic steering policy for + downlink traffic at the SMF, see TS 29.512."; } leaf trafficSteeringPolIdUl { type string; - mandatory false; - description "It references to a pre-configured traffic steering policy for uplink traffic at the SMF, see TS 29.512 [60]."; + description "It references to a pre-configured traffic steering policy for + uplink traffic at the SMF, see TS 29.512."; } container routeToLocs { - description "It provides a list of location which the traffic shall be routed to for the AF request."; + description "It provides a list of location which the traffic shall be + routed to for the AF request."; list routeToLoc { - description "The list of location which the traffic shall be routed to for the AF request."; + description "The list of location which the traffic shall be routed to + for the AF request."; key "dnai"; uses RouteToLocation; } @@ -274,15 +301,17 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum MPTCP; enum ATSSS_LL; } - mandatory false; - description "It indicates the applicable traffic steering functionality, see TS 29.512 [60]."; + description "It indicates the applicable traffic steering functionality."; + reference "3GPPTS 29.512."; } container steerModeDl { - description "It provides the traffic distribution rule across 3GPP and Non-3GPP accesses to apply for downlink traffic."; + description "It provides the traffic distribution rule across 3GPP and + Non-3GPP accesses to apply for downlink traffic."; uses SteeringMode; } container steerModeUl { - description "It provides the traffic distribution rule across 3GPP and Non-3GPP accesses to apply for uplink traffic."; + description "It provides the traffic distribution rule across 3GPP and + Non-3GPP accesses to apply for uplink traffic."; uses SteeringMode; } leaf mulAccCtrl { @@ -290,13 +319,14 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum ALLOWED; enum NOT_ALLOWED; } - mandatory false; - description "It indicates whether the service data flow, corresponding to the service data flow template, is allowed or not allowed."; + description "It indicates whether the service data flow, corresponding to + the service data flow template, is allowed or not allowed."; } } grouping ARP { - description "It specifies the allocation and retention priority of a QoS control policy."; + description "It specifies the allocation and retention priority of a QoS + control policy."; leaf priorityLevel { type uint8 { range 1..15; @@ -310,7 +340,9 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum MAY_PREEMPT; } mandatory true; - description "It defines whether a service data flow may get resources that were already assigned to another service data flow with a lower priority level."; + description "It defines whether a service data flow may get resources that + were already assigned to another service data flow with a lower priority + level."; } leaf preemptVuln { type enumeration { @@ -318,12 +350,15 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum PREEMPTABLE; } mandatory true; - description "It defines whether a service data flow may lose the resources assigned to it in order to admit a service data flow with higher priority level."; + description "It defines whether a service data flow may lose the resources + assigned to it in order to admit a service data flow with higher + priority level."; } } grouping QosDataInformation { - description "It specifies the QoS control policy data for a service flow of a PCC rule."; + description "It specifies the QoS control policy data for a service flow + of a PCC rule."; leaf qosId { type string; mandatory true; @@ -333,72 +368,68 @@ module _3gpp-5gc-nrm-predefinedpccruleset { type uint8 { range 0..255; } - mandatory true; description "It indicates the 5QI value."; } leaf maxbrUl { type string; - mandatory false; description "It represents the maximum uplink bandwidth."; } leaf maxbrDl { type string; - mandatory false; description "It represents the maximum downlink bandwidth."; } leaf gbrUl { type string; - mandatory false; description "It represents the guaranteed uplink bandwidth."; } leaf gbrDl { type string; - mandatory false; description "It represents the guaranteed downlink bandwidth."; } uses ARP; leaf qosNotificationControl { type boolean; default false; - mandatory false; - description "It indicates whether notifications are requested from 3GPP NG-RAN when the GFBR can no longer (or again) be guaranteed for a QoS Flow during the lifetime of the QoS Flow."; + description "It indicates whether notifications are requested from 3GPP + NG-RAN when the GFBR can no longer (or again) be guaranteed for a + QoS Flow during the lifetime of the QoS Flow."; } leaf reflectiveQos { type boolean; default false; - mandatory false; - description "Indicates whether the QoS information is reflective for the corresponding non-GBR service data flow"; + description "Indicates whether the QoS information is reflective for the + corresponding non-GBR service data flow"; } leaf sharingKeyDl { type string; - mandatory false; - description "It indicates, by containing the same value, what PCC rules may share resource in downlink direction."; + description "It indicates, by containing the same value, what PCC rules + may share resource in downlink direction."; } leaf sharingKeyUl { type string; - mandatory false; - description "It indicates, by containing the same value, what PCC rules may share resource in uplink direction."; + description "It indicates, by containing the same value, what PCC rules + may share resource in uplink direction."; } leaf maxPacketLossRateDl { type uint16 { range 0..1000; } - mandatory false; - description "It indicates the downlink maximum rate for lost packets that can be tolerated for the service data flow."; + description "It indicates the downlink maximum rate for lost packets that + can be tolerated for the service data flow."; } leaf maxPacketLossRateUl { type uint16 { range 0..1000; } - mandatory false; - description "It indicates the uplink maximum rate for lost packets that can be tolerated for the service data flow."; + description "It indicates the uplink maximum rate for lost packets that + can be tolerated for the service data flow."; } leaf extMaxDataBurstVol { type uint32 { range 4096..2000000; } - mandatory false; - description "It denotes the largest amount of data that is required to be transferred within a period of 5G-AN PDB, see TS 29.512 [60]."; + description "It denotes the largest amount of data that is required to + be transferred within a period of 5G-AN PDB, see TS 29.512."; } } @@ -407,17 +438,20 @@ module _3gpp-5gc-nrm-predefinedpccruleset { leaf destMacAddr { type string; mandatory true; - description "It specifies the destination MAC address formatted in the hexadecimal notation according to clause 1.1 and clause 2.1 of IETF RFC 7042 [63]."; + description "It specifies the destination MAC address formatted in the + hexadecimal. ."; + reference "clause 1.1 and clause 2.1 of IETF RFC 7042."; } leaf ethType { type string; mandatory true; - description "A two-octet string that represents the Ethertype, as described in IEEE 802.3 [64] and IETF RFC 7042 [63] in hexadecimal representation."; + description "A two-octet string that represents the Ethertype."; + reference " IEEE 802.3 and IETF RFC 7042in hexadecimal representation."; } leaf fDesc { type string; - mandatory false; - description "It contains the flow description for the Uplink or Downlink IP flow. It shall be present when the ethtype is IP."; + description "It contains the flow description for the Uplink or Downlink + IP flow. It shall be present when the ethtype is IP."; } leaf fDir { type enumeration { @@ -430,21 +464,31 @@ module _3gpp-5gc-nrm-predefinedpccruleset { leaf sourceMacAddr { type string; mandatory true; - description "It specifies the source MAC address formatted in the hexadecimal notation according to clause 1.1 and clause 2.1 of IETF RFC 7042 [63]."; + description "It specifies the source MAC address formatted in the + hexadecimal notation."; + reference "clause 1.1 and clause 2.1 of IETF RFC 7042"; } leaf-list vlanTags { type string; - description "It specifies the Customer-VLAN and/or Service-VLAN tags containing the VID, PCP/DEI fields as defined in IEEE 802.1Q [65] and IETF RFC 7042 [63]. The first/lower instance in the array stands for the Customer-VLAN tag and the second/higher instance in the array stands for the Service-VLAN tag."; + description "It specifies the Customer-VLAN and/or Service-VLAN tags + containing the VID, PCP/DEI fields as defined in IEEE 802.1Qand + IETF RFC 7042. The first/lower instance in the array stands for the + Customer-VLAN tag and the second/higher instance in the array stands + for the Service-VLAN tag."; } leaf srcMacAddrEnd { type string; - mandatory false; - description "It specifies the source MAC address end. If this attribute is present, the sourceMacAddr attribute specifies the source MAC address start. E.g. srcMacAddrEnd with value 00-10-A4-23-3E-FE and sourceMacAddr with value 00-10-A4-23-3E-02 means all MAC addresses from 00-10-A4-23-3E-02 up to and including 00-10-A4-23-3E-FE."; + description "It specifies the source MAC address end. If this attribute + is present, the sourceMacAddr attribute specifies the source MAC address + start. E.g. srcMacAddrEnd with value 00-10-A4-23-3E-FE and sourceMacAddr + with value 00-10-A4-23-3E-02 means all MAC addresses + from 00-10-A4-23-3E-02 up to and including 00-10-A4-23-3E-FE."; } leaf destMacAddrEnd { type string; - mandatory false; - description "It specifies the destination MAC address end. If this attribute is present, the destMacAddr attribute specifies the destination MAC address start."; + description "It specifies the destination MAC address end. If this + attribute is present, the destMacAddr attribute specifies the + destination MAC address start."; } } @@ -469,16 +513,17 @@ module _3gpp-5gc-nrm-predefinedpccruleset { leaf tosTrafficClass { type string; mandatory true; - description "It contains the Ipv4 Type-of-Service and mask field or the Ipv6 Traffic-Class field and mask field."; + description "It contains the Ipv4 Type-of-Service and mask field or the + Ipv6 Traffic-Class field and mask field."; } leaf spi { type string; mandatory true; - description "It is the security parameter index of the IPSec packet, see IETF RFC 4301 [66]"; + description "It is the security parameter index of the IPSec packet."; + reference "IETF RFC 4301"; } leaf flowLabel { type string; - mandatory false; description "It specifies the Ipv6 flow label header field."; } leaf flowDirection { @@ -489,12 +534,13 @@ module _3gpp-5gc-nrm-predefinedpccruleset { enum UNSPECIFIED; } mandatory true; - description "It indicates the direction/directions that a filter is applicable."; + description "It indicates the direction/directions that a filter is + applicable."; } } grouping PccRule { - description "It specifies the PCC rule, see TS 29.512 [60]."; + description "It specifies the PCC rule, see TS 29.512."; leaf pccRuleId { type string; mandatory true; @@ -511,44 +557,41 @@ module _3gpp-5gc-nrm-predefinedpccruleset { leaf applicationId { type string; default false; - mandatory false; - description "A reference to the application detection filter configured at the UPF."; + description "A reference to the application detection filter configured + at the UPF."; } leaf appDescriptor { type string; - mandatory false; description "It is the ATSSS rule application descriptor."; } leaf contentVersion { type uint8; - mandatory false; description "Indicates the content version of the PCC rule."; } leaf precedence { type uint8 { range 0..255; } - mandatory false; - description "It indicates the order in which this PCC rule is applied relative to other PCC rules within the same PDU session."; + description "It indicates the order in which this PCC rule is applied + relative to other PCC rules within the same PDU session."; } leaf afSigProtocol { type enumeration { enum NO_INFORMATION; enum SIP; } - mandatory false; - description "Indicates the protocol used for signalling between the UE and the AF, the default value is NO_INFORMATION."; + description "Indicates the protocol used for signalling between the UE + and the AF, the default value is NO_INFORMATION."; } leaf isAppRelocatable { type boolean; default false; - mandatory false; - description "It indicates the application relocation possibility, the default value is NO_INFORMATION."; + description "It indicates the application relocation possibility, the + default value is NO_INFORMATION."; } leaf isUeAddrPreserved { type boolean; default false; - mandatory false; description "It Indicates whether UE IP address should be preserved."; } container qosData { @@ -560,7 +603,8 @@ module _3gpp-5gc-nrm-predefinedpccruleset { } } container altQosParams { - description "It contains the QoS control policy data for the Alternative QoS parameter sets of the service data flow."; + description "It contains the QoS control policy data for the + Alternative QoS parameter sets of the service data flow."; list qosDataInfo { description "The list of QoS control policy data."; key "qosId"; @@ -577,12 +621,15 @@ module _3gpp-5gc-nrm-predefinedpccruleset { } uses ConditionData; container tscaiInputUl { - description "It contains transports TSCAI input parameters for TSC traffic at the ingress interface of the DS-TT/UE (uplink flow direction)."; + description "It contains transports TSCAI input parameters for + TSC traffic at the ingress interface of the DS-TT/UE + (uplink flow direction)."; uses TscaiInputContainer; } container tscaiInputDl { - description "It contains transports TSCAI input parameters for TSC traffic at the ingress of the NW-TT (downlink flow direction)."; + description "It contains transports TSCAI input parameters for TSC traffic + at the ingress of the NW-TT (downlink flow direction)."; uses TscaiInputContainer; } } @@ -597,25 +644,29 @@ module _3gpp-5gc-nrm-predefinedpccruleset { } grouping PredefinedPccRuleSetSubtree { - description "It specifies the PredefinedPccRuleSet IOC with inherited attributes."; + description "It specifies the PredefinedPccRuleSet IOC with inherited + attributes."; list PredefinedPccRuleSet { description "Specifies the predefined PCC rules."; key "id"; uses top3gpp:Top_Grp; container attributes { - description "It contains the attributes defined specifically in the PredefinedPccRuleSet IOC."; + description "It contains the attributes defined specifically in the + PredefinedPccRuleSet IOC."; uses PredefinedPccRuleSetGrp; } } } augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - description "It specifies the containment relation of PredefinedPccRuleSet MOI with SMFFunction MOI."; + description "It specifies the containment relation of PredefinedPccRuleSet + MOI with SMFFunction MOI."; uses PredefinedPccRuleSetSubtree; } augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { - description "It specifies the containment relation of PredefinedPccRuleSet MOI with PCFFunction MOI."; + description "It specifies the containment relation of PredefinedPccRuleSet + MOI with PCFFunction MOI."; uses PredefinedPccRuleSetSubtree; } } \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang index 3fe49264dfec6bf1064db541e389bb6dadd080cf..c8444bbb2569e096b387335c9a7f7bafbdfb3436 100755 --- a/yang-models/_3gpp-5gc-nrm-smffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-smffunction.yang @@ -10,25 +10,25 @@ module _3gpp-5gc-nrm-smffunction { import ietf-inet-types { prefix inet; } import _3gpp-common-top { prefix top3gpp; } + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "SMFFunction derived from basic ManagedFunction."; + revision 2020-11-05 { reference CR-0411 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-06-03 { reference "CR-0286"; } revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-31 { - description "Ericsson refactoring."; - } - - revision 2018-08-07 { - description "Initial revision"; - } + revision 2019-05-31 {reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision";} grouping SMFFunctionGrp { + description "Represents the SMFFuntion IOC"; uses mf3gpp:ManagedFunctionGrp; list pLMNIdList { min-elements 1; - description "A list of PLMN identifiers (Mobile Country Code and Mobile Network Code)."; + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; key "mcc mnc"; uses types3gpp:PLMNId; } @@ -43,40 +43,47 @@ module _3gpp-5gc-nrm-smffunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the service-based + interface."; type inet:domain-name; } - leaf-list sNSSAIList { - min-elements 0; + list sNSSAIList { 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"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } list commModelList { min-elements 1; key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; uses types5g3gpp:CommModel; } leaf configurable5QISetRef { type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the SMFFunction supports (is associated to)."; + description "DN of the Configurable5QISet that the SMFFunction supports + (is associated to)."; } leaf dynamic5QISetRef { type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the SMFFunction supports (is associated to)."; + description "DN of the Dynamic5QISet that the SMFFunction supports + (is associated to)."; } } diff --git a/yang-models/_3gpp-5gc-nrm-udmfunction.yang b/yang-models/_3gpp-5gc-nrm-udmfunction.yang index 5e2a32f829e1ef2eb4ec3fa0b9a7667540457f39..541b77dbf1edafee1d0971b1d7add44109c5e696 100755 --- a/yang-models/_3gpp-5gc-nrm-udmfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udmfunction.yang @@ -12,21 +12,24 @@ module _3gpp-5gc-nrm-udmfunction { import _3gpp-common-top { prefix top3gpp; } organization "3gpp SA5"; - description "This IOC represents the UDM function in 5GC. For more information about the UDM, see 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDM function in 5GC. For more + information about the UDM, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } + revision 2019-05-22 { reference "initial revision";} grouping UDMFuntionGrp { + description "Represents the UDMFuntion IOC"; 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; @@ -35,29 +38,35 @@ module _3gpp-5gc-nrm-udmfunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the service-based + interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } list commModelList { min-elements 1; key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; uses types5g3gpp:CommModel; } } diff --git a/yang-models/_3gpp-5gc-nrm-udrfunction.yang b/yang-models/_3gpp-5gc-nrm-udrfunction.yang index 49e433a49bbb971935540e635228942680accdd9..a518d81787f1a859b47ea245199902b6970db193 100755 --- a/yang-models/_3gpp-5gc-nrm-udrfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udrfunction.yang @@ -9,23 +9,27 @@ module _3gpp-5gc-nrm-udrfunction { import ietf-inet-types { prefix inet; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3gpp SA5"; - description "This IOC represents the UDR function in 5GC. For more information about the UDR, see 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDR function in 5GC. For more information + about the UDR, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } + revision 2020-11-05 { reference CR-0411 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + revision 2019-05-22 { reference "initial revision"; } grouping UDRFuntionGrp { + description "Represents the UDRFuntion IOC"; 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; @@ -34,23 +38,26 @@ module _3gpp-5gc-nrm-udrfunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the service-based + interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; uses types3gpp:ManagedNFProfile; } } diff --git a/yang-models/_3gpp-5gc-nrm-udsffunction.yang b/yang-models/_3gpp-5gc-nrm-udsffunction.yang index f17d130dc51cee443d2b9c3b1f372a505243fa80..4a951133d68e43b106271497e5c736216b0573bb 100755 --- a/yang-models/_3gpp-5gc-nrm-udsffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udsffunction.yang @@ -9,24 +9,27 @@ module _3gpp-5gc-nrm-udsffunction { import ietf-inet-types { prefix inet; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3gpp SA5"; - description "This IOC represents the UDSF function which can be interacted with any other 5GC NF defined in 3GPP TS 23.501."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDSF function which can be interacted + with any other 5GC NF defined in 3GPP TS 23.501."; reference "3GPP TS 28.541"; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - - } + revision 2019-05-22 { reference "initial revision"; } grouping UDSFFuntionGrp { + description "Represents the UDSFFuntion IOC"; 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; @@ -35,23 +38,28 @@ module _3gpp-5gc-nrm-udsffunction { } leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; + description "The FQDN of the registered NF instance in the + service-based interface."; type inet:domain-name; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; //optional support reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; + description "Managed Network Function profile"; + reference "3GPP TS 23.501"; uses types3gpp:ManagedNFProfile; } } diff --git a/yang-models/_3gpp-5gc-nrm-upffunction.yang b/yang-models/_3gpp-5gc-nrm-upffunction.yang index 2ca20b923523f591a91ce69a9ecee8abef7901db..c30132ced278fb9a131f2b5ccf74e6b88986bf80 100755 --- a/yang-models/_3gpp-5gc-nrm-upffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-upffunction.yang @@ -9,22 +9,23 @@ module _3gpp-5gc-nrm-upffunction { import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "UPFFunction derived from basic ManagedFunction."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2020-11-05 { reference CR-0411 ; } revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-31 { - description "Ericsson refactoring."; - } - - revision 2018-08-07 { - description "Initial revision"; - } + revision 2019-05-31 { reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision"; } grouping UPFFunctionGrp { + description "Represents the UPFFunction IOC"; uses mf3gpp:ManagedFunctionGrp; list pLMNIdList { - description "A list of PLMN identifiers (Mobile Country Code and Mobile Network Code)."; + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; min-elements 1; key "mcc mnc"; uses types3gpp:PLMNId; @@ -39,26 +40,28 @@ module _3gpp-5gc-nrm-upffunction { type types3gpp:Tac; } - leaf-list sNSSAIList { + list sNSSAIList { 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."; - min-elements 0; reference "3GPP TS 23.003"; - type types3gpp:SNssai; + key "sd sst"; + uses types5g3gpp:SNssai; } list managedNFProfile { key idx; min-elements 1; + max-elements 1; + reference "3GPP TS 23.003"; uses types3gpp:ManagedNFProfile; } - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; + leaf-list supportedBMOList { + type string; + description "List of supported BMOs (Bridge Managed Objects) required + for integration with TSN system."; } } diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang index 9c94add88d03d266312af5a4c90e2be4c18fbc41..33acde382acf356b414420ce624d7a6d6409c953 100755 --- a/yang-models/_3gpp-common-managed-element.yang +++ b/yang-models/_3gpp-common-managed-element.yang @@ -6,11 +6,13 @@ module _3gpp-common-managed-element { import _3gpp-common-yang-types { prefix types3gpp ; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-subscription-control { prefix subscr3gpp; } import _3gpp-common-fm { prefix fm3gpp; } import _3gpp-common-trace { prefix trace3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines ManagedElement which will be augmented by other IOCs"; reference "3GPP TS 28.623 @@ -26,18 +28,25 @@ module _3gpp-common-managed-element { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-08-03 { reference "CR-0095"; } revision 2020-06-08 { reference "CR-0092"; } revision 2020-05-12 { reference "CR0084"; } revision 2020-02-24 { reference "S5-201365"; } revision 2019-06-17 { reference " S5-203316"; } - revision 2019-05-08 { description "Initial revision"; } + revision 2019-05-08 { reference "Initial revision"; } feature MeasurementsUnderManagedElement { - description "The MeasurementSubtree shall be contained under ManagedElement"; + description "The MeasurementSubtree shall be contained under + ManagedElement"; } + feature SubscriptionControlUnderManagedElement { + description "The SubscriptionControlSubtree shall be contained under + ManagedElement"; + } + feature FmUnderManagedElement { description "The FmSubtree shall be contained under ManagedElement"; } @@ -45,30 +54,41 @@ module _3gpp-common-managed-element { feature TraceUnderManagedElement { description "The TraceSubtree shall be contained under ManageElement"; } - + feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature. The DESManagementFunction shall be contained under ManagedElement."; + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature. The DESManagementFunction shall be contained under + ManagedElement."; } feature DMROFunction { - description "Classs representing D-SON function of MRO feature. The DMROFunction shall be contained under ManagedElement."; + description "Class representing D-SON function of MRO feature. The + DMROFunction shall be contained under ManagedElement."; } - + feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature. The DRACHOptimizationFunction shall be contained under ManagedElement."; + description "Class representing D-SON function of RACH optimization + feature. The DRACHOptimizationFunction shall be contained under + ManagedElement."; } - + feature DPCIConfigurationFunction { - description "Classs representing Distributed SON or Domain-Centralized SON function of PCI configuration feature. The DPCIConfigurationFunction shall be contained under ManagedElement."; + description "Class representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature. The DPCIConfigurationFunction shall + be contained under ManagedElement."; } - + feature CPCIConfigurationFunction { - description "Classs representing Cross Domain-Centralized SON function of PCI configuration feature. The CPCIConfigurationFunction shall be contained under ManagedElement."; + description "Class representing Cross Domain-Centralized SON function of PCI + configuration feature. The CPCIConfigurationFunction shall be contained + under ManagedElement."; } - + feature CESManagementFunction { - description "Classs representing Cross Domain-Centralized SON Energy Saving feature. The CESManagementFunction shall be contained under ManagedElement."; - } + description "Class representing Cross Domain-Centralized SON Energy Saving + feature. The CESManagementFunction shall be contained under + ManagedElement."; + } grouping ManagedElement_Grp { description "Abstract class representing telecommunications resources. @@ -140,9 +160,7 @@ module _3gpp-common-managed-element { and/or service to the subscriber."; uses ManagedElement_Grp; - uses meas3gpp:SupportedPerfMetricGroupGrp { - if-feature MeasurementsUnderManagedElement ; - } + uses meas3gpp:SupportedPerfMetricGroupGrp; leaf vendorName { config false; @@ -166,40 +184,43 @@ module _3gpp-common-managed-element { } list ManagedElement { - description "Represents telecommunications equipment or - TMN entities within the telecommunications network providing support - and/or service to the subscriber. - An ManagedElement IOC is used to represent a Network Element defined - in TS 32.101 including virtualizeation or non-virtualization scenario. - An ManagedElement instance is used for communicating with a manager (directly or indirectly) - over one or more management interfaces for the purpose of being monitored and/or - controlled. ManagedElement may or may not additionally perform element management - functionality. - An ManagedElement contains equipment that may or may not be geographically - distributed. - A telecommunication equipment has software and hardware components. - The ManagedElement IOC described above represents following two case: - - In the case when the when the software component - is designed to run on dedicated hardware component, the ManagedElement IOC - description includes both software and hardware components. - - In the case when the Software is designed to run on ETSI NFV defined NFVI [15], the - ManagedElement - IOC description would exclude the NFVI component supporting the above - mentioned subject software. A ManagedElement may be contained in either a SubNetwork or in a - MeContext instance. A single ManagedElement may also - exist stand-alone with no parent at all. - The relation of ManagedElement IOC and ManagedFunction IOC can be described as following: - - A ManaagedElement instance may have 1..1 containment relationship to a ManagedFunction - instance. In this case, the ManagedElement IOC may be used to represent a NE with signgle - functionality. For example, a ManagedElement is used to represent the 3GPP defined RNC - node; - - A ManagedElement instance may have 1..N containment relationship to multiple - ManagedFunction IOC instances. In this case, the ManagedElement IOC may be used to represent - a NE with combined ManagedFunction funcationality (as indicated by the managedElementType - attribute and the contained - instances of different ManagedFunction IOCs).For example, a - ManagedElement is used to represent the combined functionality of 3GPP defined - gNBCUCPFuntion,gNBCUUPFunction and gNBDUFunction"; + description "Represents telecommunications equipment or TMN entities within + the telecommunications network providing support and/or service to the + subscriber. An ManagedElement IOC is used to represent a Network Element + defined in TS 32.101 including virtualizeation or non-virtualization + scenario. An ManagedElement instance is used for communicating with a + manager (directly or indirectly) over one or more management interfaces + for the purpose of being monitored and/or controlled. ManagedElement may + or may not additionally perform element management functionality. + An ManagedElement contains equipment that may or may not be geographically + distributed. + + A telecommunication equipment has software and hardware components. The + ManagedElement IOC described above represents following two case: + - In the case when the software component is designed to run on dedicated + hardware component, the ManagedElement IOC description includes both + software and hardware components. + - In the case when the software is designed to run on ETSI NFV defined + NFVI [15], the ManagedElement IOC description would exclude the NFVI + component supporting the above mentioned subject software. + + A ManagedElement may be contained in either a SubNetwork or in a MeContext + instance. A single ManagedElement may also exist stand-alone with no + parent at all. + + The relation of ManagedElement IOC and ManagedFunction IOC can be + described as following: + - A ManaagedElement instance may have 1..1 containment relationship to a + ManagedFunction instance. In this case, the ManagedElement IOC may be + used to represent a NE with single functionality. For example, a + ManagedElement is used to represent the 3GPP defined RNC node; + - A ManagedElement instance may have 1..N containment relationship to + multiple ManagedFunction IOC instances. In this case, the ManagedElement + IOC may be used to represent a NE with combined ManagedFunction + funcationality (as indicated by the managedElementType attribute and the + contained instances of different ManagedFunction IOCs).For example, a + ManagedElement is used to represent the combined functionality of 3GPP + defined gNBCUCPFuntion, gNBCUUPFunction and gNBDUFunction"; key id; uses top3gpp:Top_Grp; @@ -208,15 +229,19 @@ module _3gpp-common-managed-element { } uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderManagedElement ; + if-feature MeasurementsUnderManagedElement; + } + + uses subscr3gpp:SubscriptionControlSubtree { + if-feature SubscriptionControlUnderManagedElement; } uses fm3gpp:FmSubtree { - if-feature FmUnderManagedElement ; + if-feature FmUnderManagedElement; } uses trace3gpp:TraceSubtree { - if-feature TraceUnderManagedElement ; + if-feature TraceUnderManagedElement; } } diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang index 34415c24fbd355fd5d4bdec93459071ffb474774..a46d864821820bec0e28e1ad7f1b2ae0d424e1e2 100755 --- a/yang-models/_3gpp-common-managed-function.yang +++ b/yang-models/_3gpp-common-managed-function.yang @@ -10,7 +10,8 @@ module _3gpp-common-managed-function { organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "The module defines a base class/grouping for major 3GPP functions."; + description "The module defines a base class/grouping for major 3GPP + functions."; reference "3GPP TS 28.622 Generic Network Resource Model (NRM) @@ -20,13 +21,15 @@ module _3gpp-common-managed-function { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2021-01-25 { reference "CR-0122"; } + revision 2020-09-30 { reference "CR-bbbb"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-08-03 { reference "CR-0095"; } revision 2020-06-23 { reference "CR-085"; } revision 2020-06-08 { reference "CR-0092"; } revision 2019-11-21 { reference "S5-197275, S5-197735"; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-18 { description "Initial revision"; } + revision 2019-06-18 { reference "Initial revision"; } feature MeasurementsUnderManagedFunction { description "The MeasurementSubtree shall be contained under ManageElement"; @@ -37,6 +40,7 @@ module _3gpp-common-managed-function { } grouping Operation { + description "This data type represents an Operation."; reference "3gpp TS 28.622"; leaf name { @@ -154,16 +158,19 @@ module _3gpp-common-managed-function { uses Function_Grp; - container vnfParametersList { + list vnfParametersList { + key vnfInstanceId; description "Contains the parameter set of the VNF - instance(s) corresponding to an NE."; - presence "The presence of this container indicates that the ManagedFunction + instance(s) corresponding to an NE. + The presence of this list indicates that the ManagedFunction represented is realized by one or more VNF instance(s). Otherwise it - shall be absent."; + shall be absent. + The presence of a vnfParametersList entry, whose vnfInstanceId with a + string length of zero, in createMO operation can trigger the + instantiation of the related VNF/VNFC instances."; leaf vnfInstanceId { type string ; - mandatory true; description "VNF instance identifier"; reference "ETSI GS NFV-IFA 008 v2.1.1: Network Functions Virtualisation (NFV); Management and Orchestration; @@ -192,12 +199,10 @@ module _3gpp-common-managed-function { description "Identifier of the VNF Deployment Flavour applied to this VNF instance."; reference "ETSI GS NFV-IFA 008 v2.1.1: - Network Functions Virtualisation (NFV); Management and Orchestration; - Ve-Vnfm reference point - Interface and Information Model Specification - section 9.4.3"; + Network Functions Virtualisation (NFV) Management and Orchestration"; } - - leaf autoScalable { + + leaf autoScalable { type boolean ; mandatory true; description "Indicator of whether the auto-scaling of this @@ -205,13 +210,14 @@ module _3gpp-common-managed-function { } } - container peeParametersList { + list peeParametersList { + key idx; description "Contains the parameter set for the control and monitoring of power, energy and environmental parameters of ManagedFunction instance(s)."; - presence "Present supported if the control and monitoring of PEE - parameters is supported by the ManagedFunction or sub-class instance."; - + + leaf idx { type uint32; } + leaf siteIdentification { type string; mandatory true; @@ -296,7 +302,7 @@ module _3gpp-common-managed-function { uses meas3gpp:MeasurementSubtree { if-feature MeasurementsUnderManagedFunction ; - } + } uses trace3gpp:TraceSubtree { if-feature TraceUnderManagedFunction ; diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index b9fc0d644fb66893c087ef79ea110741fa02c83f..30627565c969a6e04907f409c88d4c0c40ae4286 100755 --- a/yang-models/_3gpp-common-measurements.yang +++ b/yang-models/_3gpp-common-measurements.yang @@ -53,6 +53,7 @@ module _3gpp-common-measurements { Integration Reference Point (IRP); Information Service (IS)"; + revision 2020-11-06 { reference "CR-0118"; } revision 2020-09-04 { reference "CR-000107"; } revision 2020-06-08 { reference "CR-0092"; } revision 2020-05-31 { reference "CR-0084"; } @@ -224,10 +225,9 @@ module _3gpp-common-measurements { description "Indicates whether the PerfMetricJob is working."; } - leaf perfMetricJobGroupId { + leaf jobId { type string; - description "Identifies members of a PerfMetricJob group. For the - stream based reporting method this reference shall be present."; + description "Id for a PerfMetricJob job."; } leaf-list performanceMetrics { @@ -257,15 +257,7 @@ module _3gpp-common-measurements { units seconds; mandatory true; description "Granularity period used to produce measurements. The value - must be one of the supported granularity periods for the metric. - - For measurements of type counter this is the period at which samples - of the internal counter value, that is incremented with every event - occurance, are taken. - - For measurements of type gauge, this is period, over which the mean - value of the measured variable is calculated. The mean value is - then taken as sample."; + must be one of the supported granularity periods for the metric."; } leaf-list objectInstances { @@ -306,7 +298,7 @@ module _3gpp-common-measurements { type uint32 { range 1..max; } - units minutes"; + units minutes; must '(number(.)*"60") mod number(../granularityPeriod) = "0"' { error-message "The time-period must be a multiple of the granularityPeriod."; @@ -416,10 +408,14 @@ module _3gpp-common-measurements { the operational state attribute to disabled. When production is resumed the operational state is set again to enabled. - The perfMetricJobGroupId is a common reference across all members of a - PerfMetricJob group. A group contains related PerfMetricJob instances. - - The attribute performanceMetrics defines the performance metrics to be + The jobId attribute can be used to associate metrics from multiple + PerfMetricJob instances. The jobId can be included when reporting + performance metrics to allow a MnS consumer to associate received + metrics for the same purpose. For example, it is possible to configure + the same jobId value for multiple PerfMetricJob instances required to + produce the measurements for a specific KPI. + + The attribute performanceMetrics defines the performance metrics to be produced and the attribute granularityPeriod defines the granularity period to be applied. diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang index ced4207391c98f7de97ccf4dfd3cff559bd31458..53739e61ca3705cca1c3e57219deb1deb03766a2 100755 --- a/yang-models/_3gpp-common-subnetwork.yang +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -6,6 +6,7 @@ module _3gpp-common-subnetwork { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-subscription-control { prefix subscr3gpp; } import _3gpp-common-fm { prefix fm3gpp; } import _3gpp-common-trace { prefix trace3gpp; } import ietf-yang-schema-mount { prefix yangmnt; } @@ -27,6 +28,7 @@ module _3gpp-common-subnetwork { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-06-08 { reference "CR-0092"; } revision 2020-05-08 { @@ -44,21 +46,24 @@ module _3gpp-common-subnetwork { } revision 2019-06-17 { - description "Initial revision"; + reference "Initial revision"; } feature ExternalsUnderSubNetwork { - description "Classes representing external entities like EUtranFrequency, ExternalGNBCUCPFunction, ExternalENBFunction are contained under a Subnetwork list/class."; } feature MeasurementsUnderSubNetwork { - description "The MeasurementSubtree shall be contained under SubNetwork - indicating the support of Measurements and/or KPIs"; + description "The MeasurementSubtree shall be contained under SubNetwork"; } + feature SubscriptionControlUnderSubNetwork { + description "The SubscriptionControlSubtree shall be contained under + SubNetwork"; + } + feature FmUnderSubNetwork { description "The FmSubtree shall be contained under SubNetwork"; } @@ -68,27 +73,36 @@ module _3gpp-common-subnetwork { } feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature. The DESManagementFunction shall be contained under subnetwork."; + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature. The DESManagementFunction shall be contained under + SubNetwork."; } feature DMROFunction { - description "Classs representing D-SON function of MRO feature. The DMROFunction shall be contained under subnetwork."; + description "Class representing D-SON function of MRO feature. The + DMROFunction shall be contained under SubNetwork."; } feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature. The DRACHOptimizationFunction shall be contained under subnetwork."; + description "Class representing D-SON function of RACH optimization feature. + The DRACHOptimizationFunction shall be contained under SubNetwork."; } feature DPCIConfigurationFunction { - description "Classs representing Distributed SON or Domain-Centralized SON function of PCI configuration feature. The DPCIConfigurationFunction shall be contained under subnetwork."; + description "Class representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature. The DPCIConfigurationFunction shall + be contained under SubNetwork."; } feature CPCIConfigurationFunction { - description "Classs representing Cross Domain-Centralized SON function of PCI configuration feature. The CPCIConfigurationFunction shall be contained under subnetwork."; + description "Class representing Cross Domain-Centralized SON function of PCI + configuration feature. The CPCIConfigurationFunction shall be contained + under SubNetwork."; } feature CESManagementFunction { - description "Classs representing Cross Domain-Centralized SON Energy Saving feature. The CESManagementFunction shall be contained under subnetwork."; + description "Class representing Cross Domain-Centralized SON Energy Saving + feature. The CESManagementFunction shall be contained under SubNetwork."; } grouping Domain_Grp { @@ -175,15 +189,19 @@ module _3gpp-common-subnetwork { } uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderSubNetwork ; + if-feature MeasurementsUnderSubNetwork; + } + + uses subscr3gpp:SubscriptionControlSubtree { + if-feature SubscriptionControlUnderSubNetwork; } uses fm3gpp:FmSubtree { - if-feature FmUnderSubNetwork ; + if-feature FmUnderSubNetwork; } uses trace3gpp:TraceSubtree { - if-feature TraceUnderSubNetwork ; + if-feature TraceUnderSubNetwork; } yangmnt:mount-point children-of-SubNetwork { diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index d37938d28b3ba952df79b876efd71504072ea096..25bde6927d08e51784ebcf38167c8ebcb7e36419 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -4,10 +4,9 @@ module _3gpp-common-subscription-control { prefix "subscr3gpp"; import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines IOCs for subscription and heartbeat control."; reference "3GPP TS 28.623 @@ -16,6 +15,7 @@ module _3gpp-common-subscription-control { Solution Set (SS) definitions 3GPP TS 28.623"; + revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-26 { reference "CR-0106"; } revision 2019-11-29 { reference "S5-197648 S5-197647 S5-197829 S5-197828"; } @@ -90,11 +90,11 @@ module _3gpp-common-subscription-control { } grouping HeartbeatControlGrp { - description "Attributes of HeartbeatControl. Note the triggerHeartbeatNtf attribute - has no mapping in the present release."; + description "Attributes of HeartbeatControl. Note the triggerHeartbeatNtf + attribute has no mapping in the present release."; leaf heartbeatNtfPeriod { - type uint32 ; + type uint32; mandatory true; units seconds; description "Specifies the periodicity of heartbeat notification emission. @@ -103,7 +103,15 @@ module _3gpp-common-subscription-control { } } - grouping NtfSubscriptionControlWrapper { + grouping SubscriptionControlSubtree { + description "Contains notification subscription related classes. + Should be used in all classes (or classes inheriting from) + - SubNetwork + - ManagedElement + + If some YAM wants to augment these classes/list/groupings they must + augment all user classes!"; + list NtfSubscriptionControl { description "A NtfSubscriptionControl instance represents the notification subscription of a particular notification recipient. @@ -138,57 +146,57 @@ module _3gpp-common-subscription-control { instance. Creation and deletion of NtfSubscriptionControl instances by MnS consumers is optional; when not supported, the NtfSubscriptionControl - instances may be created and deleted by the system or be pre-installed."; + instances may be created and deleted by the system or be + pre-installed."; key id; - uses top3gpp:Top_Grp; + uses top3gpp:Top_Grp; container attributes { uses NtfSubscriptionControlGrp; } list HeartbeatControl { - min-elements 1; - max-elements 1; - description "MnS consumers (i.e. notification recipients) use heartbeat - notifications to monitor the communication channels between them and - data reporting MnS producers emitting notifications such as - notifyNewAlarm and notifyFileReady. + description "MnS consumers (i.e. notification recipients) use heartbeat + notifications to monitor the communication channels between them and + data reporting MnS producers emitting notifications such as + notifyNewAlarm and notifyFileReady. - A HeartbeatControl instance allows controlling the emission of - heartbeat notifications by MnS producers. The recipients of heartbeat - notifications are specified by the notificationRecipientAddress - attribute of the NtfSubscriptionControl instance containing the + A HeartbeatControl instance allows controlling the emission of + heartbeat notifications by MnS producers. The recipients of heartbeat + notifications are specified by the notificationRecipientAddress + attribute of the NtfSubscriptionControl instance containing the HeartbeatControl instance. - - Note that the MnS consumer managing the HeartbeatControl instance - and the MnS consumer receiving the heartbeat notifications may not be + Note that the MnS consumer managing the HeartbeatControl instance + and the MnS consumer receiving the heartbeat notifications may not be the same. - As a pre-condition for the emission of heartbeat notifications, a - HeartbeatControl instance needs to be created. Creation of an instance - with an initial non-zero value of the heartbeatNtfPeriod attribute - triggers an immediate heartbeat notification emission. Creation of an - instance with an initial zero value of the heartbeatPeriod attribute - does not trigger an emission of a heartbeat notification. Deletion of + As a pre-condition for the emission of heartbeat notifications, a + HeartbeatControl instance needs to be created. Creation of an instance + with an initial non-zero value of the heartbeatNtfPeriod attribute + triggers an immediate heartbeat notification emission. Creation of an + instance with an initial zero value of the heartbeatPeriod attribute + does not trigger an emission of a heartbeat notification. Deletion of an instance does not trigger an emission of a heartbeat notification. - Once the instance is created, heartbeat notifications are emitted with - a periodicity defined by the value of the heartbeatNtfPeriod attribute. - No heartbeat notifications are emitted if the value is equal to zero. - Setting a zero value to a non zero value, or a non zero value to a - different non zero value, triggers an immediate heartbeat notification, - that is the base for the new heartbeat period. Setting a non zero value - to a zero value stops emitting heartbeats immediately; no final - heartbeat notification is sent. + Once the instance is created, heartbeat notifications are emitted with + a periodicity defined by the value of the heartbeatNtfPeriod + attribute. No heartbeat notifications are emitted if the value is + equal to zero. Setting a zero value to a non zero value, or a non zero + value to a different non zero value, triggers an immediate heartbeat + notification, that is the base for the new heartbeat period. Setting a + non zero value to a zero value stops emitting heartbeats immediately; + no final heartbeat notification is sent. - Creation and deletion of HeartbeatControl instances by MnS Consumers is - optional; when not supported, the HeartbeatControl instances may be + Creation and deletion of HeartbeatControl instances by MnS Consumers + is optional; when not supported, the HeartbeatControl instances may be created and deleted by the system or be pre-installed. - - Whether and when to emit heartbeat notifications is controlled by - HeartbeatControl. Subscription for heartbeat is not supported via the + + Whether and when to emit heartbeat notifications is controlled by + HeartbeatControl. Subscription for heartbeat is not supported via the NtfSubscriptionControl."; + + max-elements 1; key id; uses top3gpp:Top_Grp; @@ -198,12 +206,4 @@ module _3gpp-common-subscription-control { } } } - - augment /subnet3gpp:SubNetwork { - uses NtfSubscriptionControlWrapper; - } - - augment /me3gpp:ManagedElement { - uses NtfSubscriptionControlWrapper; - } } \ No newline at end of file diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index c2eb08f015a4f4bd2d106dcdf111bf1c664913f1..13b3f026d0e0f6ae0deb632b692f7e1563373300 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -10,8 +10,8 @@ module _3gpp-common-trace { organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description " "; - + description "Trace handling"; + reference "3GPP TS 28.623 Generic Network Resource Model (NRM) Integration Reference Point (IRP); @@ -22,6 +22,8 @@ module _3gpp-common-trace { Integration Reference Point (IRP); Information Service (IS)"; + revision 2021-01-25 { reference "CR-0122"; } + revision 2020-11-16 { reference "CR-0117"; } revision 2020-08-06 { reference "CR-0102"; } grouping TraceJobGrp { @@ -456,21 +458,30 @@ module _3gpp-common-trace { reporting or file-based trace reporting"; reference "3GPP TS 32.422 clause 5.11"; } - - leaf tjTraceTarget { - type enumeration { - enum IMSI; - enum IMEI; - enum IMEISV; - enum PUBLIC_ID; - enum UTRAN_CELL; - enum E_UTRAN_CELL; - enum NG_RAN_CELL; - enum ENB; - enum RNC; - enum GNB; + list tjTraceTarget { + key "targetIdType targetIdValue"; + max-elements 1; + + leaf targetIdType { + type enumeration { + enum IMSI; + enum IMEI; + enum IMEISV; + enum PUBLIC_ID; + enum UTRAN_CELL; + enum E_UTRAN_CELL; + enum NG_RAN_CELL; + enum ENB; + enum RNC; + enum GNB; + enum SUPI; + } } - mandatory true; + + leaf targetIdValue { + type string; + } + description "Specifies the target object of the Trace and MDT. The attribute is applicable for both Trace and MDT. This attribute includes the ID type of the target as an enumeration and the ID value. @@ -494,22 +505,22 @@ module _3gpp-common-trace { The tjTraceTarget shall be IMSI if the Trace Session is activated to a ManagedEntity playing a role of ServinGWFunction. - In case of signaling based MDT, the tjTraceTarget attribute shall be - able to carry (IMSI or IMEI(SV)), the tjMDTAreaScope attribute shall be - able to carry a list of (cell or EUtranCell or TA/LA/RA). + In case of signaling based Trace/MDT, the tjTraceTarget attribute shall be + able to carry (IMSI or IMEI(SV)or SUPI), the tjMDTAreaScope 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 tjTraceTarget attribute shall be null value, the tjMDTAreaScope attribute shall carry a list of - (Utrancell or E-UtranCell). + (Utrancell or E-UtranCell or NRCellDU). In case of management based Logged MDT, the tjTraceTarget attribute - shall carry an eNodeBs or a RNC. The Logged MDT should be initiated on - the specified eNodeB/RNC in tjTraceTarget. The tjMDTAreaScope attribute - shall carry a list of (Utrancell or E-UtranCell or TA/LA/RA). + shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated on + the specified eNB or RNC or gNB in tjTraceTarget. The tjMDTAreaScope 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 tjTraceTarget attribute shall be null value, the tjMDTAreaScope attribute shall carry one or - list of eNBs"; + list of eNBs/gNBs"; reference "3GPP TS 32.422"; } @@ -603,7 +614,20 @@ module _3gpp-common-trace { a null semantic"; reference "Clause 5.10.21 of 3GPP TS 32.422"; } - + + leaf tjMDTCollectionPeriodRrmNR { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "1024|2048|5120|10240|60000"; + } + units milliseconds; + description "Specifies the collection period for collecting RRM configured + measurement samples for M4, M5 in NR. The attribute is applicable only + for Immediate MDT. In case this attribute is not used, it carries a + null semantic."; + reference "Clause 5.10.30 of 3GPP TS 32.422"; + } + leaf tjMDTEventListForTriggeredMeasurement { when './tjJobType = "LOGGED_MDT_ONLY"'; type enumeration { @@ -615,8 +639,8 @@ module _3gpp-common-trace { case of logged NR MDT. Each trace session may configure at most one event. The UE shall perform logging of measurements only upon certain condition being fulfilled: - - Out of coverage. - - A2 event."; + - Out of coverage. + - A2 event."; reference "Clause 5.10.28 of 3GPP TS 32.422"; } diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 56ad2e9780abfcb927ebcd6902d0c9221c0b06a6..f71e5420b47c4b1bdd932b1c1a69327db6bced79 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -7,11 +7,17 @@ module _3gpp-common-yang-types { import ietf-yang-types { prefix yang; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "The model defines a YANG mapping of the top level information classes used for management of 5G networks and network slicing."; reference "3GPP TS 28.541"; + revision 2020-11-06 { + description "Removed incorrect S-NSSAI definitions."; + reference "CR-0118"; + } + revision 2020-03-10 { description "Removed faulty when statements."; reference "SP-200229"; @@ -28,7 +34,7 @@ module _3gpp-common-yang-types { } revision 2019-06-23 { - description "Initial version."; + reference "Initial version."; } grouping ManagedNFProfile { @@ -263,27 +269,6 @@ module _3gpp-common-yang-types { } } - typedef SNssai { - type union { - type Sst; - //optional support - type Sd; - } - description "Single Network Slice Selection Assistance Information."; - reference "TS 23.501 clause 5.15.2"; - } - - typedef Sst { - type uint8; - } - - typedef Sd { - type string{ - length 6; - pattern '[a-fA-F0-9]*'; - } - } - typedef Nrpci { type uint32; description "Physical Cell Identity (PCI) of the NR cell."; diff --git a/yang-models/_3gpp-nr-nrm-beam.yang b/yang-models/_3gpp-nr-nrm-beam.yang index 1ad71599263f0e5d40cb4be8e508d6e86052b2ed..95f4677b7d98e941bf533dd6afeb516ec9014e35 100755 --- a/yang-models/_3gpp-nr-nrm-beam.yang +++ b/yang-models/_3gpp-nr-nrm-beam.yang @@ -44,7 +44,7 @@ module _3gpp-nr-nrm-beam { } leaf beamAzimuth { - description "The azimuth of a beam transmission, which means the horizontal beamforming pointing angle (beam peak direction) in the (Phi) f-axis in 1/10th degree resolution. The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Zero degree implies explicit antenna bearing (boresight). Positive angle implies clockwise from the antenna bearing."; + description "The azimuth of a beam transmission, which means the horizontal beamforming pointing angle (beam peak direction) in the (Phi) ?-axis in 1/10th degree resolution. The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Zero degree implies explicit antenna bearing (boresight). Positive angle implies clockwise from the antenna bearing."; reference "3GPP TS 38.104, TS 38.901, TS 28.662"; mandatory false; type int32 { range "-1800..1800"; } @@ -63,7 +63,7 @@ The pointing angle is the direction equal to the geometric centre of the half-po leaf beamHorizWidth { - description " The Horizontal beamWidth of a beam transmission, which means the horizontal beamforming half-power (3dB down) beamwidth in the (Phi) f-axis in 1/10th degree resolution."; + description " The Horizontal beamWidth of a beam transmission, which means the horizontal beamforming half-power (3dB down) beamwidth in the (Phi) ?-axis in 1/10th degree resolution."; reference "3GPP TS 38.104, TS 38.901"; mandatory false; type int32 { range "0..3599"; } @@ -84,7 +84,7 @@ The pointing angle is the direction equal to the geometric centre of the half-po augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier/cbeamff3gpp:CommonBeamformingFunction" { list Beam { - description "Represents the per-Beam information required for, e.g. beam performance management utilizing measurements generated in the RAN. Can have spatial attributes of horizontal/azimuth (ie: Phi f-axis) and vertical/tilt (ie: Theta ?-axis) beam pointing direction and beam width attributes."; + description "Represents the per-Beam information required for, e.g. beam performance management utilizing measurements generated in the RAN. Can have spatial attributes of horizontal/azimuth (ie: Phi ?-axis) and vertical/tilt (ie: Theta ?-axis) beam pointing direction and beam width attributes."; reference "3GPP TS 28.541"; key id; uses top3gpp:Top_Grp; diff --git a/yang-models/_3gpp-nr-nrm-bwp.yang b/yang-models/_3gpp-nr-nrm-bwp.yang index cd28affd790bee6da6217816a142e14ff773e50c..44423c26d9c126a187d12d42461aac75d1acf46a 100755 --- a/yang-models/_3gpp-nr-nrm-bwp.yang +++ b/yang-models/_3gpp-nr-nrm-bwp.yang @@ -9,14 +9,15 @@ module _3gpp-nr-nrm-bwp { import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the BWP 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 2021-01-25 { reference CR-0453; } + revision 2020-11-02 { reference CR-0409 ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } + revision 2019-06-17 { reference "Initial revision"; } typedef CyclicPrefix { type enumeration { @@ -32,7 +33,7 @@ module _3gpp-nr-nrm-bwp { enum SUL; } } - + typedef IsInitialBwp { type enumeration { enum INITIAL; @@ -63,12 +64,12 @@ module _3gpp-nr-nrm-bwp { description "Subcarrier spacing configuration for a BWP."; reference "3GPP TS 38.104"; mandatory true; - type uint32 { range "5 | 30 | 60 | 120"; } + type uint32 { range "15 | 30 | 60 | 120"; } units kHz; } leaf cyclicPrefix { - description "Cyclic prefix, which may be normal or extended."; + description "Cyclic prefix, which may be normal or extended."; reference "3GPP TS 38.211"; mandatory true; type CyclicPrefix; diff --git a/yang-models/_3gpp-nr-nrm-common.yang b/yang-models/_3gpp-nr-nrm-common.yang deleted file mode 100755 index aa2343f6a5ea6a6ce4a0228372aadaa88e352a43..0000000000000000000000000000000000000000 --- a/yang-models/_3gpp-nr-nrm-common.yang +++ /dev/null @@ -1,29 +0,0 @@ -module _3gpp-nr-nrm-common { - yang-version 1.1; - namespace "urn:3gpp:sa5:3gpp-nr-nrm-common"; - prefix "nrcommon3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of comon parts for 3GPP TS 28.541."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-02-14 { - description "Initial revision"; - } - - - grouping PLMNInfo { - description "The PLMNInfo data type define a S-NSSAI member in a specific PLMNId, and it have - two attributes PLMNId and S-NSSAI (PLMNId, S-NSSAI). The PLMNId represents a data type that - is comprised of mcc (mobile country code) and mnc (mobile network code), (See TS 23.003 - subclause 2.2 and 12.1) and S-NSSAI represents an data type, that is comprised of an SST - (Slice/Service type) and an optional SD (Slice Differentiator) field, (See TS 23.003 [13])."; - uses types3gpp:PLMNId; - leaf sNssai { - type types3gpp:SNssai; - } - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang index 0d25d5076783966a9fc4289db4d13205bca46352..b449e02000052725b1a0383a77a88519316a6440 100755 --- a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang +++ b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang @@ -5,8 +5,8 @@ module _3gpp-nr-nrm-dpciconfigurationfunction { import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } organization "3GPP SA5"; @@ -15,6 +15,7 @@ module _3gpp-nr-nrm-dpciconfigurationfunction { (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2020-11-25 { reference CR-0385 ; } revision 2020-05-08 { reference S5-203316; } @@ -52,8 +53,8 @@ module _3gpp-nr-nrm-dpciconfigurationfunction { } - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { - if-feature nrcelldu3gpp:DPCIConfigurationFunction; + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DPCIConfigurationFunction; uses DPCIConfigurationFunctionGrp; } augment "/me3gpp:ManagedElement" { diff --git a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang index 8135d1409beb6bc960e59b1dd8407c6b63cc371c..e3bdc517f1d057b28b4270e85f9477a8c938d109 100755 --- a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang +++ b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang @@ -5,10 +5,9 @@ module _3gpp-nr-nrm-drachoptimizationfunction { import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } 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-gnbdufunction { prefix gnbdu3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -16,6 +15,8 @@ module _3gpp-nr-nrm-drachoptimizationfunction { (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2020-10-02 { reference CR-0383; } + revision 2020-10-02 { reference CR-0381 ; } revision 2020-05-08 { reference S5-203316; } @@ -24,21 +25,21 @@ module _3gpp-nr-nrm-drachoptimizationfunction { reference "3GPP TS 28.541"; uses top3gpp:Top_Grp; - list ueAccProbilityDistPerSSB { + list ueAccProbilityDist { key targetProbability; description "This is a list of target Access Probability (APn) for the RACH optimization function."; leaf targetProbability {type TargetProbability;} container attributes { - uses UeAccProbilityDistPerSSBGrp; + uses UeAccProbilityDistGrp; } } - list ueAccDelayProbilityDistPerSSB { + list ueAccDelayProbilityDist { key targetProbability; description "This is a list of target Access Delay probability (ADP) for the RACH optimization function."; leaf targetProbability {type TargetProbability;} container attributes { - uses UeAccDelayProbilityDistPerSSBGrp; + uses UeAccDelayProbilityDistGrp; } } @@ -67,7 +68,7 @@ module _3gpp-nr-nrm-drachoptimizationfunction { } - grouping UeAccProbilityDistPerSSBGrp { + grouping UeAccProbilityDistGrp { description "Represents the target Access Probability (APn) for the RACH optimization function."; leaf targetProbability { @@ -84,7 +85,7 @@ module _3gpp-nr-nrm-drachoptimizationfunction { } } - grouping UeAccDelayProbilityDistPerSSBGrp { + grouping UeAccDelayProbilityDistGrp { description "Represents the target Access Delay probability (ADP) for the RACH optimization function."; leaf targetProbability { @@ -101,12 +102,12 @@ module _3gpp-nr-nrm-drachoptimizationfunction { } } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DRACHOptimizationFunction; + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { + if-feature nrcelldu3gpp:DRACHOptimizationFunction; uses DRACHOptimizationFunctionGrp; } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DRACHOptimizationFunction; + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + if-feature gnbdu3gpp:DRACHOptimizationFunction; uses DRACHOptimizationFunctionGrp; } augment "/me3gpp:ManagedElement" { @@ -114,7 +115,7 @@ module _3gpp-nr-nrm-drachoptimizationfunction { uses DRACHOptimizationFunctionGrp; } augment "/subnet3gpp:SubNetwork" { - if-feature nrcellcu3gpp:DRACHOptimizationFunction; + if-feature nrcelldu3gpp:DRACHOptimizationFunction; uses DRACHOptimizationFunctionGrp; } } \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-ep.yang b/yang-models/_3gpp-nr-nrm-ep.yang index 5f5187b1857d4373aa23a5bf39234e0094ed9349..1d2a88725c1e6808970a954f3f7d94b77c59c8f0 100755 --- a/yang-models/_3gpp-nr-nrm-ep.yang +++ b/yang-models/_3gpp-nr-nrm-ep.yang @@ -11,16 +11,30 @@ module _3gpp-nr-nrm-ep { import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the NR related endpoint Information Object Classes (IOCs) that are part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2020-03-02 { reference S5-201191"; } - revision 2019-06-17 { - description "Initial revision"; - } + revision 2021-03-02 { reference CR-0434; } + revision 2021-01-16 { reference CR-0447; } + revision 2020-11-02 { reference CR-0409; } + revision 2020-03-02 { reference S5-201191; } + revision 2019-06-17 { reference "Initial revision"; } + feature EPClassesUnderGNBCUCPFunction { + description "Endpoint classes shall be contained under GNBCUCPFunction"; + } + + feature EPClassesUnderGNBCUUPFunction { + description "Endpoint classes shall be contained under GNBCUUPFunction"; + } + + feature EPClassesUnderGNBDUFunction { + description "Endpoint classes shall be contained under GNBDUFunction"; + } + grouping EP_E1Grp { description "Represents the EP_E1 IOC."; reference "3GPP TS 28.541, 3GPP TS 38.401"; @@ -35,7 +49,7 @@ module _3gpp-nr-nrm-ep { grouping EP_F1UGrp { description "Represents the EP_F1U IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; + reference "3GPP TS 28.541, 3GPP TS 38.470"; uses eprp3gpp:EP_Common; } @@ -82,6 +96,7 @@ module _3gpp-nr-nrm-ep { } augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature EPClassesUnderGNBCUCPFunction; list EP_E1 { description "Represents the local end point of the logical link, @@ -143,6 +158,7 @@ module _3gpp-nr-nrm-ep { } augment "/me3gpp:ManagedElement/gnbcuup3gpp:GNBCUUPFunction" { + if-feature EPClassesUnderGNBCUUPFunction; list EP_E1 { description "Represents the local end point of the logical link, @@ -168,7 +184,7 @@ module _3gpp-nr-nrm-ep { list EP_NgU { description "Represents the local end point of the NG user plane - (NG-U) interface between the gNB and the UPGW."; + (NG-U) interface between the gNB and UPF."; reference "3GPP TS 28.541, 3GPP TS 38.470"; key id; uses top3gpp:Top_Grp; @@ -213,6 +229,7 @@ module _3gpp-nr-nrm-ep { } augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + if-feature EPClassesUnderGNBDUFunction; list EP_F1C { description "Represents the local end point of the control plane @@ -228,7 +245,7 @@ module _3gpp-nr-nrm-ep { list EP_F1U { description "Represents the local end point of the user plane interface (F1-U) between the DU and CU or CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; + reference "3GPP TS 28.541, 3GPP TS 38.470"; key id; uses top3gpp:Top_Grp; container attributes { diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 685ac9517f073d3f9a511cbe0e2d435f608071ff..4332f3ab923b2cb1b195e4dc40f6fdfb2fa41594 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -15,6 +15,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 2020-10-02 { reference CR-0383 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-08-03 { reference "CR-0321"; } revision 2020-06-03 { reference "CR-0286"; } @@ -34,9 +35,6 @@ module _3gpp-nr-nrm-gnbcucpfunction { description "Classs representing D-SON function of ANR Management feature"; } - feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature"; - } feature DMROFunction { description "Classs representing D-SON function of MRO feature"; diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang index 98b7b4a7b6a89f7a7b73d6213260cc72a7c0989b..c3e3ed4d97f079f187b403d5017b644dfa76f5a0 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang @@ -8,7 +8,7 @@ module _3gpp-nr-nrm-gnbcuupfunction { import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - import _3gpp-nr-nrm-common { prefix nrcommon3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -16,6 +16,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 2020-11-05 { reference CR-0411 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-08-03 { reference "CR-0321"; } revision 2020-06-03 { reference "CR-0286"; } @@ -23,15 +24,14 @@ module _3gpp-nr-nrm-gnbcuupfunction { revision 2020-03-12 { reference "SP-200233 S5-201547"; } revision 2020-02-14 { reference S5-20XXXX ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-21 { - description "Initial revision"; - } + revision 2019-08-21 { reference "Initial revision"; } grouping TAIGrp { description "Tracking Area Identity"; list pLMNId { key "mcc mnc"; + description "PLMN IDs for the Tracking area"; uses types3gpp:PLMNId; } @@ -39,12 +39,12 @@ module _3gpp-nr-nrm-gnbcuupfunction { type int64; 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. + 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 + 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."; + d) For a 5G SA (Stand Alone), it has a non-null value."; } } @@ -127,28 +127,32 @@ module _3gpp-nr-nrm-gnbcuupfunction { } list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It defines which PLMNs that - can be served by the GNBCUUPFunction and which S-NSSAIs can be supported by the - GNBCUUPFunction for corresponding PLMN in case of network slicing feature is supported"; - key "mcc mnc"; - uses nrcommon3gpp:PLMNInfo; - } + description "The PLMNInfoList is a list of PLMNInfo data type. It + defines which PLMNs that can be served by the GNBCUUPFunction and + which S-NSSAIs can be supported by the GNBCUUPFunction for + corresponding PLMN in case of network slicing feature is supported"; + key "mcc mnc sd sst"; + 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."; + 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 supports (is associated to)."; + description "DN of the Configurable5QISet that the GNBCUUPFunction + supports (is associated to)."; } leaf dynamic5QISetRef { type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the GNBCUUPFunction supports (is associated to)."; + description "DN of the Dynamic5QISet that the GNBCUUPFunction + supports (is associated to)."; } } diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang index 654d99dca25863ee34e0e7af019ccc791ef523e5..19c61caad456a493ac44afa004f430aa7ceea501 100755 --- a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang @@ -13,6 +13,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 2020-10-02 { reference CR-0383 ; } revision 2020-03-12 { reference "SP-200233 S5-201547" ; } revision 2020-02-14 { reference S5-20XXXX ; } revision 2019-10-28 { reference S5-193518 ; } @@ -20,6 +21,11 @@ module _3gpp-nr-nrm-gnbdufunction { description "Initial revision."; } + feature DRACHOptimizationFunction { + description "Classs representing D-SON function of RACH optimization +feature"; + } + grouping GNBDUFunctionGrp { description "Represents the GNBDUFunction IOC."; reference "3GPP TS 28.541"; diff --git a/yang-models/_3gpp-nr-nrm-nrcellcu.yang b/yang-models/_3gpp-nr-nrm-nrcellcu.yang index c533ff3fafae181cb3987ff54497d06864d4837d..8aef25a6074f50a74a8b24f7aace6019c3b5e987 100755 --- a/yang-models/_3gpp-nr-nrm-nrcellcu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcellcu.yang @@ -8,7 +8,7 @@ module _3gpp-nr-nrm-nrcellcu { import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-common { prefix nrcommon3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -16,27 +16,32 @@ module _3gpp-nr-nrm-nrcellcu { Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2020-11-25 { reference CR-0385 ; } + revision 2020-11-05 { reference CR-0411 ; } + revision 2020-10-02 { reference CR-0383 ; } revision 2020-05-08 { reference S5-203316 ; } 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 DPCIConfigurationFunction { + description "Classs representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature"; } feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature"; + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature"; } - feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature"; - } feature DMROFunction { - description "Classs representing D-SON function of MRO feature"; + description "Class representing D-SON function of MRO feature"; } feature CESManagementFunction { - description "Classs representing Cross Domain-Centralized SON Energy Saving feature"; + description "Class representing Cross Domain-Centralized SON Energy Saving + feature"; } grouping NRCellCUGrp { @@ -44,23 +49,24 @@ module _3gpp-nr-nrm-nrcellcu { reference "3GPP TS 28.541"; uses mf3gpp:ManagedFunctionGrp; - leaf cellLocalId { + leaf cellLocalId { description "Identifies an NR cell of a gNB. Together with corresponding gNB ID it forms the NR Cell Identifier (NCI)."; mandatory true; - type int32 { range "0..16383"; } + type int32 { range "0..16383"; } } list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It defines which PLMNs - that can be served by the NR cell, and which S-NSSAIs that can be supported by the - NR cell for corresponding PLMN in case of network slicing feature is supported."; - // Note: Whether the attribute pLMNId in the pLMNInfo can be writable depends on the implementation. - key "mcc mnc"; + description "The PLMNInfoList is a list of PLMNInfo data type. It defines + which PLMNs that can be served by the NR cell, and which S-NSSAIs that + can be supported by the NR cell for corresponding PLMN in case of + network slicing feature is supported."; + // Note: Whether the attribute pLMNId in the pLMNInfo can be writable + // depends on the implementation. + key "mcc mnc sd sst"; min-elements 1; - uses nrcommon3gpp:PLMNInfo; + uses types5g3gpp:PLMNInfo; } - leaf nRFrequencyRef { description "Reference to corresponding NRFrequency instance."; diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang index 6be5a2ceb999ace1695e43357bfb8ce5ac4ce37c..ce6c5d0f50f0095681ad23a181148c83f2072b57 100755 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -9,7 +9,7 @@ module _3gpp-nr-nrm-nrcelldu { import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - import _3gpp-nr-nrm-common { prefix nrcommon3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } organization "3GPP SA5"; @@ -18,19 +18,23 @@ module _3gpp-nr-nrm-nrcelldu { Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2020-11-25 { reference CR-0385 ; } + revision 2020-11-05 { reference CR-0411 ; } + revision 2020-10-02 { reference CR-0383; } revision 2020-05-08 { reference S5-203316 ; } revision 2020-02-14 { reference S5-20XXXX ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-09-03 { - description "Initial revision"; - } + revision 2019-09-03 { reference "Initial revision"; } - feature DPCIConfigurationFunction { - description "Classs representing Distributed SON or Domain-Centralized SON function of PCI configuration feature"; + feature DRACHOptimizationFunction { + description "Class representing D-SON function of RACH optimization +feature"; } + feature CPCIConfigurationFunction { - description "Classs representing Cross Domain-Centralized SON function of PCI configuration feature"; + description "Class representing Cross Domain-Centralized SON function of + PCI configuration feature"; } grouping NRCellDUGrp { @@ -74,15 +78,17 @@ module _3gpp-nr-nrm-nrcelldu { } list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It defines which PLMNs that - can be served by the NR cell, and which S-NSSAIs that can be supported by the NR cell for - corresponding PLMN in case of network slicing feature is supported. The plMNId of the first - entry of the list is the PLMNId used to construct the nCGI for the NR cell."; - key "mcc mnc"; + description "The PLMNInfoList is a list of PLMNInfo data type. It + defines which PLMNs that can be served by the NR cell, and which + S-NSSAIs that can be supported by the NR cell for corresponding PLMN + in case of network slicing feature is supported. The plMNId of the + first entry of the list is the PLMNId used to construct the nCGI for + the NR cell."; + key "mcc mnc sd sst"; min-elements 1; - uses nrcommon3gpp:PLMNInfo; + ordered-by user; + uses types5g3gpp:PLMNInfo; } - leaf nRPCI { description "The Physical Cell Identity (PCI) of the NR cell."; @@ -136,7 +142,6 @@ module _3gpp-nr-nrm-nrcelldu { leaf bSChannelBwSUL { description "Base station channel bandwidth for supplementary uplink."; reference "3GPP TS 38.104"; - mandatory false; type int32; units MHz; } @@ -191,19 +196,17 @@ module _3gpp-nr-nrm-nrcelldu { leaf-list nRSectorCarrierRef { description "Reference to corresponding NRSectorCarrier instance."; min-elements 1; - type types3gpp:DistinguishedName; + type types3gpp:DistinguishedName; } leaf-list bWPRef { description "Reference to corresponding BWP instance."; - min-elements 0; - type types3gpp:DistinguishedName; + type types3gpp:DistinguishedName; } leaf-list nRFrequencyRef { description "Reference to corresponding NRFrequency instance."; - min-elements 0; - type types3gpp:DistinguishedName; + type types3gpp:DistinguishedName; } } diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang index 5a90b91638c813da9f7d4dfb81c0f529851bd26d..30ed483df89a762ffcaf706adff418fc20b9e187 100755 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -1,31 +1,29 @@ module _3gpp-nr-nrm-rrmpolicy { yang-version 1.1; - namespace "urn:3gpp:sa5:3gpp-nr-nrm-nrnetwork-rrmpolicy"; - prefix "nrrrmpolicy3gpp"; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-rrmpolicy"; + prefix nrrrmpolicy3gpp; - import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } organization "3GPP SA5"; - description "Defines the YANG mapping of the RRMPolicy abstract class that is part of the NR Network Resource Model (NRM)."; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the RRMPolicy abstract class that + is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2020-04-28 { - reference "CR0285"; - } - revision 2020-02-14 { - description "Initial revision"; - } + revision 2020-11-05 { reference CR-0411 ; } + revision 2020-04-28 { reference "CR0285"; } + revision 2020-02-14 { reference "Initial revision"; } grouping rRMPolicyMemberGrp { - description "This data type represents an RRM Policy member that will be part of a - rRMPolicyMemberList. A RRMPolicyMember is defined by its pLMNId and sNSSAI (S-NSSAI). - The members in a rRMPolicyMemberList are assigned a specific amount of RRM resources - based on settings in RRMPolicy."; - uses types3gpp:PLMNId; - leaf sNSSAI { - type types3gpp:SNssai; - } + description "This data type represents an RRM Policy member that will be + part of a rRMPolicyMemberList. A RRMPolicyMember is defined by its + pLMNId and sNSSAI (S-NSSAI). + The members in a rRMPolicyMemberList are assigned a specific amount of + RRM resources based on settings in RRMPolicy."; + + uses types5g3gpp:PLMNInfo; } typedef CyclicPrefix { @@ -36,30 +34,33 @@ module _3gpp-nr-nrm-rrmpolicy { } grouping RRMPolicy_Grp { - description "This IOC represents the properties of an abstract RRMPolicy. The RRMPolicy_ IOC - needs to be subclassed to be instantiated. It defines two attributes apart from those - inherited from Top IOC, the resourceType attribute defines type of resource (PRB, RRC - connected users, DRB usage etc.) and the rRMPolicyMemberList attribute defines the - RRMPolicyMember(s)that are subject to this policy. An RRM resource (defined in resourceType - attribute) is located in NRCellDU, NRCellCU, GNBDUFunction, GNBCUCPFunction or in - GNBCUUPFunction. The RRMPolicyRatio IOC is one realization of a RRMPolicy_ IOC, see the - inheritance in TS 28.541 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."; + description "This IOC represents the properties of an abstract RRMPolicy. + The RRMPolicy_ IOC needs to be subclassed to be instantiated. + It defines two attributes apart from those inherited from Top IOC, the + resourceType attribute defines type of resource (PRB, RRC + connected users, DRB usage etc.) and the rRMPolicyMemberList attribute + defines the RRMPolicyMember(s)that are subject to this policy. + An RRM resource (defined in resourceType + attribute) is located in NRCellDU, NRCellCU, GNBDUFunction, + GNBCUCPFunction or in GNBCUUPFunction. The RRMPolicyRatio IOC is one + realization of a RRMPolicy_ IOC. This RRM framework allows adding new + policies, both standardized (like RRMPolicyRatio) or as vendor specific, + by inheriting from the abstract RRMPolicy_ IOC."; + leaf resourceType { - description "The resourceType attribute defines type of resource (PRB, RRC connected users, - DRB usage etc.) that is subject to policy. Valid values are 'PRB', 'RRC' or 'DRB'"; + description "The resourceType attribute defines type of resource (PRB, + RRC connected users, DRB usage etc.) that is subject to policy. + Valid values are 'PRB', 'RRC' or 'DRB'"; mandatory true; type string; } list rRMPolicyMemberList{ - description "It represents the list of RRMPolicyMember (s) that the managed object - is supporting. A RRMPolicyMember <> include the PLMNId <> - and S-NSSAI <>." ; + description "It represents the list of RRMPolicyMember (s) that the + managed object is supporting. A RRMPolicyMember <> include + the PLMNId <> and S-NSSAI <>." ; min-elements 1; - key "idx"; - leaf idx { type uint32; } + key "mcc mnc sd sst"; uses rRMPolicyMemberGrp; } } // grouping @@ -73,21 +74,22 @@ module _3gpp-nr-nrm-rrmpolicy { leaf rRMPolicyMaxRatio { description " This attribute specifies the maximum percentage of radio - resource that can be used by the associated rRMPolicyMemberList. - The maximum percentage of radio resource include at least one of - the shared resources, prioritized resources and dedicated resources. - The sum of the rRMPolicyMaxRatio values assigned to all RRMPolicyRatio(s) - name-contained by same ManagedEntity can be greater that 100."; - default 100; + resource that can be used by the associated rRMPolicyMemberList. + The maximum percentage of radio resource include at least one of + the shared resources, prioritized resources and dedicated resources. + The sum of the rRMPolicyMaxRatio values assigned to all RRMPolicyRatio(s) + name-contained by same ManagedEntity can be greater that 100."; + default 100; type uint8 { range "0..100"; } units percent; } leaf rRMPolicyMinRatio { - description " This attribute specifies the minimum percentage of radio resources - that can be used by the associated rRMPolicyMemberList. The minimum percentage - of radio resources including at least one of prioritized resources and dedicated - resources. The sum of the rRMPolicyMinRatio values assigned to all RRM PolicyRatio(s) + description " This attribute specifies the minimum percentage of radio + resources that can be used by the associated rRMPolicyMemberList. + The minimum percentage of radio resources including at least one of + prioritized resources and dedicated resources. The sum of the + rRMPolicyMinRatio values assigned to all RRM PolicyRatio(s) name-contained by same ManagedEntity shall be less or equal 100."; default 0; type uint8 { range "0..100"; } @@ -96,8 +98,8 @@ module _3gpp-nr-nrm-rrmpolicy { leaf rRMPolicyDedicatedRatio { description " This attribute specifies the percentage of radio resource - that dedicatedly used by the associated rRMPolicyMemberList. The sum of - the rRMPolicyDeidctaedRatio values assigned to all RRMPolicyRatio(s) + that dedicatedly used by the associated rRMPolicyMemberList. The sum of + the rRMPolicyDeidctaedRatio values assigned to all RRMPolicyRatio(s) name-contained by same ManagedEntity shall be less or equal 100. "; default 0; type uint8 { range "0..100"; } @@ -106,9 +108,10 @@ 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 + 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; @@ -116,5 +119,4 @@ module _3gpp-nr-nrm-rrmpolicy { uses RRMPolicyRatioGrp; } } - } \ No newline at end of file