Scroll to navigation

SNMP::Info::Layer2::Baystack(3pm) User Contributed Perl Documentation SNMP::Info::Layer2::Baystack(3pm)

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".
$baystack->stp_ver()
Returns the particular STP version running on this device.

Values: "nortelStpg", "pvst", "rstp", "mstp", "ieee8021d"

("s5AgSysSpanningTreeOperMode")

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().

Layer 2 Forwarding Database

These methods try to obtain the layer 2 forwarding database entries via the normal bridge methods as well as SPBM entries via rapid city methods.
$baystack->fw_mac()
Returns reference to hash of forwarding table MAC Addresses
$baystack->fw_port()
Returns reference to hash of forwarding table entries port interface identifier (iid)
$baystack->qb_fw_vlan()
Returns reference to hash of forwarding table entries VLAN ID
$baystack->fw_status()
Returns reference to hash of forwarding table entries status

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.
2019-02-25 perl v5.28.1