[BACK]Return to IF-MIB.txt CVS log [TXT][DIR] Up to [local] / src / share / snmp

Annotation of src/share/snmp/IF-MIB.txt, Revision 1.1

1.1     ! martijn     1: IF-MIB DEFINITIONS ::= BEGIN
        !             2:
        !             3: IMPORTS
        !             4:     MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Counter64,
        !             5:     Integer32, TimeTicks, mib-2,
        !             6:     NOTIFICATION-TYPE                        FROM SNMPv2-SMI
        !             7:     TEXTUAL-CONVENTION, DisplayString,
        !             8:     PhysAddress, TruthValue, RowStatus,
        !             9:     TimeStamp, AutonomousType, TestAndIncr   FROM SNMPv2-TC
        !            10:     MODULE-COMPLIANCE, OBJECT-GROUP,
        !            11:     NOTIFICATION-GROUP                       FROM SNMPv2-CONF
        !            12:     snmpTraps                                FROM SNMPv2-MIB
        !            13:     IANAifType                               FROM IANAifType-MIB;
        !            14:
        !            15: ifMIB MODULE-IDENTITY
        !            16:     LAST-UPDATED "200006140000Z"
        !            17:     ORGANIZATION "IETF Interfaces MIB Working Group"
        !            18:     CONTACT-INFO
        !            19:             "   Keith McCloghrie
        !            20:                 Cisco Systems, Inc.
        !            21:                 170 West Tasman Drive
        !            22:                 San Jose, CA  95134-1706
        !            23:                 US
        !            24:
        !            25:                 408-526-5260
        !            26:                 kzm@cisco.com"
        !            27:     DESCRIPTION
        !            28:             "The MIB module to describe generic objects for network
        !            29:             interface sub-layers.  This MIB is an updated version of
        !            30:             MIB-II's ifTable, and incorporates the extensions defined in
        !            31:             RFC 1229."
        !            32:
        !            33:     REVISION      "200006140000Z"
        !            34:     DESCRIPTION
        !            35:             "Clarifications agreed upon by the Interfaces MIB WG, and
        !            36:             published as RFC 2863."
        !            37:     REVISION      "199602282155Z"
        !            38:     DESCRIPTION
        !            39:             "Revisions made by the Interfaces MIB WG, and published in
        !            40:             RFC 2233."
        !            41:     REVISION      "199311082155Z"
        !            42:     DESCRIPTION
        !            43:             "Initial revision, published as part of RFC 1573."
        !            44:     ::= { mib-2 31 }
        !            45:
        !            46: ifMIBObjects OBJECT IDENTIFIER ::= { ifMIB 1 }
        !            47:
        !            48: interfaces   OBJECT IDENTIFIER ::= { mib-2 2 }
        !            49:
        !            50: --
        !            51: -- Textual Conventions
        !            52: --
        !            53:
        !            54: -- OwnerString has the same semantics as used in RFC 1271
        !            55:
        !            56: OwnerString ::= TEXTUAL-CONVENTION
        !            57:     DISPLAY-HINT "255a"
        !            58:     STATUS       deprecated
        !            59:     DESCRIPTION
        !            60:             "This data type is used to model an administratively
        !            61:             assigned name of the owner of a resource.  This information
        !            62:             is taken from the NVT ASCII character set.  It is suggested
        !            63:             that this name contain one or more of the following: ASCII
        !            64:             form of the manager station's transport address, management
        !            65:             station name (e.g., domain name), network management
        !            66:             personnel's name, location, or phone number.  In some cases
        !            67:             the agent itself will be the owner of an entry.  In these
        !            68:             cases, this string shall be set to a string starting with
        !            69:             'agent'."
        !            70:     SYNTAX       OCTET STRING (SIZE(0..255))
        !            71:
        !            72: -- InterfaceIndex contains the semantics of ifIndex and should be used
        !            73: -- for any objects defined in other MIB modules that need these semantics.
        !            74:
        !            75: InterfaceIndex ::= TEXTUAL-CONVENTION
        !            76:     DISPLAY-HINT "d"
        !            77:     STATUS       current
        !            78:     DESCRIPTION
        !            79:             "A unique value, greater than zero, for each interface or
        !            80:             interface sub-layer in the managed system.  It is
        !            81:             recommended that values are assigned contiguously starting
        !            82:             from 1.  The value for each interface sub-layer must remain
        !            83:             constant at least from one re-initialization of the entity's
        !            84:             network management system to the next re-initialization."
        !            85:     SYNTAX       Integer32 (1..2147483647)
        !            86:
        !            87: InterfaceIndexOrZero ::= TEXTUAL-CONVENTION
        !            88:     DISPLAY-HINT "d"
        !            89:     STATUS       current
        !            90:     DESCRIPTION
        !            91:             "This textual convention is an extension of the
        !            92:             InterfaceIndex convention.  The latter defines a greater
        !            93:             than zero value used to identify an interface or interface
        !            94:             sub-layer in the managed system.  This extension permits the
        !            95:             additional value of zero.  the value zero is object-specific
        !            96:             and must therefore be defined as part of the description of
        !            97:             any object which uses this syntax.  Examples of the usage of
        !            98:             zero might include situations where interface was unknown,
        !            99:             or when none or all interfaces need to be referenced."
        !           100:     SYNTAX       Integer32 (0..2147483647)
        !           101:
        !           102: ifNumber  OBJECT-TYPE
        !           103:     SYNTAX      Integer32
        !           104:     MAX-ACCESS  read-only
        !           105:     STATUS      current
        !           106:     DESCRIPTION
        !           107:             "The number of network interfaces (regardless of their
        !           108:             current state) present on this system."
        !           109:     ::= { interfaces 1 }
        !           110:
        !           111: ifTableLastChange  OBJECT-TYPE
        !           112:     SYNTAX      TimeTicks
        !           113:     MAX-ACCESS  read-only
        !           114:     STATUS      current
        !           115:     DESCRIPTION
        !           116:             "The value of sysUpTime at the time of the last creation or
        !           117:             deletion of an entry in the ifTable.  If the number of
        !           118:             entries has been unchanged since the last re-initialization
        !           119:             of the local network management subsystem, then this object
        !           120:             contains a zero value."
        !           121:     ::= { ifMIBObjects 5 }
        !           122:
        !           123: -- the Interfaces table
        !           124:
        !           125: -- The Interfaces table contains information on the entity's
        !           126:
        !           127: -- interfaces.  Each sub-layer below the internetwork-layer
        !           128: -- of a network interface is considered to be an interface.
        !           129:
        !           130: ifTable OBJECT-TYPE
        !           131:     SYNTAX      SEQUENCE OF IfEntry
        !           132:     MAX-ACCESS  not-accessible
        !           133:     STATUS      current
        !           134:     DESCRIPTION
        !           135:             "A list of interface entries.  The number of entries is
        !           136:             given by the value of ifNumber."
        !           137:     ::= { interfaces 2 }
        !           138:
        !           139: ifEntry OBJECT-TYPE
        !           140:     SYNTAX      IfEntry
        !           141:     MAX-ACCESS  not-accessible
        !           142:     STATUS      current
        !           143:     DESCRIPTION
        !           144:             "An entry containing management information applicable to a
        !           145:             particular interface."
        !           146:     INDEX   { ifIndex }
        !           147:     ::= { ifTable 1 }
        !           148:
        !           149: IfEntry ::=
        !           150:     SEQUENCE {
        !           151:         ifIndex                 InterfaceIndex,
        !           152:         ifDescr                 DisplayString,
        !           153:         ifType                  IANAifType,
        !           154:         ifMtu                   Integer32,
        !           155:         ifSpeed                 Gauge32,
        !           156:         ifPhysAddress           PhysAddress,
        !           157:         ifAdminStatus           INTEGER,
        !           158:         ifOperStatus            INTEGER,
        !           159:         ifLastChange            TimeTicks,
        !           160:         ifInOctets              Counter32,
        !           161:         ifInUcastPkts           Counter32,
        !           162:         ifInNUcastPkts          Counter32,  -- deprecated
        !           163:         ifInDiscards            Counter32,
        !           164:         ifInErrors              Counter32,
        !           165:         ifInUnknownProtos       Counter32,
        !           166:         ifOutOctets             Counter32,
        !           167:         ifOutUcastPkts          Counter32,
        !           168:         ifOutNUcastPkts         Counter32,  -- deprecated
        !           169:         ifOutDiscards           Counter32,
        !           170:         ifOutErrors             Counter32,
        !           171:         ifOutQLen               Gauge32,    -- deprecated
        !           172:         ifSpecific              OBJECT IDENTIFIER -- deprecated
        !           173:     }
        !           174:
        !           175: ifIndex OBJECT-TYPE
        !           176:     SYNTAX      InterfaceIndex
        !           177:     MAX-ACCESS  read-only
        !           178:     STATUS      current
        !           179:     DESCRIPTION
        !           180:             "A unique value, greater than zero, for each interface.  It
        !           181:             is recommended that values are assigned contiguously
        !           182:             starting from 1.  The value for each interface sub-layer
        !           183:             must remain constant at least from one re-initialization of
        !           184:             the entity's network management system to the next re-
        !           185:             initialization."
        !           186:     ::= { ifEntry 1 }
        !           187:
        !           188: ifDescr OBJECT-TYPE
        !           189:     SYNTAX      DisplayString (SIZE (0..255))
        !           190:     MAX-ACCESS  read-only
        !           191:     STATUS      current
        !           192:     DESCRIPTION
        !           193:             "A textual string containing information about the
        !           194:             interface.  This string should include the name of the
        !           195:             manufacturer, the product name and the version of the
        !           196:             interface hardware/software."
        !           197:     ::= { ifEntry 2 }
        !           198:
        !           199: ifType OBJECT-TYPE
        !           200:     SYNTAX      IANAifType
        !           201:     MAX-ACCESS  read-only
        !           202:     STATUS      current
        !           203:     DESCRIPTION
        !           204:             "The type of interface.  Additional values for ifType are
        !           205:             assigned by the Internet Assigned Numbers Authority (IANA),
        !           206:             through updating the syntax of the IANAifType textual
        !           207:             convention."
        !           208:     ::= { ifEntry 3 }
        !           209:
        !           210: ifMtu OBJECT-TYPE
        !           211:     SYNTAX      Integer32
        !           212:     MAX-ACCESS  read-only
        !           213:     STATUS      current
        !           214:     DESCRIPTION
        !           215:             "The size of the largest packet which can be sent/received
        !           216:             on the interface, specified in octets.  For interfaces that
        !           217:             are used for transmitting network datagrams, this is the
        !           218:             size of the largest network datagram that can be sent on the
        !           219:             interface."
        !           220:     ::= { ifEntry 4 }
        !           221:
        !           222: ifSpeed OBJECT-TYPE
        !           223:     SYNTAX      Gauge32
        !           224:     MAX-ACCESS  read-only
        !           225:     STATUS      current
        !           226:     DESCRIPTION
        !           227:             "An estimate of the interface's current bandwidth in bits
        !           228:             per second.  For interfaces which do not vary in bandwidth
        !           229:             or for those where no accurate estimation can be made, this
        !           230:             object should contain the nominal bandwidth.  If the
        !           231:             bandwidth of the interface is greater than the maximum value
        !           232:             reportable by this object then this object should report its
        !           233:             maximum value (4,294,967,295) and ifHighSpeed must be used
        !           234:             to report the interace's speed.  For a sub-layer which has
        !           235:             no concept of bandwidth, this object should be zero."
        !           236:     ::= { ifEntry 5 }
        !           237:
        !           238: ifPhysAddress OBJECT-TYPE
        !           239:     SYNTAX      PhysAddress
        !           240:     MAX-ACCESS  read-only
        !           241:     STATUS      current
        !           242:     DESCRIPTION
        !           243:             "The interface's address at its protocol sub-layer.  For
        !           244:             example, for an 802.x interface, this object normally
        !           245:             contains a MAC address.  The interface's media-specific MIB
        !           246:             must define the bit and byte ordering and the format of the
        !           247:             value of this object.  For interfaces which do not have such
        !           248:             an address (e.g., a serial line), this object should contain
        !           249:             an octet string of zero length."
        !           250:     ::= { ifEntry 6 }
        !           251:
        !           252: ifAdminStatus OBJECT-TYPE
        !           253:     SYNTAX  INTEGER {
        !           254:                 up(1),       -- ready to pass packets
        !           255:                 down(2),
        !           256:                 testing(3)   -- in some test mode
        !           257:             }
        !           258:     MAX-ACCESS  read-write
        !           259:     STATUS      current
        !           260:     DESCRIPTION
        !           261:             "The desired state of the interface.  The testing(3) state
        !           262:             indicates that no operational packets can be passed.  When a
        !           263:             managed system initializes, all interfaces start with
        !           264:             ifAdminStatus in the down(2) state.  As a result of either
        !           265:             explicit management action or per configuration information
        !           266:             retained by the managed system, ifAdminStatus is then
        !           267:             changed to either the up(1) or testing(3) states (or remains
        !           268:             in the down(2) state)."
        !           269:     ::= { ifEntry 7 }
        !           270:
        !           271: ifOperStatus OBJECT-TYPE
        !           272:     SYNTAX  INTEGER {
        !           273:                 up(1),        -- ready to pass packets
        !           274:                 down(2),
        !           275:                 testing(3),   -- in some test mode
        !           276:                 unknown(4),   -- status can not be determined
        !           277:                               -- for some reason.
        !           278:                 dormant(5),
        !           279:                 notPresent(6),    -- some component is missing
        !           280:                 lowerLayerDown(7) -- down due to state of
        !           281:                                   -- lower-layer interface(s)
        !           282:             }
        !           283:     MAX-ACCESS  read-only
        !           284:     STATUS      current
        !           285:     DESCRIPTION
        !           286:             "The current operational state of the interface.  The
        !           287:             testing(3) state indicates that no operational packets can
        !           288:             be passed.  If ifAdminStatus is down(2) then ifOperStatus
        !           289:             should be down(2).  If ifAdminStatus is changed to up(1)
        !           290:             then ifOperStatus should change to up(1) if the interface is
        !           291:             ready to transmit and receive network traffic; it should
        !           292:             change to dormant(5) if the interface is waiting for
        !           293:             external actions (such as a serial line waiting for an
        !           294:             incoming connection); it should remain in the down(2) state
        !           295:             if and only if there is a fault that prevents it from going
        !           296:             to the up(1) state; it should remain in the notPresent(6)
        !           297:             state if the interface has missing (typically, hardware)
        !           298:             components."
        !           299:     ::= { ifEntry 8 }
        !           300:
        !           301: ifLastChange OBJECT-TYPE
        !           302:     SYNTAX      TimeTicks
        !           303:     MAX-ACCESS  read-only
        !           304:     STATUS      current
        !           305:     DESCRIPTION
        !           306:             "The value of sysUpTime at the time the interface entered
        !           307:             its current operational state.  If the current state was
        !           308:             entered prior to the last re-initialization of the local
        !           309:             network management subsystem, then this object contains a
        !           310:             zero value."
        !           311:     ::= { ifEntry 9 }
        !           312:
        !           313: ifInOctets OBJECT-TYPE
        !           314:     SYNTAX      Counter32
        !           315:     MAX-ACCESS  read-only
        !           316:     STATUS      current
        !           317:     DESCRIPTION
        !           318:             "The total number of octets received on the interface,
        !           319:             including framing characters.
        !           320:
        !           321:             Discontinuities in the value of this counter can occur at
        !           322:             re-initialization of the management system, and at other
        !           323:             times as indicated by the value of
        !           324:             ifCounterDiscontinuityTime."
        !           325:     ::= { ifEntry 10 }
        !           326:
        !           327: ifInUcastPkts OBJECT-TYPE
        !           328:     SYNTAX      Counter32
        !           329:     MAX-ACCESS  read-only
        !           330:     STATUS      current
        !           331:     DESCRIPTION
        !           332:             "The number of packets, delivered by this sub-layer to a
        !           333:             higher (sub-)layer, which were not addressed to a multicast
        !           334:             or broadcast address at this sub-layer.
        !           335:
        !           336:             Discontinuities in the value of this counter can occur at
        !           337:             re-initialization of the management system, and at other
        !           338:             times as indicated by the value of
        !           339:             ifCounterDiscontinuityTime."
        !           340:     ::= { ifEntry 11 }
        !           341:
        !           342: ifInNUcastPkts OBJECT-TYPE
        !           343:     SYNTAX  Counter32
        !           344:     MAX-ACCESS  read-only
        !           345:     STATUS      deprecated
        !           346:     DESCRIPTION
        !           347:             "The number of packets, delivered by this sub-layer to a
        !           348:             higher (sub-)layer, which were addressed to a multicast or
        !           349:             broadcast address at this sub-layer.
        !           350:
        !           351:             Discontinuities in the value of this counter can occur at
        !           352:             re-initialization of the management system, and at other
        !           353:             times as indicated by the value of
        !           354:             ifCounterDiscontinuityTime.
        !           355:
        !           356:             This object is deprecated in favour of ifInMulticastPkts and
        !           357:             ifInBroadcastPkts."
        !           358:     ::= { ifEntry 12 }
        !           359:
        !           360: ifInDiscards OBJECT-TYPE
        !           361:     SYNTAX      Counter32
        !           362:     MAX-ACCESS  read-only
        !           363:     STATUS      current
        !           364:     DESCRIPTION
        !           365:             "The number of inbound packets which were chosen to be
        !           366:             discarded even though no errors had been detected to prevent
        !           367:
        !           368:             their being deliverable to a higher-layer protocol.  One
        !           369:             possible reason for discarding such a packet could be to
        !           370:             free up buffer space.
        !           371:
        !           372:             Discontinuities in the value of this counter can occur at
        !           373:             re-initialization of the management system, and at other
        !           374:             times as indicated by the value of
        !           375:             ifCounterDiscontinuityTime."
        !           376:     ::= { ifEntry 13 }
        !           377:
        !           378: ifInErrors OBJECT-TYPE
        !           379:     SYNTAX      Counter32
        !           380:     MAX-ACCESS  read-only
        !           381:     STATUS      current
        !           382:     DESCRIPTION
        !           383:             "For packet-oriented interfaces, the number of inbound
        !           384:             packets that contained errors preventing them from being
        !           385:             deliverable to a higher-layer protocol.  For character-
        !           386:             oriented or fixed-length interfaces, the number of inbound
        !           387:             transmission units that contained errors preventing them
        !           388:             from being deliverable to a higher-layer protocol.
        !           389:
        !           390:             Discontinuities in the value of this counter can occur at
        !           391:             re-initialization of the management system, and at other
        !           392:             times as indicated by the value of
        !           393:             ifCounterDiscontinuityTime."
        !           394:     ::= { ifEntry 14 }
        !           395:
        !           396: ifInUnknownProtos OBJECT-TYPE
        !           397:     SYNTAX      Counter32
        !           398:     MAX-ACCESS  read-only
        !           399:     STATUS      current
        !           400:     DESCRIPTION
        !           401:             "For packet-oriented interfaces, the number of packets
        !           402:             received via the interface which were discarded because of
        !           403:             an unknown or unsupported protocol.  For character-oriented
        !           404:             or fixed-length interfaces that support protocol
        !           405:             multiplexing the number of transmission units received via
        !           406:             the interface which were discarded because of an unknown or
        !           407:             unsupported protocol.  For any interface that does not
        !           408:             support protocol multiplexing, this counter will always be
        !           409:             0.
        !           410:
        !           411:             Discontinuities in the value of this counter can occur at
        !           412:             re-initialization of the management system, and at other
        !           413:             times as indicated by the value of
        !           414:             ifCounterDiscontinuityTime."
        !           415:     ::= { ifEntry 15 }
        !           416:
        !           417: ifOutOctets OBJECT-TYPE
        !           418:     SYNTAX      Counter32
        !           419:     MAX-ACCESS  read-only
        !           420:     STATUS      current
        !           421:     DESCRIPTION
        !           422:             "The total number of octets transmitted out of the
        !           423:             interface, including framing characters.
        !           424:
        !           425:             Discontinuities in the value of this counter can occur at
        !           426:             re-initialization of the management system, and at other
        !           427:             times as indicated by the value of
        !           428:             ifCounterDiscontinuityTime."
        !           429:     ::= { ifEntry 16 }
        !           430:
        !           431: ifOutUcastPkts OBJECT-TYPE
        !           432:     SYNTAX      Counter32
        !           433:     MAX-ACCESS  read-only
        !           434:     STATUS      current
        !           435:     DESCRIPTION
        !           436:             "The total number of packets that higher-level protocols
        !           437:             requested be transmitted, and which were not addressed to a
        !           438:             multicast or broadcast address at this sub-layer, including
        !           439:             those that were discarded or not sent.
        !           440:
        !           441:             Discontinuities in the value of this counter can occur at
        !           442:             re-initialization of the management system, and at other
        !           443:             times as indicated by the value of
        !           444:             ifCounterDiscontinuityTime."
        !           445:     ::= { ifEntry 17 }
        !           446:
        !           447: ifOutNUcastPkts OBJECT-TYPE
        !           448:     SYNTAX      Counter32
        !           449:     MAX-ACCESS  read-only
        !           450:     STATUS      deprecated
        !           451:     DESCRIPTION
        !           452:             "The total number of packets that higher-level protocols
        !           453:             requested be transmitted, and which were addressed to a
        !           454:             multicast or broadcast address at this sub-layer, including
        !           455:             those that were discarded or not sent.
        !           456:
        !           457:             Discontinuities in the value of this counter can occur at
        !           458:             re-initialization of the management system, and at other
        !           459:             times as indicated by the value of
        !           460:             ifCounterDiscontinuityTime.
        !           461:
        !           462:             This object is deprecated in favour of ifOutMulticastPkts
        !           463:             and ifOutBroadcastPkts."
        !           464:     ::= { ifEntry 18 }
        !           465:
        !           466: ifOutDiscards OBJECT-TYPE
        !           467:     SYNTAX      Counter32
        !           468:     MAX-ACCESS  read-only
        !           469:     STATUS      current
        !           470:     DESCRIPTION
        !           471:             "The number of outbound packets which were chosen to be
        !           472:             discarded even though no errors had been detected to prevent
        !           473:             their being transmitted.  One possible reason for discarding
        !           474:             such a packet could be to free up buffer space.
        !           475:
        !           476:             Discontinuities in the value of this counter can occur at
        !           477:             re-initialization of the management system, and at other
        !           478:             times as indicated by the value of
        !           479:             ifCounterDiscontinuityTime."
        !           480:     ::= { ifEntry 19 }
        !           481:
        !           482: ifOutErrors OBJECT-TYPE
        !           483:     SYNTAX      Counter32
        !           484:     MAX-ACCESS  read-only
        !           485:     STATUS      current
        !           486:     DESCRIPTION
        !           487:             "For packet-oriented interfaces, the number of outbound
        !           488:             packets that could not be transmitted because of errors.
        !           489:             For character-oriented or fixed-length interfaces, the
        !           490:             number of outbound transmission units that could not be
        !           491:             transmitted because of errors.
        !           492:
        !           493:             Discontinuities in the value of this counter can occur at
        !           494:             re-initialization of the management system, and at other
        !           495:             times as indicated by the value of
        !           496:             ifCounterDiscontinuityTime."
        !           497:     ::= { ifEntry 20 }
        !           498:
        !           499: ifOutQLen OBJECT-TYPE
        !           500:     SYNTAX      Gauge32
        !           501:     MAX-ACCESS  read-only
        !           502:     STATUS      deprecated
        !           503:     DESCRIPTION
        !           504:             "The length of the output packet queue (in packets)."
        !           505:     ::= { ifEntry 21 }
        !           506:
        !           507: ifSpecific OBJECT-TYPE
        !           508:     SYNTAX      OBJECT IDENTIFIER
        !           509:     MAX-ACCESS  read-only
        !           510:     STATUS      deprecated
        !           511:     DESCRIPTION
        !           512:             "A reference to MIB definitions specific to the particular
        !           513:             media being used to realize the interface.  It is
        !           514:
        !           515:             recommended that this value point to an instance of a MIB
        !           516:             object in the media-specific MIB, i.e., that this object
        !           517:             have the semantics associated with the InstancePointer
        !           518:             textual convention defined in RFC 2579.  In fact, it is
        !           519:             recommended that the media-specific MIB specify what value
        !           520:             ifSpecific should/can take for values of ifType.  If no MIB
        !           521:             definitions specific to the particular media are available,
        !           522:             the value should be set to the OBJECT IDENTIFIER { 0 0 }."
        !           523:     ::= { ifEntry 22 }
        !           524:
        !           525: --
        !           526: --   Extension to the interface table
        !           527: --
        !           528: -- This table replaces the ifExtnsTable table.
        !           529: --
        !           530:
        !           531: ifXTable        OBJECT-TYPE
        !           532:     SYNTAX      SEQUENCE OF IfXEntry
        !           533:     MAX-ACCESS  not-accessible
        !           534:     STATUS      current
        !           535:     DESCRIPTION
        !           536:             "A list of interface entries.  The number of entries is
        !           537:             given by the value of ifNumber.  This table contains
        !           538:             additional objects for the interface table."
        !           539:     ::= { ifMIBObjects 1 }
        !           540:
        !           541: ifXEntry        OBJECT-TYPE
        !           542:     SYNTAX      IfXEntry
        !           543:     MAX-ACCESS  not-accessible
        !           544:     STATUS      current
        !           545:     DESCRIPTION
        !           546:             "An entry containing additional management information
        !           547:             applicable to a particular interface."
        !           548:     AUGMENTS    { ifEntry }
        !           549:     ::= { ifXTable 1 }
        !           550:
        !           551: IfXEntry ::=
        !           552:     SEQUENCE {
        !           553:         ifName                  DisplayString,
        !           554:         ifInMulticastPkts       Counter32,
        !           555:         ifInBroadcastPkts       Counter32,
        !           556:         ifOutMulticastPkts      Counter32,
        !           557:         ifOutBroadcastPkts      Counter32,
        !           558:         ifHCInOctets            Counter64,
        !           559:         ifHCInUcastPkts         Counter64,
        !           560:         ifHCInMulticastPkts     Counter64,
        !           561:         ifHCInBroadcastPkts     Counter64,
        !           562:         ifHCOutOctets           Counter64,
        !           563:         ifHCOutUcastPkts        Counter64,
        !           564:         ifHCOutMulticastPkts    Counter64,
        !           565:         ifHCOutBroadcastPkts    Counter64,
        !           566:         ifLinkUpDownTrapEnable  INTEGER,
        !           567:         ifHighSpeed             Gauge32,
        !           568:         ifPromiscuousMode       TruthValue,
        !           569:         ifConnectorPresent      TruthValue,
        !           570:         ifAlias                 DisplayString,
        !           571:         ifCounterDiscontinuityTime TimeStamp
        !           572:     }
        !           573:
        !           574: ifName OBJECT-TYPE
        !           575:     SYNTAX      DisplayString
        !           576:     MAX-ACCESS  read-only
        !           577:     STATUS      current
        !           578:     DESCRIPTION
        !           579:             "The textual name of the interface.  The value of this
        !           580:             object should be the name of the interface as assigned by
        !           581:             the local device and should be suitable for use in commands
        !           582:             entered at the device's `console'.  This might be a text
        !           583:             name, such as `le0' or a simple port number, such as `1',
        !           584:             depending on the interface naming syntax of the device.  If
        !           585:             several entries in the ifTable together represent a single
        !           586:             interface as named by the device, then each will have the
        !           587:             same value of ifName.  Note that for an agent which responds
        !           588:             to SNMP queries concerning an interface on some other
        !           589:             (proxied) device, then the value of ifName for such an
        !           590:             interface is the proxied device's local name for it.
        !           591:
        !           592:             If there is no local name, or this object is otherwise not
        !           593:             applicable, then this object contains a zero-length string."
        !           594:     ::= { ifXEntry 1 }
        !           595:
        !           596: ifInMulticastPkts OBJECT-TYPE
        !           597:     SYNTAX      Counter32
        !           598:     MAX-ACCESS  read-only
        !           599:     STATUS      current
        !           600:     DESCRIPTION
        !           601:             "The number of packets, delivered by this sub-layer to a
        !           602:             higher (sub-)layer, which were addressed to a multicast
        !           603:             address at this sub-layer.  For a MAC layer protocol, this
        !           604:             includes both Group and Functional addresses.
        !           605:
        !           606:             Discontinuities in the value of this counter can occur at
        !           607:             re-initialization of the management system, and at other
        !           608:
        !           609:             times as indicated by the value of
        !           610:             ifCounterDiscontinuityTime."
        !           611:     ::= { ifXEntry 2 }
        !           612:
        !           613: ifInBroadcastPkts OBJECT-TYPE
        !           614:     SYNTAX      Counter32
        !           615:     MAX-ACCESS  read-only
        !           616:     STATUS      current
        !           617:     DESCRIPTION
        !           618:             "The number of packets, delivered by this sub-layer to a
        !           619:             higher (sub-)layer, which were addressed to a broadcast
        !           620:             address at this sub-layer.
        !           621:
        !           622:             Discontinuities in the value of this counter can occur at
        !           623:             re-initialization of the management system, and at other
        !           624:             times as indicated by the value of
        !           625:             ifCounterDiscontinuityTime."
        !           626:     ::= { ifXEntry 3 }
        !           627:
        !           628: ifOutMulticastPkts OBJECT-TYPE
        !           629:     SYNTAX      Counter32
        !           630:     MAX-ACCESS  read-only
        !           631:     STATUS      current
        !           632:     DESCRIPTION
        !           633:             "The total number of packets that higher-level protocols
        !           634:             requested be transmitted, and which were addressed to a
        !           635:             multicast address at this sub-layer, including those that
        !           636:             were discarded or not sent.  For a MAC layer protocol, this
        !           637:             includes both Group and Functional addresses.
        !           638:
        !           639:             Discontinuities in the value of this counter can occur at
        !           640:             re-initialization of the management system, and at other
        !           641:             times as indicated by the value of
        !           642:             ifCounterDiscontinuityTime."
        !           643:     ::= { ifXEntry 4 }
        !           644:
        !           645: ifOutBroadcastPkts OBJECT-TYPE
        !           646:     SYNTAX      Counter32
        !           647:     MAX-ACCESS  read-only
        !           648:     STATUS      current
        !           649:     DESCRIPTION
        !           650:             "The total number of packets that higher-level protocols
        !           651:             requested be transmitted, and which were addressed to a
        !           652:             broadcast address at this sub-layer, including those that
        !           653:             were discarded or not sent.
        !           654:
        !           655:             Discontinuities in the value of this counter can occur at
        !           656:             re-initialization of the management system, and at other
        !           657:
        !           658:             times as indicated by the value of
        !           659:             ifCounterDiscontinuityTime."
        !           660:     ::= { ifXEntry 5 }
        !           661:
        !           662: --
        !           663: -- High Capacity Counter objects.  These objects are all
        !           664: -- 64 bit versions of the "basic" ifTable counters.  These
        !           665: -- objects all have the same basic semantics as their 32-bit
        !           666: -- counterparts, however, their syntax has been extended
        !           667: -- to 64 bits.
        !           668: --
        !           669:
        !           670: ifHCInOctets OBJECT-TYPE
        !           671:     SYNTAX      Counter64
        !           672:     MAX-ACCESS  read-only
        !           673:     STATUS      current
        !           674:     DESCRIPTION
        !           675:             "The total number of octets received on the interface,
        !           676:             including framing characters.  This object is a 64-bit
        !           677:             version of ifInOctets.
        !           678:
        !           679:             Discontinuities in the value of this counter can occur at
        !           680:             re-initialization of the management system, and at other
        !           681:             times as indicated by the value of
        !           682:             ifCounterDiscontinuityTime."
        !           683:     ::= { ifXEntry 6 }
        !           684:
        !           685: ifHCInUcastPkts OBJECT-TYPE
        !           686:     SYNTAX      Counter64
        !           687:     MAX-ACCESS  read-only
        !           688:     STATUS      current
        !           689:     DESCRIPTION
        !           690:             "The number of packets, delivered by this sub-layer to a
        !           691:             higher (sub-)layer, which were not addressed to a multicast
        !           692:             or broadcast address at this sub-layer.  This object is a
        !           693:             64-bit version of ifInUcastPkts.
        !           694:
        !           695:             Discontinuities in the value of this counter can occur at
        !           696:             re-initialization of the management system, and at other
        !           697:             times as indicated by the value of
        !           698:             ifCounterDiscontinuityTime."
        !           699:     ::= { ifXEntry 7 }
        !           700:
        !           701: ifHCInMulticastPkts OBJECT-TYPE
        !           702:     SYNTAX      Counter64
        !           703:     MAX-ACCESS  read-only
        !           704:     STATUS      current
        !           705:     DESCRIPTION
        !           706:             "The number of packets, delivered by this sub-layer to a
        !           707:             higher (sub-)layer, which were addressed to a multicast
        !           708:             address at this sub-layer.  For a MAC layer protocol, this
        !           709:             includes both Group and Functional addresses.  This object
        !           710:             is a 64-bit version of ifInMulticastPkts.
        !           711:
        !           712:             Discontinuities in the value of this counter can occur at
        !           713:             re-initialization of the management system, and at other
        !           714:             times as indicated by the value of
        !           715:             ifCounterDiscontinuityTime."
        !           716:     ::= { ifXEntry 8 }
        !           717:
        !           718: ifHCInBroadcastPkts OBJECT-TYPE
        !           719:     SYNTAX      Counter64
        !           720:     MAX-ACCESS  read-only
        !           721:     STATUS      current
        !           722:     DESCRIPTION
        !           723:             "The number of packets, delivered by this sub-layer to a
        !           724:             higher (sub-)layer, which were addressed to a broadcast
        !           725:             address at this sub-layer.  This object is a 64-bit version
        !           726:             of ifInBroadcastPkts.
        !           727:
        !           728:             Discontinuities in the value of this counter can occur at
        !           729:             re-initialization of the management system, and at other
        !           730:             times as indicated by the value of
        !           731:             ifCounterDiscontinuityTime."
        !           732:     ::= { ifXEntry 9 }
        !           733:
        !           734: ifHCOutOctets OBJECT-TYPE
        !           735:     SYNTAX      Counter64
        !           736:     MAX-ACCESS  read-only
        !           737:     STATUS      current
        !           738:     DESCRIPTION
        !           739:             "The total number of octets transmitted out of the
        !           740:             interface, including framing characters.  This object is a
        !           741:             64-bit version of ifOutOctets.
        !           742:
        !           743:             Discontinuities in the value of this counter can occur at
        !           744:             re-initialization of the management system, and at other
        !           745:             times as indicated by the value of
        !           746:             ifCounterDiscontinuityTime."
        !           747:     ::= { ifXEntry 10 }
        !           748:
        !           749: ifHCOutUcastPkts OBJECT-TYPE
        !           750:     SYNTAX      Counter64
        !           751:     MAX-ACCESS  read-only
        !           752:     STATUS      current
        !           753:     DESCRIPTION
        !           754:             "The total number of packets that higher-level protocols
        !           755:             requested be transmitted, and which were not addressed to a
        !           756:             multicast or broadcast address at this sub-layer, including
        !           757:             those that were discarded or not sent.  This object is a
        !           758:             64-bit version of ifOutUcastPkts.
        !           759:
        !           760:             Discontinuities in the value of this counter can occur at
        !           761:             re-initialization of the management system, and at other
        !           762:             times as indicated by the value of
        !           763:             ifCounterDiscontinuityTime."
        !           764:     ::= { ifXEntry 11 }
        !           765:
        !           766: ifHCOutMulticastPkts OBJECT-TYPE
        !           767:     SYNTAX      Counter64
        !           768:     MAX-ACCESS  read-only
        !           769:     STATUS      current
        !           770:     DESCRIPTION
        !           771:             "The total number of packets that higher-level protocols
        !           772:             requested be transmitted, and which were addressed to a
        !           773:             multicast address at this sub-layer, including those that
        !           774:             were discarded or not sent.  For a MAC layer protocol, this
        !           775:             includes both Group and Functional addresses.  This object
        !           776:             is a 64-bit version of ifOutMulticastPkts.
        !           777:
        !           778:             Discontinuities in the value of this counter can occur at
        !           779:             re-initialization of the management system, and at other
        !           780:             times as indicated by the value of
        !           781:             ifCounterDiscontinuityTime."
        !           782:     ::= { ifXEntry 12 }
        !           783:
        !           784: ifHCOutBroadcastPkts OBJECT-TYPE
        !           785:     SYNTAX      Counter64
        !           786:     MAX-ACCESS  read-only
        !           787:     STATUS      current
        !           788:     DESCRIPTION
        !           789:             "The total number of packets that higher-level protocols
        !           790:             requested be transmitted, and which were addressed to a
        !           791:             broadcast address at this sub-layer, including those that
        !           792:             were discarded or not sent.  This object is a 64-bit version
        !           793:             of ifOutBroadcastPkts.
        !           794:
        !           795:             Discontinuities in the value of this counter can occur at
        !           796:             re-initialization of the management system, and at other
        !           797:             times as indicated by the value of
        !           798:             ifCounterDiscontinuityTime."
        !           799:     ::= { ifXEntry 13 }
        !           800:
        !           801: ifLinkUpDownTrapEnable  OBJECT-TYPE
        !           802:     SYNTAX      INTEGER { enabled(1), disabled(2) }
        !           803:     MAX-ACCESS  read-write
        !           804:     STATUS      current
        !           805:     DESCRIPTION
        !           806:             "Indicates whether linkUp/linkDown traps should be generated
        !           807:             for this interface.
        !           808:
        !           809:             By default, this object should have the value enabled(1) for
        !           810:             interfaces which do not operate on 'top' of any other
        !           811:             interface (as defined in the ifStackTable), and disabled(2)
        !           812:             otherwise."
        !           813:     ::= { ifXEntry 14 }
        !           814:
        !           815: ifHighSpeed OBJECT-TYPE
        !           816:     SYNTAX      Gauge32
        !           817:     MAX-ACCESS  read-only
        !           818:     STATUS      current
        !           819:     DESCRIPTION
        !           820:             "An estimate of the interface's current bandwidth in units
        !           821:             of 1,000,000 bits per second.  If this object reports a
        !           822:             value of `n' then the speed of the interface is somewhere in
        !           823:             the range of `n-500,000' to `n+499,999'.  For interfaces
        !           824:             which do not vary in bandwidth or for those where no
        !           825:             accurate estimation can be made, this object should contain
        !           826:             the nominal bandwidth.  For a sub-layer which has no concept
        !           827:             of bandwidth, this object should be zero."
        !           828:     ::= { ifXEntry 15 }
        !           829:
        !           830: ifPromiscuousMode  OBJECT-TYPE
        !           831:     SYNTAX      TruthValue
        !           832:     MAX-ACCESS  read-write
        !           833:     STATUS      current
        !           834:     DESCRIPTION
        !           835:             "This object has a value of false(2) if this interface only
        !           836:             accepts packets/frames that are addressed to this station.
        !           837:             This object has a value of true(1) when the station accepts
        !           838:             all packets/frames transmitted on the media.  The value
        !           839:             true(1) is only legal on certain types of media.  If legal,
        !           840:             setting this object to a value of true(1) may require the
        !           841:             interface to be reset before becoming effective.
        !           842:
        !           843:             The value of ifPromiscuousMode does not affect the reception
        !           844:             of broadcast and multicast packets/frames by the interface."
        !           845:     ::= { ifXEntry 16 }
        !           846:
        !           847: ifConnectorPresent   OBJECT-TYPE
        !           848:     SYNTAX      TruthValue
        !           849:     MAX-ACCESS  read-only
        !           850:     STATUS      current
        !           851:     DESCRIPTION
        !           852:             "This object has the value 'true(1)' if the interface
        !           853:             sublayer has a physical connector and the value 'false(2)'
        !           854:             otherwise."
        !           855:     ::= { ifXEntry 17 }
        !           856:
        !           857: ifAlias   OBJECT-TYPE
        !           858:     SYNTAX      DisplayString (SIZE(0..64))
        !           859:     MAX-ACCESS  read-write
        !           860:     STATUS      current
        !           861:     DESCRIPTION
        !           862:             "This object is an 'alias' name for the interface as
        !           863:             specified by a network manager, and provides a non-volatile
        !           864:             'handle' for the interface.
        !           865:
        !           866:             On the first instantiation of an interface, the value of
        !           867:             ifAlias associated with that interface is the zero-length
        !           868:             string.  As and when a value is written into an instance of
        !           869:             ifAlias through a network management set operation, then the
        !           870:             agent must retain the supplied value in the ifAlias instance
        !           871:             associated with the same interface for as long as that
        !           872:             interface remains instantiated, including across all re-
        !           873:             initializations/reboots of the network management system,
        !           874:             including those which result in a change of the interface's
        !           875:             ifIndex value.
        !           876:
        !           877:             An example of the value which a network manager might store
        !           878:             in this object for a WAN interface is the (Telco's) circuit
        !           879:             number/identifier of the interface.
        !           880:
        !           881:             Some agents may support write-access only for interfaces
        !           882:             having particular values of ifType.  An agent which supports
        !           883:             write access to this object is required to keep the value in
        !           884:             non-volatile storage, but it may limit the length of new
        !           885:             values depending on how much storage is already occupied by
        !           886:             the current values for other interfaces."
        !           887:     ::= { ifXEntry 18 }
        !           888:
        !           889: ifCounterDiscontinuityTime OBJECT-TYPE
        !           890:     SYNTAX      TimeStamp
        !           891:     MAX-ACCESS  read-only
        !           892:     STATUS      current
        !           893:     DESCRIPTION
        !           894:             "The value of sysUpTime on the most recent occasion at which
        !           895:             any one or more of this interface's counters suffered a
        !           896:             discontinuity.  The relevant counters are the specific
        !           897:             instances associated with this interface of any Counter32 or
        !           898:
        !           899:             Counter64 object contained in the ifTable or ifXTable.  If
        !           900:             no such discontinuities have occurred since the last re-
        !           901:             initialization of the local management subsystem, then this
        !           902:             object contains a zero value."
        !           903:     ::= { ifXEntry 19 }
        !           904:
        !           905: --           The Interface Stack Group
        !           906: --
        !           907: -- Implementation of this group is optional, but strongly recommended
        !           908: -- for all systems
        !           909: --
        !           910:
        !           911: ifStackTable  OBJECT-TYPE
        !           912:      SYNTAX        SEQUENCE OF IfStackEntry
        !           913:      MAX-ACCESS    not-accessible
        !           914:      STATUS        current
        !           915:      DESCRIPTION
        !           916:             "The table containing information on the relationships
        !           917:             between the multiple sub-layers of network interfaces.  In
        !           918:             particular, it contains information on which sub-layers run
        !           919:             'on top of' which other sub-layers, where each sub-layer
        !           920:             corresponds to a conceptual row in the ifTable.  For
        !           921:             example, when the sub-layer with ifIndex value x runs over
        !           922:             the sub-layer with ifIndex value y, then this table
        !           923:             contains:
        !           924:
        !           925:               ifStackStatus.x.y=active
        !           926:
        !           927:             For each ifIndex value, I, which identifies an active
        !           928:             interface, there are always at least two instantiated rows
        !           929:             in this table associated with I.  For one of these rows, I
        !           930:             is the value of ifStackHigherLayer; for the other, I is the
        !           931:             value of ifStackLowerLayer.  (If I is not involved in
        !           932:             multiplexing, then these are the only two rows associated
        !           933:             with I.)
        !           934:
        !           935:             For example, two rows exist even for an interface which has
        !           936:             no others stacked on top or below it:
        !           937:
        !           938:               ifStackStatus.0.x=active
        !           939:               ifStackStatus.x.0=active "
        !           940:      ::= { ifMIBObjects 2 }
        !           941:
        !           942: ifStackEntry  OBJECT-TYPE
        !           943:      SYNTAX        IfStackEntry
        !           944:      MAX-ACCESS    not-accessible
        !           945:      STATUS        current
        !           946:      DESCRIPTION
        !           947:             "Information on a particular relationship between two sub-
        !           948:             layers, specifying that one sub-layer runs on 'top' of the
        !           949:             other sub-layer.  Each sub-layer corresponds to a conceptual
        !           950:             row in the ifTable."
        !           951:      INDEX { ifStackHigherLayer, ifStackLowerLayer }
        !           952:      ::= { ifStackTable 1 }
        !           953:
        !           954: IfStackEntry ::=
        !           955:     SEQUENCE {
        !           956:         ifStackHigherLayer  InterfaceIndexOrZero,
        !           957:         ifStackLowerLayer   InterfaceIndexOrZero,
        !           958:         ifStackStatus       RowStatus
        !           959:      }
        !           960:
        !           961: ifStackHigherLayer  OBJECT-TYPE
        !           962:      SYNTAX        InterfaceIndexOrZero
        !           963:      MAX-ACCESS    not-accessible
        !           964:      STATUS        current
        !           965:      DESCRIPTION
        !           966:             "The value of ifIndex corresponding to the higher sub-layer
        !           967:             of the relationship, i.e., the sub-layer which runs on 'top'
        !           968:             of the sub-layer identified by the corresponding instance of
        !           969:             ifStackLowerLayer.  If there is no higher sub-layer (below
        !           970:             the internetwork layer), then this object has the value 0."
        !           971:      ::= { ifStackEntry 1 }
        !           972:
        !           973: ifStackLowerLayer  OBJECT-TYPE
        !           974:      SYNTAX        InterfaceIndexOrZero
        !           975:      MAX-ACCESS    not-accessible
        !           976:      STATUS        current
        !           977:      DESCRIPTION
        !           978:             "The value of ifIndex corresponding to the lower sub-layer
        !           979:             of the relationship, i.e., the sub-layer which runs 'below'
        !           980:             the sub-layer identified by the corresponding instance of
        !           981:             ifStackHigherLayer.  If there is no lower sub-layer, then
        !           982:             this object has the value 0."
        !           983:      ::= { ifStackEntry 2 }
        !           984:
        !           985: ifStackStatus  OBJECT-TYPE
        !           986:     SYNTAX         RowStatus
        !           987:     MAX-ACCESS     read-create
        !           988:     STATUS         current
        !           989:     DESCRIPTION
        !           990:             "The status of the relationship between two sub-layers.
        !           991:
        !           992:             Changing the value of this object from 'active' to
        !           993:             'notInService' or 'destroy' will likely have consequences up
        !           994:             and down the interface stack.  Thus, write access to this
        !           995:             object is likely to be inappropriate for some types of
        !           996:             interfaces, and many implementations will choose not to
        !           997:             support write-access for any type of interface."
        !           998:     ::= { ifStackEntry 3 }
        !           999:
        !          1000: ifStackLastChange OBJECT-TYPE
        !          1001:     SYNTAX         TimeTicks
        !          1002:     MAX-ACCESS     read-only
        !          1003:     STATUS         current
        !          1004:     DESCRIPTION
        !          1005:             "The value of sysUpTime at the time of the last change of
        !          1006:             the (whole) interface stack.  A change of the interface
        !          1007:             stack is defined to be any creation, deletion, or change in
        !          1008:             value of any instance of ifStackStatus.  If the interface
        !          1009:             stack has been unchanged since the last re-initialization of
        !          1010:             the local network management subsystem, then this object
        !          1011:             contains a zero value."
        !          1012:     ::= { ifMIBObjects 6 }
        !          1013:
        !          1014: --   Generic Receive Address Table
        !          1015: --
        !          1016: -- This group of objects is mandatory for all types of
        !          1017: -- interfaces which can receive packets/frames addressed to
        !          1018: -- more than one address.
        !          1019: --
        !          1020: -- This table replaces the ifExtnsRcvAddr table.  The main
        !          1021: -- difference is that this table makes use of the RowStatus
        !          1022: -- textual convention, while ifExtnsRcvAddr did not.
        !          1023:
        !          1024: ifRcvAddressTable  OBJECT-TYPE
        !          1025:     SYNTAX      SEQUENCE OF IfRcvAddressEntry
        !          1026:     MAX-ACCESS  not-accessible
        !          1027:     STATUS      current
        !          1028:     DESCRIPTION
        !          1029:             "This table contains an entry for each address (broadcast,
        !          1030:             multicast, or uni-cast) for which the system will receive
        !          1031:             packets/frames on a particular interface, except as follows:
        !          1032:
        !          1033:             - for an interface operating in promiscuous mode, entries
        !          1034:             are only required for those addresses for which the system
        !          1035:             would receive frames were it not operating in promiscuous
        !          1036:             mode.
        !          1037:
        !          1038:             - for 802.5 functional addresses, only one entry is
        !          1039:             required, for the address which has the functional address
        !          1040:             bit ANDed with the bit mask of all functional addresses for
        !          1041:             which the interface will accept frames.
        !          1042:
        !          1043:             A system is normally able to use any unicast address which
        !          1044:             corresponds to an entry in this table as a source address."
        !          1045:     ::= { ifMIBObjects 4 }
        !          1046:
        !          1047: ifRcvAddressEntry  OBJECT-TYPE
        !          1048:     SYNTAX      IfRcvAddressEntry
        !          1049:     MAX-ACCESS  not-accessible
        !          1050:     STATUS      current
        !          1051:     DESCRIPTION
        !          1052:             "A list of objects identifying an address for which the
        !          1053:             system will accept packets/frames on the particular
        !          1054:             interface identified by the index value ifIndex."
        !          1055:     INDEX  { ifIndex, ifRcvAddressAddress }
        !          1056:     ::= { ifRcvAddressTable 1 }
        !          1057:
        !          1058: IfRcvAddressEntry ::=
        !          1059:     SEQUENCE {
        !          1060:         ifRcvAddressAddress   PhysAddress,
        !          1061:         ifRcvAddressStatus    RowStatus,
        !          1062:         ifRcvAddressType      INTEGER
        !          1063:     }
        !          1064:
        !          1065: ifRcvAddressAddress OBJECT-TYPE
        !          1066:     SYNTAX      PhysAddress
        !          1067:     MAX-ACCESS  not-accessible
        !          1068:     STATUS      current
        !          1069:     DESCRIPTION
        !          1070:             "An address for which the system will accept packets/frames
        !          1071:             on this entry's interface."
        !          1072:     ::= { ifRcvAddressEntry 1 }
        !          1073:
        !          1074: ifRcvAddressStatus OBJECT-TYPE
        !          1075:     SYNTAX      RowStatus
        !          1076:     MAX-ACCESS  read-create
        !          1077:     STATUS      current
        !          1078:     DESCRIPTION
        !          1079:             "This object is used to create and delete rows in the
        !          1080:             ifRcvAddressTable."
        !          1081:     ::= { ifRcvAddressEntry 2 }
        !          1082:
        !          1083: ifRcvAddressType OBJECT-TYPE
        !          1084:     SYNTAX      INTEGER {
        !          1085:
        !          1086:                     other(1),
        !          1087:                     volatile(2),
        !          1088:                     nonVolatile(3)
        !          1089:                 }
        !          1090:     MAX-ACCESS  read-create
        !          1091:     STATUS      current
        !          1092:     DESCRIPTION
        !          1093:             "This object has the value nonVolatile(3) for those entries
        !          1094:             in the table which are valid and will not be deleted by the
        !          1095:             next restart of the managed system.  Entries having the
        !          1096:             value volatile(2) are valid and exist, but have not been
        !          1097:             saved, so that will not exist after the next restart of the
        !          1098:             managed system.  Entries having the value other(1) are valid
        !          1099:             and exist but are not classified as to whether they will
        !          1100:             continue to exist after the next restart."
        !          1101:     DEFVAL  { volatile }
        !          1102:     ::= { ifRcvAddressEntry 3 }
        !          1103:
        !          1104: -- definition of interface-related traps.
        !          1105:
        !          1106: linkDown NOTIFICATION-TYPE
        !          1107:     OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
        !          1108:     STATUS  current
        !          1109:     DESCRIPTION
        !          1110:             "A linkDown trap signifies that the SNMP entity, acting in
        !          1111:             an agent role, has detected that the ifOperStatus object for
        !          1112:             one of its communication links is about to enter the down
        !          1113:             state from some other state (but not from the notPresent
        !          1114:             state).  This other state is indicated by the included value
        !          1115:             of ifOperStatus."
        !          1116:     ::= { snmpTraps 3 }
        !          1117:
        !          1118: linkUp NOTIFICATION-TYPE
        !          1119:     OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
        !          1120:     STATUS  current
        !          1121:     DESCRIPTION
        !          1122:             "A linkUp trap signifies that the SNMP entity, acting in an
        !          1123:             agent role, has detected that the ifOperStatus object for
        !          1124:             one of its communication links left the down state and
        !          1125:             transitioned into some other state (but not into the
        !          1126:             notPresent state).  This other state is indicated by the
        !          1127:             included value of ifOperStatus."
        !          1128:     ::= { snmpTraps 4 }
        !          1129:
        !          1130: -- conformance information
        !          1131:
        !          1132: ifConformance OBJECT IDENTIFIER ::= { ifMIB 2 }
        !          1133:
        !          1134: ifGroups      OBJECT IDENTIFIER ::= { ifConformance 1 }
        !          1135: ifCompliances OBJECT IDENTIFIER ::= { ifConformance 2 }
        !          1136:
        !          1137: -- compliance statements
        !          1138:
        !          1139: ifCompliance3 MODULE-COMPLIANCE
        !          1140:     STATUS  current
        !          1141:     DESCRIPTION
        !          1142:             "The compliance statement for SNMP entities which have
        !          1143:             network interfaces."
        !          1144:
        !          1145:     MODULE  -- this module
        !          1146:         MANDATORY-GROUPS { ifGeneralInformationGroup,
        !          1147:                            linkUpDownNotificationsGroup }
        !          1148:
        !          1149: -- The groups:
        !          1150: --        ifFixedLengthGroup
        !          1151: --        ifHCFixedLengthGroup
        !          1152: --        ifPacketGroup
        !          1153: --        ifHCPacketGroup
        !          1154: --        ifVHCPacketGroup
        !          1155: -- are mutually exclusive; at most one of these groups is implemented
        !          1156: -- for a particular interface.  When any of these groups is implemented
        !          1157: -- for a particular interface, then ifCounterDiscontinuityGroup must
        !          1158: -- also be implemented for that interface.
        !          1159:
        !          1160:         GROUP       ifFixedLengthGroup
        !          1161:         DESCRIPTION
        !          1162:             "This group is mandatory for those network interfaces which
        !          1163:             are character-oriented or transmit data in fixed-length
        !          1164:             transmission units, and for which the value of the
        !          1165:             corresponding instance of ifSpeed is less than or equal to
        !          1166:             20,000,000 bits/second."
        !          1167:
        !          1168:         GROUP       ifHCFixedLengthGroup
        !          1169:         DESCRIPTION
        !          1170:             "This group is mandatory for those network interfaces which
        !          1171:             are character-oriented or transmit data in fixed-length
        !          1172:             transmission units, and for which the value of the
        !          1173:             corresponding instance of ifSpeed is greater than 20,000,000
        !          1174:             bits/second."
        !          1175:
        !          1176:         GROUP       ifPacketGroup
        !          1177:         DESCRIPTION
        !          1178:             "This group is mandatory for those network interfaces which
        !          1179:             are packet-oriented, and for which the value of the
        !          1180:             corresponding instance of ifSpeed is less than or equal to
        !          1181:             20,000,000 bits/second."
        !          1182:
        !          1183:         GROUP       ifHCPacketGroup
        !          1184:         DESCRIPTION
        !          1185:             "This group is mandatory only for those network interfaces
        !          1186:             which are packet-oriented and for which the value of the
        !          1187:             corresponding instance of ifSpeed is greater than 20,000,000
        !          1188:             bits/second but less than or equal to 650,000,000
        !          1189:             bits/second."
        !          1190:
        !          1191:         GROUP       ifVHCPacketGroup
        !          1192:         DESCRIPTION
        !          1193:             "This group is mandatory only for those network interfaces
        !          1194:             which are packet-oriented and for which the value of the
        !          1195:             corresponding instance of ifSpeed is greater than
        !          1196:             650,000,000 bits/second."
        !          1197:
        !          1198:         GROUP       ifCounterDiscontinuityGroup
        !          1199:         DESCRIPTION
        !          1200:             "This group is mandatory for those network interfaces that
        !          1201:             are required to maintain counters (i.e., those for which one
        !          1202:             of the ifFixedLengthGroup, ifHCFixedLengthGroup,
        !          1203:             ifPacketGroup, ifHCPacketGroup, or ifVHCPacketGroup is
        !          1204:             mandatory)."
        !          1205:
        !          1206:         GROUP       ifRcvAddressGroup
        !          1207:         DESCRIPTION
        !          1208:             "The applicability of this group MUST be defined by the
        !          1209:             media-specific MIBs.  Media-specific MIBs must define the
        !          1210:             exact meaning, use, and semantics of the addresses in this
        !          1211:             group."
        !          1212:
        !          1213:         OBJECT      ifLinkUpDownTrapEnable
        !          1214:         MIN-ACCESS  read-only
        !          1215:         DESCRIPTION
        !          1216:             "Write access is not required."
        !          1217:
        !          1218:         OBJECT      ifPromiscuousMode
        !          1219:         MIN-ACCESS  read-only
        !          1220:         DESCRIPTION
        !          1221:             "Write access is not required."
        !          1222:
        !          1223:         OBJECT       ifAdminStatus
        !          1224:         SYNTAX       INTEGER { up(1), down(2) }
        !          1225:         MIN-ACCESS   read-only
        !          1226:         DESCRIPTION
        !          1227:             "Write access is not required, nor is support for the value
        !          1228:             testing(3)."
        !          1229:
        !          1230:         OBJECT       ifAlias
        !          1231:         MIN-ACCESS   read-only
        !          1232:         DESCRIPTION
        !          1233:             "Write access is not required."
        !          1234:     ::= { ifCompliances 3 }
        !          1235:
        !          1236: -- units of conformance
        !          1237:
        !          1238: ifGeneralInformationGroup    OBJECT-GROUP
        !          1239:     OBJECTS { ifIndex, ifDescr, ifType, ifSpeed, ifPhysAddress,
        !          1240:               ifAdminStatus, ifOperStatus, ifLastChange,
        !          1241:               ifLinkUpDownTrapEnable, ifConnectorPresent,
        !          1242:               ifHighSpeed, ifName, ifNumber, ifAlias,
        !          1243:               ifTableLastChange }
        !          1244:     STATUS  current
        !          1245:     DESCRIPTION
        !          1246:             "A collection of objects providing information applicable to
        !          1247:             all network interfaces."
        !          1248:     ::= { ifGroups 10 }
        !          1249:
        !          1250: -- the following five groups are mutually exclusive; at most
        !          1251: -- one of these groups is implemented for any interface
        !          1252:
        !          1253: ifFixedLengthGroup    OBJECT-GROUP
        !          1254:     OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
        !          1255:               ifInErrors, ifOutErrors }
        !          1256:     STATUS  current
        !          1257:     DESCRIPTION
        !          1258:             "A collection of objects providing information specific to
        !          1259:             non-high speed (non-high speed interfaces transmit and
        !          1260:             receive at speeds less than or equal to 20,000,000
        !          1261:             bits/second) character-oriented or fixed-length-transmission
        !          1262:             network interfaces."
        !          1263:     ::= { ifGroups 2 }
        !          1264:
        !          1265: ifHCFixedLengthGroup    OBJECT-GROUP
        !          1266:     OBJECTS { ifHCInOctets, ifHCOutOctets,
        !          1267:               ifInOctets, ifOutOctets, ifInUnknownProtos,
        !          1268:               ifInErrors, ifOutErrors }
        !          1269:     STATUS  current
        !          1270:     DESCRIPTION
        !          1271:             "A collection of objects providing information specific to
        !          1272:             high speed (greater than 20,000,000 bits/second) character-
        !          1273:             oriented or fixed-length-transmission network interfaces."
        !          1274:     ::= { ifGroups 3 }
        !          1275:
        !          1276: ifPacketGroup    OBJECT-GROUP
        !          1277:     OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
        !          1278:               ifInErrors, ifOutErrors,
        !          1279:               ifMtu, ifInUcastPkts, ifInMulticastPkts,
        !          1280:               ifInBroadcastPkts, ifInDiscards,
        !          1281:               ifOutUcastPkts, ifOutMulticastPkts,
        !          1282:               ifOutBroadcastPkts, ifOutDiscards,
        !          1283:               ifPromiscuousMode }
        !          1284:     STATUS  current
        !          1285:     DESCRIPTION
        !          1286:             "A collection of objects providing information specific to
        !          1287:             non-high speed (non-high speed interfaces transmit and
        !          1288:             receive at speeds less than or equal to 20,000,000
        !          1289:             bits/second) packet-oriented network interfaces."
        !          1290:     ::= { ifGroups 4 }
        !          1291:
        !          1292: ifHCPacketGroup    OBJECT-GROUP
        !          1293:     OBJECTS { ifHCInOctets, ifHCOutOctets,
        !          1294:               ifInOctets, ifOutOctets, ifInUnknownProtos,
        !          1295:               ifInErrors, ifOutErrors,
        !          1296:               ifMtu, ifInUcastPkts, ifInMulticastPkts,
        !          1297:               ifInBroadcastPkts, ifInDiscards,
        !          1298:               ifOutUcastPkts, ifOutMulticastPkts,
        !          1299:               ifOutBroadcastPkts, ifOutDiscards,
        !          1300:               ifPromiscuousMode }
        !          1301:     STATUS  current
        !          1302:     DESCRIPTION
        !          1303:             "A collection of objects providing information specific to
        !          1304:             high speed (greater than 20,000,000 bits/second but less
        !          1305:             than or equal to 650,000,000 bits/second) packet-oriented
        !          1306:             network interfaces."
        !          1307:     ::= { ifGroups 5 }
        !          1308:
        !          1309: ifVHCPacketGroup    OBJECT-GROUP
        !          1310:     OBJECTS { ifHCInUcastPkts, ifHCInMulticastPkts,
        !          1311:               ifHCInBroadcastPkts, ifHCOutUcastPkts,
        !          1312:               ifHCOutMulticastPkts, ifHCOutBroadcastPkts,
        !          1313:               ifHCInOctets, ifHCOutOctets,
        !          1314:               ifInOctets, ifOutOctets, ifInUnknownProtos,
        !          1315:               ifInErrors, ifOutErrors,
        !          1316:               ifMtu, ifInUcastPkts, ifInMulticastPkts,
        !          1317:               ifInBroadcastPkts, ifInDiscards,
        !          1318:               ifOutUcastPkts, ifOutMulticastPkts,
        !          1319:               ifOutBroadcastPkts, ifOutDiscards,
        !          1320:               ifPromiscuousMode }
        !          1321:     STATUS  current
        !          1322:     DESCRIPTION
        !          1323:             "A collection of objects providing information specific to
        !          1324:             higher speed (greater than 650,000,000 bits/second) packet-
        !          1325:             oriented network interfaces."
        !          1326:     ::= { ifGroups 6 }
        !          1327:
        !          1328: ifRcvAddressGroup    OBJECT-GROUP
        !          1329:     OBJECTS { ifRcvAddressStatus, ifRcvAddressType }
        !          1330:     STATUS  current
        !          1331:     DESCRIPTION
        !          1332:             "A collection of objects providing information on the
        !          1333:             multiple addresses which an interface receives."
        !          1334:     ::= { ifGroups 7 }
        !          1335:
        !          1336: ifStackGroup2    OBJECT-GROUP
        !          1337:     OBJECTS { ifStackStatus, ifStackLastChange }
        !          1338:     STATUS  current
        !          1339:     DESCRIPTION
        !          1340:             "A collection of objects providing information on the
        !          1341:             layering of MIB-II interfaces."
        !          1342:     ::= { ifGroups 11 }
        !          1343:
        !          1344: ifCounterDiscontinuityGroup  OBJECT-GROUP
        !          1345:     OBJECTS { ifCounterDiscontinuityTime }
        !          1346:     STATUS  current
        !          1347:     DESCRIPTION
        !          1348:             "A collection of objects providing information specific to
        !          1349:             interface counter discontinuities."
        !          1350:     ::= { ifGroups 13 }
        !          1351:
        !          1352: linkUpDownNotificationsGroup  NOTIFICATION-GROUP
        !          1353:     NOTIFICATIONS { linkUp, linkDown }
        !          1354:     STATUS  current
        !          1355:     DESCRIPTION
        !          1356:             "The notifications which indicate specific changes in the
        !          1357:             value of ifOperStatus."
        !          1358:     ::= { ifGroups 14 }
        !          1359:
        !          1360: -- Deprecated Definitions - Objects
        !          1361:
        !          1362: --
        !          1363: --    The Interface Test Table
        !          1364: --
        !          1365: -- This group of objects is optional.  However, a media-specific
        !          1366:
        !          1367: -- MIB may make implementation of this group mandatory.
        !          1368: --
        !          1369: -- This table replaces the ifExtnsTestTable
        !          1370: --
        !          1371:
        !          1372: ifTestTable   OBJECT-TYPE
        !          1373:     SYNTAX      SEQUENCE OF IfTestEntry
        !          1374:     MAX-ACCESS  not-accessible
        !          1375:     STATUS      deprecated
        !          1376:     DESCRIPTION
        !          1377:             "This table contains one entry per interface.  It defines
        !          1378:             objects which allow a network manager to instruct an agent
        !          1379:             to test an interface for various faults.  Tests for an
        !          1380:             interface are defined in the media-specific MIB for that
        !          1381:             interface.  After invoking a test, the object ifTestResult
        !          1382:             can be read to determine the outcome.  If an agent can not
        !          1383:             perform the test, ifTestResult is set to so indicate.  The
        !          1384:             object ifTestCode can be used to provide further test-
        !          1385:             specific or interface-specific (or even enterprise-specific)
        !          1386:             information concerning the outcome of the test.  Only one
        !          1387:             test can be in progress on each interface at any one time.
        !          1388:             If one test is in progress when another test is invoked, the
        !          1389:             second test is rejected.  Some agents may reject a test when
        !          1390:             a prior test is active on another interface.
        !          1391:
        !          1392:             Before starting a test, a manager-station must first obtain
        !          1393:             'ownership' of the entry in the ifTestTable for the
        !          1394:             interface to be tested.  This is accomplished with the
        !          1395:             ifTestId and ifTestStatus objects as follows:
        !          1396:
        !          1397:           try_again:
        !          1398:               get (ifTestId, ifTestStatus)
        !          1399:               while (ifTestStatus != notInUse)
        !          1400:                   /*
        !          1401:                    * Loop while a test is running or some other
        !          1402:                    * manager is configuring a test.
        !          1403:                    */
        !          1404:                   short delay
        !          1405:                   get (ifTestId, ifTestStatus)
        !          1406:               }
        !          1407:
        !          1408:               /*
        !          1409:                * Is not being used right now -- let's compete
        !          1410:                * to see who gets it.
        !          1411:                */
        !          1412:               lock_value = ifTestId
        !          1413:
        !          1414:               if ( set(ifTestId = lock_value, ifTestStatus = inUse,
        !          1415:                        ifTestOwner = 'my-IP-address') == FAILURE)
        !          1416:                   /*
        !          1417:                    * Another manager got the ifTestEntry -- go
        !          1418:                    * try again
        !          1419:                    */
        !          1420:                   goto try_again;
        !          1421:
        !          1422:               /*
        !          1423:                * I have the lock
        !          1424:                */
        !          1425:               set up any test parameters.
        !          1426:
        !          1427:               /*
        !          1428:                * This starts the test
        !          1429:                */
        !          1430:               set(ifTestType = test_to_run);
        !          1431:
        !          1432:               wait for test completion by polling ifTestResult
        !          1433:
        !          1434:               when test completes, agent sets ifTestResult
        !          1435:                    agent also sets ifTestStatus = 'notInUse'
        !          1436:
        !          1437:               retrieve any additional test results, and ifTestId
        !          1438:
        !          1439:               if (ifTestId == lock_value+1) results are valid
        !          1440:
        !          1441:             A manager station first retrieves the value of the
        !          1442:             appropriate ifTestId and ifTestStatus objects, periodically
        !          1443:             repeating the retrieval if necessary, until the value of
        !          1444:             ifTestStatus is 'notInUse'.  The manager station then tries
        !          1445:             to set the same ifTestId object to the value it just
        !          1446:             retrieved, the same ifTestStatus object to 'inUse', and the
        !          1447:             corresponding ifTestOwner object to a value indicating
        !          1448:             itself.  If the set operation succeeds then the manager has
        !          1449:             obtained ownership of the ifTestEntry, and the value of the
        !          1450:             ifTestId object is incremented by the agent (per the
        !          1451:             semantics of TestAndIncr).  Failure of the set operation
        !          1452:             indicates that some other manager has obtained ownership of
        !          1453:             the ifTestEntry.
        !          1454:
        !          1455:             Once ownership is obtained, any test parameters can be
        !          1456:             setup, and then the test is initiated by setting ifTestType.
        !          1457:             On completion of the test, the agent sets ifTestStatus to
        !          1458:             'notInUse'.  Once this occurs, the manager can retrieve the
        !          1459:             results.  In the (rare) event that the invocation of tests
        !          1460:             by two network managers were to overlap, then there would be
        !          1461:             a possibility that the first test's results might be
        !          1462:             overwritten by the second test's results prior to the first
        !          1463:
        !          1464:             results being read.  This unlikely circumstance can be
        !          1465:             detected by a network manager retrieving ifTestId at the
        !          1466:             same time as retrieving the test results, and ensuring that
        !          1467:             the results are for the desired request.
        !          1468:
        !          1469:             If ifTestType is not set within an abnormally long period of
        !          1470:             time after ownership is obtained, the agent should time-out
        !          1471:             the manager, and reset the value of the ifTestStatus object
        !          1472:             back to 'notInUse'.  It is suggested that this time-out
        !          1473:             period be 5 minutes.
        !          1474:
        !          1475:             In general, a management station must not retransmit a
        !          1476:             request to invoke a test for which it does not receive a
        !          1477:             response; instead, it properly inspects an agent's MIB to
        !          1478:             determine if the invocation was successful.  Only if the
        !          1479:             invocation was unsuccessful, is the invocation request
        !          1480:             retransmitted.
        !          1481:
        !          1482:             Some tests may require the interface to be taken off-line in
        !          1483:             order to execute them, or may even require the agent to
        !          1484:             reboot after completion of the test.  In these
        !          1485:             circumstances, communication with the management station
        !          1486:             invoking the test may be lost until after completion of the
        !          1487:             test.  An agent is not required to support such tests.
        !          1488:             However, if such tests are supported, then the agent should
        !          1489:             make every effort to transmit a response to the request
        !          1490:             which invoked the test prior to losing communication.  When
        !          1491:             the agent is restored to normal service, the results of the
        !          1492:             test are properly made available in the appropriate objects.
        !          1493:             Note that this requires that the ifIndex value assigned to
        !          1494:             an interface must be unchanged even if the test causes a
        !          1495:             reboot.  An agent must reject any test for which it cannot,
        !          1496:             perhaps due to resource constraints, make available at least
        !          1497:             the minimum amount of information after that test
        !          1498:             completes."
        !          1499:     ::= { ifMIBObjects 3 }
        !          1500:
        !          1501: ifTestEntry OBJECT-TYPE
        !          1502:     SYNTAX       IfTestEntry
        !          1503:     MAX-ACCESS   not-accessible
        !          1504:     STATUS       deprecated
        !          1505:     DESCRIPTION
        !          1506:             "An entry containing objects for invoking tests on an
        !          1507:             interface."
        !          1508:     AUGMENTS  { ifEntry }
        !          1509:     ::= { ifTestTable 1 }
        !          1510:
        !          1511: IfTestEntry ::=
        !          1512:
        !          1513:     SEQUENCE {
        !          1514:         ifTestId           TestAndIncr,
        !          1515:         ifTestStatus       INTEGER,
        !          1516:         ifTestType         AutonomousType,
        !          1517:         ifTestResult       INTEGER,
        !          1518:         ifTestCode         OBJECT IDENTIFIER,
        !          1519:         ifTestOwner        OwnerString
        !          1520:     }
        !          1521:
        !          1522: ifTestId         OBJECT-TYPE
        !          1523:     SYNTAX       TestAndIncr
        !          1524:     MAX-ACCESS   read-write
        !          1525:     STATUS       deprecated
        !          1526:     DESCRIPTION
        !          1527:             "This object identifies the current invocation of the
        !          1528:             interface's test."
        !          1529:     ::= { ifTestEntry 1 }
        !          1530:
        !          1531: ifTestStatus     OBJECT-TYPE
        !          1532:     SYNTAX       INTEGER { notInUse(1), inUse(2) }
        !          1533:     MAX-ACCESS   read-write
        !          1534:     STATUS       deprecated
        !          1535:     DESCRIPTION
        !          1536:             "This object indicates whether or not some manager currently
        !          1537:             has the necessary 'ownership' required to invoke a test on
        !          1538:             this interface.  A write to this object is only successful
        !          1539:             when it changes its value from 'notInUse(1)' to 'inUse(2)'.
        !          1540:             After completion of a test, the agent resets the value back
        !          1541:             to 'notInUse(1)'."
        !          1542:     ::= { ifTestEntry 2 }
        !          1543:
        !          1544: ifTestType       OBJECT-TYPE
        !          1545:     SYNTAX       AutonomousType
        !          1546:     MAX-ACCESS   read-write
        !          1547:     STATUS       deprecated
        !          1548:     DESCRIPTION
        !          1549:             "A control variable used to start and stop operator-
        !          1550:             initiated interface tests.  Most OBJECT IDENTIFIER values
        !          1551:             assigned to tests are defined elsewhere, in association with
        !          1552:             specific types of interface.  However, this document assigns
        !          1553:             a value for a full-duplex loopback test, and defines the
        !          1554:             special meanings of the subject identifier:
        !          1555:
        !          1556:                 noTest  OBJECT IDENTIFIER ::= { 0 0 }
        !          1557:
        !          1558:             When the value noTest is written to this object, no action
        !          1559:             is taken unless a test is in progress, in which case the
        !          1560:             test is aborted.  Writing any other value to this object is
        !          1561:
        !          1562:             only valid when no test is currently in progress, in which
        !          1563:             case the indicated test is initiated.
        !          1564:
        !          1565:             When read, this object always returns the most recent value
        !          1566:             that ifTestType was set to.  If it has not been set since
        !          1567:             the last initialization of the network management subsystem
        !          1568:             on the agent, a value of noTest is returned."
        !          1569:     ::= { ifTestEntry 3 }
        !          1570:
        !          1571: ifTestResult  OBJECT-TYPE
        !          1572:     SYNTAX       INTEGER {
        !          1573:                      none(1),          -- no test yet requested
        !          1574:                      success(2),
        !          1575:                      inProgress(3),
        !          1576:                      notSupported(4),
        !          1577:                      unAbleToRun(5),   -- due to state of system
        !          1578:                      aborted(6),
        !          1579:                      failed(7)
        !          1580:                  }
        !          1581:     MAX-ACCESS   read-only
        !          1582:     STATUS       deprecated
        !          1583:     DESCRIPTION
        !          1584:             "This object contains the result of the most recently
        !          1585:             requested test, or the value none(1) if no tests have been
        !          1586:             requested since the last reset.  Note that this facility
        !          1587:             provides no provision for saving the results of one test
        !          1588:             when starting another, as could be required if used by
        !          1589:             multiple managers concurrently."
        !          1590:     ::= { ifTestEntry 4 }
        !          1591:
        !          1592: ifTestCode  OBJECT-TYPE
        !          1593:     SYNTAX       OBJECT IDENTIFIER
        !          1594:     MAX-ACCESS   read-only
        !          1595:     STATUS       deprecated
        !          1596:     DESCRIPTION
        !          1597:             "This object contains a code which contains more specific
        !          1598:             information on the test result, for example an error-code
        !          1599:             after a failed test.  Error codes and other values this
        !          1600:             object may take are specific to the type of interface and/or
        !          1601:             test.  The value may have the semantics of either the
        !          1602:             AutonomousType or InstancePointer textual conventions as
        !          1603:             defined in RFC 2579.  The identifier:
        !          1604:
        !          1605:                 testCodeUnknown  OBJECT IDENTIFIER ::= { 0 0 }
        !          1606:
        !          1607:             is defined for use if no additional result code is
        !          1608:             available."
        !          1609:     ::= { ifTestEntry 5 }
        !          1610:
        !          1611: ifTestOwner      OBJECT-TYPE
        !          1612:     SYNTAX       OwnerString
        !          1613:     MAX-ACCESS   read-write
        !          1614:     STATUS       deprecated
        !          1615:     DESCRIPTION
        !          1616:             "The entity which currently has the 'ownership' required to
        !          1617:             invoke a test on this interface."
        !          1618:     ::= { ifTestEntry 6 }
        !          1619:
        !          1620: -- Deprecated Definitions - Groups
        !          1621:
        !          1622: ifGeneralGroup    OBJECT-GROUP
        !          1623:     OBJECTS { ifDescr, ifType, ifSpeed, ifPhysAddress,
        !          1624:               ifAdminStatus, ifOperStatus, ifLastChange,
        !          1625:               ifLinkUpDownTrapEnable, ifConnectorPresent,
        !          1626:               ifHighSpeed, ifName }
        !          1627:     STATUS  deprecated
        !          1628:     DESCRIPTION
        !          1629:             "A collection of objects deprecated in favour of
        !          1630:             ifGeneralInformationGroup."
        !          1631:     ::= { ifGroups 1 }
        !          1632:
        !          1633: ifTestGroup    OBJECT-GROUP
        !          1634:     OBJECTS { ifTestId, ifTestStatus, ifTestType,
        !          1635:               ifTestResult, ifTestCode, ifTestOwner }
        !          1636:     STATUS  deprecated
        !          1637:     DESCRIPTION
        !          1638:             "A collection of objects providing the ability to invoke
        !          1639:             tests on an interface."
        !          1640:     ::= { ifGroups 8 }
        !          1641:
        !          1642: ifStackGroup    OBJECT-GROUP
        !          1643:     OBJECTS { ifStackStatus }
        !          1644:     STATUS  deprecated
        !          1645:     DESCRIPTION
        !          1646:             "The previous collection of objects providing information on
        !          1647:             the layering of MIB-II interfaces."
        !          1648:     ::= { ifGroups 9 }
        !          1649:
        !          1650: ifOldObjectsGroup    OBJECT-GROUP
        !          1651:     OBJECTS { ifInNUcastPkts, ifOutNUcastPkts,
        !          1652:               ifOutQLen, ifSpecific }
        !          1653:     STATUS  deprecated
        !          1654:     DESCRIPTION
        !          1655:             "The collection of objects deprecated from the original MIB-
        !          1656:             II interfaces group."
        !          1657:     ::= { ifGroups 12 }
        !          1658:
        !          1659: -- Deprecated Definitions - Compliance
        !          1660:
        !          1661: ifCompliance MODULE-COMPLIANCE
        !          1662:     STATUS  deprecated
        !          1663:     DESCRIPTION
        !          1664:             "A compliance statement defined in a previous version of
        !          1665:             this MIB module, for SNMP entities which have network
        !          1666:             interfaces."
        !          1667:
        !          1668:     MODULE  -- this module
        !          1669:         MANDATORY-GROUPS { ifGeneralGroup, ifStackGroup }
        !          1670:
        !          1671:         GROUP       ifFixedLengthGroup
        !          1672:         DESCRIPTION
        !          1673:             "This group is mandatory for all network interfaces which
        !          1674:             are character-oriented or transmit data in fixed-length
        !          1675:             transmission units."
        !          1676:
        !          1677:         GROUP       ifHCFixedLengthGroup
        !          1678:         DESCRIPTION
        !          1679:             "This group is mandatory only for those network interfaces
        !          1680:             which are character-oriented or transmit data in fixed-
        !          1681:             length transmission units, and for which the value of the
        !          1682:             corresponding instance of ifSpeed is greater than 20,000,000
        !          1683:             bits/second."
        !          1684:
        !          1685:         GROUP       ifPacketGroup
        !          1686:         DESCRIPTION
        !          1687:             "This group is mandatory for all network interfaces which
        !          1688:             are packet-oriented."
        !          1689:
        !          1690:         GROUP       ifHCPacketGroup
        !          1691:         DESCRIPTION
        !          1692:             "This group is mandatory only for those network interfaces
        !          1693:             which are packet-oriented and for which the value of the
        !          1694:             corresponding instance of ifSpeed is greater than
        !          1695:             650,000,000 bits/second."
        !          1696:
        !          1697:         GROUP       ifTestGroup
        !          1698:         DESCRIPTION
        !          1699:             "This group is optional.  Media-specific MIBs which require
        !          1700:             interface tests are strongly encouraged to use this group
        !          1701:             for invoking tests and reporting results.  A medium specific
        !          1702:             MIB which has mandatory tests may make implementation of
        !          1703:
        !          1704:             this group mandatory."
        !          1705:
        !          1706:         GROUP       ifRcvAddressGroup
        !          1707:         DESCRIPTION
        !          1708:             "The applicability of this group MUST be defined by the
        !          1709:             media-specific MIBs.  Media-specific MIBs must define the
        !          1710:             exact meaning, use, and semantics of the addresses in this
        !          1711:             group."
        !          1712:
        !          1713:         OBJECT      ifLinkUpDownTrapEnable
        !          1714:         MIN-ACCESS  read-only
        !          1715:         DESCRIPTION
        !          1716:             "Write access is not required."
        !          1717:
        !          1718:         OBJECT      ifPromiscuousMode
        !          1719:         MIN-ACCESS  read-only
        !          1720:         DESCRIPTION
        !          1721:             "Write access is not required."
        !          1722:
        !          1723:         OBJECT      ifStackStatus
        !          1724:         SYNTAX      INTEGER { active(1) } -- subset of RowStatus
        !          1725:         MIN-ACCESS  read-only
        !          1726:         DESCRIPTION
        !          1727:             "Write access is not required, and only one of the six
        !          1728:             enumerated values for the RowStatus textual convention need
        !          1729:             be supported, specifically: active(1)."
        !          1730:
        !          1731:         OBJECT       ifAdminStatus
        !          1732:         SYNTAX       INTEGER { up(1), down(2) }
        !          1733:         MIN-ACCESS   read-only
        !          1734:         DESCRIPTION
        !          1735:             "Write access is not required, nor is support for the value
        !          1736:             testing(3)."
        !          1737:     ::= { ifCompliances 1 }
        !          1738:
        !          1739: ifCompliance2 MODULE-COMPLIANCE
        !          1740:     STATUS      deprecated
        !          1741:     DESCRIPTION
        !          1742:             "A compliance statement defined in a previous version of
        !          1743:             this MIB module, for SNMP entities which have network
        !          1744:             interfaces."
        !          1745:
        !          1746:     MODULE  -- this module
        !          1747:         MANDATORY-GROUPS { ifGeneralInformationGroup, ifStackGroup2,
        !          1748:                            ifCounterDiscontinuityGroup }
        !          1749:
        !          1750:         GROUP       ifFixedLengthGroup
        !          1751:         DESCRIPTION
        !          1752:             "This group is mandatory for all network interfaces which
        !          1753:             are character-oriented or transmit data in fixed-length
        !          1754:             transmission units."
        !          1755:
        !          1756:         GROUP       ifHCFixedLengthGroup
        !          1757:         DESCRIPTION
        !          1758:             "This group is mandatory only for those network interfaces
        !          1759:             which are character-oriented or transmit data in fixed-
        !          1760:             length transmission units, and for which the value of the
        !          1761:             corresponding instance of ifSpeed is greater than 20,000,000
        !          1762:             bits/second."
        !          1763:
        !          1764:         GROUP       ifPacketGroup
        !          1765:         DESCRIPTION
        !          1766:             "This group is mandatory for all network interfaces which
        !          1767:             are packet-oriented."
        !          1768:
        !          1769:         GROUP       ifHCPacketGroup
        !          1770:         DESCRIPTION
        !          1771:             "This group is mandatory only for those network interfaces
        !          1772:             which are packet-oriented and for which the value of the
        !          1773:             corresponding instance of ifSpeed is greater than
        !          1774:             650,000,000 bits/second."
        !          1775:
        !          1776:         GROUP       ifRcvAddressGroup
        !          1777:         DESCRIPTION
        !          1778:             "The applicability of this group MUST be defined by the
        !          1779:             media-specific MIBs.  Media-specific MIBs must define the
        !          1780:             exact meaning, use, and semantics of the addresses in this
        !          1781:             group."
        !          1782:
        !          1783:         OBJECT      ifLinkUpDownTrapEnable
        !          1784:         MIN-ACCESS  read-only
        !          1785:         DESCRIPTION
        !          1786:             "Write access is not required."
        !          1787:
        !          1788:         OBJECT      ifPromiscuousMode
        !          1789:         MIN-ACCESS  read-only
        !          1790:         DESCRIPTION
        !          1791:             "Write access is not required."
        !          1792:
        !          1793:         OBJECT      ifStackStatus
        !          1794:         SYNTAX      INTEGER { active(1) } -- subset of RowStatus
        !          1795:         MIN-ACCESS  read-only
        !          1796:         DESCRIPTION
        !          1797:             "Write access is not required, and only one of the six
        !          1798:             enumerated values for the RowStatus textual convention need
        !          1799:             be supported, specifically: active(1)."
        !          1800:
        !          1801:         OBJECT       ifAdminStatus
        !          1802:         SYNTAX       INTEGER { up(1), down(2) }
        !          1803:         MIN-ACCESS   read-only
        !          1804:         DESCRIPTION
        !          1805:             "Write access is not required, nor is support for the value
        !          1806:             testing(3)."
        !          1807:
        !          1808:         OBJECT       ifAlias
        !          1809:         MIN-ACCESS   read-only
        !          1810:         DESCRIPTION
        !          1811:             "Write access is not required."
        !          1812:     ::= { ifCompliances 2 }
        !          1813:
        !          1814: END