summaryrefslogtreecommitdiff
path: root/MIBS/allied/AT-INTERFACES-MIB
blob: a6b5e3c9e59db070ecad478957aa35fb48e6a4a4 (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
-- ============================================================================
-- AT-INTERFACE.MIB, Allied Telesis enterprise MIB: Interfaces
--
-- Extracted from ATROUTER.MIB of pre 2.9.1 release
--
-- June 2006, Stan Xiang
-- Upgraded to SMIv2 compliance
--
-- Copyright (c) 2006 by Allied Telesis, Inc.
-- All rights reserved.
-- 
-- ============================================================================

AT-INTERFACES-MIB DEFINITIONS ::= BEGIN
IMPORTS
   MODULE-IDENTITY, 
   OBJECT-TYPE, 
   NOTIFICATION-TYPE
   		FROM SNMPv2-SMI
   DisplayString
        FROM SNMPv2-TC
   ifName, 
   InterfaceIndexOrZero			   
	    FROM IF-MIB
   traps, 
   atRouter
   		FROM AT-SMI-MIB
;	
	   		
arInterfaces MODULE-IDENTITY
	LAST-UPDATED "200606140000Z"
	ORGANIZATION "Allied Telesis, Inc."
	CONTACT-INFO
		"  http://www.alliedtelesis.com"
	DESCRIPTION
		"subtree beneath which interface ids are assigned.."
	REVISION      "200606140000Z"
	DESCRIPTION
		"Initial version of this MIB module."
	::= { atRouter 5 }
	   				

--  Generic traps

igmpTraps OBJECT-IDENTITY
	STATUS	current
	DESCRIPTION
		"object id for igmp traps."
	::= { traps 1 }

igmpGeneralQueryNotReceivedEvent NOTIFICATION-TYPE
    OBJECTS { ifName }
    STATUS  current
    DESCRIPTION
            "Triggered when no general IGMP-Query
             message is received within a user-defined
             time period on a specific interface."
::= { igmpTraps 1 }


	 
--  Router interfaces tables.

--  A router consists of a number of "boards". Each board may have a
--  number of "positions", each of which contains a single router
--  interface. Each boards may also have a number of "slots", which are
--  places which can take other boards. Thus the physical construction
--  of a router may be seen as a tree whose nodes are boards and
--  interfaces, and whose links are positions and slots.
--  For example, an AR720 with a single Ethernet ICM in Bay 1 has the
--  following tree:
--  Bd:AR720 base board
--           === P1 === Int: Asyn0
--           === P2 === Int: Asyn1
--           === P3 === Int: Eth0
--           === S1 (Bay0) === <empty>
--           === S2 (Bay1) === Bd:Ethernet ICM === P1 === Int: Eth1
--           === S3 (MAC) === <empty>
--  The function of the interface MIB tables is to represent this tree
--  and to map elements in this tree to other MIB variables. Note that
--  any given board has a fixed configuration of positions and slots,
--  it is what is contained in the slots that give different hardware
--  configurations.

--  The highest index of boards in this router. Boards will have indices
--  from 1 to the value of this object. There may be gaps in the
--  sequence if the router has hot-swap capability. If the router has no
--  hot-swap capability, or no swapping has taken place since boot, the
--  sequence of boards will have no gaps.

arBoardMaxIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The maximum index of boards in the board table. Index 1
            is reserved for the main system board of the router."
    ::= { arInterfaces 1 }

--  Router boards table. This table describes all of the physical boards
--  present in this router. A board is defined as a separate circuit
--  board with its own serial number.

arBoardTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF ArBoardEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "The table of boards in the AR router."
    ::= { arInterfaces 2 }

arBoardEntry OBJECT-TYPE
    SYNTAX          ArBoardEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "A single entry in the board table. Each entry consists
            of information about one board in the router."
    INDEX   { arBoardIndex }
    ::= { arBoardTable 1 }

ArBoardEntry ::=
    SEQUENCE {
        arBoardIndex
            INTEGER,
        arBoardId
            OBJECT IDENTIFIER,
        arBoardName
            DisplayString,
        arBoardRevision
            DisplayString,
        arBoardSerialNumber
            DisplayString,
        arBoardTotalSlots
            INTEGER,
        arBoardTotalPositions
            INTEGER
    }

arBoardIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The index of the board in the board table. Index 1 is
            reserved for the main system board of the router. Other
            boards will take index numbers as they are initialised
            at router startup, or for routers with hot-swap
            capability, as boards are added to and removed from the
            router."
    ::= { arBoardEntry 1 }

arBoardId OBJECT-TYPE
    SYNTAX          OBJECT IDENTIFIER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The type of board in this board entry. The values of
            this object are taken from the pprXxx object IDs under
            the boards sub-tree."
   ::= { arBoardEntry 2 }

arBoardName OBJECT-TYPE
    SYNTAX          DisplayString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The name of the board in this board entry. This is a
            readable string which identifies the board to the
            manager."
    ::= { arBoardEntry 3 }

arBoardRevision OBJECT-TYPE
    SYNTAX          DisplayString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The manufacturing revision of the board in this board
            entry. This string has the format Xm-n, where X is P for
            prototype, or M for manufacturing, m is the major
            revision number for this board, and n is the field
            upgrade revision number for this board."
    ::= { arBoardEntry 4 }

arBoardSerialNumber OBJECT-TYPE
    SYNTAX          DisplayString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The serial number of the board in this board entry.
            Serial numbers are strings of decimal numbers up to 10
            digits in length. Each and every serial number is
            globally unique. It is possible for the serial number of
            a board to be invalid. In this case the value returned
            for this object will be '*** Invalid ***'"
    ::= { arBoardEntry 5 }

arBoardTotalSlots OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The number of slots on this board. Each slot from 1 to
            the value of this object may be empty or occupied by
            another board. By searching the arSlotTable with this
            board's board index and all values of slot index from 1
            to the value of this object, a tree of the boards in
            this router can be built. The value 0 for this object
            means that it has no slots."
    ::= { arBoardEntry 6 }

arBoardTotalPositions OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The number of positions on this board. Each position
            from 1 to the value of this object contains a single
            router interface. Note that positions are different from
            slots. An position contains an actual interface while a
            slot contains a different board which itself may contain
            interfaces in its positions."
    ::= { arBoardEntry 7 }


--  Router board slot table. This table is indexed by board index and
--  slot index and gives the board index of the board occupying the
--  given slot in the given board.

arSlotTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF ArSlotEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "The table of slots in the router, indexed by board
            index and slot index."
    ::= { arInterfaces 3 }

arSlotEntry OBJECT-TYPE
    SYNTAX          ArSlotEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "A single entry in the board slot table."
    INDEX   { arSlotBoardIndex, arSlotSlotIndex }
    ::= { arSlotTable 1 }

ArSlotEntry ::=
    SEQUENCE {
        arSlotBoardIndex
            INTEGER,
        arSlotSlotIndex
            INTEGER,
        arSlotHeldBoardIndex
            INTEGER,
        arSlotDescription
            DisplayString
    }

arSlotBoardIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The index of the board for this slot entry. Index 1 is
            reserved for the main system board of the router."
    ::= { arSlotEntry 1 }

arSlotSlotIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The index of the slot for this slot entry. Indices
            start from 1 and are specific to each different board
            type. There are no gaps in the sequence of slot indices.
            The maximum value for slot index is given by the value
            of arBoardTotalSlots for this board."
    ::= { arSlotEntry 2 }

arSlotHeldBoardIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The index of the board held in the slot for this slot
            entry. This is an index into the arBoardTable. A value
            of 0 for this object means that the slot is not
            populated."
    ::= { arSlotEntry 3 }

arSlotDescription OBJECT-TYPE
    SYNTAX          DisplayString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "A description for this slot entry. This is a textual
            description which gives the manager a clue as to what
            the slot for this entry is. For example, the slots on an
            AR 720 have descriptions 'Bay0', 'Bay1' and 'MAC'."
    ::= { arSlotEntry 4 }

--  Router interfaces table. This table has an entry for each physical
--  interface on the router. The indices for this table are the router
--  board index and a board position index.

arInterfaceTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF ArInterfaceEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "The table of physical interfaces in the AR router."
    ::= { arInterfaces 4 }

arInterfaceEntry OBJECT-TYPE
    SYNTAX          ArInterfaceEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "A single entry in the interface table. Each entry consists of
            information about one interface in the router, and is indexed
            by the board index and the position of the interface on the
            board."
    INDEX   { arInterfaceBoardIndex, arInterfacePosition }
    ::= { arInterfaceTable 1 }

ArInterfaceEntry ::=
    SEQUENCE {
        arInterfaceBoardIndex
            INTEGER,
        arInterfacePosition
            INTEGER,
        arInterfaceIfIndex
            InterfaceIndexOrZero,
        arInterfaceName
            DisplayString,
        arInterfaceFullName
            DisplayString
    }

arInterfaceBoardIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The index of the board in the board table which contains this
            interface. Index 1 is reserved for the main system board of the
            router."
    ::= { arInterfaceEntry 1 }

arInterfacePosition OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The position of the interface on the board. Each board type
            will have well-known positions which are the interfaces
            provided by the board. The number of positions on a given board
            is given by the object arBoardTotalPositions for this board."
    ::= { arInterfaceEntry 2 }

arInterfaceIfIndex OBJECT-TYPE
    SYNTAX          InterfaceIndexOrZero
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The ifIndex for the interface represented by this entry of the
            interfaces table. This is the ifIndex of the ifEntry used to
            represent the physical interface. The value 0 is used for
            interfaces which don't have an ifIndex."
    ::= { arInterfaceEntry 3 }

arInterfaceName OBJECT-TYPE
    SYNTAX          DisplayString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The name of this interface. This is the name that the manager
            can use to refer to this interface in entering router
            commands."
    ::= { arInterfaceEntry 4 }


arInterfaceFullName OBJECT-TYPE
    SYNTAX          DisplayString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The fully qualified name for this interface. This identifies 
            the path that must be followed to reach the interface. This 
            name can be used in router commands. In routers don't support 
            fully qualified names, this is the same as arInterfaceName."
    ::= { arInterfaceEntry 5 }
                                  
--  =================================================================================
--  Router interface extension table. This table extends ifTable to allow interface variables
--  not covered in the standard MIB. Current variables include:
--  1. 512s moving averages of interface throughput, bps and pps.

arIfXTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF ArIfXEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "The table of interface statistics for the AR router.
            This table extends the ifTable."
    ::= { arInterfaces 5 }

arIfXEntry OBJECT-TYPE
    SYNTAX          ArIfXEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
            "A single entry in the interface extension table. Each entry consists of
            extra interface information not covered in standard MIBs. The index for this
            table is ifIndex, the same as for ifTable."
    INDEX   { arIfXIndex }
    ::= { arIfXTable 1 }

ArIfXEntry ::=
    SEQUENCE { 
        arIfXIndex
            INTEGER,
        arIfXAverageInputBitsSecond
            INTEGER,
        arIfXAverageInputPacketsSecond
            INTEGER,
        arIfXAverageOutputBitsSecond
            INTEGER,
        arIfXAverageOutputPacketsSecond
            INTEGER
    }

arIfXIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The index of the ifTable."
    ::= { arIfXEntry 1 }
   
arIfXAverageInputBitsSecond OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The average number of bits received per second on all 
            interfaces over the past 8.5 minutes.

            The average is calculated by an 8.5 minute (512s) decaying average, 
            which is updated every 4 seconds using the following formula:
            
                X' = 127/128X + 1/128i
                
                where   X' is the new average
                        X  is the old average
                        i  is the most recent poll result
            
            The times and multiplier factors have been chosen to give the simplest
            possible calculation using bit shifting operations."
    ::= { arIfXEntry 2 }
    
 arIfXAverageInputPacketsSecond OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The average number of packets received per second on all 
            interfaces over the past 8.5 minutes. See the description for
            arIfXAverageInputBitsSecond for details of the way in which the
            average is calculated."
    ::= { arIfXEntry 3 }
    
 arIfXAverageOutputBitsSecond OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The average number of bits sent per second on all 
            interfaces over the past 8.5 minutes. See the description for
            arIfXAverageInputBitsSecond for details of the way in which the
            average is calculated."
    ::= { arIfXEntry 4 }
    
 arIfXAverageOutputPacketsSecond OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
            "The average number of bits sent per second on all 
            interfaces over the past 8.5 minutes. See the description for
            arIfXAverageInputBitsSecond for details of the way in which the
            average is calculated."
    ::= { arIfXEntry 5 }

END