Info::Layer3::Passport(3p)

NAME
SNMP::Info::Layer3::Passport - SNMP Interface to modular Nortel Ethernet Routing Switches (formerly Passport / Accelar)

AUTHOR
Eric Miller

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

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

DESCRIPTION
Abstraction subclass for modular Nortel Ethernet Routing Switches (formerly Passport and Accelar Series Switches).

These devices have some of the same characteristics as the stackable Nortel Ethernet Switches (Baystack). For example, extended interface information is gleaned from RAPID-CITY.

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

 my $passport = new SNMP::Info::Layer3::Passport(...);

  Inherited Classes

SNMP::Info::SONMP
SNMP::Info::RapidCity
SNMP::Info::Layer3

  Required MIBs

Inherited Classes' MIBs
    See "Required MIBs" in SNMP::Info::SONMP for its own MIB requirements.

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

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

GLOBALS
These are methods that return scalar value from SNMP

$passport->model()
    Returns model type. Checks $passport->id() against the RAPID-CITY-MIB and then parses out "rcA".

$passport->vendor()
    Returns 'nortel'

$passport->os()
    Returns 'passport'

$passport->os_ver()
    Returns the software version extracted from "sysDescr"

$passport->serial()
    Returns ("rcChasSerialNumber")

$passport->root_ip()
    Returns the primary IP used to communicate with the device. Returns the first found: CLIP (CircuitLess IP), Management Virtual IP ("rcSysVirtualIpAddr"), OSPF Router ID ("ospfRouterId"), SONMP Advertised IP Address.

  Overrides

$passport->index_factor()
    Required by SNMP::Info::SONMP. Returns 64 for 8600, 16 for Accelar.

$passport->port_offset()
    Required by SNMP::Info::SONMP. Returns 1.

$passport->slot_offset()
    Required by SNMP::Info::SONMP. Returns 0.

  Global Methods imported from SNMP::Info::SONMP
See documentation in "GLOBALS" in SNMP::Info::SONMP for details.

  Global Methods imported from SNMP::Info::RapidCity
See documentation in "GLOBALS" in SNMP::Info::RapidCity for details.

  Globals imported from SNMP::Info::Layer3
See documentation in "GLOBALS" in SNMP::Info::Layer3 for details.

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

  Overrides

$passport->i_index()
    Returns SNMP IID to Interface index. Extends ("ifIndex") by adding the index of the CPU virtual management IP (if present), each CPU Ethernet port, and each VLAN to ensure the virtual router ports are captured.

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

    Slot and port numbers on the Passport switches are determined by the formula: port = ("ifIndex % index_factor") + port_offset, slot = int("ifIndex / index_factor").

    The physical port name is returned as slot.port. CPU Ethernet ports are prefixed with CPU and VLAN interfaces are returned as the VLAN ID prefixed with Vlan.

$passport->i_mac()
    MAC address of the interface. Note this is just the MAC of the port, not anything connected to it.

$passport->i_description()
    Description of the interface. Usually a little longer single word name that is both human and machine friendly. Not always.

$passport->i_name()
    Crosses rc_alias() ("rcPortName") with ifAlias() and returns the human set port name if exists.

$passport->ip_index()
    Maps the IP Table to the IID. Extends ("ipAdEntIfIndex") by adding the index of the CPU virtual management IP (if present) and each CPU Ethernet port.

$passport->ip_netmask()
    Extends ("ipAdEntNetMask") by adding the mask of the CPU virtual management IP (if present) and each CPU Ethernet port.

$passport->bp_index()
    Returns reference to hash of bridge port table entries map back to interface identifier (iid)

    Returns ("ifIndex") for both key and value since some devices seem to have problems with BRIDGE-MIB

  Pseudo ENTITY-MIB information
These devices do not support ENTITY-MIB. These methods emulate Physical Table methods using the RAPID-CITY MIB.

$passport->e_index()
    Returns reference to hash. Key and Value: Integer. The index is created by combining the slot, module, and position into a five or six digit integer. Slot can be either one or two digits while the module and position are each two digits padded with leading zero if required.

$passport->e_class()
    Returns reference to hash. Key: IID, Value: General hardware type. This class only returns container, module, and power supply types.

$passport->e_descr()
    Returns reference to hash. Key: IID, Value: Human friendly name.

$passport->e_name()
    Returns reference to hash. Key: IID, Value: Human friendly name.

$passport->e_hwver()
    Returns reference to hash. Key: IID, Value: Hardware version.

$passport->e_vendor()
    Returns reference to hash. Key: IID, Value: nortel.

$passport->e_serial()
    Returns reference to hash. Key: IID, Value: Serial number.

$passport->e_pos()
    Returns reference to hash. Key: IID, Value: The relative position among all entities sharing the same parent.

$passport->e_type()
    Returns reference to hash. Key: IID, Value: Type of component/sub-component.

$passport->e_parent()
    Returns reference to hash. Key: IID, Value: The value of e_index() for the
    entity which 'contains' this entity.  A value of zero indicates    this entity
    is not contained in any other entity.

  Table Methods imported from SNMP::Info::SONMP
See documentation in "TABLE METHODS" in SNMP::Info::SONMP for details.

  Table Methods imported from SNMP::Info::RapidCity
See documentation in "TABLE METHODS" in SNMP::Info::RapidCity for details.

  Table Methods imported from SNMP::Info::Layer3
See documentation in "TABLE METHODS" in SNMP::Info::Layer3 for details.