// Copyright (c) 2005 DMTF. All rights reserved. [Version ( "2.7.0" ), UMLPackagePath ( "CIM::Network::QoS" ), Description ( "This class calculates an average depth for a queue, based on a " "smoothing weight and a sampling time interval. The latter are " "properties of this Service, describing how it operates and its " "necessary parameters. The Service does the calculation on " "behalf of a RED dropper (as indicated by the association, " "CalculationServiceForDroppper). A " "DropThresholdCalculationService is always associated to the " "single queue that it examines via the Calculation BasedOnQueue " "relationship." )] class CIM_DropThresholdCalculationService : CIM_Service { [Description ( "This property is a 32-bit unsigned integer, ranging " "between 0 and 100,000 - specified in thousandths. It " "defines the weighting of past history in affecting the " "calculation of the current average queue depth. The " "current queue depth calculation uses the inverse of this " "value as its factor, and one minus that inverse as the " "factor for the historical average. The calculation takes " "the form: \n" "average = (old_average*(1-inverse of SmoothingWeight)) \n" "+ (current_queue_depth*inverse of SmoothingWeight) \n" "Implementations may choose to limit the acceptable set " "of values to a specified set, such as powers of 2." ), Units ( "Thousandths" ), MinValue ( 0 ), MaxValue ( 100000 )] uint32 SmoothingWeight; [Description ( "This property is a 32-bit unsigned integer, and defines " "the number of nanoseconds between each calculation of " "average/smoothed queue depth. When this property is not " "specified, the CalculationService may determine an " "appropriate interval." ), Units ( "NanoSeconds" )] uint32 TimeInterval; };