smilint output for ./PW-ENET-STD-MIB
Message Severities |
Severity | Count |
error | 2 |
Message Types |
Type | Count |
bad-identifier-case (error) | 1 |
object-identifier-not-prefix (error) | 1 |
Messages:
PW-ENET-STD-MIB
1: -- extracted from draft-ietf-pwe3-enet-mib-11.txt
2: -- at Fri May 25 06:08:23 2007
3:
4: PW-ENET-STD-MIB DEFINITIONS ::= BEGIN
5:
6: IMPORTS
7: OBJECT-TYPE, MODULE-IDENTITY, Unsigned32, transmission
8: FROM SNMPv2-SMI -- [RFC2578]
9:
10: MODULE-COMPLIANCE, OBJECT-GROUP
11: FROM SNMPv2-CONF -- [RFC2580]
12:
13: StorageType, RowStatus
14: FROM SNMPv2-TC -- [RFC2579]
15:
16: InterfaceIndexOrZero
17: FROM IF-MIB -- [RFC2863]
18:
19: ZeroBasedCounter32
20: FROM RMON2-MIB -- [RFC4502]
21:
22: pwIndex
23: FROM PW-STD-MIB -- [PWMIB]
24: -- RFC Editor: Please replace
25: -- PWMIB with correct RFC #
26:
27: PwVlanCfg
28: FROM PW-TC-STD-MIB; -- [PWTC]
29: -- RFC Editor: Please replace
30: -- PWTC with correct RFC #
31:
32: pwEnetStdMIB MODULE-IDENTITY
33: LAST-UPDATED "200705201200Z" -- 20 May 2007 12:00:00 GMT
34: ORGANIZATION "IETF PWE3 Working group"
35: CONTACT-INFO
36: "David Zelig
37: E-mail: davidz@corrigent.com
38:
39: Thomas D. Nadeau
40: Email: tnadeau@cisco.com
41:
42: "
43: DESCRIPTION
44: "This MIB module describes a model for managing Ethernet
45: point-to-point pseudo-wire services over a Packet
46: Switched Network (PSN).
47:
48: Copyright (C) The IETF Trust (2007). This version
49: of this MIB module is part of RFC yyyy; see the RFC
50: itself for full legal notices.
51: -- RFC Editor: replace yyyy with the actual RFC number and remove
52: -- this note
53: "
54:
55: -- Revision history.
56: REVISION "200705201200Z" -- 20 May 2007 12:00:00 GMT
57: DESCRIPTION "Initial version published as part of RFC XXXX."
58: -- RFC Editor: Please replace XXXX with the actual RFC number and
59: -- remove this note
60:
61:
62: ::= { transmission XXXX } -- RFC Editor: Please replace
62: error -
`XXXX' should start with a lower case letter
62: error -
Object identifier element `XXXX' name only allowed as first element
63: -- XXXX with IANA assigned value.
64: -- See IANA considerations section.
65:
66: pwEnetObjects OBJECT IDENTIFIER ::= { pwEnetStdMIB 1 }
67: pwEnetConformance OBJECT IDENTIFIER ::= { pwEnetStdMIB 2 }
68:
69: --
70: -- Ethernet PW table
71: --
72:
73: pwEnetTable OBJECT-TYPE
74: SYNTAX SEQUENCE OF PwEnetEntry
75: MAX-ACCESS not-accessible
76: STATUS current
77: DESCRIPTION
78: "This table contains the index to the Ethernet tables
79: associated with this ETH PW, the VLAN configuration and
80: VLAN mode."
81: ::= { pwEnetObjects 1 }
82:
83: pwEnetEntry OBJECT-TYPE
84: SYNTAX PwEnetEntry
85: MAX-ACCESS not-accessible
86: STATUS current
87: DESCRIPTION
88: "This table is indexed by the same index that was created
89: for the associated entry in the PW generic table in the
90: PW-STD-MIB module.
91: The pwIndex and the pwEnetPwInstance are used as indexes
92: to allow multiple VLANs to exist on the same PW.
93:
94: An entry is created in this table by the agent for every
95: entry in the pwTable with a pwType of 'ethernetTagged'
96: or 'ethernet'. Additional rows may be created by the
97: operator or the agent if multiple entries are required for
98: the same PW.
99:
100: The value of pwEnetPwInstance can be arbitrary selected
101: to make the row unique, however implementations that know
102: the VLAN field value when the row is created MAY use the
103: value of the VLAN itself for better readability and
104: backward compatibility with older versions of this MIB
105: module.
106:
107: This table provides Ethernet port mapping and VLAN
108: configuration for each Ethernet PW.
109:
110: All read-create object in this table MAY be changed at any
111: time, however change of some objects (for example
112: pwEnetVlanMode) during PW forwarding state MAY cause traffic
113: disruption.
114:
115: Manual entries in this table SHOULD be preserved after a
116: re-boot, the agent MUST ensure the integrity of those
117: entries. If the set of entires of a specific row are found to
118: be non consistent after reboot, the PW pwOperStatus MUST be
119: declared as notPresent(5).
120: "
121:
122: INDEX { pwIndex, pwEnetPwInstance }
123: ::= { pwEnetTable 1 }
124:
125:
126: PwEnetEntry ::= SEQUENCE {
127: pwEnetPwInstance Unsigned32,
128: pwEnetPwVlan PwVlanCfg,
129: pwEnetVlanMode INTEGER,
130: pwEnetPortVlan PwVlanCfg,
131:
132: pwEnetPortIfIndex InterfaceIndexOrZero,
133: pwEnetPwIfIndex InterfaceIndexOrZero,
134:
135: pwEnetRowStatus RowStatus,
136: pwEnetStorageType StorageType
137: }
138:
139: pwEnetPwInstance OBJECT-TYPE
140: SYNTAX Unsigned32
141: MAX-ACCESS not-accessible
142: STATUS current
143: DESCRIPTION
144: "If multiple rows are mapped to the same PW, this index is
145: used to uniquely identify the individual row.
146: If the value of the VLAN field is known at the time of
147: of row creation, the value of pwEnetPwVlan MAY be used
148: for better readability and backward compatibility with
149: older versions of this MIB module. Otherwise the value
150: '1' SHOULD be set to the first row for each pwIndex
151: for better readability and in order that the management
152: application will know in advance how to access the
153: first row when it was created by the agent.
154: "
155: ::= { pwEnetEntry 1 }
156:
157: pwEnetPwVlan OBJECT-TYPE
158: SYNTAX PwVlanCfg
159: MAX-ACCESS read-create
160: STATUS current
161: DESCRIPTION
162: "This Object defines the (service delimiting) VLAN field
163: value on the PW. The value of 4097 MUST be used if the
164: object is not applicable, for example when mapping all
165: packets from an Ethernet port to this PW (raw mode).
166: The value 4096 MUST be set to indicate untagged frames
167: (from the PW point of view), i.e. when pwEnetVlanMode
168: equals 'noChange' and pwEnetPortVlan equals 4096."
169: ::= { pwEnetEntry 2 }
170:
171: pwEnetVlanMode OBJECT-TYPE
172: SYNTAX INTEGER {
173: other(0),
174: portBased(1),
175: noChange(2),
176: changeVlan(3),
177: addVlan(4),
178: removeVlan(5)
179: }
180: MAX-ACCESS read-create
181: STATUS current
182: DESCRIPTION
183: "This object indicates the mode of VLAN handling between the
184: port or the virtual port associated with the PW and the
185: PW encapsulation.
186:
187: - 'other' indicates an operation that is not defined by
188: this MIB module.
189:
190: - 'portBased' indicates that the forwarder will forward
191: packets between the port and the PW independent of their
192: structure (i.e. there is no service delimiting VLAN tags
193: from the PE standpoint).
194:
195: - 'noChange' indicates that the PW contains the original
196: user VLAN, as specified in pwEnetPortVlan, i.e. the
197: VLAN on the PE-CE link is the service delimiting tag
198: and is kept 'as is' on the PW.
199:
200: - 'changeVlan' indicates that the VLAN field on the PW
201: may be different than the VLAN field on the user's
202: port. The VLAN on the PE-CE link is the service delimiting
203: tag but has a different value on the PW.
204:
205: - 'removeVlan' indicates that the encapsulation on the
206: PW does not include the service delimiting VLAN field.
207: Note that PRI bits transparency is lost in this case.
208:
209: - 'addVlan' indicates that a VLAN field will be added
210: on the PSN bound direction (i.e. on the PW). pwEnetPwVlan
211: indicates the value that will be added.
212:
213: - Implementation of 'portsbased', 'removeVlan', 'addVlan'
214: 'other' and 'changeVlan' is OPTIONAL.
215: "
216: DEFVAL { noChange }
217: ::= { pwEnetEntry 3 }
218:
219: pwEnetPortVlan OBJECT-TYPE
220: SYNTAX PwVlanCfg
221: MAX-ACCESS read-create
222: STATUS current
223: DESCRIPTION
224: "This object defines if the mapping between the original port
225: (physical port or VPLS virtual port) to the PW is VLAN based
226: or not. In case of VLAN mapping, this object indicates the
227: the VLAN value on the original port.
228:
229: The value of '4097' MUST be used if the whole original port
230: traffic is mapped to the same PW. Note that a pwType of
231: 'ethernetTagged' can still be used if service delimiting tag
232: is added on the PW (pwEnetVlanMode equals 'addVlan').
233:
234: This object MUST be equal to pwEnetPwVlan if pwEnetVlanMode
235: equals 'noChange'.
236:
237: The value 4096 indicates packets without VLAN field
238: (i.e. untagged frames) on the port are associated to this
239: PW. This allows the same behavior as assigning 'Default
240: VLAN' to untagged frames.
241: "
242: DEFVAL { 4097 }
243: ::= { pwEnetEntry 4 }
244:
245: pwEnetPortIfIndex OBJECT-TYPE
246: SYNTAX InterfaceIndexOrZero
247: MAX-ACCESS read-create
248: STATUS current
249: DESCRIPTION
250: "This object is used to specify the ifIndex of the Ethernet
251: port associated with this PW for point-to-point Ethernet
252: service, or the ifIndex of the virtual interface of the
253: VPLS instance associated with the PW if the service is
254: VPLS. Two rows in this table can point to the same ifIndex
255: only if there is no overlap of VLAN values specified in
256: pwEnetPortVlan that are associated with this port.
257:
258: A value of zero indicates that association to an ifIndex is
259: not yet known."
260:
261: ::= { pwEnetEntry 5 }
262:
263: pwEnetPwIfIndex OBJECT-TYPE
264: SYNTAX InterfaceIndexOrZero
265: MAX-ACCESS read-create
266: STATUS current
267: DESCRIPTION
268: "If the PW is modeled as an ifIndex in the ifTable, this
269: object indicates the value of the ifIndex representing the
270: Ethernet PW on the PSN side in the Etherlike-MIB. Note that
271: this value may be different from the value of pwIfIndex
272: that represents the ifIndex of the PW for ifType 'pw'."
273:
274: DEFVAL { 0 }
275: ::= { pwEnetEntry 6 }
276:
277: pwEnetRowStatus OBJECT-TYPE
278: SYNTAX RowStatus
279: MAX-ACCESS read-create
280: STATUS current
281: DESCRIPTION
282: "This object enables creating, deleting and modifying this row."
283: ::= { pwEnetEntry 7 }
284:
285: pwEnetStorageType OBJECT-TYPE
286: SYNTAX StorageType
287: MAX-ACCESS read-create
288: STATUS current
289: DESCRIPTION
290: "This object indicates the storage type of this row."
291: DEFVAL { nonVolatile }
292: ::= { pwEnetEntry 8 }
293:
294: --
295: -- Ethernet PW Statistics Table
296: --
297:
298: pwEnetStatsTable OBJECT-TYPE
299: SYNTAX SEQUENCE OF PwEnetStatsEntry
300: MAX-ACCESS not-accessible
301: STATUS current
302: DESCRIPTION
303: "This table contains statistical counters specific for
304: Ethernet PW."
305: ::= { pwEnetObjects 2 }
306:
307: pwEnetStatsEntry OBJECT-TYPE
308: SYNTAX PwEnetStatsEntry
309: MAX-ACCESS not-accessible
310: STATUS current
311: DESCRIPTION
312: "Each entry represents the statistics gathered for the
313: PW carrying the Ethernet."
314: INDEX { pwIndex }
315: ::= { pwEnetStatsTable 1 }
316:
317:
318: PwEnetStatsEntry ::= SEQUENCE {
319: pwEnetStatsIllegalVlan ZeroBasedCounter32,
320: pwEnetStatsIllegalLength ZeroBasedCounter32
321: }
322:
323: pwEnetStatsIllegalVlan OBJECT-TYPE
324: SYNTAX ZeroBasedCounter32
325: MAX-ACCESS read-only
326: STATUS current
327: DESCRIPTION
328: "The number of packets received (from the PSN) on this PW
329: with either an illegal VLAN field, a missing VLAN field
330: when one was expected, or an excessive VLAN field when
331: it was not expected. This counter may not be applicable
332: in some cases, and MUST return the value of zero in
333: such a case."
334: ::= { pwEnetStatsEntry 1 }
335:
336: pwEnetStatsIllegalLength OBJECT-TYPE
337: SYNTAX ZeroBasedCounter32
338: MAX-ACCESS read-only
339: STATUS current
340: DESCRIPTION
341: "The number of packets that were received with an illegal
342: Ethernet packet length on this PW. An illegal length is
343: defined as being greater than the value in the advertised
344: MTU supported, or shorter than the allowed Ethernet packet
345: size."
346: ::= { pwEnetStatsEntry 2 }
347:
348: ---
349: --- Conformance description
350: ---
351:
352: pwEnetGroups OBJECT IDENTIFIER ::= { pwEnetConformance 1 }
353: pwEnetCompliances OBJECT IDENTIFIER ::= { pwEnetConformance 2 }
354:
355: -- Compliance requirement for fully compliant implementations.
356:
357: pwEnetModuleFullCompliance MODULE-COMPLIANCE
358: STATUS current
359: DESCRIPTION
360: "The compliance statement for agents that provide full
361: support for the PW-ENET-STD-MIB Module. Such devices
362: can then be monitored and also be configured using
363: this MIB module."
364: MODULE -- this module
365: MANDATORY-GROUPS {
366: pwEnetGroup,
367: pwEnetStatsGroup
368: }
369:
370: OBJECT pwEnetVlanMode
371: DESCRIPTION "An implementation MUST support at least the value
372: noChange(2)."
373:
374: OBJECT pwEnetPwIfIndex
375: MIN-ACCESS read-only
376: DESCRIPTION "Write access and values other than zero are
377: required only for implementations that support
378: modeling the Ethernet PW in the Etherlike-MIB."
379:
380: OBJECT pwEnetRowStatus
381: SYNTAX RowStatus { active(1), notInService(2),
382: notReady(3) }
383: WRITE-SYNTAX RowStatus { active(1), notInService(2),
384: createAndGo(4), destroy(6)
385: }
386: MIN-ACCESS read-only
387: DESCRIPTION "Support for createAndWait is not required. Support
388: of notReady is not required for implementations that
389: do not support signaling.
390: Support of read-write is not required for
391: implementations that do not support more than one
392: VLAN mapping to the same PW."
393:
394: ::= { pwEnetCompliances 1 }
395:
396: -- Compliance requirement for read-only compliant implementations.
397:
398:
399: pwEnetModuleReadOnlyCompliance MODULE-COMPLIANCE
400: STATUS current
401: DESCRIPTION
402: "The compliance statement for agents that provide read-
403: only support for the PW-ENET-STD-MIB Module. Such
404: devices can then be monitored but cannot be configured
405: using this MIB module."
406:
407: MODULE -- this module
408: MANDATORY-GROUPS { pwEnetGroup,
409: pwEnetStatsGroup
410: }
411:
412: OBJECT pwEnetPwVlan
413: MIN-ACCESS read-only
414: DESCRIPTION "Write access is not required."
415:
416: OBJECT pwEnetVlanMode
417: MIN-ACCESS read-only
418: DESCRIPTION "Write access is not required. An implementation
419: MUST support at least the value noChange(2)."
420:
421: OBJECT pwEnetPortVlan
422: MIN-ACCESS read-only
423: DESCRIPTION "Write access is not required."
424:
425: OBJECT pwEnetPortIfIndex
426: MIN-ACCESS read-only
427: DESCRIPTION "Write access is not required."
428: OBJECT pwEnetPwIfIndex
429: MIN-ACCESS read-only
430: DESCRIPTION "Write access is not required. Values other than
431: zero are required only for implementations that
432: support modeling the Ethernet PW in the
433: Etherlike-MIB."
434:
435: OBJECT pwEnetRowStatus
436: SYNTAX RowStatus { active(1), notInService(2),
437: notReady(3) }
438: MIN-ACCESS read-only
439: DESCRIPTION "Write access is not required. Support
440: of notReady is not required for implementations that
441: do not support signaling."
442:
443: OBJECT pwEnetStorageType
444: MIN-ACCESS read-only
445: DESCRIPTION "Write access is not required."
446:
447: ::= { pwEnetCompliances 2 }
448:
449: -- Units of conformance.
450:
451: pwEnetGroup OBJECT-GROUP
452: OBJECTS {
453: pwEnetPwVlan,
454: pwEnetVlanMode,
455: pwEnetPortVlan,
456: pwEnetPortIfIndex,
457: pwEnetPwIfIndex,
458: pwEnetRowStatus,
459: pwEnetStorageType
460: }
461: STATUS current
462: DESCRIPTION
463: "Collection of objects for basic Ethernet PW configuration."
464: ::= { pwEnetGroups 1 }
465:
466: pwEnetStatsGroup OBJECT-GROUP
467: OBJECTS {
468: pwEnetStatsIllegalVlan,
469: pwEnetStatsIllegalLength
470: }
471: STATUS current
472: DESCRIPTION
473: "Collection of objects counting various PW level errors."
474: ::= { pwEnetGroups 2 }
475:
476: END
477:
478: --
479: -- Copyright (C) The IETF Trust (2007).
480: --
481: -- This document is subject to the rights, licenses and restrictions
482: -- contained in BCP 78, and except as set forth therein, the authors
483: -- retain all their rights.
484: --
485: -- This document and the information contained herein are provided on an
486: -- "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
487: -- OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
488: -- THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
489: -- OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
490: -- THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
491: -- WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
492: --
493: --
494: -- Intellectual Property
495: --
496: -- The IETF takes no position regarding the validity or scope of any
497: -- Intellectual Property Rights or other rights that might be claimed to
498: -- pertain to the implementation or use of the technology described in
499: -- this document or the extent to which any license under such rights
500: -- might or might not be available; nor does it represent that it has
501: -- made any independent effort to identify any such rights. Information
502: -- on the procedures with respect to rights in RFC documents can be
503: -- found in BCP 78 and BCP 79.
504: --
505: -- Copies of IPR disclosures made to the IETF Secretariat and any
506: -- assurances of licenses to be made available, or the result of an
507: -- attempt made to obtain a general license or permission for the use of
508: -- such proprietary rights by implementers or users of this
509: -- specification can be obtained from the IETF on-line IPR repository at
510: -- http://www.ietf.org/ipr.
511: --
512: -- The IETF invites any interested party to bring to its attention any
513: -- copyrights, patents or patent applications, or other proprietary
514: -- rights that may cover technology that may be required to implement
515: -- this standard. Please address the information to the IETF at
516: -- ietf-ipr@ietf.org.
517: --
518: --
519: -- Acknowledgment
520: --
521: -- Funding for the RFC Editor function is provided by the IETF
522: -- Administrative Support Activity (IASA).
523: