Info::Layer2::Baystack(3)

NAME
SNMP::Info::Layer2::Baystack - SNMP Interface to Avaya Ethernet Switch (Baystack) and VSP 7000 series switches

AUTHOR
Eric Miller

SYNOPSIS
 # Let SNMP::Info determine the correct subclass for you.
 my $baystack = new SNMP::Info(
                          AutoSpecify => 1,
                          Debug       => 1,
                          DestHost    => 'myswitch',
                          Community   => 'public',
                          Version     => 2
                        )
  or die "Can't connect to DestHost.\n";

 my $class = $baystack->class();
 print "SNMP::Info determined this device to fall under subclass : $class\n";

DESCRIPTION
Provides abstraction to the configuration information obtainable from an Avaya Ethernet Switch (formerly Nortel/Bay Baystack) and VSP 7000 series through SNMP.

For speed or debugging purposes you can call the subclass directly, but not after determining a more specific class using the method above.

my $baystack = new SNMP::Info::Layer2::Baystack(...);

  Inherited Classes

SNMP::Info::SONMP
SNMP::Info::NortelStack
SNMP::Info::RapidCity
SNMP::Info::LLDP
SNMP::Info::Layer3

  Required MIBs

BAY-STACK-PETH-EXT-MIBB

  Inherited MIBs
See "Required MIBs" in SNMP::Info::SONMP for its MIB requirements.

See "Required MIBs" in SNMP::Info::NortelStack for its MIB requirements.

See "Required MIBs" in SNMP::Info::RapidCity for its MIB requirements.

See "Required MIBs" in SNMP::Info::LLDP for its MIB requirements.

See "Required MIBs" in SNMP::Info::Layer3 for its MIB requirements.

GLOBALS
These are methods that return scalar value from SNMP

$baystack->vendor()
    Returns 'avaya'

$baystack->model()
    Cross references $baystack->id() to the SYNOPTICS-MIB and returns the results. 303s and 304s have the same ID, so we have a hack to return depending on which it is.

    Returns BPS for Business Policy Switch

    For others extracts and returns the switch numeric designation.

$baystack->os()
    Returns 'baystack' or 'boss' depending on software version.

$baystack->os_bin()
    Returns the firmware version extracted from "sysDescr".

  Overrides

$baystack->index_factor()
    Required by SNMP::Info::SONMP. Number representing the number of ports reserved per slot within the device MIB.

    Index factor on the Baystack switches are determined by the formula: Index Factor = 64 if (model = 470 or (os eq 'boss' and operating in pure mode)) or else Index factor = 32.

    Returns either 32 or 64 based upon the formula.

  Global Methods imported from SNMP::Info::SONMP
See "GLOBALS" in SNMP::Info::SONMP for details.

  Globals imported from SNMP::Info::NortelStack
See "GLOBALS" in SNMP::Info::NortelStack for details.

  Global Methods imported from SNMP::Info::RapidCity
See "GLOBALS" in SNMP::Info::RapidCity for details.

  Globals imported from SNMP::Info::LLDP
See documentation in "GLOBALS" in SNMP::Info::LLDP for details.

  Globals imported from SNMP::Info::Layer3
See "GLOBALS" in SNMP::Info::Layer3 for details.

TABLE METHODS
These are methods that return tables of information in the form of a reference to a hash.

  Overrides

$baystack->interfaces()
    Returns reference to the map between IID and physical Port.

      Slot and port numbers on the Baystack switches are determined by the
      formula:

      port = (Interface index % Index factor)
      slot = (int(Interface index / Index factor)) + Slot offset

      The physical port name is returned as slot.port.

$baystack->i_ignore()
    Returns reference to hash of IIDs to ignore.

$baystack->i_mac()
    Returns the "ifPhysAddress" table entries.

    Removes all entries matching '00:00:00:00:00:00' -- Certain revisions of Baystack firmware report all zeros for each port mac.

$baystack->i_name()
    Crosses "ifName" with "ifAlias" and returns the human set port name if exists.

$baystack->peth_port_ifindex()
    Maps the "pethPsePortTable" to "ifIndex" by way of the ENTITY-MIB.

$baystack->peth_port_power()
    Power supplied by PoE ports, in milliwatts

    ("bspePethPsePortExtMeasuredPower")

  ENTITY-MIB Information
For older devices which do not support ENTITY-MIB, these methods emulate Physical Table methods using S5-CHASSIS-MIB. See "TABLE METHODS" in SNMP::Info::NortelStack for details on ns_e_* methods.

$baystack->e_index()
    If the device doesn't support "entPhysicalDescr", this will try ns_e_index(). Note that this is based on "entPhysicalDescr" due to implementation details of SNMP::Info::Entity::e_index().

$baystack->e_class()
    If the device doesn't support "entPhysicalClass", this will try ns_e_class().

$baystack->e_descr()
    If the device doesn't support "entPhysicalDescr", this will try ns_e_descr().

$baystack->e_name()
    If the device doesn't support "entPhysicalName", this will try ns_e_name().

$baystack->e_fwver()
    If the device doesn't support "entPhysicalFirmwareRev", this will try ns_e_fwver().

$baystack->e_hwver()
    If the device doesn't support "entPhysicalHardwareRev", this will try ns_e_hwver().

$baystack->e_parent()
    If the device doesn't support "entPhysicalContainedIn", this will try ns_e_parent().

$baystack->e_pos()
    If the device doesn't support "entPhysicalParentRelPos", this will try ns_e_pos().

$baystack->e_serial()
    If the device doesn't support "entPhysicalSerialNum", this will try ns_e_serial().

$baystack->e_swver()
    If the device doesn't support "entPhysicalSoftwareRev", this will try ns_e_swver().

$baystack->e_type()
    If the device doesn't support "entPhysicalVendorType", this will try ns_e_type().

$baystack->e_vendor()
    If the device doesn't support "entPhysicalMfgName", this will try ns_e_vendor().

  Table Methods imported from SNMP::Info::SONMP
See "TABLE METHODS" in SNMP::Info::SONMP for details.

  Table Methods imported from SNMP::Info::NortelStack
See "TABLE METHODS" in SNMP::Info::NortelStack for details.

  Table Methods imported from SNMP::Info::RapidCity
See "TABLE METHODS" in SNMP::Info::RapidCity for details.

  Table Methods imported from SNMP::Info::LLDP
See documentation in "TABLE METHODS" in SNMP::Info::LLDP for details.

  Table Methods imported from SNMP::Info::Layer3
See "TABLE METHODS" in SNMP::Info::Layer3 for details.