NAME

SNMP::Info::Layer3::IBMGbTor - SNMP Interface to Lenovo/IBM Rackswitch devices

AUTHOR

Eric Miller

SYNOPSIS

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

my $class = $ibm->class();

print "SNMP::Info determined this device to fall under subclass : $class\n";

DESCRIPTION

Abstraction subclass for IBM Rackswitch (formerly Blade Network Technologies) network devices. Lenovo acquired these from IBM and is now selling them under the Lenovo brand.

Inherited Classes

SNMP::Info::Layer3;
SNMP::Info::LLDP;

Required MIBs

IBM-GbTOR-10G-L2L3-MIB
Inherited Classes' MIBs

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

GLOBALS

These are methods that return scalar value from SNMP

$ibm->model()

Returns model type. Attempts to pull model from device description. Otherwise checks $ibm->id() against the IBM-GbTOR-10G-L2L3-MIB.

$ibm->vendor()

Returns 'ibm'

$ibm->os()

Returns 'ibm'

$ibm->os_ver()

Returns the software version

(agSoftwareVersion)

$ibm->temp()

(hwTempSensors)

$ibm->fan()

(hwFanSpeed)

Overrides

$ibm->hasLLDP()

Is LLDP is active in this device?

Note: LLDP may be active, but nothing in lldpRemoteSystemsData Tables so the device would not return any useful topology information.

Returns true when the standard LLDP-MIB reports LLDP. Otherwise checks to see if at least one interface is enabled to receive LLDP packets.

Global Methods imported from SNMP::Info::Layer3

See documentation in "GLOBALS" in SNMP::Info::Layer3 for details.

Global Methods imported from SNMP::Info::LLDP

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

TABLE METHODS

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

Overrides

$ibm->interfaces()

Returns reference to hash of interface names to iids.

$ibm->i_ignore()

Returns reference to hash of interfaces to be ignored.

Ignores interfaces with descriptions of tunnel, loopback, and null.

$ibm->i_duplex()

Returns reference to hash of interface link duplex status.

(portInfoMode)

LLDP Neighbor Tables

Neighbors come from the standard LLDP-MIB when lldpRemTable has rows. Otherwise they come from lldpInfoRemoteDevicesTable in IBM-GbTOR-10G-L2L3-MIB, which only the G8124 serves. The choice is made once per device, so neighbor keys never mix.

$ibm->lldp_if()

Returns the mapping to the SNMP Interface Table.

From LLDP-MIB, maps the local port number through dot1dBasePortIfIndex, since lldpLocPortDesc holds the port alias. Otherwise tries to cross reference (lldpInfoRemoteDevicesLocalPort) with (ifDescr) and (ifAlias) to get (ifIndex).

$ibm->lldp_ip()

Returns remote IPv4 address. Returns for all other address types, use lldp_addr if you want any return address type.

$ibm->lldp_platform()

Returns remote device system description.

(lldpRemSysDesc or lldpInfoRemoteDevicesSystemDescription)

$ibm->lldp_rem_id_type()

(lldpRemChassisIdSubtype or lldpInfoRemoteDevicesChassisSubtype)

$ibm->lldp_rem_id()

(lldpRemChassisId or lldpInfoRemoteDevicesSystemName)

$ibm->lldp_rem_pid_type()

(lldpRemPortIdSubtype or lldpInfoRemoteDevicesPortSubtype)

$ibm->lldp_rem_pid()

(lldpRemPortId or lldpInfoRemoteDevicesPortId)

$ibm->lldp_rem_desc()

(lldpRemPortDesc or lldpInfoRemoteDevicesPortDescription)

$ibm->lldp_rem_sysname()

(lldpRemSysName or lldpInfoRemoteDevicesSystemName)

$ibm->lldp_rem_sysdesc()

(lldpRemSysDesc or lldpInfoRemoteDevicesSystemDescription)

$ibm->lldp_rem_sys_cap()

(lldpRemSysCapEnabled or lldpInfoRemoteDevicesSystemCapEnabled)

$ibm->lldp_rman_addr()

(lldpRemManAddrIfSubtype or lldpInfoRemoteDevicesManAddr)

IBM LLDP Table Methods

$ibm->lldp_port_status()

(lldpInfoPortAdminStatus)

$ibm->lldp_rman_type()

(lldpInfoRemoteDevicesManAddrSubtype)

$ibm->ibm_lldp_rem_id_type()

(lldpInfoRemoteDevicesChassisSubtype)

$ibm->ibm_lldp_rem_id()

(lldpInfoRemoteDevicesSystemName)

$ibm->ibm_lldp_rem_pid_type()

(lldpInfoRemoteDevicesPortSubtype)

$ibm->ibm_lldp_rem_pid()

(lldpInfoRemoteDevicesPortId)

$ibm->ibm_lldp_rem_desc()

(lldpInfoRemoteDevicesPortDescription)

$ibm->ibm_lldp_rem_sysname()

(lldpInfoRemoteDevicesSystemName)

$ibm->ibm_lldp_rem_sysdesc()

(lldpInfoRemoteDevicesSystemDescription)

$ibm->ibm_lldp_rem_sys_cap()

(lldpInfoRemoteDevicesSystemCapEnabled)

$ibm->ibm_lldp_rman_addr()

(lldpInfoRemoteDevicesManAddr)

Table Methods imported from SNMP::Info::Layer3

See documentation in "TABLE METHODS" in SNMP::Info::Layer3 for details.

Table Methods imported from SNMP::Info::LLDP

See documentation in "TABLE METHODS" in SNMP::Info::LLDP for details.