summaryrefslogtreecommitdiff
path: root/MIBS/dlink/DLINKSW-POE-MIB
blob: 3cfaa46e449413b742557d96c1df6312aae3e039 (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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
-- *****************************************************************
-- DLINKSW-POE-MIB.mib : D-Link extensions to POWER-ETHERNET-MIB (PoE)
--
-- Copyright (c) 2017 D-Link Corporation, all rights reserved.
--
-- *****************************************************************
DLINKSW-POE-MIB DEFINITIONS ::= BEGIN

     IMPORTS
        OBJECT-GROUP, MODULE-COMPLIANCE, NOTIFICATION-GROUP		
            FROM SNMPv2-CONF
        MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32, Unsigned32 
            FROM SNMPv2-SMI
        DisplayString,TruthValue
            FROM SNMPv2-TC
        InetAddressType, InetAddress
            FROM INET-ADDRESS-MIB
        PortList 
            FROM Q-BRIDGE-MIB
		pethMainPseGroupIndex, pethPsePortIndex, pethPsePortShortCounter, 
        pethPsePortOverLoadCounter, pethPsePortPowerDeniedCounter
			FROM POWER-ETHERNET-MIB
        dlinkIndustrialCommon
	        FROM DLINK-ID-REC-MIB;
	    		  

    dlinkSwPoeExtMIB MODULE-IDENTITY
        LAST-UPDATED "201703150000Z"
        ORGANIZATION "D-Link Corp."
        CONTACT-INFO
                "        D-Link Corporation
                 Postal: No. 289, Sinhu 3rd Rd., Neihu District,
                         Taipei City 114, Taiwan, R.O.C
                 Tel:     +886-2-66000123
                 E-mail: tsd@dlink.com.tw
                "
        DESCRIPTION
                "A MIB module for extending POWER-ETHERNET-MIB specified in 
                RFC 3621.
                "      
        REVISION "201305290000Z"
        DESCRIPTION
                 "Initial version of this MIB module."
        REVISION "201309240000Z"
        DESCRIPTION
                 "Add dPoeGroupIfLedMode node."
        REVISION "201703150000Z"
        DESCRIPTION
                 "Add dPoeIfPdAliveCfgTable table to support PD alive check feature."
        ::= { dlinkIndustrialCommon 24 }

-- -----------------------------------------------------------------------------
    dPoeMIBNotifications OBJECT IDENTIFIER ::= { dlinkSwPoeExtMIB 0 }		
    dPoeMIBObjects       OBJECT IDENTIFIER ::= { dlinkSwPoeExtMIB 1 }
    dPoeMIBConformance   OBJECT IDENTIFIER ::= { dlinkSwPoeExtMIB 2 }

--------------------------------------------------------------------------------
    dPoeGroupCfgTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF DPoeGroupCfgEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "This table consists of a list of group configurations for PoE.
            Group means box in the stack or module in a rack. 
            For non-modular devices, the pethMainPseGroupIndex is 1.
            "
        ::= { dPoeMIBObjects 1 }
        
    dPoeGroupCfgEntry OBJECT-TYPE
        SYNTAX          DPoeGroupCfgEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "An entry contains the system configuration of the PoE on a group."
        INDEX { pethMainPseGroupIndex }
        ::= { dPoeGroupCfgTable 1 }
    
    DPoeGroupCfgEntry ::=      	  SEQUENCE {
             dPoeGroupPolicyPreempt        TruthValue,
             dPoeGroupClearIfStatistic     PortList,
             dPoeGroupIfLedMode            INTEGER    
        } 

    dPoeGroupPolicyPreempt OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object configures whether to disconnect the PD which is powered 
			with lower priority in order to release the power to the new connected 
			PD with higher priority under power shortage condition. 
			If this object is 'false', then the policy is first in first serviced. 
			Thus the new PD will not be serviced if the power budget is running out. 
			If this object is 'true', then the power provisioned to PD 
			with lower priority can be preempted to release the power to the new 
			connected PD with higher priority. "
        DEFVAL { false }
        ::= { dPoeGroupCfgEntry 1 }
        
    dPoeGroupClearIfStatistic OBJECT-TYPE
        SYNTAX          PortList
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object is used to clear the PoE statistics of pethPsePortEntry
             for specified ports.             
            "
        ::= { dPoeGroupCfgEntry 2 }

    dPoeGroupIfLedMode OBJECT-TYPE
        SYNTAX   INTEGER    {
           poeMode(1),          
           linkMode(2),
           invalid(3)
        }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "For some devices,port LED can indicate either poe status or link status.
             This object is used to configure or display port LED mode.
             poeMode(1) - indicates poe status.  
             linkMode(2) - indicates link status.

             For other devices have LEDs to indicate poe status and link status separately,
             this object only can get value of invalid(3) to mean this node is meaningless.          
            "
        ::= { dPoeGroupCfgEntry 3 }		
------------------------------------------------------------------------------- 
    dPoeGroupInfoTable OBJECT-TYPE
        SYNTAX        SEQUENCE OF DPoEGroupInfoEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
             "This table consists of a list of PoE information for groups."
        ::= { dPoeMIBObjects 2 } 
        
    dPoeGroupInfoEntry OBJECT-TYPE
        SYNTAX        DPoEGroupInfoEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
             "An entry contains the system information of the PoE on a group."
        INDEX { pethMainPseGroupIndex }
        ::= { dPoeGroupInfoTable 1 }      
        
    DPoEGroupInfoEntry ::=      	  SEQUENCE {
        dPoeGroupMaxPorts  Integer32,
        dPoeGroupHWVersion DisplayString,
        dPoeGroupSWVersion DisplayString
    }  

    dPoeGroupMaxPorts OBJECT-TYPE
        SYNTAX        Integer32
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
             "This object indicates the maximum number of ports that the group can support."
        ::= { dPoeGroupInfoEntry 1 } 
        
    dPoeGroupHWVersion OBJECT-TYPE
        SYNTAX        DisplayString
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
             "This object indicates H/W version of PoE chip."
        ::= { dPoeGroupInfoEntry 2 }  
        
    dPoeGroupSWVersion OBJECT-TYPE
        SYNTAX        DisplayString
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
             "This object indicates firmware version of PoE chip."
        ::= { dPoeGroupInfoEntry 3 }  

------------------------------------------------------------------------------------------------------
    dPoeIfObjects  OBJECT IDENTIFIER ::= { dPoeMIBObjects 3 }  
                
    dPoeIfCfgTable OBJECT-TYPE
        SYNTAX        SEQUENCE OF DPoeIfCfgEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
             "This table consists of a list of PoE configuration 
             information for ports."
        ::= { dPoeIfObjects 1 }   
       
    dPoeIfCfgEntry OBJECT-TYPE
        SYNTAX        DPoeIfCfgEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
             "An entry contains PoE configuration on a port."
        INDEX { 
            pethMainPseGroupIndex,
            pethPsePortIndex
        }
        ::= { dPoeIfCfgTable 1 }    
        
    DPoeIfCfgEntry ::=      	  SEQUENCE {
        dPoeIfState             INTEGER,
        dPoeIfMaxPower          Integer32,
        dPoeIfTimeRange         DisplayString,
        dPoeIfLegacyPdEnabled   TruthValue
    }      
        
    dPoeIfState OBJECT-TYPE
        SYNTAX      INTEGER    {
           auto(1),          
           never(2),
           static(3)
        }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object indicates the PoE state of the entry.
            auto(1) -  the port will automatically detect the PD and provision
                power to the PD. The max wattage value which can be provisioned
                to the port is determined by dPoeIfMaxPower. If dPoeIfMaxPower
                is unspecified, then the class of the PD auto determines the
                maximum wattage which can be provisioned. The PD will not be
                provisioned if it requests more wattage than the max wattage
                which is determined.               
            never(2) - indicates the port will not supply power to connected PD;
            static(3) - indicates manager pre-allocate power budget to the port
                by configuring the dPoeIfMaxPower object. The power budget is allocated
                to the port even though there is no PD connected to the port. 
                If dPoeIfMaxPower is not configured, default value is 15400mW for 802.3af 
                and 30000mW for 802.3at."
        DEFVAL {auto}
        ::= { dPoeIfCfgEntry 1 }         

    dPoeIfMaxPower OBJECT-TYPE
        SYNTAX          Integer32( 0 | 1000..30000)
        UNITS           "milliwatts"
        MAX-ACCESS      read-write
        STATUS           current
        DESCRIPTION
              "This object indicates the max wattage value which can 
               be provisioned to the port.
               Note: This object is valid only while the dPoeIfState 
               object is configured as auto or static."
        ::= { dPoeIfCfgEntry 2 }         
        
    dPoeIfTimeRange OBJECT-TYPE
        SYNTAX          DisplayString (SIZE (0..32))
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
              "This object indicates the name of time-range profile to delineate
               the activation period.
               A zero length string indicates the time-range is not specified.
               Note: This object is valid only while the dPoeIfState is 'auto'."		
        ::= { dPoeIfCfgEntry 3 }
        
    dPoeIfLegacyPdEnabled OBJECT-TYPE
        SYNTAX        TruthValue
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION
            "This object indicates the state of legacy PD support."
        DEFVAL { false }
        ::= { dPoeIfCfgEntry 4 }          

------------------------------------------------------------------------------------------------------
    dPoeIfInfoObjects  OBJECT IDENTIFIER ::= { dPoeIfObjects 2 }

    dPoeIfStatusTable OBJECT-TYPE
        SYNTAX        SEQUENCE OF DPoeIfStatusEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
             "This table consists of a list of PoE status for ports."
        ::= { dPoeIfInfoObjects 1 } 
                         
    dPoeIfStatusEntry  OBJECT-TYPE
        SYNTAX          DPoeIfStatusEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
             "An entry consists of PoE status for a port."
        INDEX { pethMainPseGroupIndex,pethPsePortIndex }
        ::= { dPoeIfStatusTable 1 }  
        
    DPoeIfStatusEntry ::=      	  SEQUENCE {
        dPoeIfDetectStatus     INTEGER,
        dPoeIfFaultyType       INTEGER
    } 

    dPoeIfDetectStatus OBJECT-TYPE
        SYNTAX          INTEGER             {
            disabled(1),
            searching(2),
            requesting(3),
            delivering(4),
            faulty(5)
        }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
             "This object indicates the operational status of the port PD detection.
             disabled(1) - PSE function is disabled.
             searching(2) - Remote PD is not connected.
             requesting(3) - Remote PD is inserted, but the PSE doesn't provide power yet.
             delivering(4) - Remote PD is now powering by PoE system.
             faulty(5) - Device detection or a powered device is in a faulty state.
             "
        ::= { dPoeIfStatusEntry 1 }  
            
    dPoeIfFaultyType OBJECT-TYPE
        SYNTAX        INTEGER {     
            notApplicable(0),
            mpsAbsent(1),
            pdShort(2),
            overload(3),
            powerDenied(4),
            thermalShutdown(5),
            startupFailure(6),
            classificationFailure(7)
        }
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
            "This object indicates the specific faulty type. It is meaningful
            only when dPoeIfDetectStatus object is 'faulty'.
            notApplicable(0) - indicates this object is meaningless, e.g. the 
                dPoeIfDetectStatus is not 'faulty'.
            mpsAbsent(1) - indicates MPS(Maintain Power Signature) Absent
            pdShort(2) - indicates PD Short
            overload(3) - indicates Overload
            powerDenied(4) - indicates Power Denied
            thermalShutdown(5)- indicates Thermal Shutdown
            startupFailure(6) -  indicates Startup Failure
            classificationFailure(7) - indicates Classification Failure(IEEE 802.3at)
            "
        ::= { dPoeIfStatusEntry 2 }          
        
------------------------------------------------------------------------------------------------------     
    dPoeIfMeasurementTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF DPoEIfMeasurementEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "This table consists of a list of POE measurement 
            information for ports."
        ::= { dPoeIfInfoObjects 2 } 
                         
    dPoeIfMeasurementEntry  OBJECT-TYPE
        SYNTAX          DPoEIfMeasurementEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
             "An entry consists of PoE measurement information of a port."
        INDEX { 
            pethMainPseGroupIndex,
            pethPsePortIndex 
        }
        ::= { dPoeIfMeasurementTable 1 }  
        
    DPoEIfMeasurementEntry ::=     	  SEQUENCE {
        dPoeIfVoltage           Integer32,
        dPoeIfCurrent           Integer32,
        dPoeIfTemperature       Integer32,
        dPoeIfPower             Integer32
    } 

    dPoeIfVoltage OBJECT-TYPE
        SYNTAX        Integer32
        UNITS         "millivolts"
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
            "This object indicates the voltage of the port in millivolts."
        ::= { dPoeIfMeasurementEntry 1 }  
 
     dPoeIfCurrent OBJECT-TYPE
        SYNTAX        Integer32
        UNITS         "milliamperes"
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
             "This object indicates the current of port in milliamperes."
        ::= { dPoeIfMeasurementEntry 2 }  
 
     dPoeIfTemperature OBJECT-TYPE
        SYNTAX        Integer32
        UNITS         "Degree Centigrade"
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
             "This object indicates the temperature of port in degrees centigrade."
        ::= { dPoeIfMeasurementEntry 3 }  
 
     dPoeIfPower OBJECT-TYPE
        SYNTAX        Integer32
        MAX-ACCESS    read-only
        STATUS        current
        DESCRIPTION
             "This object indicates consumption power of port in milliwatts."
        ::= { dPoeIfMeasurementEntry 4 }  

---------------------------------------------------------------------------------
-- Add a new table for SNR-20170223-001(ASV2.1)(PD alive check)
---------------------------------------------------------------------------------
   dPoeIfPdAliveCfgTable OBJECT-TYPE
        SYNTAX        SEQUENCE OF DPoeIfPdAliveCfgEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
             "This table consists of a list of configuration for the PD
             alive check function for ports.
             The PD alive check feature provides the solution for 
             PD device that has the stop working or no response 
             problem via Ping mechanism.
             Detailed Process:
             The detailed processes are described as follows:
             1. The system  needs to  periodically monitor the 
              specific PD by using Ping function. If there is no 
              response, system takes one of the following actions:
              (1) Reset: Switch resets (disable then enable) PoE 
                  power on the port which connects to a PD under monitoring.
              (2) Notify: Switch sends logs and traps to notify the administrator.
              (3) Both: Switch sends logs and traps, and resets the PoE port power.
             2. The system should implement the retry  mechanism to check 
              PD aliveness, hence the system will reset the PoE port power 
              feeding after the retry by using Ping without any response from a PD.
             3. If the action is Reset or  Both, the system needs 
              to wait for PD recovery from rebooting and then executes 
              the Ping function again. Besides, the waiting time can 
              be configured by users.
             4. If PoE schedule (time range) function is configured 
              on the port which enables the PD Alive Check  function, 
              the time range function has the top priority, and 
              therefore PD Alive Check function will not work 
              while PoE time range function is still active.
             5. This function only takes effect on PoE enabled 
              port with power feeding.
             
             Note: It is required to setup IP settings properly that 
              the PD can be reachable for Ping, otherwise this function 
              cannot work as expected.
             
              Limitation
             1. Support Ping Function: If the PD does not support ICMP, 
              this function cannot work normally.
             2. Direct-Connected PD: The Reset Action can only work on 
              the direct-connected PD. If the PD is not connected directly, 
              the Reset Action may not work as expected.
             3. PD Also Acts as PSE: If the direct-connected PD is also a PSE, 
              all the next level PDs connect to this PSE will be power cycling 
              whenever PD Alive Check function takes effect on 'Reset' or 'Both' Action." 
        ::= { dPoeIfObjects 3 }   
       
    dPoeIfPdAliveCfgEntry OBJECT-TYPE
        SYNTAX        DPoeIfPdAliveCfgEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
             "An entry contains configuration for PD alive check on a port."
        INDEX { 
            pethMainPseGroupIndex,
            pethPsePortIndex
        }
        ::= { dPoeIfPdAliveCfgTable 1 }    
        
    DPoeIfPdAliveCfgEntry ::=      	  SEQUENCE {
        dPoeIfPdAliveCfgState                 INTEGER,
        dPoeIfPdAliveCfgPdIpType          InetAddressType,
        dPoeIfPdAliveCfgPdIpAddr              InetAddress,
        dPoeIfPdAliveCfgInterval              Unsigned32,
        dPoeIfPdAliveCfgRetry            Unsigned32,
        dPoeIfPdAliveCfgWaitTime           Unsigned32,
        dPoeIfPdAliveCfgAction                INTEGER
    }      
        
    dPoeIfPdAliveCfgState OBJECT-TYPE
        SYNTAX      INTEGER    {
           enabled(1),          
           disabled(2)
        }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object indicates the the PD alive function sate.
             enabled - Enable the PD alive check function
             disabled - Disable the PD alive check function.

"          
        DEFVAL { disabled }
        ::= { dPoeIfPdAliveCfgEntry 1 }         

    dPoeIfPdAliveCfgPdIpType OBJECT-TYPE
        SYNTAX          InetAddressType
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object indicates the IP address type of the target PD."
        ::= { dPoeIfPdAliveCfgEntry 2 }
    
    dPoeIfPdAliveCfgPdIpAddr OBJECT-TYPE
        SYNTAX          InetAddress
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object indicates the IP address of the target PD."
        ::= { dPoeIfPdAliveCfgEntry 3 }

    dPoeIfPdAliveCfgInterval OBJECT-TYPE
        SYNTAX          Unsigned32 (10..300)
        UNITS           "seconds"
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
              "This object indicates the time interval for system 
               issues ping request to detect the target PD.
               The valid range for interval time is 10s to 300s."
        DEFVAL { 30 }
        ::= { dPoeIfPdAliveCfgEntry 4 }         
        
    dPoeIfPdAliveCfgRetry OBJECT-TYPE
        SYNTAX          Unsigned32 (0..5)
        UNITS           "times"
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
              "This object indicates the retry count of ping 
               request when PD has no response.
               The valid range for retry count is 0 to 5 times."
        DEFVAL { 2}
        ::= { dPoeIfPdAliveCfgEntry 5 }    


    dPoeIfPdAliveCfgWaitTime OBJECT-TYPE
        SYNTAX          Unsigned32 (30..300)
        UNITS           "seconds"
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
              "This object indicates the waiting time for PD reboot.
              The valid range for waiting time is 30s to 300s."
        DEFVAL { 90 }
        ::= { dPoeIfPdAliveCfgEntry 6 }    

    dPoeIfPdAliveCfgAction OBJECT-TYPE
        SYNTAX          INTEGER {
           reset(1),          
           notify(2),
           both(3)
        }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
              "This object indicates the action when PD doesn't reply the ping request.
               reset- System will reset the PoE port state .
               notify- System will send log and trap to notify the administrator.
               both- System will send log and trap first and reset the PoE port state."
        DEFVAL { both }
        ::= { dPoeIfPdAliveCfgEntry 7 }    
 
-- *****************************************************************************
-- MIB Notifications 
-- *****************************************************************************
    dPoeIfPowerDeniedNotification  NOTIFICATION-TYPE
         OBJECTS    { pethPsePortPowerDeniedCounter }
         STATUS      current
         DESCRIPTION
             " This Notification indicates if PSE state diagram enters
               the state POWER_DENIED.
               At least 500 msec must elapse between notifications
               being emitted by the same object instance."
          ::= { dPoeMIBNotifications 1 }  

    dPoeIfPowerOverLoadNotification  NOTIFICATION-TYPE
         OBJECTS     { pethPsePortOverLoadCounter }
         STATUS      current
         DESCRIPTION
             " This Notification indicates if PSE state diagram enters
               the state ERROR_DELAY_OVER.
               At least 500 msec must elapse between notifications
               being emitted by the same object instance."
          ::= { dPoeMIBNotifications 2 } 
     
    dPoeIfPowerShortCircuitNotification  NOTIFICATION-TYPE
         OBJECTS     { pethPsePortShortCounter }
         STATUS      current
         DESCRIPTION
             " This Notification indicates if PSE state diagram enters
               the state ERROR_DELAY_SHORT.
               At least 500 msec must elapse between notifications
               being emitted by the same object instance."
          ::= { dPoeMIBNotifications 3 }

    dPoeIfPdAliveFailOccurNotification  NOTIFICATION-TYPE
         OBJECTS  { pethMainPseGroupIndex,
                    pethPsePortIndex,
                    dPoeIfPdAliveCfgPdIpType,
                    dPoeIfPdAliveCfgPdIpAddr
                  }
         STATUS      current
         DESCRIPTION
             " This Notification indicates if the PD device has 
               the stop working or no response problem."
          ::= { dPoeMIBNotifications 4 }
  
-- *****************************************************************************
-- MIB Conformance statements
-- *****************************************************************************
    dPoeMIBCompliances  OBJECT IDENTIFIER  ::= { dPoeMIBConformance 1 }

    dPoeMIBGroups  OBJECT IDENTIFIER  ::= { dPoeMIBConformance 2 }   
    dPoeMIBCompliance MODULE-COMPLIANCE
        STATUS          current
        DESCRIPTION
            "The compliance statement for entities which implement the
             DLINKSW-POE-MIB."
        MODULE          -- this module
        MANDATORY-GROUPS { 
            dPoeGroupCfgGroup,
            dPoeIfCfgGroup,
            dPoeGroupInfoGroup,
            dPoeIfInfoGroup,
            dPoeIfErrorStateNotificationGroup,
            dPoeIfPdAliveCfgGroup
        } 
                        
        ::= { dPoeMIBCompliances 1 }    
  
    dPoeGroupCfgGroup OBJECT-GROUP
        OBJECTS {
             dPoeGroupPolicyPreempt,
             dPoeGroupIfLedMode 
        }
        STATUS current
        DESCRIPTION
            "A collection of objects to configure or display the group-specific PoE information."
        ::= { dPoeMIBGroups 1 }   

    dPoeIfCfgGroup OBJECT-GROUP
        OBJECTS {
             dPoeGroupClearIfStatistic,
             dPoeIfState,
             dPoeIfMaxPower,
             dPoeIfTimeRange,
             dPoeIfLegacyPdEnabled
        }
        STATUS current
        DESCRIPTION
            "A collection of objects configure or display the ports information."
        ::= { dPoeMIBGroups 2 } 	 
	    
    dPoeGroupInfoGroup OBJECT-GROUP
        OBJECTS {
             dPoeGroupMaxPorts,
             dPoeGroupHWVersion,
             dPoeGroupSWVersion 
        }
        STATUS current
        DESCRIPTION
            "A collection of objects display the groups information."
        ::= { dPoeMIBGroups 3 } 	

    dPoeIfInfoGroup OBJECT-GROUP
        OBJECTS {
             dPoeIfDetectStatus,
             dPoeIfFaultyType,
             dPoeIfVoltage,
             dPoeIfCurrent,
             dPoeIfTemperature,
             dPoeIfPower
        }
        STATUS current
        DESCRIPTION
            "A collection of objects display the ports information."
        ::= { dPoeMIBGroups 4 } 

    dPoeIfErrorStateNotificationGroup NOTIFICATION-GROUP
     NOTIFICATIONS { dPoeIfPowerDeniedNotification,  
                      dPoeIfPowerOverLoadNotification,
                      dPoeIfPowerShortCircuitNotification
		    }
    STATUS           current
    DESCRIPTION  "A collection of objects provides ports error state notifications."
      ::= { dPoeMIBGroups 5 }	 

    dPoeIfPdAliveCfgGroup OBJECT-GROUP
        OBJECTS {
                 dPoeIfPdAliveCfgState,
                 dPoeIfPdAliveCfgPdIpType,
                 dPoeIfPdAliveCfgPdIpAddr,
                 dPoeIfPdAliveCfgInterval,
                 dPoeIfPdAliveCfgRetry,
                 dPoeIfPdAliveCfgWaitTime,
                 dPoeIfPdAliveCfgAction
         }
        STATUS current
        DESCRIPTION
            "A collection of objects display the PD alive check configuration."
        ::= { dPoeMIBGroups 6 }
  
END