1 karl 1.1.2.2 // Copyright (c) 2005 DMTF. All rights reserved.
2 // <change cr="ArchCR00066.004" type="add">Add UmlPackagePath
3 // qualifier values to CIM Schema.</change>
4 // ==================================================================
5 // CIM_REDDropperService
6 // ==================================================================
7 [Version ( "2.7.0" ),
8 UMLPackagePath ( "CIM::Network::QoS" ),
9 Description (
10 "REDDropperService represents the ability to drop network "
11 "traffic using a Random Early Detection (RED) algorithm. The "
12 "purpose of a RED algorithm is to avoid congestion (as opposed "
13 "to managing congestion). Instead of waiting for the queues to "
14 "fill up, and then dropping large numbers of packets, RED works "
15 "by monitoring average queue depth. When the queue depth "
16 "exceeds a minimum threshold, packets are randomly discarded. "
17 "These discards cause TCP to slow its transmission rate for "
18 "those connections that experienced the packet discards. Other "
19 "connections are not affected by these discards. \n"
20 "\n"
21 "A RED dropper always drops packets from a single queue, which "
22 karl 1.1.2.2 "is related to the dropper as the following Service in the "
23 "NextService association. The queue(s) examined by the drop "
24 "algorithm are found by following the "
25 "CalculationServiceForDropper association(s) to determine the "
26 "dropper\'s DropThresholdCalculationService(s), and then "
27 "following the CalculationBasedOnQueue association to find the "
28 "queue being watched by each CalculationService." )]
29 class CIM_REDDropperService : CIM_DropperService {
30
31 [Description (
32 "This is an unsigned 32-bit integer that defines the "
33 "minimum average queue depth at which packets are subject "
34 "to being dropped. (See the ThresholdUnits property to "
35 "determine the units of the threshold.) The slope of the "
36 "drop probability function is described by the "
37 "Start/StopProbability properties." ),
38 ModelCorrespondence { "CIM_REDDropperService.ThresholdUnits" }]
39 uint32 MinQueueThreshold;
40
41 [Description (
42 "This is an unsigned 32-bit integer that defines the "
43 karl 1.1.2.2 "maximum average queue length at which packets are "
44 "subject to always being dropped, regardless of the "
45 "dropping algorithm and probabilities being used. (See "
46 "the ThresholdUnits property to determine the units of "
47 "the threshold.)" ),
48 MinValue ( 0 ),
49 MaxValue ( 1000 ),
50 ModelCorrespondence { "CIM_REDDropperService.ThresholdUnits" }]
51 uint32 MaxQueueThreshold;
52
53 [Description (
54 "This is an unsigned 32-bit integer, used in conjunction "
55 "with the StopDropProbability property. The start and "
56 "stop probabilities define the slope of the drop "
57 "probability function. This function governs the rate at "
58 "which packets are subject to being dropped, as a "
59 "function of the queue length. \n"
60 "\n"
61 "This property expresses a drop probability in drops per "
62 "thousand packets. For example, the value 100 indicates a "
63 "drop probability of 100 per 1000 packets, that is, 10%. "
64 karl 1.1.2.2 "Min and max values are 0 to 1000." ),
65 Units ( "Per Thousand Packets" ),
66 ModelCorrespondence { "CIM_REDDropperService.StopProbability" }]
67 uint32 StartProbability;
68
69 [Description (
70 "This is an unsigned 32-bit integer, used in conjunction "
71 "with the StartDropProbability property. The start and "
72 "stop probabilities define the slope of the drop "
73 "probability function. This function governs the rate at "
74 "which packets are subject to being dropped, as a "
75 "function of the queue length. \n"
76 "\n"
77 "This property expresses a drop probability in drops per "
78 "thousand packets. For example, the value 100 indicates a "
79 "drop probability of 100 per 1000 packets, that is, 10%. "
80 "Min and max values are 0 to 1000." ),
81 Units ( "Per Thousand Packets" ),
82 MinValue ( 0 ),
83 MaxValue ( 1000 ),
84 ModelCorrespondence { "CIM_REDDropperService.StartProbability" }]
85 karl 1.1.2.2 uint32 StopProbability;
86
87 [Description (
88 "ThresholdUnits is an enumerated integer that identifies "
89 "the units for the Min and MaxQueueThreshold properties. "
90 "The values are either bytes (1) or packets (2)." ),
91 ValueMap { "1", "2" },
92 Values { "Bytes", "Packets" }]
93 uint16 ThresholdUnits;
94
95
96 };
|