The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

SNMP::Info::Layer2::C2900 - SNMP Interface to Cisco Catalyst 2900 Network Switches

DESCRIPTION

Provides abstraction to the configuration information obtainable from a C2900 device through SNMP.

MIBS: CISCO-C2900-MIB

Inherits all SNMP::Info::Layer2 methods.

AUTHOR

Max Baker (max@warped.org)

SYNOPSIS

 my $c2900 = new SNMP::Info::Layer2::C2900(DestHost  => 'mycat2900' , 
                              Community => 'public' ); 

CREATING AN OBJECT

new SNMP::Info::Layer2::C2900()

Arguments passed to new() are passed on to SNMP::Session::new()

    my $c2900 = new SNMP::Info::Layer2::C2900(
        DestHost => $host,
        Community => 'public',
        Version => 3,...
        ) 
    die "Couldn't connect.\n" unless defined $c2900;
$c2900->session()

Sets or returns the SNMP::Session object

    # Get
    my $sess = $c2900->session();

    # Set
    my $newsession = new SNMP::Session(...);
    $c2900->session($newsession);

GLOBALS

$c2900->vendor()
    Returns 'cisco' :)

TABLE ENTRIES

Overrides

$c2900->interfaces()
    Returns reference to the map between IID and physical Port.

    On the 2900 devices i_name isn't reliable, so we override to just the description.

    Next all dots are changed for forward slashes so that the physical port name 
    is the same as the broadcasted CDP port name. 
        (Ethernet0.1 -> Ethernet0/1)

    Also, any weird characters are removed, as I saw a few pop up.
$c2900->i_duplex()
    Returns reference to map of IIDs to current link duplex

    Crosses $c2900->c2900_p_index() with $c2900->c2900_p_duplex;
$c2900->i_duplex_admin()
    Returns reference to hash of IIDs to admin duplex setting
    
    Crosses $c2900->c2900_p_index() with $c2900->c2900_p_duplex_admin;
    

C2900-MIB Port Entry Table

$c2900->c2900_p_index()
    Maps the Switch Port Table to the IID

    B<c2900PortIfIndex>
$c2900->c2900_p_duplex()
    Gives Port Duplex Info

    B<c2900PortDuplexStatus>
$c2900->c2900_p_duplex_admin()
    Gives admin setting for Duplex Info

    B<c2900PortDuplexState>
$c2900->c2900_p_speed_admin()
    Gives Admin speed of port 

    B<c2900PortAdminSpeed>