summaryrefslogtreecommitdiffstats
path: root/Schemas/CIM228/DMTF/Network/CIM_REDDropperService.mof
blob: 23877dd86393879f9448e26d74ab8c43635a7f8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
// Copyright (c) 2005 DMTF.  All rights reserved.
// <change cr="ArchCR00066.004" type="add">Add UmlPackagePath
// qualifier values to CIM Schema.</change>
// ==================================================================
//  CIM_REDDropperService 
// ==================================================================
   [Version ( "2.7.0" ), 
    UMLPackagePath ( "CIM::Network::QoS" ), 
    Description ( 
       "REDDropperService represents the ability to drop network "
       "traffic using a Random Early Detection (RED) algorithm. The "
       "purpose of a RED algorithm is to avoid congestion (as opposed "
       "to managing congestion). Instead of waiting for the queues to "
       "fill up, and then dropping large numbers of packets, RED works "
       "by monitoring average queue depth. When the queue depth "
       "exceeds a minimum threshold, packets are randomly discarded. "
       "These discards cause TCP to slow its transmission rate for "
       "those connections that experienced the packet discards. Other "
       "connections are not affected by these discards. \n"
       "\n"
       "A RED dropper always drops packets from a single queue, which "
       "is related to the dropper as the following Service in the "
       "NextService association. The queue(s) examined by the drop "
       "algorithm are found by following the "
       "CalculationServiceForDropper association(s) to determine the "
       "dropper\'s DropThresholdCalculationService(s), and then "
       "following the CalculationBasedOnQueue association to find the "
       "queue being watched by each CalculationService." )]
class CIM_REDDropperService : CIM_DropperService {

      [Description ( 
          "This is an unsigned 32-bit integer that defines the "
          "minimum average queue depth at which packets are subject "
          "to being dropped. (See the ThresholdUnits property to "
          "determine the units of the threshold.) The slope of the "
          "drop probability function is described by the "
          "Start/StopProbability properties." ), 
       ModelCorrespondence { "CIM_REDDropperService.ThresholdUnits" }]
   uint32 MinQueueThreshold;

      [Description ( 
          "This is an unsigned 32-bit integer that defines the "
          "maximum average queue length at which packets are "
          "subject to always being dropped, regardless of the "
          "dropping algorithm and probabilities being used. (See "
          "the ThresholdUnits property to determine the units of "
          "the threshold.)" ), 
       MinValue ( 0 ), 
       MaxValue ( 1000 ), 
       ModelCorrespondence { "CIM_REDDropperService.ThresholdUnits" }]
   uint32 MaxQueueThreshold;

      [Description ( 
          "This is an unsigned 32-bit integer, used in conjunction "
          "with the StopDropProbability property. The start and "
          "stop probabilities define the slope of the drop "
          "probability function. This function governs the rate at "
          "which packets are subject to being dropped, as a "
          "function of the queue length. \n"
          "\n"
          "This property expresses a drop probability in drops per "
          "thousand packets. For example, the value 100 indicates a "
          "drop probability of 100 per 1000 packets, that is, 10%. "
          "Min and max values are 0 to 1000." ), 
       Units ( "Per Thousand Packets" ), 
       ModelCorrespondence { "CIM_REDDropperService.StopProbability" }]
   uint32 StartProbability;

      [Description ( 
          "This is an unsigned 32-bit integer, used in conjunction "
          "with the StartDropProbability property. The start and "
          "stop probabilities define the slope of the drop "
          "probability function. This function governs the rate at "
          "which packets are subject to being dropped, as a "
          "function of the queue length. \n"
          "\n"
          "This property expresses a drop probability in drops per "
          "thousand packets. For example, the value 100 indicates a "
          "drop probability of 100 per 1000 packets, that is, 10%. "
          "Min and max values are 0 to 1000." ), 
       Units ( "Per Thousand Packets" ), 
       MinValue ( 0 ), 
       MaxValue ( 1000 ), 
       ModelCorrespondence { "CIM_REDDropperService.StartProbability" }]
   uint32 StopProbability;

      [Description ( 
          "ThresholdUnits is an enumerated integer that identifies "
          "the units for the Min and MaxQueueThreshold properties. "
          "The values are either bytes (1) or packets (2)." ), 
       ValueMap { "1", "2" }, 
       Values { "Bytes", "Packets" }]
   uint16 ThresholdUnits;


};