1-- *****************************************************************
2-- CISCO-SLB-DFP-MIB.my: MIB for Server Load Balancing Clients
3--
4-- July 2008, Abhishek Tanwar
5--
6-- Copyright (c) 2008-2009 by Cisco Systems Inc.
7-- All rights reserved.
8--
9-- *****************************************************************
10
11CISCO-SLB-DFP-MIB DEFINITIONS ::= BEGIN
12
13IMPORTS
14    MODULE-IDENTITY,
15    OBJECT-TYPE,
16    NOTIFICATION-TYPE,
17    Unsigned32
18        FROM SNMPv2-SMI
19    MODULE-COMPLIANCE,
20    OBJECT-GROUP,
21    NOTIFICATION-GROUP
22        FROM SNMPv2-CONF
23    SnmpAdminString
24        FROM SNMP-FRAMEWORK-MIB
25    TEXTUAL-CONVENTION
26        FROM SNMPv2-TC
27    EntPhysicalIndexOrZero
28        FROM CISCO-TC
29    ciscoMgmt
30        FROM CISCO-SMI;
31
32
33ciscoSlbDfpMIB MODULE-IDENTITY
34    LAST-UPDATED    "200901290000Z"
35    ORGANIZATION    "Cisco Systems, Inc."
36    CONTACT-INFO
37            "Cisco Systems
38            Customer Service
39
40
41            Postal:170 W. Tasman Drive
42
43            San Jose, CA  95134
44
45            USA
46
47
48            Tel:+1 800 553-NETS
49
50
51            E-mail:cs-asngw@cisco.com"
52    DESCRIPTION
53        "This MIB reports the congestion status of the real server.
54        A server can be in congested state due to high memory
55        consumption, high CPU utilization or high number of clients
56        being served by it. Congestion can cause delay in server
57        response time.
58        DFP (Dynamic Feedback Protocol) weight values are used as a
59        metric to monitor the congestion of the server.
60
61        This MIB generates notifications when congestion state
62        is detected on the real server.
63        DFP weight is calculated as follows
64
65        BindingWeight=(Maxbindings-numberOfBindings)/Maxbindings
66
67        CPUMemWeight=(cpu + mem)/32
68
69        Weight = BindingWeight*CPUMemWeight*dfp_max_weight
70
71        Here,
72         - Maxbindings is the maximum number of bindings allowed on the
73        server.
74         - dfp_max_weight is the maximum possible value of DFP weight
75        (24).
76         - numberOfBindings is the number of mobile bindings currently
77        present with the server.
78
79        The DFP weight at which congestion is detected is configurable.
80         If the DFP weight of the system falls below this value, then
81        the system is treated as congested and notification is
82        generated."
83    REVISION        "200901290000Z"
84    DESCRIPTION
85        "Initial version of this MIB module."
86    ::= { ciscoMgmt 689 }
87
88
89ciscoSlbDfpMIBNotifs  OBJECT IDENTIFIER
90    ::= { ciscoSlbDfpMIB 0 }
91
92ciscoSlbDfpMIBObjects  OBJECT IDENTIFIER
93    ::= { ciscoSlbDfpMIB 1 }
94
95ciscoSlbDfpMIBConform  OBJECT IDENTIFIER
96    ::= { ciscoSlbDfpMIB 2 }
97
98
99cslbcDfpCongestionOnsetThreshold OBJECT-TYPE
100    SYNTAX          CslbcDfpValue
101    UNITS           "DFP weight"
102    MAX-ACCESS      read-write
103    STATUS          current
104    DESCRIPTION
105        "This object specifes when congestion occurs.  When the DFP
106        level of the system drops below this value, the system is
107        marked as congested.  This value is same for all the
108        processors."
109    DEFVAL          { 0 }
110    ::= { ciscoSlbDfpMIBObjects 1 }
111
112cslbcDfpCongestionAbateThreshold OBJECT-TYPE
113    SYNTAX          CslbcDfpValue
114    UNITS           "DFP weight"
115    MAX-ACCESS      read-write
116    STATUS          current
117    DESCRIPTION
118        "This object specifies when decongestion occurs.  When the DFP
119        level of the system rises above this value, the system is
120        marked as decongested.  This value is same for all processors."
121    DEFVAL          { 0 }
122    ::= { ciscoSlbDfpMIBObjects 2 }
123
124cslbcDfpCongestionThresholdType OBJECT-TYPE
125    SYNTAX          INTEGER  {
126                        reject(1),
127                        abort(2),
128                        redirect(3),
129                        drop(4)
130                    }
131    MAX-ACCESS      accessible-for-notify
132    STATUS          current
133    DESCRIPTION
134        "This object specifies the action taken when the congestion
135        threshold is reached.
136        The valid congestion action type are
137        o reject - Incoming registration requests will be rejected when
138        this congestion type is configured.
139        o abort - Registration request being processed will be aborted
140        when this congestion type is configured.
141        o redirect - Incoming registration requests will be redirected
142        to another Home Agent when this congestion type is configured.
143        o drop - Existing idle mobile IP bindings will be dropped when
144        this congestion type is configured.
145
146        A mobile IP binding is a record present with the server that
147        associates the home address given to the mobile node by its
148        home network with the care of address granted to it by the
149        foreign network while it is roaming.
150        The Home Agent is a real server that maintains mobile
151        bindings."
152    ::= { ciscoSlbDfpMIBObjects 3 }
153
154cslbcProcessorDfpValTable OBJECT-TYPE
155    SYNTAX          SEQUENCE OF CslbcProcessorDfpValEntry
156    MAX-ACCESS      not-accessible
157    STATUS          current
158    DESCRIPTION
159        "This table lists the DFP status for each processor for which
160        DFP weights are monitored."
161    ::= { ciscoSlbDfpMIBObjects 4 }
162
163cslbcProcessorDfpValEntry OBJECT-TYPE
164    SYNTAX          CslbcProcessorDfpValEntry
165    MAX-ACCESS      not-accessible
166    STATUS          current
167    DESCRIPTION
168        "The entry contains DFP value for one processor.
169        A row is added to this table when congestion needs to be
170        monitored on a processor. Row is deleted when congestion no
171        longer needs to be monitored."
172    INDEX           { cslbcProcessorDfpValPhysicalIndex }
173    ::= { cslbcProcessorDfpValTable 1 }
174
175CslbcProcessorDfpValEntry ::= SEQUENCE {
176        cslbcProcessorDfpValPhysicalIndex EntPhysicalIndexOrZero,
177        cslbcProcessorDfpValDescription   SnmpAdminString,
178        cslbcProcessorDfpValDfpValue      CslbcDfpValue
179}
180
181cslbcProcessorDfpValPhysicalIndex OBJECT-TYPE
182    SYNTAX          EntPhysicalIndexOrZero
183    MAX-ACCESS      not-accessible
184    STATUS          current
185    DESCRIPTION
186        "This element contains the index of the physical entity or
187        identifier of the processor for which the DFP value is
188        maintained."
189    ::= { cslbcProcessorDfpValEntry 1 }
190
191cslbcProcessorDfpValDescription OBJECT-TYPE
192    SYNTAX          SnmpAdminString
193    MAX-ACCESS      read-only
194    STATUS          current
195    DESCRIPTION
196        "This element contains the description for the congestion
197        configured on for processor."
198    ::= { cslbcProcessorDfpValEntry 2 }
199
200cslbcProcessorDfpValDfpValue OBJECT-TYPE
201    SYNTAX          CslbcDfpValue
202    MAX-ACCESS      read-only
203    STATUS          current
204    DESCRIPTION
205        "This object indicates DFP value for the processor."
206    ::= { cslbcProcessorDfpValEntry 3 }
207
208
209
210CslbcDfpValue ::= TEXTUAL-CONVENTION
211    DISPLAY-HINT    "d"
212    STATUS          current
213    DESCRIPTION
214        "This textual convention defines valid ranges DFP values
215        similar to slbDfpRealWeight object defined in CISCO-SLB-MIB."
216    SYNTAX          Unsigned32 (0..65535)
217
218cslbcSlbDfpCongestionOnset NOTIFICATION-TYPE
219    OBJECTS         {
220                        cslbcProcessorDfpValDescription,
221                        cslbcProcessorDfpValDfpValue,
222                        cslbcDfpCongestionThresholdType,
223                        cslbcDfpCongestionOnsetThreshold
224                    }
225    STATUS          current
226    DESCRIPTION
227        "The server generates this notification when value of
228        cslbcInstanceDfpValue object drops below the threshold
229        indicated
230        by the cslbcDfpCongestionOnsetThreshold object."
231   ::= { ciscoSlbDfpMIBNotifs 1 }
232
233cslbcSlbDfpCongestionAbate NOTIFICATION-TYPE
234    OBJECTS         {
235                        cslbcProcessorDfpValDescription,
236                        cslbcProcessorDfpValDfpValue,
237                        cslbcDfpCongestionAbateThreshold,
238                        cslbcDfpCongestionThresholdType
239                    }
240    STATUS          current
241    DESCRIPTION
242        "The server generates this notification when value of
243        cslbcInstanceDfpValue object rises above the threshold
244        indicated
245        by the cslbcDfpCongestionAbateThreshold object."
246   ::= { ciscoSlbDfpMIBNotifs 2 }
247-- Conformance
248
249ciscoSlbDfpMIBCompliances  OBJECT IDENTIFIER
250    ::= { ciscoSlbDfpMIBConform 1 }
251
252ciscoSlbDfpMIBGroups  OBJECT IDENTIFIER
253    ::= { ciscoSlbDfpMIBConform 2 }
254
255
256ciscoSlbDfpMIBCompliance MODULE-COMPLIANCE
257    STATUS          current
258    DESCRIPTION
259        "The compliance statement for entities which implement
260        ciscoSlbDfp MIB module."
261    MODULE          -- this module
262    MANDATORY-GROUPS {
263                        ciscoSlbDfpInstanceGroup,
264                        cslbcSlbDfpScalarsGroup,
265                        cslbcSlbDfpCongestionGroup
266                    }
267    ::= { ciscoSlbDfpMIBCompliances 1 }
268
269-- Units of Conformance
270
271ciscoSlbDfpInstanceGroup OBJECT-GROUP
272    OBJECTS         {
273                        cslbcProcessorDfpValDescription,
274                        cslbcProcessorDfpValDfpValue
275                    }
276    STATUS          current
277    DESCRIPTION
278        "This group represents the fields that identifies the processor
279        and associated DFP value."
280    ::= { ciscoSlbDfpMIBGroups 1 }
281
282cslbcSlbDfpScalarsGroup OBJECT-GROUP
283    OBJECTS         {
284                        cslbcDfpCongestionOnsetThreshold,
285                        cslbcDfpCongestionAbateThreshold,
286                        cslbcDfpCongestionThresholdType
287                    }
288    STATUS          current
289    DESCRIPTION
290        "This group represents the set of thresholds against which the
291        DFP value is compared."
292    ::= { ciscoSlbDfpMIBGroups 2 }
293
294cslbcSlbDfpCongestionGroup NOTIFICATION-GROUP
295   NOTIFICATIONS    {
296                        cslbcSlbDfpCongestionOnset,
297                        cslbcSlbDfpCongestionAbate
298                    }
299    STATUS          current
300    DESCRIPTION
301        "This groutp represents the group of notifications on Home
302        Agent."
303    ::= { ciscoSlbDfpMIBGroups 3 }
304
305END
306