NAME

SNMP::Info::Layer1::S3000 - SNMP Interface to Synoptics / Nortel Hubs

AUTHOR

Eric Miller

SYNOPSIS

    #Let SNMP::Info determine the correct subclass for you.

    my $s3000 = new SNMP::Info(
                          AutoSpecify => 1,
                          Debug       => 1,
                          DestHost    => 'myswitch',
                          Community   => 'public',
                          Version     => 2
                        )

    or die "Can't connect to DestHost.\n";

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

DESCRIPTION

Provides abstraction to the configuration information obtainable from a Bay hub device through SNMP. Also provides device MAC to port mapping through the proprietary MIB.

Inherited Classes

SNMP::Info::Layer2

Required MIBs

SYNOPTICS-COMMON-MIB
SYNOPTICS-ETHERNET-MIB

Inherited MIBs

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

GLOBALS

These are methods that return scalar value from SNMP

$s3000->vendor()

Returns 'nortel'

$s3000->os()

Returns 'synoptics'

$s3000->model()

Cross references $s3000->id() to the SYNOPTICS-MIB and returns the results.

Removes sreg- from the model name and returns only the numeric model identifier.

$stack->os_ver()

Returns the software version specified as major.minor.maint.

(s3AgentSwMajorVer).(s3AgentSwMinorVer).(s3AgentSwMaintVer)

$stack->os_bin()

Returns the firmware version. (s3AgentFwVer)

$s3000->mac()

Returns MAC of the advertised IP address of the device.

Overrides

$s3000->layers()

Returns 00000011. Class emulates Layer 2 functionality through proprietary MIBs.

Globals imported from SNMP::Info::Layer2

See "GLOBALS" in SNMP::Info::Layer2 for details.

TABLE METHODS

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

Overrides

$s3000->i_index()

Returns reference to map of IIDs to Interface index.

Since hubs do not support ifIndex, the interface index is created using the formula (board * 256 + port). This is required to support devices with more than one module.

$s3000->interfaces()

Returns reference to map of IIDs to physical ports.

$s3000->i_duplex()

Returns half, hubs do not support full duplex.

$s3000->i_duplex_admin()

Returns half, hubs do not support full duplex.

$s3000->i_speed()

Returns 10000000. The hubs only support 10 Mbs Ethernet.

$s3000->i_up()

Returns (s3EnetPortLinkStatus) for each port. Translates on/off to up/down.

$s3000->i_up_admin()

Returns (s3EnetPortPartStatus) for each port.

$s3000->set_i_up_admin(state, ifIndex)

Sets port state, must be supplied with state and port ifIndex

State choices are 'up' or 'down'

Example: my %if_map = reverse %{$s3000->interfaces()}; $s3000->set_i_up_admin('down', $if_map{'1.1'}) or die "Couldn't change port state. ",$s3000->error(1);

$s3000->bp_index()

Simulates bridge MIB by returning reference to a hash containing the index for both the keys and values.

$s3000->fw_port()

Returns reference to map of IIDs of the SYNOPTICS-ETHERNET-MIB::s3EnetShowNodesTable to the Interface index.

$s3000->fw_mac()

(s3EnetShowNodesMacAddress)

$s3000->s3000_topo_port()

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

(s3EnetTopNmmPort)

$s3000->s3000_topo_mac()

(s3EnetTopNmmMacAddr)

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

Table Methods imported from SNMP::Info::Layer2

See "TABLE METHODS" in SNMP::Info::Layer2 for details.