-- GIGAswitchEthernetMIB -- Digital Equipment Corporation GIGAswitch/Ethernet Enterprise Specific -- Management Information Base for SNMP version 1 -- Copyright (c) 1997, Digital Equipment Corporation -- This MIB document is provided "as-is". Digital Equipment Corporation reserves the right to make -- changes without prior notification. An explicit right to copy this document is provided -- to all. However, the intellectual content of this document is the exclusive property -- of Digital Equipment Corporation. -- INTRODUCTION -- -- Welcome to the Digital Equipment Corporation GIGAswitch/Ethernet -- Enterprise-Specific MIB. -- -- This MIB is supplied to enhance the management capability of the GIGAswitch/Ethernet System. -- It provides managed objects that supplement those capabilities supported by the standard -- IETF MIBs. -- -- The MIB has the following main sections: -- -- General Agent Support: Manages the SNMP agent. -- Communications: -- Resource Management: The Resource Manager is the focal point for managing dynamic resources. -- Chassis: Objects related to the management of the physical enclosure and environment. -- Switching: Management of the layer II switching functions and Virtual LANs. -- Event Management: RMON Events on steroids. -- File System: Provides access to the embedded file system. -- MODULE DEFINITION GIGAswitchEthernet-MIB DEFINITIONS ::= BEGIN IMPORTS enterprises, Gauge, NetworkAddress, IpAddress,Counter, TimeTicks FROM RFC1155-SMI OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215; -- Textual Conventions -- The Data Type returned in event log value EventValueType ::= INTEGER { none(1), integer(2), longInteger(3), string(4), octets(5), ipAddress(6), macAddress(7), timeTicks(8) } -- the resources managed by the GIGAswitch\Ethernet system ResourceType ::= INTEGER { system(1), module(2), fan(3), temperatureSensor(4), interface(5), powerSupply(6), display(7), switchPort(8), bridge(9), vlan(10), aft(11), inboundGroupTable(12), outboundGroupTable(13), event(15), alarm(16) } -- This data type is used to uniquely identify a resource within the GIGAswitch\Ethernet system. -- It encodes the Resource ID into an OID, using 2 as the first component. -- Using a 2 works around the OID encoding restrictions of the first component (ASN.1) ResourceId ::= OBJECT IDENTIFIER 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) RowStatus ::= 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) } -- All representations of MAC addresses in this MIB Module -- use, as a textual convention (i.e. this convention does -- not affect their encoding), the data type: MacAddress ::= OCTET STRING (SIZE (6)) -- a 6 octet address in the "canonical" order -- defined by IEEE 802.1a, i.e., as if it were transmitted -- least significant bit first, even though 802.5 (in -- contrast to other n802.x protocols) requires MAC -- addresses to be transmitted most significant bit first. -- -- 16-bit addresses, if needed, are represented by setting -- their upper 4 octets to all 0's, i.e., AAFF would be -- represented as 00000000AAFF. -- Similarly, all representations of Bridge-Id in this MIB -- Module use, as a textual convention (i.e. this -- convention does not affect their encoding), the data -- type: BridgeId ::= OCTET STRING (SIZE (8)) -- the Bridge-Identifier as used in the Spanning Tree -- Protocol to uniquely identify a bridge. Its first two -- octets (in network byte order) contain a priority -- value and its last 6 octets contain the MAC address -- used to refer to a bridge in a unique fashion -- (typically, the numerically smallest MAC address -- of all ports on the bridge). -- Several objects in this MIB module represent values of -- timers used by the Spanning Tree Protocol. In this -- MIB, these timers have values in units of hundredths of -- a second (i.e. 1/100 secs). -- These timers, when stored in a Spanning Tree Protocol's -- BPDU, are in units of 1/256 seconds. Note, however, -- that 802.1D-1990 specifies a settable granularity of -- no more than 1 second for these timers. To avoid -- ambiguity, a data type is defined here as a textual -- convention and all representation of these timers -- in this MIB module are defined using this data type. An -- algorithm is also defined for converting between the -- different units, to ensure a timer's value is not -- distorted by multiple conversions. -- The data type is: -- a STP timer in units of 1/100 seconds Timeout ::= INTEGER -- To convert a Timeout value into a value in units of -- 1/256 seconds, the following algorithm should be used: -- -- b = floor( (n * 256) / 100) -- -- where: -- floor = quotient [ignore remainder] -- n is the value in 1/100 second units -- b is the value in 1/256 second units -- -- To convert the value from 1/256 second units back to -- 1/100 seconds, the following algorithm should be used: -- -- n = ceiling( (b * 100) / 256) -- -- where: -- ceiling = quotient [if remainder is 0], or -- quotient + 1 [if remainder is non-zero] -- n is the value in 1/100 second units -- b is the value in 1/256 second units -- -- Note: it is important that the arithmetic operations are -- done in the order specified (i.e., multiply first, divide -- second). -- Event Category Macro -- -- Indicates the type of event: -- - coldstart is generated at system bootup -- - warmstart is generated when the software system (only) resets -- - system error is generated for a variety of reasons including running out of memory, OS errors, and H/W faults -- - status change indicates a change in the status value e.g. a port status change -- - configuration indicates a change in the configuration value e.g. a port mode change -- - scheduled events are triggered based on a calendar event -- - authentication indicates attempted access to a restricted resource without the proper credentials, e.g. SNMP -- authentication failure. -- - threshold is generated by alarms EventCategory ::= INTEGER { userDefined(1), coldstart(2), warmstart(3), linkUp(4), linkDown(5), newResource(6), deletedResource(7), tempStatus(8), configuration(9), scheduled(10), authentication(11), system(12), risingThreshold(13), fallingThreshold(14), fanStatus(15), powerStatus(16), status(17), bridgeNewRoot(18), bridgeTopChange(19), switchFabricStatus(20) } dec OBJECT IDENTIFIER ::= { enterprises 36 } ema OBJECT IDENTIFIER ::= { dec 2 } mib-extensions-1 OBJECT IDENTIFIER ::= { ema 18 } gsEMIB OBJECT IDENTIFIER ::= { mib-extensions-1 39 } -- v2 STUFF -- digitalMIB MODULE-IDENTITY -- LAST-UPDATED "9701030000Z" -- ORGANIZATION "Digital Equipment Corporation" -- CONTACT-INFO -- " Technical Support -- E-mail: www.networks.digital.com" -- DESCRIPTION -- "Digital Equipment Corporation GIGAswitch\Ethernet Enterprise Specific MIB Module" -- ::= {} -- AGENT gsEAgent OBJECT IDENTIFIER ::= { gsEMIB 1 } -- GENERAL AGENT gsEAgentGen OBJECT IDENTIFIER ::= { gsEAgent 1 } gsEAgentMIBVersion OBJECT-TYPE SYNTAX DisplayString (SIZE(0..32)) ACCESS read-only STATUS mandatory DESCRIPTION "The version of the Digital Equipment Corporation GIGAswitch\Ethernet Enterprise Specific MIB that this agent supports." ::= { gsEAgentGen 1 } gsEAgentMgrIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The value of this object represents the index into the community table that is used to authenticate SNMP requests for this manager." ::= { gsEAgentGen 2 } -- COMMUNITY TABLE gsEAgentCommunity OBJECT IDENTIFIER ::= { gsEAgent 2 } -- -- The community table is the database used by the agent to authenticate SNMP requests -- and to generate SNMP traps. This table is only accessible for users with security clearance. -- gsECommunityTable OBJECT-TYPE SYNTAX SEQUENCE OF GsECommunityEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" ::= { gsEAgentCommunity 1 } gsECommunityEntry OBJECT-TYPE SYNTAX GsECommunityEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" INDEX { gsECommunityIndex } ::= { gsECommunityTable 1 } GsECommunityEntry ::= SEQUENCE { gsECommunityIndex INTEGER, gsECommunityString DisplayString, gsECommunityAddressType INTEGER, gsECommunityAddress NetworkAddress, gsECommunityAccess INTEGER, gsECommunityTrapReceiver INTEGER, gsECommunitySecurityLevel INTEGER, gsECommunityStatus RowStatus } gsECommunityIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this entry." ::= { gsECommunityEntry 1 } gsECommunityString OBJECT-TYPE SYNTAX DisplayString (SIZE(0..32)) ACCESS read-write STATUS mandatory DESCRIPTION "The community string included in the SNMP PDU used for authentication purposes." ::= { gsECommunityEntry 2 } gsECommunityAddressType OBJECT-TYPE SYNTAX INTEGER { any(1), ipv4(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The type of address associated with this community. If set to any(1), only the community string is authenticated." ::= { gsECommunityEntry 3 } gsECommunityAddress OBJECT-TYPE SYNTAX NetworkAddress ACCESS read-write STATUS mandatory DESCRIPTION "If the address type is any, then the value of this object is a null string. If the type is ipv4(2), then this value represents a 4 byte IP address." ::= { gsECommunityEntry 4 } gsECommunityAccess OBJECT-TYPE SYNTAX INTEGER { none(1), readOnly(2), readWrite(3), moreSpecific(4) } ACCESS read-write STATUS mandatory DESCRIPTION "The MIB access supported for this community entry. A Get or GetNext SNMP PDU is authenticated if the value of this object is read-only(2) or read-write(3). A Set request will be honored if the value of this object is read-write(3). If more granular access control is desired, then the value of this object is set to more-specific(4), and the view table should be consulted. This enables the capability to set different access rights to different branches of the MIB for a particular community. " ::= { gsECommunityEntry 5 } gsECommunityTrapReceiver OBJECT-TYPE SYNTAX INTEGER { disable(1), enable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "If set to enable(1), this community entry is considered a trap receiver. When the agent generates an SNMP trap, a copy will be sent to this host using this community string." ::= { gsECommunityEntry 6 } gsECommunitySecurityLevel OBJECT-TYPE SYNTAX INTEGER { normal(1), administrator(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Secure tables are only accessible from users with security clearance. For example, this table (the community table) is only accessible by parties that have the security clearance." ::= { gsECommunityEntry 7 } gsECommunityStatus OBJECT-TYPE SYNTAX RowStatus ACCESS read-write STATUS mandatory DESCRIPTION "" ::= { gsECommunityEntry 8 } -- WEB SERVER gsEAgentWeb OBJECT IDENTIFIER ::= { gsEAgent 3 } gsEAgentWebServerURL OBJECT-TYPE SYNTAX DisplayString (SIZE(0..31)) ACCESS read-write STATUS mandatory DESCRIPTION "The URL of where the document server software is installed. The switch uses this location to find online help and bimapped graphics. Enter the host name or IP address of the HTTP server at the HTTP Server Location prompt, followed by ':2010'. For example, for a host named 'phantom,', enter 'http://phantom:2010'. If no server is desired or installed, set this object to the empty string." ::= { gsEAgentWeb 1 } gsEAgentWebServerHelpDirectory OBJECT-TYPE SYNTAX DisplayString (SIZE(0..31)) ACCESS read-write STATUS mandatory DESCRIPTION "The subdirectory that contains the help files on the document server. Typically, this directory is 'help'." ::= { gsEAgentWeb 2 } -- CHASSIS -- Chassis Family gsEChassis OBJECT IDENTIFIER ::= { gsEMIB 3 } -- Chassis family of objects help manage modular devices, and their environmental -- parameters. gsEChassisGen OBJECT IDENTIFIER ::= { gsEChassis 1 } gsEChassisType OBJECT-TYPE SYNTAX INTEGER { p550(1), p220(2) } ACCESS read-only STATUS mandatory DESCRIPTION "The model of the chassis that this agent is managing." ::= { gsEChassisGen 1 } gsEChassisSlots OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The number of slots available in this chassis. If this chassis is a stackable chassis, the total capacity of stacking units." ::= { gsEChassisGen 2 } -- INVENTORY gsEInventory OBJECT IDENTIFIER ::= { gsEChassis 2 } -- The inventory table contains manufacturing identification information of the -- components contained within the system. gsEInventoryTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEInventoryEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of inventory information." ::= { gsEInventory 1 } gsEInventoryEntry OBJECT-TYPE SYNTAX GsEInventoryEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Inventory information related to this device." INDEX { gsEInventoryResourceType, gsEInventoryResourceIndex } ::= { gsEInventoryTable 1 } GsEInventoryEntry ::= SEQUENCE { gsEInventoryResourceType ResourceType, gsEInventoryResourceIndex ResourceId, gsEInventoryModelNumber DisplayString, gsEInventorySerialNumber DisplayString, gsEInventoryVersion DisplayString, gsEInventoryManufactureInfo DisplayString, gsEInventoryScratchPad DisplayString } gsEInventoryResourceType OBJECT-TYPE SYNTAX ResourceType ACCESS read-only STATUS mandatory DESCRIPTION "The resource class of this inventory item." ::= { gsEInventoryEntry 1 } gsEInventoryResourceIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The resource identifier of this inventory item." ::= { gsEInventoryEntry 2 } gsEInventoryModelNumber OBJECT-TYPE SYNTAX DisplayString (SIZE(0..32)) ACCESS read-only STATUS mandatory DESCRIPTION "The model number of this device." ::= { gsEInventoryEntry 3 } gsEInventorySerialNumber OBJECT-TYPE SYNTAX DisplayString (SIZE(0..32)) ACCESS read-only STATUS mandatory DESCRIPTION "The serial number of this device." ::= { gsEInventoryEntry 4 } gsEInventoryVersion OBJECT-TYPE SYNTAX DisplayString (SIZE(0..32)) ACCESS read-only STATUS mandatory DESCRIPTION "The revision number of this device." ::= { gsEInventoryEntry 5 } gsEInventoryManufactureInfo OBJECT-TYPE SYNTAX DisplayString (SIZE(0..128)) ACCESS read-only STATUS mandatory DESCRIPTION "Information related to the manufacturing of this device." ::= { gsEInventoryEntry 6 } gsEInventoryScratchPad OBJECT-TYPE SYNTAX DisplayString (SIZE(0..128)) ACCESS read-write STATUS mandatory DESCRIPTION "A scratch pad area available for keeping user-supplied inventory information. " ::= { gsEInventoryEntry 7 } -- -- Power Systems gsEPowerSystems OBJECT IDENTIFIER ::= { gsEChassis 3 } -- POWER SUPPLY TABLE gsEPowerSupplies OBJECT IDENTIFIER ::= { gsEPowerSystems 1 } -- A table providing information about each power supply. -- The index to the table is the power supply resource index. -- -- Information in this table includes the status of the power supply -- and how much power this supply generates. gsEPowerSupplyTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPowerSupplyEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of information related to each power supply in the system." ::= { gsEPowerSupplies 1 } gsEPowerSupplyEntry OBJECT-TYPE SYNTAX GsEPowerSupplyEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry providing information about a particular power supply in the system." INDEX { gsEPowerSupplyIndex } ::= { gsEPowerSupplyTable 1 } GsEPowerSupplyEntry ::= SEQUENCE { gsEPowerSupplyIndex ResourceId, gsEPowerSupplyType INTEGER, gsEPowerSupplyStatus INTEGER, gsEPowerSupplyInputStatus INTEGER, gsEPowerSupplyOutputStatus INTEGER, gsEPowerSupplyOutputCapacity INTEGER } gsEPowerSupplyIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this power supply. This index corresponds to the gsEResourceIndex of the power supply type resource." ::= { gsEPowerSupplyEntry 1 } gsEPowerSupplyType OBJECT-TYPE SYNTAX INTEGER { unknown(1), psA(2), psB(3) } ACCESS read-only STATUS mandatory DESCRIPTION "An enumerated integer describing the type of power supply. " ::= { gsEPowerSupplyEntry 2 } gsEPowerSupplyStatus OBJECT-TYPE SYNTAX INTEGER { okay(1), faulty(2), unknown(3) } ACCESS read-only STATUS mandatory DESCRIPTION "The status of this power supply. Okay(1) indicates the power supply is operating properly. Faulty(2) indicates that the power supply is not functioning properly. In this case, more information can be determined from the other power supply attributes." ::= { gsEPowerSupplyEntry 3 } gsEPowerSupplyInputStatus OBJECT-TYPE SYNTAX INTEGER { okay(1), faulty(2), unknown(3) } ACCESS read-only STATUS mandatory DESCRIPTION "The status of the input power feed (e.g. the AC power cord) to this power supply." ::= { gsEPowerSupplyEntry 4 } gsEPowerSupplyOutputStatus OBJECT-TYPE SYNTAX INTEGER { okay(1), faulty(2), unknown(3) } ACCESS read-only STATUS mandatory DESCRIPTION "The status of the output power from this power supply." ::= { gsEPowerSupplyEntry 5 } gsEPowerSupplyOutputCapacity OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The total capacity of power supplied by this supply in Watts." ::= { gsEPowerSupplyEntry 6 } -- POWER MANAGEMENT gsEPowerMgmtGen OBJECT IDENTIFIER ::= { gsEPowerSystems 2 } gsEPowerCapacity OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The total capacity (in Watts) of power available (currently) in the system." ::= { gsEPowerMgmtGen 1 } gsEPowerUsed OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The total power (in Watts) currently being consumed in the system." ::= { gsEPowerMgmtGen 2 } -- POWER MANAGEMENT CONTROL gsEPowerMgmtCtl OBJECT IDENTIFIER ::= { gsEPowerSystems 3 } gsEPowerControlTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPowerControlEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table manages the power attributes associated with each module." ::= { gsEPowerMgmtCtl 1 } gsEPowerControlEntry OBJECT-TYPE SYNTAX GsEPowerControlEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the power control table manages the power attributes of the specified module." INDEX { gsEModuleIndex } ::= { gsEPowerControlTable 1 } GsEPowerControlEntry ::= SEQUENCE { gsEPowerControlUsed INTEGER, gsEPowerControlPriority INTEGER, gsEPowerControlMode INTEGER } gsEPowerControlUsed OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The total power (in Watts) used by this module." ::= { gsEPowerControlEntry 1 } gsEPowerControlPriority OBJECT-TYPE SYNTAX INTEGER { high(1), normal(2), low(3) } ACCESS read-write STATUS mandatory DESCRIPTION "The priority of this module to be considered in the event of a power supply failure where the amount of power used exceeds the system capacity. Low priority modules will be powered down before higher priority modules." ::= { gsEPowerControlEntry 2 } gsEPowerControlMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), poweredDown(3) } ACCESS read-write STATUS mandatory DESCRIPTION "Normally, a module power mode is enable(1). In the event of a power supply failure resulting in a power shortage, or in the event of this module being inserted without enough available power, the mode will be poweredDown(3). Setting this object to the value of poweredDown(3) will result in an error. When enough power is available, the module will power back up when in this mode. A module may be powered down through administrative action by setting the value of this object to disable(2). In this mode, the module will remain powered down until the mode is set back to enable." ::= { gsEPowerControlEntry 3 } -- TEMPERATURE gsETemperature OBJECT IDENTIFIER ::= { gsEChassis 4 } gsETempTable OBJECT-TYPE SYNTAX SEQUENCE OF GsETempEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of information related to the temperature within the system." ::= { gsETemperature 1 } gsETempEntry OBJECT-TYPE SYNTAX GsETempEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry providing temperature information related to a specific temperature probe in the system." INDEX { gsETempIndex } ::= { gsETempTable 1 } GsETempEntry ::= SEQUENCE { gsETempIndex ResourceId, gsETempValue INTEGER, gsETempUpperLimit INTEGER, gsETempUpperWarning INTEGER, gsETempLowerWarning INTEGER, gsETempLowerLimit INTEGER } gsETempIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "A unique index that identifies this temperature probe. This index corresponds to the gsEResourceIndex for temperature probe type resources." ::= { gsETempEntry 1 } gsETempValue OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The current temperature reading of this temperature probe in degrees Celsius." ::= { gsETempEntry 2 } gsETempUpperLimit OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The upper temperature limit of this temperature probe in degrees Celsius." ::= { gsETempEntry 3 } gsETempUpperWarning OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The upper temperature warning of this temperature probe in degrees Celsius." ::= { gsETempEntry 4 } gsETempLowerWarning OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The lower temperature warning of this temperature probe in degrees Celsius." ::= { gsETempEntry 5 } gsETempLowerLimit OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The lower temperature limit of this temperature probe in degrees Celsius." ::= { gsETempEntry 6 } -- MODULE MANAGEMENT gsEModules OBJECT IDENTIFIER ::= { gsEChassis 5 } gsEModuleTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEModuleEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of information related to the modules in the system." ::= { gsEModules 1 } gsEModuleEntry OBJECT-TYPE SYNTAX GsEModuleEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Attributes related to managing this module." INDEX { gsEModuleIndex } ::= { gsEModuleTable 1 } GsEModuleEntry ::= SEQUENCE { gsEModuleIndex ResourceId, gsEModuleName DisplayString, gsEModuleType INTEGER, gsEModuleBaseType INTEGER, gsEModuleSlotWidth INTEGER, gsEModuleSlotOffset INTEGER, gsEModulePorts INTEGER } gsEModuleIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this module. This index corresponds to the gsEResourceIndex associated with module type resources." ::= { gsEModuleEntry 1 } gsEModuleName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..31)) ACCESS read-write STATUS mandatory DESCRIPTION "A user-assignable name for this module." ::= { gsEModuleEntry 2 } gsEModuleType OBJECT-TYPE SYNTAX INTEGER { unknown(1), -- unknown module m5502-1000(2), -- 2 Port Gigabit m2206-1000(3), -- 6 Port Gigabit m5520-100TX-QS(4), -- 20 Port 10/100: Quality Phy's m5510-100FX(5), -- 10 Port Fast Ethernet Fiber m5500-SUP(6), -- Supervisor (5500) m5504-1000(7), -- 4 Port Gigabit m2201-1000(8), -- 1 Port Gigabit Option m5520-100TX-I(9), -- 20 Port 10/100: Intel Phy's m2202-100FX(10), -- 2 Port Fast Ethernet Fiber Option m5510R-100FX(11), -- 10 Port Routing Fast Ethernet Fiber m5512R-100TX(12), -- 12 Port Routing 10/100 m5500R-SUP(13), -- Routing Supervisor m5502R-1000(14), -- 2 Port Routing Gigabit m2200-SUP(15), -- Supervisor (2200) m2204-100TX(16), -- 4 Port 10/100 Option m2224-100TX(17) -- 24 Port 10/100 Option } ACCESS read-only STATUS mandatory DESCRIPTION "An enumerated integer that is unique for each module model. " ::= { gsEModuleEntry 3 } gsEModuleBaseType OBJECT-TYPE SYNTAX INTEGER { gigabit(1), -- Gigabit Ethernet Modules fastEthernet(2), -- Fast Ethernet Modules supervisor(3) -- Supervisor Modules } ACCESS read-only STATUS mandatory DESCRIPTION "The base type of this module. This object is used to describe the core functions of the module. Often, base designs are derived into multiple module types which are typically just packaging variations (e.g. changing the connector types). The value of this object corresponds to the value of gsEResourceBaseType." ::= { gsEModuleEntry 4 } gsEModuleSlotWidth OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The number of slots that this module occupies." ::= { gsEModuleEntry 5 } gsEModuleSlotOffset OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The slot offset (one based) that identifies, along with the slot width and slot location, the actual slots that this module occupies. The offset identifies which slot within the width of the module that this module reports as its slot number." ::= { gsEModuleEntry 6 } gsEModulePorts OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The total number of ports associated with this module." ::= { gsEModuleEntry 7 } -- PORT MANAGEMENT gsEPorts OBJECT IDENTIFIER ::= { gsEChassis 6 } -- PORT MANAGEMENT DISCUSSION -- -- This section manages the physical ports within the system. -- -- There are attributes that are generic to the physical port class and every -- physical port in the system supports these attributes. These attributes are -- represented in the generic port management section. -- -- Note, however, that the following operations WILL EACH RESULT IN AN ERROR: -- Setting gsEPortMode to disable(2) for an internal(1) port -- Setting gsEPortName for an internal(1)) port -- -- Each type of port may also support other gsEPortType-specific attributes. -- If a port supports a particular attribute, there is an instance of that port -- in the table that manages that attribute. These attributes are represented -- in the port tables that follow the generic port management section. -- -- internal(1) ports do not support any type-specific attributes. -- -- ether-ten-oneHundred(2) ports support: -- gsEPortFlowControlMode -- gsEPortDuplexMode -- gsEPortSpeedMode -- gsEPortAutoNegotiationMode -- gsEPortAutoNegotiationSpeedAdvertisement -- gsEPortAutoNegotiationDuplexAdvertisement -- gsEPortRateLimitMode -- gsEPortRateLimitRate -- gsEPortRateLimitBurstSize -- -- ether-oneHundred(3) ports support: -- gsEPortFlowControlMode -- gsEPortDuplexMode -- gsEPortRateLimitMode -- gsEPortRateLimitRate -- gsEPortRateLimitBurstSize -- -- ether-gigabit(4) ports (pre-standard) support: -- gsEPortFlowControlMode -- (setting to enable-with-aggressive-backoff(3) RESULTS IN AN ERROR) -- GENERIC PORT MANAGEMENT gsEPortMgt OBJECT IDENTIFIER ::= { gsEPorts 1 } gsEPortTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of information related to every data port in this data networking system." ::= { gsEPortMgt 1 } gsEPortEntry OBJECT-TYPE SYNTAX GsEPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A data port associated with this data networking system." INDEX { gsEPortIndex } ::= { gsEPortTable 1 } GsEPortEntry ::= SEQUENCE { gsEPortIndex ResourceId, gsEPortName DisplayString, gsEPortType INTEGER, gsEPortBaseType INTEGER, gsEPortMode INTEGER, gsEPortStatus INTEGER, gsEPortConnector INTEGER, gsEPortSpeedState INTEGER, gsEPortDuplexState INTEGER, gsEPortGroupBinding ResourceId } gsEPortIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this port. Typically, ports are child resources of the module that contains them. In these cases, ports are identified by their module and their relative physical position on that module." ::= { gsEPortEntry 1 } gsEPortName OBJECT-TYPE SYNTAX DisplayString (SIZE(0..31)) ACCESS read-write STATUS mandatory DESCRIPTION "The user-assigned name for this port. Note that setting this object for an internal(1) port results in an error." ::= { gsEPortEntry 2 } gsEPortType OBJECT-TYPE SYNTAX INTEGER { internal(1), ether-ten-oneHundred(2), ether-oneHundred(3), ether-gigabit(4) } ACCESS read-only STATUS mandatory DESCRIPTION "An internal(1) port does not have an external connection. An ether-ten-oneHundred(2) port is an Ethernet port which can be switched between 10 and 100 megabits per second. An ether-oneHundred(3) port is a 100 megabits per second Fast Ethernet port. An ether-gigabit(4) port is a 1000 megabits per second Gigabit Ethernet port." ::= { gsEPortEntry 3 } gsEPortBaseType OBJECT-TYPE SYNTAX INTEGER { internal(1), ether-ten-oneHundred(2), ether-oneHundred(3), ether-gigabit(4) } ACCESS read-only STATUS mandatory DESCRIPTION "The base type of this port. This object may be useful to help manage new port types that are similar in nature to legacy port types." ::= { gsEPortEntry 4 } gsEPortMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The mode of this port. When set to enable(1), this port passes data. When set to disable(2), the port does not receive or transmit data, nor does it generate port-level signaling e.g. link integrity pulses. Note that setting an internal(1) port to disable(2) results in an error." ::= { gsEPortEntry 5 } gsEPortStatus OBJECT-TYPE SYNTAX INTEGER { disabled(1), okay(2), warning(3), disabledButOkay(4), linkFailure(5) } ACCESS read-only STATUS mandatory DESCRIPTION "The status of this port. Disabled(1) means that this port has been disabled through management action. Okay(2) indicates that this port is operating properly. Warning(3) indicates that this port is encountering an abnormal condition that, however, allows it to continue to pass data. LinkFailure(5) means that this port is unable to pass data." ::= { gsEPortEntry 6 } gsEPortConnector OBJECT-TYPE SYNTAX INTEGER { internal(1), rj45(2), fiber-ST(3), fiber-SC(4), rs-232(5), aui(6) } ACCESS read-only STATUS mandatory DESCRIPTION "The connector type associated with this port." ::= { gsEPortEntry 7 } gsEPortSpeedState OBJECT-TYPE SYNTAX INTEGER { ten-megabits-per-second(1), one-hundred-megabits-per-second(2), one-gigabit-per-second(3), under-negotiation(4) } ACCESS read-only STATUS mandatory DESCRIPTION "The data rate of this port in bits per second. For example, a standard Ethernet port (e.g. 10BASE-T) would indicate a value of ten-megabits-per-second((1) indicating that the port supports a data rate of 10Mb/s. For ports that can change their data rate (e.g. 10/100 ports), the value of this object indicates the current state of the port's speed capability." ::= { gsEPortEntry 8 } gsEPortDuplexState OBJECT-TYPE SYNTAX INTEGER { half-duplex(1), full-duplex(2), under-negotiation(3) } ACCESS read-only STATUS mandatory DESCRIPTION "The value of this object indicates whether this port is operating in full- or half-duplex mode. The value under-negotiation(3) indicates that the port has not selected an operational duplex setting yet." ::= { gsEPortEntry 9 } gsEPortGroupBinding OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "Each port is associated with a port group. Typically, a port will belong to a port group of one and the value of this object will be the same as the port index for this instance. That is, this port will point to itself. The intent of this object is to help manage ports that have hierarchical relationships. For example, an ATM port typically has a physical port and multiple logical ports (e.g. each logical port corresponding to an instance of an emulated LAN). In this case, each LANE instance would refer to the instance of the physical port associated with the ATM front-end. Another example is an FDDI DAS type port. In this case, there is a logical port associated with the FDDI switch port which is connected to the two FDDI physical port connectors. The physical FDDI ports both point to the logical instance of an FDDI port." ::= { gsEPortEntry 10 } -- PORT FLOW CONTROL gsEPortFlowControlMgt OBJECT IDENTIFIER ::= { gsEPorts 2 } -- Flow Control -- -- Flow control is used by ports to slow down the incoming flow of data. It has been -- shown to be a very effective mechanism for improving network efficiency when used -- in conjunction with an end-station. gsEPortFlowControlTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortFlowControlEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of ports that support flow control." ::= { gsEPortFlowControlMgt 1 } gsEPortFlowControlEntry OBJECT-TYPE SYNTAX GsEPortFlowControlEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Configuration objects related to port based flow control." INDEX { gsEPortIndex } ::= { gsEPortFlowControlTable 1 } GsEPortFlowControlEntry ::= SEQUENCE { gsEPortFlowControlMode INTEGER } gsEPortFlowControlMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), enable-with-aggressive-backoff(3) } ACCESS read-write STATUS mandatory DESCRIPTION "Flow control is used to prevent or reduce the dropping of frames due to the lack of buffer space. Overall, networks are more efficient when a sending station is asked to pause in its sending process, rather than having the transmitted frames dropped. Flow control is not as efficient when used in conjunction with a shared ports, i.e. when used with a repeater. Therefore, flow control is not recommended for a port connected to shared topologies. Flow control is most effective when the port is directly connected to an end-station, especially when connected to a server. Flow control is recommended for ports connected directly to end-stations. When the port is in half-duplex mode, back pressure is used to control the incoming flow. Back pressure essentially forces collisions for short periods of time. When the port is in full-duplex mode, IEEE 802.3 standard pause frames are used to control the incoming flow. Note that setting an ether-gigabit(4) port to enable-with-aggressive-backoff(3) results in an error." ::= { gsEPortFlowControlEntry 21 } -- DUPLEX MODE gsEPortDuplexMgt OBJECT IDENTIFIER ::= { gsEPorts 3 } -- A table that manages each port that supports the ability to switch -- between full- and half- duplex mode. gsEPortDuplexTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortDuplexEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of ports that support full- and half-duplex data communications." ::= { gsEPortDuplexMgt 1 } gsEPortDuplexEntry OBJECT-TYPE SYNTAX GsEPortDuplexEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A port device configuration that controls the duplex mode of this port." INDEX { gsEPortIndex } ::= { gsEPortDuplexTable 1 } GsEPortDuplexEntry ::= SEQUENCE { gsEPortDuplexMode INTEGER } gsEPortDuplexMode OBJECT-TYPE SYNTAX INTEGER { half-duplex(1), full-duplex(2) } ACCESS read-write STATUS mandatory DESCRIPTION "A point-to-point Ethernet port may be configured to support half or full duplex communications. A full-duplex(2) port transmits and receives data concurrently, effectively doubling the data rate of the port. Half-duplex(1) ports transmit or receive data, but not at the same time. Half-duplex ports use CSMA/CD as the access method to the network. Ports that are connected to shared segments (i.e. connected to a repeater), should always be configured to be in half-duplex mode. This object indicates the desired duplexity of this port. If auto-negotiation is turned on for this port, then this value is ignored." ::= { gsEPortDuplexEntry 31 } -- SPEED MODE -- The Speed Table manages the speed mode for ports that can switch speeds. gsEPortSpeedMgt OBJECT IDENTIFIER ::= { gsEPorts 4 } gsEPortSpeedTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortSpeedEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of port devices that support multiple speeds." ::= { gsEPortSpeedMgt 1 } gsEPortSpeedEntry OBJECT-TYPE SYNTAX GsEPortSpeedEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A port that supports multiple speeds." INDEX { gsEPortIndex } ::= { gsEPortSpeedTable 1 } GsEPortSpeedEntry ::= SEQUENCE { gsEPortSpeedMode INTEGER } gsEPortSpeedMode OBJECT-TYPE SYNTAX INTEGER { ten-megabits-per-second(1), one-hundred-megabits-per-second(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Some of these values may not be applicable to certain types of ports. This object indicates the desired data rate of this port. If auto-negotiation is turned on for this port, then this value is ignored." ::= { gsEPortSpeedEntry 41 } -- AUTO NEGOTIATION gsEPortAutoNegotiationMgt OBJECT IDENTIFIER ::= { gsEPorts 5 } gsEPortAutoNegotiationTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortAutoNegotiationEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of ports that support auto-negotiation." ::= { gsEPortAutoNegotiationMgt 1 } gsEPortAutoNegotiationEntry OBJECT-TYPE SYNTAX GsEPortAutoNegotiationEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Attributes associated with a port that supports auto-negotiation." INDEX { gsEPortIndex } ::= { gsEPortAutoNegotiationTable 1 } GsEPortAutoNegotiationEntry ::= SEQUENCE { gsEPortAutoNegotiationMode INTEGER, gsEPortAutoNegotiationSpeedAdvertisement INTEGER, gsEPortAutoNegotiationDuplexAdvertisement INTEGER } gsEPortAutoNegotiationMode OBJECT-TYPE SYNTAX INTEGER { autoNegotiate(1), manualConfiguration(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Setting this object to autoNegotiate(1) causes this port to negotiate the duplex mode and the port speed, subject to the port's capabilities." ::= { gsEPortAutoNegotiationEntry 51 } gsEPortAutoNegotiationSpeedAdvertisement OBJECT-TYPE SYNTAX INTEGER { ten-and-one-hundred-megabits-per-second(1), one-hundred-megabits-per-second(2), ten-megabits-per-second(3) } ACCESS read-write STATUS mandatory DESCRIPTION "The speed to advertise while auto-negotiating." ::= { gsEPortAutoNegotiationEntry 52 } gsEPortAutoNegotiationDuplexAdvertisement OBJECT-TYPE SYNTAX INTEGER { full-and-half-duplex(1), half-duplex(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The duplexity to advertise while auto-negotiating." ::= { gsEPortAutoNegotiationEntry 53 } -- RATE LIMITING gsEPortRateLimitMgt OBJECT IDENTIFIER ::= { gsEPorts 6 } -- Rate Limiting -- -- This table manages the rate limiting for ports that support this feature. Rate Limiting -- prevents floods from overwhelming a port (typically, a slower port). gsEPortRateLimitTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortRateLimitEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of ports that support the ability to limit the rate of floods." ::= { gsEPortRateLimitMgt 1 } gsEPortRateLimitEntry OBJECT-TYPE SYNTAX GsEPortRateLimitEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The rate limit configuration associated with this port." INDEX { gsEPortIndex } ::= { gsEPortRateLimitTable 1 } GsEPortRateLimitEntry ::= SEQUENCE { gsEPortRateLimitMode INTEGER, gsEPortRateLimitRate INTEGER, gsEPortRateLimitBurstSize INTEGER } gsEPortRateLimitMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2), enableIncludeKnownMulticast(3) } ACCESS read-write STATUS mandatory DESCRIPTION "This object configures whether rate limiting is enabled for this port (the factory default is enable(1)). Enabling rate limiting for this port prevents floods from overwhelming the output buffer associated with this port. Normally, rate limiting will only consider frames that are flooded to this port. This typically does not include known multicasts. However, known multicasts can be included in the flood limiting by setting the value of this object to enableIncludeKnownMulticast(3)." ::= { gsEPortRateLimitEntry 61 } gsEPortRateLimitRate OBJECT-TYPE SYNTAX INTEGER { one-percent(1), two-percent(2), five-percent(3), ten-percent(4), twenty-percent(5), forty-percent(6), eighty-percent(7) } ACCESS read-write STATUS mandatory DESCRIPTION "The percentage of the port's transmitted data allowed to be floods (or floods and known multicasts). For example, the factory default setting of twenty-percent(4) indicates that 20% of the data rate can be floods. For 10 Mb/s ports, this is equivalent to a maximum rate of approximately 3000 flooded pps; for 100 Mb/s ports, a maximum rate of approximately 30,000 flooded pps." ::= { gsEPortRateLimitEntry 62 } gsEPortRateLimitBurstSize OBJECT-TYPE SYNTAX INTEGER { rateLimit1(1), rateLimit2(2), rateLimit4(3), rateLimit8(4), rateLimit16(5), rateLimit32(6), rateLimit64(7), rateLimit128(8), rateLimit256(9), rateLimit1024(10), rateLimit2048(11) } ACCESS read-write STATUS mandatory DESCRIPTION "The maximum number of consecutive transmitted flooded (or flooded and known multicasted) packets. Typically, the burst size is set so as to not overflow the port's buffer." ::= { gsEPortRateLimitEntry 63 } -- PORT CATEGORY gsEPortCategoryMgt OBJECT IDENTIFIER ::= { gsEPorts 8 } gsEPortCategoryTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortCategoryEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of ports that support the port category feature. Currently, all ports support this capability." ::= { gsEPortCategoryMgt 1 } gsEPortCategoryEntry OBJECT-TYPE SYNTAX GsEPortCategoryEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A port that supports port categorization." INDEX { gsEPortIndex } ::= { gsEPortCategoryTable 1 } GsEPortCategoryEntry ::= SEQUENCE { gsEPortCategoryMode INTEGER } gsEPortCategoryMode OBJECT-TYPE SYNTAX INTEGER { userPort(1), servicePort(2) } ACCESS read-write STATUS mandatory DESCRIPTION "By default, all ports are considered service ports. A service port is a port that provides a networks service such as a connection to a server, other switches, or the like. A service port will trigger the service port event for status changes with the alarm severity and will trigger an alarm in the alarm table on link failure. In contrast, user ports trigger the user link event with warning severity. They do not trigger an alarm upon link failures. User ports are useful to prevent floods of traps or entries in the alarm table. This is especially true for ports connected to user hosts that power up in the morning and power down again at the end of the work day." ::= { gsEPortCategoryEntry 81 } -- BUFFER MANAGEMENT -- -- This section is dedicated to managing any buffers that exist in the system. -- Buffers are used to store network traffic. They are indexed by the module -- that contains the buffer and a unique index within the buffer. gsEBufferMgt OBJECT IDENTIFIER ::= { gsEChassis 7 } gsEBufferTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEBufferEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of frame buffers in the system." ::= { gsEBufferMgt 1 } gsEBufferEntry OBJECT-TYPE SYNTAX GsEBufferEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Objects related to the management of this frame buffer." INDEX { gsEBufferIndex } ::= { gsEBufferTable 1 } GsEBufferEntry ::= SEQUENCE { gsEBufferIndex ResourceId, gsEBufferFabricPort ResourceId, gsEBufferFabricPortDirection INTEGER, gsEBufferSwitchPort ResourceId, gsEBufferMemory INTEGER, gsEBufferAgeTimer INTEGER, gsEBufferPriorityServicing INTEGER, gsEBufferPriorityAllocation INTEGER, gsEBufferPriorityThreshold INTEGER, gsEBufferCongestion INTEGER, gsEBufferHighOverflowDrops Counter, gsEBufferLowOverflowDrops Counter, gsEBufferHighStaleDrops Counter, gsEBufferLowStaleDrops Counter, gsEBufferCongestionDrops Counter } gsEBufferIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The unique index that identifies this buffer within the system. Buffers are indexed first by their module association and then a unique index within that module." ::= { gsEBufferEntry 1 } gsEBufferFabricPort OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The switch fabric port associated with this buffer." ::= { gsEBufferEntry 2 } gsEBufferFabricPortDirection OBJECT-TYPE SYNTAX INTEGER { in(1), out(2) } ACCESS read-only STATUS mandatory DESCRIPTION "The value of this object indicates whether the buffer is used for buffering frames going into the switching fabric or coming out of the fabric." ::= { gsEBufferEntry 3 } gsEBufferSwitchPort OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The switch port associated with this frame buffer. Some buffers are not associated with any one switch port. In those cases, the value of the resource ID returned will be the null resource ID." ::= { gsEBufferEntry 4 } gsEBufferMemory OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The amount of memory available for frame buffering in Kilobytes (KB)." ::= { gsEBufferEntry 5 } gsEBufferAgeTimer OBJECT-TYPE SYNTAX INTEGER { disable(1), quarter-second(2), one-second(3) } ACCESS read-write STATUS mandatory DESCRIPTION "Configures the timer used for aging frames in this buffer. If the timer expires for a frame, the frame is dropped and the event is counted in the stale drop counter. By default, the age timer is set to a 0.25 seconds (quarter of a second). The actual time that a frame may be aged out may vary. When set to a quarter of a second (250ms), the actual time may vary between 160ms and 320ms. When set to a second (1000ms), the time may vary between 640ms and 1.28 seconds (1028ms)." ::= { gsEBufferEntry 6 } gsEBufferPriorityServicing OBJECT-TYPE SYNTAX INTEGER { strictPriority(1), everyTenThousand(2), everyThousand(3), everyHundred(4), everyFour(5) } ACCESS read-write STATUS mandatory DESCRIPTION "The value of this object configures how often the normal priority queue is serviced relative to the high priority queue. By default, the normal priority queue is serviced every thousand frames(3). This means that the normal priority queue is guaranteed to be serviced after servicing, at most, one thousand high priority frames. It is important to service the normal priority queue for two reasons. One is to prevent starvation for frames on the normal priority queue. The other reason is that frames cannot be aged if they are not serviced (see the age timer)." ::= { gsEBufferEntry 7 } gsEBufferPriorityAllocation OBJECT-TYPE SYNTAX INTEGER { none(1), tenPercent(2), twentyPercent(3), thirtyPercent(4), fortyPercent(5), fiftyPercent(6) } ACCESS read-write STATUS mandatory DESCRIPTION "This object controls how much of the total buffer space should be allocated to high priority queue. Please be warned that setting this object to a different value causes the associated buffer to reset, causing a short loss of data. Setting the value of this object to none(1) not only allocates the entire buffer space to normal traffic, but also has the side effect of disabling the priority threshold. In other words, all traffic will be considered as normal priority traffic." ::= { gsEBufferEntry 8 } gsEBufferPriorityThreshold OBJECT-TYPE SYNTAX INTEGER { none(1), one(2), two(3), three(4), four(5), five(6), six(7), seven(8) } ACCESS read-write STATUS mandatory DESCRIPTION "This object configures the threshold for which frames are considered high priority. Frames may have a priority classification ranging from 0-7, 7 being the highest. By default, every frame that has priority 4 (four(5)) or above is considered a high priority frame and is buffered accordingly. If this buffer does not have any buffer space allocated for high priority frames, then the buffer threshold will be none(1). Setting this object to a different value without allocating buffer space to high priority traffic will result in an error." ::= { gsEBufferEntry 9 } gsEBufferCongestion OBJECT-TYPE SYNTAX INTEGER { informationNotAvailable(1), notCongested(2), congested(3) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates whether this buffer is in a congested state.." ::= { gsEBufferEntry 10 } gsEBufferHighOverflowDrops OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The count of the number of high priority frames dropped due to the high priority queue overflowing." ::= { gsEBufferEntry 11 } gsEBufferLowOverflowDrops OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The count of the number of low priority frames dropped due to the low priority queue overflowing." ::= { gsEBufferEntry 12 } gsEBufferHighStaleDrops OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The count of the number of high priority frames dropped due to being in the high priority queue too long (the frame aged out)." ::= { gsEBufferEntry 13 } gsEBufferLowStaleDrops OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The count of the number of low priority frames dropped due to being in the low priority queue too long (the frame aged out)." ::= { gsEBufferEntry 14 } gsEBufferCongestionDrops OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The count of the number of frames dropped due to the destination (output) buffer being congested. " ::= { gsEBufferEntry 16 } -- SWITCHING gsESwitching OBJECT IDENTIFIER ::= { gsEMIB 5 } -- LAYER II SWITCHING gsESwitchingLayerII OBJECT IDENTIFIER ::= { gsESwitching 1 } -- SWITCH MANAGEMENT gsESwitchGen OBJECT IDENTIFIER ::= { gsESwitchingLayerII 1 } gsESwitchSTPConfig OBJECT-TYPE SYNTAX INTEGER { ieee8021dStp(1), -- simple bridge stpPerVlan(2), -- virtual bridging twoLayerStp(3), -- separate planes disable(4) -- STP disabled } ACCESS read-write STATUS mandatory DESCRIPTION "When set to ieee8021dStp(1), the switch executes spanning tree conformant to the IEEE 802.1D bridging standard. The switch runs one instance of spanning tree. When set to stpPerVlan(2), the switch executes a separate instance of spanning tree for each virtual LAN. This configuration conforms to the model that instances of virtual LANs within the switch are separate virtual bridging functions. This method may not work well with bridge/routers that are also running spanning tree. When set to twoLayerStp(3), the switch executes a two-layer spanning tree to prevent loops. Two layer spanning tree creates a higher 'plane' of spanning tree between VLAN devices. This method of running spanning tree is 'plug and play' with bridge/router type devices and also scales better than the other two methods for large environments. When set to disable(4), spanning tree is disabled in the switch." ::= { gsESwitchGen 1 } gsESwitchAgingTime OBJECT-TYPE SYNTAX INTEGER (10..1000000) ACCESS read-write STATUS mandatory DESCRIPTION "The timeout period in seconds for aging dynamically learned forwarding information. A default of 300 seconds is recommended. An aged entry is marked invalid, but is not removed from the Address Forwarding Table, because it is assumed that it will be relearned to the same location within the table." ::= { gsESwitchGen 2 } gsESwitchSuperAgingTime OBJECT-TYPE SYNTAX INTEGER (1..30) ACCESS read-write STATUS mandatory DESCRIPTION "The timeout period in days for removing stale invalid entries from the Address Forwarding Table. A superaged entry is removed completely from the Address Forwarding Table, because it is assumed that the entry will never be relearned." ::= { gsESwitchGen 3 } -- LAYERII -- BRIDGE MANAGEMENT gsEBridgeMgmt OBJECT IDENTIFIER ::= { gsESwitchingLayerII 2 } -- Bridge Table gsEBridgeTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEBridgeEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of Spanning Tree information for every bridge in the system." ::= { gsEBridgeMgmt 1 } gsEBridgeEntry OBJECT-TYPE SYNTAX GsEBridgeEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" INDEX { gsEBridgeIndex } ::= { gsEBridgeTable 1 } GsEBridgeEntry ::= SEQUENCE { gsEBridgeIndex ResourceId, gsEBridgeType INTEGER, gsEBridgeMode INTEGER, gsEBridgeStatus INTEGER, gsEBridgeStpPriority INTEGER, gsEBridgeStpTimeSinceTopologyChange TimeTicks, gsEBridgeStpTopChanges Counter, gsEBridgeStpDesignatedRoot BridgeId, gsEBridgeStpRootCost INTEGER, gsEBridgeStpRootPort INTEGER, gsEBridgeStpMaxAge Timeout, gsEBridgeStpHelloTime Timeout, gsEBridgeStpHoldTime INTEGER, gsEBridgeStpForwardDelay Timeout, gsEBridgeStpBridgeMaxAge Timeout, gsEBridgeStpBridgeHelloTime Timeout, gsEBridgeStpBridgeForwardDelay Timeout } gsEBridgeIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this bridge." ::= { gsEBridgeEntry 1 } gsEBridgeType OBJECT-TYPE SYNTAX INTEGER { dot1d(1), virtual(2) } ACCESS read-only STATUS mandatory DESCRIPTION "Indicates whether this is a legacy dot1d bridge consisting of all switch ports or a virtual bridge consisting of all virtual subports for a particular Vlan." ::= { gsEBridgeEntry 2 } gsEBridgeMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Used to enable or disable Spanning Tree for this bridge. When set to disable(2), all BPDUs are forwarded like regular multicast packets. The default value is enable(1)." ::= { gsEBridgeEntry 3 } gsEBridgeStatus OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-only STATUS mandatory DESCRIPTION "The enable/disable status of this bridge. This object incorporates the setting of the gsESwitchSTPConfig object. When gsESwitchSTPConfig is set such that this bridge will not be active, gsEBridgeStatus returns disabled(2). If gsESwitchSTPConfig is set such that this bridge will be active, and gsEBridgeMode is enable(1), this object returns enabled(2)." ::= { gsEBridgeEntry 4 } gsEBridgeStpPriority OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The priority value of the Bridge Identifier. See dot1dStpPriority." ::= { gsEBridgeEntry 5 } gsEBridgeStpTimeSinceTopologyChange OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The time since the last topology change was detected. See dot1dStpTimeSinceTopologyChange." ::= { gsEBridgeEntry 6 } gsEBridgeStpTopChanges OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The total number of topology changes. See dot1dStpTopChanges" ::= { gsEBridgeEntry 7 } gsEBridgeStpDesignatedRoot OBJECT-TYPE SYNTAX BridgeId ACCESS read-only STATUS mandatory DESCRIPTION "The bridge considered to be root by this node. See dot1dStpDesignatedRoot." ::= { gsEBridgeEntry 8 } gsEBridgeStpRootCost OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The cost of the path to the root from this node. See dot1dStpRootCost." ::= { gsEBridgeEntry 9 } gsEBridgeStpRootPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The port number with the lowest cost path to the root bridge. See dot1dStpRootPort." ::= { gsEBridgeEntry 10 } gsEBridgeStpMaxAge OBJECT-TYPE SYNTAX Timeout ACCESS read-only STATUS mandatory DESCRIPTION "The maximum age used by this bridge to hold onto STP information before discarding. See dot1dStpMaxAge." ::= { gsEBridgeEntry 11 } gsEBridgeStpHelloTime OBJECT-TYPE SYNTAX Timeout ACCESS read-only STATUS mandatory DESCRIPTION "The amount of time between configuration BPDUs. See dot1dStpHelloTime." ::= { gsEBridgeEntry 12 } gsEBridgeStpHoldTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The time value that indicates the interval during which no more than two configuration BPDUs will be sent by this node. See dot1dStpHoldTime." ::= { gsEBridgeEntry 13 } gsEBridgeStpForwardDelay OBJECT-TYPE SYNTAX Timeout ACCESS read-only STATUS mandatory DESCRIPTION "The amount of time that this node stays in each of the Listening and Learning states. See dot1dStpForwardDelay." ::= { gsEBridgeEntry 14 } gsEBridgeStpBridgeMaxAge OBJECT-TYPE SYNTAX Timeout (600..4000) ACCESS read-write STATUS mandatory DESCRIPTION "The value of MaxAge when this bridge is the root. See dot1dStpBridgeMaxAge." ::= { gsEBridgeEntry 15 } gsEBridgeStpBridgeHelloTime OBJECT-TYPE SYNTAX Timeout (100..1000) ACCESS read-write STATUS mandatory DESCRIPTION "The value of HelloTime to use when this bridge is the root. See dot1dStpBridgeHelloTime." ::= { gsEBridgeEntry 16 } gsEBridgeStpBridgeForwardDelay OBJECT-TYPE SYNTAX Timeout (400..3000) ACCESS read-write STATUS mandatory DESCRIPTION "The value of FowardDelay to use when this bridge is the root. See dot1dStpBridgeForwardDelay." ::= { gsEBridgeEntry 17 } -- Bridge Port Table gsEBridgePortMgmt OBJECT IDENTIFIER ::= { gsESwitchingLayerII 3 } gsEBridgePortTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEBridgePortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION " A table of Spanning Tree information for every port that supports Spanning Tree in every bridge in the system " ::= { gsEBridgePortMgmt 1 } gsEBridgePortEntry OBJECT-TYPE SYNTAX GsEBridgePortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" INDEX { gsEBridgePortIndex } ::= { gsEBridgePortTable 1 } GsEBridgePortEntry ::= SEQUENCE { gsEBridgePortIndex ResourceId, gsEBridgePortPriority INTEGER, gsEBridgePortState INTEGER, gsEBridgePortEnable INTEGER, gsEBridgePortPathCost INTEGER, gsEBridgePortDesignatedRoot BridgeId, gsEBridgePortDesignatedCost INTEGER, gsEBridgePortDesignatedBridge BridgeId, gsEBridgePortDesignatedPort OCTET STRING, gsEBridgePortForwardTransitions Counter, gsEBridgePortFastStart INTEGER, gsEBridgePortSetDefault INTEGER, gsEBridgePortEnableChangeDetection INTEGER } gsEBridgePortIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this bridge port. This index corresponds to the gsEResourceIndex for bridge port type resources." ::= { gsEBridgePortEntry 1 } gsEBridgePortPriority OBJECT-TYPE SYNTAX INTEGER (0..255) ACCESS read-write STATUS mandatory DESCRIPTION "The value of the priority field in the port ID. See dot1dStpPortPriority. The default value is 128." ::= { gsEBridgePortEntry 2 } gsEBridgePortState OBJECT-TYPE SYNTAX INTEGER { disabled(1), blocking(2), listening(3), learning(4), forwarding(5), broken(6) } ACCESS read-only STATUS mandatory DESCRIPTION "The port's current state as defined by the Spanning Tree Protocol. See dot1dStpPortState. The virtual port is considered broken if its switch port is blocked." ::= { gsEBridgePortEntry 3 } gsEBridgePortEnable OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The enabled/disabled status of this port. See dot1dStpPortEnable. The default is enabled(2)." ::= { gsEBridgePortEntry 4 } gsEBridgePortPathCost OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The contribution of this port to the path cost of the paths towards the spanning tree root. See dot1dStpPortPathCost. The default value is dependent on the port speed, trunking mode, and duplexity." ::= { gsEBridgePortEntry 5 } gsEBridgePortDesignatedRoot OBJECT-TYPE SYNTAX BridgeId ACCESS read-only STATUS mandatory DESCRIPTION "The bridge recorded as root for this port's segment. See dot1dStpPortDesignatedRoot." ::= { gsEBridgePortEntry 6 } gsEBridgePortDesignatedCost OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The path cost of the designated root of the segment connected to this port. See dot1dStpPortDesignatedCost." ::= { gsEBridgePortEntry 7 } gsEBridgePortDesignatedBridge OBJECT-TYPE SYNTAX BridgeId ACCESS read-only STATUS mandatory DESCRIPTION "The bridge identifier of the bridge that is considered the designated bridge for this port's segment. See dot1dStpPortDesignatedBridge." ::= { gsEBridgePortEntry 8 } gsEBridgePortDesignatedPort OBJECT-TYPE SYNTAX OCTET STRING (SIZE (2)) ACCESS read-only STATUS mandatory DESCRIPTION "The port identifier of the port on the Designated Bridge for this port's segment. See dot1dStpPortDesignatedPort." ::= { gsEBridgePortEntry 9 } gsEBridgePortForwardTransitions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of times this port has transitioned from the learning state to the forwarding state. See dot1dStpPortForwardTransitions." ::= { gsEBridgePortEntry 10 } gsEBridgePortFastStart OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS deprecated DESCRIPTION "This object is being replaced by the switch port object gsESwitchPortFastStart. When this bridge port object is set to enable(1), the bridge port and all other bridge ports on the same switch port, transition right from blocking to forwarding, skipping the listening and learning states. When this bridge port object is set to disable(2), the bridge port and all other bridge ports on the same switch port have this option disabled. The user should be warned that using the fast start feature greatly increases the likelihood of unintended network loops that would otherwise be prevented by participating in the normal spanning tree algorithm. The factory default value for this object is disable(2)." ::= { gsEBridgePortEntry 11 } gsEBridgePortSetDefault OBJECT-TYPE SYNTAX INTEGER { useCurrentValues(1), setDefault(2) } ACCESS read-write STATUS mandatory DESCRIPTION "When set to setDefault(2), the gsEBridgePortPriority, gsEBridgePortEnable, and gsEBridgePortPathCost will be set to the factory default values." ::= { gsEBridgePortEntry 12 } gsEBridgePortEnableChangeDetection OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "When this object is set to enable(1), a Topology Change Notification will be generated when this port goes to Blocking or Forwarding (if the port is a designated port). When set to disable(2), no Topology Change Notification will be generated for this port." ::= { gsEBridgePortEntry 13 } -- ADDRESS MANAGEMENT gsEL2AddrMgmt OBJECT IDENTIFIER ::= { gsESwitchingLayerII 4 } -- Address Database gsEL2AddrDatabaseMgt OBJECT IDENTIFIER ::= { gsEL2AddrMgmt 1 } -- Address Database -- -- The address table provides data that would normally be available from the standard -- bridge MIB. The standard bridge MIB has a few short comings, however. -- -- 1. It is indexed by MACAddress, forcing the bridge to sort a table that is normally -- hashed. When the address table is quite large, this sorting can become quite a drag on -- the processor. -- -- 2. The bridge MIB address table does not extend well to devices that support virtual -- LANs. -- -- 3. There are other objects that are desirable to be managed that the standard MIB does -- not support. -- -- This address database is indexed by address entry index. Each address entry has the -- traditional layer II MAC Address and port binding for that address, as well as some -- other value added fields such as address priority. -- -- Each address entry is logically contained by a separate address filtering table (AFT). -- Separate address tables are important to the support of Virtual LANs (VLANs). For -- frames that are explicitly bound to a VLAN either by explicit tagging or by source -- port association (port-based VLANs), separate AFTs enable a host to -- appear on different VLANs with different port bindings. Also, for frames that are -- implicitly bound to VLANs based on protocol type and/or host address, separate -- AFTs enable layer III VLANs for client systems. -- -- In the case where the AFT is supporting a VLAN with a host or host, protocol policy, -- the VLAN index indicated is the VLAN classification for that host or host, protocol -- combination. -- -- Note, it is the default to create separate AFTs for each VLAN and for each protocol -- type. In some cases, this may not be desirable and in these cases, multiple VLANs -- and/or protocols may point to the same AFTs. gsEL2AddressTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEL2AddressEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of address table entries. The address table is used by the bridging function to perform forwarding and filtering decisions. An address may appear multiple times in different entries corresponding to the different logical address tables." ::= { gsEL2AddrDatabaseMgt 1 } gsEL2AddressEntry OBJECT-TYPE SYNTAX GsEL2AddressEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A particular address table entry." INDEX { gsEL2AddressIndex } ::= { gsEL2AddressTable 1 } GsEL2AddressEntry ::= SEQUENCE { gsEL2AddressIndex INTEGER, gsEL2AddressTableIndex INTEGER, gsEL2AddressMacAddress MacAddress, gsEL2AddressPortBinding ResourceId, gsEL2AddressBindingValid INTEGER, gsEL2AddressVlanID INTEGER, gsEL2AddressPriority INTEGER, gsEL2AddressForward INTEGER, gsEL2AddressCopy INTEGER, gsEL2AddressPersistence INTEGER, gsEL2AddressStatus INTEGER } gsEL2AddressIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this address entry." ::= { gsEL2AddressEntry 1 } gsEL2AddressTableIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The address table that this entry is associated with." ::= { gsEL2AddressEntry 2 } gsEL2AddressMacAddress OBJECT-TYPE SYNTAX MacAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IEEE 802 MAC Address associated with this database entry." ::= { gsEL2AddressEntry 3 } gsEL2AddressPortBinding OBJECT-TYPE SYNTAX ResourceId ACCESS read-write STATUS mandatory DESCRIPTION "The switch port that this address is associated with. " ::= { gsEL2AddressEntry 4 } gsEL2AddressBindingValid OBJECT-TYPE SYNTAX INTEGER { valid(1), invalid(2) } ACCESS read-only STATUS mandatory DESCRIPTION "The port binding of an address entry is aged out in conformance with the specifications laid out in the IEEE 802.1D standard. When the address is aged out, the port binding becomes invalid." ::= { gsEL2AddressEntry 5 } gsEL2AddressVlanID OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The VLAN ID of the VLAN that this address entry corresponds to." ::= { gsEL2AddressEntry 6 } gsEL2AddressPriority OBJECT-TYPE SYNTAX INTEGER { priorityZero(1), priorityFour(2) } ACCESS read-write STATUS mandatory DESCRIPTION "If set to high(2), frames destined to this address are classified with priority value 4." ::= { gsEL2AddressEntry 7 } gsEL2AddressForward OBJECT-TYPE SYNTAX INTEGER { normalForward(1), specialDelivery(2) } ACCESS read-only STATUS mandatory DESCRIPTION "When set to specialDelivery(2), frames sent to this address are treated to special delivery where the spanning tree state of the inbound port is ignored. Typically, special delivery is only used for Bridge PDUs such as spanning tree frames." ::= { gsEL2AddressEntry 8 } gsEL2AddressCopy OBJECT-TYPE SYNTAX INTEGER { normalForward(1), copyCPU(2) } ACCESS read-only STATUS mandatory DESCRIPTION "It is sometimes useful for the switch processor to eavesdrop on traffic to certain destinations. This is especially useful in supporting the intelligent multicasting function." ::= { gsEL2AddressEntry 9 } gsEL2AddressPersistence OBJECT-TYPE SYNTAX INTEGER { other(1), invalid(2), permanent(3), deleteOnReset(4), deleteOnTimeout(5) } ACCESS read-write STATUS mandatory DESCRIPTION "This object indicates the persistence of this entry: other(1) - This entry is currently in use but the conditions under which it will remain so are different from each of the following values. invalid(2) - Writing this value to the object removes the corresponding entry. permanent(3) - Address is not aged out. Additionally, if the address is seen as a source on a different port for this VLAN, the frame is filtered and the filter event is counted. Static address entries are stored in non-volatile memory and are restored to the address table following each system reset. deleteOnReset(4) - Indicates that the entry is not aged out, however the entry is not stored in non-volatile memory. Therefore, when the device is reset, the entry will not be restored. deleteOnTimeout(5) - Typically, address entries are learned dynamically by the switch. These entries are aged out of the table if they are not active on the network. This value correlates to this state." ::= { gsEL2AddressEntry 10 } gsEL2AddressStatus OBJECT-TYPE SYNTAX INTEGER { other(1), learned(2), self(3), mgmt(4) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the status of the entry: other(1) - None of the following. learned(2) - This entry was learned dynamically. self(3) - The value of the corresponding instance of gsEAddressMacAddress represents one of the bridge's addresses. mgmt(4) - This entry was added or modified by management. Entries that have been added by management and made permanent" ::= { gsEL2AddressEntry 11 } -- Address Summary Table gsEL2AddrSummaryMgt OBJECT IDENTIFIER ::= { gsEL2AddrMgmt 2 } gsEL2AddrSummaryTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEL2AddrSummaryEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This summary table packs the address entries in the address database into summary objects. The goal is to optimize the upload of the large amount of data stored therein. Typically, a management station would use getNext requests to retrieve the next logical summary object. The returned object value contains the next n entries of the address database packed into one PDU. The instance of the object returned is the index of the last address entry packed in the summary, thereby optimizing for the next getNext request. [ Fix this? What about gets?] " ::= { gsEL2AddrSummaryMgt 1 } gsEL2AddrSummaryEntry OBJECT-TYPE SYNTAX GsEL2AddrSummaryEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A summary object that packs as many address entries possible into a summary object." INDEX { gsEL2AddressIndex } ::= { gsEL2AddrSummaryTable 1 } GsEL2AddrSummaryEntry ::= SEQUENCE { gsEL2AddrSummary OCTET STRING } gsEL2AddrSummary OBJECT-TYPE SYNTAX OCTET STRING (SIZE(20..4096)) ACCESS read-only STATUS mandatory DESCRIPTION "The value of this object is a packed opaque structure representing an array of address entries. The format of this structure is: struct L2AddressEntry { UNS32 index; UNS8 addr[6]; // mac address UNS8 fabricPort; //fabricPort and subPort == gsEL2AddressPortBinding UNS8 subPort; UNS16 vlanID, //the global vlan id UNS8 portBindingValidFlag; UNS8 addressForwardFlag; UNS8 addressCopyFlag; UNS8 addressPersistence; UNS8 addressStatus; }; struct L2AddressSummary{ UNS8 numberOfEntries; // Number of entries that follow UNS8 version; // version == 1 UNS16 endianFlag; L2AddressEntry entryArray[numberOfEntries]; };" ::= { gsEL2AddrSummaryEntry 1 } -- Address Control gsEL2AddrControlMgt OBJECT IDENTIFIER ::= { gsEL2AddrMgmt 3 } gsEL2AddressControlTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEL2AddressControlEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table provides the network manager the ability to create new, static address entries. Entries added through this table are added to the specified address table as a static entry and are save in non-volatile memory for reconfiguration upon system restart. This table is indexed by the gsEAgentMgrIndex value which provides a separate instance for each manager." ::= { gsEL2AddrControlMgt 1 } gsEL2AddressControlEntry OBJECT-TYPE SYNTAX GsEL2AddressControlEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A control entry enables this manager to add a new entry to the specified address table. When the entry is written to, the control index value is reset to 0. When the actual entry is created, the index value will read as non-zero, reporting the actual entry created." INDEX { gsEAgentMgrIndex } ::= { gsEL2AddressControlTable 1 } GsEL2AddressControlEntry ::= SEQUENCE { gsEL2AddressControlIndex INTEGER, gsEL2AddressControlMacAddress MacAddress, gsEL2AddressControlPortBinding ResourceId, gsEL2AddressControlVlanID INTEGER, gsEL2AddressControlPriority INTEGER, gsEL2AddressControlPersistence INTEGER, gsEL2AddressControlStatus INTEGER } gsEL2AddressControlIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index of the address entry that was created for this address." ::= { gsEL2AddressControlEntry 1 } gsEL2AddressControlMacAddress OBJECT-TYPE SYNTAX MacAddress ACCESS read-write STATUS mandatory DESCRIPTION "The IEEE 802 MAC Address associated with this database entry." ::= { gsEL2AddressControlEntry 2 } gsEL2AddressControlPortBinding OBJECT-TYPE SYNTAX ResourceId ACCESS read-write STATUS mandatory DESCRIPTION "The port to bind this address to." ::= { gsEL2AddressControlEntry 3 } gsEL2AddressControlVlanID OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The VLAN ID of the VLAN to bind this address to." ::= { gsEL2AddressControlEntry 4 } gsEL2AddressControlPriority OBJECT-TYPE SYNTAX INTEGER { priorityZero(1), priorityFour(2) } ACCESS read-write STATUS mandatory DESCRIPTION "If set to high(2), frames destined to this address are classified with priority value 4." ::= { gsEL2AddressControlEntry 5 } gsEL2AddressControlPersistence OBJECT-TYPE SYNTAX INTEGER { permanent(1), deleteOnReset(2), deleteOnTimeout(3) } ACCESS read-write STATUS mandatory DESCRIPTION "The persistence of the entry to be created: permanent(1) - Address is not aged out. Additionally, if the address is seen as a source on a different port for this VLAN, the frame is filtered and the filter event is counted. Static address entries are stored in non-volatile memory and are restored to the address table following each system reset. deleteOnReset(2) - Indicates that the entry is not to be aged, however the entry is not stored in non-volatile memory. Therefore, when the device is reset, the entry will not be restored. deleteOnTimeout(3) - Indicates that the entry is to be aged by the normal aging process." ::= { gsEL2AddressControlEntry 6 } gsEL2AddressControlStatus OBJECT-TYPE SYNTAX INTEGER { createRequest(1), underCreation(2), success(3), otherError(4), entryExistsError(5), invalidMacAddress(6), invalidPortBinding(7), invalidVlanID(8) } ACCESS read-write STATUS mandatory DESCRIPTION "The status of an entry to be created. When adding an entry all fields will be set, and then the control status is set to createRequest(1), indicating that the entry is to be created. During creation, the status will be underCreation(2). If the creation is successful, then the status will be set to success(3), and the value of gsEAddressControlIndex indicates the index of the entry that was created in the address table. Otherwise if the creation was not successful, then one of the following error codes will be set and the entry will not be created: otherError(4) - An error other then the others defined. entryExistsError(5) - An entry already exists with this MAC address in this address table. invalidMacAddress(6) - Cannot create an entry with this MAC address. invalidTableIndex(7) - The table does not exist. invalidPortBinding(8) - The port binding is invalid. invalidVlanID(9) - The VLAN ID is invalid. Note that the only value that is valid to write to this object is createRequest(1), and that this object will never return the value createRequest(1)." ::= { gsEL2AddressControlEntry 7 } -- Address Change gsEL2AddrChangeMgt OBJECT IDENTIFIER ::= { gsEL2AddrMgmt 4 } -- Address Change Information gsEL2AddressChangeLast OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index of the last entry written to the address change table" ::= { gsEL2AddrChangeMgt 1 } gsEL2AddressChangeWraps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The count of the number of times the address change table has wrapped." ::= { gsEL2AddrChangeMgt 2 } gsEL2AddressChangeMaxEntries OBJECT-TYPE SYNTAX INTEGER (1024..4096) ACCESS read-write STATUS mandatory DESCRIPTION "The maximum number of entries in the address change table." ::= { gsEL2AddrChangeMgt 3 } -- Address Change Tables -- -- Address Change Tables -- gsEL2AddressChangeTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEL2AddressChangeEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "." ::= { gsEL2AddrChangeMgt 4 } gsEL2AddressChangeEntry OBJECT-TYPE SYNTAX GsEL2AddressChangeEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The address change table provides a quick way of getting only the entries that have recently changed. Since entries age out as part of the normal switching process, entries that have aged (i.e. their destination bindings are no longer valid) are not considered to be changed. Any other modification to the entry, including deletion or creation, are considered to be changes. The address change table is considered a circular table. When an entry changes, it is added to the next position within the table. If the 'next' position goes beyond the end of the table, the 'next' position is set to the beginning of the table (1) and the wrap counter (gsEAddressChangeWraps) is incremented. The gsEAddressChangeLast value is updated with the index of the last entered entry. An entry may be in the table multiple times if it has changed multiple times. Every time that an entry changes, it is added to the change table. A network management application should follow the following algorithm when polling this table: 1. Set lastChangeWrap = gsEAddressChangeWraps. 2. Set lastChangeIndex = gsEAddressChangeLast 3. Get the entire gsEAddressEntryTable. 4. Submit a getNext for ., updating lastChangeWrap and lastChangeIndex with the returned next values. Update the address entry database with the changed values. 5. Repeat step 4 until no more entries are returned. 6. Wait polling timeout period. 7. Get wrap events counter and last index. If the wrap events counter is equal to lastChangeWrap, then goto step 4. Else if the wrap events counter is more then one greater then lastChangeWrap, goto step 1. Else the wrap events counter is exactly one greater then lastChangeWrap, and if the last index is greater then lastChangeIndex, then goto step 1, else goto step 4. The last step simply insures that we have not missed any of the change entries. Essentially it says that if we have wrapped to beyond where we last polled, then we must get the entire table to synch up again. Otherwise we can just get the entries that have changed." INDEX { gsEL2AddressChangeWrapCount, gsEL2AddressChangeIndex } ::= { gsEL2AddressChangeTable 1 } GsEL2AddressChangeEntry ::= SEQUENCE { gsEL2AddressChangeWrapCount INTEGER, gsEL2AddressChangeIndex INTEGER, gsEL2AddressChangeIndexChanged INTEGER, gsEL2AddressChangeSummary OCTET STRING } gsEL2AddressChangeWrapCount OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The number of times that the gsEAddressChangeLastIndex had wrapped when this entry was added." ::= { gsEL2AddressChangeEntry 1 } gsEL2AddressChangeIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index that uniquely identifies this address change entry." ::= { gsEL2AddressChangeEntry 2 } gsEL2AddressChangeIndexChanged OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The address entry that changed. The value of this object corresponds to the gsEL2AddressIndex object. " ::= { gsEL2AddressChangeEntry 3 } gsEL2AddressChangeSummary OBJECT-TYPE SYNTAX OCTET STRING (SIZE(20)) ACCESS read-only STATUS mandatory DESCRIPTION " The structure is interpreted in the following manner:" ::= { gsEL2AddressChangeEntry 4 } -- SWITCH PORT MANAGEMENT gsESwitchPortMgt OBJECT IDENTIFIER ::= { gsESwitching 2 } -- Switch Port Table -- -- The switch port table manages the configuration and status of each -- switch port. gsESwitchPortTable OBJECT-TYPE SYNTAX SEQUENCE OF GsESwitchPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" ::= { gsESwitchPortMgt 1 } gsESwitchPortEntry OBJECT-TYPE SYNTAX GsESwitchPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" INDEX { gsESwitchPortIndex } ::= { gsESwitchPortTable 1 } GsESwitchPortEntry ::= SEQUENCE { gsESwitchPortIndex ResourceId, gsESwitchPortSTAPMode INTEGER, gsESwitchPortConvertToStatic INTEGER, gsESwitchPortLearningMode INTEGER, gsESwitchPortHuntGroup INTEGER, gsESwitchPortPhysicalPort ResourceId, gsESwitchPortKnownMode INTEGER, gsESwitchPortMappingMethod INTEGER, gsESwitchPortTrunkingMode INTEGER, gsESwitchPortVlanBindingMethod INTEGER, gsESwitchPortIgnoreTag INTEGER, gsESwitchPortVlanID INTEGER, gsESwitchPortAutoVlanCreation INTEGER, gsESwitchPortIfIndex INTEGER, gsESwitchPortFastStart INTEGER } gsESwitchPortIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "A unique index that identifies this switch port. The value of this index corresponds to the value of the gsEResourceIndex for switch ports." ::= { gsESwitchPortEntry 1 } gsESwitchPortSTAPMode OBJECT-TYPE SYNTAX INTEGER { enable(1), -- default disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Disabling spanning tree on a switch port prevents the switch port from participating in the spanning tree process. When disabled(2), this port will neither generate BPDUs, nor process received BPDUs. Also, the port will always start in the forwarding state. A port configured in this mode will not be able to detect network loops involving this port. The factory default is to enable spanning tree on all ports." ::= { gsESwitchPortEntry 2 } gsESwitchPortConvertToStatic OBJECT-TYPE SYNTAX INTEGER { learnAsDynamic(1), convertToStatic(2) } ACCESS read-write STATUS mandatory DESCRIPTION "When this object is set to convertToStatic(2), all addresses learned on this port will be added to the non-volatile version of the static address table. Typically, this object will be used to perform a crude form of address database update where the address activity associated with this port is collected as static (i.e. permanent) addresses while the value of this object is set to convertToStatic(2). Following this usually short period of time (perhaps a week of activity), the value of this object is restored back to its default value of learnAsDynamic(1) and learning for this port is disabled. It is important that the user verify the address database to verify that only the desired addresses were made permanent." ::= { gsESwitchPortEntry 3 } gsESwitchPortLearningMode OBJECT-TYPE SYNTAX INTEGER { enable(1), -- default disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Disable learning on a bridge port to prevent new addresses from being added to the address database. Used in combination with static (permanent) address entries, disabling address learning is an effective security feature to prevent new hosts from appearing on the network, or to prevent hosts from moving to different locations in the network. The default is enable." ::= { gsESwitchPortEntry 4 } gsESwitchPortHuntGroup OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "Hunt groups provide the capability to logically bind multiple switch ports into one switch port. This provides a way of balancing the load of multiple links between like-configured switches. Care must be taken to configure the hunt groups properly to prevent accidental network looping. Use this object to bind this port to a specific hunt group. When not configured to a specific hunt group, set the value of this object to zero." ::= { gsESwitchPortEntry 5 } gsESwitchPortPhysicalPort OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The physical port resource bound to this switch port." ::= { gsESwitchPortEntry 6 } gsESwitchPortKnownMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Enabling known mode for this switch port causes the port to safely discard frames flooded because they are unknown unicast frames. This mode greatly enhances the efficiency of the port's output buffer since space is not wasted for frames not meant for this port. Enabling this feature disables learning for this port. Addresses associated for this port should be entered statically. The default is disable." ::= { gsESwitchPortEntry 7 } gsESwitchPortMappingMethod OBJECT-TYPE SYNTAX INTEGER { port-based(1) } ACCESS read-write STATUS mandatory DESCRIPTION "The frame mapping method of this switch port. When set to port-based(1) (the factory default), all non-tagged frames are classified to the VLAN associated with this switch port." ::= { gsESwitchPortEntry 8 } gsESwitchPortTrunkingMode OBJECT-TYPE SYNTAX INTEGER { clear(1), -- Factory Default ieee8021q(2) -- IEEE 802.1Q Format } ACCESS read-write STATUS mandatory DESCRIPTION "The trunking mode of this port. All frames transmitted out this switch port are translated to the appropriate trunking format: Clear: Ethernet or IEEE 802.3 frame format. This is the default. IEEE 802.1Q: The original frame with a new Ethernet Type (Protocol = 0xXXXX) and the VLAN ID inserted following the original Source Address. Also, the CRC is recalculated. " ::= { gsESwitchPortEntry 9 } gsESwitchPortVlanBindingMethod OBJECT-TYPE SYNTAX INTEGER { static(1), persistent(2), dynamic(3) } ACCESS read-write STATUS mandatory DESCRIPTION "The VLAN binding method of a switch port specifies the way in which the port can be a member of the egress lists of VLANs other than the port default VLAN specified by gsESwitchPortVlanID: static: A Virtual Switch Port must be statically created for each VLAN/port combination. persistent: A Virtual Switch Port is automatically created for each VLAN known to the switch (i.e., the port is a member of the egress lists of all VLANs). dynamic: A Virtual Switch Port is automatically created for each VLAN when the associated VLAN ID is used as a tag in an IEEE 802.1Q or Multi-level tagged frame received on the port (i.e., the port is a member of the egress lists of the VLANs from frames received on the port). The default is static." ::= { gsESwitchPortEntry 10 } gsESwitchPortIgnoreTag OBJECT-TYPE SYNTAX INTEGER { useTag(1), -- default ignoreTag(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Each switch port is capable of ignoring the VLAN Tag associated with a frame in a trunking format. When ignored, the tag is used as the default in the event that a VLAN classification based on the switch's policy(s) cannot be made. This feature is useful for connecting layer 2 VLANs and layer 3 VLANs. The default is useTag." ::= { gsESwitchPortEntry 11 } gsESwitchPortVlanID OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "When this switch port is configured in port-based VLAN mode, all non-tagged frames received on this port are bound to this VLAN. Otherwise, non-tagged frames are classified to this VLAN as the default if a VLAN binding cannot be otherwise determined. The factory default is 1, which is the VLAN ID of the Default VLAN." ::= { gsESwitchPortEntry 12 } gsESwitchPortAutoVlanCreation OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Enabling auto VLAN creation for this switch port causes the port to dynamically create a VLAN whenever an IEEE 802.1Q or Multi-level tagged frame is received on the port with a tag value which does not correspond to a known VLAN. All switch ports with a trunking mode of IEEE 802.1Q or Multi-level are bound to this created VLAN. The default is disable." ::= { gsESwitchPortEntry 14 } gsESwitchPortMirrorMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-only STATUS mandatory DESCRIPTION "When set to enable(1), this object indicates that the port is defined as a mirror port through the gsEPortMirroringTable. A mirror port duplicates frames received at one or more source ports." ::= { gsESwitchPortEntry 15 } gsESwitchPortIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Each switch port is associated with an interface. This object provides a mechanism to map switch ports to bridge ports." ::= { gsESwitchPortEntry 16 } gsESwitchPortFastStart OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "When this object is set to enable(1), bridge ports on this switch port transitions right from blocking to forwarding, skipping the listening and learning states. The user should be warned that using the fast start feature greatly increases the likelihood of unintended network loops that would otherwise be prevented by participating in the normal spanning tree algorithm. The factory default value for this object is disable(2)." ::= { gsESwitchPortEntry 17 } -- HUNT GROUPS gsEHuntGroupMgt OBJECT IDENTIFIER ::= { gsESwitching 4 } -- A hunt group logically binds together multiple switch ports so that they act as one -- switch port. This feature enables the ports within the hunt group to load -- share the network traffic. -- -- The hunt group feature is targeted for a restricted topology where two switches -- are connected together by multiple lines of the same bandwidth. Hunt groups -- require that both switches be configured identically to the other. -- -- Each hunt group requires a base port. The hunt group assumes the characteristics -- of the base port where all the managed information (configuration & statistics) of -- any of the switch ports in the hunt group is only available from the base port -- instance. gsEHuntGroupTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEHuntGroupEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" ::= { gsEHuntGroupMgt 1 } gsEHuntGroupEntry OBJECT-TYPE SYNTAX GsEHuntGroupEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" INDEX { gsEHuntGroupIndex } ::= { gsEHuntGroupTable 1 } GsEHuntGroupEntry ::= SEQUENCE { gsEHuntGroupIndex INTEGER, gsEHuntGroupName DisplayString, gsEHuntGroupBasePort ResourceId, gsEHuntGroupNumberOfPorts INTEGER, gsEHuntGroupLoadSharing INTEGER, gsEHuntGroupStatus INTEGER } gsEHuntGroupIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this hunt group. This index corresponds to the value of gsEResourceIndex for resources of the hunt group type." ::= { gsEHuntGroupEntry 1 } gsEHuntGroupName OBJECT-TYPE SYNTAX DisplayString ACCESS read-write STATUS mandatory DESCRIPTION "" ::= { gsEHuntGroupEntry 2 } gsEHuntGroupBasePort OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The switch port index that serves as the base port for this hunt group. Each hunt group requires a base port. In lieu of a specific configuration, the hunt group will inherit the first switch port bound to the hunt group as its base port. The base port serves as the management focus for the hunt group. That is, a hunt group is managed as one switch port whose instance is provided by the base switch port. All configuration (e.g. spanning tree information) and statistics related to switch ports are meaningful only through the instance of the base port." ::= { gsEHuntGroupEntry 3 } gsEHuntGroupNumberOfPorts OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The current number of ports that belong to this hunt group." ::= { gsEHuntGroupEntry 4 } gsEHuntGroupLoadSharing OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "" ::= { gsEHuntGroupEntry 5 } gsEHuntGroupStatus OBJECT-TYPE SYNTAX INTEGER { createRequest(1), underCreation(2), deleteRequest(3), active(4) } ACCESS read-write STATUS mandatory DESCRIPTION "" ::= { gsEHuntGroupEntry 6 } -- Port Mirroring gsEPortMirroringMgt OBJECT IDENTIFIER ::= { gsESwitching 5 } -- Port Mirroring is used to duplicate packets received on one or more ports on -- another port so that the mirror port can be monitored, for example with an -- RMON probe. Port Mirroring allows either all packets received on the source -- port, or a periodic sample, to be duplicated on the mirror port. gsEPortMirroringTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEPortMirroringEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of port mirroring entries used to mirror traffic from a source port to a mirror port." ::= { gsEPortMirroringMgt 1 } gsEPortMirroringEntry OBJECT-TYPE SYNTAX GsEPortMirroringEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Objects related to the PortMirroring functionality." INDEX { gsEPortMirroringIndex } ::= { gsEPortMirroringTable 1 } GsEPortMirroringEntry ::= SEQUENCE { gsEPortMirroringIndex ResourceId, gsEPortMirroringSourceSubPort INTEGER, gsEPortMirroringSamplerType INTEGER, gsEPortMirroringRate INTEGER, gsEPortMirroringMirrorPort ResourceId } gsEPortMirroringIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The unique index that identifies this entry. This index consists of a switch fabric port and the index of a Packet Lookup Engine servicing this fabric port." ::= { gsEPortMirroringEntry 1 } gsEPortMirroringSourceSubPort OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The frame sampler source switch subport. The source port is the port from which received traffic will be mirrored. This object identifies the switch subport only, the switch fabric port is identified in gsEPortMirroringIndex. If set to 0, all subports associated with the gsEPortMirroringIndex will be source ports. The default value is 0." ::= { gsEPortMirroringEntry 2 } gsEPortMirroringSamplerType OBJECT-TYPE SYNTAX INTEGER { disable(1), enable(2), periodic(3) } ACCESS read-write STATUS mandatory DESCRIPTION "The type for this frame sampler. When set to enable(1), every frame received on the source port(s) will be mirrored at the mirror port. When set to disable(2), no frames received on the source port(s) will be mirrored at the mirror port. When set to periodic(3), frames will be mirrored at the rate defined in gsEPortMirroringRate. The default value is disable(2)." ::= { gsEPortMirroringEntry 3 } gsEPortMirroringRate OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "Used in conjunction with gsEPortMirroringSamplerType to implement periodic sampling functionality. If gsEPortMirroringSamplerType is set to periodic(3), this object defines the number of packets/second that will be mirrored. If gsEPortMirroringSamplerType is not periodic(3), this object will set to 0." ::= { gsEPortMirroringEntry 4 } gsEPortMirroringMirrorPort OBJECT-TYPE SYNTAX ResourceId ACCESS read-write STATUS mandatory DESCRIPTION "The Switch Port on which frames received at source ports(s) will be duplicated. If no mirror port has been defined this object will return NULL." ::= { gsEPortMirroringEntry 5 } -- VIRTUAL LANS gsEVlanMgt OBJECT IDENTIFIER ::= { gsEMIB 7 } -- VIRTUAL LAN TABLE gsEVlans OBJECT IDENTIFIER ::= { gsEVlanMgt 1 } -- Each entry in this table identifies a virtual LAN. gsEVlanTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEVlanEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" ::= { gsEVlans 1 } gsEVlanEntry OBJECT-TYPE SYNTAX GsEVlanEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" INDEX { gsEVlanID } ::= { gsEVlanTable 1 } GsEVlanEntry ::= SEQUENCE { gsEVlanID INTEGER, gsEVlanName DisplayString, gsEVlanIfIndex INTEGER, gsEVlanAFTIndex INTEGER, gsEVlanBridgeIndex ResourceId, gsEVlanStatus INTEGER, gsEVlanInitialHashTableSize INTEGER, gsEVlanAutoIncrementHTSize INTEGER } gsEVlanID OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "An identifier that is unique within the administrative domain. This ID is assigned by the management application and is meaningful within that context. This ID is used to identify VLANs when tagged using either the IEEE 802.1 frame format or the Multi-level frame format." ::= { gsEVlanEntry 1 } gsEVlanName OBJECT-TYPE SYNTAX DisplayString (SIZE (1..31)) ACCESS read-write STATUS mandatory DESCRIPTION "A user-assignable name for this Vlan." ::= { gsEVlanEntry 2 } gsEVlanIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Each virtual LAN has a virtual interface associated with it. This enables RMON monitoring to occur per-VLAN. It also provides a handy mechanism to map virtual LANs to bridge ports by mapping them with the ifStack table from the Interface MIB." ::= { gsEVlanEntry 3 } gsEVlanAFTIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "The address table used for this VLAN for explicitly tagged frames (frames received in a trunking frame format or from a port in port-based VLAN mode.) Normally, each VLAN maps to a unique address table. This is useful for environments with duplicate host addresses appear on different VLANs on different ports. For those environments where duplicate hosts on different VLANs don't exist, or exist but are on the same port, and where the address table size and/or aging is a concern, then multiple VLANs may be mapped to the same address table." ::= { gsEVlanEntry 4 } gsEVlanBridgeIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-write STATUS mandatory DESCRIPTION "The bridge resource which is bound to this Vlan." ::= { gsEVlanEntry 5 } gsEVlanStatus OBJECT-TYPE SYNTAX INTEGER { createRequest(1), underCreation(2), destroyRequest(3), underDestruction(4), active(5), otherError(6), entryExistsError(7), invalidVlanID(8), invalidVlanName(9), invalidVlanAFTIndex(10), invalidVlanBridgeIndex(11), invalidVlanInitialHashTableSize(12), invalidVlanAutoIncrementHTSize(13) } ACCESS read-write STATUS mandatory DESCRIPTION "The status of an entry to be created or deleted. When adding an entry all fields will be set, and then the status is set to createRequest(1) (indicating that the entry is to be created). When deleting an entry the status is set to destroyRequest(3) (indicating that the entry is to be destroyed). During creation the status will be underCreation(2). If the creation is successful, then the status will be set to active(5). Otherwise if the creation was not successful then one of the following error codes will be set and the entry will not be created: otherError(6) - An error other than the others defined. entryExistsError(7) - An entry already exists. invalidVlanID(8) - the VLAN ID is invalid. invalidVlanName(9) - the VLAN name is invalid. invalidVlanAFTIndex(10) - the VLAN AFT index is invalid. invalidVlanBridgeIndex(11) - the VLAN bridge index is invalid. invalidVlanInitialHashTableSize(12) - the VLAN initial hash table size is invalid. invalidVlanAutoIncrementHTSize(13) - the VLAN auto increment hash table size is invalid." ::= { gsEVlanEntry 6 } gsEVlanInitialHashTableSize OBJECT-TYPE SYNTAX INTEGER (16..8192) ACCESS read-write STATUS mandatory DESCRIPTION "The initial hash table size used for MAC addresses on this VLAN. This attribute may only be set when gsEVlanStatus is set to createRequest(1). It must be a power of 2 between 16 and 8192, inclusive." ::= { gsEVlanEntry 7 } gsEVlanAutoIncrementHTSize OBJECT-TYPE SYNTAX INTEGER { true(1), false(2) } ACCESS read-write STATUS mandatory DESCRIPTION "This attribute specifies whether or not the hash table size used for MAC addresses on this VLAN is automatically increased as necessary to hold more MAC addresses. This attribute may only be set when gsEVlanStatus is set to createRequest(1)." ::= { gsEVlanEntry 8 } -- VIRTUAL SWITCH PORTS gsEVirtualPorts OBJECT IDENTIFIER ::= { gsEVlanMgt 4 } gsEVirtualSwitchPortTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEVirtualSwitchPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "" ::= { gsEVirtualPorts 1 } gsEVirtualSwitchPortEntry OBJECT-TYPE SYNTAX GsEVirtualSwitchPortEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An instance of a virtual switch port indicates that this switch port is a member of this VLAN." INDEX { gsEVirtualSwitchPortIndex } ::= { gsEVirtualSwitchPortTable 1 } GsEVirtualSwitchPortEntry ::= SEQUENCE { gsEVirtualSwitchPortIndex ResourceId, gsEVirtualSwitchPortFormat INTEGER, gsEVirtualSwitchPortBridgePort ResourceId, gsEVirtualSwitchPortBindingType INTEGER, gsEVirtualSwitchPortStatus INTEGER } gsEVirtualSwitchPortIndex OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The Resource ID of the virtual switch port bound to the VLAN." ::= { gsEVirtualSwitchPortEntry 1 } gsEVirtualSwitchPortFormat OBJECT-TYPE SYNTAX INTEGER { clear(1), -- don't tag for this VLAN, port trunkingFormat(2) -- use switch port format - may be clear } ACCESS read-write STATUS mandatory DESCRIPTION "Typically, a VLAN capable switch port has one of three modes: access, trunk, or hybrid. In access mode, the port sends frames in clear format (untagged). In trunk mode, all outbound frames are translated into the switch port's configured trunking format. In hybrid mode, it is possible for a port to send trunked frames for some VLANs and clear frames for others. In this case, the switch port is configured to trunk, and the virtual switch port(s) for those VLANs that require clear formatted frames are configured to be override the switch port setting. This is done by setting this object to clear(1). By default, the value of this object is trunkingFormat(2) which means to use the trunking format configured for this switch port. (which may be clear)." ::= { gsEVirtualSwitchPortEntry 2 } gsEVirtualSwitchPortBridgePort OBJECT-TYPE SYNTAX ResourceId ACCESS read-write STATUS mandatory DESCRIPTION "The bridge port resource bound to this virtual port." ::= { gsEVirtualSwitchPortEntry 3 } gsEVirtualSwitchPortBindingType OBJECT-TYPE SYNTAX INTEGER { static(1), -- port binding was manually created persistent(2), -- port binding was automatically created dynamic(3) -- port binding was automatically created } ACCESS read-only STATUS mandatory DESCRIPTION "The method by which this switch port was bound to the VLAN. If the value is static(1), the binding was manually created by the administrator. If the value is persistent(2), the binding was created by the switch because the VLAN is the port-based VLAN for the switch port, or the switch port VLAN Binding Method is persistent. These bindings may not be removed. If the value is dynamic(3), the binding was created by the switch as a result of receiving a tagged frame on the switch port with a VLAN ID corresponding to the VLAN." ::= { gsEVirtualSwitchPortEntry 4 } gsEVirtualSwitchPortStatus OBJECT-TYPE SYNTAX INTEGER { createRequest(1), destroyRequest(2), active(3), otherError(4), entryExistsError(5), entryNoExistError(6) } ACCESS read-write STATUS mandatory DESCRIPTION "The status of an entry to be created or deleted. When adding an entry all fields will be set, and then the status is set to createRequest(1) (indicating that the entry is to be created). When deleting an entry the status is set to destroyRequest(2) (indicating that the entry is to be destroyed). If the creation is successful, then the status will be set to active(3). Otherwise if the creation was not successful then one of the following error codes will be set and the entry will not be created: otherError(4) - An error other than the others defined. entryExistsError(5) - On creation, an entry already exists. On deletion, the entry may not be removed. entryNoExistError(6) - The VLAN specified by ID does not exist." ::= { gsEVirtualSwitchPortEntry 5 } -- EVENT MANAGEMENT gsEEvents OBJECT IDENTIFIER ::= { gsEMIB 10 } -- EVENT TABLE gsEEventMgt OBJECT IDENTIFIER ::= { gsEEvents 1 } -- Event Table gsEEventTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEEventEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Table of events currently supported." ::= { gsEEventMgt 1 } gsEEventEntry OBJECT-TYPE SYNTAX GsEEventEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Attributes associated with the event." INDEX { gsEEventIndex } ::= { gsEEventTable 1 } GsEEventEntry ::= SEQUENCE { gsEEventIndex INTEGER, gsEEventMode INTEGER, gsEEventLogAction INTEGER, gsEEventTrapAction INTEGER, gsEEventConsoleAction INTEGER } gsEEventIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "" ::= { gsEEventEntry 1 } gsEEventMode OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Disabling an event prevents this event from taking any actions when triggered. When set to enable to the console, the event will print the event information to the console serial port. The user can select whether to view log messages, trap messages or any event at the console." ::= { gsEEventEntry 2 } -- -- gsEEventCategory has been removed -- gsEEventLogAction OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "When enabled, this action will cause an event log entry to be created." ::= { gsEEventEntry 3 } gsEEventTrapAction OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "When enabled, this event will cause an SNMP trap to be generated." ::= { gsEEventEntry 4 } gsEEventConsoleAction OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "When enabled, this event will cause a message to printed to the console serial port." ::= { gsEEventEntry 5 } -- EVENT LOG gsEEventLogMgt OBJECT IDENTIFIER ::= { gsEEvents 2 } -- EVENT LOG OBJECTS gsELogTableMaxSize OBJECT-TYPE SYNTAX INTEGER (0..2048) ACCESS read-write STATUS mandatory DESCRIPTION "The maximum number of entries in the log table. Changing this value causes the existing log to be truncated and rebuilt." ::= { gsEEventLogMgt 1 } gsELogLastEntry OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The log index of the last entry entered in the log." ::= { gsEEventLogMgt 2 } gsELogWraps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of times that the last entry has wrapped from 65K back to 1." ::= { gsEEventLogMgt 3 } -- EVENT LOG TABLE gsEEventLog OBJECT IDENTIFIER ::= { gsEEvents 3 } gsEEventLogTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEEventLogEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The log table for the events in the event table that are enabled for the Log Action." ::= { gsEEventLog 1 } gsEEventLogEntry OBJECT-TYPE SYNTAX GsEEventLogEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the log indicates information associated with a particular event." INDEX { gsEEventLogIndex } ::= { gsEEventLogTable 1 } GsEEventLogEntry ::= SEQUENCE { gsEEventLogEventIndex INTEGER, gsEEventLogIndex INTEGER, gsEEventLogTime TimeTicks, gsEEventLogDescr DisplayString, gsEEventLogType EventCategory, gsEEventLogSeverity INTEGER, gsEEventLogDTM DisplayString, gsEEventLogResType ResourceType, gsEEventLogResID ResourceId, gsEEventLogResLeaf INTEGER, gsEEventLogValueType EventValueType, gsEEventLogValue OCTET STRING, gsEEventLogEpochTime INTEGER, gsEEventLogID INTEGER } gsEEventLogEventIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The index that uniquely identifies the event that caused this log entry." ::= { gsEEventLogEntry 1 } gsEEventLogIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this log entry." ::= { gsEEventLogEntry 2 } gsEEventLogTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime when this event was triggered." ::= { gsEEventLogEntry 3 } gsEEventLogDescr OBJECT-TYPE SYNTAX DisplayString (SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The event log description." ::= { gsEEventLogEntry 4 } gsEEventLogType OBJECT-TYPE SYNTAX EventCategory ACCESS read-only STATUS mandatory DESCRIPTION "The type of event that caused this log entry." ::= { gsEEventLogEntry 5 } gsEEventLogSeverity OBJECT-TYPE SYNTAX INTEGER (0..100) ACCESS read-only STATUS mandatory DESCRIPTION "The severity associated with this event. It is recommended that the severity be interpreted in the following manner: 0-19: Normal 20-39: Informational 40-59: Warning 60-79: Alarm 80-99: Severe Error 100: Failure." ::= { gsEEventLogEntry 6 } gsEEventLogDTM OBJECT-TYPE SYNTAX DisplayString (SIZE (18)) ACCESS read-only STATUS mandatory DESCRIPTION "The date and time when this log entry was made. The format is yy-Mon- dd hh:mm:ss, time is in 24 hour time." ::= { gsEEventLogEntry 7 } gsEEventLogResType OBJECT-TYPE SYNTAX ResourceType ACCESS read-only STATUS mandatory DESCRIPTION "The type of object (if provided) that triggered this event. If not provided, the value is equal to 'Invalid Resource'." ::= { gsEEventLogEntry 8 } gsEEventLogResID OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The instance of this resource (if provided - see gsEEventLogResType) that triggered this event." ::= { gsEEventLogEntry 9 } gsEEventLogResLeaf OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A number corresponding to the attribute associated with this resource and this event entry. It corresponds exactly to the leaf MIB number of the MIB that manages this resource. For example, if a port's mode changed, the configuration event log entry would indicate the value of 5 which is the leaf index of the gsEPortMode within the gsEPortTable MIB table." ::= { gsEEventLogEntry 10 } gsEEventLogValueType OBJECT-TYPE SYNTAX EventValueType ACCESS read-only STATUS mandatory DESCRIPTION "The data type associated with the log event value. This object indicates how to interpret the data stored in the event log value: - none(1) indicates no value returned. - integer32(2) - a 4 byte unsigned integer. - integer64(3) - an 8 byte unsigned integer. - displayString(4) - a null terminated (or up to 8 characters) string. - ipv4NetworkAddress(5) - a 4 byte IP version 4 network address. - ieee802MACAddress(6) - a 6 byte MAC Address. - timeticks(7) - sysUpTime type value (4 bytes)" ::= { gsEEventLogEntry 11 } gsEEventLogValue OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..8)) ACCESS read-only STATUS mandatory DESCRIPTION "The value associated with the event encoded in an octet string. Refer to gsEEventLogValueType for how to interpret this value. The value encoded in this string is in Big Endian order." ::= { gsEEventLogEntry 12 } gsEEventLogEpochTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The number of time ticks since the epoch when this event was logged. The interpretation of this value is as follows: struct DateTimeOvly { UNS32 year:6; UNS32 month:4; UNS32 day:5; UNS32 hour:5; UNS32 minute:6; UNS32 second:6; }; The epoch is January 1, 1997, at 00:00:00. A value of 0 refers to this date and time. " ::= { gsEEventLogEntry 13 } gsEEventLogID OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "A unique index that identifies the occurence of this event. This ID can be correlated between traps, logs and the like." ::= { gsEEventLogEntry 14 } -- SHUTDOWN EVENT LOG gsEShutdownLogMgt OBJECT IDENTIFIER ::= { gsEEvents 4 } -- The most recent event log entries are stored in non-volatile memory. In the event -- of a system restart, it may be useful to look at the last few events that were -- logged before the system last went down. The Shutdown Log Table stores those -- last events. -- -- SHUTDOWN EVENT LOG OBJECTS gsEShutdownLogTableMaxSize OBJECT-TYPE SYNTAX INTEGER (0..128) ACCESS read-write STATUS mandatory DESCRIPTION "The maximum number of entries in the non-volatile log table. Changing the value of this object changes the maximum number of entries to be stored in Shutdown." ::= { gsEShutdownLogMgt 1 } gsEShutdownLogLastEntry OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The ID of the last entry made to the shutdown log." ::= { gsEShutdownLogMgt 2 } gsEShutdownLogAcknowledged OBJECT-TYPE SYNTAX INTEGER { not-acknowledged(1), acknowledged(2) } ACCESS read-only STATUS mandatory DESCRIPTION "This object is to set to acknowledged(2) the first time the Shutdown Log Table is accessed indicating that the Shutdown log has been read (at least once) since the system restarted." ::= { gsEShutdownLogMgt 3 } -- SHUTDOWN LOG TABLE -- -- The Shutdown Log Table is a copy of the log file stored in non-volatile memory. It is copied -- to dynamic memory (RAM) when the system is initialized and the non-volatile version -- is re-initialized. gsEEventShutdownLog OBJECT IDENTIFIER ::= { gsEEvents 5 } gsEEventShutdownLogTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEEventShutdownLogEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of the last events logged before the system restarted." ::= { gsEEventShutdownLog 1 } gsEEventShutdownLogEntry OBJECT-TYPE SYNTAX GsEEventShutdownLogEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A log entry stored in non-volatile memory." INDEX { gsEEventShutdownLogIndex } ::= { gsEEventShutdownLogTable 1 } GsEEventShutdownLogEntry ::= SEQUENCE { gsEEventShutdownLogEventIndex INTEGER, gsEEventShutdownLogIndex INTEGER, gsEEventShutdownLogTime TimeTicks, gsEEventShutdownLogDescr DisplayString, gsEEventShutdownLogType EventCategory, gsEEventShutdownLogSeverity INTEGER, gsEEventShutdownLogDTM DisplayString, gsEEventShutdownLogResType ResourceType, gsEEventShutdownLogResID ResourceId, gsEEventShutdownLogResLeaf INTEGER, gsEEventShutdownLogValueType EventValueType, gsEEventShutdownLogValue OCTET STRING, gsEEventShutdownLogEpochTime INTEGER, gsEEventShutdownLogID INTEGER } gsEEventShutdownLogEventIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The index that uniquely identifies the event that caused this ShutdownLog entry." ::= { gsEEventShutdownLogEntry 1 } gsEEventShutdownLogIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "An index that uniquely identifies this ShutdownLog entry." ::= { gsEEventShutdownLogEntry 2 } gsEEventShutdownLogTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime when this event was triggered. Note, the value corresponds to the sysUpTime when the system was last running (i.e. before it was shutdown.)" ::= { gsEEventShutdownLogEntry 3 } gsEEventShutdownLogDescr OBJECT-TYPE SYNTAX DisplayString (SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The event ShutdownLog description." ::= { gsEEventShutdownLogEntry 4 } gsEEventShutdownLogType OBJECT-TYPE SYNTAX EventCategory ACCESS read-only STATUS mandatory DESCRIPTION "The type of event that caused this ShutdownLog entry." ::= { gsEEventShutdownLogEntry 5 } gsEEventShutdownLogSeverity OBJECT-TYPE SYNTAX INTEGER (0..100) ACCESS read-only STATUS mandatory DESCRIPTION "The severity associated with this event. It is recommended that the severity be interpreted in the following manner: 0-19: Normal 20-39: Informational 40-59: Warning 60-79: Alarm 80-99: Severe Error 100: Failure." ::= { gsEEventShutdownLogEntry 6 } gsEEventShutdownLogDTM OBJECT-TYPE SYNTAX DisplayString (SIZE (18)) ACCESS read-only STATUS mandatory DESCRIPTION "The date and time when this ShutdownLog entry was made. The format is yy-Mon-dd hh:mm:ss, time is in 24 hour time." ::= { gsEEventShutdownLogEntry 7 } gsEEventShutdownLogResType OBJECT-TYPE SYNTAX ResourceType ACCESS read-only STATUS mandatory DESCRIPTION "The type of object (if provided) that triggered this event. If not provided, the value is invalid." ::= { gsEEventShutdownLogEntry 8 } gsEEventShutdownLogResID OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The instance of this resource (if provided) that triggered this event." ::= { gsEEventShutdownLogEntry 9 } gsEEventShutdownLogResLeaf OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "To be provided." ::= { gsEEventShutdownLogEntry 10 } gsEEventShutdownLogValueType OBJECT-TYPE SYNTAX EventValueType ACCESS read-only STATUS mandatory DESCRIPTION "The data type associated with the ShutdownLog event value. This object indicates how to interpret the data stored in the event ShutdownLog value." ::= { gsEEventShutdownLogEntry 11 } gsEEventShutdownLogValue OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..8)) ACCESS read-only STATUS mandatory DESCRIPTION "The value associated with the event encoded in an octet string. " ::= { gsEEventShutdownLogEntry 12 } gsEEventShutdownLogEpochTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The number of time ticks since the epoch when this event was logged. The interpretation of this value is as follows: struct DateTimeOvly { UNS32 year:6; UNS32 month:4; UNS32 day:5; UNS32 hour:5; UNS32 minute:6; UNS32 second:6; }; The epoch is January 1, 1997, at 00:00:00. A value of 0 refers to this date and time. " ::= { gsEEventShutdownLogEntry 13 } gsEEventShutdownLogID OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "A unique index that identifies the occurence of this event. This ID can be correlated between traps, logs and the like." ::= { gsEEventShutdownLogEntry 14 } -- EVENT TRAP DATA gsEEventTrapMgmt OBJECT IDENTIFIER ::= { gsEEvents 6 } gsEEventTrapEventIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The index that uniquely identifies the event that caused this trap." ::= { gsEEventTrapMgmt 1 } gsEEventTrapTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime when this event was triggered." ::= { gsEEventTrapMgmt 2 } gsEEventTrapDescr OBJECT-TYPE SYNTAX DisplayString (SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The event log description." ::= { gsEEventTrapMgmt 3 } gsEEventTrapType OBJECT-TYPE SYNTAX EventCategory ACCESS read-only STATUS mandatory DESCRIPTION "The type of event that caused this trap." ::= { gsEEventTrapMgmt 4 } gsEEventTrapSeverity OBJECT-TYPE SYNTAX INTEGER (0..100) ACCESS read-only STATUS mandatory DESCRIPTION "The severity associated with this event. It is recommended that the severity be interpreted in the following manner: 0-19: Normal 20-39: Informational 40-59: Warning 60-79: Alarm 80-99: Severe Error 100: Failure." ::= { gsEEventTrapMgmt 5 } gsEEventTrapDTM OBJECT-TYPE SYNTAX DisplayString (SIZE (18)) ACCESS read-only STATUS mandatory DESCRIPTION "The date and time when this trap was sent. The format is yy-Mon- dd hh:mm:ss, time is in 24 hour time." ::= { gsEEventTrapMgmt 6 } gsEEventTrapResType OBJECT-TYPE SYNTAX ResourceType ACCESS read-only STATUS mandatory DESCRIPTION "The type of object (if provided) that triggered this event. If not provided, the value is equal to 'Invalid Resource'." ::= { gsEEventTrapMgmt 7 } gsEEventTrapResID OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The instance of this resource (if provided - see gsEEventTrapResType) that triggered this event." ::= { gsEEventTrapMgmt 8 } gsEEventTrapResLeaf OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A number corresponding to the attribute associated with this resource and this event entry. It corresponds exactly to the leaf MIB number of the MIB that manages this resource. For example, if a port's mode changed, the configuration event log entry would indicate the value of 5 which is the leaf index of the gsEPortMode within the gsEPortTable MIB table." ::= { gsEEventTrapMgmt 9 } gsEEventTrapValueType OBJECT-TYPE SYNTAX EventValueType ACCESS read-only STATUS mandatory DESCRIPTION "The data type associated with the trap event value. This object indicates how to interpret the data stored in the event trap value: - none(1) indicates no value returned. - integer32(2) - a 4 byte unsigned integer. - integer64(3) - an 8 byte unsigned integer. - displayString(4) - a null terminated (or up to 8 characters) string. - ipv4NetworkAddress(5) - a 4 byte IP version 4 network address. - ieee802MACAddress(6) - a 6 byte MAC Address. - timeticks(7) - sysUpTime type value (4 bytes)" ::= { gsEEventTrapMgmt 10 } gsEEventTrapValue OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..8)) ACCESS read-only STATUS mandatory DESCRIPTION "The value associated with the event encoded in an octet string. Refer to gsEEventTrapValueType for how to interpret this value. The value encoded in this string is in Big Endian order." ::= { gsEEventTrapMgmt 11 } gsEEventTrapEpochTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The number of time ticks since the epoch when this event was logged. The interpretation of this value is as follows: struct DateTimeOvly { UNS32 year:6; UNS32 month:4; UNS32 day:5; UNS32 hour:5; UNS32 minute:6; UNS32 second:6; }; The epoch is January 1, 1997, at 00:00:00. A value of 0 refers to this date and time. " ::= { gsEEventTrapMgmt 12 } gsEEventTrapID OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "A unique index that identifies the occurence of this event. This ID can be correlated between traps, logs and the like." ::= { gsEEventTrapMgmt 13 } -- ALARM MANAGEMENT gsEAlarmMgt OBJECT IDENTIFIER ::= { gsEMIB 11 } -- ALARM GENERAL gsEAlarmGeneral OBJECT IDENTIFIER ::= { gsEAlarmMgt 1 } -- Alarm Table -- -- The alarm table contains events that are considered "alarmable". This table is a handy place -- to quickly check the "health" of the system. Any non-normal indication in the system will be -- indicated in this table. gsEAlarmGeneralActiveEntries OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory DESCRIPTION "The total number of alarm entries in the triggered state currently in the alarm table." ::= { gsEAlarmGeneral 1 } gsEAlarmGeneralTimeStamp OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime when any alarm state last changed (either triggering a new alarm or re-arming an old one)." ::= { gsEAlarmGeneral 2 } -- ALARM TABLE gsEAlarms OBJECT IDENTIFIER ::= { gsEAlarmMgt 2 } -- ACTIVE ALARM TABLE gsEActiveAlarmTable OBJECT-TYPE SYNTAX SEQUENCE OF GsEActiveAlarmEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of all alarms in the triggered state." ::= { gsEAlarms 2 } gsEActiveAlarmEntry OBJECT-TYPE SYNTAX GsEActiveAlarmEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An alarm in the triggered state." INDEX { gsEActiveAlarmIndex } ::= { gsEActiveAlarmTable 1 } GsEActiveAlarmEntry ::= SEQUENCE { gsEActiveAlarmIndex INTEGER, gsEActiveAlarmName DisplayString, gsEActiveAlarmValueHigh INTEGER, gsEActiveAlarmValueLow INTEGER, gsEActiveAlarmVariable OBJECT IDENTIFIER, gsEActiveAlarmResType ResourceType, gsEActiveAlarmResID ResourceId, gsEActiveAlarmLeaf INTEGER, gsEActiveAlarmOwner DisplayString } gsEActiveAlarmIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The unique index that identifies this alarm." ::= { gsEActiveAlarmEntry 1 } gsEActiveAlarmName OBJECT-TYPE SYNTAX DisplayString (SIZE(0..31)) ACCESS read-only STATUS mandatory DESCRIPTION "The name of this alarm." ::= { gsEActiveAlarmEntry 2 } gsEActiveAlarmValueHigh OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The high order 32 bits of the value that triggered this alarm." ::= { gsEActiveAlarmEntry 3 } gsEActiveAlarmValueLow OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The low order 32 bits of the value that triggered this alarm." ::= { gsEActiveAlarmEntry 4 } gsEActiveAlarmVariable OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "The OID of the alarm variable if this is a user-created alarm (null otherwise)." ::= { gsEActiveAlarmEntry 5 } gsEActiveAlarmResType OBJECT-TYPE SYNTAX ResourceType ACCESS read-only STATUS mandatory DESCRIPTION "The resource type of this alarm if this is an internally created alarm." ::= { gsEActiveAlarmEntry 6 } gsEActiveAlarmResID OBJECT-TYPE SYNTAX ResourceId ACCESS read-only STATUS mandatory DESCRIPTION "The resource identifier associated with this alarm if this is an internally created alarm." ::= { gsEActiveAlarmEntry 7 } gsEActiveAlarmLeaf OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The leaf index of the MIB table used to manage this resource that is associated with this alarm, if this is an internally created alarm. For example, if this alarm was created to monitor a port's status, then the value of this object will be 6, corresponding to the leaf index of the gsEPortStatus object." ::= { gsEActiveAlarmEntry 8 } gsEActiveAlarmOwner OBJECT-TYPE SYNTAX DisplayString (SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "This is the owner of the alarm." ::= { gsEActiveAlarmEntry 9 } -- TRAP gsESnmpTraps OBJECT IDENTIFIER ::= { gsEMIB 13 } gsESystemTrap TRAP-TYPE ENTERPRISE gsESnmpTraps VARIABLES { gsEEventTrapEventIndex, gsEEventTrapTime, gsEEventTrapDescr, gsEEventTrapType, gsEEventTrapSeverity, gsEEventTrapDTM, gsEEventTrapResType, gsEEventTrapResID, gsEEventTrapResLeaf, gsEEventTrapValueType, gsEEventTrapValue, gsEEventTrapEpochTime, gsEEventTrapID } DESCRIPTION "A gsESystemTrap is sent by the agent when a system event is triggered. These events are usually triggered when the software encounters an unexpected situation, e.g. a hardware failure or a software bug." ::= 2 gsEConfigurationTrap TRAP-TYPE ENTERPRISE gsESnmpTraps VARIABLES { gsEEventTrapEventIndex, gsEEventTrapTime, gsEEventTrapDescr, gsEEventTrapType, gsEEventTrapSeverity, gsEEventTrapDTM, gsEEventTrapResType, gsEEventTrapResID, gsEEventTrapResLeaf, gsEEventTrapValueType, gsEEventTrapValue, gsEEventTrapEpochTime, gsEEventTrapID } DESCRIPTION "A gsEConfigurationTrap is sent by the agent when the configuration event is triggered. These events are triggered when a configuration change is made." ::= 3 gsETemperatureTrap TRAP-TYPE ENTERPRISE gsESnmpTraps VARIABLES { gsEEventTrapEventIndex, gsEEventTrapTime, gsEEventTrapDescr, gsEEventTrapType, gsEEventTrapSeverity, gsEEventTrapDTM, gsEEventTrapResType, gsEEventTrapResID, gsEEventTrapResLeaf, gsEEventTrapValueType, gsEEventTrapValue, gsEEventTrapEpochTime, gsEEventTrapID } DESCRIPTION "A gsETemperatureTrap is sent by the agent when the temperature event is triggered. This event is triggered when a temperature probe detects the temperature crossing a threshold." ::= 4 gsEResourceTrap TRAP-TYPE ENTERPRISE gsESnmpTraps VARIABLES { gsEEventTrapEventIndex, gsEEventTrapTime, gsEEventTrapDescr, gsEEventTrapType, gsEEventTrapSeverity, gsEEventTrapDTM, gsEEventTrapResType, gsEEventTrapResID, gsEEventTrapResLeaf, gsEEventTrapValueType, gsEEventTrapValue, gsEEventTrapEpochTime, gsEEventTrapID } DESCRIPTION "A gsEResourceTrap is sent by the agent when the resource event is triggered. The resource event is triggered when a resource is added or removed from the system." ::= 5 gsEFanTrap TRAP-TYPE ENTERPRISE gsESnmpTraps VARIABLES { gsEEventTrapEventIndex, gsEEventTrapTime, gsEEventTrapDescr, gsEEventTrapType, gsEEventTrapSeverity, gsEEventTrapDTM, gsEEventTrapResType, gsEEventTrapResID, gsEEventTrapResLeaf, gsEEventTrapValueType, gsEEventTrapValue, gsEEventTrapEpochTime, gsEEventTrapID } DESCRIPTION "A gsEFanTrap is sent by the agent when the fan status event is triggered. The fan status event is triggered when a fan has a change in its status." ::= 6 gsEPowerTrap TRAP-TYPE ENTERPRISE gsESnmpTraps VARIABLES { gsEEventTrapEventIndex, gsEEventTrapTime, gsEEventTrapDescr, gsEEventTrapType, gsEEventTrapSeverity, gsEEventTrapDTM, gsEEventTrapResType, gsEEventTrapResID, gsEEventTrapResLeaf, gsEEventTrapValueType, gsEEventTrapValue, gsEEventTrapEpochTime, gsEEventTrapID } DESCRIPTION "A gsEPowerTrap is sent by the agent when the power event is triggered. These events are triggered when a power supply changes status." ::= 9 END