Вы находитесь на странице: 1из 215

-- --------------------------------------------------------------------- ************ THE STARTING POINT FOR ALL MIB DEFINITIONS ************ -- -------------------------------------------------------------------LBHUB-MSH-MIB DEFINITIONS ::= BEGIN IMPORTS

mgmt, NetworkAddress, IpAddress, Counter, Gauge, TimeTicks, enterprises FROM RFC1155-SMI OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215 DisplayString, PhysAddress FROM RFC1213-MIB; -- This MIB module uses the extended OBJECT-TYPE macro as -- defined in RFC 1212; -- MIB-II (same prefix as MIB-I) mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }

-- textual conventions DisplayString ::= OCTET STRING -- This data type is used to model textual information taken -- from the NVT ASCII character set. By convention, objects -- with this syntax are declared as having --SIZE (0..255) PhysAddress ::= OCTET STRING -- This data type is used to model media addresses. For many -- types of media, this will be in a binary representation. -- For example, an ethernet address would be represented as -- a string of 6 octets. -- groups in MIB-II system interfaces at ip icmp tcp udp egp OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER ::= ::= ::= ::= ::= ::= ::= ::= { { { { { { { { mib-2 mib-2 mib-2 mib-2 mib-2 mib-2 mib-2 mib-2 1 2 3 4 5 6 7 8 } } } } } } } }

-- historical (some -- cmot OBJECT transmission OBJECT snmp OBJECT

say hysterical) IDENTIFIER ::= { mib-2 9 } IDENTIFIER ::= { mib-2 10 } IDENTIFIER ::= { mib-2 11 }

dot1dBridge OBJECT IDENTIFIER ::= { mib-2 17 } -- --------------------------------------------------------------------- ******************* PRIVATE BRANCH FOR 3Com ************************

-- --------------------------------------------------------------------- private OBJECT IDENTIFIER ::= { internet 4 } -- enterprises OBJECT IDENTIFIER ::= { private 1 } a3Com products OBJECT IDENTIFIER ::= { enterprises 43 } OBJECT IDENTIFIER ::= { a3Com 1 } OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= { { { { { { { { { { products products products products products products products products products products 1 } 2 } 3 } 4 } 5 } 6 } 7 } 8 } 9 } 10 }

terminalServer dedicatedBridgeServer dedicatedRouteServer brouter genericMSWorkstation genericMSServer genericUnixServer hub cards chipsets

linkBuilder3GH OBJECT linkBuilder10BTi OBJECT linkBuilderECS OBJECT linkBuilderMSH OBJECT linkBuilderFMS OBJECT linkBuilderFddiWorkGroupHub linkBuilderFMSII OBJECT linkSwitchFMS OBJECT linkSwitchMSH OBJECT linkBuilderFMSLBridge OBJECT linkBuilderTP8i OBJECT linkBuilder3GH-cards linkBuilder10BTi-cards linkBuilderECS-cards linkBuilderMSH-cards linkBuilderFMS-cards linkBuilderFMSII-cards a3C512 linkBuilderTP8i-cards OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT

IDENTIFIER ::= { hub 1 } IDENTIFIER ::= { hub 2 } IDENTIFIER ::= { hub 3 } IDENTIFIER ::= { hub 4 } IDENTIFIER ::= { hub 5 } OBJECT IDENTIFIER ::= { hub 6 } IDENTIFIER ::= { hub 7 } IDENTIFIER ::= { hub 8 } IDENTIFIER ::= { hub 9 } IDENTIFIER ::= { hub 10 } IDENTIFIER ::= { hub 11 } IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER ::= ::= ::= ::= ::= ::= ::= ::= { { { { { { { { cards cards cards cards cards cards cards cards 1 2 3 4 5 6 7 8 } } } } } } } }

linkBuilder10BTi-cards-utp linkBuilder10BTi-cards 1 } linkBuilder10BT-cards-utp linkBuilder10BTi-cards 2 } linkBuilderFMS-cards-utp linkBuilderFMS-cards 1 } linkBuilderFMS-cards-coax linkBuilderFMS-cards 2 } linkBuilderFMS-cards-fiber linkBuilderFMS-cards 3 } linkBuilderFMS-cards-12fiber linkBuilderFMS-cards 4 } linkBuilderFMS-cards-24utp linkBuilderFMS-cards 5 }

OBJECT IDENTIFIER ::= { OBJECT IDENTIFIER ::= { OBJECT IDENTIFIER ::= { OBJECT IDENTIFIER ::= { OBJECT IDENTIFIER ::= { OBJECT IDENTIFIER ::= { OBJECT IDENTIFIER ::= { OBJECT IDENTIFIE OBJECT IDENTIFIE

linkBuilderFMSII-cards-12tp-rj45 R ::= { linkBuilderFMSII-cards 1 } linkBuilderFMSII-cards-10coax-bnc

R ::= { linkBuilderFMSII-cards 2 } linkBuilderFMSII-cards-6fiber-st R ::= { linkBuilderFMSII-cards 3 } linkBuilderFMSII-cards-12fiber-st R ::= { linkBuilderFMSII-cards 4 } linkBuilderFMSII-cards-24tp-rj45 R ::= { linkBuilderFMSII-cards 5 } linkBuilderFMSII-cards-24tp-telco R ::= { linkBuilderFMSII-cards 6 } linkBuilderTP8i-cards-8tp-rj45 R ::= { linkBuilderTP8i-cards 1 } --experimental amp-mib genericTrap viewBuilderApps specificTrap linkBuilder3GH-mib linkBuilder10BTi-mib linkBuilderECS-mib generic genExperimental setup sysLoader security gauges asciiAgent serialIf repeaterMgmt endStation localSnmp manager unusedGeneric12 chassis mrmResilience tokenRing multiRepeater bridgeMgmt fault poll powerSupply testData ifExtensions netBuilder-mib lBridgeECS-mib deskMan-mib linkBuilderMSH-mib linkBuilderFMS-mib linkBuilderFDDI-wghub-mib linkSwitch-mib OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT ::= ::= ::= ::= ::= ::= ::= ::= ::= { { { { { { { { { a3Com a3Com a3Com a3Com a3Com a3Com a3Com a3Com a3Com ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= 2 } 3 } 4 } 5 } 6 } 7 } 8 } 9 } 10 } { { { { { { { { { { { { { { { { { { { { generic generic generic generic generic generic generic generic generic generic generic generic generic generic generic generic generic generic generic generic

OBJECT IDENTIFIE OBJECT IDENTIFIE OBJECT IDENTIFIE OBJECT IDENTIFIE OBJECT IDENTIFIE

IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER

1 } 2 } 3 } 4 } 5 } 6 } 7 } 8 } 9 } 10 } 11 } 12 } 14 } 15 } 16 } 17 } 18 } 19 } 20 } 21 }

OBJECT IDENTIFIER ::= { genExperimental 1 } OBJECT IDENTIFIER ::= { genExperimental 2 } OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER ::= ::= ::= ::= ::= ::= ::= { { { { { { { a3Com a3Com a3Com a3Com a3Com a3Com a3Com 11 12 13 14 15 16 17 } } } } } } }

-- --------------------------------------------------------------------- **************************** SYSTEM GROUP ************************** -- --------------------------------------------------------------------

-- Implementation of the System group is mandatory for all -- systems. If an agent is not configured to have a value -- for any of these variables, a string of length 0 is returned. sysDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "A textual description of the entity. This value should include the full name and version identification of the system's hardware type, software operating-system, and networking software. It is mandatory that this only contain printable ASCII characters." ::= { system 1 } sysObjectID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining `what kind of box' is being managed. For example, if vendor `Flintstones, Inc.' was assigned the subtree 1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'." ::= { system 2 } sysUpTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The time (in hundredths of a second) since the network management portion of the system was last re-initialized." ::= { system 3 } sysContact OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-write STATUS mandatory DESCRIPTION "The textual identification of the contact person for this managed node, together with information on how to contact this person." ::= { system 4 } sysName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-write STATUS mandatory DESCRIPTION "An administratively-assigned name for this managed node. By convention, this is the node's

fully-qualified domain name." ::= { system 5 } sysLocation OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-write STATUS mandatory DESCRIPTION "The physical location of this node (e.g., `telephone closet, 3rd floor')." ::= { system 6 } sysServices OBJECT-TYPE SYNTAX INTEGER (0..127) ACCESS read-only STATUS mandatory DESCRIPTION "A value which indicates the set of services that this entity primarily offers. The value is a sum. This sum initially takes the value zero, Then, for each layer, L, in the range 1 through 7, that this node performs transactions for, 2 raised to (L - 1) is added to the sum. For example, a node which performs primarily routing functions would have a value of 4 (2^(3-1)). In contrast, a node which is a host offering application services would have a value of 72 (2^(4-1) + 2^(7-1)). Note that in the context of the Internet suite of protocols, values should be calculated accordingly: layer 1 2 3 4 7 functionality physical (e.g., repeaters) datalink/subnetwork (e.g., bridges) internet (e.g., IP gateways) end-to-end (e.g., IP hosts) applications (e.g., mail relays)

For systems including OSI protocols, layers 5 and 6 may also be counted." ::= { system 7 } -- --------------------------------------------------------------------END OF SYSTEM GROUP -- --------------------------------------------------------------------- --------------------------------------------------------------------- ************************ INTERFACES GROUP ************************** -- --------------------------------------------------------------------- the Interfaces group -- Implementation of the Interfaces group is mandatory for -- all systems. ifNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory

DESCRIPTION "The number of network interfaces (regardless of their current state) present on this system." ::= { interfaces 1 } -- the Interfaces table ------The Interfaces table contains information on the entity's interfaces. Each interface is thought of as being attached to a `subnetwork'. Note that this term should not be confused with `subnet' which refers to an addressing partitioning scheme used in the Internet suite of protocols.

ifTable OBJECT-TYPE SYNTAX SEQUENCE OF IfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of interface entries. The number of entries is given by the value of ifNumber." ::= { interfaces 2 } ifEntry OBJECT-TYPE SYNTAX IfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An interface entry containing objects at the subnetwork layer and below for a particular interface." INDEX { ifIndex } ::= { ifTable 1 } IfEntry ::= SEQUENCE { ifIndex INTEGER, ifDescr DisplayString, ifType INTEGER, ifMtu INTEGER, ifSpeed Gauge, ifPhysAddress PhysAddress, ifAdminStatus INTEGER, ifOperStatus INTEGER, ifLastChange TimeTicks, ifInOctets Counter, ifInUcastPkts Counter, ifInNUcastPkts Counter, ifInDiscards

Counter, ifInErrors Counter, ifInUnknownProtos Counter, ifOutOctets Counter, ifOutUcastPkts Counter, ifOutNUcastPkts Counter, ifOutDiscards Counter, ifOutErrors Counter, ifOutQLen Gauge, ifSpecific OBJECT IDENTIFIER } ifIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A unique value for each interface. Its value ranges between 1 and the value of ifNumber. The value for each interface must remain constant at least from one re-initialization of the entity's network management system to the next reinitialization." ::= { ifEntry 1 } ifDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "A textual string containing information about the interface. This string should include the name of the manufacturer, the product name and the version of the hardware interface." ::= { ifEntry 2 } ifType OBJECT-TYPE SYNTAX INTEGER { other(1), -- none of the following regular1822(2), hdh1822(3), ddn-x25(4), rfc877-x25(5), ethernet-csmacd(6), iso88023-csmacd(7), iso88024-tokenBus(8), iso88025-tokenRing(9), iso88026-man(10), starLan(11), proteon-10Mbit(12), proteon-80Mbit(13),

hyperchannel(14), fddi(15), lapb(16), sdlc(17), ds1(18), -- T-1 e1(19), -- european equiv. of T-1 basicISDN(20), primaryISDN(21), -- proprietary serial propPointToPointSerial(22), ppp(23), softwareLoopback(24), eon(25), -- CLNP over IP [11] ethernet-3Mbit(26), nsip(27), -- XNS over IP slip(28), -- generic SLIP ultra(29), -- ULTRA technologies ds3(30), -- T-3 sip(31), -- SMDS frame-relay(32) } ACCESS read-only STATUS mandatory DESCRIPTION "The type of interface, distinguished according to the physical/link protocol(s) immediately `below' the network layer in the protocol stack." ::= { ifEntry 3 } ifMtu OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The size of the largest datagram which can be sent/received on the interface, specified in octets. For interfaces that are used for transmitting network datagrams, this is the size of the largest network datagram that can be sent on the interface." ::= { ifEntry 4 } ifSpeed OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory DESCRIPTION "An estimate of the interface's current bandwidth in bits per second. For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth." ::= { ifEntry 5 } ifPhysAddress OBJECT-TYPE SYNTAX PhysAddress ACCESS read-only STATUS mandatory DESCRIPTION "The interface's address at the protocol layer immediately `below' the network layer in the

protocol stack. For interfaces which do not have such an address (e.g., a serial line), this object should contain an octet string of zero length." ::= { ifEntry 6 } ifAdminStatus OBJECT-TYPE SYNTAX INTEGER { up(1), -- ready to pass packets down(2), testing(3) -- in some test mode } ACCESS read-write STATUS mandatory DESCRIPTION "The desired state of the interface. The testing(3) state indicates that no operational packets can be passed." ::= { ifEntry 7 } ifOperStatus OBJECT-TYPE SYNTAX INTEGER { up(1), -- ready to pass packets down(2), testing(3) -- in some test mode } ACCESS read-only STATUS mandatory DESCRIPTION "The current operational state of the interface. The testing(3) state indicates that no operational packets can be passed." ::= { ifEntry 8 } ifLastChange OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime at the time the interface entered its current operational state. If the current state was entered prior to the last reinitialization of the local network management subsystem, then this object contains a zero value." ::= { ifEntry 9 } ifInOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of octets received on the interface, including framing characters." ::= { ifEntry 10 } ifInUcastPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION

"The number of subnetwork-unicast packets delivered to a higher-layer protocol." ::= { ifEntry 11 } ifInNUcastPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of non-unicast (i.e., subnetworkbroadcast or subnetwork-multicast) packets delivered to a higher-layer protocol." ::= { ifEntry 12 } ifInDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of inbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol. One possible reason for discarding such a packet could be to free up buffer space." ::= { ifEntry 13 } ifInErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol." ::= { ifEntry 14 } ifInUnknownProtos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of packets received via the interface which were discarded because of an unknown or unsupported protocol." ::= { ifEntry 15 } ifOutOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of octets transmitted out of the interface, including framing characters." ::= { ifEntry 16 } ifOutUcastPkts SYNTAX ACCESS STATUS OBJECT-TYPE Counter read-only mandatory

DESCRIPTION "The total number of packets that higher-level protocols requested be transmitted to a subnetwork-unicast address, including those that were discarded or not sent." ::= { ifEntry 17 } ifOutNUcastPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of packets that higher-level protocols requested be transmitted to a nonunicast (i.e., a subnetwork-broadcast or subnetwork-multicast) address, including those that were discarded or not sent." ::= { ifEntry 18 } ifOutDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of outbound packets which were chosen to be discarded even though no errors had been detected to prevent their being transmitted. One possible reason for discarding such a packet could be to free up buffer space." ::= { ifEntry 19 } ifOutErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of outbound packets that could not be transmitted because of errors." ::= { ifEntry 20 } ifOutQLen OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory DESCRIPTION "The length of the output packet queue (in packets)." ::= { ifEntry 21 } ifSpecific OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "A reference to MIB definitions specific to the particular media being used to realize the interface. For example, if the interface is realized by an ethernet, then the value of this object refers to a document defining objects specific to ethernet. If this information is not

present, its value should be set to the OBJECT object identifier, and any conformant implementation of ASN.1 and BER must be able to generate and recognize this value." ::= { ifEntry 22 } -- **************************** IP GROUP ****************************** -- --------------------------------------------------------------------- --------------------------------------------------------------------- the IP group -- Implementation of the IP group is mandatory for all -- systems. ipForwarding OBJECT-TYPE SYNTAX INTEGER { forwarding(1), -- acting as a gateway not-forwarding(2) -- NOT acting as a gateway } ACCESS read-write STATUS mandatory DESCRIPTION "The indication of whether this entity is acting as an IP gateway in respect to the forwarding of datagrams received by, but not addressed to, this entity. IP gateways forward datagrams. IP hosts do not (except those source-routed via the host). Note that for some managed nodes, this object may take on only a subset of the values possible. Accordingly, it is appropriate for an agent to return a `badValue' response if a management station attempts to change this object to an inappropriate value." ::= { ip 1 } ipDefaultTTL OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The default value inserted into the Time-To-Live field of the IP header of datagrams originated at this entity, whenever a TTL value is not supplied by the transport layer protocol." ::= { ip 2 } ipInReceives OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of input datagrams received from interfaces, including those received in error." ::= { ip 3 } ipInHdrErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only

STATUS mandatory DESCRIPTION "The number of input datagrams discarded due to errors in their IP headers, including bad checksums, version number mismatch, other format errors, time-to-live exceeded, errors discovered in processing their IP options, etc." ::= { ip 4 } ipInAddrErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of input datagrams discarded because the IP address in their IP header's destination field was not a valid address to be received at this entity. This count includes invalid addresses (e.g., 0.0.0.0) and addresses of unsupported Classes (e.g., Class E). For entities which are not IP Gateways and therefore do not forward datagrams, this counter includes datagrams discarded because the destination address was not a local address." ::= { ip 5 } ipForwDatagrams OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of input datagrams for which this entity was not their final IP destination, as a result of which an attempt was made to find a route to forward them to that final destination. In entities which do not act as IP Gateways, this counter will include only those packets which were Source-Routed via this entity, and the SourceRoute option processing was successful." ::= { ip 6 } ipInUnknownProtos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of locally-addressed datagrams received successfully but discarded because of an unknown or unsupported protocol." ::= { ip 7 } ipInDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of input IP datagrams for which no problems were encountered to prevent their continued processing, but which were discarded (e.g., for lack of buffer space). Note that this

counter does not include any datagrams discarded while awaiting re-assembly." ::= { ip 8 } ipInDelivers OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of input datagrams successfully delivered to IP user-protocols (including ICMP)." ::= { ip 9 } ipOutRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of IP datagrams which local IP user-protocols (including ICMP) supplied to IP in requests for transmission. Note that this counter does not include any datagrams counted in ipForwDatagrams." ::= { ip 10 } ipOutDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of output IP datagrams for which no problem was encountered to prevent their transmission to their destination, but which were discarded (e.g., for lack of buffer space). Note that this counter would include datagrams counted in ipForwDatagrams if any such packets met this (discretionary) discard criterion." ::= { ip 11 } ipOutNoRoutes OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IP datagrams discarded because no route could be found to transmit them to their destination. Note that this counter includes any packets counted in ipForwDatagrams which meet this `no-route' criterion. Note that this includes any datagrams which a host cannot route because all of its default gateways are down." ::= { ip 12 } ipReasmTimeout OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The maximum number of seconds which received fragments are held while they are awaiting

reassembly at this entity." ::= { ip 13 } ipReasmReqds OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IP fragments received which needed to be reassembled at this entity." ::= { ip 14 } ipReasmOKs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IP datagrams successfully reassembled." ::= { ip 15 } ipReasmFails OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of failures detected by the IP reassembly algorithm (for whatever reason: timed out, errors, etc). Note that this is not necessarily a count of discarded IP fragments since some algorithms (notably the algorithm in RFC 815) can lose track of the number of fragments by combining them as they are received." ::= { ip 16 } ipFragOKs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IP datagrams that have been successfully fragmented at this entity." ::= { ip 17 } ipFragFails OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IP datagrams that have been discarded because they needed to be fragmented at this entity but could not be, e.g., because their Don't Fragment flag was set." ::= { ip 18 } ipFragCreates OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION

"The number of IP datagram fragments that have been generated as a result of fragmentation at this entity." ::= { ip 19 } -- the IP address table -- The IP address table contains this entity's IP addressing -- information. ipAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF IpAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The table of addressing information relevant to this entity's IP addresses." ::= { ip 20 } ipAddrEntry OBJECT-TYPE SYNTAX IpAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The addressing information for one of this entity's IP addresses." INDEX { ipAdEntAddr } ::= { ipAddrTable 1 } IpAddrEntry ::= SEQUENCE { ipAdEntAddr IpAddress, ipAdEntIfIndex INTEGER, ipAdEntNetMask IpAddress, ipAdEntBcastAddr INTEGER, ipAdEntReasmMaxSize INTEGER (0..65535) } ipAdEntAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IP address to which this entry's addressing information pertains." ::= { ipAddrEntry 1 } ipAdEntIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index value which uniquely identifies the interface to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the

same value of ifIndex." ::= { ipAddrEntry 2 } ipAdEntNetMask OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The subnet mask associated with the IP address of this entry. The value of the mask is an IP address with all the network bits set to 1 and all the hosts bits set to 0." ::= { ipAddrEntry 3 } ipAdEntBcastAddr OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The value of the least-significant bit in the IP broadcast address used for sending datagrams on the (logical) interface associated with the IP address of this entry. For example, when the Internet standard all-ones broadcast address is used, the value will be 1. This value applies to both the subnet and network broadcasts addresses used by the entity on this (logical) interface." ::= { ipAddrEntry 4 } ipAdEntReasmMaxSize OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The size of the largest IP datagram which this entity can re-assemble from incoming IP fragmented datagrams received on this interface." ::= { ipAddrEntry 5 } -- the IP routing table -- The IP routing table contains an entry for each route -- presently known to this entity. ipRouteTable OBJECT-TYPE SYNTAX SEQUENCE OF IpRouteEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This entity's IP Routing table." ::= { ip 21 } ipRouteEntry OBJECT-TYPE SYNTAX IpRouteEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A route to a particular destination." INDEX { ipRouteDest } ::= { ipRouteTable 1 }

IpRouteEntry ::= SEQUENCE { ipRouteDest IpAddress, ipRouteIfIndex INTEGER, ipRouteMetric1 INTEGER, ipRouteMetric2 INTEGER, ipRouteMetric3 INTEGER, ipRouteMetric4 INTEGER, ipRouteNextHop IpAddress, ipRouteType INTEGER, ipRouteProto INTEGER, ipRouteAge INTEGER, ipRouteMask IpAddress, ipRouteMetric5 INTEGER, ipRouteInfo OBJECT IDENTIFIER } ipRouteDest OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The destination IP address of this route. An entry with a value of 0.0.0.0 is considered a default route. Multiple routes to a single destination can appear in the table, but access to such multiple entries is dependent on the tableaccess mechanisms defined by the network management protocol in use." ::= { ipRouteEntry 1 } ipRouteIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The index value which uniquely identifies the local interface through which the next hop of this route should be reached. The interface identified by a particular value of this index is the same interface as identified by the same value of ifIndex." ::= { ipRouteEntry 2 } ipRouteMetric1 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write

STATUS mandatory DESCRIPTION "The primary routing metric for this route. The semantics of this metric are determined by the routing-protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1." ::= { ipRouteEntry 3 } ipRouteMetric2 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "An alternate routing metric for this route. The semantics of this metric are determined by the routing-protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1." ::= { ipRouteEntry 4 } ipRouteMetric3 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "An alternate routing metric for this route. The semantics of this metric are determined by the routing-protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1." ::= { ipRouteEntry 5 } ipRouteMetric4 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "An alternate routing metric for this route. The semantics of this metric are determined by the routing-protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1." ::= { ipRouteEntry 6 } ipRouteNextHop OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The IP address of the next hop of this route. (In the case of a route bound to an interface which is realized via a broadcast media, the value of this field is the agent's IP address on that interface.)" ::= { ipRouteEntry 7 } ipRouteType OBJECT-TYPE SYNTAX INTEGER { other(1),

-- none of the following

invalid(2), direct(3), indirect(4)

-- an invalidated route -- route to directly -- connected (sub-)network -- route to a non-local -- host/network/sub-network

} ACCESS read-write STATUS mandatory DESCRIPTION "The type of route. Note that the values direct(3) and indirect(4) refer to the notion of direct and indirect routing in the IP architecture. Setting this object to the value invalid(2) has the effect of invalidating the corresponding entry in the ipRouteTable object. That is, it effectively disassociates the destination identified with said entry from the route identified with said entry. It is an implementation-specific matter as to whether the agent removes an invalidated entry from the table. Accordingly, management stations must be prepared to receive tabular information from agents that corresponds to entries not currently in use. Proper interpretation of such entries requires examination of the relevant ipRouteType object." ::= { ipRouteEntry 8 } ipRouteProto OBJECT-TYPE SYNTAX INTEGER { other(1),

-- none of the following -- non-protocol information, -- e.g., manually configured -- entries -- set via a network -- management protocol -- obtained via ICMP, -- e.g., Redirect -- the remaining values are -- all gateway routing -- protocols

local(2), netmgmt(3), icmp(4),

egp(5), ggp(6), hello(7), rip(8), is-is(9), es-is(10), ciscoIgrp(11), bbnSpfIgp(12), ospf(13), bgp(14) } ACCESS read-only

STATUS mandatory DESCRIPTION "The routing mechanism via which this route was learned. Inclusion of values for gateway routing protocols is not intended to imply that hosts should support those protocols." ::= { ipRouteEntry 9 } ipRouteAge OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The number of seconds since this route was last updated or otherwise determined to be correct. Note that no semantics of `too old' can be implied except through knowledge of the routing protocol by which the route was learned." ::= { ipRouteEntry 10 } ipRouteMask OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "Indicate the mask to be logical-ANDed with the destination address before being compared to the value in the ipRouteDest field. For those systems that do not support arbitrary subnet masks, an agent constructs the value of the ipRouteMask by determining whether the value of the correspondent ipRouteDest field belong to a class-A, B, or C network, and then using one of: mask network 255.0.0.0 class-A 255.255.0.0 class-B 255.255.255.0 class-C If the value of the ipRouteDest is 0.0.0.0 (a default route), then the mask value is also 0.0.0.0. It should be noted that all IP routing subsystems implicitly use this mechanism." ::= { ipRouteEntry 11 } ipRouteMetric5 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "An alternate routing metric for this route. The semantics of this metric are determined by the routing-protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1." ::= { ipRouteEntry 12 } ipRouteInfo OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory

DESCRIPTION "A reference to MIB definitions specific to the particular routing protocol which is responsible for this route, as determined by the value specified in the route's ipRouteProto value. If this information is not present, its value should be set to the OBJECT IDENTIFIER { 0 0 }, which is a syntactically valid object identifier, and any conformant implementation of ASN.1 and BER must be able to generate and recognize this value." ::= { ipRouteEntry 13 } -- the IP Address Translation table ------The IP address translation table contain the IpAddress to `physical' address equivalences. Some interfaces do not use translation tables for determining address equivalences (e.g., DDN-X.25 has an algorithmic method); if all interfaces are of this type, then the Address Translation table is empty, i.e., has zero entries.

ipNetToMediaTable OBJECT-TYPE SYNTAX SEQUENCE OF IpNetToMediaEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The IP Address Translation table used for mapping from IP addresses to physical addresses." ::= { ip 22 } ipNetToMediaEntry OBJECT-TYPE SYNTAX IpNetToMediaEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Each entry contains one IpAddress to `physical' address equivalence." INDEX { ipNetToMediaIfIndex, ipNetToMediaNetAddress } ::= { ipNetToMediaTable 1 } IpNetToMediaEntry ::= SEQUENCE { ipNetToMediaIfIndex INTEGER, ipNetToMediaPhysAddress PhysAddress, ipNetToMediaNetAddress IpAddress, ipNetToMediaType INTEGER } ipNetToMediaIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The interface on which this entry's equivalence is effective. The interface identified by a particular value of this index is the same

interface as identified by the same value of ifIndex." ::= { ipNetToMediaEntry 1 } ipNetToMediaPhysAddress OBJECT-TYPE SYNTAX PhysAddress ACCESS read-write STATUS mandatory DESCRIPTION "The media-dependent `physical' address." ::= { ipNetToMediaEntry 2 } ipNetToMediaNetAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The IpAddress corresponding to the mediadependent `physical' address." ::= { ipNetToMediaEntry 3 } ipNetToMediaType OBJECT-TYPE SYNTAX INTEGER { other(1), invalid(2), dynamic(3), static(4) } ACCESS read-write STATUS mandatory DESCRIPTION "The type of mapping.

-- none of the following -- an invalidated mapping

Setting this object to the value invalid(2) has the effect of invalidating the corresponding entry in the ipNetToMediaTable. That is, it effectively disassociates the interface identified with said entry from the mapping identified with said entry. It is an implementation-specific matter as to whether the agent removes an invalidated entry from the table. Accordingly, management stations must be prepared to receive tabular information from agents that corresponds to entries not currently in use. Proper interpretation of such entries requires examination of the relevant ipNetToMediaType object." ::= { ipNetToMediaEntry 4 } -- additional IP objects ipRoutingDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of routing entries which were chosen to be discarded even though they are valid. One possible reason for discarding such an entry could be to free-up buffer space for other routing entries."

::= { ip 23 } -- --------------------------------------------------------------------- ****************************** ICMP GROUP ************************** -- --------------------------------------------------------------------- the ICMP group -- Implementation of the ICMP group is mandatory for all -- systems. icmpInMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of ICMP messages which the entity received. Note that this counter includes all those counted by icmpInErrors." ::= { icmp 1 } icmpInErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP messages which the entity received but determined as having ICMP-specific errors (bad ICMP checksums, bad length, etc.)." ::= { icmp 2 } icmpInDestUnreachs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Destination Unreachable messages received." ::= { icmp 3 } icmpInTimeExcds OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Time Exceeded messages received." ::= { icmp 4 } icmpInParmProbs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Parameter Problem messages received." ::= { icmp 5 } icmpInSrcQuenchs OBJECT-TYPE SYNTAX Counter

ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Source Quench messages received." ::= { icmp 6 } icmpInRedirects OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Redirect messages received." ::= { icmp 7 } icmpInEchos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Echo (request) messages received." ::= { icmp 8 } icmpInEchoReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Echo Reply messages received." ::= { icmp 9 } icmpInTimestamps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Timestamp (request) messages received." ::= { icmp 10 } icmpInTimestampReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Timestamp Reply messages received." ::= { icmp 11 } icmpInAddrMasks OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Address Mask Request messages received." ::= { icmp 12 } icmpInAddrMaskReps OBJECT-TYPE

SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Address Mask Reply messages received." ::= { icmp 13 } icmpOutMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of ICMP messages which this entity attempted to send. Note that this counter includes all those counted by icmpOutErrors." ::= { icmp 14 } icmpOutErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP messages which this entity did not send due to problems discovered within ICMP such as a lack of buffers. This value should not include errors discovered outside the ICMP layer such as the inability of IP to route the resultant datagram. In some implementations there may be no types of error which contribute to this counter's value." ::= { icmp 15 } icmpOutDestUnreachs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Destination Unreachable messages sent." ::= { icmp 16 } icmpOutTimeExcds OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Time Exceeded messages sent." ::= { icmp 17 } icmpOutParmProbs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Parameter Problem messages sent." ::= { icmp 18 } icmpOutSrcQuenchs OBJECT-TYPE

SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Source Quench Messages Sent." ::= { icmp 19 } icmpOutRedirects OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Redirect messages sent. For a host, this object will always be zero, since hosts do not send redirects." ::= { icmp 20 } icmpOutEchos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Echo (request) messages sent." ::= { icmp 21 } icmpOutEchoReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Echo Reply messages sent." ::= { icmp 22 } icmpOutTimestamps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Timestamp (request) messages sent." ::= { icmp 23 } icmpOutTimestampReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Timestamp Reply messages sent." ::= { icmp 24 } icmpOutAddrMasks OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Address Mask Request messages sent." ::= { icmp 25 }

icmpOutAddrMaskReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of ICMP Address Mask Reply messages sent." ::= { icmp 26 } -- --------------------------------------------------------------------- **************************** TCP GROUP ***************************** -- --------------------------------------------------------------------- the TCP group -- Implementation of the TCP group is mandatory for all -- systems that implement the TCP. ----Note that instances of object types that represent information about a particular TCP connection are transient; they persist only as long as the connection in question.

tcpRtoAlgorithm OBJECT-TYPE SYNTAX INTEGER { other(1),

-- none of the following

constant(2), -- a constant rto rsre(3), -- MIL-STD-1778, Appendix B vanj(4) -- Van Jacobson's algorithm [10] } ACCESS read-only STATUS mandatory DESCRIPTION "The algorithm used to determine the timeout value used for retransmitting unacknowledged octets." ::= { tcp 1 } tcpRtoMin OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The minimum value permitted by a TCP implementation for the retransmission timeout, measured in milliseconds. More refined semantics for objects of this type depend upon the algorithm used to determine the retransmission timeout. In particular, when the timeout algorithm is rsre(3), an object of this type has the semantics of the LBOUND quantity described in RFC 793." ::= { tcp 2 } tcpRtoMax OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The maximum value permitted by a TCP implementation for the retransmission timeout,

measured in milliseconds. More refined semantics for objects of this type depend upon the algorithm used to determine the retransmission timeout. In particular, when the timeout algorithm is rsre(3), an object of this type has the semantics of the UBOUND quantity described in RFC 793." ::= { tcp 3 } tcpMaxConn OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The limit on the total number of TCP connections the entity can support. In entities where the maximum number of connections is dynamic, this object should contain the value -1." ::= { tcp 4 } tcpActiveOpens OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of times TCP connections have made a direct transition to the SYN-SENT state from the CLOSED state." ::= { tcp 5 } tcpPassiveOpens OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of times TCP connections have made a direct transition to the SYN-RCVD state from the LISTEN state." ::= { tcp 6 } tcpAttemptFails OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of times TCP connections have made a direct transition to the CLOSED state from either the SYN-SENT state or the SYN-RCVD state, plus the number of times TCP connections have made a direct transition to the LISTEN state from the SYN-RCVD state." ::= { tcp 7 } tcpEstabResets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of times TCP connections have made a direct transition to the CLOSED state from either the ESTABLISHED state or the CLOSE-WAIT state."

::= { tcp 8 } tcpCurrEstab OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory DESCRIPTION "The number of TCP connections for which the current state is either ESTABLISHED or CLOSEWAIT." ::= { tcp 9 } tcpInSegs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of segments received, including those received in error. This count includes segments received on currently established connections." ::= { tcp 10 } tcpOutSegs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of segments sent, including those on current connections but excluding those containing only retransmitted octets." ::= { tcp 11 } tcpRetransSegs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of segments retransmitted - that is, the number of TCP segments transmitted containing one or more previously transmitted octets." ::= { tcp 12 } -- the TCP Connection table -- The TCP connection table contains information about this -- entity's existing TCP connections. tcpConnTable OBJECT-TYPE SYNTAX SEQUENCE OF TcpConnEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table containing TCP connection-specific information." ::= { tcp 13 } tcpConnEntry OBJECT-TYPE SYNTAX TcpConnEntry

ACCESS not-accessible STATUS mandatory DESCRIPTION "Information about a particular current TCP connection. An object of this type is transient, in that it ceases to exist when (or soon after) the connection makes the transition to the CLOSED state." INDEX { tcpConnLocalAddress, tcpConnLocalPort, tcpConnRemAddress, tcpConnRemPort } ::= { tcpConnTable 1 } TcpConnEntry ::= SEQUENCE { tcpConnState INTEGER, tcpConnLocalAddress IpAddress, tcpConnLocalPort INTEGER (0..65535), tcpConnRemAddress IpAddress, tcpConnRemPort INTEGER (0..65535) } tcpConnState OBJECT-TYPE SYNTAX INTEGER { closed(1), listen(2), synSent(3), synReceived(4), established(5), finWait1(6), finWait2(7), closeWait(8), lastAck(9), closing(10), timeWait(11), deleteTCB(12) } ACCESS read-write STATUS mandatory DESCRIPTION "The state of this TCP connection. The only value which may be set by a management station is deleteTCB(12). Accordingly, it is appropriate for an agent to return a `badValue' response if a management station attempts to set this object to any other value. If a management station sets this object to the value deleteTCB(12), then this has the effect of deleting the TCB (as defined in RFC 793) of the corresponding connection on the managed node, resulting in immediate termination of the connection.

As an implementation-specific option, a RST segment may be sent from the managed node to the other TCP endpoint (note however that RST segments are not sent reliably)." ::= { tcpConnEntry 1 } tcpConnLocalAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The local IP address for this TCP connection. In the case of a connection in the listen state which is willing to accept connections for any IP interface associated with the node, the value 0.0.0.0 is used." ::= { tcpConnEntry 2 } tcpConnLocalPort OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The local port number for this TCP connection." ::= { tcpConnEntry 3 } tcpConnRemAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The remote IP address for this TCP connection." ::= { tcpConnEntry 4 } tcpConnRemPort OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The remote port number for this TCP connection." ::= { tcpConnEntry 5 } -- additional TCP objects tcpInErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of segments received in error (e.g., bad TCP checksums)." ::= { tcp 14 } tcpOutRsts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of TCP segments sent containing the RST flag."

::= { tcp 15 } -- --------------------------------------------------------------------- **************************** UDP GROUP ***************************** -- --------------------------------------------------------------------- the UDP group -- Implementation of the UDP group is mandatory for all -- systems which implement the UDP. udpInDatagrams OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of UDP datagrams delivered to UDP users." ::= { udp 1 } udpNoPorts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of received UDP datagrams for which there was no application at the destination port." ::= { udp 2 } udpInErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of received UDP datagrams that could not be delivered for reasons other than the lack of an application at the destination port." ::= { udp 3 } udpOutDatagrams OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of UDP datagrams sent from this entity." ::= { udp 4 } -- the UDP Listener table -- The UDP listener table contains information about this -- entity's UDP end-points on which a local application is -- currently accepting datagrams. udpTable OBJECT-TYPE SYNTAX SEQUENCE OF UdpEntry ACCESS not-accessible STATUS mandatory DESCRIPTION

"A table containing UDP listener information." ::= { udp 5 } udpEntry OBJECT-TYPE SYNTAX UdpEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Information about a particular current UDP listener." INDEX { udpLocalAddress, udpLocalPort } ::= { udpTable 1 } UdpEntry ::= SEQUENCE { udpLocalAddress IpAddress, udpLocalPort INTEGER (0..65535) } udpLocalAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The local IP address for this UDP listener. In the case of a UDP listener which is willing to accept datagrams for any IP interface associated with the node, the value 0.0.0.0 is used." ::= { udpEntry 1 } udpLocalPort OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The local port number for this UDP listener." ::= { udpEntry 2 } -- --------------------------------------------------------------------- *************************** SNMP GROUP ***************************** -- --------------------------------------------------------------------- the SNMP group ----------Implementation of the SNMP group is mandatory for all systems which support an SNMP protocol entity. Some of the objects defined below will be zero-valued in those SNMP implementations that are optimized to support only those functions specific to either a management agent or a management station. In particular, it should be observed that the objects below refer to an SNMP entity, and there may be several SNMP entities residing on a managed node (e.g., if the node is hosting acting as a management station).

snmpInPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only

STATUS mandatory DESCRIPTION "The total number of Messages delivered to the SNMP entity from the transport service." ::= { snmp 1 } snmpOutPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Messages which were passed from the SNMP protocol entity to the transport service." ::= { snmp 2 } snmpInBadVersions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Messages which were delivered to the SNMP protocol entity and were for an unsupported SNMP version." ::= { snmp 3 } snmpInBadCommunityNames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Messages delivered to the SNMP protocol entity which used a SNMP community name not known to said entity." ::= { snmp 4 } snmpInBadCommunityUses OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Messages delivered to the SNMP protocol entity which represented an SNMP operation which was not allowed by the SNMP community named in the Message." ::= { snmp 5 } snmpInASNParseErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of ASN.1 or BER errors encountered by the SNMP protocol entity when decoding received SNMP Messages." ::= { snmp 6 } -- { snmp 7 } is not used snmpInTooBigs OBJECT-TYPE

SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the error-status field is `tooBig'." ::= { snmp 8 } snmpInNoSuchNames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the error-status field is `noSuchName'." ::= { snmp 9 } snmpInBadValues OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the error-status field is `badValue'." ::= { snmp 10 } snmpInReadOnlys OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number valid SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the error-status field is `readOnly'. It should be noted that it is a protocol error to generate an SNMP PDU which contains the value `readOnly' in the error-status field, as such this object is provided as a means of detecting incorrect implementations of the SNMP." ::= { snmp 11 } snmpInGenErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the error-status field is `genErr'." ::= { snmp 12 } snmpInTotalReqVars OBJECT-TYPE

SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of MIB objects which have been retrieved successfully by the SNMP protocol entity as the result of receiving valid SNMP Get-Request and Get-Next PDUs." ::= { snmp 13 } snmpInTotalSetVars OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of MIB objects which have been altered successfully by the SNMP protocol entity as the result of receiving valid SNMP Set-Request PDUs." ::= { snmp 14 } snmpInGetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Get-Request PDUs which have been accepted and processed by the SNMP protocol entity." ::= { snmp 15 } snmpInGetNexts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Get-Next PDUs which have been accepted and processed by the SNMP protocol entity." ::= { snmp 16 } snmpInSetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Set-Request PDUs which have been accepted and processed by the SNMP protocol entity." ::= { snmp 17 } snmpInGetResponses OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Get-Response PDUs which have been accepted and processed by the SNMP protocol entity." ::= { snmp 18 }

snmpInTraps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Trap PDUs which have been accepted and processed by the SNMP protocol entity." ::= { snmp 19 } snmpOutTooBigs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the error-status field is `tooBig.'" ::= { snmp 20 } snmpOutNoSuchNames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the error-status is `noSuchName'." ::= { snmp 21 } snmpOutBadValues OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the error-status field is `badValue'." ::= { snmp 22 } -- { snmp 23 } is not used snmpOutGenErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the error-status field is `genErr'." ::= { snmp 24 } snmpOutGetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only

STATUS mandatory DESCRIPTION "The total number of SNMP Get-Request PDUs which have been generated by the SNMP protocol entity." ::= { snmp 25 } snmpOutGetNexts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Get-Next PDUs which have been generated by the SNMP protocol entity." ::= { snmp 26 } snmpOutSetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Set-Request PDUs which have been generated by the SNMP protocol entity." ::= { snmp 27 } snmpOutGetResponses OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Get-Response PDUs which have been generated by the SNMP protocol entity." ::= { snmp 28 } snmpOutTraps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of SNMP Trap PDUs which have been generated by the SNMP protocol entity." ::= { snmp 29 } snmpEnableAuthenTraps OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Indicates whether the SNMP agent process is permitted to generate authentication-failure traps. The value of this object overrides any configuration information; as such, it provides a means whereby all authentication-failure traps may be disabled. Note that it is strongly recommended that this object be stored in non-volatile memory so that it remains constant between re-initializations of the

network management system." ::= { snmp 30 }

snmpDot3RptrMgt rptrBasicPackage rptrMonitorPackage rptrAddrTrackPackage rptrRptrInfo rptrGroupInfo rptrPortInfo rptrMonitorRptrInfo rptrMonitorGroupInfo rptrMonitorPortInfo

OBJECT IDENTIFIER ::= {mib-2 22} OBJECT IDENTIFIER ::= {snmpDot3RptrMgt 1} OBJECT IDENTIFIER ::= {snmpDot3RptrMgt 2} OBJECT IDENTIFIER ::= {snmpDot3RptrMgt 3} OBJECT IDENTIFIER ::= {rptrBasicPackage 1} OBJECT IDENTIFIER ::= {rptrBasicPackage 2} OBJECT IDENTIFIER ::= {rptrBasicPackage 3} OBJECT IDENTIFIER ::= {rptrMonitorPackage 1} OBJECT IDENTIFIER ::= {rptrMonitorPackage 2} OBJECT IDENTIFIER ::= {rptrMonitorPackage 3}

rptrAddrTrackRptrInfo OBJECT IDENTIFIER ::= {rptrAddrTrackPackage 1} rptrAddrTrackGroupInfo OBJECT IDENTIFIER ::= {rptrAddrTrackPackage 2} rptrAddrTrackPortInfo OBJECT IDENTIFIER ::= {rptrAddrTrackPackage 3} -------------------------------------------------------------------------------------------Start of --Basic Group (Mandatory) ----------------------------------------------------------------------------------------------Basic Repeater OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "The rptrGroupCapacity is the number of groups that can be contained within the repeater. Within each managed repeater, the groups are uniquely numbered in the range from 1 to rptrGroupCapacity. Some groups may not be present in a given repeater instance, in which case the actual number of groups present will be less than rptrGroupCapacity. The number of groups present will never be greater than rptrGroupCapacity. Note: In practice, this will generally be the number of field-replaceable units (i.e., modules, cards, or boards) that can fit in the physical

rptrGroupCapacity

repeater enclosure, and the group numbers will correspond to numbers marked on the physical enclosure." ::= { rptrRptrInfo 1 } rptrOperStatus ined or unknown ok(2), own failures rptrFailure(3), ter related fail groupFailure(4), related failure portFailure(5), related failure generalFailure(6) re, unspecified } ACCESS read-only STATUS mandatory DESCRIPTION "The rptrOperStatus object indicates the operational state of the repeater. The rptrHealthText object may be consulted for more specific information about the state of the repeater's health. In the case of multiple kinds of failures (e.g., repeater failure and port failure), the value of this attribute shall reflect the highest priority failure in the following order: rptrFailure(3) groupFailure(4) portFailure(5) generalFailure(6)" ::= {rptrRptrInfo 2} rptrHealthText OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The health text object is a text string that provides information relevant to the operational state of the repeater. Agents may use this mechanism to provide detailed failure information or instructions for problem resolution. The contents are agent-specific." ::= {rptrRptrInfo 3} OBJECT-TYPE SYNTAX INTEGER { noReset(1), reset(2) } read-write mandatory -- failu -- port -- group -- repea -- no kn OBJECT-TYPE SYNTAX INTEGER { other(1),

-- undef

rptrReset

ACCESS STATUS DESCRIPTION

"Setting this variable to reset(2) causes a transition to the START state of Fig 9-2 in section 9 [11]. Setting this variable to noReset(1) has no effect. The agent will always return the value noReset(1) when this variable is read. This action does not reset the management counters defined in this document nor does it affect the portAdminState parameters. Included in this action is the execution of a disruptive Self-Test. As a result of this action a rptrReset trap may be sent. Note: This action may result in the loss of packets." ::= {rptrRptrInfo 4} rptrNonDisruptTest OBJECT-TYPE SYNTAX INTEGER { noSelfTest(1), selfTest(2) } read-write mandatory

ACCESS STATUS DESCRIPTION "Setting this variable to selfTest(2) causes the repeater to perform a agent-specific, nondisruptive self-test that has the following characteristics: (1) The nature of the tests is not specified. (2) The test does not change the state of the repeater or management information about the repeater. (3) The test does not inject packets onto any segment. (4) The test does not prevent the relay of any packets. (5) The test does not interfere with management functions. After performing this test the agent will update the repeater health information. If a change in the repeater health has occurred, the agent will send a rptrHealth trap. Setting this variable to noSelfTest(1) has no effect. The agent will always return the value noSelfTest(1) when this variable is read." ::= {rptrRptrInfo 5} rptrTotalPartitionedPorts OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory DESCRIPTION "This object returns the total number of ports in the repeater whose current state meets all three of the following criteria: rptrPortOperStatus does not have the value notPresent(3), rptrPortAdminStatus is enabled(1), and rptrPortAutoPartitionState is autoPartitioned(2)." ::= {rptrRptrInfo 6}

----

Basic Group Table OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION "Table of descriptive and the groups of ports." ::= {rptrGroupInfo 1}

rptrGroupTable

SEQUENCE OF RptrGroupEntry not-accessible mandatory status information about

rptrGroupEntry

OBJECT-TYPE SYNTAX RptrGroupEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table, containing information about a single group of ports." INDEX {rptrGroupIndex} ::= {rptrGroupTable 1} RptrGroupEntry ::= SEQUENCE { rptrGroupIndex

INTEGER, rptrGroupDescr DisplayString, rptrGroupObjectID OBJECT IDENTIFIER, rptrGroupOperStatus INTEGER, rptrGroupLastOperStatusChange TimeTicks, rptrGroupPortCapacity INTEGER } rptrGroupIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This variable identifies the group within the repeater for which this entry contains information. This value is never greater than rptrGroupCapacity." ::= {rptrGroupEntry 1} OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "A textual description of the group. This value should include the full name and version identification of the group's hardware type and indicate how the group is differentiated from other groups in the repeater. 'Wilma Flintstone

rptrGroupDescr

6-Port FOIRL Plug-in Module, Rev A' or 'Barney Rubble 10BASE-T 4-port SIMM socket V. 2.1' are examples of valid group descriptions. It is mandatory that this only contain printable ASCII characters." ::= {rptrGroupEntry 2} rptrGroupObjectID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "The vendor's authoritative identification of the group. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides a straight-forward and unambiguous means for determining what kind of group is being managed. For example, this variable could take the value 1.3.6.1.4.1.4242.1.2.14 if vendor 'Flintstones, Inc.' was assigned the subtree 1.3.6.1.4.1.4242, and had assigned the identifier 1.3.6.1.4.1.4242.1.2.14 to its 'Wilma Flintstone 6-Port FOIRL Plug-in Module.'" ::= {rptrGroupEntry 3} rptrGroupOperStatus OBJECT-TYPE SYNTAX INTEGER { other(1), operational(2), malfunctioning(3), notPresent(4), underTest(5), resetInProgress(6) } read-only mandatory

ACCESS STATUS DESCRIPTION "An object that indicates the operational status of the group.

A status of notPresent(4) indicates that the group has been physically removed from the repeater. A status of operational(2) indicates that the group is functioning, and a status of malFunctioning(3) indicates that the group is malfunctioning in some way." ::= {rptrGroupEntry 4} rptrGroupLastOperStatusChange OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "An object that contains the value of sysUpTime at the time that the value of the rptrGroupOperStatus object for this group last changed. A value of zero indicates that the group's operational

status has not changed since the agent last restarted." ::= {rptrGroupEntry 5} rptrGroupPortCapacity OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "The rptrGroupPortCapacity is the number of ports that can be contained within the group. Valid range is 1-1024. Within each group, the ports are uniquely numbered in the range from 1 to rptrGroupPortCapacity. Note: In practice, this will generally be the number of ports on a module, card, or board, and the port numbers will correspond to numbers marked on the physical embodiment." ::= {rptrGroupEntry 6} ---Basic Port Table OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION "Table of descriptive and the ports." ::= {rptrPortInfo 1}

rptrPortTable

SEQUENCE OF RptrPortEntry not-accessible mandatory status information about

rptrPortEntry

OBJECT-TYPE SYNTAX RptrPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table, containing information about a single port." INDEX {rptrPortGroupIndex,rptrPortInde ::= {rptrPortTable 1} RptrPortEntry ::= SEQUENCE { rptrPortGroupIndex

x}

INTEGER, rptrPortIndex INTEGER, rptrPortAdminStatus INTEGER, rptrPortAutoPartitionState INTEGER, rptrPortOperStatus INTEGER } rptrPortGroupIndex OBJECT-TYPE SYNTAX ACCESS INTEGER (1..1024) read-only

STATUS mandatory DESCRIPTION "This variable identifies the group containing the port for which this entry contains information." ::= {rptrPortEntry 1} rptrPortIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This variable identifies the port within the group within the repeater for which this entry contains management information. This value can never be greater than rptrGroupPortCapacity for the associated group." ::= {rptrPortEntry 2} OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } read-write mandatory

rptrPortAdminStatus

ACCESS STATUS DESCRIPTION "Setting this object to disabled(2) disables the port. A disabled port neither transmits nor receives. Once disabled, a port must be explicitly enabled to restore operation. A port which is disabled when power is lost or when a reset is exerted shall remain disabled when normal operation resumes. The admin status takes precedence over autopartition and functionally operates between the auto-partition mechanism and the AUI/PMA. Setting this object to enabled(1) enables the port and exerts a BEGIN on the port's auto-partition state machine. (In effect, when a port is disabled, the value of rptrPortAutoPartitionState for that port is frozen until the port is next enabled. When the port becomes enabled, the rptrPortAutoPartitionState becomes notAutoPartitioned(1), regardless of its pre-disabling state.)" ::= {rptrPortEntry 3} rptrPortAutoPartitionState OBJECT-TYPE SYNTAX INTEGER { notAutoPartitioned(1), autoPartitioned(2) } read-only mandatory

ACCESS STATUS DESCRIPTION "The autoPartitionState flag indicates whether the port is currently partitioned by the repeater's

auto-partition protection. The conditions that cause port partitioning are specified in partition state machine in Sect. 9 [11]. They are not differentiated here." ::= {rptrPortEntry 4} rptrPortOperStatus OBJECT-TYPE SYNTAX INTEGER { operational(1), notOperational(2), notPresent(3) } read-only mandatory

ACCESS STATUS DESCRIPTION "This object indicates the port's operational state. The notPresent(3) state indicates the port is physically removed (note this may or may not be possible depending on the type of port.) The operational(1) state indicates that the port is enabled (see rptrPortAdminStatus) and working, even though it might be auto-partitioned (see rptrPortAutoPartitionState)." ::= {rptrPortEntry 5}

-------------------------------------------------------------------------------------------End of --Basic Group (Mandatory) --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Start of --Monitor Group (Optional but if any part of group is impl emented --entire group shall be implemented) ----------------------------------------------------------------------------------------------Repeater Monitor Table

rptrMonitorTransmitCollisions OBJECT-TYPE SYNTAX

Counter

ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented every time the repeater state machine enters the TRANSMIT COLLISION state from any state other than ONE PORT LEFT (Ref: Fig 9-2) [11]. Note: The approximate minimum time for counter rollover is 16 hours." ::= {rptrMonitorRptrInfo 1} ---Group Monitor Table OBJECT-TYPE SYNTAX

rptrMonitorGroupTable y

SEQUENCE OF RptrMonitorGroupEntr

ACCESS not-accessible STATUS mandatory DESCRIPTION "Table of performance and error statistics for the groups." ::= {rptrMonitorGroupInfo 1} rptrMonitorGroupEntry OBJECT-TYPE SYNTAX RptrMonitorGroupEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table, containing total performance and error statistics for a single group. Regular retrieval of the information in this table provides a means of tracking the performance and health of the networked devices attached to this group's ports. The counters in this table are redundant in the sense that they are the summations of information already available through other objects. However, these sums provide a considerable optimization of network management traffic over the otherwise necessary retrieval of the individual counters included in each sum." INDEX {rptrMonitorGroupIndex} ::= {rptrMonitorGroupTable 1} RptrMonitorGroupEntry ::= SEQUENCE { rptrMonitorGroupIndex INTEGER, rptrMonitorGroupTotalFrames Counter, rptrMonitorGroupTotalOctets Counter, rptrMonitorGroupTotalErrors Counter } rptrMonitorGroupIndex OBJECT-TYPE

SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the group within the repeater for which this entry contains information." ::= {rptrMonitorGroupEntry 1} rptrMonitorGroupTotalFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of frames of valid frame length that have been received on the ports in this group. This counter is the summation of the values of the rptrMonitorPortReadableFrames counters for all of the ports in the group. This statistic provides one of the parameters necessary for obtaining the packet error rate. The approximate minimum time for rollover of this counter is 80 hours." ::= {rptrMonitorGroupEntry 2} rptrMonitorGroupTotalOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of octets contained in the valid frames that have been received on the ports in this group. This counter is the summation of the values of the rptrMonitorPortReadableOctets counters for all of the ports in the group. This statistic provides an indicator of the total data transferred. The approximate minimum time for rollover of this counter is 58 minutes." ::= {rptrMonitorGroupEntry 3} rptrMonitorGroupTotalErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of errors which have occurred on all of the ports in this group. This counter is the summation of the values of the rptrMonitorPortTotalErrors counters for all of the ports in the group." ::= {rptrMonitorGroupEntry 4} ---Port Monitor Table OBJECT-TYPE SYNTAX

rptrMonitorPortTable

SEQUENCE OF RptrMonitorPortEntry

ACCESS not-accessible STATUS mandatory DESCRIPTION "Table of performance and error statistics for the ports." ::= {rptrMonitorPortInfo 1} rptrMonitorPortEntry OBJECT-TYPE SYNTAX RptrMonitorPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table, containing performance and error statistics for a single port." INDEX {rptrMonitorPortGroupIndex,rptrM ::= {rptrMonitorPortTable 1} RptrMonitorPortEntry ::= SEQUENCE { rptrMonitorPortGroupIndex INTEGER, rptrMonitorPortIndex INTEGER, rptrMonitorPortReadableFrames Counter, rptrMonitorPortReadableOctets Counter, rptrMonitorPortFCSErrors Counter, rptrMonitorPortAlignmentErrors Counter, rptrMonitorPortFrameTooLongs Counter, rptrMonitorPortShortEvents Counter, rptrMonitorPortRunts Counter, rptrMonitorPortCollisions Counter, rptrMonitorPortLateEvents Counter, rptrMonitorPortVeryLongEvents Counter, rptrMonitorPortDataRateMismatche s Counter, rptrMonitorPortAutoPartitions Counter, rptrMonitorPortTotalErrors Counter } rptrMonitorPortGroupIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the group containing the port for which this entry contains information." ::= {rptrMonitorPortEntry 1}

onitorPortIndex}

rptrMonitorPortIndex

OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the port within the group for which this entry contains information." ::= {rptrMonitorPortEntry 2}

rptrMonitorPortReadableFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This object is the number of frames of valid frame length that have been received on this port. This counter is incremented by one for each frame received on this port whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize (Ref: IEEE 802.3 Std, 4.4.2.1) and for which the FCSError and CollisionEvent signals are not asserted. This statistic provides one of the parameters necessary for obtaining the packet error rate. The approximate minimum time for rollover of this counter is 80 hours." ::= {rptrMonitorPortEntry 3} rptrMonitorPortReadableOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This object is the number of octets contained in valid frames that have been received on this port. This counter is incremented by OctetCount for each frame received on this port which has been determined to be a readable frame. This statistic provides an indicator of the total data transferred. The approximate minimum time for rollover of this counter is 58 minutes." ::= {rptrMonitorPortEntry 4} rptrMonitorPortFCSErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each frame received on this port with the FCSError signal asserted and the FramingError and CollisionEvent signals deasserted and whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize (Ref: 4.4.2.1, IEEE 802.3 Std). The approximate minimum time for rollover of this counter is 80 hours."

::= {rptrMonitorPortEntry 5} rptrMonitorPortAlignmentErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each frame received on this port with the FCSError and FramingError signals asserted and CollisionEvent signal deasserted and whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize (Ref: IEEE 802.3 Std, 4.4.2.1). If rptrMonitorPortAlignmentErrors is incremented then the rptrMonitorPortFCSErrors Counter shall not be incremented for the same frame. The approximate minimum time for rollover of this counter is 80 hours." ::= {rptrMonitorPortEntry 6} rptrMonitorPortFrameTooLongs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each frame received on this port whose OctetCount is greater than maxFrameSize (Ref: 4.4.2.1, IEEE 802.3 Std). If rptrMonitorPortFrameTooLongs is incremented then neither the rptrMonitorPortAlignmentErrors nor the rptrMonitorPortFCSErrors counter shall be incremented for the frame. The approximate minimum time for rollover of this counter is 61 days." ::= {rptrMonitorPortEntry 7} rptrMonitorPortShortEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each CarrierEvent on this port with ActivityDuration less than ShortEventMaxTime. ShortEventMaxTime is greater than 74 bit times and less than 82 bit times. ShortEventMaxTime has tolerances included to provide for circuit losses between a conformance test point at the AUI and the measurement point within the state machine. Note: shortEvents may indicate externally generated noise hits which will cause the repeater to transmit Runts to its other ports, or propagate a collision (which may be late) back to the transmitting DTE and damaged frames to the rest of the network.

Implementors may wish to consider selecting the ShortEventMaxTime towards the lower end of the allowed tolerance range to accommodate bit losses suffered through physical channel devices not budgeted for within this standard. The approximate minimum time for rollover of this counter is 16 hours." ::= {rptrMonitorPortEntry 8} rptrMonitorPortRunts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each CarrierEvent on this port that meets one of the following two conditions. Only one test need be made. a) The ActivityDuration is greater than ShortEventMaxTime and less than ValidPacketMinTime and the CollisionEvent signal is deasserted. b) The OctetCount is less than 64, the ActivityDuration is greater than ShortEventMaxTime and the CollisionEvent signal is deasserted. ValidPacketMinTime is greater than or equal to 552 bit times and less than 565 bit times. An event whose length is greater than 74 bit times but less than 82 bit times shall increment either the shortEvents counter or the runts counter but not both. A CarrierEvent greater than or equal to 552 bit times but less than 565 bit times may or may not be counted as a runt. ValidPacketMinTime has tolerances included to provide for circuit losses between a conformance test point at the AUI and the measurement point within the state machine. Runts usually indicate collision fragments, a normal network event. In certain situations associated with large diameter networks a percentage of runts may exceed ValidPacketMinTime. The approximate minimum time for rollover of this counter is 16 hours." ::= {rptrMonitorPortEntry 9} rptrMonitorPortCollisions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for any CarrierEvent signal on any port for which the CollisionEvent signal on this port is asserted. The approximate minimum time for rollover of this counter is 16 hours." ::= {rptrMonitorPortEntry 10}

rptrMonitorPortLateEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each CarrierEvent on this port in which the CollIn(X) variable transitions to the value SQE (Ref: 9.6.6.2, IEEE 802.3 Std) while the ActivityDuration is greater than the LateEventThreshold. Such a CarrierEvent is counted twice, as both a collision and as a lateEvent. The LateEventThreshold is greater than 480 bit times and less than 565 bit times. LateEventThreshold has tolerances included to permit an implementation to build a single threshold to serve as both the LateEventThreshold and ValidPacketMinTime threshold. The approximate minimum time for rollover of this counter is 81 hours." ::= {rptrMonitorPortEntry 11} rptrMonitorPortVeryLongEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each CarrierEvent on this port whose ActivityDuration is greater than the MAU Jabber Lockup Protection timer TW3 (Ref: 9.6.1 & 9.6.5, IEEE 802.3 Std). Other counters may be incremented as appropriate." ::= {rptrMonitorPortEntry 12} rptrMonitorPortDataRateMismatches OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each frame received on this port that meets all of the following conditions: a) The CollisionEvent signal is not asserted. b) The ActivityDuration is greater than ValidPacketMinTime. c) The frequency (data rate) is detectably mismatched from the local transmit frequency. The exact degree of mismatch is vendor specific and is to be defined by the vendor for conformance testing. When this event occurs, other counters whose increment conditions were satisfied may or may not also be incremented, at the implementor's discretion. Whether or not the repeater was able to maintain data integrity is beyond the scope of this standard." ::= {rptrMonitorPortEntry 13}

rptrMonitorPortAutoPartitions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each time the repeater has automatically partitioned this port. The conditions that cause port partitioning are specified in the partition state machine in Section 9 [IEEE 802.3 Std]. They are not differentiated here." ::= {rptrMonitorPortEntry 14} rptrMonitorPortTotalErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of errors which have occurred on this port. This counter is the summation of the values of other error counters (for the same port), namely: rptrMonitorPortFCSErrors, rptrMonitorPortAlignmentErrors, rptrMonitorPortFrameTooLongs, rptrMonitorPortShortEvents, rptrMonitorPortLateEvents, rptrMonitorPortVeryLongEvents, and rptrMonitorPortDataRateMismatches. This counter is redundant in the sense that it is the summation of information already available through other objects. However, it is included specifically because the regular retrieval of this object as a means of tracking the health of a port provides a considerable optimization of network management traffic over the otherwise necessary retrieval of the summed counters." ::= {rptrMonitorPortEntry 15} -------------------------------------------------------------------------------------------End of --Monitor Group --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Start of

--p is --

Address Tracking Group (Optional but if any part of grou -implemented the entire group shall be --

-implemented) ---------------------------------------------------------------------------------------------------Repeater Address Tracking Table

Group Address Tracking Table

Port Address Tracking Table OBJECT-TYPE SYNTAX SEQUENCE OF RptrAddrTrackEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Table of address mapping information about the ports." ::= {rptrAddrTrackPortInfo 1} OBJECT-TYPE SYNTAX RptrAddrTrackEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table, containing address mapping information about a single port." INDEX {rptrAddrTrackGroupIndex,rptrAdd ::= {rptrAddrTrackTable 1} RptrAddrTrackEntry ::= SEQUENCE { rptrAddrTrackGroupIndex

rptrAddrTrackTable

rptrAddrTrackEntry

rTrackPortIndex}

INTEGER, rptrAddrTrackPortIndex INTEGER, rptrAddrTrackLastSourceAddress PhysAddress, rptrAddrTrackSourceAddrChanges Counter } rptrAddrTrackGroupIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the group containing the

port for which this entry contains information." ::= {rptrAddrTrackEntry 1} rptrAddrTrackPortIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the port within the group for which this entry contains information." ::= {rptrAddrTrackEntry 2} rptrAddrTrackLastSourceAddress OBJECT-TYPE SYNTAX PhysAddress ACCESS read-only STATUS mandatory DESCRIPTION "This object is the SourceAddress of the last readable frame (i.e., counted by rptrMonitorPortReadableFrames) received by this port." ::= {rptrAddrTrackEntry 3} rptrAddrTrackSourceAddrChanges OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented by one for each time that the rptrAddrTrackLastSourceAddress attribute for this port has changed. This may indicate whether a link is connected to a single DTE or another multi-user segment. The approximate minimum time for rollover of this counter is 81 hours." ::= {rptrAddrTrackEntry 4} -------------------------------------------------------------------------------------------End of --Address Tracking Group --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Start of --Trap Definitions --

------------------------------------------------------------------------------------------rptrHealth TRAP-TYPE ENTERPRISE VARIABLES snmpDot3RptrMgt { rptrOperStatus }

DESCRIPTION "The rptrHealth trap conveys information related to the operational state of the repeater. This trap is sent only when the operational status of the repeater changes. The rptrHealth trap must contain the rptrOperStatus variable. The agent may optionally include the rptrHealthText variable in the varBind list. See the rptrOperStatus and rptrHealthText objects for descriptions of the information that is sent. The agent must throttle the generation of consecutive rptrHealth traps so that there is at least a five-second gap between them." 1 snmpDot3RptrMgt { rptrGroupIndex }

::=

rptrGroupChange TRAP-TYPE ENTERPRISE VARIABLES

DESCRIPTION "This trap is sent when a change occurs in the group structure of a repeater. This occurs only when a group is logically removed from or added to a repeater. The varBind list contains the identifier of the group that was removed or added. The agent must throttle the generation of consecutive rptrGroupChange traps for the same group so that there is at least a five-second gap between them." 2

::=

--rptrResetEvent TRAP-TYPE -ENTERPRISE snmpDot3RptrMgt -VARIABLES { -rptrOperStatus -} -DESCRIPTION -"The rptrReset trap conveys information related to -the operational state of the repeater. This trap -is sent on completion of a repeater reset action. -A repeater reset action is defined as an a -transition to the START state of Fig 9-2 in -section 9 [11], when triggered by a management -command (e.g., an SNMP Set on the rptrReset -object). --The agent must throttle the generation of

----------------

consecutive rptrReset traps so that there is at least a five-second gap between them. The rptrReset trap is not sent when the agent restarts and sends an SNMP coldStart or warmStart trap. However, it is recommended that a repeater agent send the rptrHealth variables as optional variables with its coldStart and warmStart trap PDUs. The rptrOperStatus variable must be included in the varbind list sent with this trap. The agent may optionally include the rptrHealthText variable as well." 2

::=

-------------------------------------------------------------------------------------------End of --Trap Definitions -------------------------------------------------------------------------------------------snmpDot3RpMauMgt OBJECT IDENTIFIER ::= { linkBuilderMSH-mib 2 } -------------------------------------------------------------------------------------------the only group in the SNMP Repeater MAU Mib --the rpMauBasicGroup is mandatory -------------------------------------------------------------------------------------------rpMauBasicGroup OBJECT IDENTIFIER ::= { snmpDot3RpMauMgt 1 } --- The Basic Repeater MAU Table -rpMauTable OBJECT-TYPE SYNTAX SEQUENCE OF RpMauEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Table of descriptive and status information about the groups of ports." ::= { rpMauBasicGroup 1 }

rpMauEntry

OBJECT-TYPE SYNTAX RpMauEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table, containing information about a single group of ports." INDEX { rpMauGroupIndex, rpMauPortIndex, rpMauIndex } ::= { rpMauTable 1 } RpMauEntry ::= SEQUENCE { rpMauGroupIndex rpMauPortIndex rpMauIndex rpMauType rpMauAdminState rpMauMediaAvailable rpMauLostMedias rpMauJabberState rpMauJabbers } INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, Counter, INTEGER, Counter

rpMauGroupIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This variable uniquely identifies the repeater group that contains the port to which is connected the MAU for which this entry contains information." ::= { rpMauEntry 1 } rpMauPortIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This variable uniquely identifies the repeater port to which is connected the MAU for which this entry contains information." ::= { rpMauEntry 2 } rpMauIndex OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION "This variable uniquely identifies the MAU for which this entry contains information." ::= { rpMauEntry 3 } OBJECT-TYPE SYNTAX INTEGER { other(1), unknown(2), aui(7),

rpMauType

-- undefined -- initializing, -- true state not -- no internal MAU

yet known

, tenbase5(8), per sec 8 foirl(9), ec 9.9 tenbase2(10), -- thin coax MAU per sec 10 tenbaseT(14), -- UTP MAU per se c 14 tenbaseFP(16), -- passive fiber MAU per sec 16 tenbaseFB(17), -- sync fiber MAU per 17 tenbaseFL(18) -- async fiber MA U per sec 18 } ACCESS read-only STATUS mandatory DESCRIPTION "A value that identifies the 10 Mb/s baseband MAU type. The enumeration of the type is such that the value matches the section number of the IEEE 802.3 standard that specifies the particular MAU." ::= { rpMauEntry 4 } rpMauAdminState OBJECT-TYPE SYNTAX INTEGER { other(1), unknown(2), -- FOIRL MAU per s -- view from AUI -- thick coax MAU

ACCESS STATUS DESCRIPTION "The administrative state of the MAU. This object may be implemented as a read-only object by those agents and MAUs that do not implement software control of the administrative state. A MAU in the operational(3) state is fully functional, operates, and passes signals to its attached DTE or repeater port in accordance to its specification. A MAU in standby(4) state forces DI and CI and the media transmitter to idle. Standby(4) mode only applies to link type MAUs. The state of mauMediaAvailable is unaffected. A MAU in shutdown(5) state assumes the same condition on DI, CI, and the media transmitter as if it were powered down. The MAU may return other(1) state for the mauJabber and mauMediaAvailable objects when it is in this state. For an AUI, this state will remove power

---operational(3), -standby(4), -shutdown(5), -reset(6) -} read-write mandatory

undefined initializing, true state not yet known powered and connected inactive but on similar to power down write-only to reset mau

from the AUI. Setting this variable to the value reset(6) resets the MAU in the same manner as a power-off, poweron cycle would. Setting this variable to the value operational(3), standby(4), or shutdown(5) causes the MAU to assume the respective state except that setting a mixing-type MAU or an AUI to standby(4) will cause the MAU to enter the shutdown state." ::= { rpMauEntry 5 } rpMauMediaAvailable OBJECT-TYPE SYNTAX INTEGER { other(1), unknown(2), g, -- true state not yet known available(3), ht normal, -- loopback no rmal notAvailable(4), -- link loss o r low light, remoteFault(5), t, -- applies onl y to 10BASE-FB invalidSignal(6) -- invalid sig nal, -- applies onl y to 10BASE-FB } ACCESS read-only STATUS mandatory DESCRIPTION "If the MAU is a link or fiber type (FOIRL, 10BASE-T, 10BASE-F) then this is equivalent to the link integrity/low light state. For an AUI or coax MAU this indicates whether or not loopback is detected on the DI circuit. The value of this attribute persists between packets for MAU types AUI, 10BASE5, 10BASE2, and 10BASE-FP. NOTE: IEEE 802.3 modified the following descriptive text at their meeting the week of 3/9/92. New text will be provided at the San Diego IETF plenary. At power-up or following a reset, the value of this attribute will be unknown for AUI, coax, and 10BASE-FP MAUs. For these MAUs loopback will be tested on each transmission during which no collision is detected. If DI receives input within startUpDelay of the start of output on DO, loopback will be detected. The value of -- no loopback -- remote faul -- link or lig

-- undefined -- initializin

startUpDelay shall be between 15 and 25 BT (bit times). Transition form input to output_idle on DI while output is present on DO may also be detected on loopback. The value of this attribute will only change during non-collided transmissions for AUI, coax, and 10BASE-FP MAUs." ::= { rpMauEntry 6 } rpMauLostMedias OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "A count of the number of times that rpMauMediaAvailable for this MAU instance leaves the state available(3). Implementation of this object is mandatory for MAU instances with rpMauType of AUI(7). It is recommended for all MAU types." ::= { rpMauEntry 7 } rpMauJabberState OBJECT-TYPE SYNTAX INTEGER { other(1), unknown(2),

-- undefined -- initializing, -- true state not

yet known noJabber(3), -- state is normal jabbering(4) -- MAU is jabberin g } ACCESS read-only STATUS mandatory DESCRIPTION "If the MAU is in jabber state the attribute is set to the jabbering(4) value. This object returns the value other(1) for MAU type AUI." ::= { rpMauEntry 8 } rpMauJabbers OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "A count of the number of times that rpMauJabberState for this MAU instance enters the state jabbering(4)." ::= { rpMauEntry 9 }

-------------------------------------------------------------------------------------------Trap definition --------------------------------------------------------------------------------------------

--rpMauJabberTrap TRAP-TYPE -ENTERPRISE a3Com -VARIABLES { -rptrOperStatus -} -DESCRIPTION -"This trap is sent whenever a managed MAU enters -the jabber state. --The agent must throttle the generation of -consecutive rpMauJabberTraps so that there is at -least a five-second gap between them." -::= 24 -- ------------------------------------------ Fault Table --- ---------------------------------------faultModifiedFlag OBJECT-TYPE SYNTAX INTEGER { clean-read modified } read-write mandatory (1), (2)

ACCESS STATUS DESCRIPTION "In order to ensure a clean read of the Fault ta ble this flag should be set to clean_read when commencing to r ead the table and should be examined after reading the entire table. If s till set to clean_read then the table read is okay, if not the table sh ould be re-read as it has been modified during the read process." ::= { fault 1 } faultTable OBJECT-TYPE SYNTAX SEQUENCE OF FaultEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The Fault Table." ::= { fault 2 } OBJECT-TYPE SYNTAX FaultEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Information relating to a single fault." INDEX { faultIndex } ::= { faultTable 1 }

faultEntry

FaultEntry ::= SEQUENCE { FaultIndex INTEGER, FaultErrorNumber INTEGER, FaultTimeStamp TimeTicks, FaultRestartCount INTEGER } faultIndex OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION "The index into INTEGER read-only mandatory the Fault table. The initial re

ad from the table should be read as the next, from an index of 0; subsequent reads should read the next from the i ndex returned by the previous read." ::= { faultEntry 1 } faultErrorNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This error number for this fault log entry." ::= { faultEntry 2 } TimeTicks read-only mandatory startup, in milliseconds, when t

faultTimeStamp OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION "The time since he fault occurred." ::= { faultEntry 3 } faultRestartCount OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION "The number of ::= { faultEntry 4 }

INTEGER read-only mandatory restarts at time of fault."

-- --------------------------------------------------------------------- *************************** SETUP GROUP **************************** -- --------------------------------------------------------------------- Implementation of the Setup group is mandatory for all -- Isolan systems. -- ----------------------------------------- SETUP GENERAL GROUP -- ---------------------------------------setupGeneral OBJECT IDENTIFIER ::= { setup 1 }

-- ----------------------------------------- DEVICE HEARTBEAT -- ---------------------------------------heartbeatInterval OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The time, in seconds, between successive heartbeat events sent to the management station. An interval of 0 indicates that no heartbeat events are to be generated." ::= { setupGeneral 1 } heartbeatEvent TRAP-TYPE ENTERPRISE a3Com -VARIABLES { } DESCRIPTION "Generated at a regular interval to inform the manager this device is still operating and can be reached on the network." ::= 13 -- ----------------------------------------- Setup IP non-volatile configuration -- ---------------------------------------setupIp OBJECT IDENTIFIER ::= { setup 2 }

setIpIfTable OBJECT-TYPE SYNTAX SEQUENCE OF SetIpIfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table shows the IP address and network mask to be used to initialise ipAddrTable on each network interface after the next system restart. There is one entry per network interface and the index is equivalent to the index for the ifTable in the MIB-II interfaces group." ::= { setupIp 1 } setIpIfEntry OBJECT-TYPE SYNTAX SetIpIfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The default information relating to a single IP interface." INDEX { setIpIfIndex } ::= { setIpIfTable 1 } SetIpIfEntry ::= SEQUENCE { setIpIfIndex INTEGER, setIpIfAddr IpAddress, setIpIfMask IpAddress } setIpIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION

"The index value which uniquely identifies the interface to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value of ifIndex (for ifTable)." ::= { setIpIfEntry 1 } setIpIfAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The IP address to be used for this interface." ::= { setIpIfEntry 2 } setIpIfMask OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The IP network mask to be used for this interface." ::= { setIpIfEntry 3 } setIpIfRouter OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "This is the IP address of the default router to be used for sending IP datagrams to remote destinations which have no suitable entry in the routing table. This corresponds to an entry in the MIB-II ipRouteTable with an ipRouteDest field of '0.0.0.0' (the default router) which is set up from this value after a system restart. Changes to this value do not affect the IP routing table until after the next system restart. (To change the default router without a restart, the IP routing table should be changed directly, with an equivalent change to setIpIfRouter only if the change is required to be made permanently.)" ::= { setupIp 2 } -- ----------------------------------------- Device Start-up Data -- ---------------------------------------setupStart OBJECT IDENTIFIER ::= { setup 3 }

startPROMSwVerNo OBJECT-TYPE SYNTAX DisplayString (SIZE (1..16)) ACCESS read-only STATUS mandatory DESCRIPTION "The PROM software version number." ::= { setupStart 1 } startRestartCount OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory

DESCRIPTION "The number of restarts the box has undergone, either power on or reset switch or watchdog expiries." ::= { setupStart 2 } startLastRestartType OBJECT-TYPE SYNTAX INTEGER { other (1), command (2), watchdog (3), power-reset (4), system-error (5) } ACCESS read-only STATUS mandatory DESCRIPTION "The reason for the last system restart. This may be due to management command; watchdog timeout expiry; power interruption; the reset switch was pressed or system error. It is not possible to differentiate between the latter two causes." ::= { setupStart 3 } startResetAction OBJECT-TYPE SYNTAX INTEGER { nochange (1), manDefaultReset (2) } ACCESS read-write STATUS mandatory DESCRIPTION "Reset the device with manufacturers default configuration if the manDefaultReset value is written to this item." ::= { setupStart 4 } startLastSystemError OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The last System Error experienced by the system. This is set equal to the last system error code recorded in non-volatile memory on startup. When the system issues a TRAP indicating the last system error number, the value in non-volatile memory is set to zero. Hence after the next restart this attribute will also have the value zero." ::= { setupStart 5 } startRestartAction OBJECT-TYPE SYNTAX INTEGER { nochange (1), restart (2) } ACCESS read-write STATUS mandatory DESCRIPTION "Restart the device with it's current configuration if the resta rt value is written to this item."

::= { setupStart 6 } -- ----------------------------------------- Accelerator Object -- ---------------------------------------systemConfigChangeTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "This object contains the value of 'sysUpTime' for this agent at which the last configuration state change took place. For the purpose of this object the definition of a system configuration state change includes: 1) ANY change to the agent, or the device which the agent provides a management view affected through management (SNMP, telnet etc); 2) ANY internal change resulting in the attempt to generate a trap; 3) certain other device specific conditions which are significant but that which in themselves do not cause the generation of a trap." ::= { setup 4 } -- --------------------------------------------------------------------- *********************** SYSTEM LOADER GROUP ************************ -- -------------------------------------------------------------------loadableDeviceTable OBJECT-TYPE SYNTAX SEQUENCE OF LoadableDeviceEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table which is used to control the loading of new software images to the devices controlled by the management agent. By convention the first entry in the table (device type = system(1), instance = 1) controls the loading of the device containing the management agent itself. Agents which have no subsidiary devices will have only this one entry in the table. If the Agent does control subsidiary devices, the other entries control the loading of software into subsidiary devices. " ::= { sysLoader 1 } loadableDeviceEntry OBJECT-TYPE SYNTAX LoadableDeviceEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing the objects for controlling the loading of a software image to a device controlled by the agent." INDEX { slDeviceType, slDeviceInstance } ::= { loadableDeviceTable 1 } LoadableDeviceEntry ::= SEQUENCE { slDeviceType INTEGER, slDeviceInstance INTEGER, slLoadStatus INTEGER, slSoftwareVersion DisplayString, slHardwareVersion

INTEGER, slFilename DisplayString, slServerIpAddress IpAddress, slLoad INTEGER, slServerAddress DisplayString, slServerProtocol INTEGER } slDeviceType SYNTAX OBJECT-TYPE INTEGER { system(1), component(2) } read-only mandatory

ACCESS STATUS DESCRIPTION "The type of the device to load. Simple agents only contain one device type, which is always `system'. More complex agents, probably containing multiple processors, may contain subsidiary devices denoted (for the purposes of the system loader) as `component'. In general, a `system' device is one which monitors and/or manages the operation of `component' devices." ::= { loadableDeviceEntry 1 } slDeviceInstance OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The instance of the device type specified by slDeviceType. By convention instance 1 of the system devices is the one containing the management agent, and always exists. Many systems will contain only the one instance of the system device type." ::= { loadableDeviceEntry 2 } slLoadStatus SYNTAX OBJECT-TYPE INTEGER { fileNotFound(1), accessViolation(2), illegalOperation(4), unknownTransferID(5), noSuchUser(7), noResponse(8), noResource(9), recLenMismatch(10), invalidRecType(11), checksumError(12), wrongDevice(13), wrongHardwareVersion(14), noFileHeader(15), byteCountError(16), invalidProgAddress(17), eraseFailed(18),

progFailed(19), loadPending(20), loadActive(21), success(22), paused(23), modInvalidAdress(200), modChecksumError(201), modTimeout(202), modBusy(203), modRemoved(204), modNoResource(205), modFailure(255) ACCESS STATUS DESCRIPTION } read-only mandatory "The status of the last system load operation requested for this device. If the value of this object is in the range 1 to 19 inclusive, or 200 or more, the download failed, and the value is an error code indicating the reason why. Codes 1 to 7 are a direct mapping from the TFTP error codes defined in RFC-783. The possible status values and their meanings are as follows:fileNotFound(1) the server cannot find the requested file; accessViolation(2) the file system security mechanism does not permit TFTP to access the requested file; illegalOperation(4) TFTP protocol error; unknownTransferID(5) TFTP protocol error; noSuchUser(7) user number not recognised; noResponse(8) load server failed to respond; noResource(9) the download could not be started because of a lack of resources; recLenMismatch(10) the record length differs from that implied by the value of the record length field; invalidRecType(11) the record type is not recognised; checksumError(12) record checksum error; wrongDevice(13) the device type in the file is incorrect; wrongHardwareVersion(14) the software image is not suitable for this version of the hardware; noFileHeader(15) the first record in the file was not a file header; byteCountError(16) the byte count reported in the file trailer record differed from the number of bytes actually received; invalidProgAddress(17) the load file contained a load address which

was outside the valid range of memory; eraseFailed(18) unable to erase the program memory; progFailed(19) hardware error programming the memory. The meanings of the remaining values are as follows:loadPending(20) a load has been requested but has not yet begun; loadActive(21) the device is currently being downloaded; success(22) the device has been downloaded successfully; paused(23) the device could not complete the download at this time, it will request that the load be restarted when it is ready. The following status values may result from downloading a subsidiary module:modInvalidAdress(200) the load file contained a load address which was outside the valid range of memory; modChecksumError(201) the load data was corrupted as it was transferred from the management agent to the subsidiary module; modTimeout(202) the management agent timed out while waiting for a response from the subsidiary module; modBusy(203) the subsidiary module was unable to accept a command from the management agent; modRemoved(204) the subsidiary module was removed during the download; modNoResource(205) the download could not continue because of a lack of resources; modFailure(255) the subsidiary module failed during the download." DEFVAL { success } ::= { loadableDeviceEntry 3 } slSoftwareVersion OBJECT-TYPE SYNTAX DisplayString(SIZE(0..32)) ACCESS read-only STATUS mandatory DESCRIPTION "The version identifier of the software running in the device." ::= { loadableDeviceEntry 4 } slHardwareVersion OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The version number identifying the revision level of the hardware of the device" ::= { loadableDeviceEntry 5 }

slFilename OBJECT-TYPE SYNTAX DisplayString(SIZE(1..128)) ACCESS read-write STATUS mandatory DESCRIPTION "The name of the file which contains the software image to load, or which was the last loaded to the device." ::= { loadableDeviceEntry 6 } slServerIpAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS deprecated DESCRIPTION "The IP address of the host containing the software image to load, or from which the last image loaded was read. This object has been deprecated in favour of writing the IP addr ess into slServerAddress." DEFVAL { 0 } ::= { loadableDeviceEntry 7 } slLoad SYNTAX OBJECT-TYPE INTEGER { noAction(1), startDownload(2) } write-only mandatory

ACCESS STATUS DESCRIPTION "Writing 2 to this object causes the agent to attempt to load a new software image to the corresponding device. The file to load and the address of the server to load it from are specified in the other objects in the same row of the table." ::= { loadableDeviceEntry 8 } slServerAddress OBJECT-TYPE SYNTAX DisplayString (SIZE(0..50)) ACCESS read-write STATUS mandatory DESCRIPTION "The address of the server containing the software image to load, or from which the last image was loaded. This is either an IP address in standard dotted notation, or an IPX address in the format aabbccdd:112233445566. An error is returned if the agent does not support the download protocol implied by the address format." ::= { loadableDeviceEntry 9 } slServerProtocol OBJECT-TYPE SYNTAX INTEGER { unknown(1), tftp-ip(2), tftp-ipx(3) } ACCESS read-only STATUS mandatory DESCRIPTION "This is the protocol to use when downloading the software from the server specified in slServerAddress.

At present, this value is determined by the value of slServerAdd ress which is currently un-ambiguous and so this object is read-only. " DEFVAL { unknown } ::= { loadableDeviceEntry 10 } -- ----------------------------------------System Loader Trap -- ---------------------------------------slFailed TRAP-TYPE ENTERPRISE a3Com VARIABLES { slLoadStatus } DESCRIPTION "When a system load is requested, a response is returned immediately and the load proceeds in the background. If an error is detected this trap is generated indicating the reason why in the status, as follows:(1) file not found; (2) access violation; (4) illegal TFTP operation; (5) unknown transfer ID; (7) no such user; (8) no response from the load server; (9) the download could not be started because of a lack of resources; (10) the length of a record differs from that implied by the value of the record length field; (11) the record type is not recognised; (12) record checksum error; (13) the device type in the file is incorrect; (14) the software image is not suitable for this version of the hardware; (15) the first record in the file was not a file header; (16) The byte count reported in the file trailer record differed from the number of bytes actually received; (200) the load file contained a load address which was outside the valid range of memory; (201) the load data was corrupted as it was transferred from the management agent to the subsidiary module; (202) the management agent timed out while waiting for a response from the subsidiary module; (203) the subsidiary module was unable to accept a command from the management agent; (204) the subsidiary module was removed during the download; (205) the download could not continue because of a lack of resources; (255) the subsidiary module failed during the download. When loading a new image into the device containing the agent itself, the agent first reads the beginning of the image file to test if it is accessible and contains a valid image. If there is anything wrong, this trap is generated, no download is performed and the device continues to run

uninterrupted. If this check is successful the download proper is begun. Should that fail, it is simply retried continuously until either an attempt succeeds or the device is reset." ::= 18 -- --------------------------------------------------------------------- ************************ SECURITY GROUP **************************** -- --------------------------------------------------------------------- Implementation of the Security group is mandatory for all -- Isolan systems. -- ----------------------------------------- SECURITY ENABLE TABLE -- ---------------------------------------securityEnableTable OBJECT-TYPE SYNTAX SEQUENCE OF SecurityEnableTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of permissions for access to the managed device from each of its interfaces, at each security access level. The table is fixed at 5 rows, indexed by the access level." ::= { security 1 } securityEnableTableEntry OBJECT-TYPE SYNTAX SecurityEnableTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table allows individual interfaces to be enabled or disabled separately for each security level." INDEX { securityLevel } ::= { securityEnableTable 1 } SecurityEnableTableEntry ::= SEQUENCE { securityLevel INTEGER, securityCommunityEnable INTEGER, securitySecureEnable INTEGER, securityTermEnable INTEGER, securityTelnetEnable INTEGER, securityFrontPanelEnable INTEGER } securityLevel OBJECT-TYPE SYNTAX INTEGER { monitor(1), secureMonitor(2), manager(3), specialist(4), security(5) } ACCESS read-only STATUS mandatory DESCRIPTION "Index to the security enable table." ::= { securityEnableTableEntry 1 }

securityCommunityEnable OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), permanentlyEnabled(3), permanentlyDisabled(4) } ACCESS read-write STATUS mandatory DESCRIPTION "Community SNMP access permission" ::= { securityEnableTableEntry 2 } securitySecureEnable OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), permanentlyEnabled(3), permanentlyDisabled(4) } ACCESS read-write STATUS mandatory DESCRIPTION "Secure SNMP access permission" ::= { securityEnableTableEntry 3 } securityTermEnable OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), permanentlyEnabled(3), permanentlyDisabled(4) } ACCESS read-write STATUS mandatory DESCRIPTION "Local Terminal access permission" ::= { securityEnableTableEntry 4 } securityTelnetEnable OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), permanentlyEnabled(3), permanentlyDisabled(4) } ACCESS read-write STATUS mandatory DESCRIPTION "Telnet access permission" ::= { securityEnableTableEntry 5 } securityFrontPanelEnable OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), permanentlyEnabled(3), permanentlyDisabled(4) } ACCESS read-write STATUS mandatory DESCRIPTION "Front Panel access permission" ::= { securityEnableTableEntry 6 }

-- ----------------------------------------- The Local device USER TABLE -- ---------------------------------------securityUserTable OBJECT-TYPE SYNTAX SEQUENCE OF SecurityUserTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table used to define Users. Users can be created/modified or deleted, with the exception of the default Users which cannot be deleted." ::= { security 2 } securityUserTableEntry OBJECT-TYPE SYNTAX SecurityUserTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "1. Creating a new user is done by using the username as a qualifier and SETting any of the items in the row defaults will be used for the remaining values. 2. Deleting a user is by writing 'invalid' to the status column. 3. There must always be users called 'monitor', 'manager' and 'security' - these cannot be deleted." INDEX { securityUserName } ::= { securityUserTable 1 } SecurityUserTableEntry ::= SEQUENCE { securityUserStatus INTEGER, securityUserName DisplayString, securityUserLevel INTEGER, securityUserPassword DisplayString, securityUserCommunity DisplayString, securityUserLocParty OBJECT IDENTIFIER, securityUserMgrParty OBJECT IDENTIFIER } securityUserStatus OBJECT-TYPE SYNTAX INTEGER { valid(1), invalid(2) } ACCESS read-write STATUS mandatory DESCRIPTION "User Status. `invalid' is used to indicate this user is no longer allowed to access this device, and the table entry may subsequently be re-used. Note that the Status of default Users cannot be set to invalid." ::= { securityUserTableEntry 1 } securityUserName OBJECT-TYPE SYNTAX DisplayString (SIZE (1..10)) ACCESS read-only STATUS mandatory DESCRIPTION "An ASCII string for the User Name. Empty strings are not allowed. The index column for the User Table."

::= { securityUserTableEntry 2 } securityUserLevel OBJECT-TYPE SYNTAX INTEGER { monitor(1), secureMonitor(2), manager(3), specialist(4), security(5) } ACCESS read-write STATUS mandatory DESCRIPTION "User Access Level defining the scope of management allowed for this user. Note that the access level of default Users cannot be changed." ::= { securityUserTableEntry 3 } securityUserPassword OBJECT-TYPE SYNTAX DisplayString (SIZE (0..10)) ACCESS write-only STATUS mandatory DESCRIPTION "The password required for user confirmation, when access is made via the local serial port, the front panel, or via Telnet." ::= { securityUserTableEntry 4 } securityUserCommunity OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) ACCESS read-write STATUS mandatory DESCRIPTION "The community string identifying this user, when access is made via the original community-based SNMP (RFC1157)." ::= { securityUserTableEntry 5 } securityUserLocParty OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-write STATUS mandatory DESCRIPTION "The local party identity of this user, when access is made via secure SNMP." ::= { securityUserTableEntry 6 } securityUserMgrParty OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-write STATUS mandatory DESCRIPTION "The manager party identity for this user, when access is made via secure SNMP." ::= { securityUserTableEntry 7 } --

-- ----------------------------------------AUDIT LOG -- ---------------------------------------securityAuditLogTable OBJECT-TYPE SYNTAX SEQUENCE OF SecurityAuditLogEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The audit log is a circular table recording all updates to the managed database on the device. The log must be read regularly by a management device, to maintain a more permanent record of the management history." ::= { security 3 } securityAuditLogEntry OBJECT-TYPE SYNTAX SecurityAuditLogEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Each entry contains the time an update was made, by whom, the item referenced, the new value and the result of this request." INDEX { securityAuditIndex } ::= { securityAuditLogTable 1 } SecurityAuditLogEntry ::= SEQUENCE { securityAuditIndex INTEGER, securityAuditTime TimeTicks, securityAuditUser DisplayString, securityAuditObject OBJECT IDENTIFIER, securityAuditValue OCTET STRING, securityAuditResult INTEGER } securityAuditIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "Audit Log Index. A monotonically increasing value to uniquely identify an entry in the audit log. This value wraps around (to 1) after reaching the maximum value (65535)." ::= { securityAuditLogEntry 1 } securityAuditTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The time, in hundredths of a second since the last system restart, of the update request." ::= { securityAuditLogEntry 2 } securityAuditUser OBJECT-TYPE SYNTAX DisplayString (SIZE (0..10)) ACCESS read-only STATUS mandatory DESCRIPTION "The name of the user making the request."

::= { securityAuditLogEntry 3 } securityAuditObject OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "The object identifier of the item being updated. This includes any qualifier for the item." ::= { securityAuditLogEntry 4 } securityAuditValue OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..200)) ACCESS read-only STATUS mandatory DESCRIPTION "The new value for the item." ::= { securityAuditLogEntry 5 } securityAuditResult OBJECT-TYPE SYNTAX INTEGER { success(255), pending(1), too-big(2), failed(3), locked(4), security-violation(5), no-such-function(6), no-such-item(7)

----------

update succeeded update not yet completed value rejected as too big for item value rejected by access function item is locked by another manager user does not have correct access level item is read-only item does not exist

} ACCESS read-only STATUS mandatory DESCRIPTION "The result of the update request may indicate that it was applied successfully, that it failed (for one of a number of reasons) or that it is still in progress." ::= { securityAuditLogEntry 6 } -- --------------------------------------------------------------------END OF SECURITY GROUP -- --------------------------------------------------------------------- --------------------------------------------------------------------- ************************ GAUGES GROUP **************************** -- --------------------------------------------------------------------- Implementation of the Gauges group is optional for all -- Isolan systems. -- ----------------------------------------- GAUGE TABLE -- ---------------------------------------gaugeTable OBJECT-TYPE SYNTAX SEQUENCE OF GaugeTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table used to define Alarms." ::= { gauges 1 }

gaugeTableEntry OBJECT-TYPE SYNTAX GaugeTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table allows Alarms to be set-up on items in the MIB." INDEX { gaugeIndex } ::= { gaugeTable 1 } GaugeTableEntry ::= SEQUENCE { gaugeIndex gaugeItemId gaugeItemType gaugeSamplesPerAverage gaugeSamplePeriod gaugeValue gaugePeakValue gaugeThresholdLevel gaugeRecoveryLevel gaugeThresholdAction gaugeRecoveryAction gaugeState gaugeOwner } INTEGER, OBJECT IDENTIFIER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, DisplayString

gaugeIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Unique identifier for a row in the Alarm Table. Allocated by the Alarms Subsystem. An integer in the range 1..gaugeTableSize." ::= { gaugeTableEntry 1 } gaugeItemId OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-write STATUS mandatory DESCRIPTION "The object Id and qualifier of the item to be monitored by this alarm. " ::= { gaugeTableEntry 2 } gaugeItemType OBJECT-TYPE SYNTAX INTEGER { counter (1), signedMeter (2), unsignedMeter (3) } ACCESS read-write STATUS mandatory DESCRIPTION "A 'counter', by definition will always be a positive number. 'Meters' can be signed or unsigned." ::= { gaugeTableEntry 3 } gaugeSamplesPerAverage OBJECT-TYPE SYNTAX INTEGER { nonAveraging (1),

twoSamples (2), threeSamples (3), maxSamples (4) } ACCESS read-write STATUS mandatory DESCRIPTION "The number of samples used to calculate the Alarm Value. The default number of samples is four. If a SamplesPerAverage value of one is used, no average is calculated and the GaugeValue will be the most recent sample." ::= { gaugeTableEntry 4 } gaugeSamplePeriod OBJECT-TYPE SYNTAX INTEGER (1..4294967295) ACCESS read-write STATUS mandatory DESCRIPTION "Number of seconds between samples. The total averaging period is given by (gaugeSamplesPerAverage * gaugeSamplePeiod) secs." ::= { gaugeTableEntry 5 } gaugeValue OBJECT-TYPE SYNTAX INTEGER (0..4294967295) ACCESS read-write STATUS mandatory DESCRIPTION "The most recently computed average of the item being monitored. For a `meter' alarm, this is the simple average of the samples. For a 'counter' alarm, this is the average of the differences between successive samples. Counters and unsignedMeters are unsigned 32-bit values and have a maximum value of 4294967295. signedMeters are signed 32-bit values and have a maximum value of +-2147483647 divided by the value of gaugeSamplesPerAverage ." ::= { gaugeTableEntry 6 } gaugePeakValue OBJECT-TYPE SYNTAX INTEGER (0..4294967295) ACCESS read-write STATUS mandatory DESCRIPTION "The highest recorded Alarm Value. This will be either a signed or unsigned 32 bit value depending on the gaugeItemType" ::= { gaugeTableEntry 7 } gaugeThresholdLevel OBJECT-TYPE SYNTAX INTEGER (0..4294967295) ACCESS read-write STATUS mandatory DESCRIPTION "The threshold value of the the Alarm which causes the ThresholdState to move from the 'ready' state to the 'fired' state and also causes the the ThresholdAction to be taken. It will be either a signed or unsigned 32-bit integer depending on the gaugeItemType." ::= { gaugeTableEntry 8 } gaugeRecoveryLevel OBJECT-TYPE SYNTAX INTEGER ACCESS read-write

STATUS mandatory DESCRIPTION "The threshold value of the the Alarm which causes the ThresholdState to move from the `fired' state to the `ready' state and also causes the the RecoveryAction to be taken. This value will be either a signed or unsigned 32-bit integer depending on the gaugeItemType." ::= { gaugeTableEntry 9 } gaugeThresholdAction OBJECT-TYPE SYNTAX INTEGER { noAction (1), sendTrap (2), -- Send a Trigger event to manager disable (3), -- e.g. turn off port enable (4), -- e.g. turn on port notifyAndBlipPortOff (5), notifyAndBlipCardOff (6), notifyAndDisablePort (8), notifyAndDisableCard (9), blipPortOff (12), blipCardOff (13), disablePort (14), disableCard (15), notifyAndResilientSwitch (18), notifyBandwidthExceeded (19), notifyErrorsExceeded (20), notifyPollFailed (22), notifyFilterBridgePort (23) } ACCESS read-write STATUS mandatory DESCRIPTION "This object identifies the action to be taken when an Alarm crosses the Threshold Level. The default action will be to send a trigger event (sendTrap). The other actions are device specific and may not be available on all devices. See the RMON Event Table for the actions supported by this device." ::= { gaugeTableEntry 10 } gaugeRecoveryAction OBJECT-TYPE SYNTAX INTEGER { noAction (1), sendTrap (2), -- Send a Trigger event to manager disable (3), -- e.g. turn off port enable (4), -- e.g. turn on port notifyAndEnablePort (10), notifyAndEnableCard (11), enablePort (16), enableCard (17), notifyPollSuccess (21), notifyUnfilterBridgePort (24) } ACCESS read-write STATUS mandatory DESCRIPTION "This object identifies the action to be taken when a 'fired' Alarm crosses the Recovery Level. The default action will be to send a recovery event (sendTrap). The actions for 'disable' and 'enable' are device specific." ::= { gaugeTableEntry 11 }

gaugeState OBJECT-TYPE SYNTAX INTEGER { onTriggersEnabled (1), onTriggersDisabled (2), off (3), deleted (4), autoCalibrate(5) } ACCESS read-write STATUS mandatory DESCRIPTION " onTriggersEnabled - This is the normal active state of a alarm. The gaugeValue is updated on every sample and if it crosses the Threshold or Recovery Levels, the corresponding Action will be taken. onTriggersDisabled - This is used when a new device, or alarm is set up and the Threshold and Recovery Levels have not been calibrated. The Alarm runs as normal and the gaugeValue and peakValue are updated. However, if the gaugeValue crosses the Threshold or Recovery Levels, no action is taken. off - This de-activates the alarm, allowing it to be configured safely . Before updating any of the Alarm fields the alarm SHOULD be turned off. Turning the alarm 'off' and then 'on' will not lose any of the sampling data, gaugeValue, peakValue, or thresholdStatus. Updates to the index fields will fail since they are read-only. deleted - An alarm is invalidated by setting it to 'deleted'. A 'deleted' alarm will not be returned by a 'GetNext' request. autoCalibrate - Updates the Threshold and Recovery values according to the current peak value. The gaugeState will then be set to 'onTriggersEnabled'. This can be done when the gaugeState is in states (1), (2), or (3). After this operation: thresholdLevel = peakValue * %gaugeThresholdLevelScaler recoveryLevel = peakValue * %gaugeRecoveryLevelScaler gaugeState = onTriggersEnabled When the gaugeState is set to either of the 'on' states, all the fields for the Alarm are validated. If any of the fields are invalid, the operation will fail. The sampling data, gaugeValue, peakValue and thresholdState can be reset by writing 'onTriggersEnabled', 'onTriggersDisabled' , or 'autoCalibrate' to the gaugeState when it is already in either of the 'on' states." ::= { gaugeTableEntry 12 } gaugeOwner OBJECT-TYPE SYNTAX DisplayString ACCESS read-write STATUS mandatory DESCRIPTION "The entity that configured this entry and is

therefore using the resources assigned to it." ::= { gaugeTableEntry 13 } gaugeTableSize OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "Number of entries in Alarm Table. The size of the Alarm Table depends on the requirements and available resources of the device. The actual maximum will probably be around 1000." ::= { gauges 2 } gaugeThresholdLevelScaler OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The ThresholdLevel is set to this percentage of the peakValue when the Alarm is auto-calibrated. e.g gaugeThresholdLevelScaler = 120 gaugePeakValue = 360 After writing 'calibrateTriggers' to the gaugeState: ThresholdLevel = 120/100 * 360 = 432" ::= { gauges 3 } gaugeRecoveryLevelScaler OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The RecoveryLevel is set to this percentage of the peakValue when the Alarm is auto-calibrated. e.g gaugeRecoveryLevelScaler = 90 gaugePeakValue = 360 After writing 'calibrateTriggers' to the gaugeState: RecoveryLevel = 90/100 * 360 = 324" ::= { gauges 4 } gaugeTableUpdate OBJECT-TYPE SYNTAX INTEGER { deleteAll (1) -- Set all Alarms to 'deleted' } ACCESS write-only STATUS mandatory DESCRIPTION "Performs the specified operation on every Alarm in the table." ::= { gauges 5 } gaugeConfigureObjId OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS write-only

STATUS mandatory DESCRIPTION "Object Id and qualifier of alarm(s) to be updated." ::= { gauges 6 } gaugeConfigureColumn OBJECT-TYPE SYNTAX INTEGER { itemType(1), samplesPerAverage(2), samplePeriod(3), thresholdLevel(4), recoveryLevel(5), thresholdAction(6), recoveryAction(7), gaugeState(8) } ACCESS write-only STATUS mandatory DESCRIPTION "Alarm Table Column to be updated." ::= { gauges 7 } gaugeConfigureValue OBJECT-TYPE SYNTAX INTEGER (1..4294967295) ACCESS write-only STATUS mandatory DESCRIPTION "Value to be written to the 'gaugeConfigureColumn' of the Alarms which match the 'gaugeConfigureObjId'. Writing to this value initiates the operation." ::= { gauges 8 } gaugeNextFreeIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Indicates the gaugeIndex which must be used to create the next alarm. Index is set to GAUGE_TABLE_FULL (zero) if there are no free rows in the table." ::= { gauges 9 } -- 3Com Alarm Traps -These are no longer used. The RMON traps are used in preference. -These definitions are provided only for backward compatibility gaugesThresholdTrap ENTERPRISE VARIABLES TRAP-TYPE a3Com { gaugeItemId, gaugeThresholdLevel, gaugeSamplePeriod, gaugeSamplesPerAverage } " Generated when the Alarm value for this Alarm crosses the Threshold Level." TRAP-TYPE

DESCRIPTION ::= 16 gaugesRecoveryTrap

ENTERPRISE VARIABLES

a3Com { gaugeItemId, gaugeRecoveryLevel, gaugeSamplePeriod, gaugeSamplesPerAverage

DESCRIPTION ::= 17

} " Generated when the Alarm value for this Alarm crosses the Recovery Level."

-- --------------------------------------------------------------------- ************************ RMON ALARM TABLE ************************** -- --------------------------------------------------------------------- Remote Network Monitoring MIB rmon OBJECT IDENTIFIER ::= { mib-2 16 } OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT OBJECT IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER ::= ::= ::= ::= ::= ::= ::= ::= ::= { { { { { { { { { rmon rmon rmon rmon rmon rmon rmon rmon rmon 1 2 3 4 5 6 7 8 9 } } } } } } } } }

statistics history alarm hosts hostTopN matrix filter capture event

alarmTable OBJECT-TYPE SYNTAX SEQUENCE OF AlarmEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of alarm entries." ::= { alarm 1 } alarmEntry OBJECT-TYPE SYNTAX AlarmEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of parameters that set up a periodic checking for alarm conditions." INDEX { alarmIndex } ::= { alarmTable 1 } AlarmEntry ::= SEQUENCE { alarmIndex alarmInterval alarmVariable alarmSampleType alarmValue alarmStartupAlarm alarmRisingThreshold alarmFallingThreshold alarmRisingEventIndex alarmFallingEventIndex alarmOwner INTEGER (1..65535), INTEGER, OBJECT IDENTIFIER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER (0..65535), INTEGER (0..65535), DisplayString,

alarmStatus }

INTEGER

alarmIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies an entry in the alarm table. Each such entry defines a diagnostic sample at a particular interval for an object on the device." ::= { alarmEntry 1 } alarmInterval OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The interval in seconds over which the data is sampled and compared with the rising and falling thresholds. When setting this variable, care should be given to ensure that the variable being monitored will not exceed 2^31 - 1 and roll over the alarmValue object during the interval. This object may not be modified if the associated alarmStatus object is equal to valid(1)." ::= { alarmEntry 2 } alarmVariable OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-write STATUS mandatory DESCRIPTION "The object identifier of the particular variable to be sampled. Only variables that resolve to an ASN.1 primitive type of INTEGER (INTEGER, Counter, Gauge, or TimeTicks) may be sampled. Because SNMP access control is articulated entirely in terms of the contents of MIB views, no access control mechanism exists that can restrict the value of this object to identify only those objects that exist in a particular MIB view. Because there is thus no acceptable means of restricting the read access that could be obtained through the alarm mechanism, the probe must only grant write access to this object in those views that have read access to all objects on the probe. During a set operation, if the supplied variable name is not available in the selected MIB view, a badValue error must be returned. If at any time the variable name of an established alarmEntry is no longer available in the selected MIB view, the probe must change the status of this alarmEntry to invalid(4). This object may not be modified if the associated

alarmStatus object is equal to valid(1)." ::= { alarmEntry 3 } alarmSampleType OBJECT-TYPE SYNTAX INTEGER { absoluteValue(1), deltaValue(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The method of sampling the selected variable and calculating the value to be compared against the thresholds. If the value of this object is absoluteValue(1), the value of the selected variable will be compared directly with the thresholds at the end of the sampling interval. If the value of this object is deltaValue(2), the value of the selected variable at the last sample will be subtracted from the current value, and the difference compared with the thresholds. This object may not be modified if the associated alarmStatus object is equal to valid(1)." ::= { alarmEntry 4 } alarmValue OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The value of the statistic during the last sampling period. The value during the current sampling period is not made available until the period is completed." ::= { alarmEntry 5 } alarmStartupAlarm OBJECT-TYPE SYNTAX INTEGER { risingAlarm(1), fallingAlarm(2), risingOrFallingAlarm(3) } ACCESS read-write STATUS mandatory DESCRIPTION "The alarm that may be sent when this entry is first set to valid. If the first sample after this entry becomes valid is greater than or equal to the risingThreshold and alarmStartupAlarm is equal to risingAlarm(1) or risingOrFallingAlarm(3), then a single rising alarm will be generated. If the first sample after this entry becomes valid is less than or equal to the fallingThreshold and alarmStartupAlarm is equal to fallingAlarm(2) or risingOrFallingAlarm(3), then a single falling alarm will be generated. This object may not be modified if the associated alarmStatus object is equal to valid(1)." ::= { alarmEntry 6 }

alarmRisingThreshold OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "A threshold for the sampled statistic. When the current sampled value is greater than or equal to this threshold, and the value at the last sampling interval was less than this threshold, a single event will be generated. A single event will also be generated if the first sample after this entry becomes valid is greater than or equal to this threshold and the associated alarmStartupAlarm is equal to risingAlarm(1) or risingOrFallingAlarm(3). After a rising event is generated, another such event will not be generated until the sampled value falls below this threshold and reaches the alarmFallingThreshold. This object may not be modified if the associated alarmStatus object is equal to valid(1)." ::= { alarmEntry 7 } alarmFallingThreshold OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "A threshold for the sampled statistic. When the current sampled value is less than or equal to this threshold, and the value at the last sampling interval was greater than this threshold, a single event will be generated. A single event will also be generated if the first sample after this entry becomes valid is less than or equal to this threshold and the associated alarmStartupAlarm is equal to fallingAlarm(2) or risingOrFallingAlarm(3). After a falling event is generated, another such event will not be generated until the sampled value rises above this threshold and reaches the alarmRisingThreshold. This object may not be modified if the associated alarmStatus object is equal to valid(1)." ::= { alarmEntry 8 } alarmRisingEventIndex OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The index of the eventEntry that is used when a rising threshold is crossed. The eventEntry identified by a particular value of this index is the same as identified by the same value

of the eventIndex object. If there is no corresponding entry in the eventTable, then no association exists. In particular, if this value is zero, no associated event will be generated, as zero is not a valid event index. This object may not be modified if the associated alarmStatus object is equal to valid(1)." ::= { alarmEntry 9 } alarmFallingEventIndex OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The index of the eventEntry that is used when a falling threshold is crossed. The eventEntry identified by a particular value of this index is the same as identified by the same value of the eventIndex object. If there is no corresponding entry in the eventTable, then no association exists. In particular, if this value is zero, no associated event will be generated, as zero is not a valid event index. This object may not be modified if the associated alarmStatus object is equal to valid(1)." ::= { alarmEntry 10 } alarmOwner OBJECT-TYPE SYNTAX DisplayString ACCESS read-write STATUS mandatory DESCRIPTION "The entity that configured this entry and is therefore using the resources assigned to it." ::= { alarmEntry 11 } alarmStatus OBJECT-TYPE SYNTAX INTEGER { valid(1), createRequest(2), underCreation(3), invalid(4) } ACCESS read-write STATUS mandatory DESCRIPTION "The status of this alarm entry." ::= { alarmEntry 12 } -- --------------------------------------------------------------------- ************************ RMON EVENT TABLE ************************** -- --------------------------------------------------------------------- Remote Network Monitoring MIB eventTable OBJECT-TYPE SYNTAX SEQUENCE OF EventEntry

ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of events to be generated." ::= { event 1 } eventEntry OBJECT-TYPE SYNTAX EventEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A set of parameters that describe an event to be generated when certain conditions are met." INDEX { eventIndex } ::= { eventTable 1 } EventEntry ::= SEQUENCE eventIndex eventDescription eventType eventCommunity eventLastTimeSent eventOwner eventStatus } { INTEGER (1..65535), DisplayString (SIZE (0..127)), INTEGER, OCTET STRING (SIZE (0..127)), TimeTicks, DisplayString, INTEGER

eventIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies an entry in the event table. Each such entry defines one event that is to be generated when the appropriate conditions occur." ::= { eventEntry 1 } eventDescription OBJECT-TYPE SYNTAX DisplayString (SIZE (0..127)) ACCESS read-write STATUS mandatory DESCRIPTION "A comment describing this event entry." ::= { eventEntry 2 } eventType OBJECT-TYPE SYNTAX INTEGER { none(1), log(2), snmp-trap(3), -- send an SNMP trap log-and-trap(4) } ACCESS read-write STATUS mandatory DESCRIPTION "The type of notification that the probe will make about this event. In the case of log, an entry is made in the log table for each event. In the case of snmp-trap, an SNMP trap is sent to one or more management stations."

::= { eventEntry 3 } eventCommunity OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..127)) ACCESS read-write STATUS mandatory DESCRIPTION "If an SNMP trap is to be sent, it will be sent to the SNMP community specified by this octet string. In the future this table will be extended to include the party security mechanism. This object shall be set to a string of length zero if it is intended that that mechanism be used to specify the destination of the trap." ::= { eventEntry 4 } eventLastTimeSent OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime at the time this event entry last generated an event. If this entry has not generated any events, this value will be zero." ::= { eventEntry 5 } eventOwner OBJECT-TYPE SYNTAX DisplayString ACCESS read-write STATUS mandatory DESCRIPTION "The entity that configured this entry and is therefore using the resources assigned to it. If this object contains a string starting with 'monitor' and has associated entries in the log table, all connected management stations should retrieve those log entries, as they may have significance to all management stations connected to this device" ::= { eventEntry 6 } eventStatus OBJECT-TYPE SYNTAX INTEGER { valid(1), createRequest(2), underCreation(3), invalid(4) } ACCESS read-write STATUS mandatory DESCRIPTION "The status of this event entry. If this object is not equal to valid(1), all associated log entries shall be deleted by the agent." ::= { eventEntry 7 } logTable OBJECT-TYPE SYNTAX SEQUENCE OF LogEntry

ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of events that have been logged." ::= { event 2 } logEntry OBJECT-TYPE SYNTAX LogEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A set of data describing an event that has been logged." INDEX { logEventIndex, logIndex } ::= { logTable 1 } LogEntry ::= SEQUENCE { logEventIndex logIndex logTime logDescription } INTEGER (1..65535), INTEGER, TimeTicks, DisplayString (SIZE (0..255))

logEventIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The event entry that generated this log entry. The log identified by a particular value of this index is associated with the same eventEntry as identified by the same value of eventIndex." ::= { logEntry 1 } logIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies an entry in the log table amongst those generated by the same eventEntries. These indexes are assigned beginning with 1 and increase by one with each new log entry. The association between values of logIndex and logEntries is fixed for the lifetime of each logEntry. The agent may choose to delete the oldest instances of logEntry as required because of lack of memory. It is an implementation-specific matter as to when this deletion may occur." ::= { logEntry 2 } logTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime when this log entry was created."

::= { logEntry 3 } logDescription OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "An implementation dependent description of the event that activated this log entry." ::= { logEntry 4 } -- Remote Network Monitoring Traps risingAlarm TRAP-TYPE ENTERPRISE rmon VARIABLES { alarmIndex, alarmVariable, alarmSampleType, alarmValue, alarmRisingThreshold } DESCRIPTION "The SNMP trap that is generated when an alarm entry crosses its rising threshold and generates an event that is configured for sending SNMP traps." ::= 1 fallingAlarm TRAP-TYPE ENTERPRISE rmon VARIABLES { alarmIndex, alarmVariable, alarmSampleType, alarmValue, alarmFallingThreshold } DESCRIPTION "The SNMP trap that is generated when an alarm entry crosses its falling threshold and generates an event that is configured for sending SNMP traps." ::= 2 -- --------------------------------------------------------------------- **************************** ASCII AGENT GROUP ********************* -- --------------------------------------------------------------------- Implementation of the ASCII Agent group is mandatory for all -- systems. ascTimeAttemptedLogin OBJECT-TYPE SYNTAX TimeTicks ACCESS read-write STATUS mandatory DESCRIPTION "Time in hundredths of a second when the last Login was attempted. Note, that only the ASCII Agent can write to this parameter. A write operation from any other agent will result in an ERROR" ::= { asciiAgent 1 } ascUserNameForLastAttemptedLogin OBJECT-TYPE SYNTAX DisplayString (SIZE (0..10)) ACCESS read-write STATUS mandatory DESCRIPTION "An ASCII string used when attempted login. Empty string is NOT valid. Note, that only the ASCII Agent can write to this parameter. A write operation from any other

agent will result in an ERROR" ::= { asciiAgent 2 } ascLoginStatus OBJECT-TYPE SYNTAX INTEGER { loginOKFromTelnet (1), loginOKFromSerialPort (2), deniedAccessFromTelnet (3), deniedAccessFromSerialPort (4), unknownUserFromTelnet (5), unknownUserFromSerialPort (6), incorrectPasswordFromTelnet (7), incorrectPasswordFromSerialPort (8), securityViolationFromTelnet (9), securityViolationFromSerialPort (10), nologin (11) } ACCESS read-write STATUS mandatory DESCRIPTION "Status of last attempted login. The value 'loginOKFromTelnet' or 'loginOKFromSerialPort' is used to show that the user was allowed access via Telnet or Serial Port. 'DeniedAccessFromTelnet' indicates that a user was denied access via Telnet. The value 'unknownUserFromTelnet' is used to show that a user attempted to login with an invalid user name from a Telnet session and 'incorrectPasswordFromTelnet' is used to show that an invalid password was entered having supplied a valid user name. The value 'securityViolationFromTelnet' is used to indicate that a user has entered the password incorrectly three time consecutively from a Telnet session. Note that only the ASCII Agent can write to this parameter. A write operation from any other agent will result in an ERROR" ::= { asciiAgent 3 } ascLocalManagementBanner OBJECT-TYPE SYNTAX DisplayString (SIZE (0..490)) ACCESS read-write STATUS mandatory DESCRIPTION "An ASCII string describing the Banner to appear on the FIRST screen of the Local Management Terminal. The string of 490 characters defines a region in the centre of the screen which is 7 Rows by 70 Columns" ::= { asciiAgent 4 } -- --------------------------------------------------------------------- ASCII Agent Traps -- -------------------------------------------------------------------localManagementUpdate TRAP-TYPE ENTERPRISE a3Com DESCRIPTION "A local management update trap indicates that the configuration of the device has been modified via the ascii agent. This may be through Telnet or the V24 port." ::= 14 securityViolation TRAP-TYPE

ENTERPRISE a3Com VARIABLES {ascUserNameForLastAttemptedLogin,ascLoginStatus } DESCRIPTION "A security violation trap indicates that a user has attempted to login and failed to enter the correct pas sword Three times consecutively." ::= 15 -------------------------------------------------------------------------END OF ASCII AGENT GROUP --------------------------------------------------------------------------------------------------------------------------------------********************* SERIAL INTERFACE GROUP ******************** --------------------------------------------------------------------- the Serial Interface Module siSlipPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object identifies the serial port which SLIP can use to send/receive packets. If this object is set to 0xFFFF, then SLIP cannot send/receive packets." ::= { serialIf 1 } ---LinkBuilder FMS Config V.24 Table

configV24Table OBJECT-TYPE SYNTAX SEQUENCE OF ConfigV24Entry ACCESS not-accessible STATUS mandatory DESCRIPTION "Configuration parameters for all the V.24 ports in a system." ::= {serialIf 2} configV24Entry OBJECT-TYPE SYNTAX ConfigV24Entry ACCESS not-accessible STATUS mandatory DESCRIPTION "Configuration parameters for a V.24 port in the system." INDEX {configV24PortID} ::= {configV24Table 1} ConfigV24Entry ::= SEQUENCE { configV24PortID configV24ConnType configV24AutoConfig configV24Speed configV24CharSize configV24StopBits configV24Parity configV24DSRControl INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER,

configV24DCDControl configV24FlowControl configV24Update }

INTEGER, INTEGER, INTEGER

configV24PortID OBJECT-TYPE SYNTAX INTEGER (1..16) ACCESS read-only STATUS mandatory DESCRIPTION "This attribute uniquely identifies this V.24 port, it is the index for the V.24 table." ::= {configV24Entry 1} configV24ConnType OBJECT-TYPE SYNTAX INTEGER { local (1), remote (2) } ACCESS read-write STATUS mandatory DESCRIPTION "This determines if the V.24 port is to be connected locally to a terminal or terminal emulator in which case no interface signals need to be asserted unless requested by other management options below or if the V.24 port is to be connected to a modem when at least DSR is required to be asserted." ::= {configV24Entry 2} configV24AutoConfig OBJECT-TYPE SYNTAX INTEGER { disabled (1), enabled (2) } ACCESS read-write STATUS mandatory DESCRIPTION "This determines if the configuration parameters for the V.24 port, speed, parity, stop bits, character size, are to be determined automatically from an initial character sequence entered by the user or they will be defined by the management options below." ::= {configV24Entry 3} configV24Speed OBJECT-TYPE SYNTAX INTEGER { speed1200 (4), speed2400 (5), speed4800 (6), speed9600 (7), speed19200 (8), speed38400 (9) } ACCESS read-write STATUS mandatory DESCRIPTION "This determines the receive and transmit speed of the V.24 port unless the autoconfigure attribute is enabled when the data rates are determined from the line. Split rx and tx

speeds are not possible." ::= {configV24Entry 4} configV24CharSize OBJECT-TYPE SYNTAX INTEGER { size7 (3), size8 (4) } ACCESS read-write STATUS mandatory DESCRIPTION "This determines the character size, unless the autoconfigure attribute is enabled when character size is determined automatically from the line, it may be set to either 7 or 8 bits." ::= {configV24Entry 5} configV24StopBits OBJECT-TYPE SYNTAX INTEGER { stopOne (1), stopOneDotFive (2), stopTwo (3) } ACCESS read-write STATUS mandatory DESCRIPTION "This determines the number of stop bits." ::= {configV24Entry 6} configV24Parity OBJECT-TYPE SYNTAX INTEGER { noParity (1), spaceParity (2), markParity (3), oddParity (4), evenParity (5) } ACCESS read-write STATUS mandatory DESCRIPTION "This determines the parity option to be used, unless the autoconfigure attribute is enabled when parity is determined automatically from the line, it may be set to either no parity, space (parity bit always 0), mark (parity bit always 1), odd or even." ::= {configV24Entry 7} configV24DSRControl OBJECT-TYPE SYNTAX INTEGER { disabled (1), enabled (2) } ACCESS read-write STATUS mandatory DESCRIPTION "This attribute is only applicable to local connection types. It determines if DSR need be asserted for a local connection to be made and if the connection need be released if DSR is seen deasserted." ::= {configV24Entry 8}

configV24DCDControl OBJECT-TYPE SYNTAX INTEGER { disabled (1), enabled (2) } ACCESS read-write STATUS mandatory DESCRIPTION "This attribute is only applicable to local connection types. It determines if DCD need be asserted for a local connection to be made and if the connection should be release if DCD is seen deasserted." ::= {configV24Entry 9} configV24FlowControl OBJECT-TYPE SYNTAX INTEGER { noFlowControl (1), xonXoff (2), rtsCtsFullDplx (3), rtsCtsHalfDplx (4) } ACCESS read-write STATUS mandatory DESCRIPTION "This determines the flow control protocol to be used, either no flow control, xon-xoff, rts-cts full duplex or rts-cts. Full duplex rts/cts uses the rts and cts lines as two independent signals. The DTE signals to the DCE that it is prepared to accept more data by asserting RTS, the DCE signals to the DTE that is is prepared to accept more data by asserting CTS. Half duplex rts/cts (the conventional way) uses CTS as a response to RTS, the DCE flow controls the DTE by only returning CTS is response to a RTS from the DTE when the DCE can accept more data. The DTE can flow control the DCE by raising RTS when it does not want to receive any more input and dropping it when it is ready to receive more." ::= {configV24Entry 10} configV24Update OBJECT-TYPE SYNTAX INTEGER { nochange (1), update (2) } ACCESS read-write STATUS mandatory DESCRIPTION "This attribute may be written to to force the operational V.24 port parameters to be updated." ::= {configV24Entry 11} -- --------------------------------------------------------------------- ********************* REPEATER SECURITY GROUP ******************** -- -------------------------------------------------------------------mrmSecurityPackage OBJECT IDENTIFIER ::= { repeaterMgmt 6}

mrmSecurePortTable OBJECT-TYPE SYNTAX SEQUENCE OF MrmSecurePortEntry

ACCESS not-accessible STATUS mandatory DESCRIPTION "A table which allows management of the secure Repeater Ports." ::= { mrmSecurityPackage 1 } mrmSecurePortEntry OBJECT-TYPE SYNTAX MrmSecurePortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table allows repeater ports to be configured on a per port basis. It is index using the objects mrmSecRepIndex, mrmSecSlotIndex and mrmSecPortIndex." INDEX { mrmSecRepIndex, mrmSecSlotIndex, mrmSecPortIndex } ::= { mrmSecurePortTable 1 } MrmSecurePortEntry ::= SEQUENCE { mrmSecRepIndex INTEGER, mrmSecSlotIndex INTEGER, mrmSecPortIndex INTEGER, mrmSecPortState INTEGER, mrmSecNTKState INTEGER, mrmSecBroadcastState INTEGER, mrmSecMulticastState INTEGER, mrmSecLearnMode INTEGER, mrmSecReportMode INTEGER, mrmSecMACAddress OCTET STRING, mrmSecRowStatus INTEGER } mrmSecRepIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The secure port repeater index. This is the first of three indexes into the mrmSecurePortTable." ::= { mrmSecurePortEntry 1 } mrmSecSlotIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The secure port slot index. This is the second of three indexes into the mrmSecurePortTable." ::= { mrmSecurePortEntry 2 }

mrmSecPortIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The secure port port index. This is the third of three indexes into the mrmSecurePortTable." ::= { mrmSecurePortEntry 3 } mrmSecPortState OBJECT-TYPE SYNTAX INTEGER { other(1), unauthorised-station-seen(2), unauthorised-station-port-disabled(3), authorised-station-learnt(4) } ACCESS read-only STATUS mandatory DESCRIPTION "Attribute to determine the current security status of a port. This attribute is used by the security trap to identify the reason for the trap. The range of values returned by this object is 1 other 2 unauthorised-station-seen 3 unauthorised-station-port-disabled 4 authorised-station-learnt" ::= { mrmSecurePortEntry 5 } mrmSecNTKState OBJECT-TYPE SYNTAX INTEGER { other(1), disabled(2), -- Need to Know is disabled enabled(3) -- Need to know is enabled } ACCESS read-write STATUS mandatory DESCRIPTION "Attribute to determine whether the Need to Know feature is enabled on the secure Repeater Line Card. The range of values that are valid for this object are 1 2 3 other Need to Know is disabled Need to know is enabled

It is only valid to write the values 2 and 3." ::= { mrmSecurePortEntry 6 } mrmSecBroadcastState OBJECT-TYPE SYNTAX INTEGER { other(1), disabled(2), -- Broadcasts are not allowed enabled(3) -- Broadcasts are allowed } ACCESS read-write STATUS mandatory DESCRIPTION

"Attribute to determine whether broadcasts are allowed or not allowed to be transmitted. 1 2 3 other Broadcasts are not allowed Broadcasts are allowed

It is only valid to write the values 2 and 3." ::= { mrmSecurePortEntry 7 } mrmSecMulticastState OBJECT-TYPE SYNTAX INTEGER { other(1), disabled(2), -- Multicasts are not allowed enabled(3) -- Multicasts are allowed } ACCESS read-write STATUS mandatory DESCRIPTION "Attribute to determine whether multicasts are allowed or not allowed to be transmitted. 1 2 3 other Multicasts are not allowed Multicasts are allowed

It is only valid to write the values 2 and 3." ::= { mrmSecurePortEntry 8 } mrmSecLearnMode OBJECT-TYPE SYNTAX INTEGER { off(1),-- no learning, address is managed single(2),-- first incoming packet is learnt continual(3) -- address is continually learning } ACCESS read-write STATUS mandatory DESCRIPTION "Attribute to determine the learning mode of the secure repeater line card. The range of values that are valid for this object are 1 no learning, the address is managed 2 the address of the first incoming packet is learnt 3 the address is continually learning " ::= { mrmSecurePortEntry 9 } mrmSecReportMode OBJECT-TYPE SYNTAX INTEGER { off(1), -- Not in applicable learn state reportonly(2), -- Report only disconnectandreport(3) -- Disconnect and Report } ACCESS read-write STATUS mandatory DESCRIPTION "Attribute to determine the reporting mode of the secure repeater port. The range of values that are valid for this object are

1 Not in applicable learn state 2 Report only 3 Disconnect and Report" ::= { mrmSecurePortEntry 10 } mrmSecMACAddress OBJECT-TYPE SYNTAX OCTET STRING (SIZE (6)) ACCESS read-write STATUS mandatory DESCRIPTION "The MAC address in use by the secure repeater port." ::= { mrmSecurePortEntry 11 } mrmSecRowStatus OBJECT-TYPE SYNTAX INTEGER { under-modification(1), stable(2) } ACCESS read-write STATUS mandatory DESCRIPTION " This parameter must be set to under-modification before any changes are made to an existing configuration. Changes are not applied until this parameter is set to stable. " ::= { mrmSecurePortEntry 12 } mrmSecurityTrap TRAP-TYPE ENTERPRISE VARIABLES a3Com { mrmSecPortState }

DESCRIPTION " This trap indicates that this port has detected a security violation." ::= 37 mrmStationLearnTrap TRAP-TYPE ENTERPRISE VARIABLES a3Com { mrmSecLearnMode , mrmSecMACAddress }

DESCRIPTION " This trap indicates that this port has autolearnt an end station address." ::= 36 -- *************************************************************************** --- Connect 3 End Station Table --- Database State --- *************************************************************************** esDatabaseState OBJECT-TYPE SYNTAX INTEGER { noChange(1), modified(2) } ACCESS read-write STATUS mandatory DESCRIPTION "

This parameter is normally set to 'NO-CHANGE'. When any change is made to the database the value of this parameter becomes 'MODIFIED'. It will remain in this state until a manager sets it back to NO-CHANGE. " ::= { endStation 1 } -- *************************************************************************** --- Flush Table --- *************************************************************************** esDatabaseFlush OBJECT-TYPE SYNTAX INTEGER { flush (1) } ACCESS write-only STATUS mandatory DESCRIPTION " This parameter clears the End Station Database" ::= { endStation 2 } -- *************************************************************************** --- End Station Table --- Note that the end station database is global and applies across all -- repeaters in the chassis. There is no distinction between units on -- one repeater and those on another. Given a unit number the manager -- can read the configuration values to determine the actual repeater -- association at that moment. -- *************************************************************************** esTable OBJECT-TYPE SYNTAX SEQUENCE OF EsTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "End Station Table" ::= { endStation 3 } esTableEntry OBJECT-TYPE SYNTAX EsTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " The end station database maintains information concerning end-station address information against device port for 802.3 repeater type devices. This table provides one of three views on that database. The view provided by this particular table is indexed firstly on address type and then on address and so can be used to read the entire contents of the database in end-station address order. Additionally one can read all addresses of a certain type from the database, e.g. all IP addresses known. There are some points to note when reading the contents of the end station table. Firstly the repeater number reported will change if a unit is moved from one repeater within a device to another or if a unit is isolated. Secondly an address will only appear in the table once. If an address which is already present in the database is found on another port then the original record is changed and the 'modified' flag set for that entry." INDEX { esAddrType, esAddress }

::= { esTable 1 } EsTableEntry ::= SEQUENCE { esAddrType esAddress esSlotNumber esPortNumber } INTEGER, OCTET STRING, INTEGER, INTEGER

esAddrType OBJECT-TYPE SYNTAX INTEGER { ieee8021(1),internet(2),ipx(3) } ACCESS read-only STATUS mandatory DESCRIPTION " The end station database is capable of storing information for a number of different protocols. Each protocol has it's own addressing format. This parameter allows access to the end station database indexed on address type. For example to read all IEE8021 addresses simply start with a get-next operation on IEEE8021.0 and read until the type changes." ::= { esTableEntry 1 } esAddress OBJECT-TYPE SYNTAX OCTET STRING (SIZE(6)) ACCESS read-only STATUS mandatory DESCRIPTION " The address information held in this entry of the database. The length and format of the string depends on the address type. For example a MAC address will be a 6 byte OCTET STRING, an IP address a 4 byte OCTET STRING." ::= { esTableEntry 2 } esSlotNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Number of unit on which this address was learnt." ::= { esTableEntry 3 } esPortNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Port number of unit on which this address was learnt." ::= { esTableEntry 4 } -- *************************************************************************** -- esModTable -- This table provides a filtered view of the end station database. The -- means of access are the same, i.e. addressType.address, but only entries -- in the database that have the modified flag set to MODIFIED will -- appear in the view of the table presented by this table. -- *************************************************************************** esModTable OBJECT-TYPE SYNTAX SEQUENCE OF EsModTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "End Station Table ( Modified )"

::= { endStation 4 } esModTableEntry OBJECT-TYPE SYNTAX EsModTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " The end station database maintains information concerning end-station address information against device port for 802.3 repeater type devices. This table provides one of three views on that database. The view provided by this particular table is indexed firstly on address type and then on address. The view is restricted to include only those entries in the database which have the MODIFIED flag set, i.e. that have been changed since the database was last viewed by the manager. This table can be used to read all the modified entries in the table. This is the table generally used to update the contents of a station map in a management station. Note that it can take a reasonable time to read the contents of the table and in that time other changes may occur. To detect this an additional MIB parameter is specified 'esDatabaseState'. This parameter is normally set to 'NO-CHANGE'. When any change is made to the database the value of this parameter becomes 'MODIFIED'. It will remain in this state until a manager sets it back to NO-CHANGE. The recommended access for this table is as follows: do { write 'NO-CHANGE' to esDatabaseState read modified table read esDatabaseState } while esDatabaseState is MODIFIED There are some points to note when reading the contents of the end station table. Firstly the repeater number reported will change if a unit is moved from one repeater within a device to another or if a unit is isolated. Secondly an address will only appear in the table once. If an address which is already present in the database is found on another port then the original record is changed and the 'modified' flag set for that entry." INDEX { esModAddrType, esModAddress } ::= { esModTable 1 } EsModTableEntry ::= SEQUENCE { esModAddrType INTEGER, esModAddress OCTET STRING, esModSlotNumber INTEGER, esModPortNumber INTEGER } esModAddrType OBJECT-TYPE SYNTAX INTEGER {ieee8021(1), internet(2), ipx(3) } ACCESS read-only STATUS mandatory DESCRIPTION " The end station database is capable of storing information for a number of different protocols. Each protocol has it's own addressing format. This parameter allows access to the end station database indexed on address type. For example to read all IEE8021 addresses simply start with a get-next operation on IEEE8021.0 and read until the type changes."

::= { esModTableEntry 1 } esModAddress OBJECT-TYPE SYNTAX OCTET STRING (SIZE(6)) ACCESS read-only STATUS mandatory DESCRIPTION " The address information held in this entry of the database. The length and format of the string depends on the address type. For example a MAC address will be a 6 byte OCTET STRING, an IP address a 4 byte OCTET STRING." ::= { esModTableEntry 2 } esModSlotNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Unit number on which this address was learnt." ::= { esModTableEntry 3 } esModPortNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Port number of unit on which this address was learnt." ::= { esModTableEntry 4 } -- *************************************************************************** -- esPortAccessTable -- This table provides a filtered view of the end station database. The -- means of access are the same, i.e. addressType.address, but only entries -- in the database that have the modified flag set to MODIFIED will -- appear in the view of the table presented by this table. -- *************************************************************************** esPortAccessTable OBJECT-TYPE SYNTAX SEQUENCE OF EsPortAccessEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "End Station Table ( Port Access )" ::= { endStation 5 } esPortAccessEntry OBJECT-TYPE SYNTAX EsPortAccessEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " The end station database maintains information concerning end-station address information against device port for 802.3 repeater type devices. This table provides one of three views on that database. The view provided by this particular table allows one to determine the addresses learnt against a particular port." INDEX { ecPortCardNo, ecPortPortNo, ecPortIndex } ::= { esPortAccessTable 1 }

EsPortAccessEntry ::= SEQUENCE ecPortCardNo ecPortPortNo ecPortIndex ecPortAddrType ecPortAddress }

{ INTEGER, INTEGER, INTEGER, INTEGER, OCTET STRING

ecPortCardNo OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Unit part of the identifier for this port." ::= { esPortAccessEntry 2 } ecPortPortNo OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Port number on unit of port for which end station information is required." ::= { esPortAccessEntry 3 } ecPortIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Each port may have a number of addresses against it. This index allows these various addresses to be distinguished. The only stipulation on this number is that it will be unique for the any combination of unit and port. The numbers will be returned in numerically ascending order for a particular unit.port combination but will not be contiguous. For example the following sequence could be seen: Unit 1 1 1 1 1 etc" ::= { esPortAccessEntry 4 } ecPortAddrType OBJECT-TYPE SYNTAX INTEGER { ieee8021(1),internet(2),ipx(3) } ACCESS read-only STATUS mandatory DESCRIPTION " The end station database is capable of storing information for a number of different protocols. Each protocol has it's own addressing format. This parameter identifies the type of address in this entry of the table." ::= { esPortAccessEntry 5 } ecPortAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-only STATUS mandatory DESCRIPTION " (SIZE(6)) Port 1 1 1 1 2 Index 211 231 438 672 120

The address information held in this entry of the database. The length and format of the string depends on the address type. For example a MAC address will be a 6 byte OCTET STRING, an IP address a 4 byte OCTET STRING." ::= { esPortAccessEntry 6 } -- ********************************************************************** -- Trap definitions for the end station database. -- ********************************************************************** estStateChange TRAP-TYPE ENTERPRISE a3Com DESCRIPTION " When the end-station table moves from the noChange to modified state this trap is generated. The trap is sent once on this transition and not subsequently until the 'Database State' is changed back to 'noChange' by a manager." ::= 19 estTableFull TRAP-TYPE ENTERPRISE a3Com DESCRIPTION " When the end-station table becomes full this trap is generated." ::= 20 -- -----------------------------------------------------------------------------REMOTE POLL TABLE -- ----------------------------------------------------------------------------pollTable OBJECT-TYPE SYNTAX SEQUENCE OF PollTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table is used to provide remote device monitoring facilities. This table allows a list of network devices to be set up and polled regularly (or only once) by a variety of protocols. The table can be configured to inform the management station(s) of devices that are not responding to polls or that have started to respond after a period of silence. The minimum effort required to do a single poll is 1. In one packet, Write the address, rate=once-only(1) and RowStatus=CreateAndGo. 2. In the next packet, read the roundTripTime. The minimum effort required to monitor a device is 1. In one packet, Write the address, rate=every-30-seconds(1) and RowStatus=CreateAndGo. 2. Wait for traps to come in." ::= { poll 1 } pollTableEntry OBJECT-TYPE SYNTAX PollTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table used to define device monitoring." INDEX { pollIndex } ::= { pollTable 1 } PollTableEntry ::= SEQUENCE { pollIndex INTEGER,

pollAddress DisplayString, pollProtocol INTEGER, pollRate INTEGER, pollTargetType INTEGER, pollLastPollSent TimeTicks, pollRoundTripTime INTEGER, pollInformation DisplayString, pollAlarmIndex INTEGER, pollOwner DisplayString, pollRowStatus INTEGER } pollIndex OBJECT-TYPE SYNTAX INTEGER (1..255) ACCESS read-only STATUS mandatory DESCRIPTION "Unique identifier of a row in the Poll Table. The actual number of rows that can be created on any particular device depends on the memory and processing resources available at the time." ::= { pollTableEntry 1 } pollAddress OBJECT-TYPE SYNTAX DisplayString (SIZE(0..50)) ACCESS read-write STATUS mandatory DESCRIPTION "This DisplayString is the network address of the device to monitor. Typically this is an IP, MAC or IPX address. The following formats can be used. IP nnn.nnn.nnn.nnn - dotted format IPX AABBCCDD:AABBCCDDEEFF - network : node" ::= { pollTableEntry 2 } pollProtocol OBJECT-TYPE SYNTAX INTEGER { unknown (1), ip (2), ipx (3), learn(4), llc(5) } ACCESS read-write STATUS mandatory DESCRIPTION "This defines the protocol to use with which to monitor the devi ce. Writing an address pollProtocol value from the format of and 10 bytes means to the pollAddress field causes a default to be setup. The default value is derived the address - four bytes means ip(2), ipx(3) addresses.

If the requested protocol is not supported or is not compatible with the pollAddress, then an error is returned when an attempt is made to set the RowStatus to active or notInService." DEFVAL { unknown } ::= { pollTableEntry 3 }

pollRate OBJECT-TYPE SYNTAX INTEGER { once-only (1), every-30-seconds (2), every-minute (3), every-5-minutes (4), every-30-minutes (5), every-hour (6) } ACCESS read-write STATUS mandatory DESCRIPTION "This defines how often a poll packet is sent to the device. If once-only(1) is chosen, then when the RowStatus is set to active, a single poll packet is to be sent. There are no re-transmissions and no traps are generated. The results of the operation can be read in the pollLastPollSent and pollRoundTripTime fields. When a reply to the poll is received, then the RowStatus is changed to notInService. For the other values, setting the RowStatus to active causes the device to be regularly polled. The operation of the poll can be monitored by reading the pollLastPollSent and pollRoundTripTime fields. After four un-successful polls a pollLostContact trap is generated. The next successful poll to the device causes a pollEstablishedContact trap to be generated. Changing RowStatus from the active state causes polling to stop - in particular changing RowStatus from active to notInService (and vice-versa) is a convenient way of stopping and starting the polls. A poll is said to have been un-successful, if no reply has been received by the time the device is due to be polled again i.e. if the pollRoundTripTime is still zero. By convention, row 1 of the PollTable is only ever used for once-only(1) polls. The facilities of the RMON Alarm and RMON Event groups are used when regular polling is taking place. These groups perform the timing, threshold checking and trap generation." DEFVAL { once-only } ::= { pollTableEntry 4 } pollTargetType OBJECT-TYPE SYNTAX INTEGER { other (1), file-server (2) } ACCESS read-write STATUS mandatory DESCRIPTION "This field is provided solely for the purpose of the Network Management station to allow extra information to be stored about this poll table entry. This value is not used by the device." DEFVAL { other } ::= { pollTableEntry 5 } pollLastPollSent OBJECT-TYPE

SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "Reading this variable returns the sysUpTime at which the last poll was sent to the device. A value of 0 means that no polls have been sent or that the poll could not be sent e.g. protocol error." DEFVAL { 0 } ::= { pollTableEntry 6 } pollRoundTripTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This is the round trip time in milli-seconds of the most recent poll to the pollAddress device. A value of 0 means that no reply has been received from the last poll. Round trip times of less than one hundred of a second are reported with the value of 10 milli-seconds." DEFVAL { 0 } ::= { pollTableEntry 7 } pollInformation OBJECT-TYPE SYNTAX DisplayString (SIZE(0..500)) ACCESS read-only STATUS mandatory DESCRIPTION "After each successful poll, this field is updated with some protocol specific information that was gleaned from the packet exchange. For the IPX protocol, this string contains the number of router hops made by the poll response packet. For the IP protocol, this stri ng contains the value of Time-To-Live from the IP packet header." ::= { pollTableEntry 8 } pollAlarmIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This is a value of alarmIndex from the RMON Alarm Table. The al arm indicated is being used by the PollTable to provide the timing a nd trap generation facilities. If this value is 0, then no alarm is associated with this PollTable entry." DEFVAL { 0 } ::= { pollTableEntry 9 } pollOwner OBJECT-TYPE SYNTAX DisplayString ACCESS read-write STATUS mandatory DESCRIPTION "The RMON OwnerString conventions are used here to

help control the multi-manager situations. This data type is used to model an administratively assigned name of the owner of a resource. This information is taken from the NVT ASCII character set. It is suggested that this name contain one or more of the following: IP address, management station name, network manager's name, location, or phone number. In some cases the agent itself will be the owner of an entry. In these cases, this string shall be set to a string starting with 'monitor'. SNMP access control is articulated entirely in terms of the contents of MIB views; access to a particular SNMP object instance depends only upon its presence or absence in a particular MIB view and never upon its value or the value of related object instances. Thus, objects of this type afford resolution of resource contention only among cooperating managers; they realize no access control function with respect to uncooperative parties." ::= { pollTableEntry 10 } pollRowStatus SYNTAX OBJECT-TYPE INTEGER { -- the following two values are states: -- these values may be read or written active(1), notInService(2), -- the following value is a state: -- this value may be read, but not written notReady(3), -- the following three values are -- actions: these values may be written, -- but are never read createAndGo(4), createAndWait(5), destroy(6) } ACCESS read-write STATUS mandatory DESCRIPTION "The SNMPv2 RowStatus convention. Notes: 1) Writing any data to a destroyed row, changes its state to notReady. 2) If the status is active or notInService and any of the configuration parameters are changed, then the polling stops and the status is set to notReady." ::= { pollTableEntry 11 } pollNextFreeIndex OBJECT-TYPE SYNTAX INTEGER (0..255) ACCESS read-only STATUS mandatory

DESCRIPTION "Indicates the the next value of pollIndex which can be used to create the next poll entry. This value is set to zero if there are no free rows in the table." ::= { poll 2 } pollTableSuccessTrap ENTERPRISE VARIABLES TRAP-TYPE a3Com { pollAddress, pollProtocol, pollTargetType } "This trap is generated when the PollTable in the managed agent receives a reply to a poll after a sequence of four or more un-successful polls." TRAP-TYPE a3Com { pollAddress, pollProtocol, pollTargetType } "This trap is generated when the PollTable in the managed agent fails to receive a reply to four successive polls."

DESCRIPTION ::= 61 pollTableFailedTrap ENTERPRISE VARIABLES

DESCRIPTION ::= 62

-- --------------------------------------------------------------------- ******************** SNMP TRAP TABLES ****************************** -- --------------------------------------------------------------------- snmp Trap Table Database. Tells us where to send SNMP traps to. -- Various transport protocols can be setup in the same table. ----The original 'trapTable' has been deprecated and has been replaced by 'snmpTrapTable'. The 'trapTable' is still working for backward compatibility, but all new applications should use the new 'snmpTrapTable'

trapTable OBJECT-TYPE SYNTAX SEQUENCE OF TrapEntry ACCESS not-accessible STATUS deprecated DESCRIPTION "The snmp Trap database " ::= {localSnmp 1} trapEntry OBJECT-TYPE SYNTAX TrapEntry ACCESS not-accessible STATUS deprecated DESCRIPTION "A single snmp Trap entry" INDEX { trapDestination } ::= { trapTable 1} TrapEntry ::= SEQUENCE {

trapStatus INTEGER, trapDestination IpAddress, trapCommunity DisplayString, trapSubject OBJECT IDENTIFIER, trapCategory INTEGER, trapThrottle INTEGER } trapStatus OBJECT-TYPE SYNTAX INTEGER { valid(1), invalid(2) } ACCESS read-write STATUS deprecated DESCRIPTION "The Status of the Entry valid(1) or invalid(2), writing invalid(2) will delete the entry from the table" ::= {trapEntry 1} trapDestination OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS deprecated DESCRIPTION "The Destination IP Address" ::= {trapEntry 2} trapCommunity OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) ACCESS read-write STATUS deprecated DESCRIPTION "SNMP Community to be used to send traps to destination trapDestination" ::= {trapEntry 3} trapSubject OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-write STATUS deprecated DESCRIPTION "SNMP Subject Party used to generate traps to destination trapDestination" ::= {trapEntry 4} trapCategory OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS deprecated DESCRIPTION "32 Bit Mask indicating which Trap categories that the snmpTrapDestination is interested in. '00000001'h - High Priority Configuration Traps '00000002'h - Low Priority Configuration Traps

'00000004'h '00000008'h '00000010'h '00000020'h '00000040'h '00000080'h '00000100'h '00000200'h '00000400'h

High Priority Security Traps Low Priority Security Traps Alarms & Polling Traps Regular Heartbeat Traps End Station Table Traps reserved Physical Entity Traps Facility Traps Service Related Traps

A value of 0xFFFFFFFF enables all traps." ::= {trapEntry 5} trapThrottle OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS deprecated DESCRIPTION "The Maximum rate at which that trapDestination is willing to receive traps, specified as the minimum interval in milliseconds between traps. A value of zero indicates that no trap throttling is required." ::= {trapEntry 6} snmpTrapTable OBJECT-TYPE SYNTAX SEQUENCE OF SnmpTrapEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table can store the destination addresses of SNMP managers that wish to receive traps from this device." ::= {localSnmp 2} snmpTrapEntry OBJECT-TYPE SYNTAX SnmpTrapEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table can store the destination addresses of SNMP managers that wish to receive traps from this device." INDEX { snmpTrapIndex } ::= { snmpTrapTable 1} SnmpTrapEntry ::= SEQUENCE { snmpTrapIndex INTEGER, snmpTrapDestination DisplayString, snmpTrapProtocol INTEGER, snmpTrapCommunity DisplayString, snmpTrapCategory OCTET STRING, snmpTrapThrottle INTEGER, snmpTrapRowStatus INTEGER }

snmpTrapIndex OBJECT-TYPE SYNTAX INTEGER (1..255) ACCESS read-only STATUS mandatory DESCRIPTION "This is the unique identifier for this row in the snmpTrapTable . When creating a new row, a manager can read the value of the snmpTrapNextFreeIndex object and (if non-zero) can use this valu e as the index of the new row to be created. The actual number of rows that can be created on any particular device depends on the memory and processing resources available at the time." ::= {snmpTrapEntry 1} snmpTrapDestination OBJECT-TYPE SYNTAX DisplayString (SIZE(0..50)) ACCESS read-write STATUS mandatory DESCRIPTION "This DisplayString is the network address of the device to which SNMP traps will be sent. This is an IP or IPX address. The following formats can be used. IP nnn.nnn.nnn.nnn - dotted format IPX AABBCCDD:AABBCCDDEEFF - network : node Destination addresses must be unique within this table. An error is returned if an attempt is made to add a duplicate address." ::= {snmpTrapEntry 2} snmpTrapProtocol OBJECT-TYPE SYNTAX INTEGER { unknown (1), ip (2), ipx (3) } ACCESS read-only STATUS mandatory DESCRIPTION "This defines the transport protocol to use when sending an SNMP trap. At present, this value is determined by the format/value of snmpTrapDestionation which is currently un-ambiguous and so this object is read-only." ::= {snmpTrapEntry 3} snmpTrapCommunity OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) ACCESS read-write STATUS mandatory DESCRIPTION "SNMP Community String to be used when sending Traps to this destination." ::= {snmpTrapEntry 4} snmpTrapCategory OBJECT-TYPE

SYNTAX OCTET STRING (SIZE(4)) ACCESS read-write STATUS mandatory DESCRIPTION "32 Bit Mask indicating which Trap categories that the snmpTrapDestination is interested in. '00000001'h '00000002'h '00000004'h '00000008'h '00000010'h '00000020'h '00000040'h '00000080'h '00000100'h '00000200'h '00000400'h High Priority Configuration Traps Low Priority Configuration Traps High Priority Security Traps Low Priority Security Traps Alarms & Polling Traps Regular Heartbeat Traps End Station Table Traps reserved Physical Entity Traps Facility Traps Service Related Traps

A value of 0xFFFFFFFF enables all traps." ::= {snmpTrapEntry 5} snmpTrapThrottle OBJECT-TYPE SYNTAX INTEGER (0..99999) ACCESS read-write STATUS mandatory DESCRIPTION "The maximum rate at which that snmpTrapDestination is willing t o receive traps, specified as the minimum interval in milliseconds between traps. For example, a value of 2000 will limit traps sent to this destination to one trap every 2 seconds. A value of zero indicates that no trap throttling is required." DEFVAL { 10 } ::= {snmpTrapEntry 6} snmpTrapRowStatus OBJECT-TYPE SYNTAX INTEGER { -- the following two values are states: -- these values may be read or written active(1), notInService(2), -- the following value is a state: -- this value may be read, but not written notReady(3), -- the following three values are -- actions: these values may be written, -- but are never read createAndGo(4), createAndWait(5), destroy(6) } ACCESS read-write STATUS mandatory DESCRIPTION "The SNMPv2 RowStatus convention.

Notes: Because this is such a simple table:1) Writing any data to a destroyed row, changes its state to a ctive. 2) There is no notReady or notInService state. Each row is eit her active or destroyed." ::= {snmpTrapEntry 7} snmpTrapNextFreeIndex OBJECT-TYPE SYNTAX INTEGER (0..255) ACCESS read-only STATUS mandatory DESCRIPTION "Indicates the the next value of snmpTrapIndex which can be used to create a new trap destination entry. This value is zero if there are no free rows in the table." ::= {localSnmp 3} -- define the standard snmp Traps and any pdd specific standard snmp -- traps. ---------------------------------------coldStart TRAP-TYPE ENTERPRISE snmp DESCRIPTION "A coldStart trap signifies that the sending protocol entity is reinitializing itself such that the agent's configuration or the protocol entity implementation may be altered." ::= 0 warmStart TRAP-TYPE ENTERPRISE snmp DESCRIPTION "A warmStart trap signifies that the sending protocol entity is reinitializing itself such that neither the agent configuration nor the protocol entity implementation is altered." ::= 1 linkDown TRAP-TYPE ENTERPRISE snmp VARIABLES { ifIndex } DESCRIPTION "A linkDown trap signifies that the sending protocol entity recognizes a failure in one of the communication links represented in the agent's configuration." ::= 2 linkUp TRAP-TYPE ENTERPRISE snmp VARIABLES { ifIndex } DESCRIPTION "A linkUp trap signifies that the sending protocol entity recognizes that one of the communication links represented in the agent's configuration has come up." ::= 3 authenticationFailure TRAP-TYPE

--------------------

ENTERPRISE snmp DESCRIPTION "An authenticationFailure trap signifies that the sending protocol entity is the addressee of a protocol message that is not properly authenticated. While implementations of the SNMP must be capable of generating this trap, they must also be capable of suppressing the emission of such traps via an implementationspecific mechanism." ::= 4 *************************************************************************** * Generic Chassis MIB * This MIB is meant to be generic enough to fit any modular product. * *************************************************************************** *************************************************************************** MSH Configuration Group. *************************************************************************** OBJECT IDENTIFIER ::= { chassis 1 } OBJECT IDENTIFIER ::= { chassis 2 } OBJECT IDENTIFIER ::= { chassis 3 }

enclosure physicalConfig logicalConfig

enclosureName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) ACCESS read-only STATUS mandatory DESCRIPTION " A text string describing the chassis that this MIB describes." ::= { enclosure 1 } enclosureObjId OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION " An OBJECT IDENTIFIER specific to this type of this chassis." ::= { enclosure 2 } enclosureHardwareVers OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) ACCESS read-only STATUS mandatory DESCRIPTION " The hardware version number of the chassis. This is a string which includes the major and minor revision levels of the hardware." ::= { enclosure 3 } --

-- *************************************************************************** -- physicalConfig -- This branch contains the Physical Rack Configuration Table, which -- contains the configuration of each card in each available slot in the MSH -- chassis. -- *************************************************************************** phyConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF PhyConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This table specifies the current physical configuration of the chassis. This table defines a chassis to contain a number of physical entities. Each such entity has some position that distinguishes it from other potentially similar entities. Examples of entities are cards, power supplies etc. Note that this table only contains information on a location that is currently occupied by some entity." ::= { physicalConfig 1 } phyConfigEntry OBJECT-TYPE SYNTAX PhyConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This is one entry in the Physical Configuration Table. It is indexed by physical location." INDEX { phyLocationType, phyLocation } ::= { phyConfigTable 1 } PhyConfigEntry ::= SEQUENCE { phyLocationType phyLocation phySysObjId phyServiceType phyEntityType phyHwVersion phySwVersion phyServiceId phyEntityName phyPowerReq phyNumberOfPorts phyLampTest phyEntityState phyAction } INTEGER, INTEGER, OBJECT IDENTIFIER, INTEGER, INTEGER, DisplayString, DisplayString, INTEGER, DisplayString, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER

phyLocationType OBJECT-TYPE SYNTAX INTEGER { module (1), power-supply (2), fan (3), backplane (4) } ACCESS read-only STATUS mandatory DESCRIPTION " A chassis contains a number of physical entities such as power

supplies and cards. Each physical entity resides at some location. A chassis can contain a number of types of location. Each type of location is specialised to a different purpose. Currently there are four types of location defined. This list can be extended for a particular application: modular-slot: A location of this type can take a number of different entities. They are general purpose and are often the purpose of the device. power-supply-bay: Locations of this type can only contain an instance of a power supply. fan-position: This location can only hold a fan. backplane-position: A position of this type can only contain a backplane." ::= { phyConfigEntry 1 } phyLocation OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " A chassis contains a number of physical entities such as power supplies and cards. Each physical entity resides at some location. Some locations are known and have special purposes, others are general and can contain one of a number of different physical entities. The location type defines a 'kind' of location. Within each category there may be one or more instances of that kind of location. For example in a 10 slot modular hub there are potentially 10 instances of card locations occupied at any time." ::= { phyConfigEntry 2 } phySysObjId OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION " This object is the OBJECT ID of the entity at this location." ::= { phyConfigEntry 3 } phyServiceType OBJECT-TYPE SYNTAX INTEGER { dumb8023Repeater ieee8023Repeater ieee8025MauModule ieee8025Ringbuilder fddiConcentrator managementModule standardBackplane extendedBackplane displayPanel fan powerSupply standardBridge bridgePerPort terminalServer remoteBridge fddiMIC notAllocated fddiLinkSwitch

(1), (2), (3), (4), (5), (6), (12), (13), (14), (17), (18), (19), (20), (21), (22), (23), (24), (25)

} ACCESS read-only STATUS mandatory DESCRIPTION " This object identifies what kind of entity is present at this location. The value represents a category of entity, for example '802.3 Repeater' or 'power supply'. It does not identify the specific kind of entity within that category, for this refer to the entity type." ::= { phyConfigEntry 4 } phyEntityType OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory DESCRIPTION " This object is read in conjunction with service type to uniquely identify the specific physical entity. For example the service type may indicate '802.3 Repeater' while the entity type then says within this category this card is a 12 port UTP card. Below are the values currently allocated: smart8023Repeater 1: 4 Port RLC Coax (ECS Variant) 2: 8 Port UTP (ECS Variant) 3: 4 Port Fibre (ECS Variant) 4: 8 Port STP (ECS Variant) 6: 4 Port Fanout (ECS Variant) 7: 12 Port UTP (ECS Variant) 8: 12 Port STP (ECS Variant) 9: 12 Port Secure UTP (ECS Variant) 10: 12 Port Secure STP (ECS Variant) 11: 6 Port Fibre (ECS Variant) 12: 4 Port Coax (ECS Variant) 32: 6 Port Resilient Fibre (ECS Variant) 65: 12 Port UTP, RJ45 Connector 66: 12 Port UTP, RJ45 Connector (Expandable) 67: 13 Port UTP, Telco + Module 68: 24 Port UTP, 2xTelco 69: 6 Port fibre, ST Connector (Expandable) 70: 6 Port fibre, SMA Connector (Expandable) 71: 6 Port Coax (Expandable) 72: 4 Port Fanout ieee8025MauModule 1: 12 Port UTP, RJ45 Connector 2: 12 Port STP, RJ45 Connector 3: 12 Port UTP/STP Advanced MAU ieee8025Ringbuilder 1: Ring Builder. STP Rin/Rout. RJ45 Connectors 2: Ring Builder. Fiber (ST) and STP Rin/Rout. fddiConcentrator 1: FDDI RingBuilder managementModule 1: Standard Management Module 2: Enhanced Management Module standardBackplane 1: Standard Backplane extendedBackplane 1: High Speed Backplane displayPanel

1: fan

First release front panel

1: Standard Fan Tray powerSupply 2: Standard Power Supply standardBridge 1: 2 Port Local Token Ring Bridge 2: 4 Port Local Ethernet Bridge fddiMIC 1: FDDI 4 Port MIC 2: FDDI 6 Port UTP/STP fddiLinkSwitch 1: LinkSwitch " ::= { phyConfigEntry 5 } phyHwVersion OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION " This string identifies the major and minor revision level of the entity at this location." ::= { phyConfigEntry 6 } phySwVersion OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION " If the entity at this location contains a processor there will be some programme code present. This parameter specifies the version number of that code. The version number is a string. If an entity has no software then the value of this parameter will be 'None'." ::= { phyConfigEntry 7 } phyServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Every chassis is considered as a collection of services. Each service is implemented using the resources of one or more physical entities within the rack. For example a repeater may be implemented using 2x12 port UTP cards. A power supply by 3 modular power supply entities. The service table contains an entry for each service present in the MSH at any point in time. This object provides a valid index into the service table. By reading the service table and specifying the value of this object one can determine to which service this card belongs." ::= { phyConfigEntry 8 } phyEntityName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) ACCESS read-only STATUS mandatory DESCRIPTION " This item is a text string describing the entity at this location." ::= { phyConfigEntry 9 } phyPowerReq OBJECT-TYPE

SYNTAX ACCESS STATUS DESCRIPTION

INTEGER read-only mandatory "

This item takes the +5V and +12V current requirements of the entity and uses the values to obtain a power consumption requirement for the entity. A power supply will specify a negative value indicating a source of power. The value is in Watts. Note that the value returned from this object is the simple arithmetic addition of the all power rail requirements. Note that a power supply may be overloaded even if this value is within the spec of the power supplies. Such a situation can occur if the power supplies can source, say X5 Watts at 5V and X12 Watts at 12V. The total power by this definition is X5 + X12. Now a card could draw Y5 and Y12 from the two supplies. If Y12 is X12+1 and Y5 is X5-2, total supply exceeds total consumption but the 12V rail is overloaded!" ::= { phyConfigEntry 10 } phyNumberOfPorts OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This object contains the number of physical, external ports this entity is known to have. Note this value only applies to entities that communicate with the management card. For other cards a value of -1 indicates 'unknown'. A value of zero indicates that this entity has no external ports." ::= { phyConfigEntry 11 } phyLampTest OBJECT-TYPE SYNTAX INTEGER { test-off (1), test-on (2) } ACCESS write-only STATUS mandatory DESCRIPTION " This object allows a visual test to be performed on entities contained in the rack. The state will be recorded against the card even if that entity does not actually do anything different in this state." ::= { phyConfigEntry 12 } phyEntityState OBJECT-TYPE SYNTAX INTEGER { unknown (1), initialising (2), operational (3), failure (4) } ACCESS read-only STATUS mandatory DESCRIPTION " Each entity in the chassis has a basic state independent of what function that entity performs within the chassis. If the agent cannot determine the state of a particular entity then the value of this object is 'unknown'." ::= { phyConfigEntry 13 }

phyAction OBJECT-TYPE SYNTAX

INTEGER { reset (1) } ACCESS write-only STATUS mandatory DESCRIPTION " This parameter allows a number of actions to be defined for cards in a chassis. Currently only one action is defined: reset. Invoking this operation will reset the specified card." ::= { phyConfigEntry 14 } -- **************************************************************************** -- phyConfigSizes -- **************************************************************************** phyLimits OBJECT-TYPE SYNTAX SEQUENCE OF PhyLimitEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " The physical config table describes the chassis as a number of physical entities, each of which has some physical location. This table defines the number of physical locations of each type that actually exists within an instance of the chassis." ::= { physicalConfig 2 } phyLimitEntry OBJECT-TYPE SYNTAX PhyLimitEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This entry provides information on the number of physical locations present in this chassis for the specified type of location. Practically this is interpreted as the 'number of power supplies' or 'number of slots' etc." INDEX { phyLimLocationType } ::= { phyLimits 1 } PhyLimitEntry ::= SEQUENCE { phyLimLocationType phyLimLimit } INTEGER, INTEGER

phyLimLocationType OBJECT-TYPE SYNTAX INTEGER { module (1), power-supply (2), fan (3), backplane (4) } ACCESS read-only STATUS mandatory DESCRIPTION " A chassis contains a number of physical entities such as power supplies and cards. Each physical entity resides at some location. A chassis can contain a number of types of location. For each particular type of location there is a limit to the number that may be present in the chassis." ::= { phyLimitEntry 1 }

phyLimLimit OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " A chassis contains a number of physical entities such as power supplies and cards. Each physical entity resides at some location. A chassis can contain a number of types of location. For each particular type of location there is a limit to the number that may be present in the chassis. This object identifies the actual number of locations in this chassis that exist for the specified type. Practically this is interpreted as the 'number of power supplies' or 'number of slots' etc." ::= { phyLimitEntry 2 } --

frontPanelDisplayMessage OBJECT-TYPE SYNTAX DisplayString ACCESS read-write STATUS mandatory DESCRIPTION " This is a string which may be user-defined for display on the lower line of the front panel display." ::= { physicalConfig 3 } --

-- *************************************************************************** -- Logical Configuration -- *************************************************************************** -- *************************************************************************** -- Service Table -- *************************************************************************** serviceTable OBJECT-TYPE SYNTAX SEQUENCE OF ServiceEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " An MSH chassis is logically comprised of a number of services, e.g. a repeater, bridge etc. Each service is implemented by one or more physical entities. This table contains an entry for each service, providing a name for that service type. Note that every entry in the physical configuration table MUST belong to a service. For example there may NOT be an entry in the phyConfigTable for which the value of phyServiceId does not provide an index into this table of an existent row." ::= { logicalConfig 1 } serviceEntry OBJECT-TYPE SYNTAX ServiceEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This is an entry in the Service Table which is indexed by the Service Index for that service." INDEX { serviceId } ::= { serviceTable 1 } ServiceEntry ::= SEQUENCE { serviceId serviceName serviceReset } INTEGER, DisplayString, INTEGER

serviceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is a number representing the service in the rack. This id can be used to reference the service elsewhere in the MIB. There are several conventions used to allocate a service Id. Firstly if a card forms a service by itself, for example a bridge card, which uses none of the backplane 802.3 or token ring lines, then the service id is the same as the slot position of that card within the rack. If a service is constructed using one of the backplane 802.3 facilities then the service id is 101, 102 or 103 for the three backplane 802.3 paths. If a service is a token ring fragment then the service id for that service is 200 plus the ring fragment id. For example if Ring Builder builder builds a ring from MAU cards with ring fragment id 7, the

corresponding service will be 207." ::= { serviceEntry 1 } serviceName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) ACCESS read-only STATUS mandatory DESCRIPTION " This is a text string describing the service at a particular Service Index." ::= {serviceEntry 2 } serviceReset OBJECT-TYPE SYNTAX INTEGER { reset (1) } ACCESS write-only STATUS mandatory DESCRIPTION " This action will reset all the cards that belong to this service." ::= {serviceEntry 3 } --

-- ************************************************************************** -- addressTable -- *************************************************************************** addressTable OBJECT-TYPE SYNTAX SEQUENCE OF AddressTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " An MSH chassis contains a number of services. Each service is implemented by one or more cards. A number of services are 'intelligent' in that they communicate with the management station through their own communications stack. This table allows a manager to determine the addresses relevant to a particular service. The table will only have entries present for cards which have management addresses. The table is accessed by specifying a service Id and a sub-index value to distinguish between potentially multiple addresses for a service. NOTE: This table includes entries for the management card itself. The management card entries contain the physical address of the currently active MAC and the IP address of the SNMP stack." ::= { logicalConfig 2 } addressTableEntry OBJECT-TYPE SYNTAX AddressTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "text" INDEX { mgmtServiceId, mgmtSubIndex} ::= { addressTable 1 } AddressTableEntry ::= SEQUENCE mgmtServiceId mgmtSubIndex mgmtAddressType mgmtAddress } { INTEGER, INTEGER, INTEGER, OCTET STRING

mgmtServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Identifies the service for which this row provides address information." ::= { addressTableEntry 1 } mgmtSubIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Used to distinguish between multiple addresses for a service in the chassis." ::= { addressTableEntry 2 } mgmtAddressType OBJECT-TYPE SYNTAX INTEGER { ieee8023address

(1),

ieee8025address (2), ipaddress (3), slipaddress (4) } ACCESS read-only STATUS mandatory DESCRIPTION " A card in the chassis can have several addresses, either because of multiple stacks and/or for each relevant level in the stack(s). Each relevant address is represented in this table as a display string and a type. Note that ieee8023Address and ieee8025Address types differ from each other in the bit ordering of the physical address." ::= { addressTableEntry 3 } mgmtAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-only STATUS mandatory DESCRIPTION " The address as block of bytes. An IP address would occupy 4 bytes and a MAC address 6 bytes." ::= { addressTableEntry 4 } --

-- *************************************************************************** -- facilityTable -- *************************************************************************** facilityTable OBJECT-TYPE SYNTAX SEQUENCE OF FacilityEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " The MSH chassis can simultaneously maintain a number of different sub-networks. Examples of these are the independent repeaters and a number of Token Rings. These fundamental services are referred to as facilities. Each card in the chassis can either provide or be connected to one or more of these facilities. This table provides a means of determining and changing the facilities used by a particular card. The number of entries per card depends on the type of card. For example an 802.3 repeater card can be expected to have a single entry while an 'n' port bridge would have 'n'. The number of entries for a particular card is fixed (can't insert into or delete from this table)." ::= { logicalConfig 3 } facilityEntry OBJECT-TYPE SYNTAX FacilityEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This is an entry in the Facility Table for a particular slot. There may be more than one entry per slot, each entry being distinguished by FacilityIndex." INDEX { fcSlotNumber, fcFacilityIndex } ::= { facilityTable 1 } FacilityEntry ::= SEQUENCE { fcSlotNumber fcFacilityIndex fcType fcConnection } INTEGER, INTEGER, INTEGER, INTEGER

fcSlotNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Allows access to the table for a particular card. One can use this in conjunction with get-next to read all the facility associations for a particular card." ::= { facilityEntry 1 } fcFacilityIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Each card may have multiple entries in the Facility Table. This object provides the means of uniquely identifying each of these entries.

Note: It is a convention that the value of this index maps as closely as possible to the physical configuration of the entity represented. For example if a bridge has ports numbered 1, 2, 3 and 4 and all are switchable then this table will have four entries for that entity indexed 1, 2, 3 and 4. Entry with index 1 represents port 1 etc. Similarly if a bridge had two ports numbered, for some reason, 234 and 456 then these values would be used as the index to this table." ::= { facilityEntry 2 } fcType OBJECT-TYPE SYNTAX INTEGER { ieee8023 (1), ieee8025 (2), fddi (3), ieee8025rb (4), ieee8023v3 (5), atm (6), smds (7) } ACCESS read-only STATUS mandatory DESCRIPTION " Each entry in the facility table represents an association between a physical module and one of the facilities provided by the particular configuration of this chassis. There are a number of different types of facilities the chassis can provide. This object identifies the particular type of the facility represented by this table entry. Note that the list of types in this object may be extended in future." ::= { facilityEntry 3 } fcConnection OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION " This object identifies the current assignment of this attachment point in this card. The legal values of this object depends on the type card. Writing an illegal value to this object will cause an error. Generally the table following identifies the possible values, depending on type. Each card type will support a subset of these values. Type IEEE8023 IEEE8025 Possible Values 0 Isolated (i.e. this interface is not connected to anything). 1,2,3 One of the backplane 802.3 networks. 0 Isolated 1..0x7f A ring number. This must match the value of one of he ring builder cards or the request will be rejected. Unknown at the moment. Probably similar to IEEE8025

FDDI

Note: Values greater than 0x7f are reserved to be private values for a particular card. The meaning of these values depend on the card type. A possible use of this is in a multiport 802.3 bridge. Consider such a bridge being capable of bridging between three sources and having two external 802.3 connections. Such a bridge would have three entries in the facility table, one for each bridge source. Each entry could be assigned to one of the backplane 802.3 paths or to one of the two

external connections. In this case the possible values for each table entry would be: 0x00 0x01, 0x02, 0x03 0x81, 0x82 : Not used (isolated) : One of the backplanes : One of the external connections.

The MSH agent will not allow two different entries in this table for the same card to be assigned to the same facility!" ::= { facilityEntry 4 } -- ********************************************************************** -- Define traps for the chassis part of the MIB. -- ********************************************************************** -- Assigned phyEntityInserted TRAP-TYPE ENTERPRISE a3Com VARIABLES { phyServiceType, phyEntityType, phyServiceId, phyNumberOfPorts, phyEntityName } DESCRIPTION " This trap is sent when a new entity is detected in the chassis. The entity is identified both by its location in the chassis and it's type information. The display string is included to make event descriptions more understandable. The phyServiceId indicates to which service the new entity belongs or implements. If the entity belongs to more than one service then this parameter indicates one of the services." ::= 27 -- Assigned phyEntityRemoved TRAP-TYPE ENTERPRISE a3Com VARIABLES { phyServiceId, phyEntityName } DESCRIPTION " This trap is sent when an entity is removed. The qualifier information on the variables identify the location of the entity that has been removed while the entity name is the textual description of the card that was removed." ::= 28 -- Assigned phyFacilityChanged TRAP-TYPE ENTERPRISE a3Com VARIABLES { phyServiceId, fcType, fcConnection } DESCRIPTION " This trap is sent when the facility table is changed. This trap is only send when the change is made as the result of a local management request. The trap includes information about the type of the connection changed and the new connection value." ::= 29 -- Assigned serviceEntityAdded TRAP-TYPE ENTERPRISE a3Com

VARIABLES { phyServiceId } DESCRIPTION " This trap is sent when a card is added to a service. This trap is always sent, regardless of how the card addition occurred. There are two situations in which a card is added to a service. The first is where a new card is inserted and is attached to a service. The second is where an existing card is removed from one service and added to another. Note that the transmission of this trap may imply the creation of a new service." ::= 30 -- Assigned serviceEntityRemoved TRAP-TYPE ENTERPRISE a3Com VARIABLES { phyServiceId } DESCRIPTION " This trap is sent when an entity is removed from a service. This trap is always sent, regardless of how the card removal occurred. There are two situations in which a card is removed from a service. The first is where a card is removed from the chassis. The second is where an existing card is removed from one service and added to another. The service id in the variables list indicates the service to which to card did belong. Note that the transmission of this trap may imply that the service to which it belongs no longer exists. This is the case where the card was the only current member of the service." ::= 31 -- Assigned physicalStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { phyServiceId, phyEntityState } DESCRIPTION " A physical entity in the rack has changed state. This can be the result of a failure or recovery. The variables accompanying this trap identify the entity which has changed state." ::= 32 -- Assigned psuCapacityExceeded TRAP-TYPE ENTERPRISE a3Com DESCRIPTION " The combination of the power requirements of all the entities in the chassis has been calculated to exceed the power capacity of the power supplies present in the chassis." ::= 33 -----*************************************************************************** MSH Specific Branch. Objects from here do not form part of the generic chassis MIB. This section must be moved to a separate MIB file. *************************************************************************** OBJECT IDENTIFIER ::= { linkBuilderMSH 1 } OBJECT IDENTIFIER ::= { linkBuilderMSH 2 }

misc mshFault

-- ***************************************************************************

-- Temperature Sensor -- *************************************************************************** tempSensorOutput OBJECT-TYPE SYNTAX INTEGER { ok (1), warm (2), danger (3) } ACCESS read-only STATUS mandatory DESCRIPTION " Mounted on the Management card is a temperature sensing device. This device provides three output levels : OK, WARM and DANGER." ::= { misc 1 } -- *************************************************************************** -- Status Inputs -- *************************************************************************** statusInputTable OBJECT-TYPE SYNTAX SEQUENCE OF StatusInputTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This table provides information about and allows configuration of the 4 general purpose inputs provided by the MSH management card. " ::= { misc 2 } statusInputTableEntry OBJECT-TYPE SYNTAX StatusInputTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This entry describes one of the status inputs provided by the MSH management card." INDEX { statusInputIndex } ::= { statusInputTable 1 } StatusInputTableEntry ::= SEQUENCE { statusInputIndex INTEGER, statusInputState INTEGER, statusTrapEnable INTEGER, statusName DisplayString } statusInputIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Identify one of the status inputs provided by the MSH card." ::= { statusInputTableEntry 1 } statusInputState OBJECT-TYPE SYNTAX INTEGER { open (1), closed (2) } ACCESS read-only STATUS mandatory DESCRIPTION "

Each of the MSH management general purpose input lines is actually a pair of wires. In order to use one of the lines the two wires of a particular pair must be connected to some kind of external switch. The switch could for example be a relay or micro-switch. If the two wires of a pair are shorted together by closing the switch the value of this object will be 'closed'. If the switch is open then the value of this object is 'open'. The MSH can be configured to generate an SNMP trap if the state of this object changes." ::= { statusInputTableEntry 2 } statusTrapEnable OBJECT-TYPE SYNTAX INTEGER { enable (1), disable (2) } ACCESS read-write STATUS mandatory DESCRIPTION " By setting the value of this object to enable, the MSH will monitor the value of statusInputState for changes. If a change from open to close or from close to open occurs then an SNMP trap is generated. Note that the value of the object is de-bounced by the agent to prevent multiple closures of a 'bouncing' relay causing multiple SNMP traps!" ::= { statusInputTableEntry 3 } statusName OBJECT-TYPE SYNTAX DisplayString ACCESS read-write STATUS mandatory DESCRIPTION " This is a writable string associated with one of the status inputs. By default the string will initialise to 'Status Input #x' where x is 1, 2, 3 or 4. The user can choose to write a more descriptive string to this object that better describes the use of a particular input. For example if input line 2 is connected to a switch which changes state when a cabinet is opened or closed then the statusName may be set to 'Door Status ' The value of this object is sent to attached management stations in the state change trap." ::= { statusInputTableEntry 4 } -- *************************************************************************** -- MSH Shared MAC Control Table. -- *************************************************************************** chassisMgmtMACTable OBJECT-TYPE SYNTAX SEQUENCE OF ChassisMgmtMACEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " The chassis management card contains an 802.3 MAC and physical layer that can be used for management traffic. In some situations this interface may be inappropriate. For example in a Token Ring only environment it is appropriate to transmit management traffic directly onto the token ring network. The MSH chassis provides the ability for the management card to use either

its own MAC or There may be a the management available MACs use.

to share the MAC provided by another card in the chassis. number of MACs available at any particular time from which card can choose. This table provides a summary of the and allows the manager to select one of those for current

Note: The table also includes the MAC actually present on the management card!" ::= { misc 3 } chassisMgmtMACEntry OBJECT-TYPE SYNTAX ChassisMgmtMACEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This entry describes the abilities and the state of one of the MACs available for management use in the chassis." INDEX { macSlotNumber, macIndex } ::= { chassisMgmtMACTable 1 } ChassisMgmtMACEntry ::= SEQUENCE { macSlotNumber INTEGER, macIndex INTEGER, macBroadcastAvailable INTEGER, macLSAPFiltering INTEGER, macTypeFiltering INTEGER, macMaxPDUsize INTEGER, macPhyAddress OCTET STRING, macStatus INTEGER } macSlotNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Index into the table. This is identifies the card on which the MAC that this conceptual row describes." ::= { chassisMgmtMACEntry 1 } macIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " Index into the table. This object distinguishes the MAC described by this row in the conceptual table from the potentially many MACs supported by this card." ::= { chassisMgmtMACEntry 2 } macBroadcastAvailable SYNTAX OBJECT-TYPE INTEGER { true (1), false (2) } ACCESS read-only STATUS mandatory DESCRIPTION " This is an informational field. It describes the capability of the MAC represented by this conceptual row to receive and transmit a

'broadcast' packet. Note that the transmit and receive SNMP frames. with insufficient capability that ::= { chassisMgmtMACEntry macLSAPFiltering SYNTAX

shared MAC is currently used to If an attempt is made to use a MAC request will be rejected." 3 }

OBJECT-TYPE INTEGER { true (1), false (2) } ACCESS read-only STATUS mandatory DESCRIPTION " This is an informational field. It describes the capability of the MAC represented by this conceptual row to directly filter packets based on the contents of the LSAP field locally to that card. This can improve performance but is not required for protocol operation. The management card will automatically make best use of this feature if present." ::= { chassisMgmtMACEntry 4 } macTypeFiltering OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is an informational field. It describes the capability of the MAC represented by this conceptual row to directly filter packets based on type field locally to that card. The type field is held in a SNAP header in IEEE networks or in the Ethernet type field. This can improve performance but is not required for protocol operation. The management card will automatically make best use of this feature if present." ::= { chassisMgmtMACEntry 5 } macMaxPDUsize OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is an informational field. It indicates the maximum number of data octets that can be transmitted or received using the shared MAC. When used for SNMP it is likely that a larger PDU size will increase the performance of some management operations. Note that a minimum size of 474 octets is required for SNMPv1" ::= { chassisMgmtMACEntry 6 } macPhyAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-only STATUS mandatory DESCRIPTION "The physical MAC address of this specific MAC." ::= { chassisMgmtMACEntry 7 } macStatus OBJECT-TYPE SYNTAX INTEGER { available unavailable snmpMac } ACCESS read-write

(1), (2), (3)

STATUS mandatory DESCRIPTION " This object is used to enable or disable a shared MAC for SNMP protocol usage. Note that if a shared MAC has insufficient capabilities to run the SNMP stack then an attempt to set the status to active will fail. This object has three values: available, unavailable and snmpMac. The meaning of each of these is: available: unavailable: This MAC is currently available to run SNMP on behalf of the management card. MAC cannot be selected to carry SNMP on behalf of the management card. The MAC may be in this state for a number of reasons. Examples are insufficient resource on the card, shared MAC already in use for something other than SNMP. This MAC is currently being used as the physical interface for management card SNMP traffic.

snmpMac:

To select a MAC write snmpMac to this object. If the MAC is suitable and available then the current snmpMac will become unavailable and the selected MAC will become available." ::= { chassisMgmtMACEntry 8 } -- *************************************************************************** -- MSH LED Control Table. -- *************************************************************************** chassisLedTable OBJECT-TYPE SYNTAX SEQUENCE OF ChassisLedEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains configuration information for each of the card specific LEDs on the front panel module. There is one LED for each card location." ::= { misc 4 } chassisLedEntry OBJECT-TYPE SYNTAX ChassisLedEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This entry describes the abilities and the state of one of the MACs available for management use in the chassis." INDEX { chassisSlotNumber } ::= { chassisLedTable 1 } ChassisLedEntry ::= SEQUENCE { chassisSlotNumber INTEGER, chassisLedColour INTEGER, chassisAttentionState INTEGER } chassisSlotNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Identifies which LED this row describes. " ::= { chassisLedEntry 1 } chassisLedColour OBJECT-TYPE

INTEGER { off (1), green (2), red (3) } ACCESS read-only STATUS mandatory DESCRIPTION "Read the current colour of the LED. This is intended for use by FullView type applications." ::= { chassisLedEntry 2 } chassisAttentionState SYNTAX OBJECT-TYPE INTEGER { ok (1), attention (2)

SYNTAX

} ACCESS read-write STATUS mandatory DESCRIPTION "Writing 'attention' to this object will cause the LED above that card to become RED. This is intended to be used to aid maintenance of a large system." ::= { chassisLedEntry 3 } -- ********************************************************************** -- MSH Fault Log. -- ********************************************************************** mshFaultModifiedFlag OBJECT-TYPE SYNTAX INTEGER { clean-read (1), modified (2) } ACCESS read-write STATUS deprecated DESCRIPTION "In order to ensure a clean read of the Fault ta ble this flag should be set to clean_read when commencing to r ead the table and should be examined after reading the entire table. If s till set to clean_read then the table read is okay, if not the table sh ould be re-read as it has been modified during the read process." ::= { mshFault 1 } mshFaultTable OBJECT-TYPE SYNTAX SEQUENCE OF MshFaultEntry ACCESS not-accessible STATUS deprecated DESCRIPTION "The Fault Table." ::= { mshFault 2 } OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION MshFaultEntry not-accessible deprecated

mshFaultEntry

"Information relating to a single fault." INDEX { mshFaultIndex } ::= { mshFaultTable 1 } MshFaultEntry ::= SEQUENCE { mshFaultIndex mshFaultErrorNumber mshFaultTimeStamp mshFaultRestartCount } mshFaultIndex OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION "The index into INTEGER read-only deprecated the Fault table. The initial re INTEGER, INTEGER, TimeTicks, INTEGER

ad from the table should be read as the next, from an index of 0; subsequent reads should read the next from the i ndex returned by the previous read." ::= { mshFaultEntry 1 } mshFaultErrorNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS deprecated DESCRIPTION "This error number for this fault log entry." ::= { mshFaultEntry 2 } OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION "The time since occurred." ::= { mshFaultEntry 3 } mshFaultRestartCount OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS deprecated DESCRIPTION "The number of restarts at time of fault." ::= { mshFaultEntry 4 } TimeTicks read-only deprecated startup, in milliseconds, when t

mshFaultTimeStamp

he fault

-- ********************************************************************** -- MSH Specific TRAPS. -- ********************************************************************** -- Assigned tempStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { tempSensorOutput } DESCRIPTION " Mounted on the Management card is a temperature sensing device. This device

provides three output levels : OK, WARM and DANGER. DANGER causes a trap to be generated." ::= 34 -- Assigned statusInputStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { statusInputState, statusName } DESCRIPTION " Sent when the state of one of the management card status inputs changes from open to close or vice-versa and the value of statusTrapEnable is 'enable'" ::= 35 -- -----------------------------------------------------------------------------Novell's IPX MIB -- -----------------------------------------------------------------------------------------------------This MIB defines the management information for a system using the IPX protocol. The MIB consists of four groups: 1. System Group - contains general information about all instances of IPX on the system 2. Circuit Group - contains information about all circuits used by IPX on the system 3. Forwarding Group - contains generic routing information that must be provided by any IPX routing protocol. 4. Services Group - contains information about all known services. The MIB is designed to support multiple instances of the IPX protocol on one system via a system instance identifier which is the primary index for every table in this MIB. This MIB is designed to provide a basic framework for the management of systems implementing the IPX protocol. Additional MIBs may be created (especially in the area of IPX routing protocols) to contain more specific information. Whenever possible, these additional MIBs should follow the format of this IPX MIB. Information in these MIBs should be linked to this MIB via the use of the system instance identifier mentioned above.

novell OBJECT IDENTIFIER ::= { enterprises 23 } mibDoc OBJECT IDENTIFIER ::= { novell 2 } ipx OBJECT IDENTIFIER ::= { mibDoc 5 } -- Groups ipxSystem OBJECT IDENTIFIER ::= {ipx 1} ipxCircuit OBJECT IDENTIFIER ::= {ipx 2} ipxForwarding OBJECT IDENTIFIER ::= {ipx 3} ipxServices OBJECT IDENTIFIER ::= {ipx 4} ipxTraps OBJECT IDENTIFIER ::= {ipx 5} -- Types -- NetNumber ::= OCTET STRING (SIZE(4)) -- System Group

---

This group contains global information about each instance of IPX running on one system.

-- Basic System Table -- This table contains one entry for each instance of IPX running on -- the system. It contains the management information that should -- be made available by all implementations of the IPX protocol. ipxBasicSysTable OBJECT-TYPE SYNTAX SEQUENCE OF IpxBasicSysEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The IPX System Table - basic information." ::= { ipxSystem 1 } ipxBasicSysEntry OBJECT-TYPE SYNTAX IpxBasicSysEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Each entry corresponds to one instance of IPX running on the system." INDEX { ipxBasicSysInstance } ::= { ipxBasicSysTable 1 } IpxBasicSysEntry ::= SEQUENCE { ipxBasicSysInstance INTEGER, ipxBasicSysExistState INTEGER, ipxBasicSysNetNumber OCTET STRING, ipxBasicSysNode OCTET STRING, ipxBasicSysName OCTET STRING, ipxBasicSysInReceives Counter, ipxBasicSysInHdrErrors Counter, ipxBasicSysInUnknownSockets Counter, ipxBasicSysInDiscards Counter, ipxBasicSysInBadChecksums Counter, ipxBasicSysInDelivers Counter, ipxBasicSysNoRoutes Counter, ipxBasicSysOutRequests Counter, ipxBasicSysOutMalformedRequests Counter, ipxBasicSysOutDiscards Counter, ipxBasicSysOutPackets Counter, ipxBasicSysConfigSockets INTEGER,

ipxBasicSysOpenSocketFails Counter } ipxBasicSysInstance OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The unique identifier of the instance of IPX to which this row corresponds. This value may be written only when creating a new entry in the table." ::= { ipxBasicSysEntry 1 } ipxBasicSysExistState OBJECT-TYPE SYNTAX INTEGER { off(1), on(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The validity of this entry in the IPX system table. Setting this field to off indicates that this entry may be deleted from the system table at the IPX implementation's discretion." ::= { ipxBasicSysEntry 2 } ipxBasicSysNetNumber OBJECT-TYPE SYNTAX OCTET STRING (SIZE(4)) ACCESS read-write STATUS mandatory DESCRIPTION "The network number portion of the IPX address of this system." ::= { ipxBasicSysEntry 3 } ipxBasicSysNode OBJECT-TYPE SYNTAX OCTET STRING (SIZE(6)) ACCESS read-write STATUS mandatory DESCRIPTION "The node number portion of the IPX address of this system." ::= { ipxBasicSysEntry 4 } ipxBasicSysName OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..48)) ACCESS read-write STATUS mandatory DESCRIPTION "The readable name for this system." ::= { ipxBasicSysEntry 5 } ipxBasicSysInReceives OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of IPX packets received, including those received in error." ::= { ipxBasicSysEntry 6 } ipxBasicSysInHdrErrors OBJECT-TYPE

SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX packets discarded due to errors in their headers, including any IPX packets with a size less than the minimum of 30 bytes." ::= { ipxBasicSysEntry 7 } ipxBasicSysInUnknownSockets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX packets discarded because the destination socket was not open." ::= { ipxBasicSysEntry 8 } ipxBasicSysInDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX packets received but discarded due to reasons other than those accounted for by ipxBasicSysInHdrErrors, ipxBasicSysInUnknownSockets, ipxAdvSysInDiscards, and ipxAdvSysInCompressDiscards." ::= { ipxBasicSysEntry 9 } ipxBasicSysInBadChecksums OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX packets received with incorrect checksums." ::= { ipxBasicSysEntry 10 } ipxBasicSysInDelivers OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of IPX packets delivered locally, including packets from local applications." ::= { ipxBasicSysEntry 11 } ipxBasicSysNoRoutes OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of times no route to a destination was found." ::= { ipxBasicSysEntry 12 } ipxBasicSysOutRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX packets supplied locally for

transmission, not including any packets counted in ipxAdvForwPackets." ::= { ipxBasicSysEntry 13 } ipxBasicSysOutMalformedRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX packets supplied locally that contained errors in their structure." ::= { ipxBasicSysEntry 14 } ipxBasicSysOutDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of outgoing IPX packets discarded due to reasons other than those accounted for in ipxBasicSysOutMalformedDiscards, ipxAdvSysOutFiltered, and ipxAdvSysOutCompressDiscards." ::= { ipxBasicSysEntry 15 } ipxBasicSysOutPackets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of IPX packets transmitted." ::= { ipxBasicSysEntry 16 } ipxBasicSysConfigSockets OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The configured maximum number of IPX sockets that may be open at one time." ::= { ipxBasicSysEntry 17 } ipxBasicSysOpenSocketFails OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX socket open calls which failed." ::= { ipxBasicSysEntry 18 } -- Advanced System Group -This table contains one entry for each instance of IPX running on -the system. It contains the advanced management information that` -may not be available from all implementations. ipxAdvSysTable OBJECT-TYPE SYNTAX SEQUENCE OF IpxAdvSysEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The IPX System Table - advanced information."

::= { ipxSystem 2 } ipxAdvSysEntry OBJECT-TYPE SYNTAX IpxAdvSysEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Each entry corresponds to one instance of IPX running on the system." INDEX { ipxAdvSysInstance } ::= { ipxAdvSysTable 1 } IpxAdvSysEntry ::= SEQUENCE { ipxAdvSysInstance ipxAdvSysMaxPathSplits ipxAdvSysMaxHops ipxAdvSysTooManyHops ipxAdvSysInFiltered ipxAdvSysCompressDiscards ipxAdvSysNETBIOSPackets ipxAdvSysForwPackets ipxAdvSysOutFiltered ipxAdvSysOutCompressDiscards ipxAdvSysCircCount ipxAdvSysDestCount ipxAdvSysServCount } INTEGER, INTEGER, INTEGER, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter

ipxAdvSysInstance OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The unique identifer of the instance of IPX to which this row corresponds. This value may be written only when creating a new entry in the table." ::= { ipxAdvSysEntry 1 } ipxAdvSysMaxPathSplits OBJECT-TYPE SYNTAX INTEGER (1..32) ACCESS read-write STATUS mandatory DESCRIPTION "The maximum number of paths with equal routing metric value which this instance of the IPX my split between when forwarding packets." DEFVAL { 1 } ::= { ipxAdvSysEntry 2 } ipxAdvSysMaxHops OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The maximum number of hops a packet may take." DEFVAL { 64 } ::= { ipxAdvSysEntry 3 } ipxAdvSysTooManyHops OBJECT-TYPE SYNTAX Counter ACCESS read-only

STATUS mandatory DESCRIPTION "The number of IPX packets discarded due to exceeding the maximum hop count." ::= { ipxAdvSysEntry 4 } ipxAdvSysInFiltered OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of incoming IPX packets discarded due to filtering." ::= { ipxAdvSysEntry 5 } ipxAdvSysCompressDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of incoming IPX packets discarded due to decompression errors." ::= { ipxAdvSysEntry 6 } ipxAdvSysNETBIOSPackets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of NETBIOS packets received." ::= { ipxAdvSysEntry 7 } ipxAdvSysForwPackets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of IPX packets forwarded." ::= { ipxAdvSysEntry 8 } ipxAdvSysOutFiltered OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of outgoing IPX packets discarded due to filtering." ::= { ipxAdvSysEntry 9 } ipxAdvSysOutCompressDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of outgoing IPX packets discarded due to compression errors." ::= { ipxAdvSysEntry 10 } ipxAdvSysCircCount OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory

DESCRIPTION "The number of circuits known to this instance of IPX." ::= { ipxAdvSysEntry 11 } ipxAdvSysDestCount OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of currently reachable destinations known to this instance of IPX." ::= { ipxAdvSysEntry 12 } ipxAdvSysServCount OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of services known to this instance of IPX." ::= { ipxAdvSysEntry 13 } -- Circuit Group -This group contains management information for each circuit known -to this system. -- Circuit Table -The Circuit table contains an entry for each circuit known to the -system. -- The Circuit group is not relevant to this device, and so is not presented her e. -- Forwarding Group -This group provides a representation of the forwarding database used -by all instances of IPX on the system. -- Destination Table -The Destination table contains information about all known -destinations. The routing information shown in this table represents -the path currently being used to reach the destination. -- Static Routes Table -This table contains the information about all the static routes -defined. There may be more than one static route to any given -destination. Only the route currently being used will also be -present in the Destination Table defined above. -- The Forwarding group is not relevant to this device, and so is not presented here. -- Services Group -The Services group contains management information for all known -services. -- Services Table -This table contains the services information indexed by service -name and type. -- Destination Services Table -This table contains the services information indexed by address,

--

name, and type.

-- Static Services Table -This table contains information for all services reached via a -static route. -- The Services group is not relevant to this device, and so is not presented he re. -- Traps Group -This group describes the traps defined for IPX. -- The Trap group is not relevant to this device, and so is not presented here. -- End of Novell's IPX MIB. -- **************************************************************************** -- RESILIENCE -- **************************************************************************** resTable OBJECT-TYPE SYNTAX SEQUENCE OF ResTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" ::= { mrmResilience 1 } resTableEntry OBJECT-TYPE SYNTAX ResTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " An MSH may be configured to contain a number of 'resilient pairs'. These are 802.3 point to point connections, e.g. UTP, that allow two repeaters to be connected together in a resilient configuration. In such a configuration one of the two ports is nominated the 'main' port while the other is the 'standby' port. One of these two ports is enabled and is the current active port. The other is present in case of failure of the active port. Such a failure is detected by the MSH and a switch performed. There are a couple of rules that must apply to a resilient pair definition before that definition becomes a valid resilient pair. Firstly both ports must be on the same repeater. Secondly the standby port must be configured to be 'disabled on boot'. That is it must recover from a power failure in a disabled state. This prevents loops in the network. Several tables control the resilient repeater configuration for the MSH. This is the first. This is the main table and allows the creation and deletion of pairs and provides status control and information. The information in this table is indexed on the repeater number and the slot/port location of the main port. To create a new resilient pair simply write any writeable object indexed on the main port. This will create a new entry in the table which has the state 'invalid' (read resPairState). Having created the row, write to the other parameters specifying valid information. When all the parameters are valid the resPairState will become 'operational'. In this state the pair will correctl y operate as a resilient pair. If any of the attributes in the table change so that the pair in no linger valid this will be reflected in the resPortState parameter.

To delete a resilient pair, write 'delete' to resPairAction." INDEX { resRepeater, resMainSlot, resMainPort } ::= { resTable 1 } ResTableEntry ::= SEQUENCE { resRepeater resMainSlot resMainPort resMainState resStandbySlot resStandbyPort resStandbyState resPairState resPairModificationStatus resPairAction resPairEnable } resRepeater OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " A resilient pair must be attached to one of the repeaters in the chassis. This is part of the index value required to access this table." ::= { resTableEntry 1 } resMainSlot OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is the second key in the index to this table. This is the slot number of the main port in this pair." ::= { resTableEntry 2 } resMainPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is the final, key used to index entries in this table. It is the port number of the main port in the pair." ::= { resTableEntry 3 } resMainState OBJECT-TYPE SYNTAX INTEGER { failed (1), ok(2), ok-and-active(3) } ACCESS read-only STATUS mandatory DESCRIPTION " Each port in a pair is constantly monitored for signs of failure. Failure information is used to automatically change the active port from main to standby or vice-versa. Each port may be in one of three states. Failed indicates there is a loss of signal on this port. A port in this state cannot be active. Secondly OK. This state indicates that the port is capable of carrying traffic but is at the moment acting in the role of backup link. INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER

The other port in this pair will be in the OK and Active state. OK and Active means what it says, this port is capable of carrying traffic and is so doing at the time this parameter has been read." ::= { resTableEntry 4 } resStandbySlot OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION " This is the slot number of the standby port for this pair. The port must be present on the same repeater as the main port and so this information is not duplicated." ::= { resTableEntry 5 } resStandbyPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This is the port number of the standby port." ::= { resTableEntry 6 } resStandbyState OBJECT-TYPE SYNTAX INTEGER { failed (1), ok(2), ok-and-active(3) } ACCESS read-only STATUS mandatory DESCRIPTION " Each port in a pair is constantly monitored for signs of failure. Failure information is used to automatically change the active port from main to standby or vice-versa. Each port may be in one of three states. Failed indicates there is a loss of signal on this port. A port in this state cannot be active. Secondly OK. This state indicates that the port is capable of carrying traffic but is at the moment acting in the role of backup link. The other port in this pair will be in the OK and Active state. OK and Active means what it says, this port is capable of carrying traffic and is so doing at the time this parameter has been read." ::= { resTableEntry 7 } resPairState OBJECT-TYPE SYNTAX INTEGER { invalid (1), operational (2) } ACCESS read-only STATUS mandatory DESCRIPTION " Each row in the table is in one of two states, 'invalid' or 'operational'. If the state is 'invalid', the resilient pair represented by this row is not active. There are several reasons why this may be the case. Firstly during the row creation process, not all information necessary may have been provided. Secondly an operational pair may become invalid because the resilient pair rules are no longer met because of a change in the MSH configuration. The rules are that both main and standby ports be on the same repeater and that the standby port be 'disable on boot'. Changing the standby card, moving one of the cards to a different repeater are two possible changes that can invalidate a pair configration. If the parameters in the row are all valid then the pair becomes

'operational'." ::= { resTableEntry 8 } resPairModificationStatus OBJECT-TYPE SYNTAX INTEGER { under-modification (1), stable (2) } ACCESS read-write STATUS mandatory DESCRIPTION " This parameter must be set to under-modification before any changes are made to an existing configuration. Changes are not applied until this parameter is set to stable. " ::= { resTableEntry 9 } resPairAction OBJECT-TYPE SYNTAX INTEGER { create (1), delete (2), togglePort (3) } ACCESS write-only STATUS mandatory DESCRIPTION " This is object allows the state of a resilient pair to be modified. The create operation configures the resilient port from this table entry. The delete operation removes the resilient definitions from this table and terminates operation of resilience on this pair of ports. The togglePort operation allows the current active port to be changed to the other port. This second operation will only take affect if the state of the currently non-active port is 'OK'." ::= { resTableEntry 10 } resPairEnable OBJECT-TYPE SYNTAX INTEGER { enable (1), disable (2) } ACCESS read-write STATUS mandatory DESCRIPTION " This parameter controls whether the resilient pair is enabled or not. In the disabled state , both ports of the resilient pair are disabled. The default value of this parameter is enable " ::= { resTableEntry 11 } -- ********************************************************************** -- ********************************************************************** -- resilient standby mapping table. -- ********************************************************************** resStandbyMapTable OBJECT-TYPE SYNTAX SEQUENCE OF ResStandbyMapTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" ::= { mrmResilience 2 }

resStandbyMapTableEntry OBJECT-TYPE SYNTAX ResStandbyMapTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This table is read-only. If provides shortcut information to allow for the translation of a port number to a corresponding main port number. This value can then be used to access the main resilience table. Each resilient pair has two entries in this table, one for the main port and one for the standby port. The entry for the main port returns the same port, the entry for the standby port returns the corresponding main port." INDEX { resSbRepeater, resSbSlot, resSbPort } ::= { resStandbyMapTable 1 } ResStandbyMapTableEntry ::= SEQUENCE { resSbRepeater INTEGER, resSbSlot INTEGER, resSbPort INTEGER, resSbType INTEGER, resSbMainSlot INTEGER, resSbMainPort INTEGER } resSbRepeater OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " The repeater index of the port being accessed. This is the first of three indices on this table." ::= { resStandbyMapTableEntry 1 } resSbSlot OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Second index on this table." ::= { resStandbyMapTableEntry 2 } resSbPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Third index on this table." ::= { resStandbyMapTableEntry 3 } resSbType OBJECT-TYPE SYNTAX INTEGER { main (1), standby (2) } ACCESS read-only STATUS mandatory DESCRIPTION " This attribute specifies whether the port indexed is a main or standby port in the resilient pair table. If the port is neither then there will not be a

row in this table indexed for that port." ::= { resStandbyMapTableEntry 4 } resSbMainSlot OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is the slot number of the main port for the pair in which the indexed port participates. NOTE if the index port is the main port of a pair (resSbType is 'main') this value will be the same as the index." ::= { resStandbyMapTableEntry 5 } resSbMainPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is the port number of the main port for the pair in which the indexed port participates. NOTE if the index port is the main port of a pair (resSbType is 'main') this value will be the same as the index." ::= { resStandbyMapTableEntry 6 } resFlushTable OBJECT-TYPE SYNTAX INTEGER ACCESS write-only STATUS mandatory DESCRIPTION " This parameter causes all entries in the resilience table to be flushed. Flushing the resilience table does not affect the state of any of the resilient links or ports. Once the table has been flushed , NO resilient links are configured. This parameter is used to ensure that the resilient link table is empty , before new resilient links are configured." ::= { mrmResilience 3 } -- ********************************************************************** -- Some traps generated by the resilience engine. -- ********************************************************************** resResilienceSwitch TRAP-TYPE ENTERPRISE a3Com VARIABLES { resMainState, resStandbyState } DESCRIPTION " This trap is generated when a change of state of one of the ports in a resilient pair does not result in a switch of active port. If such a switch were to occur the resResilienceSwitch would be generated. Generation of this trap is summarised in the following table: -----------------------------------------------------------------------------State | Event Main Backup |Main Fail |Main OK |StandBy Fail |Standby OK -----------------------------------------------------------------------------Active OK | switch | ----| state | ----Active Fail | state | ----| ----| state OK Active | state | ----| switch | ----Fail Active | ----| state | state | ----Fail Fail | ----| switch | ----| state ----------------------------------------------------------------------------In this table '-----' indicates no trap is sent. 'switch' indicates the

resResilienceSwitch trap is sent and 'state' indicates resStateChange is sent. NOTE: The agent in the MSH does not suppress any traps that caused the state change. For example if the active link is lost then both a 'loss-of-link' trap AND a resilienceSwitch trap are generated." ::= 43 resStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { resMainState, resStandbyState } DESCRIPTION " This trap is generated when a change of state of one of the ports in a resilient pair does not result in a switch of active port. If such a switch were to occur the resResilienceSwitch would be generated. Generation of this trap is summarised in the following table: -----------------------------------------------------------------------------State | Event Main Backup |Main Fail |Main OK |StandBy Fail |Standby OK -----------------------------------------------------------------------------Active OK | switch | ----| state | ----Active Fail | state | ----| ----| state OK Active | state | ----| switch | ----Fail Active | ----| state | state | ----Fail Fail | ----| switch | ----| state ----------------------------------------------------------------------------In this table '-----' indicates no trap is sent. 'switch' indicates the resResilienceSwitch trap is sent and 'state' indicates resStateChange is sent. NOTE: The agent in the MSH does not suppress any traps that caused the state change. For example if the active link is lost then both a 'loss-of-link' trap AND a resilienceSwitch trap are generated." ::= 44 --------------------------------------------------------------------------- This is a 3Com generic token ring MIB. The MIB contains non product -- specific Token Ring information. Much of this information is part of -- the standard IBM ring server functionality. --- This MIB in intended to be comprehensive, although most devices will -- not support all objects. The device MIB for a particular device -- should not include those objects it cannot support. --------------------------------------------------------------------------a3ComRingParams OBJECT IDENTIFIER ::= { tokenRing 1 } a3ComRingStationParams OBJECT IDENTIFIER ::= { tokenRing 2 } ----------------------------------------------------------------------------Start of --Ring Parameters ----- This group contains global ring information. --------------------------------------------------------------------------- ********************************************************************** -- Ring Configuration Table

-- ********************************************************************** a3ComRingConfig OBJECT-TYPE SYNTAX SEQUENCE OF A3ComRingConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains information about the ring configuration, such as ring speed and wrap state." ::= { a3ComRingParams 1 } a3ComRingConfigEntry OBJECT-TYPE SYNTAX A3ComRingConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This row contains information about a specific ring" INDEX { a3ComRingConfigServiceId } ::= { a3ComRingConfig 1 } A3ComRingConfigEntry ::= SEQUENCE { a3ComRingConfigServiceId a3ComRingNumber a3ComRingSpeed a3ComRingState a3ComRingBackupState a3ComRingWrapState a3ComRingMapChanged a3ComRingMapChangeTime a3ComRingAction } INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, TimeTicks, INTEGER

a3ComRingConfigServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This parameter is used to select information about the ring from one of a number of logical devices within the same chassis. For devices that only contain a single device this index will be one (1)." ::= { a3ComRingConfigEntry 1 } -- NOTE: -- For a particular device the ACCESS for this object may be read-only or -- read-write. a3ComRingNumber OBJECT-TYPE SYNTAX INTEGER (0..4095) ACCESS read-only STATUS mandatory DESCRIPTION "Each ring has a ring number. This is only relevant in the case of a bridged network. When there are multiple bridged token ring segments the ring number is used to determine routing information through the network. If the device knows this information then it appears in this object. If the device is an active ring parameter server then this can be used to assign ring numbers to the ring. If the device is not a ring parameter server then a write request is ignored."

::= { a3ComRingConfigEntry 2 } -- NOTE: -- For a particular device the ACCESS for this object may be read or -- read-write. a3ComRingSpeed OBJECT-TYPE SYNTAX INTEGER { unknown (1), s1MegaBPS (2), s4MegaBPS (3), s16MegaBPS (4) } ACCESS read-only STATUS mandatory DESCRIPTION "Token ring standards currently exist for 4 Mbps and 16 Mbps operation. This parameter reports the actual speed of the ring to the parent. If a device cannot determine the speed of the ring the value of this parameter will be 'unknown'." ::= { a3ComRingConfigEntry 3 } a3ComRingState OBJECT-TYPE SYNTAX INTEGER { notAvailable (1), normal (2), beacon (3), soft-error (4), fault (5) } ACCESS read-only STATUS mandatory DESCRIPTION "This object reflects the operational mode of the main ring. The ring is either in 'normal' or some error state. In this list the highest numbered error 'wins'. The meaning of the various states is as follows: beacon: This is determined by listening for beacon frames on the network. soft-error: This indicates a high rate of soft errors with respect to the amount of traffic on the ring. For this state to appear requires that the device be able to monitor this error rate. fault: This device has detected a serious ring fault. The fault may have been patched by this device looping a main ring onto a backup ring. This state is used to indicate that the ring is in error and that the topology of the ring, as reported by any station on the ring, is NOT a reliable reflection of the normal topology. If a logical device is incapable of determining the state of the ring, this parameter will have value 'notAvailable'." ::= { a3ComRingConfigEntry 4 } a3ComRingBackupState OBJECT-TYPE SYNTAX INTEGER {

notAvailable normal beacon soft-error fault

(1), (2), (3), (4), (5)

} ACCESS read-only STATUS mandatory DESCRIPTION "This object reflects the operational mode of the backup ring. The ring is either in 'normal' or some error state. In this list the highest numbered error 'wins'. The meaning of the various states is as follows: beacon: This can be determined by listening for beacon frames on the network. soft-error: This indicates a high rate of soft errors with respect to the amount of traffic on the ring. For this state to appear requires that the device be able to monitor this error rate. fault: This device has detected a serious ring fault. The fault may have been patched by this device looping a main ring onto a backup ring. This state is used to indicate that the ring is in error and that the topology of the ring, as reported by any station on the ring, is NOT a reliable reflection of the normal topology. If a logical device is incapable of determining the state of the ring, this parameter will have value 'notAvailable'." ::= { a3ComRingConfigEntry 5 } a3ComRingWrapState OBJECT-TYPE SYNTAX INTEGER { ringNotWrapped (1), ringWrapped (2), notAvailable (3) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates whether or not the main and backup rings are wrapped together. If the ring is wrapped it does not necessarily mean that it is wrapped at this ring builder, but may be at some other ring builder, an IBM CAU, or some other device with dual ring capabilities. If a logical device is incapable of determining whether the main and backup rings are wrapped, this parameter will have value 'notAvailable'." ::= { a3ComRingConfigEntry 6 } a3ComRingMapChanged OBJECT-TYPE SYNTAX INTEGER { true (1), false (2) }

ACCESS read-write STATUS mandatory DESCRIPTION "If the ring topology changes, because end stations join or leave the ring, a trap is generated and this variable is set to `true'. If the topology changes again and this variable is already true, no further trap is generated. By examining a3ComRingMapChangeTime a management station can determine when the ring has become stable for a reasonable time and then set this variable back to `false' again, after which another topology change will generate a trap." ::= { a3ComRingConfigEntry 7 } a3ComRingMapChangeTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "This is the value of sysUpTime when the ring topology changed last, irrespective of whether or not a trap was generated." ::= { a3ComRingConfigEntry 8 } a3ComRingAction OBJECT-TYPE SYNTAX INTEGER { noAction(1), clearRingCounters(2), clearAllCounters(3) } ACCESS read-write STATUS mandatory DESCRIPTION "Setting this object to clearRingCounters(2) causes all the counters in this table to be reset to zero. Alternatively, clearAllcounters(3) causes all the ring station statistics (table a3ComRingStat) to be cleared as well. Setting this variable to noAction(1) has no effect. The agent will always return the value noAction(1) when this variable is read." ::= { a3ComRingConfigEntry 9 } -- ********************************************************************** -- Standard Token Ring statistics -- ********************************************************************** a3ComRingStdStats OBJECT-TYPE SYNTAX SEQUENCE OF A3ComRingStdStats ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains an entry per ring device within the physical device supporting this MIB. Two entries may refer to the same physical ring if two logical devices are on the same ring." ::= { a3ComRingParams 2 } a3ComRingStdStatsEntry SYNTAX ACCESS STATUS DESCRIPTION OBJECT-TYPE A3ComRingStdStats not-accessible mandatory

"This row contains statistics about a ring" INDEX { a3ComRingStdStatsServiceId } ::= { a3ComRingStdStats 1 } A3ComRingStdStats ::= SEQUENCE { a3ComRingStdStatsServiceId a3ComRingBeaconCount a3ComRingSoftErrors a3ComRingActiveMonitorChanges } INTEGER, Counter, Counter, Counter

a3ComRingStdStatsServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This parameter is used to select information about the ring from one of a number of logical devices within the same chassis. For devices that only contain a single device this index will be one (1)." ::= { a3ComRingStdStatsEntry 1 } a3ComRingBeaconCount OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This object counts the number of ring state transitions from normal operation to beacon mode. The higher the rate of transitions the worse the reliability of the network. A gauge can be applied to this variable to measure the reliability of the ring." ::= { a3ComRingStdStatsEntry 2 } -- 3Com Internal Note: -- If a particular device cannot support this counter, it should be -- removed from the published MIB for that device. a3ComRingSoftErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This is the total number of isolating soft errors reported by stations on the ring. If the rate of soft errors becomes high this is a good indicator of a faulty ring." ::= { a3ComRingStdStatsEntry 3 } -- 3Com Internal Note: -- If a particular device cannot support this counter, it should be -- removed from the published MIB for that device. a3ComRingActiveMonitorChanges OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "Every operational ring has exactly one active monitor. Due to errors it is possible that one of the standby monitors may fail to hear from the active monitor and attempt to become the active monitor itself. If this happens frequently it indicates a problem with the network.

It is recommended that a local gauge be attached to this parameter to allow local monitoring of error conditions." ::= { a3ComRingStdStatsEntry 4 } -- ********************************************************************** -- Topology Table. -- This table contains information about the stations contained in the local -- ring segment at the particular time the table is read. --********************************************************************** a3ComRingTop OBJECT-TYPE SYNTAX SEQUENCE OF A3ComRingTopEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains an ordered list of addresses currently present on the token ring. The table should start from some known MAC on the managed device." ::= { a3ComRingParams 4 } a3ComRingTopEntry OBJECT-TYPE SYNTAX A3ComRingTopEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This row contains information about a specific station currently present on the token ring." INDEX { a3ComRingTopServiceId, a3ComRingTopIndex } ::= { a3ComRingTop 1 } A3ComRingTopEntry ::= SEQUENCE { a3ComRingTopServiceId a3ComRingTopIndex a3ComRingTopStationAddress a3ComRingTopMonitor } INTEGER, INTEGER, OCTET STRING, INTEGER

a3ComRingTopServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This parameter is used to select topology information from one of a number of logical devices within the same chassis. For devices that only contain a single device this index will be one (1)." ::= { a3ComRingTopEntry 1 } a3ComRingTopIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "All token ring managed devices must learn the ring topology. Each logical token device has a concept of the ring topology from it's position within the ring. For example an MSH ring builder learns the ordering of all stations on the ring in which it's local ring section resides. This object provides a unique index within the ring topology."

::= { a3ComRingTopEntry 2 } a3ComRingTopStationAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-only STATUS mandatory DESCRIPTION "This is the physical (MAC) address for the station at this position in the ring." ::= { a3ComRingTopEntry 3 } a3ComRingTopMonitor OBJECT-TYPE SYNTAX INTEGER { active-monitor (1), standby-monitor (2) } ACCESS read-only STATUS mandatory DESCRIPTION "Each token ring segment contains an active monitor. Any station can become the active monitor, this is determined by a special active monitor protocol. The active monitor is responsible for checking the validity of tokens and general ring house keeping. All stations that are NOT the active monitor are standby monitors. Each standby monitor checks that an active monitor is present and is ready to become the active monitor if necessary." ::= { a3ComRingTopEntry 4 } -- ********************************************************************** -- Ring Station Configuration Information -- ********************************************************************** a3ComRingStatConfig OBJECT-TYPE SYNTAX SEQUENCE OF A3ComRingStatConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains information about the configuration of stations on the ring. Stations are identified by their MAC address and the ring service identifier. NOTE: This table includes information about stations that have at some time been on the ring. The station need not be currently present on the ring. The only time entries should be automatically discarded from this table is to cope with insufficient resource for a new station. If a new station is detected that is not currently in this table and the table has reached it's capacity then some algorithm (e.g. least recently inserted) should be employed to remove a table row." ::= { a3ComRingStationParams 1 } a3ComRingStatConfigEntry OBJECT-TYPE SYNTAX A3ComRingStatConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This entry contains information about a specific ring station." INDEX { a3ComRingStatConfigServiceId, a3ComRingStatConfigAddre

ss } ::= { a3ComRingStatConfig 1 } A3ComRingStatConfigEntry ::= SEQUENCE { a3ComRingStatConfigServiceId INTEGER, a3ComRingStatConfigAddress PhysAddress, a3ComRingStatState INTEGER, a3ComRingStatLocation INTEGER, a3ComRingStatAction INTEGER } a3ComRingStatConfigServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This parameter is used to select topology information from one of a number of logical devices within the same chassis. For devices that only contain a single device this index will be one (1)." ::= { a3ComRingStatConfigEntry 1 } a3ComRingStatConfigAddress OBJECT-TYPE SYNTAX PhysAddress ACCESS read-only STATUS mandatory DESCRIPTION "This is the physical (MAC) address of this station. Information in this table is keyed on the address." ::= { a3ComRingStatConfigEntry 2 } a3ComRingStatState OBJECT-TYPE SYNTAX INTEGER { present (1), absent (2) } ACCESS read-only STATUS mandatory DESCRIPTION "This table includes information about stations that have at some time been present on the ring. A new entry is created in this table when a new station appears on the ring. If that station is subsequently removed then the entry in this table remains. This object indicates whether or not the station represented by this table entry is currently present on the ring." ::= { a3ComRingStatConfigEntry 3 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatLocation OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This is the token ring physical location parameter for the station." ::= { a3ComRingStatConfigEntry 4 }

a3ComRingStatAction OBJECT-TYPE SYNTAX INTEGER { noAction (1), removeStation (2), clearCounters (3), deleteEntry (4), forwardTest (5) } ACCESS read-write STATUS mandatory DESCRIPTION "This object allows actions to be performed either on the station or the entry in this table representing that station. Not every managed device will be capable of supporting all commands. Setting this variable to noAction(1) has no effect. The agent will always return the value noAction(1) when this variable is read. removeStation: Send a remove station request to the management station. clearCounters: All counters in this table entry are reset to zero. deleteEntry: Remove this entry from the table. This operation is only successful if the station represented by this entry is NOT currently active. forwardTest: This request causes the managed device to test the transmit and receive paths of this station. This is accomplished using the Transmit Forward MAC frame request. When the station test completes the managed device sends a test-response trap. This action only has an effect if the a3ComRingStatState is present." ::= { a3ComRingStatConfigEntry 5 } -- ********************************************************************** -Ring Station Information. -Station standard statistics. -- ********************************************************************** a3ComRingStatStandardStats OBJECT-TYPE SYNTAX SEQUENCE OF A3ComRingStatStdStatsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains station statistics. Stations are identified by their MAC address and the ring service identifier. NOTE: This table includes information about stations that have at some time been on the ring. The station need not be currently present on the ring. The only time entries should be automatically discarded from this table is to

cope with insufficient resource for a new station. If a new station is detected that is not currently in this table and the table has reached it's capacity then some algorithm (e.g. least recently inserted) should be employed to remove a table row." ::= { a3ComRingStationParams 2 } a3ComRingStatStdStatsEntry OBJECT-TYPE SYNTAX A3ComRingStatStdStatsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This entry contains information about a specific ring station." INDEX { a3ComRingStatStdStatsServiceId, a3ComRingStatStdSt atsAddress } ::= { a3ComRingStatStandardStats 1 } A3ComRingStatStdStatsEntry ::= SEQUENCE { a3ComRingStatStdStatsServiceId a3ComRingStatStdStatsAddress a3ComRingStatLineErrors a3ComRingStatInternalErrors a3ComRingStatBurstErrors a3ComRingStatMonitorErrors a3ComRingStatLostFrames a3ComRingStatFrameCopyErrors a3ComRingStatRxCongestion a3ComRingStatTokenErrors a3ComRingStatFreqErrors a3ComRingStatSoftErrors } INTEGER, PhysAddress, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter

a3ComRingStatStdStatsServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This parameter is used to select topology information from one of a number of logical devices within the same chassis. For devices that only contain a single device this index will be one (1)." ::= { a3ComRingStatStdStatsEntry 1 } a3ComRingStatStdStatsAddress OBJECT-TYPE SYNTAX PhysAddress ACCESS read-only STATUS mandatory DESCRIPTION "This is the physical (MAC) address of this station. Information in this table is keyed on the address." ::= { a3ComRingStatStdStatsEntry 2 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatLineErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION

"This object is the sum of Line Errors reported by the station. This is an Isolating error. This counter is incremented by a station when a frame or token is repeated by the station and an error bit in the frame is clear, but one of the following tests fails: A code violation occurs between the start and end of the packet; The Frame Check Sequence for a frame is incorrect. A station noticing this error sets the error bit in the packet and forwards to the next station. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and it's upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 3 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatInternalErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This object is incremented when a station detects a recoverable internal error. This can be used to detect a ring station that may be error prone. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and it's upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by

more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 4 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatBurstErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The token ring receiver portion of the station expects to see continuous signal transitions on the input. This counter is incremented if the station fails to see a transition for 5 half bit times. To prevent this error being recorded on subsequent stations the detecting station transmits idle after failing to detect a transition after 4 half bit times. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and it's upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 5 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatMonitorErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "A token ring always includes an active monitor station. Periodically this station initiates an active monitor poll by sending an Active Monitor Present MAC frame. Every frame on a token ring contains an Address Recognised bit and a Frame Copied bit. These are collectively known as the AC bits. When a station processes a frame it must set either or both of these bits. A station that simply forwards a frame to the next station sets neither bit. Valid combinations of the bits are: AC Meaning

00 Frame repeated to next station. 10 The station recognised the address. That station did not however copy the frame. Generally this indicates a lack of resource in the station that recognised the address. 11 The station recognised and managed to copy the frame. These bits are used in an active monitor poll sequence. Each station obeys two rules. 1) When a standby monitor station receives an active or standby monitor present frame with the AC field set to 00 it sets the bits to 11 and starts a timer. When the timer expires it sends a standby monitor present frame. 2) When the active monitor receives any monitor present frame the active poll is considered complete. The Monitor Error counter is increased by a station if it receives either and active or standby monitor present frame with AC=00, then receives a standby monitor present frame also with AC=00. If such a situation occurs there is some error on the ring. This may only be a reconfiguration because the active monitor station has been removed from the ring. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and it's upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 6 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatLostFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "In the token ring architecture a station that transmits a frame will eventually receive that frame after it has gone all the way around the ring. The station that sent the frame then removes that frame from the ring. Whenever a station places a frame onto the ring it starts a timer. It is expected that the frame will return to the station before that timer expires. If this does not happen then this error counter is incremented. Note that this is a non-isolating error and so it is not

possible to determine where on the network the fault occurred. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and it's upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 7 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatFrameCopyErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "Every frame on a token ring contains an Address Recognised bit and a Frame Copied bit. These are collectively known as the AC bits. When a station processes a frame it must set either or both of these bits. A station that simply forwards a frame to the next station sets neither bit. Valid combinations of the bits are: AC Meaning 00 Frame repeated to next station. 10 The station recognised the address. That station did not however copy the frame. Generally this indicates a lack of resource in the station that recognised the address. 11 The station recognised and managed to copy the frame. If a station receives a packet in which the AC bits are set to '11' and which has that station as the destination of the frame then there are probably two stations on the ring with same address. When a station detects this condition it increases the Frame Copy error counter. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error

monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and it's upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 8 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatRxCongestion OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "A station increases this counter when it detects a packet addressed to itself but cannot copy that frame due to lack of resource. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and its upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 9 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatTokenErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented whenever a station recognises an error condition resulting in the need to generate a token. This counter will only be incremented by an active monitor station. GENERAL: Soft Errors

The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and its upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 10 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatFreqErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is incremented whenever a station detects an error in the frequency of the received signal. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and its upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 11 } -- 3Com Internal Note: -- If a particular device cannot support this object it should be -- removed from the published MIB for that device. a3ComRingStatSoftErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "This counter is the total of the isolating soft error

counters in the station. The total does NOT include nonisolating errors because these do not localise an error condition on the ring. GENERAL: Soft Errors The token ring architecture includes an inherent error monitoring protocol. Each station records local errors. These errors are generically referred to as 'soft errors'. Soft errors represent intermittent faults that temporarily disrupt normal operation of the ring. Stations periodically transmit their soft error counters onto the ring where they can be received by any stations which have the ring error monitor functional address active. There are two categories of soft error. Isolating errors and Non-isolating errors. An isolating error will be reported by exactly one station on the ring and the error is known to have occurred between that station and its upstream neighbour. The second category are non-isolating. That is, errors of this nature may be seen and reported by more than one ring station. With these errors it is not possible to resolve the source of the error." ::= { a3ComRingStatStdStatsEntry 12 } -- ********************************************************************** -- Token Ring MIB TRAP Definitions. -- NOTE: Id's for these traps are not defined at the present time. -- ********************************************************************** a3ComRingTopologyChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { a3ComRingMapChangeTime } DESCRIPTION "This trap is sent when a logical device detects a change in the topology of the ring. The var-bind list identifies which of the logical devices detected the change. Note that this trap is not generated if the value of a3ComRingMapChanged is non-zero." ::= 45 a3ComRingStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { a3ComRingState } DESCRIPTION "This trap is sent when the state of the main ring is seen to change. The var-bind specifies the new state of the ring." ::= 46 a3ComRingBackupStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { a3ComRingBackupState } DESCRIPTION "This trap is sent when the state of the backup ring is seen to change. The var-bind specifies the new state of the ring." ::= 47 a3ComRingWrapChange TRAP-TYPE ENTERPRISE a3Com

VARIABLES { a3ComRingWrapState } DESCRIPTION "This trap indicates either that the main and backup rings have wrapped, or that the wrap condition has been removed. The var-bind indicates the new state." ::= 48 ----------------------------------------------------------------------------Start of --PDDRM Generic Multi-Repeater MIB. ----- This MIB duplicates all the relevant information from the standard -- IETF repeater MIB. Some is missing because it is not useful to -- Isoview or a generic manager. -------------------------------------------------------------------------mrmBasicPackage mrmMonitorPackage mrmBasCardPackage mrmBasPortPackage mrmMonRepeaterPackage mrmMonCardPackage mrmMonPortPackage mrmMonDummyPackage OBJECT IDENTIFIER ::= { multiRepeater 1} OBJECT IDENTIFIER ::= { multiRepeater 2} OBJECT IDENTIFIER ::= { mrmBasicPackage 1 } OBJECT IDENTIFIER ::= { mrmBasicPackage 2 } OBJECT OBJECT OBJECT OBJECT IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER ::= ::= ::= ::= { { { { mrmMonitorPackage mrmMonitorPackage mrmMonitorPackage mrmMonitorPackage 1} 2} 3} 4}

----------------------------------------------------------------------------Start of --Basic Group -------------------------------------------------------------------------------MRM Basic Group Table

mrmCardTable OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION " Table of descriptive and status ::= { mrmBasCardPackage

SEQUENCE OF MrmCardEntry not-accessible mandatory information about the groups of ports." 1 }

mrmCardEntry OBJECT-TYPE SYNTAX MrmCardEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " An entry in the table, containing information about a single group of ports." INDEX { mrmCardServiceId, mrmCardIndex } ::= { mrmCardTable 1 } MrmCardEntry ::= SEQUENCE { mrmCardServiceId mrmCardIndex

INTEGER, INTEGER,

mrmCardPortCapacity mrmCardTest mrmCardDOBPorts mrmCardMDIenable }

INTEGER, INTEGER, INTEGER, INTEGER

mrmCardServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This identifies one of the repeaters within the chassis as the target of a request." ::= { mrmCardEntry 1 } mrmCardIndex SYNTAX ACCESS STATUS DESCRIPTION " This object identifies the card entry contains information." ::= { mrmCardEntry 2 } mrmCardPortCapacity SYNTAX ACCESS STATUS DESCRIPTION " The mrmCardPortCapacity is the within the group. Valid range ports are uniquely numbered in mrmCardPortCapacity. OBJECT-TYPE INTEGER read-only mandatory within the repeater for which this

OBJECT-TYPE INTEGER read-only mandatory number of ports that can be contained is 1-1024. Within each group, the the range from 1 to

Note: In practice, this will generally be the number of ports on a module, card, or board, and the port numbers will correspond to numbers marked on the physical embodiment." ::= { mrmCardEntry 3 } mrmCardTest SYNTAX OBJECT-TYPE INTEGER { noTest(1), test(2), testing(3), passed(4), failed(5) } read-write mandatory

ACCESS STATUS DESCRIPTION " An object that allows the user to test the operation of a card. Writing test(2) to this object forces the card to perform a disruptive test to determine if the card is functioning properly. Reading this object while the card is under test return the value testing(3). When the test is completed, reading this value will return either passed(4) or failed(5)." ::= { mrmCardEntry 4 } mrmCardDOBPorts OBJECT-TYPE SYNTAX INTEGER

ACCESS read-only STATUS mandatory DESCRIPTION " MSH Repeater Cards have the ability to disable ports at power up or reset. Ports configured in this way are useful for configuring resilient links because they prevent loops in the network from occurring at startup. The disable on boot feature is determined according to a hardware strap which cannot be changed via software. This parameter is a mask containing a single bit for each port on the card. Port 1 is represented by bit 0 and so-on. If a bit representing a particular port is 0 this port boots up disabled. If the bit is a 1 the port boots up enabled. This parameter allows the state of these parameters to be rapidly determined by a network management application." ::= { mrmCardEntry 5 } mrmCardMDIenable OBJECT-TYPE SYNTAX INTEGER { unknown(1), mdiDisabled(2), mdiEnabled(3), notApplicable(4) } ACCESS read-only STATUS mandatory DESCRIPTION " 10Base-T line cards are normally configured (mdi_disabled(2)) to link to an external network device ( internal crossover ). Port 1 may be configured ( mdi_enabled(3) ) to link to another 10Base-T line card ( with no internal crossover ). This parameter allows the configuration to be determined. Note ECS line cards show unknown(1) since the configuration cannot be accessed via the management interface." ::= { mrmCardEntry 6 } --MRM Basic Port Table -mrmPortTable OBJECT-TYPE SYNTAX SEQUENCE OF MrmPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " Table of descriptive and status information about the ports." ::= { mrmBasPortPackage 1 } mrmPortEntry OBJECT-TYPE SYNTAX MrmPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " An entry in the table, containing information about a single port." INDEX { mrmPortServiceId, mrmPortCardIndex, mrmPortIndex } ::= { mrmPortTable 1 } MrmPortEntry ::= SEQUENCE { mrmPortServiceId mrmPortCardIndex

INTEGER, INTEGER,

mrmPortIndex mrmPortInterfaceType mrmPortConnectorType mrmPortAdminStatus mrmPortAutoPartitionState mrmPortLinkState mrmPortBootState mrmPortESTFilter mrmPortPartitionEvent mrmPortLinkStateEvent mrmPortSecurityAvailable mrmPortLinkPulse }

INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER

mrmPortServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This object identifies the repeater which this entry contains information." ::= { mrmPortEntry 1 } mrmPortCardIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This object identifies the group containing the port for which this entry contains information." ::= { mrmPortEntry 2 } mrmPortIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This object identifies the port within the group for which this entry contains information. This value can never be greater than mrmCardPortCapacity for the associated group." REFERENCE "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,aPortID." ::= { mrmPortEntry 3 } mrmPortInterfaceType OBJECT-TYPE SYNTAX INTEGER { unknown(1), maleAUI(2), femaleAUI(3), thinCoax(4), twistedPair(5), unshieldedTP(6), fiber(7) } ACCESS read-only STATUS mandatory DESCRIPTION " This object specifies the type of electrical interface made available at the interface to the card for this port. The interface does not necessarily specify what the actual media to end station is." ::= { mrmPortEntry 4 }

mrmPortConnectorType OBJECT-TYPE SYNTAX INTEGER { unknown(1), rj45(2), telco(3), st(4), sma(5), dtype-15(6), bnc(7) } ACCESS read-only STATUS mandatory DESCRIPTION " This specifies the type of the physical connector through which one would attach to this card. This is distinct from the media type. For example UTP may be connected to the port via either an RJ45 or a Telco connector." ::= { mrmPortEntry 5 } mrmPortAdminStatus OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-write STATUS mandatory DESCRIPTION " Setting this object to disabled(2) disables the port. A disabled port neither transmits nor receives. Once disabled, a port must be explicitly enabled to restore operation. A port which is disabled when power is lost or when a reset is exerted shall remain disabled when normal operation resumes. The admin status takes precedence over auto- partition and functionally operates between the auto-partition mechanism and the AUI/PMA. Setting this object to enabled(1) enables the port and exerts a BEGIN on the port's auto-partition state machine. In effect, when a port is disabled, the value of mrmPortAutoPartitionState for that port is frozen until the port is next enabled. When the port becomes enabled, the mrmPortAutoPartitionState becomes notAutoPartitioned(2), regardless of its pre-disabling state.)" ::= { mrmPortEntry 6 } mrmPortAutoPartitionState OBJECT-TYPE SYNTAX INTEGER { partitioned(1), unpartitioned(2) } ACCESS read-only STATUS mandatory DESCRIPTION " The autoPartitionState flag indicates whether the port is currently partitioned by the repeater's auto-partition protection. The conditions that cause port partitioning are specified in partition

state machine in Section 9 IEEE 802.3 Std]. They are not differentiated here." REFERENCE "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2, aAutoPartitionState." ::= { mrmPortEntry 7 } mrmPortLinkState OBJECT-TYPE SYNTAX INTEGER { present(1), absent(2) } ACCESS read-only STATUS mandatory DESCRIPTION " This object reflects the presence or absence of signal on this port. The signal may be either light in the case of fiber, or general link present in the case of copper. The value of this parameter is correct regardless of the state the admin state or the partition state." ::= { mrmPortEntry 8 } mrmPortBootState OBJECT-TYPE SYNTAX INTEGER { disable (1), enable (2) } ACCESS STATUS DESCRIPTION " A repeater port may be enabled indicates the default for this ::= { mrmPortEntry 9 }

read-only mandatory or disabled after a reset. This parameter port."

mrmPortESTFilter OBJECT-TYPE SYNTAX INTEGER { forwardMAC (1), forwardIP (2), forwardAll (127), forwardNone (128) } ACCESS read-write STATUS mandatory DESCRIPTION " This attribute determines whether and which address information is extracted from packets received on a port and forwarded to the end station database. It is recommended that this attribute be disabled for inter-repeater links to prevent the database being filled with remote information. To disable this feature for all address types write the value forwardNone (128) to this variable." ::= {mrmPortEntry 10} mrmPortPartitionEvent OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Specifies whether a trap should be sent if the port partition state changes." ::= { mrmPortEntry 11 }

mrmPortLinkStateEvent OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Specifies whether a trap should be sent if the link state changes." ::= { mrmPortEntry 12 } mrmPortSecurityAvailable OBJECT-TYPE SYNTAX INTEGER { available(1), notAvailable(2) } ACCESS read-only STATUS mandatory DESCRIPTION "Specifies whether security is an available feature on this port. Only ports that have this feature available can have an entry in the repeater security table." ::= { mrmPortEntry 13 } mrmPortLinkPulse OBJECT-TYPE SYNTAX INTEGER { enabled (1), disabled (2), notApplicable (3) } ACCESS read-write STATUS mandatory DESCRIPTION " This attribute determines if link pulse generating and monitoring is enabled or disabled for a 10BaseT port. The attribute may take the values of enabled (standard) or disabled (non standard)." ::= { mrmPortEntry 14 } --------------------------------------------------------------------End of --MRM Basic Group ----------------------------------------------------------------------------------------------------------------------------------------Start of --MRM Monitor Group -----------------------------------------------------------------------MRM Monitor Repeater Level Objects

mrmMonitorRepTable OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION

SEQUENCE OF MrmMonitorRepEntry not-accessible mandatory

"Table of performance and error statistics for the ports." ::= {mrmMonRepeaterPackage 1} mrmMonitorRepEntry OBJECT-TYPE SYNTAX MrmMonitorRepEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This table provides statistical and control information concerning the entire repeater." INDEX { mrmMonRepServiceId } ::= {mrmMonitorRepTable 1} MrmMonitorRepEntry ::= SEQUENCE { mrmMonRepServiceId mrmMonRepReadableFrames mrmMonRepUnicastFrames mrmMonRepMulticastFrames mrmMonRepBroadcastFrames mrmMonRepReadableOctets mrmMonRepUnicastOctets mrmMonRepMulticastOctets mrmMonRepBroadcastOctets mrmMonRepFCSErrors mrmMonRepAlignmentErrors mrmMonRepFrameTooLongs mrmMonRepShortEvents mrmMonRepRunts mrmMonRepTxCollisions mrmMonRepLateEvents mrmMonRepVeryLongEvents mrmMonRepDataRateMismatches mrmMonRepAutoPartitions mrmMonRepTotalErrors mrmMonRepBound0 mrmMonRepBound1 mrmMonRepBound2 mrmMonRepBound3 mrmMonRepBound4 mrmMonRepBound5 mrmMonRepAction } mrmMonRepServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This parameter is used as the index in this table. A modular chassis contains potentially many repeater services. Each repeater service contains a number of cards (or groups). This parameter allows one of those repeaters to be selected." ::= {mrmMonitorRepEntry 1} mrmMonRepReadableFrames OBJECT-TYPE INTEGER, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, INTEGER

SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize and for which FCSError is not asserted that is received by the repeater. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= {mrmMonitorRepEntry 2} mrmMonRepUnicastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Repeater that is addressed to a unicast (non Card) address." ::= {mrmMonitorRepEntry 3} mrmMonRepMulticastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Repeater that is addressed to a multicast (non broadcast) address." ::= {mrmMonitorRepEntry 4} mrmMonRepBroadcastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Repeater that is addressed to the broadcast address ffffffffffff." ::= {mrmMonitorRepEntry 5} mrmMonRepReadableOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by the octet count for each readable frame received by the repeater. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= {mrmMonitorRepEntry 6} mrmMonRepUnicastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination field was a unicast address.

The approximate minimum time for rollover of this counter is 58 minutes." ::= {mrmMonitorRepEntry 7} mrmMonRepMulticastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination was a multicast address. The approximate minimum time for rollover of this counter is 58 minutes." ::= {mrmMonitorRepEntry 8} mrmMonRepBroadcastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination was the broadcast address ffffffffffff. By attaching a gauge to this counter one can monitor the port for broadcast storms. Action can then be taken to automatically recover network normal operation. The approximate minimum time for rollover of this counter is 58 minutes." ::= { mrmMonitorRepEntry 9 } mrmMonRepFCSErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame with an FCS error that does not have a framing error and which is of legal frame size received by the repeater. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 10 } mrmMonRepAlignmentErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame with an FCS error that does have a framing error and which is of legal frame size received by the repeater. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 11 } mrmMonRepFrameTooLongs OBJECT-TYPE

SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame whose octet count is greater than the max frame size that is received by the repeater. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 12 } mrmMonRepShortEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each carrier event whose duration is less than short event max time that is detected by the repeater. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 13 } mrmMonRepRunts OBJECT-TYPE SYNTAX ACCESS STATUS DESCRIPTION " This counter is incremented by duration is greater than short packet min time and which does the repeater. Counter read-only mandatory one for each carrier event whose event max time and less than valid not suffer a collision detected by

NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 14 } mrmMonRepTxCollisions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for any CarrierEvent signal on any port of this repeater for which the CollisionEvent signal on this port is asserted. The approximate minimum time for rollover of this counter is 16 hours." ::= {mrmMonitorRepEntry 15} mrmMonRepLateEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time a collisions occurs after valid packet min time, a late event is counted as both a collision and as a late event. NOTE: This counter does not really exist. It is calculated by adding together

all the port counters within this repeater." ::= { mrmMonitorRepEntry 16 } mrmMonRepVeryLongEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time a carrier event occurs whose duration is greater than the MAU Jabber Lockup Protection time. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 17 } mrmMonRepDataRateMismatches OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time a packet has been received by this repeater with the data rate detectably mismatched from the local frequency. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 18 } mrmMonRepAutoPartitions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time the repeater has automatically partitioned any port. NOTE: This counter does not really exist. It is calculated by adding together all the port counters within this repeater." ::= { mrmMonitorRepEntry 19 } mrmMonRepTotalErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " The total number of errors which have occurred on all ports on all groups of this repeater. This counter is the summation of the values of the mrmMonCardTotalErrors counters for all of the cards in the repeater. It is the sum of the following: FCS, Alignment, Frames Too Long, Short Events, Late Events, Very Long Events and Data Rate Mismatches. As a general indicator the individual error counters are too detailed. This parameter gives a very good monitor type parameter." ::= { mrmMonitorRepEntry 20 } mrmMonRepBound0 SYNTAX OBJECT-TYPE Counter

ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of 64 octets which were received by each port on every card of this repeater." ::= {mrmMonitorRepEntry 21} mrmMonRepBound1 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 65 and 127 octets inclusive which were received by each port on every card of this repeater." ::= {mrmMonitorRepEntry 22} mrmMonRepBound2 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 128 and 255 octets inclusive which were received by each port on every card of this repeater." ::= {mrmMonitorRepEntry 23} mrmMonRepBound3 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 256 and 511 octets inclusive which were received by each port on every card of this repeater." ::= {mrmMonitorRepEntry 24} mrmMonRepBound4 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 512 and 1023 octets inclusive which were received by each port on every card of this repeater." ::= {mrmMonitorRepEntry 25} mrmMonRepBound5 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 1024 and 1518 octets inclusive which were received by each port on every card of this repeater." ::= {mrmMonitorRepEntry 26} mrmMonRepAction OBJECT-TYPE SYNTAX INTEGER {

clearCounters }

(1)

ACCESS write-only STATUS mandatory DESCRIPTION " This object allows repeater stats specific actions to be implemented. There is only one action currently defined, 'clearCounters'. Writing this value to a repeater entry will clear ALL counters in this repeater. That include port stats, card and repeater totals." ::= { mrmMonitorRepEntry 27 } -----

MRM Monitor Card Table

mrmMonitorCardTable OBJECT-TYPE SYNTAX SEQUENCE OF MrmMonitorCardEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " This table contains parameters about the various repeater cards within the chassis. The table is indexed using the 'serviceIndex' for the repeater and the slot number within that repeater." ::= {mrmMonCardPackage 1} mrmMonitorCardEntry OBJECT-TYPE SYNTAX MrmMonitorCardEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Status information and control variables for the ports on a single card." INDEX { mrmMonCardServiceId, mrmMonCardIndex } ::= {mrmMonitorCardTable 1} MrmMonitorCardEntry ::= SEQUENCE { mrmMonCardServiceId mrmMonCardIndex mrmMonCardReadableFrames mrmMonCardUnicastFrames mrmMonCardMulticastFrames mrmMonCardBroadcastFrames mrmMonCardReadableOctets mrmMonCardUnicastOctets mrmMonCardMulticastOctets mrmMonCardBroadcastOctets mrmMonCardFCSErrors mrmMonCardAlignmentErrors mrmMonCardFrameTooLongs mrmMonCardShortEvents mrmMonCardRunts mrmMonCardLateEvents mrmMonCardVeryLongEvents mrmMonCardDataRateMismatches mrmMonCardAutoPartitions INTEGER, INTEGER, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter,

mrmMonCardTotalErrors mrmMonCardBound0 mrmMonCardBound1 mrmMonCardBound2 mrmMonCardBound3 mrmMonCardBound4 mrmMonCardBound5 mrmMonCardClearCounters }

Counter, Counter, Counter, Counter, Counter, Counter, Counter, INTEGER

mrmMonCardServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This parameter is used as the first of two indices in this table. A modular chassis contains potentially many repeater services. Each repeater service contains a number of cards (or groups). In order to uniquely identify a port it is necessary to specify both the repeater service and the card within that repeater." ::= {mrmMonitorCardEntry 1} mrmMonCardIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This is the second part of the key on this table. Having selected one of the repeaters within the chassis it is necessary to identify the card within that repeater." ::= {mrmMonitorCardEntry 2} mrmMonCardReadableFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize and for which FCSError is not asserted that is received for any port on this card." ::= {mrmMonitorCardEntry 3} mrmMonCardUnicastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Card that is addressed to a unicast (non Card) address." ::= {mrmMonitorCardEntry 4} mrmMonCardMulticastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the

Card that is addressed to a multicast (non broadcast) address." ::= {mrmMonitorCardEntry 5} mrmMonCardBroadcastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Card that is addressed to the broadcast address ffffffffffff." ::= {mrmMonitorCardEntry 6} mrmMonCardReadableOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by the octet count for each readable frame received by any port on this card." ::= {mrmMonitorCardEntry 7} mrmMonCardUnicastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination field was a unicast address. The approximate minimum time for rollover of this counter is 58 minutes." ::= {mrmMonitorCardEntry 8} mrmMonCardMulticastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination was a multicast address. The approximate minimum time for rollover of this counter is 58 minutes." ::= {mrmMonitorCardEntry 9} mrmMonCardBroadcastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination was the broadcast address ffffffffffff. By attaching a gauge to this counter one can monitor the port for broadcast storms. Action can then be taken to automatically recover network normal operation. The approximate minimum time for rollover of this counter is 58 minutes."

::= { mrmMonitorCardEntry 10 } mrmMonCardFCSErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame with an FCS error that does not have a framing error and which is of legal frame size." ::= {mrmMonitorCardEntry 11} mrmMonCardAlignmentErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame with an FCS error that does have a framing error and which is of legal frame size ." ::= {mrmMonitorCardEntry 12} mrmMonCardFrameTooLongs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame whose octet count is greater than the max frame size that is received by the repeater." ::= {mrmMonitorCardEntry 13} mrmMonCardShortEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each carrier event whose duration is less than short event max time that is detected." ::= {mrmMonitorCardEntry 14} mrmMonCardRunts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each carrier event whose duration is greater than short event max time and less than valid packet min time and which does not suffer a collision." ::= {mrmMonitorCardEntry 15} mrmMonCardLateEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time a collisions occurs after valid packet min time, a late event is counted as both a collision and as a late event." ::= {mrmMonitorCardEntry 16} mrmMonCardVeryLongEvents OBJECT-TYPE SYNTAX Counter

ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time a carrier event occurs whose duration is greater than the MAU Jabber Lockup Protection time." ::= {mrmMonitorCardEntry 17} mrmMonCardDataRateMismatches OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time a packet has been received with the data rate detectably mismatched from the local frequency." ::= {mrmMonitorCardEntry 18} mrmMonCardAutoPartitions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time the repeater has automatically partitioned any port." ::= {mrmMonitorCardEntry 19} mrmMonCardTotalErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " The total number of errors which have occurred on all ports of this card. This counter is the summation of the values of other error counters (for each port), namely: FCS Errors, Alignment Errors, Frames Too Long, Short Events, Late Events, Very Long Events, Data Rate Mismatches. This counter is redundant in the sense that it is the summation of information already available through other objects. However, it is included specifically because the regular retrieval of this object as a means of tracking the health of a port provides a considerable optimization of network management traffic over the otherwise necessary retrieval of the summed counters." ::= {mrmMonitorCardEntry 20} mrmMonCardBound0 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of 64 octets which were received by each port on this card." ::= {mrmMonitorCardEntry 21}

mrmMonCardBound1 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 65 and 127 octets inclusive which were received by each port on this card." ::= {mrmMonitorCardEntry 22} mrmMonCardBound2 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 128 and 255 octets inclusive which were received by each port on this card." ::= {mrmMonitorCardEntry 23} mrmMonCardBound3 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 256 and 511 octets inclusive which were received by each port on this card." ::= {mrmMonitorCardEntry 24} mrmMonCardBound4 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 512 and 1023 octets inclusive which were received by each port on this card." ::= {mrmMonitorCardEntry 25} mrmMonCardBound5 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is a summation of the number of frames (including error frames) with a length of between 1024 and 1518 octets inclusive which were received by each port on this card." ::= {mrmMonitorCardEntry 26} mrmMonCardClearCounters OBJECT-TYPE SYNTAX INTEGER { noChangeCounters (1), clearCounters (2) } ACCESS write-only STATUS mandatory DESCRIPTION " This attribute allows all counters on this Card to be cleared."

::= {mrmMonitorCardEntry 27} ---MRM Monitor Port Table

mrmMonitorPortTable OBJECT-TYPE SYNTAX SEQUENCE OF MrmMonitorPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Table of performance and error statistics for the ports." ::= {mrmMonPortPackage 1} mrmMonitorPortEntry OBJECT-TYPE SYNTAX MrmMonitorPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " Performance and error statistics for a single port." INDEX {mrmMonPortServiceId, mrmMonPortCardIndex, mrmMonPortIndex} ::= {mrmMonitorPortTable 1} MrmMonitorPortEntry ::= SEQUENCE { mrmMonPortServiceId mrmMonPortCardIndex mrmMonPortIndex mrmMonPortReadableFrames mrmMonPortUnicastFrames mrmMonPortMulticastFrames mrmMonPortBroadcastFrames mrmMonPortReadableOctets mrmMonPortUnicastOctets mrmMonPortMulticastOctets mrmMonPortBroadcastOctets mrmMonPortFCSErrors mrmMonPortAlignmentErrors mrmMonPortFrameTooLongs mrmMonPortShortEvents mrmMonPortRunts mrmMonPortCollisions mrmMonPortLateEvents mrmMonPortVeryLongEvents mrmMonPortDataRateMismatches mrmMonPortAutoPartitions mrmMonPortTotalErrors mrmMonPortBound0 mrmMonPortBound1 mrmMonPortBound2 mrmMonPortBound3 mrmMonPortBound4 mrmMonPortBound5 mrmMonPortBandwidthUsed INTEGER, INTEGER, INTEGER, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter, Counter,

mrmMonPortErrorsPer10000Packets Counter, mrmMonPortClearCounters mrmMonPortLastAddress mrmMonPortAddressChanges } mrmMonPortServiceId OBJECT-TYPE SYNTAX INTEGER (1..1024) ACCESS read-only STATUS mandatory DESCRIPTION " This parameter selects one of the repeaters within the chassis. This forms the first, most significant index column. Having selected a repeater one must select a card then port within that repeater." ::= {mrmMonitorPortEntry 1} mrmMonPortCardIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This attribute uniquely identifies this Card within the repeater, it is part of the index for the port table." ::= {mrmMonitorPortEntry 2} mrmMonPortIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION " This attribute uniquely identifies this port within the Card, it is part of the index for the port table." ::= {mrmMonitorPortEntry 3} mrmMonPortReadableFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of frames of valid frame length that have been received on this port. This counter is incremented by one for each frame received on this port whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize (Ref: IEEE 802.3 Std, 4.4.2.1) and for which the FCSError and CollisionEvent signals are not asserted. This statistic provides one of the parameters necessary for obtaining the packet error rate. The approximate minimum time for rollover of this counter is 80 hours." ::= {mrmMonitorPortEntry 4} mrmMonPortUnicastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Card that is addressed to a unicast (non Card) address." INTEGER, OCTET STRING, Counter

::= {mrmMonitorPortEntry 5} mrmMonPortMulticastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Card that is addressed to a multicast (non broadcast) address." ::= {mrmMonitorPortEntry 6} mrmMonPortBroadcastFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each readable frame seen by the Card that is addressed to the broadcast address." ::= {mrmMonitorPortEntry 7} mrmMonPortReadableOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port. This counter is incremented by OctetCount for each frame received on this port which has been determined to be a readable frame. This statistic provides an indicator of the total data transferred. The approximate minimum time for rollover of this counter is 58 minutes." ::= {mrmMonitorPortEntry 8} mrmMonPortUnicastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination field was a unicast address. The approximate minimum time for rollover of this counter is 58 minutes." ::= {mrmMonitorPortEntry 9} mrmMonPortMulticastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination was a multicast address. The approximate minimum time for rollover of this counter is 58 minutes." ::= {mrmMonitorPortEntry 10}

mrmMonPortBroadcastOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of octets contained in valid frames that have been received on this port in which the destination was the broadcast address ffffffffffff. By attaching a gauge to this counter one can monitor the port for broadcast storms. Action can then be taken to automatically recover network normal operation. The approximate minimum time for rollover of this counter is 58 minutes." ::= { mrmMonitorPortEntry 11 } mrmMonPortFCSErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame received on this port with the FCSError signal asserted and the FramingError and CollisionEvent signals deasserted and whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize (Ref: 4.4.2.1, IEEE 802.3 Std). The approximate minimum time for rollover of this counter is 80 hours." ::= { mrmMonitorPortEntry 12 } mrmMonPortAlignmentErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame received on this port with the FCSError and FramingError signals asserted and CollisionEvent signal deasserted and whose OctetCount is greater than or equal to minFrameSize and less than or equal to maxFrameSize (Ref: IEEE 802.3 Std, 4.4.2.1). If rptrMonitorPortAlignmentErrors is incremented then the rptrMonitorPortFCSErrors Counter shall not be incremented for the same frame. The approximate minimum time for rollover of this counter is 80 hours." ::= {mrmMonitorPortEntry 13} mrmMonPortFrameTooLongs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame received on this port whose OctetCount is greater than maxFrameSize (Ref: 4.4.2.1, IEEE 802.3 Std). If this parameter is incremented then neither the alignment error nor the FCS error counters shall be incremented for the frame. The approximate minimum time for rollover of this counter is 61 days."

::= {mrmMonitorPortEntry 14} mrmMonPortShortEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each CarrierEvent on this port with ActivityDuration less than ShortEventMaxTime. ShortEventMaxTime is greater than 74 bit times and less than 82 bit times. ShortEventMaxTime has tolerances included to provide for circuit losses between a conformance test point at the AUI and the measurement point within the state machine. Note: shortEvents may indicate externally generated noise hits which will cause the repeater to transmit Runts to its other ports, or propagate a collision (which may be late) back to the transmitting DTE and damaged frames to the rest of the network. The approximate minimum time for rollover of this counter is 16 hours." ::= {mrmMonitorPortEntry 15} mrmMonPortRunts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each CarrierEvent on this port that meets one of the following two conditions. Only one test need be made. a) The ActivityDuration is greater than ShortEventMaxTime and less than ValidPacketMinTime and the CollisionEvent signal is deasserted. b) The OctetCount is less than 64, the ActivityDuration is greater than ShortEventMaxTime and the CollisionEvent signal is deasserted. ValidPacketMinTime is greater than or equal to 552 bit times and less than 565 bit times. An event whose length is greater than 74 bit times but less bit times shall increment either the shortEvents counter or counter but not both. A CarrierEvent greater than or equal times but less than 565 bit times may or may not be counted than 82 the runts to 552 bit as a runt.

ValidPacketMinTime has tolerances included to provide for circuit losses between a conformance test point at the AUI and the measurement point within the state machine. Runts usually indicate collision fragments, a normal network event. In certain situations associated with large diameter networks a percentage of runts may exceed ValidPacketMinTime. The approximate minimum time for rollover of this counter is 16 hours." ::= {mrmMonitorPortEntry 16} mrmMonPortCollisions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one each time a collision is detected on

this port or when the CollisionEvent signal is asserted on this port. The approximate minimum time for rollover of this counter is 16 hours." ::= {mrmMonitorPortEntry 17} mrmMonPortLateEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each CarrierEvent on this port in which the CollIn(X) variable transitions to the value SQE (Ref: 9.6.6.2, IEEE 802.3 Std) while the ActivityDuration is greater than the LateEventThreshold. Such a CarrierEvent is counted twice, as both a collision and as a lateEvent. The LateEventThreshold is greater than 480 bit times and less than 565 bit times. LateEventThreshold has tolerances included to permit an implementation to build a single threshold to serve as both the LateEventThreshold and ValidPacketMinTime threshold. The approximate minimum time for rollover of this counter is 81 hours." ::= {mrmMonitorPortEntry 18} mrmMonPortVeryLongEvents OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each CarrierEvent on this port whose ActivityDuration is greater than the MAU Jabber Lockup Protection timer TW3 (Ref: 9.6.1 & 9.6.5, IEEE 802.3 Std). Other counters may be incremented as appropriate." ::= {mrmMonitorPortEntry 19} mrmMonPortDataRateMismatches OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This counter is incremented by one for each frame received on this port that meets all of the following conditions: a) The CollisionEvent signal is not asserted. b) The ActivityDuration is greater than ValidPacketMinTime. c) The frequency (data rate) is detectably mismatched from the local transmit frequency. The exact degree of mismatch is vendor specific and is to be defined by the vendor for conformance testing. When this event occurs, other counters whose increment conditions were satisfied may or may not also be incremented, at the implementor's discretion. Whether or not the repeater was able to maintain data integrity is beyond the scope of this standard." ::= {mrmMonitorPortEntry 20} mrmMonPortAutoPartitions OBJECT-TYPE SYNTAX Counter ACCESS read-only

STATUS mandatory DESCRIPTION " This counter is incremented by one for each time the repeater has automatically partitioned this port. The conditions that cause port partitioning are specified in the partition state machine in Section 9 [IEEE 802.3 Std]. They are not differentiated here." ::= {mrmMonitorPortEntry 21} mrmMonPortTotalErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " The total number of errors which have occurred on this port. This counter is the summation of the values of other error counters (for the same port), namely: FCS Errors, Alignment Errors, Frames Too Long, Short Events, Late Events, Very Long Events, Data Rate Mismatches. This counter is redundant in the sense that it is the summation of information already available through other objects. However, it is included specifically because the regular retrieval of this object as a means of tracking the health of a port provides a considerable optimization of network management traffic over the otherwise necessary retrieval of the summed counters." ::= {mrmMonitorPortEntry 22} mrmMonPortBound0 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of frames (including error frames) with a length of 64 octets which were received on this port." ::= {mrmMonitorPortEntry 23} mrmMonPortBound1 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of frames (including error frames) with a length of between 65 and 127 octets inclusive which were received on this port." ::= {mrmMonitorPortEntry 24} mrmMonPortBound2 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of frames (including error frames) with a length of between 128 and 255 octets inclusive which were received on this port." ::= {mrmMonitorPortEntry 25}

mrmMonPortBound3 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of frames (including error frames) with a length of between 256 and 511 octets inclusive which were received on this port." ::= {mrmMonitorPortEntry 26} mrmMonPortBound4 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of frames (including error frames) with a length of between 512 and 1023 octets inclusive which were received on this port." ::= {mrmMonitorPortEntry 27} mrmMonPortBound5 OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This object is the number of frames (including error frames) with a length of between 1024 and 1518 octets inclusive which were received on this port." ::= {mrmMonitorPortEntry 28} mrmMonPortBandwidthUsed OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This is a high level 'smart MIB' object. This object provides a running average of the bandwidth in use. This value is calculated locally on the agent and so does not require processor bandwidth from the management station or occupy valuable network bandwidth communicating with that station. By default an agent supporting this parameter will exhibit the following characteristics: 1) 2) 3) The parameter will be recalculated at approx 15 second intervals Every calculation period the device will read the value of mrmMonPortReadableOctets. The calculation will be performed on the most recent 4 samples as follows: 4 Sum(sample(i)/(time(i) * K)) * 100/4 i=1 Sample(i) is mrmMonPortReadableOctets(i)-mrmMonPortReadableOctets(i-1) time(i) is the time between sample(i-1) and sample(i) K is the max bytes per unit time (i.e. the available bandwidth K depends on the ring speed. The value is expressed as a percentage. A default threshold exists on this average so that if a calculated average exceeds 15% a trap will be sent to the management station.

Further traps will not be sent until the average drops to below 10%. A particular device may provide a means of changing the number of samples, the averaging period, threshold and threshold action if it so wishes." ::= {mrmMonitorPortEntry 29} mrmMonPortErrorsPer10000Packets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This is a high level 'smart MIB' object. This object provides a running average of the bandwidth in use. The value of this value is calculated locally on the agent and so does not require processor bandwidth from a management station or occupy valuable network bandwidth communicating with that station. By default an agent supporting this parameter will exhibit the following behaviour: 1) 2) 3) The parameter will be recalculated at approx 15 second intervals. Every calculation period the device will read the value of mrmMonPortTotalErrors and mrmMonPortReadableFrames. The calculation will be performed on the most recent 4 samples as follows: 4 10000 * Sum(Errors(i)/Frames(i)) i=1 Errors(i) = mrmMonPortTotalErrors(i)-mrmMonPortTotalErrors(i-1) Frames(i) = mrmMonPortReadableFrames(i)-mrmMonPortReadableFrames(i-1) The value is an integer number of errors per 10,000 packets received by this repeater. A default threshold exists on this average so that if a calculated average exceeds 200 (i.e. 2% of frames are in error) a trap will be sent to the management station. Further traps will not be sent until the average drops to below 100 (i.e. 1% of frames are in error). A particular device may provide a means of changing the number of samples, the averaging period and threshold if it so wishes." ::= {mrmMonitorPortEntry 30} mrmMonPortClearCounters OBJECT-TYPE SYNTAX INTEGER { noChangeCounters (1), clearCounters (2) } ACCESS write-only STATUS mandatory DESCRIPTION " This attribute allows all counters on this Port to be cleared." ::= {mrmMonitorPortEntry 31} mrmMonPortLastAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-only STATUS mandatory

DESCRIPTION " This is the last MAC address seen on this port." ::= {mrmMonitorPortEntry 32} mrmMonPortAddressChanges OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This is a count of the number of times the MAC address on this port has changed. A high number of changes indicates this is either an inter-repeater link or a multi-drop segment." ::= {mrmMonitorPortEntry 33} --MRM Dummy Monitor objects -trafficLevel OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This is a dummy 'smart MIB' object which is used internally by the agent to provide a running average of the bandwidth in use. It should not be accessed by a management station and is used by the logic which calculates the value of its associated object 'mrmMonPortBandwidthUsed'. See 'mrmMonPortBandwidthUsed' for a description of how the bandwidth used is calculated." ::= {mrmMonDummyPackage 1} errorFrames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION " This is a dummy 'smart MIB' object which is used internally by the agent to provide a running average of the error rate. It should not be accessed by a management station and is used by the logic which calculates the value of its associated object 'mrmMonPortErrorsPer10000Packets'. See 'mrmMonPortErrorsPer10000Packets' for a description of how the error rate is calculated." ::= {mrmMonDummyPackage 2} -- ********************************************************************** -- Define enterprise repeater traps. Rules for mrm traps are that any -- varbind must be from a table in which the first qualifier on the -- object id is the service identifier of the 'thing' causing the trap. -- ********************************************************************** repPartitionStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { mrmPortAutoPartitionState } DESCRIPTION " This trap is sent when the partition state of a port changes. The trap is accompanied by the new partition state of the port." ::= 38 repLinkStateChange TRAP-TYPE ENTERPRISE a3Com

VARIABLES { mrmPortLinkState } DESCRIPTION " This trap is sent when the link state of a port changes. The var-bind identifies which port has changed state and what the new state of that port is." ::= 39 repAdminStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { mrmPortAdminStatus } DESCRIPTION " This trap is only sent when the administration state of a port is changed by a gauge. It is not sent if a user initiates a state change via SNMP, Telnet or the V.24 terminal interface." ::= 40 repPortTopUsage TRAP-TYPE ENTERPRISE a3Com VARIABLES { mrmMonPortBandwidthUsed, gaugeThresholdLevel, gaugeSamplePeriod, gaugeSamplesPerAverage } DESCRIPTION " This trap is sent when the port bandwidth used exceeds the defined threshold. This threshold is by default 15%, although this may have been changed on a particular device." ::= 41 repPortErrors TRAP-TYPE ENTERPRISE a3Com VARIABLES { mrmMonPortErrorsPer10000Packets, gaugeThresholdLevel, gaugeSamplePeriod, gaugeSamplesPerAverage } DESCRIPTION " This trap is sent when the errors per packet exceeds the the defined threshold." ::= 42

----------------------------------------------------------------------------- This MIB is contains control information about the LinkBuilder MSH Ring -- Builder product. This information and control is specific to this device. ---------------------------------------------------------------------------ringBuilder OBJECT IDENTIFIER ::= { linkBuilderMSH-mib 3 }

ringBuilderTable OBJECT-TYPE SYNTAX SEQUENCE OF RingBuilderTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains information about the LinkBuilder MSH Ring Builder module." ::= { ringBuilder 1 }

ringBuilderTableEntry OBJECT-TYPE SYNTAX RingBuilderTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains an entry for each ring builder in a chassis." INDEX { rbServiceId } ::= { ringBuilderTable 1 } RingBuilderTableEntry ::= SEQUENCE { rbServiceId INTEGER, rbRingInMedia rbRingInMode rbRingInState rbRingOutMedia rbRingOutMode rbRingOutState rbMode rbTest rbDRIState } rbServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This identifies one of potentially several ring builders within the chassis." ::= { ringBuilderTableEntry 1 } rbRingInMedia OBJECT-TYPE SYNTAX INTEGER { unknown (1), unshieldedTp (2), shieldedTp (3), fiber (4) } ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the physical media to which the Ring In port of the Ring Builder is, or could be, connected." ::= { ringBuilderTableEntry 3 } rbRingInMode OBJECT-TYPE SYNTAX INTEGER { openRing (1), wrapRing (2), failSafe (3) } ACCESS read-write STATUS mandatory DESCRIPTION "Each ring builder has two external trunk connections by which a ring builder may be connected to other token ring devices INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER

capable of supporting a backup path, e.g. another ring builder. Each external connection attaches to a dual ring cable. One of the rings is used to carry traffic in a fault free network. The other ring is used as a backup. If an error should be detected on the main ring then suitable stations can wrap the active path onto the backup. The ring builder is such a device. The fault recovery is handled at the ring in and ring out ports. Each of these two connections may be placed in one of the following states: openRing (1):This external connection is configured to be connected to the external ring. NOTE: In this mode if there is no external ring the ring will be broken. wrapRing (2):This external connection is configured to be isolated from the remote ring such that the external ring in/out port is looped from main to backup ring. failSafe (3):In this mode the ring builder monitors the ring in signal for a phantom voltage. If this is present then the external connection is placed into OPEN state. If the phantom voltage is not present then the external connection is placed in WRAP state. In this mode the actual state of the connection can be obtained by reading the state parameter. Note that not all devices support the generation of a phantom voltage and so the failSafe mode may not be appropriate." { ringBuilderTableEntry 4 }

::=

rbRingInState OBJECT-TYPE SYNTAX INTEGER { open (1), wrap (2) } ACCESS read-only STATUS mandatory DESCRIPTION "Each ring builder has two external trunk connections by which a ring builder may be connected to other token ring devices capable of supporting a backup path, e.g. another ring builder. Each external connection attaches to a dual ring cable. One of the rings is used to carry traffic in a fault free network. The other ring is used as a backup. If an error should be detected on the main ring then suitable stations can wrap the active path onto the backup. The ring builder is such a device. The fault recovery is handled at the ring in and ring out ports. Control of the external connections is via the Ring In Mode parameter. If the connection is in FAIL-SAFE mode this parameter reflects the automatically determined state of the connection. If the mode is NOT

::=

FAIL-SAFE this parameter will read the same as the mode parameter." { ringBuilderTableEntry 5 }

rbRingOutMedia OBJECT-TYPE SYNTAX INTEGER { unknown (1), unshieldedTp (2), shieldedTp (3), fiber (4) } ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the physical media to which the Ring Out port of the Ring Builder is, or could be, connected." ::= { ringBuilderTableEntry 6 } rbRingOutMode OBJECT-TYPE SYNTAX INTEGER { openRing (1), wrapRing (2), failSafe (3) } ACCESS read-write STATUS mandatory DESCRIPTION "Each ring builder has two external trunk connections by which a ring builder may be connected to other token ring devices capable of supporting a backup path, e.g. another ring builder. Each external connection attaches to a dual ring cable. One of the rings is used to carry traffic in a fault free network. The other ring is used as a backup. If an error should be detected on the main ring then suitable stations can wrap the active path onto the backup. The ring builder is such a device. The fault recovery is handled at the ring in and ring out ports. Each of these two connections may be placed in one of the following states: openRing (1):This external connection is configured to be connected to the external ring. NOTE: In this mode if there is no external ring the ring will be broken. wrapRing (2):This external connection is configured to isolated from the remote ring such that the external ring in/out port is looped from main to backup ring. failSafe (3):In this mode the ring builder monitors the ring in signal for a phantom voltage. If this is present then the external connection is placed into OPEN state. If the phantom voltage is not present then the external connection is placed in WRAP state. In this mode the actual state of the connection can be obtained by reading the state parameter.

::=

Note that not all devices support the generation of a phantom voltage and so the FAIL-SAFE mode may not be appropriate." { ringBuilderTableEntry 7 }

rbRingOutState OBJECT-TYPE SYNTAX INTEGER { open (1), wrap (2) } ACCESS read-only STATUS mandatory DESCRIPTION "Each ring builder has two external trunk connections by which a ring builder may be connected to other token ring devices capable of supporting a backup path, e.g. another ring builder. Each external connection attaches to a dual ring cable. One of the rings is used to carry traffic in a fault free network. The other ring is used as a backup. If an error should be detected on the main ring then suitable stations can wrap the active path onto the backup. The ring builder is such a device. The fault recovery is handled at the ring in and ring out ports. Control of the external connections is via the Ring In Mode parameter. If the connection is in FAIL-SAFE mode this parameter reflects the automatically determined state of the connection. If the mode is NOT FAIL-SAFE this parameter will read the same as the mode parameter." ::= { ringBuilderTableEntry 8 } rbMode OBJECT-TYPE SYNTAX INTEGER { normal (1), repeater (2) } read-write mandatory

ACCESS STATUS DESCRIPTION "As well as providing control over network connection at the ring in and ring out ports, the Ringbuilder has three modes that also control the interaction with the rest of the ring. Mode normal (1):In this mode the ringbuilder's connections are determined by the states of the Ring In and Ring Out ports. Mode repeater (2):In this mode, the Ring In port is connected directly to the Ring Out port internally in the Ringbuilder. The external rings (main and backup) are passed straight through, while the MAUs controlled by the Ringbuilder are maintained as a stand-alone ring. In this mode, if either the Ring In or the Ring Out port is wrapped then both are forced to wrap, and the internal ring is unaffected." { ringBuilderTableEntry 9 } INTEGER { noTest(1), test(2), testing(3),

::=

rbTest OBJECT-TYPE SYNTAX

ACCESS STATUS DESCRIPTION "Setting this object to test(2) causes the Ringbuilder to execute a test by transmitting a frame to itself and checking that it is properly received. The test does not disrupt the operation of the ring. Initially the value of this object is noTest(1), indicating that no test has yet been performed. After a test has been requested the value read is testing(3) if a test is in progress, or pass(4) or fail(5) depending on the result of the last test executed." ::= { ringBuilderTableEntry 10 } rbDRIState OBJECT-TYPE SYNTAX INTEGER { disabled (1), enabled (2), enabledWithLock (3) } ACCESS read-write STATUS mandatory DESCRIPTION "Distributive Recovery Interface ( DRI ) allows the Active MAU to determine which of its stations are beaconing or causing problems on the ring. MAU ports are disabled one at a time , until the faulty station has been removed from the ring. THe MAU port remains disabled until the station is removed , unless the is enabled with locking. If DRI lock is enabled the port will remain disabled until re-enabled by management." ::= { ringBuilderTableEntry 11 } -- ********************************************************************** -- MAU Port State/Information table. -- This table contains an entry for all MAU ports in the local ring -- section. -- ********************************************************************** ringMauPortTable OBJECT-TYPE SYNTAX SEQUENCE OF RingMauPortTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains an entry for every port on every MAU in the local ring section controlled by the ring builder." ::= { ringBuilder 2 } ringMauPortTableEntry OBJECT-TYPE SYNTAX RingMauPortTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains an entry for every MAU port in the local ring section." INDEX { rbMauServiceId, rbMauSlot, rbMauPort } ::= { ringMauPortTable 1 }

pass(4), fail(5) } read-write mandatory

RingMauPortTableEntry ::= SEQUENCE { rbMauServiceId INTEGER, rbMauSlot INTEGER, rbMauPort INTEGER, rbMauMedia INTEGER, rbMauPortAdminState INTEGER, rbMauPortAttachState INTEGER, rbMauPortZDLState INTEGER, rbMauPortDisableReason INTEGER } rbMauServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This identifies one of potentially several ring builders within the chassis." ::= { ringMauPortTableEntry 1 } rbMauSlot OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Each ring service is implemented by a ring builder and a number of MAU cards. Each MAU card provides a number of ports to which Token Ring stations connect. This object identifies the card to which this row in the table applies." ::= { ringMauPortTableEntry 2 } rbMauPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Each MAU card contains a number of ports. A row in this table represents one of those ports. This index identifies that port." ::= { ringMauPortTableEntry 3 } rbMauMedia OBJECT-TYPE SYNTAX INTEGER { unknown (1), unshieldedTp (2), shieldedTp (3), fiber (4), twistedPair (5) } ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the physical media to which this MAU port is, or could be, connected." ::= { ringMauPortTableEntry 4 } rbMauPortAdminState OBJECT-TYPE SYNTAX INTEGER { enabled

(1),

ACCESS STATUS DESCRIPTION "Each MAU port may be enabled or disabled for insertion. Enabling a port means that if some station should attempt to insert on that port then it will be connected into the ring. Disabled means that any station currently connected into the ring on this port will be removed and that subsequent insertion requests will be denied." ::= { ringMauPortTableEntry 5 } rbMauPortAttachState OBJECT-TYPE SYNTAX INTEGER { absent (1), present (2) } ACCESS read-only STATUS mandatory DESCRIPTION "Each MAU port is capable of determining whether a station is currently asserting phantom voltage on that port. This indicates that a station is successfully attached to the ring or whether it is attempting to attach. Note that if this object is supported then must correctly reflect the phantom voltage driven by the station regardless of the admin state of the port. Note also that if the admin state is disabled and there is a change in this object a trap is sent to the management station." ::= { ringMauPortTableEntry 6 } rbMauPortZDLState OBJECT-TYPE SYNTAX INTEGER { enabled disabled notSupported (1), (2), (3)

disabled } read-write mandatory

(2)

} ACCESS read-write STATUS mandatory DESCRIPTION "Zero Delay Lock-out(ZDL) enables the Active MAU to lock-out any station which is transmitting poor quality data , or is set to the wrong ring speed. ZDL locks out a port instantly; there is no delay before the port is disabled. If a station which has been locked out de-asserts its phantom , the port is immediately re-enabled." ::= { ringMauPortTableEntry 8 } rbMauPortDisableReason OBJECT-TYPE SYNTAX INTEGER { none disabledByMgmt disabledByZDL disabledByDRI } ACCESS read-only STATUS mandatory DESCRIPTION

(1), (2), (3), (4)

::=

"This item indicates the reason for disabling a port. " { ringMauPortTableEntry 9 }

-- ********************************************************************** -- Ring Builder MAC address table. -- This table contains an entry for each MAC on the Ring Builder card, -- giving its MAC address. -- ********************************************************************** ringBuilderMACTable OBJECT-TYPE SYNTAX SEQUENCE OF RingBuilderMACTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This is a table of the MAC address(es) assigned to the Ringbuilder card." ::= { ringBuilder 3 } ringBuilderMACTableEntry OBJECT-TYPE SYNTAX RingBuilderMACTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains an entry for each MAC on each ring builder in a chassis." INDEX { rbMACServiceId, rbMACinstance } ::= { ringBuilderMACTable 1 } RingBuilderMACTableEntry ::= SEQUENCE { rbMACServiceId INTEGER, rbMACinstance INTEGER, rbMACAddress PhysAddress } rbMACServiceId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This identifies one of potentially several ring builders within the chassis." ::= { ringBuilderMACTableEntry 1 } -- 3Com Internal Note: -- Initially, at least, management is only supporting two MACs on the -- Ringbuilder card, so the published MIB only admits to the existence of two rbMACinstance OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A Ringbuilder has two MACs, one for the main ring and one for the backup ring. The main ring is MAC instance 1, and the backup ring MAC instance 2." ::= { ringBuilderMACTableEntry 2 } rbMACAddress OBJECT-TYPE SYNTAX PhysAddress ACCESS read-only

STATUS mandatory DESCRIPTION "This is the MAC address for the specified Ringbuilder and MAC instance." ::= { ringBuilderMACTableEntry 3 } -- ********************************************************************** -- Token Ring MIB TRAP Definitions. -- ********************************************************************** a3ComAttachStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { rbMauPortAttachState } DESCRIPTION "This trap is sent if the value of the attach state for a particular port changes AND the admin state of that port is disabled." ::= 49 rbRingInStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { rbRingInState } DESCRIPTION "This trap is sent if the Ring In port changes state while the mode of the port is 'fail safe'." ::= 50 rbRingOutStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { rbRingOutState } DESCRIPTION "This trap is sent if the Ring Out port changes state while the mode of the port is 'fail safe'." ::= 51 rbMauPortStateChange TRAP-TYPE ENTERPRISE a3Com VARIABLES { rbMauPortAdminState , rbMauPortDisableReason } DESCRIPTION "This trap is sent if the MAU port changes state due to operation of ZDL or DRI." ::= 60 END

Вам также может понравиться