Info::MAU(3p)

NAME
SNMP::Info::MAU - SNMP Interface to Medium Access Unit (MAU) MIB (RFC 2668) via SNMP

AUTHOR
Max Baker

SYNOPSIS
 my $mau = new SNMP::Info (
                             AutoSpecify => 1,
                             Debug       => 1,
                             DestHost    => 'hpswitch',
                             Community   => 'public',
                             Version     => 2
                           );

 my $class = $mau->class();
 print " Using device sub class : $class\n";

DESCRIPTION
SNMP::Info::MAU is a subclass of SNMP::Info that supplies access to the MAU-MIB (RFC 2668). This MIB is sometimes implemented on Layer 2 network devices like HP Switches. MAU = Media Access Unit.

The MAU table contains link and duplex info for the port itself and the device connected to that port.

Normally you use or create a subclass of SNMP::Info that inherits this one. Do not use directly.

For debugging purposes call the class directly as you would SNMP::Info

 my $mau = new SNMP::Info::MAU(...);

  Inherited Classes
None.

  Required MIBs

MAU-MIB

GLOBALS
These are methods that return scalar value from SNMP

None

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

$mau->mau_i_duplex()
    Parses mau_index and mau_link to return the duplex information for interfaces.

$mau->mau_i_duplex_admin()
    Parses "mac_index","mau_autostat","mau_type_admin" in order to find the admin duplex setting for all the interfaces.

    Returns either (auto,full,half).

$mau->mau_i_duplex_admin_old()
    Called by mau_i_duplex_admin() if "mau_type_admin" is empty. Parses "mau_index","mau_autostat","mau_autosent" in order to find the admin duplex setting for all the interfaces.

    Returns either (auto,none,full,half).

$mau->mau_i_speed_admin()
    Returns admin speed setting for all the interfaces.

  MAU INTERFACE TABLE METHODS

$mau->mau_index() -  Returns a list of interfaces and their index in the MAU IF Table.
    ("ifMauIfIndex")

$mau->mau_link() - Returns the type of Media Access used.
        This is essentially the type of link in use.
        eg. dot3MauType100BaseTXFD - 100BaseT at Full Duplex

    ("ifMauType")

$mau->mau_status() - Returns the admin link condition as
        1 - other
        2 - unknown
        3 - operational
        4 - standby
        5 - shutdown
        6 - reset

    Use 5 and !5 to see if the link is up or down on the admin side.

    ("ifMauStatus")

$mau->mau_up() -  Returns the current link condition
     (C<ifMauMediaAvailable>)

$mau->mau_type() - Returns a 32bit string reporting the capabilities of the port from a MAU POV.
      Directly from F<MAU-MIB> :
              Bit   Capability
                0      other or unknown
                1      AUI
                2      10BASE-5
                3      FOIRL
                4      10BASE-2
                5      10BASE-T duplex mode unknown
                6      10BASE-FP
                7      10BASE-FB
                8      10BASE-FL duplex mode unknown
                9      10BROAD36
               10      10BASE-T  half duplex mode
               11      10BASE-T  full duplex mode
               12      10BASE-FL half duplex mode
               13      10BASE-FL full duplex mode
               14      100BASE-T4
               15      100BASE-TX half duplex mode
               16      100BASE-TX full duplex mode
               17      100BASE-FX half duplex mode
               18      100BASE-FX full duplex mode
               19      100BASE-T2 half duplex mode
               20      100BASE-T2 full duplex mode

    ("ifMauTypeList")

$mau->mau_type_admin()
    ("ifMauDefaultType")

$mau->mau_auto() - Returns status of auto-negotiation mode for ports.
    ("ifMauAutoNegAdminStatus")

$mau->mau_autostat()
    ("ifMauAutoNegAdminStatus")

$mau->mau_autosent() - Returns a 32 bit bit-string representing the capabilities we are broadcasting on that port
        Uses the same decoder as $mau->mau_type().

    ("ifMauAutoNegCapAdvertised")

$mau->mau_autorec() - Returns a 32 bit bit-string representing the capabilities of the device on the other end.
        Uses the same decoder as $mau->mau_type().

    ("ifMauAutoNegCapReceived")

Utility Functions

munge_int2bin() - Unpacks an integer into a 32bit bit string.
$mau->_isfullduplex(bitstring)
        Boolean. Checks to see if any of the full_duplex types from mau_type()
        are     high.  Currently bits 11,13,16,18,20.

$mau->_ishalfduplex(bitstring)
        Boolean.  Checks to see if any of the half_duplex types from mau_type()
        are high.  Currently bits 10,12,15,17,19.