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
|
NSCRTV-EPON-ALARM-MGM-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,Counter32, Unsigned32, TimeTicks
FROM SNMPv2-SMI
DateAndTime, MacAddress, TimeStamp, RowStatus, TruthValue, DisplayString, TEXTUAL-CONVENTION
FROM SNMPv2-TC
EponDeviceIndex, EponCardIndex, EponPortIndex, EponAlarmCode, EponAlarmInstance, EponSeverityType,
AutoNegotiationTechAbility, TAddress, EponStats15MinRecordType, EponStats24HourRecordType, EponStatsThresholdType
FROM NSCRTV-EPONEOC-EPON-MIB
eponAlarmTree, eponTrapObjectGroup, eponAlarmObjGroup, eponManagementObjGroup
FROM NSCRTV-EPONEOC-EPON-MIB;
--------------------------------------------------------------------------------
-- AlarmManagementObjects[告警管理项](1.3.6.1.4.1.17409.2.2.11)
--------------------------------------------------------------------------------
eponNotifications OBJECT IDENTIFIER ::= { eponTrapObjectGroup 1 }
eponAlarmNotification NOTIFICATION-TYPE
OBJECTS { eponTrapSequenceNumber, eponTrapOccurTime, eponTrapCode, eponTrapInstance,
eponTrapSeverity, eponTrapCorrelationId, eponTrapAdditionalText
}
STATUS current
DESCRIPTION
"Alarm TRAP definition"
::= { eponNotifications 1 }
eponEventNotification NOTIFICATION-TYPE
OBJECTS { eponTrapSequenceNumber, eponTrapOccurTime, eponTrapCode, eponTrapInstance,
eponTrapAdditionalText
}
STATUS current
DESCRIPTION
"Event TRAP definition"
::= { eponNotifications 2 }
eponTrapObjects OBJECT IDENTIFIER ::= { eponTrapObjectGroup 2 }
eponTrapInstance OBJECT-TYPE
SYNTAX EponAlarmInstance
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"Alarm instance, indicates the detailed managed object, which
detects faults.
"
::= { eponTrapObjects 1 }
eponTrapCorrelationId OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The unique sequence number for the alarm to be cleared, for alarm clearing.
Set to 0 for alarm reporting"
::= { eponTrapObjects 2 }
eponTrapAdditionalText OBJECT-TYPE
SYNTAX OCTET STRING ( SIZE (0..256) )
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"Additional info to the alarm, for further desciption of the
alarm. The format of it shall be related to each kind alarm
defined in alarm reference table"
::= { eponTrapObjects 3 }
eponTrapCode OBJECT-TYPE
SYNTAX EponAlarmCode
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"
告警代码,见附录C"
::= { eponTrapObjects 4 }
eponTrapSeverity OBJECT-TYPE
SYNTAX EponSeverityType
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"
告警严重程度。"
::= { eponTrapObjects 5 }
eponTrapOccurTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"
告警产生时间。"
::= { eponTrapObjects 6 }
eponTrapSequenceNumber OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"
A unique sequence number for each trap generated by node. The sequence
number shall be reset to 1 when node restarts.
The alarm sequence number shall be independent of the event sequence
number. Each shall be self-governed.
--------------------------------------------------------------------------------
The sequence ID of alarm shall be assigned from the order of transmitting
trap to the NMS, instead of the order of alarm occurance. Therefore the NMS
will receive the continuous sequence ID.
1. When device is in active/standby mode, sequence ID shall be synchronized
between active and standby control module.
2. When control module switchover takes place, the current sequence ID shall
keep the synchronized value.
3. When device restarts, sequence ID shall start from 1.
4. It shall be increased per alarm trap including both alarm raising and clear.
5. Non-zero value shall be used. When reaches the maximum number, it shall
roll back to 1.
--------------------------------------------------------------------------------
The sequence ID of event shall be assigned from the order of transmitting
trap to the NMS. Therefore the NMS will receive the continuous sequence ID.
1. When device is in active/standby mode, sequence ID shall be synchronized
between active and standby control module.
2. When control module switchover takes place, the current sequence ID shall
keep the synchronized value.
3. When device restarts, sequence ID shall start from 1.
4. It shall be increased per event trap.
5. Non-zero value shall be used. When reaches the maximum number, it shall
roll back to 1.
"
::= { eponTrapObjects 7 }
activeAlarmTable OBJECT-TYPE
SYNTAX SEQUENCE OF ActiveAlarmEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Active alarm table
The device shall maintain this table, to maintain all outstanding
(not cleared) alarms generated by the device, including:
1. Not hit device local alarm filter. That means had been reported to
trap receiver (NMS or EMS)
2. Hit local alarm filter. That means not trap is reported to trap receiver
for the alarm.
The device shall maintain two numbers:
1. Alarm sequence number: As described in eponTrapSequenceNumber, it is initially
set to 1 when device restarts, increases per trap reported to trap receiver,
and rollover to 1 once it reaches the maximum value.
From NMS's view, traps received from a nodes will be consecutive, by identifying
the alarm sequence number carried in alarm trap. If breaks, means some trap
may be lost, since packet loss between NMS and NE.
2. Alarm raising number: This is maintained by NE internally and does not intend for
being acknowledged by external manage system. It is designed to uniquely indentify
each alarm raised by NE, excluding duplicates. Once one alarm raised, despite
whether it is hit by alarm filter, NE shall assign a raising number to it. So, it
major functionality is to uniquely identify alarms hit NE local alarm filter, since
this kindly alarm will not be reported to NMS, and hence no alarm sequence number
is assigned to it.
It is initially set to 1 when device restarts, increases per alarm generation (
excluding duplicates), and rollover to 1 once it reaches the maximum value.
FUNCTION DESCRIPTION OF ACTIVE ALARM TABLE:
ALARM RAISING
----------------------
1. When NE detects one fault and associates to one kind of alarm, it shall check whether
there is same alarm in active alarm table, which is indexed by alarm code and alarm
instance. If hits, it means duplicates, update the corresponding entry of the table.
Otherwise,
2. The alarm is not a duplicate. Assign an alarm raising number. Check whether the
alarm hits local alarm filters. If hits, set alarm sequence number to 0.
Create an entry into active alarm table. Otherwise,
3. Assign an alarm sequence number to the alarm. Create an entry into active alarm
table. Report the alarm trap to all trap receivers.
ALARM CLEARING
----------------------
1. When NE detects one fault is cleared and associates to one kind of alarm, it shall
check whether there is corresponding alarm in active alarm table, which is indexed
by alarm code and alarm instance. If no hit, escape this clear event. Upon a hit,
if the alarm sequence number is 0, move the active alarm entry to history alarm
table and update the corresponding fields. At this case, historyAlarmCorrelationId
and historyAlarmSeqNum will be set to 0.
Otherwise,
2. Assign an alarm sequence number to the clear trap. Report the alarm clear trap to
all trap receivers. Move the active alarm entry to history alarm table and update
the corresponding fields. At this case, activeAlarmSeqNum shall be copied to
historyAlarmCorrelationId, and historyAlarmSeqNum shall be set to the new alarm
sequence number for the clear trap.
ALARM SYNCHRONIZATION BETWEEN NE AND NMS
---------------------------------------------
1. Once NMS finds the alarm sequence number in reported alarm traps is not continuous,
it will walk active or history alarm table of the NE for the lost seuqence number.
"
::= { eponAlarmObjGroup 1 }
activeAlarmEntry OBJECT-TYPE
SYNTAX ActiveAlarmEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
""
INDEX { activeAlarmSeqNum, activeAlarmRaisingNumber }
::= { activeAlarmTable 1 }
ActiveAlarmEntry ::=
SEQUENCE {
activeAlarmSeqNum
Unsigned32,
activeAlarmCode
EponAlarmCode,
activeAlarmInstance
EponAlarmInstance,
activeAlarmSeverity
EponSeverityType,
activeAlarmRaisingNumber
Unsigned32,
activeAlarmFirstOccurTime
DateAndTime,
activeAlarmLastOccurTime
DateAndTime,
activeAlarmRepeats
Counter32,
activeAlarmConfirm
TruthValue,
activeAlarmAdditionalText
OCTET STRING
}
activeAlarmSeqNum OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Alarm sequence number
The definition refered to the description of activeAlarmTable"
::= { activeAlarmEntry 1 }
activeAlarmCode OBJECT-TYPE
SYNTAX EponAlarmCode
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
告警代码,见附录C
"
::= { activeAlarmEntry 2 }
activeAlarmInstance OBJECT-TYPE
SYNTAX EponAlarmInstance
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Alarm instance, indicates the detailed managed object"
::= { activeAlarmEntry 3 }
activeAlarmSeverity OBJECT-TYPE
SYNTAX EponSeverityType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
告警严重程度。"
::= { activeAlarmEntry 4 }
activeAlarmRaisingNumber OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Alarm raising number.
The definition refered to the description of activeAlarmTable"
::= { activeAlarmEntry 5 }
activeAlarmFirstOccurTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
告警初始发生的时间
The time stamp when alarm occurs, which triggered to create the
active alarm entry."
::= { activeAlarmEntry 6 }
activeAlarmLastOccurTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
The time stamp when alarm occurs, where the alarm is duplicated
with existed active alarm entry, and it was the latest one. "
::= { activeAlarmEntry 7 }
activeAlarmRepeats OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of repeated alarms for this active alarm entry"
::= { activeAlarmEntry 8 }
activeAlarmConfirm OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"
告警确认
Node shall not clear an active alarm, upon the confirmation
of the active alarm, but just mark an acknowledged status.
An alarm will only be cleared once the clear condition hits."
::= { activeAlarmEntry 9 }
activeAlarmAdditionalText OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..256))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Additional info to the alarm, for further desciption of the
alarm. The format of it shall be related to each kind alarm
defined in alarm reference table"
::= { activeAlarmEntry 10 }
historyAlarmTable OBJECT-TYPE
SYNTAX SEQUENCE OF HistoryAlarmEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"History alarm table.
The device shall maintain this table, to maintain all cleared
alarms generated by the device, including:
1. Not hit device local alarm filter. That means had been reported to
trap receiver (NMS or EMS)
2. Hit local alarm filter. That means not trap is reported to trap receiver
for the alarm.
The number of history alarm enteries in the table could be device-specific.
However, it is recommended no less than 200 entries.
The detailed function definition refers to that given in description of
activeAlarmTable.
"
::= { eponAlarmObjGroup 2 }
historyAlarmEntry OBJECT-TYPE
SYNTAX HistoryAlarmEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
""
INDEX { historyAlarmSeqNum, historyAlarmRaisingNumber }
::= { historyAlarmTable 1 }
HistoryAlarmEntry ::=
SEQUENCE {
historyAlarmSeqNum
Unsigned32,
historyAlarmCode
EponAlarmCode,
historyAlarmInstance
EponAlarmInstance,
historyAlarmSeverity
EponSeverityType,
historyAlarmRaisingNumber
Unsigned32,
historyAlarmFirstOccurTime
DateAndTime,
historyAlarmLastOccurTime
DateAndTime,
historyAlarmRepeats
Counter32,
historyAlarmCorrelationId
Unsigned32,
historyAlarmAdditionalText
OCTET STRING,
historyAlarmClearTime
DateAndTime
}
historyAlarmSeqNum OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Alarm sequence number
The definition refered to the description of historyAlarmTable"
::= { historyAlarmEntry 1 }
historyAlarmCode OBJECT-TYPE
SYNTAX EponAlarmCode
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
告警代码,见附录C
"
::= { historyAlarmEntry 2 }
historyAlarmInstance OBJECT-TYPE
SYNTAX EponAlarmInstance
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Alarm instance, indicates the detailed managed object"
::= { historyAlarmEntry 3 }
historyAlarmSeverity OBJECT-TYPE
SYNTAX EponSeverityType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
告警严重程度。"
::= { historyAlarmEntry 4 }
historyAlarmRaisingNumber OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Alarm raising number.
The definition refered to the description of historyAlarmTable"
::= { historyAlarmEntry 5 }
historyAlarmFirstOccurTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
告警初始发生的时间
The time stamp when alarm occurs, which triggered to create the
history alarm entry."
::= { historyAlarmEntry 6 }
historyAlarmLastOccurTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
The time stamp when alarm occurs, where the alarm is duplicated
with existed history alarm entry, and it was the latest one. "
::= { historyAlarmEntry 7 }
historyAlarmRepeats OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of repeated alarms for this history alarm entry"
::= { historyAlarmEntry 8 }
historyAlarmCorrelationId OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"It is the corresponding sequence ID of the alarm that to
be cleared. "
::= { historyAlarmEntry 9 }
historyAlarmAdditionalText OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..256))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Additional info to the alarm, for further desciption of the
alarm. The format of it shall be related to each kind alarm
defined in alarm reference table"
::= { historyAlarmEntry 10 }
historyAlarmClearTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Define when the alarm was cleared"
::= { historyAlarmEntry 11 }
eventLogTable OBJECT-TYPE
SYNTAX SEQUENCE OF EventLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Event log table.
The device shall maintain this table, to maintain all events had
be reported by the device, including:
1. The event table shall be saved in RAM memory and shall be flushed
when OLT restarts.
2. The event log table shall support no less than 200 entries. When
the event log table is full, the oldest entry in the table shall be
removed first.
3. When OLT is configured with control module redundancy, active controller
shall automatically synchronize the events in event log table b/w active
and standby.
"
::= { eponAlarmObjGroup 3 }
eventLogEntry OBJECT-TYPE
SYNTAX EventLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
""
INDEX { eventSeqNum }
::= { eventLogTable 1 }
EventLogEntry ::=
SEQUENCE {
eventSeqNum
Unsigned32,
eventCode
EponAlarmCode,
eventInstance
EponAlarmInstance,
eventOccurTime
DateAndTime,
eventAdditionalText
OCTET STRING,
}
eventSeqNum OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Event sequence number
The definition refered to the description of eponTrapSequenceNumber"
::= { eventLogEntry 1 }
eventCode OBJECT-TYPE
SYNTAX EponAlarmCode
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
事件代码,见附录C
"
::= { eventLogEntry 2 }
eventInstance OBJECT-TYPE
SYNTAX EponAlarmInstance
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Event instance, indicates the detailed managed object"
::= { eventLogEntry 3 }
eventOccurTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"
The time stamp when event occurs"
::= { eventLogEntry 4 }
eventAdditionalText OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..256))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Additional info to the event, for further desciption of the
event. The format of it shall be related to each kind event
defined in event reference table"
::= { eventLogEntry 5 }
eponManagementAddrTable OBJECT-TYPE
SYNTAX SEQUENCE OF EponManagementAddrEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of transport addresses to be used in the generation
of SNMP messages."
::= { eponManagementObjGroup 1 }
eponManagementAddrEntry OBJECT-TYPE
SYNTAX EponManagementAddrEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A transport address to be used in the generation
of SNMP operations.
Entries in the snmpTargetAddrTable are created and
deleted using the snmpTargetAddrRowStatus object."
INDEX { eponManagementAddrName }
::= { eponManagementAddrTable 1 }
EponManagementAddrEntry ::=
SEQUENCE {
eponManagementAddrName
OCTET STRING,
eponManagementAddrTAddress
TAddress,
eponManagementAddrCommunity
OCTET STRING,
eponManagementAddrRowStatus
RowStatus
}
eponManagementAddrName OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"
EMS网管节点的名字"
::= { eponManagementAddrEntry 1 }
eponManagementAddrTAddress OBJECT-TYPE
SYNTAX TAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"
网管节点的传输层地址和TRAP UDP端口号。"
::= { eponManagementAddrEntry 2 }
eponManagementAddrCommunity OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..64) )
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"
发送TRAP的Community。"
::= { eponManagementAddrEntry 3 }
eponManagementAddrRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"
增加删除一个EPON管理地址。"
::= { eponManagementAddrEntry 4 }
--
-- END of NSCRTV-EPON-ALARM-MGM-MIB
--
END
|