Info::Layer1::S3000(3p)

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.

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

my $s3000 = new SNMP::Info::Layer1::S3000(...);

  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.