NAME

SNMP::Info::Layer2::Bay - SNMP Interface to old Bay Network BayStack Switches

AUTHOR

Max Baker (max@warped.org)

SYNOPSIS

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

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

DESCRIPTION

Provides abstraction to the configuration information obtainable from a Bay device 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 $bay = new SNMP::Info::Layer2::Bay(...);

Inherited Classes

SNMP::Info::Layer2

Required MIBs

SYNOPTICS-ROOT-MIB
S5-ETH-MULTISEG-TOPOLOGY-MIB
Inherited classes

MIBs required by SNMP::Info::Layer2 and its superclasses.

Bay MIBs can be found on the CD that came with your product.

Or, if you still have a service contract they can be downloaded at www.nortelnetworks.com

They have also been seen at : http://www.inotech.com/mibs/vendor/baynetworks/synoptics/synoptics.asp

Or http://www.oidview.com/mibs/detail.html under Synoptics. Check also www.mibdepot.com

GLOBALS

These are methods that return scalar value from SNMP

$bay->vendor()

Returns 'bay' :)

$bay->model()

Cross references $bay->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.

Removes sreg- from the model name

$bay->cdp_id()

Returns the IP that the device is sending out for its Nmm topology info.

(s5EnMsTopIpAddr)

$bay->cdp_run()

Returns if the S5-ETH-MULTISEG-TOPOLOGY info is on for this device.

(s5EnMsTopStatus)

Globals imported from SNMP::Info::Layer2

See documentation in SNMP::Info::Layer2 for details.

TABLE ENTRIES

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

Overrides

$bay->interfaces()

Returns reference to map of IIDs to physical ports.

Currently simply returns the ifIndex

$bay->i_ignore()

Returns reference to hash of IIDs to ignore.

Simply calls the SNMP::Info::Layer2::i_ignore() fn for this.

$bay->i_mac()

Returns the ifPhysAddress table entries.

Removes all entries matching '00:00:00:00:00:00' -- Certain older revisions of Bay 303 and 304 firmware report all zeros for each port mac.

Psuedo CDP information

All entries with port=0 are local and ignored.

$bay->c_if()

Returns referenece to hash. Key: port.1 Value: port (iid)

$bay->c_ip()

Returns referenece to hash. Key: port.1

The value of each hash entry can either be a scalar or an array. A scalar value is most likely a direct neighbor to that port. It is possible that there is a non-bay device in between this device and the remote device.

An array value represents a list of seen devices. The only time you will get an array of nieghbors, is if there is a non-bay device in between two or more devices.

Use the data from the Layer2 Topology Table below to dig deeper.

$bay->port()

Returns reference to hash. Key: port.1 Value: port

$bay->platform()

Returns reference to hash. Key: port.1 Value: Remote Device Type

Layer2 Topology info (s5EnMsTopNmmTable)

$bay->bay_topo_slot()

Returns reference to hash. Key: Table entry, Value:slot number

(s5EnMsTopNmmSlot)

$bay->bay_topo_port()

Returns reference to hash. Key: Table entry, Value:Port Number (interface iid)

(s5EnMsTopNmmPort)

$bay->bay_topo_ip()

Returns reference to hash. Key: Table entry, Value:Remote IP address of entry

(s5EnMsTopNmmIpAddr)

$bay->bay_topo_seg()

Returns reference to hash. Key: Table entry, Value:Remote Segment ID

(s5EnMsTopNmmSegId)

$bay->bay_topo_mac (s5EnMsTopNmmMacAddr)

Returns reference to hash. Key: Table entry, Value:Remote MAC address

$bay->bay_topo_platform

Returns reference to hash. Key: Table entry, Value:Remote Device Type

(s5EnMsTopNmmChassisType)

$bay->bay_topo_localseg

Returns reference to hash. Key: Table entry, Value:Boolean, if bay_topo_seg() is local

(s5EnMsTopNmmLocalSeg)

Table Methods imported from SNMP::Info::Layer2

See documentation in SNMP::Info::Layer2 for details.