Imported Upstream version 0.4.8
[platform/upstream/libsmi.git] / mibs / ietf / CIRCUIT-IF-MIB
1 CIRCUIT-IF-MIB DEFINITIONS ::= BEGIN
2
3 IMPORTS
4     MODULE-IDENTITY, OBJECT-TYPE,
5     mib-2, Gauge32                          FROM SNMPv2-SMI
6     TEXTUAL-CONVENTION, RowStatus,
7     TimeStamp, RowPointer, StorageType      FROM SNMPv2-TC
8     MODULE-COMPLIANCE, OBJECT-GROUP         FROM SNMPv2-CONF
9     ifIndex, InterfaceIndex                 FROM IF-MIB;
10
11     circuitIfMIB MODULE-IDENTITY
12         LAST-UPDATED "200201030000Z" -- January 3, 2002
13         ORGANIZATION "IETF Frame Relay Service MIB Working Group"
14         CONTACT-INFO
15
16
17           "IETF Frame Relay Service MIB (frnetmib) Working Group
18
19            WG Charter:    http://www.ietf.org/html.charters/
20                                  frnetmib-charter.html
21            WG-email:      frnetmib@sunroof.eng.sun.com
22            Subscribe:     frnetmib-request@sunroof.eng.sun.com
23            Email Archive: ftp://ftp.ietf.org/ietf-mail-archive/frnetmib
24
25            Chair:      Andy Malis
26                        Vivace Networks
27            Email:      Andy.Malis@vivacenetworks.com
28
29            WG editor:  Robert Steinberger
30                        Paradyne Networks and
31                        Fujitsu Network Communications
32            Email:      robert.steinberger@fnc.fujitsu.com
33
34            Co-author:  Orly Nicklass
35                        RAD Data Communications Ltd.
36            EMail:      Orly_n@rad.co.il"
37         DESCRIPTION
38             "The MIB module to allow insertion of selected circuit into
39              the ifTable."
40         REVISION "200201030000Z" -- January 3, 2002
41         DESCRIPTION
42             "Initial version, published as RFC 3201"
43         ::= { mib-2 94 }
44
45     -- Textual Conventions
46
47     CiFlowDirection ::= TEXTUAL-CONVENTION
48         STATUS  current
49         DESCRIPTION
50             "The direction of data flow thru a circuit.
51
52                 transmit(1) - Only transmitted data
53                 receive(2)  - Only received data
54                 both(3)     - Both transmitted and received data."
55         SYNTAX  INTEGER {
56                   transmit(1),
57                   receive(2),
58                   both(3)
59                 }
60
61     ciObjects      OBJECT IDENTIFIER ::= { circuitIfMIB 1 }
62     ciCapabilities OBJECT IDENTIFIER ::= { circuitIfMIB 2 }
63     ciConformance  OBJECT IDENTIFIER ::= { circuitIfMIB 3 }
64
65
66
67     -- The Circuit Interface Circuit Table
68     --
69     -- This table is used to define and display the circuits that
70     -- are added to the ifTable.  It maps circuits to their respective
71     -- ifIndex values.
72
73     ciCircuitTable  OBJECT-TYPE
74         SYNTAX      SEQUENCE OF CiCircuitEntry
75         MAX-ACCESS  not-accessible
76         STATUS      current
77         DESCRIPTION
78             "The Circuit Interface Circuit Table."
79         ::= { ciObjects 1 }
80
81     ciCircuitEntry OBJECT-TYPE
82         SYNTAX      CiCircuitEntry
83         MAX-ACCESS  not-accessible
84         STATUS      current
85         DESCRIPTION
86             "An entry in the Circuit Interface Circuit Table."
87         INDEX    { ciCircuitObject, ciCircuitFlow }
88         ::= { ciCircuitTable 1 }
89
90     CiCircuitEntry ::=
91         SEQUENCE {
92             --
93             -- Index Control Variables
94             --
95             ciCircuitObject      RowPointer,
96             ciCircuitFlow        CiFlowDirection,
97             ciCircuitStatus      RowStatus,
98             --
99             -- Data variables
100             --
101             ciCircuitIfIndex     InterfaceIndex,
102             ciCircuitCreateTime  TimeStamp,
103             --
104             -- Data Persistence
105             --
106             ciCircuitStorageType StorageType
107         }
108
109     ciCircuitObject OBJECT-TYPE
110         SYNTAX      RowPointer
111         MAX-ACCESS  not-accessible
112         STATUS      current
113         DESCRIPTION
114             "This value contains the RowPointer that uniquely
115
116
117              describes the circuit that is to be added to this table.
118              Any RowPointer that will force the size of OBJECT
119              IDENTIFIER of the row to grow beyond the legal limit
120              MUST be rejected.
121
122              The purpose of this object is to point a network manager
123              to the table in which the circuit was created as well as
124              define the circuit on which the interface is defined.
125
126              Valid tables for this object include the frCircuitTable
127              from the Frame Relay DTE MIB(FRAME-RELAY-DTE-MIB), the
128              frPVCEndptTable from the Frame Relay Service MIB
129              (FRNETSERV-MIB), and the aal5VccTable from the ATM MIB
130              (ATM MIB).  However, including circuits from other MIB
131              tables IS NOT prohibited."
132         ::= { ciCircuitEntry 1 }
133
134     ciCircuitFlow OBJECT-TYPE
135         SYNTAX      CiFlowDirection
136         MAX-ACCESS  not-accessible
137         STATUS      current
138         DESCRIPTION
139             "The direction of data flow through the circuit for which
140              the virtual interface is defined.  The following define
141              the information that the virtual interface will report.
142
143                 transmit(1) - Only transmitted frames
144                 receive(2)  - Only received frames
145                 both(3)     - Both transmitted and received frames.
146
147              It is recommended that the ifDescr of the circuit
148              interfaces that are not both(3) SHOULD have text warning
149              the operators that the particular interface represents
150              only half the traffic on the circuit."
151         ::= { ciCircuitEntry 2 }
152
153     ciCircuitStatus OBJECT-TYPE
154         SYNTAX      RowStatus
155         MAX-ACCESS  read-create
156         STATUS      current
157         DESCRIPTION
158             "The status of the current row.  This object is
159              used to add, delete, and disable rows in this
160              table.  When the status changes to active(1), a row
161              will also be added to the interface map table below
162              and a row will be added to the ifTable.  These rows
163              SHOULD not be removed until the status is changed
164              from active(1).  The value of ifIndex for the row that
165
166
167              is added to the ifTable is determined by the agent
168              and MUST follow the rules of the ifTable.  The value
169              of ifType for that interface will be frDlciEndPt(193)
170              for a frame relay circuit, atmVciEndPt(194) for an
171              ATM circuit, or another ifType defining the circuit
172              type for any other circuit.
173
174              When this object is set to destroy(6), the associated
175              row in the interface map table will be removed and the
176              ifIndex will be removed from the ifTable.  Removing
177              the ifIndex MAY initiate a chain of events that causes
178              changes to other tables as well.
179
180              The rows added to this table MUST have a valid object
181              identifier for ciCircuitObject.  This means that the
182              referenced object must exist and it must be in a table
183              that supports circuits.
184
185              The object referenced by ciCircuitObject MUST exist
186              prior to transitioning a row to active(1).  If at any
187              point the object referenced by ciCircuitObject does not
188              exist or the row containing it is not in the active(1)
189              state, the status SHOULD either age out the row or
190              report notReady(3).  The effects transitioning from
191              active(1) to notReady(3) are the same as those caused
192              by setting the status to destroy(6).
193
194              Each row in this table relies on information from other
195              MIB modules.  The rules persistence of data SHOULD follow
196              the same rules as those of the underlying MIB module.
197              For example, if the circuit defined by ciCircuitObject
198              would normally be stored in non-volatile memory, then
199              the row SHOULD also be non-volatile."
200         ::= { ciCircuitEntry 3 }
201
202     ciCircuitIfIndex OBJECT-TYPE
203         SYNTAX      InterfaceIndex
204         MAX-ACCESS  read-only
205         STATUS      current
206         DESCRIPTION
207             "The ifIndex that the agent assigns to this row."
208         ::= { ciCircuitEntry 4 }
209
210     ciCircuitCreateTime OBJECT-TYPE
211         SYNTAX      TimeStamp
212         MAX-ACCESS  read-only
213         STATUS      current
214         DESCRIPTION
215
216
217             "This object returns the value of sysUpTime at the time
218              the value of ciCircuitStatus last transitioned to
219              active(1).  If ciCircuitStatus has never been active(1),
220              this object SHOULD return 0."
221         ::= { ciCircuitEntry 5 }
222
223     ciCircuitStorageType OBJECT-TYPE
224         SYNTAX      StorageType
225         MAX-ACCESS  read-create
226         STATUS      current
227         DESCRIPTION
228             "The storage type used for this row."
229     ::= { ciCircuitEntry 6 }
230
231     -- The Circuit Interface Map Table
232     --
233     -- This table maps the ifIndex values that are assigned to
234     -- rows in the circuit table back to the objects that define
235     -- the circuits.
236
237     ciIfMapTable  OBJECT-TYPE
238         SYNTAX      SEQUENCE OF CiIfMapEntry
239         MAX-ACCESS  not-accessible
240         STATUS      current
241         DESCRIPTION
242             "The Circuit Interface Map Table."
243         ::= { ciObjects 2 }
244
245     ciIfMapEntry OBJECT-TYPE
246         SYNTAX      CiIfMapEntry
247         MAX-ACCESS  not-accessible
248         STATUS      current
249         DESCRIPTION
250             "An entry in the Circuit Interface Map Table."
251         INDEX    { ifIndex }
252         ::= { ciIfMapTable 1 }
253
254     CiIfMapEntry ::=
255         SEQUENCE {
256             --
257             -- Mapped Object Variables
258             --
259             ciIfMapObject      RowPointer,
260             ciIfMapFlow        CiFlowDirection
261         }
262
263     ciIfMapObject OBJECT-TYPE
264         SYNTAX      RowPointer
265
266
267         MAX-ACCESS  read-only
268         STATUS      current
269         DESCRIPTION
270             "This value contains the value of RowPointer that
271              corresponds to the current ifIndex."
272         ::= { ciIfMapEntry 1 }
273
274     ciIfMapFlow   OBJECT-TYPE
275         SYNTAX      CiFlowDirection
276         MAX-ACCESS  read-only
277         STATUS      current
278         DESCRIPTION
279             "The value contains the value of ciCircuitFlow that
280              corresponds to the current ifIndex."
281         ::= { ciIfMapEntry 2 }
282
283     -- Change tracking metrics
284
285     ciIfLastChange OBJECT-TYPE
286         SYNTAX       TimeStamp
287         MAX-ACCESS   read-only
288         STATUS       current
289         DESCRIPTION
290             "The value of sysUpTime at the most recent change to
291              ciCircuitStatus for any row in ciCircuitTable."
292         ::= { ciObjects 3 }
293
294     ciIfNumActive      OBJECT-TYPE
295         SYNTAX         Gauge32
296         MAX-ACCESS     read-only
297         STATUS         current
298         DESCRIPTION
299             "The number of active rows in ciCircuitTable."
300         ::= { ciObjects 4 }
301
302     -- Conformance Information
303
304     ciMIBGroups      OBJECT IDENTIFIER ::= { ciConformance 1 }
305     ciMIBCompliances OBJECT IDENTIFIER ::= { ciConformance 2 }
306
307     --
308     -- Compliance Statements
309     --
310
311     ciCompliance MODULE-COMPLIANCE
312         STATUS  current
313         DESCRIPTION
314             "The compliance statement for SNMP entities
315
316
317              which support of the Circuit Interfaces MIB module.
318              This group defines the minimum level of support
319              required for compliance."
320         MODULE -- this module
321             MANDATORY-GROUPS { ciCircuitGroup,
322                                ciIfMapGroup,
323                                ciStatsGroup }
324
325             OBJECT      ciCircuitStatus
326             SYNTAX      INTEGER { active(1) } -- subset of RowStatus
327             MIN-ACCESS  read-only
328             DESCRIPTION
329                "Row creation can be done outside of the scope of
330                 the SNMP protocol.  If this object is implemented with
331                 max-access of read-only, then the only value that MUST
332                 be returned is active(1)."
333
334             OBJECT      ciCircuitStorageType
335             MIN-ACCESS  read-only
336             DESCRIPTION
337                "It is legal to support ciCircuitStorageType as read-
338                 only as long as the value reported in consistent
339                 with the actual storage mechanism employed within the
340                 agent."
341
342     ::= { ciMIBCompliances 1 }
343
344     --
345     -- Units of Conformance
346     --
347     ciCircuitGroup  OBJECT-GROUP
348        OBJECTS {
349             ciCircuitStatus,
350             ciCircuitIfIndex,
351             ciCircuitCreateTime,
352             ciCircuitStorageType
353        }
354        STATUS  current
355        DESCRIPTION
356            "A collection of required objects providing
357             information from the circuit table."
358        ::= { ciMIBGroups 1 }
359
360     ciIfMapGroup OBJECT-GROUP
361        OBJECTS {
362             ciIfMapObject,
363             ciIfMapFlow
364        }
365
366
367        STATUS  current
368        DESCRIPTION
369            "A collection of required objects providing
370             information from the interface map table."
371        ::= { ciMIBGroups 2 }
372
373     ciStatsGroup OBJECT-GROUP
374        OBJECTS {
375             ciIfLastChange,
376             ciIfNumActive
377        }
378        STATUS  current
379        DESCRIPTION
380            "A collection of statistical metrics used to help manage
381             the ciCircuitTable."
382        ::= { ciMIBGroups 3 }
383 END