diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index 30627565c969a6e04907f409c88d4c0c40ae4286..96893e6c393426eef89f311c6b2c8e53c1fa8487 100755 --- a/yang-models/_3gpp-common-measurements.yang +++ b/yang-models/_3gpp-common-measurements.yang @@ -1,84 +1,85 @@ module _3gpp-common-measurements { - yang-version 1.1; + yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-common-measurements"; prefix "meas3gpp"; - + import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types { prefix types3gpp; } organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines Measurement and KPI related groupings Any list/class intending to use this should include 2 or 3 uses statements controlled by a feature: - - A) + + A) +++ feature MeasurementsUnderMyClass { -+++ description 'Indicates whether measurements and/or KPIs are supported ++++ description 'Indicates whether measurements and/or KPIs are supported +++ for this class.'; +++ } - - B) include the attribute measurementsList and/or kPIsList indicating the - supported measurment and KPI types and GPs. Note that for classes - inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are + + B) include the attribute measurementsList and/or kPIsList indicating the + supported measurment and KPI types and GPs. Note that for classes + inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are already inherited, so there is no need to include them once more. E.g. - + +++ grouping MyClassGrp { +++ uses meas3gpp:SupportedPerfMetricGroup; +++ } - - C) include the class PerfmetricJob to control the measurements/KPIs. E.g. - + + C) include the class PerfmetricJob to control the measurements/KPIs. E.g. + list MyClass { container attributes { uses MyClassGrp; } +++ uses meas3gpp:MeasurementSubtree { +++ if-feature MeasurementsUnderMyClass ; -+++ } ++++ } } - + Measurements can be contained under ManagedElement, SubNetwork, or - any list representing a class inheriting from Subnetwork or + any list representing a class inheriting from Subnetwork or ManagedFunction. Note: KPIs will only be supported under SubNetwork"; - + reference "3GPP TS 28.623 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Solution Set (SS) definitions - + 3GPP TS 28.622 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Information Service (IS)"; + revision 2021-07-22 { reference "CR-0137"; } revision 2020-11-06 { reference "CR-0118"; } - revision 2020-09-04 { reference "CR-000107"; } - revision 2020-06-08 { reference "CR-0092"; } + revision 2020-09-04 { reference "CR-000107"; } + revision 2020-06-08 { reference "CR-0092"; } revision 2020-05-31 { reference "CR-0084"; } revision 2020-03-11 { reference "S5-201581, SP-200229"; } revision 2019-11-21 { reference "S5-197275, S5-197735"; } revision 2019-10-28 { reference "S5-193516"; } - revision 2019-06-17 { } - + revision 2019-06-17 { reference " "; } + grouping ThresholdInfoGrp { description "Defines a single threshold level."; - + leaf-list measurementTypes { type string; - description "The Measurement type can be those specified in TS 28.552, - TS 32.404 and can be those specified by other SDOs or can be + description "The Measurement type can be those specified in TS 28.552, + TS 32.404 and can be those specified by other SDOs or can be vendor-specific."; } - + leaf thresholdLevel { type uint64; mandatory true; - description "Number (key) for a single threshold in the threshold list + description "Number (key) for a single threshold in the threshold list applicable to the monitored performance metric."; } - + leaf thresholdDirection { type enumeration { enum UP; @@ -86,32 +87,32 @@ module _3gpp-common-measurements { enum UP_AND_DOWN; } must '. = "UP_AND_DOWN" or not(../hysteresis)' { - error-message "In case a threshold with hysteresis is configured, the " + error-message "In case a threshold with hysteresis is configured, the " +"threshold direction attribute shall be set to 'UP_AND_DOWN'."; } mandatory true; - description "Direction of a threshold indicating the direction for which + description "Direction of a threshold indicating the direction for which a threshold crossing triggers a threshold. - When the threshold direction is configured to 'UP', the associated - treshold is triggered only when the performance metric value is going - up upon reaching or crossing the threshold value. The treshold is not - triggered, when the performance metric is going down upon reaching or + When the threshold direction is configured to 'UP', the associated + treshold is triggered only when the performance metric value is going + up upon reaching or crossing the threshold value. The treshold is not + triggered, when the performance metric is going down upon reaching or crossing the threshold value. - Vice versa, when the threshold direction is configured to 'DOWN', the - associated treshold is triggered only when the performance metric is - going down upon reaching or crossing the threshold value. The treshold - is not triggered, when the performance metric is going up upon reaching + Vice versa, when the threshold direction is configured to 'DOWN', the + associated treshold is triggered only when the performance metric is + going down upon reaching or crossing the threshold value. The treshold + is not triggered, when the performance metric is going up upon reaching or crossing the threshold value. - When the threshold direction is set to 'UP_AND_DOWN' the treshold is + When the threshold direction is set to 'UP_AND_DOWN' the treshold is active in both direcions. - In case a threshold with hysteresis is configured, the threshold + In case a threshold with hysteresis is configured, the threshold direction attribute shall be set to 'UP_AND_DOWN'."; } - + leaf thresholdValue { type union { type int64; @@ -120,10 +121,10 @@ module _3gpp-common-measurements { } } mandatory true; - description "Value against which the monitored performance metric is + description "Value against which the monitored performance metric is compared at a threshold level in case the hysteresis is zero"; } - + leaf hysteresis { type union { type uint64; @@ -132,63 +133,65 @@ module _3gpp-common-measurements { range "0..max"; } } - description "Hysteresis of a threshold. If this attribute is present - the monitored performance metric is not compared against the - threshold value as specified by the thresholdValue attribute but + description "Hysteresis of a threshold. If this attribute is present + the monitored performance metric is not compared against the + threshold value as specified by the thresholdValue attribute but against a high and low threshold value given by threshold-high = thresholdValue + hysteresis threshold-low = thresholdValue - hysteresis - When going up, the threshold is triggered when the performance metric - reaches or crosses the high threshold value. When going down, the - hreshold is triggered when the performance metric reaches or crosses + When going up, the threshold is triggered when the performance metric + reaches or crosses the high threshold value. When going down, the + hreshold is triggered when the performance metric reaches or crosses the low threshold value. - A hysteresis may be present only when the monitored performance - metric is not of type counter that can go up only. If present + A hysteresis may be present only when the monitored performance + metric is not of type counter that can go up only. If present for a performance metric of type counter, it shall be ignored."; } } - - grouping SupportedPerfMetricGroupGrp { + + grouping SupportedPerfMetricGroupGrp { list SupportedPerfMetricGroup { config false; - description "Captures a group of supported performance metrics and + description "Captures a group of supported performance metrics and associated parameters related to their production and reporting. - A SupportedPerfMetricGroup attribute which is part of an MOI may - define performanceMetrics for any MOI under the subtree contained - under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement - can specify supported metrics for contained ManagedFunctions + A SupportedPerfMetricGroup attribute which is part of an MOI may + define performanceMetrics for any MOI under the subtree contained + under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement + can specify supported metrics for contained ManagedFunctions like a GNBDUFunction."; - + leaf-list performanceMetrics { type string; min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also - identify a vendor specific group of performance metrics. + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be specified by other SDOs or be vendor specific. + Performance metrics are identfied with their names. - For measurements defined in TS 28.552 the name is constructed as + For measurements defined in TS 28.552 the name is constructed as follows: - - 'family.measurementName.subcounter' for measurement types with + - 'family.measurementName.subcounter' for measurement types with subcounters - 'family.measurementName' for measurement types without subcounters - 'family' for measurement families - For KPIs defined in TS 28.554 the name is defined in the KPI - definitions template as the component designated with e)."; + For KPIs defined in TS 28.554 the name is defined in the KPI + definitions template as the component designated with e). + + A name can also identify a vendor specific performance metric or a + group of vendor specific performance metrics."; } - + leaf-list granularityPeriods { type uint32 { range 1..max ; } units seconds; } - + leaf-list reportingMethods { type enumeration { enum FILE_BASED_LOC_SET_BY_PRODUCER; @@ -197,13 +200,13 @@ module _3gpp-common-measurements { } min-elements 1; } - + leaf-list monitorGranularityPeriods { type uint32 { range 1..max ; } units seconds; - description "Granularity periods supported for the monitoring of + description "Granularity periods supported for the monitoring of associated measurement types for thresholds"; } } @@ -211,88 +214,88 @@ module _3gpp-common-measurements { grouping PerfMetricJobGrp { description "Represents the attributtes of the IOC PerfMetricJob"; - + leaf administrativeState { default UNLOCKED; type types3gpp:AdministrativeState ; description "Enable or disables production of the metrics"; } - + leaf operationalState { config false; mandatory true; type types3gpp:OperationalState ; description "Indicates whether the PerfMetricJob is working."; - } + } leaf jobId { type string; description "Id for a PerfMetricJob job."; } - leaf-list performanceMetrics { + leaf-list performanceMetrics { type string; min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be those specified by other SDOs or vendor specific metrics. + Performance metrics are identfied with their names. A name can also identify a vendor specific group of performance metrics. - For measurements defined in TS 28.552 the name is constructed as + For measurements defined in TS 28.552 the name is constructed as follows: - - 'family.measurementName.subcounter' for measurement types with + - 'family.measurementName.subcounter' for measurement types with subcounters - 'family.measurementName' for measurement types without subcounters - 'family' for measurement families - For KPIs defined in TS 28.554 the name is defined in the KPI + For KPIs defined in TS 28.554 the name is defined in the KPI definitions template as the component designated with e)."; } - + leaf granularityPeriod { type uint32 { range 1..max ; } units seconds; mandatory true; - description "Granularity period used to produce measurements. The value + description "Granularity period used to produce measurements. The value must be one of the supported granularity periods for the metric."; } leaf-list objectInstances { type types3gpp:DistinguishedName; } - + leaf-list rootObjectInstances { type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that + description "Each object instance designates the root of a subtree that contains the root object and all descendant objects."; } - + choice reportingCtrl { mandatory true; - description "This choice defines the method for reporting collected - performance metrics to MnS consumers as well as the parameters for - configuring the reporting function. It is a choice between the control - parameter required for the reporting methods, whose presence selects + description "This choice defines the method for reporting collected + performance metrics to MnS consumers as well as the parameters for + configuring the reporting function. It is a choice between the control + parameter required for the reporting methods, whose presence selects the reporting method as follows: - - When only the fileReportingPeriod attribute is present, the MnS - producer shall store files on the MnS producer at a location selected - by the MnS producer and inform the MnS consumer about the availability - of new files and the file location using the notifyFileReady + - When only the fileReportingPeriod attribute is present, the MnS + producer shall store files on the MnS producer at a location selected + by the MnS producer and inform the MnS consumer about the availability + of new files and the file location using the notifyFileReady notification. - - When only the fileReportingPeriod and fileLocation attributes are - present, the MnS producer shall store the files on the MnS consumer at - the location specified by fileLocation. No notification is emitted by + - When only the fileReportingPeriod and fileLocation attributes are + present, the MnS producer shall store the files on the MnS consumer at + the location specified by fileLocation. No notification is emitted by the MnS producer. - - When only the streamTarget attribute is present, the MnS producer + - When only the streamTarget attribute is present, the MnS producer shall stream the data to the location specified by streamTarget. - - For the file-based reporting methods the fileReportingPeriod attribute - specifies the time window during which collected measurements are stored + + For the file-based reporting methods the fileReportingPeriod attribute + specifies the time window during which collected measurements are stored into the same file before the file is closed and a new file is opened."; - + case file-based-reporting { leaf fileReportingPeriod { type uint32 { @@ -300,22 +303,22 @@ module _3gpp-common-measurements { } units minutes; must '(number(.)*"60") mod number(../granularityPeriod) = "0"' { - error-message - "The time-period must be a multiple of the granularityPeriod."; - } + error-message + "The time-period must be a multiple of the granularityPeriod."; + } mandatory true; - description "For the file-based reporting method this is the time - window during which collected measurements are stored into the same - file before the file is closed and a new file is opened. + description "For the file-based reporting method this is the time + window during which collected measurements are stored into the same + file before the file is closed and a new file is opened. The time-period must be a multiple of the granularityPeriod. - + Applicable when the file-based reporting method is supported"; } - - leaf fileLocation { + + leaf fileLocation { type string ; - description "Applicable and must be present when the file-based - reporting method is supported, and the files are stored on the MnS + description "Applicable and must be present when the file-based + reporting method is supported, and the files are stored on the MnS consumer."; } } @@ -323,17 +326,17 @@ module _3gpp-common-measurements { leaf streamTarget { type string; mandatory true; - description "Applicable when stream-based reporting method is + description "Applicable when stream-based reporting method is supported."; } } } } - + grouping ThresholdMonitorGrp { - description "A threshold monitor that is created by the consumer for - the monitored entities whose measurements are required by consumer + description "A threshold monitor that is created by the consumer for + the monitored entities whose measurements are required by consumer to monitor."; leaf administrativeState { @@ -341,202 +344,221 @@ module _3gpp-common-measurements { type types3gpp:AdministrativeState ; description "Enables or disables the ThresholdMonitor."; } - + leaf operationalState { config false; mandatory true; type types3gpp:OperationalState ; description "Indicates whether the ThresholdMonitor is working."; - } + } list thresholdInfoList { - key idx; + key idx; min-elements 1; leaf idx { type uint32 ; } - uses ThresholdInfoGrp; + uses ThresholdInfoGrp; } - + leaf monitorGranularityPeriod { type uint32 { range "1..max"; } units second; - mandatory true; - description " Granularity period used to monitor measurements for + mandatory true; + description " Granularity period used to monitor measurements for threshold crossings. "; } - + leaf-list objectInstances { type types3gpp:DistinguishedName; } - + leaf-list rootObjectInstances { type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that + description "Each object instance designates the root of a subtree that contains the root object and all descendant objects."; - } + } } - + grouping MeasurementSubtree { - description "Contains classes that define measurements. - Should be used in all classes (or classes inheriting from) + description "Contains classes that define measurements. + Should be used in all classes (or classes inheriting from) - SubNnetwork - ManagedElement - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must + + If a YANG module wants to augment these classes/list/groupings they must augment all user classes! - - If a class uses this grouping in its list it shall also use the - grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as + + If a class uses this grouping in its list it shall also use the + grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as an attribute to its grouping"; - + list PerfMetricJob { - description "This IOC represents a performance metric production job. It + description "This IOC represents a performance metric production job. It can be name-contained by SubNetwork, ManagedElement, or ManagedFunction. - - To activate the production of the specified performance metrics, a MnS - consumer needs to create a PerfMetricJob instance on the MnS producer - and ensure that the adminState is sUNLOCKED>. - For ultimate deactivation of metric production, the MnS consumer should + + To activate the production of the specified performance metrics, a MnS + consumer needs to create a PerfMetricJob instance on the MnS producer. + For ultimate deactivation of metric production, the MnS consumer should delete the job to free up resources on the MnS producer. - - For temporary suspension of metric production, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable metric production as well, for example in overload - situations. This situation is indicated by the MnS producer with setting - the operational state attribute to disabled. When production is resumed - the operational state is set again to enabled. - + + For temporary suspension of metric production, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable metric production as well, for example in overload + situations. This situation is indicated by the MnS producer with setting + the operational state attribute to disabled. When production is resumed + the operational state is set back to enabled. + 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. - - All object instances below and including the instance name-containing - the PerfMetricJob (base object instance) are scoped for performance - metric production. Performance metrics are produced only on those object - instances whose object class matches the object class associated to the + 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. + + All object instances below and including the instance name-containing + the PerfMetricJob (base object instance) are scoped for performance + metric production. Performance metrics are produced only on those object + instances whose object class matches the object class associated to the performance metrics to be produced. - The attributes objectInstances and rootObjectInstances allow to restrict - the scope. When the attribute objectInstances is present, only the object - instances identified by this attribute are scoped. When the attribute - rootObjectInstances is present, then the subtrees whose root objects are - identified by this attribute are scoped. Both attributes may be present - at the same time meaning the total scope is equal to the sum of both - scopes. Object instances may be scoped by both the objectInstances and - rootObjectInstances attributes. This shall not be considered as an error - by the MnS producer. - - When the performance metric requires performance metric production on - multiple managed objects, which is for example the case for KPIs, the - MnS consumer needs to ensure all required objects are scoped. Otherwise + The attributes objectInstances and rootObjectInstances allow to restrict + the scope. When the attribute objectInstances is present, only the object + instances identified by this attribute are scoped. When the attribute + rootObjectInstances is present, then the subtrees whose root objects are + identified by this attribute are scoped. Both attributes may be present + at the same time meaning the total scope is equal to the sum of both + scopes. Object instances may be scoped by both the objectInstances and + rootObjectInstances attributes. This shall not be considered as an error + by the MnS producer. + + When the performance metric requires performance metric production on + multiple managed objects, which is for example the case for KPIs, the + MnS consumer needs to ensure all required objects are scoped. Otherwise a PerfMetricJob creation request shall fail. - The attribute reportingCtrl specifies the method and associated control - parameters for reporting the produced measurements to MnS consumers. - Three methods are available: file-based reporting with selection of the - file location by the MnS producer, file-based reporting with selection + The attribute reportingCtrl specifies the method and associated control + parameters for reporting the produced measurements to MnS consumers. + Three methods are available: file-based reporting with selection of the + file location by the MnS producer, file-based reporting with selection of the file location by the MnS consumer and stream-based reporting. - A PerfMetricJob creation request shall fail, when the requested - performance metrics, the requested granularity period, the requested - repoting method, or the requested combination thereof is not supported + For file-based reporting, all performance metrics that are produced + related to a 'PerfMetricJob' instance for a reporting period shall be + stored in a single reporting file. + + When the administrative state is set to 'UNLOCKED' after the creation + of a 'PerfMetricJob' the first granularity period shall start. When + the administrative state is set to 'LOCKED' or the operational state + to 'DISABLED', the ongoing reporting period shall be aborted, for + streaming the ongoing granularity period. When the administrative + state is set back to 'UNLOCKED' or the operational state to 'ENABLED' + a new reporting period period shall start, in case of streaming a new + granularity period. + + Changes of all other configurable attributes shall take effect only at + the beginning of the next reporting period, for streaming at the + beginning of the next granularity period. + + When the 'PerfMetricJob' is deleted, the ongoing reporting period shall + be aborted, for streaming the ongoing granularity period. + + A PerfMetricJob creation request shall fail, when the requested + performance metrics, the requested granularity period, the requested + repoting method, or the requested combination thereof is not supported by the MnS producer. - Creation and deletion of PerfMetricJob instances by MnS consumers is - optional; when not supported, PerfMetricJob instances may be created and + Creation and deletion of PerfMetricJob instances by MnS consumers is + optional; when not supported, PerfMetricJob instances may be created and deleted by the system or be pre-installed."; - key id; - uses top3gpp:Top_Grp ; + key id; + uses top3gpp:Top_Grp ; container attributes { uses PerfMetricJobGrp ; - } + } } - + list ThresholdMonitor { - key id; - description "Represents a threshold monitor for performance metrics. - It can be contained by SubNetwork, ManagedElement, or ManagedFunction. - A threshold monitor checks for threshold crossings of performance metric + key id; + description "Represents a threshold monitor for performance metrics. + It can be contained by SubNetwork, ManagedElement, or ManagedFunction. + A threshold monitor checks for threshold crossings of performance metric values and generates a notification when that happens. - To activate threshold monitoring, a MnS consumer needs to create a - ThresholdMonitor instance on the MnS producer. For ultimate deactivation - of threshold monitoring, the MnS consumer should delete the monitor to + To activate threshold monitoring, a MnS consumer needs to create a + ThresholdMonitor instance on the MnS producer. For ultimate deactivation + of threshold monitoring, the MnS consumer should delete the monitor to free up resources on the MnS producer. - For temporary suspension of threshold monitoring, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable threshold monitoring as well, for example in - overload situations. This situation is indicated by the MnS producer with - setting the operational state attribute to disabled. When monitoring is + For temporary suspension of threshold monitoring, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable threshold monitoring as well, for example in + overload situations. This situation is indicated by the MnS producer with + setting the operational state attribute to disabled. When monitoring is resumed the operational state is set again to enabled. - All object instances below and including the instance containing the - ThresholdMonitor (base object instance) are scoped for performance - metric production. Performance metrics are monitored only on those - object instances whose object class matches the object class associated + All object instances below and including the instance containing the + ThresholdMonitor (base object instance) are scoped for performance + metric production. Performance metrics are monitored only on those + object instances whose object class matches the object class associated to the performance metrics to be monitored. - - The optional attributes objectInstances and rootObjectInstances allow to - restrict the scope. When the attribute objectInstances is present, only - the object instances identified by this attribute are scoped. When the - attribute rootObjectInstances is present, then the subtrees whose root - objects are identified by this attribute are scoped. Both attributes may - be present at the same time meaning the total scope is equal to the sum - of both scopes. Object instances may be scoped by both the objectInstances - and rootObjectInstances attributes. This shall not be considered as an + + The optional attributes objectInstances and rootObjectInstances allow to + restrict the scope. When the attribute objectInstances is present, only + the object instances identified by this attribute are scoped. When the + attribute rootObjectInstances is present, then the subtrees whose root + objects are identified by this attribute are scoped. Both attributes may + be present at the same time meaning the total scope is equal to the sum + of both scopes. Object instances may be scoped by both the objectInstances + and rootObjectInstances attributes. This shall not be considered as an error by the MnS producer. - Multiple thresholds can be defined for multiple performance metric sets - in a single monitor using thresholdInfoList. The attribute + Multiple thresholds can be defined for multiple performance metric sets + in a single monitor using thresholdInfoList. The attribute monitorGranularityPeriod defines the granularity period to be applied. - Each threshold is identified with a number (key) called thresholdLevel. - A threshold is defined using the attributes thresholdValue , + Each threshold is identified with a number (key) called thresholdLevel. + A threshold is defined using the attributes thresholdValue , thresholdDirection and hysteresis. - When hysteresis is absent or carries no information, a threshold is - triggered when the thresholdValue is reached or crossed. When hysteresis - is present, two threshold values are specified for the threshold as - follows: A high treshold value equal to the threshold value plus the - hysteresis value, and a low threshold value equal to the threshold value - minus the hysteresis value. When the monitored performance metric - increases, the threshold is triggered when the high threshold value is - reached or crossed. When the monitored performance metric decreases, the - threshold is triggered when the low threshold value is reached or crossed. - The hsyteresis ensures that the performance metric value can oscillate - around a comparison value without triggering each time the threshold when + When hysteresis is absent or carries no information, a threshold is + triggered when the thresholdValue is reached or crossed. When hysteresis + is present, two threshold values are specified for the threshold as + follows: A high treshold value equal to the threshold value plus the + hysteresis value, and a low threshold value equal to the threshold value + minus the hysteresis value. When the monitored performance metric + increases, the threshold is triggered when the high threshold value is + reached or crossed. When the monitored performance metric decreases, the + threshold is triggered when the low threshold value is reached or crossed. + The hsyteresis ensures that the performance metric value can oscillate + around a comparison value without triggering each time the threshold when the threshold value is crossed. - Using the thresholdDirection attribute a threshold can be configured in - such a manner that it is triggered only when the monitored performance + Using the thresholdDirection attribute a threshold can be configured in + such a manner that it is triggered only when the monitored performance metric is going up or down upon reaching or crossing the threshold. - A ThresholdMonitor creation request shall be rejected, if the performance - metrics requested to be monitored, the requested granularity period, or - the requested combination thereof is not supported by the MnS producer. - A creation request may fail, when the performance metrics requested to be + A ThresholdMonitor creation request shall be rejected, if the performance + metrics requested to be monitored, the requested granularity period, or + the requested combination thereof is not supported by the MnS producer. + A creation request may fail, when the performance metrics requested to be monitored are not produced by a PerfMetricJob. - Creation and deletion of ThresholdMonitor instances by MnS consumers is - optional; when not supported, ThresholdMonitor instances may be created + Creation and deletion of ThresholdMonitor instances by MnS consumers is + optional; when not supported, ThresholdMonitor instances may be created and deleted by the system or be pre-installed."; - - uses top3gpp:Top_Grp ; + + uses top3gpp:Top_Grp ; container attributes { uses ThresholdMonitorGrp ; - } + } } - } + } } \ No newline at end of file diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index 13b3f026d0e0f6ae0deb632b692f7e1563373300..84ae422ee8f8880151f93424b059a5ba44ba1a53 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -1,31 +1,32 @@ module _3gpp-common-trace { - yang-version 1.1; + yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-common-trace"; prefix "trace3gpp"; - + import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types {prefix types3gpp; } import ietf-inet-types { prefix inet; } organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Trace handling"; reference "3GPP TS 28.623 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Solution Set (SS) definitions - + 3GPP TS 28.622 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Information Service (IS)"; - revision 2021-01-25 { reference "CR-0122"; } + revision 2021-07-22 { reference "CR-0137"; } + revision 2021-01-25 { reference "CR-0122"; } revision 2020-11-16 { reference "CR-0117"; } - revision 2020-08-06 { reference "CR-0102"; } - + revision 2020-08-06 { reference "CR-0102"; } + grouping TraceJobGrp { leaf tjJobType { type enumeration { @@ -38,14 +39,14 @@ module _3gpp-common-trace { enum LOGGED_MBSFN_MDT; } default TRACE_ONLY; - description "Specifies the MDT mode and it specifies also whether the - TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined - Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and - RLF reporting."; - reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the + description "Specifies the MDT mode and it specifies also whether the + TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined + Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and + RLF reporting."; + reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the allowed values."; } - + list tjListOfInterfaces { key idx; must 'count(MSCServerInterfaces)+count(MGWInterfaces)+count(RNCInterfaces)' @@ -59,16 +60,17 @@ module _3gpp-common-trace { +'+count(NEFInterfaces)+count(NRFInterfaces)+count(NSSFInterfaces)' +'+count(PCFInterfaces)+count(SMFInterfaces)+count(SMSFInterfaces)' +'+count(UDMInterfaces)+count(UPFInterfaces)+count(ng-eNBInterfaces)' - +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)+count(gNB-DUInterfaces)'; - - description "Specifies the interfaces that need to be traced in the given - ManagedEntityFunction.The attribute is applicable only for Trace. In + +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)' + +'+count(gNB-DUInterfaces)'; + + description "Specifies the interfaces that need to be traced in the given + ManagedEntityFunction.The attribute is applicable only for Trace. In case this attribute is not used, it carries a null semantic."; - reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the + reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the allowed values."; - - leaf idx { type uint32 ; } - + + leaf idx { type uint32 ; } + leaf-list MSCServerInterfaces { type enumeration { enum A ; @@ -375,35 +377,35 @@ module _3gpp-common-trace { enum GNB_CU_UP; enum GNB_DU; } - description "Specifies in which type of ManagedFunction the trace should - be activated. The attribute is applicable only for Trace with - Signalling Based Trace activation. In case this attribute is not used, + description "Specifies in which type of ManagedFunction the trace should + be activated. The attribute is applicable only for Trace with + Signalling Based Trace activation. In case this attribute is not used, it carries a null semantic"; - reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the + reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the allowed values"; } - + leaf tjPLMNTarget { type string; mandatory true; - description "Specifies which PLMN that the subscriber of the session to - be recorded uses as selected PLMN. PLMN Target might differ from the + description "Specifies which PLMN that the subscriber of the session to + be recorded uses as selected PLMN. PLMN Target might differ from the PLMN specified in the Trace Reference"; reference "Clause 5.9b of 3GPP TS 32.422"; } - + leaf tjStreamingTraceConsumerURI { when './tjTraceReportingFormat = "STREAMING"'; type inet:uri; mandatory true; - description "URI of the Streaming Trace data reporting MnS consumer - (a.k.a. streaming target). - This attribute shall be present if file based trace data reporting is - supported and tjTraceReportingFormat set to 'file based' or when + description "URI of the Streaming Trace data reporting MnS consumer + (a.k.a. streaming target). + This attribute shall be present if file based trace data reporting is + supported and tjTraceReportingFormat set to 'file based' or when tjJobType is set to Logged MDT or Logged MBSFN MDT."; reference "Clause 5.9 of 3GPP TS 32.422"; } - + leaf tjTraceCollectionEntityAddress { when './tjTraceReportingFormat = "FILE_BASED" or ' +'./tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; @@ -412,41 +414,51 @@ module _3gpp-common-trace { type inet:ip-address; } mandatory true; - description "Specifies the address of the Trace Collection Entity when - the attribute tjTraceReportingFormat is configured for the file-based + description "Specifies the address of the Trace Collection Entity when + the attribute tjTraceReportingFormat is configured for the file-based reporting. The attribute is applicable for both Trace and MDT."; reference "Clause 5.9 of 3GPP TS 32.422"; } - + leaf tjTraceDepth { - when './tjJobType = "TRACE_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "TRACE_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { enum MINIMUM; enum MEDIUM; enum MAXIMUM; enum VENDORMINIMUM; enum VENDORMEDIUM; - enum VENDORMAXIMUM; + enum VENDORMAXIMUM; } default MAXIMUM; - description "Specifies how detailed information should be recorded in the - Network Element. The Trace Depth is a paremeter for Trace Session level, - i.e., the Trace Depth is the same for all of the NEs to be traced in + description "Specifies how detailed information should be recorded in the + Network Element. The Trace Depth is a paremeter for Trace Session level, + i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. - The attribute is applicable only for Trace, otherwise it carries a null + The attribute is applicable only for Trace, otherwise it carries a null semantic."; reference "Clause 5.3 of 3GPP TS 32.422"; } - + leaf tjTraceReference { type uint64; mandatory true; - description "A globally unique identifier, which uniquely identifies the - Trace Session that is created by the TraceJob. - In case of shared network, it is the MCC and MNC of the Participating + description "A globally unique identifier, which uniquely identifies the + Trace Session that is created by the TraceJob. + In case of shared network, it is the MCC and MNC of the Participating Operator that request the trace session that shall be provided. The attribute is applicable for both Trace and MDT."; } + + leaf tjTraceRecordSessionReference { + type string; + mandatory true; + description "An identifier, which identifies the Trace Recording Session. + The attribute is applicable for both Trace and MDT. + See the clause 5.7 of 3GPP TS 32.422 for additional details on the + allowed values."; + } leaf tjTraceReportingFormat { type enumeration { @@ -454,7 +466,7 @@ module _3gpp-common-trace { enum STREAMING; } default FILE_BASED; - description "Specifies the trace reporting format - streaming trace + description "Specifies the trace reporting format - streaming trace reporting or file-based trace reporting"; reference "3GPP TS 32.422 clause 5.11"; } @@ -481,46 +493,48 @@ module _3gpp-common-trace { 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 + + 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. - - The tjTraceTarget shall be public ID in case of a Management Based - Activation is done to an ScscfFunction. The tjTraceTarget shall be - cell only in case of the UTRAN cell traffic trace function. - The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell - traffic trace function.The tjTraceTarget shall be either IMSI or - IMEI(SV) if the Trace Session is activated to any of the following + The tjTraceTarget shall be public ID in case of a Management Based + Activation is done to an ScscfFunction. The tjTraceTarget shall be + cell only in case of the UTRAN cell traffic trace function. + + The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell + traffic trace function.The tjTraceTarget shall be either IMSI or + IMEI(SV) if the Trace Session is activated to any of the following ManagedEntity(ies): - - HssFunction - - MscServerFunction - - SgsnFunction - - GgsnFunction - - BmscFunction - - RncFunction - - MmeFunction - - The tjTraceTarget shall be IMSI if the Trace Session is activated to a + - HssFunction + - MscServerFunction + - SgsnFunction + - GgsnFunction + - BmscFunction + - RncFunction + - MmeFunction + + The tjTraceTarget shall be IMSI if the Trace Session is activated to a ManagedEntity playing a role of ServinGWFunction. - 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 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 + 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 or NRCellDU). - In case of management based Logged MDT, the tjTraceTarget attribute - shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated on - the specified eNB or RNC or gNB in tjTraceTarget. The tjMDTAreaScope attribute - shall carry a list of (Utrancell or E-UtranCell or NRCellDU or TA/LA/RA). + In case of management based Logged MDT, the tjTraceTarget attribute + shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated + on the specified eNB or RNC or gNB in 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/gNBs"; + 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/gNBs"; reference "3GPP TS 32.422"; } @@ -528,8 +542,8 @@ module _3gpp-common-trace { when './tjJobType = "TRACE" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type string ; mandatory true; - description "Specifies the triggering event parameter of the trace session. - The attribute is applicable only for Trace. In case this attribute is + description "Specifies the triggering event parameter of the trace session. + The attribute is applicable only for Trace. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.1 of 3GPP TS 32.422"; } @@ -550,19 +564,19 @@ module _3gpp-common-trace { key "idx"; min-elements 1; leaf idx { type uint32 ; } - - description "It specifies the area for which UE is requested to perform - measurement logging for neighbour cells which have list of frequencies. - If it is not configured, the UE shall perform measurement logging for + + description "It specifies the area for which UE is requested to perform + measurement logging for neighbour cells which have list of frequencies. + If it is not configured, the UE shall perform measurement logging for all the neighbour cells. Applicable only to NR Logged MDT."; reference "3GPP TS 32.422 clause 5.10.26."; - + leaf frequency { type string; } - + leaf cell { type string; } @@ -570,13 +584,13 @@ module _3gpp-common-trace { leaf-list tjMDTAreaScope { type string; - description "specifies MDT area scope when activates an MDT job. + description "specifies MDT area scope when activates an MDT job. - For RLF and RCEF reporting it specifies the eNB or list of eNBs where the + For RLF and RCEF reporting it specifies the eNB or list of eNBs where the RLF or RCEF reports should be collected. - List of cells/TA/LA/RA for signaling based MDT or management based Logged + List of cells/TA/LA/RA for signaling based MDT or management based Logged MDT. List of cells for management based Immediate MDT. @@ -586,48 +600,51 @@ module _3gpp-common-trace { One or list of eNBs for RLF and RCEFreporting"; reference "Clause 5.10.2 of 3GPP TS 32.422"; } - + leaf tjMDTCollectionPeriodRrmLte { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" +"24000|28000|32000|64000"; } units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M2, M3 in LTE. The attribute is applicable only - for Immediate MDT. In case this attribute is not used, it carries a + description "Specifies the collection period for collecting RRM configured + measurement samples for M2, M3 in LTE. The attribute is applicable only + for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.20 of 3GPP TS 32.422"; } leaf tjMDTCollectionPeriodRrmUmts { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|1280|2048|2560|5120|" +"10240|60000"; } units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M3, M4, M5 in UMTS. The attribute is applicable - only for Immediate MDT. In case this attribute is not used, it carries + description "Specifies the collection period for collecting RRM configured + measurement samples for M3, M4, M5 in UMTS. The attribute is applicable + only for Immediate MDT. In case this attribute is not used, it carries 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"'; + 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."; + 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 { @@ -635,35 +652,35 @@ module _3gpp-common-trace { enum A2_EVENT ; } mandatory true; - description "Specifies event types for event triggered measurement in the - case of logged NR MDT. Each trace session may configure at most one - event. The UE shall perform logging of measurements only upon certain + description "Specifies event types for event triggered measurement in the + 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."; reference "Clause 5.10.28 of 3GPP TS 32.422"; } - + leaf tjMDTEventThreshold { type int64; - description "Specifies the threshold which should trigger the reporting - in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute - is applicable only for Immediate MDT and when reportingTrigger is - configured for A2 event in LTE or 1F event or 1l event in UMTS. In + description "Specifies the threshold which should trigger the reporting + in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute + is applicable only for Immediate MDT and when reportingTrigger is + configured for A2 event in LTE or 1F event or 1l event in UMTS. In case this attribute is not used, it carries a null semantic."; reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; } - + leaf tjMDTListOfMeasurements { when './tjJobType = "IMMEDIATE_MDT"'; type int64; mandatory true; - description "It specifies the UE measurements that shall be collected in - an Immediate MDT job. The attribute is applicable only for Immediate MDT. + description "It specifies the UE measurements that shall be collected in + an Immediate MDT job. The attribute is applicable only for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "3GPP TS 32.422 clause 5.10.3"; } - + leaf tjMDTLoggingDuration { when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { @@ -671,13 +688,13 @@ module _3gpp-common-trace { } units seconds; mandatory true; - description "Specifies how long the MDT configuration is valid at the - UE in case of Logged MDT. The attribute is applicable only for - Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it + description "Specifies how long the MDT configuration is valid at the + UE in case of Logged MDT. The attribute is applicable only for + Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it carries a null semantic."; reference "5.10.9 of 3GPP TS 32.422"; } - + leaf tjMDTLoggingInterval { when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { @@ -686,87 +703,92 @@ module _3gpp-common-trace { } units milliseconds; mandatory true; - description "Specifies the periodicty for Logged MDT. The attribute is - applicable only for Logged MDT and Logged MBSFN MDT. In case this + description "Specifies the periodicty for Logged MDT. The attribute is + applicable only for Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it carries a null semantic"; reference "5.10.8 of 3GPP TS 32.422"; } - + leaf-list tjMDTMBSFNAreaList { when './tjJobType = "LOGGED_MBSFN_MDT"'; type string; min-elements 1; max-elements 8; - description "The MBSFN Area consists of a MBSFN Area ID and Carrier - Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. + description "The MBSFN Area consists of a MBSFN Area ID and Carrier + Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. This parameter is applicable only if the job type is Logged MBSFN MDT."; reference "5.10.25 of 3GPP TS 32.422"; } leaf tjMDTMeasurementPeriodLTE { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|1280|2048|2560|5120|" +"10240|60000"; } units milliseconds; mandatory true; - description "It specifies the measurement period for the Data Volume and - Scheduled IP throughput measurements for MDT taken by the eNB. - The attribute is applicable only for Immediate MDT. In case this + description "It specifies the measurement period for the Data Volume and + Scheduled IP throughput measurements for MDT taken by the eNB. + The attribute is applicable only for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.23 of 3GPP TS 32.422"; } leaf tjMDTMeasurementPeriodUMTS { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + 'or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" +"24000|28000|32000|64000"; } units milliseconds; mandatory true; - description "It specifies the measurement period for the Data Volume and - Throughput measurements for MDT taken by RNC. - The attribute is applicable only for Immediate MDT. In case this + description "It specifies the measurement period for the Data Volume and + Throughput measurements for MDT taken by RNC. + The attribute is applicable only for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.22 of 3GPP TS 32.422"; } - + leaf tjMDTMeasurementQuantity { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint64 ; mandatory true; - description "It specifies the measurements that are collected in an MDT + description "It specifies the measurements that are collected in an MDT job for a UMTS MDT configured for event triggered reporting."; reference "Clause 5.10.15 of 3GPP TS 32.422"; } - + list tjMDTPLMList { when './tjJobType = "LOGGED_MDT_ONLY"'; key "mcc mnc"; uses types3gpp:PLMNId; min-elements 1; max-elements 16; - description "It indicates the PLMNs where measurement collection, status + description "It indicates the PLMNs where measurement collection, status indication and log reporting is allowed."; reference "Clause 5.10.24 of 3GPP TS 32.422"; } leaf tjMDTPositioningMethod { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { enum GNSS; enum E_CELL_ID; } mandatory true; - description "It specifies what positioning method should be used in the + description "It specifies what positioning method should be used in the MDT job."; reference "Clause 5.10.19 of 3GPP TS 32.422"; } - + leaf tjMDTReportAmount { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' and ./tjMDTReportingTrigger = "PERIODICAL"'; type union { type uint32 { range "1|4|8|16|32|64" ; @@ -776,14 +798,14 @@ module _3gpp-common-trace { } } mandatory true; - description "It specifies the number of measurement reports that shall be - taken for periodic reporting while the UE is in connected. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In + description "It specifies the number of measurement reports that shall be + taken for periodic reporting while the UE is in connected. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.6 of 3GPP TS 32.422"; } - + leaf tjMDTReportingTrigger { when './tjJobType = "IMMEDIATE_MDT_ONLY"'; type enumeration { @@ -795,17 +817,18 @@ module _3gpp-common-trace { enum ALL_CONFIGURED_RRM_FOR_LTE; enum ALL_CONFIGURED_RRM_FOR_UMTS; } - description "It specifies whether periodic or event based measurements - should be collected. - The attribute is applicable only for Immediate MDT and when the - tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) - or M2 (only for UMTS). In case this attribute is not used, it carries + description "It specifies whether periodic or event based measurements + should be collected. + The attribute is applicable only for Immediate MDT and when the + tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) + or M2 (only for UMTS). In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.4 of 3GPP TS 32.422"; } - + leaf tjMDTReportInterval { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' and ./tjMDTReportingTrigger = "PERIODICAL"'; type uint32 { range "120|240|250|480|500|640|1000|1024|2000|2048|3000|4000|" +"5120|6000|8000|10240|12000|16000|20000|" @@ -814,14 +837,14 @@ module _3gpp-common-trace { } units milliseconds; mandatory true; - description "It specifies the interval between the periodical measurements - that shall be taken when the UE is in connected mode. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In case + description "It specifies the interval between the periodical measurements + that shall be taken when the UE is in connected mode. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In case this attribute is not used, it carries a null semantic."; reference "5.10.5 of 3GPP TS 32.422"; - } - + } + leaf tjMDTReportType { when './tjJobType = "LOGGED_MDT_ONLY"'; type enumeration { @@ -832,7 +855,7 @@ module _3gpp-common-trace { description "It specifies report type for logged NR MDT"; reference "Clause 5.10.27 of 3GPP TS 32.422"; } - + leaf tjMDTSensorInformation { type bits { bit BAROMETRIC_PRESSURE; @@ -840,56 +863,137 @@ module _3gpp-common-trace { bit UE_ORIENTATION; } default ""; - description "It specifies which sensor information shall be included in - logged NR MDT and immediate NR MDT measurement if they are available. - The following sensor measurement can be included or excluded for the UE."; + description "It specifies which sensor information shall be included in + logged NR MDT and immediate NR MDT measurement if they are available. + The following sensor measurement can be included or excluded for + the UE."; reference "Clause 5.10.29 of 3GPP TS 32.422"; } - + leaf tjMDTTraceCollectionEntityID { when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; type uint8; mandatory true; - description "It specifies the TCE Id which is sent to the UE in Logged MDT."; + description "It specifies the TCE Id which is sent to the UE in + Logged MDT."; reference "Clause 5.10.11 of 3GPP TS 32.422"; } } - + grouping TraceSubtree { - description "Contains classes that manage Tracing. - Should be used in all classes (or classes inheriting from) + description "Contains classes that manage Tracing. + Should be used in all classes (or classes inheriting from) - SubNnetwork - ManagedElement - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must + + If a YANG module wants to augment these classes/list/groupings they must augment all user classes!"; - + list TraceJob { - description "Represents the Trace Control and Configuration parameters of a + description "Represents the Trace Control and Configuration parameters of a particular Trace Job (see TS 32.421 and TS 32.422 for details). - - To activate Trace Jobs, a MnS consumer has to create TraceJob object - instances on the MnS producer. A MnS consumer can activate a Trace Job - for another MnS consumer since it is not required the value of - tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his + It can be name-contained by SubNetwork, ManagedElement, ManagedFunction + or NetworkSliceSubnet. + + To activate Trace Jobs, a MnS consumer has to create TraceJob object + instances on the MnS producer. A MnS consumer can activate a Trace Job + for another MnS consumer since it is not required the value of + tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his own. - - When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer - shall delete the corresponding TraceJob instance. - - For details of management Trace Job activation/deactivation see clause + + When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer + shall delete the corresponding TraceJob instance. + + For details of management Trace Job activation/deactivation see clause 4.1.1.1.2 of TS 32.422. - Creation and deletion of TraceJob instances by MnS consumers is optional; - when not supported, the TraceJob instances may be created and deleted by + The attribute tjJobType specifies the kind of data to collect. Dependent + on the selected type various parameters shall be available. The + attributes tjJobType, tjTraceReference, tjTraceRecordSessionReference, + tjTraceCollectionEntityAddress and tjTraceReportingFormat are mandatory + for all job types. If streaming reporting is selected for + tjTraceReportingFormat, tjStreamingTraceConsumerURI shall be present + additionally. The attribute tjPLMNTarget shall be present if trace + activation method is management based. + + For the different job types the attributes are differentiated as follows: + - In case of TRACE_ONLY additionally the following attributes shall be + available: tjListOfNeTypes, tjTraceDepth, tjTraceTarget and + tjTriggeringEvent. + + For this case the optional attribute tjListOfInterfaces allows to + specify the interfaces to be recorded. + + - In case of IMMEDIATE_MDT_ONLY additionally the following attributes + shall be available: + - tjTraceTarget + - tjMDTAnonymizationOfData, + - tjMDTListOfMeasurements, + - tjMDTCollectionPeriodRrmUmts (conditional for M3, M4 and M5 in UMTS), + - tjMDTMeasurementPeriodUMTS (conditional for M6 and M7 in UMTS), + - tjMDTCollectionPeriodRrmLte (conditional for M2 and M3 in LTE), + - tjMDTMeasurementPeriodLTE (conditional for M4 and M5 in LTE), + - tjMDTCollectionPeriodM6Lte (conditional for M6 in LTE), + - tjMDTCollectionPeriodM7Lte (conditional for M7 in LTE), + - tjMDTCollectionPeriodRrmNR (conditional for M4 and M5 in NR), + - tjMDTCollectionPeriodM6NR (conditional for M6 in NR), + - tjMDTCollectionPeriodM7NR (conditional for M7 in NR), + - tjMDTReportInterval (conditional for M1 in LTE or NR and M1/M2 in + UMTS), + - tjMDTReportAmount (conditional for M1 in LTE or NR and M1/M2 in + UMTS), + - tjMDTReportingTrigger (conditional for M1 in LTE or NR and M1/M2 in + UMTS), + - tjMDTEventThreshold (conditional for A2 event reporting or A2 event + triggered periodic reporting), + - tjMDTMeasurementQuantity (conditional for 1F event reporting). + + For this case the optional attribute tjMDTAreaScope allows to specify + the area in terms of cells or Tracking Area/Routing Area/Location area + where the MDT data collection shall take place and the optional + attributes tjMDTPositioningMethod, tjMDTSensorInformation allow to + specify the positioning methods to use or the sensor information to + include. + + - In case of IMMEDIATE_MDT_AND_TRACE both additional attributes of + TRACE_ONLY and IMMEDIATE_MDT_ONLY shall apply. + + - In case of LOGGED_MDT_ONLY additionally the following attributes + shall be available: tjTraceTarget, tjMDTAnonymizationOfData, + tjMDTTraceCollectionEntityID, tjMDTLoggingInterval, + tjMDTLoggingDuration, tjMDTReportType, + tjMDTEventListForTriggeredMeasurements. + + For this case the optional attribute tjMDTAreaScope allows to specify + the area in terms of cells or Tracking Area/Routing Area/Location area + where the MDT data collection shall take place, the optional attribute + tjMDTPLMNList allows to specify the PLMNs where measurement collection, + status indication and log reporting is allowed, the optional attribute + tjMDTAreaConfigurationForNeighCell allows to specify the area for + which UE is requested to perform measurements logging for neighbour + cells which have list of frequencies and the optional attribute + tjMDTSensorInformation allows to specify the sensor information to + include. + + - In case of RLF_REPORT_ONLY and RCEF_REPORT_ONLY additionally the + attribute tjTraceTarget shall be available, the optional attribute + tjMDTAreaScope allows to specify the eNB or list of eNBs or gNB or + list of gNBs where the reports should be collected. + + - In case of LOGGED_MBSFN_MDT additionally the following attributes + shall be available: tjMDTAnonymizationOfData, tjMDTLoggingInterval, + tjMDTLoggingDuration, tjMDTMBSFNAreaList. + + Creation and deletion of TraceJob instances by MnS consumers is optional; + when not supported, the TraceJob instances may be created and deleted by the system or be pre-installed."; - - key id; - uses top3gpp:Top_Grp ; + + key id; + uses top3gpp:Top_Grp ; container attributes { uses TraceJobGrp ; - } + } } } } \ No newline at end of file