1Info::Layer2::Baystack(U3s)er Contributed Perl DocumentatIinofno::Layer2::Baystack(3)
2
3
4
6 SNMP::Info::Layer2::Baystack - SNMP Interface to Nortel Ethernet
7 (Baystack) Switches
8
10 Eric Miller
11
13 # Let SNMP::Info determine the correct subclass for you.
14 my $baystack = new SNMP::Info(
15 AutoSpecify => 1,
16 Debug => 1,
17 DestHost => 'myswitch',
18 Community => 'public',
19 Version => 2
20 )
21 or die "Can't connect to DestHost.\n";
22
23 my $class = $baystack->class();
24 print "SNMP::Info determined this device to fall under subclass : $class\n";
25
27 Provides abstraction to the configuration information obtainable from a
28 Nortel Ethernet Switch (Baystack) through SNMP.
29
30 For speed or debugging purposes you can call the subclass directly, but
31 not after determining a more specific class using the method above.
32
33 my $baystack = new SNMP::Info::Layer2::Baystack(...);
34
35 Inherited Classes
36 SNMP::Info::SONMP
37 SNMP::Info::NortelStack
38 SNMP::Info::RapidCity
39 SNMP::Info::LLDP
40 SNMP::Info::Layer3
41
42 Required MIBs
43 Inherited MIBs
44 See "Required MIBs" in SNMP::Info::SONMP for its MIB requirements.
45
46 See "Required MIBs" in SNMP::Info::NortelStack for its MIB
47 requirements.
48
49 See "Required MIBs" in SNMP::Info::RapidCity for its MIB requirements.
50
51 See "Required MIBs" in SNMP::Info::LLDP for its MIB requirements.
52
53 See "Required MIBs" in SNMP::Info::Layer3 for its MIB requirements.
54
56 These are methods that return scalar value from SNMP
57
58 $baystack->vendor()
59 Returns 'nortel'
60
61 $baystack->model()
62 Cross references $baystack->id() to the SYNOPTICS-MIB and returns
63 the results. 303s and 304s have the same ID, so we have a hack to
64 return depending on which it is.
65
66 Returns BPS for Business Policy Switch
67
68 For others extracts and returns the switch numeric designation.
69
70 $baystack->os()
71 Returns 'baystack' or 'boss' depending on software version.
72
73 $baystack->os_bin()
74 Returns the firmware version extracted from "sysDescr".
75
76 Overrides
77 $baystack->index_factor()
78 Required by SNMP::Info::SONMP. Number representing the number of
79 ports reserved per slot within the device MIB.
80
81 Index factor on the Baystack switches are determined by the
82 formula: Index Factor = 64 if (model = 470 or (os eq 'boss' and
83 operating in pure mode)) or else Index factor = 32.
84
85 Returns either 32 or 64 based upon the formula.
86
87 Global Methods imported from SNMP::Info::SONMP
88 See "GLOBALS" in SNMP::Info::SONMP for details.
89
90 Globals imported from SNMP::Info::NortelStack
91 See "GLOBALS" in SNMP::Info::NortelStack for details.
92
93 Global Methods imported from SNMP::Info::RapidCity
94 See "GLOBALS" in SNMP::Info::RapidCity for details.
95
96 Globals imported from SNMP::Info::LLDP
97 See documentation in "GLOBALS" in SNMP::Info::LLDP for details.
98
99 Globals imported from SNMP::Info::Layer3
100 See "GLOBALS" in SNMP::Info::Layer3 for details.
101
103 These are methods that return tables of information in the form of a
104 reference to a hash.
105
106 Overrides
107 $baystack->interfaces()
108 Returns reference to the map between IID and physical Port.
109
110 Slot and port numbers on the Baystack switches are determined by the
111 formula:
112
113 port = (Interface index % Index factor)
114 slot = (int(Interface index / Index factor)) + Slot offset
115
116 The physical port name is returned as slot.port.
117
118 $baystack->i_ignore()
119 Returns reference to hash of IIDs to ignore.
120
121 $baystack->i_mac()
122 Returns the "ifPhysAddress" table entries.
123
124 Removes all entries matching '00:00:00:00:00:00' -- Certain
125 revisions of Baystack firmware report all zeros for each port mac.
126
127 $baystack->i_name()
128 Crosses "ifName" with "ifAlias" and returns the human set port name
129 if exists.
130
131 ENTITY-MIB Information
132 For older devices which do not support ENTITY-MIB, these methods
133 emulate Physical Table methods using S5-CHASSIS-MIB. See "TABLE
134 METHODS" in SNMP::Info::NortelStack for details on ns_e_* methods.
135
136 $baystack->e_index()
137 If the device doesn't support "entPhysicalDescr", this will try
138 ns_e_index(). Note that this is based on "entPhysicalDescr" due to
139 implementation details of SNMP::Info::Entity::e_index().
140
141 $baystack->e_class()
142 If the device doesn't support "entPhysicalClass", this will try
143 ns_e_class().
144
145 $baystack->e_descr()
146 If the device doesn't support "entPhysicalDescr", this will try
147 ns_e_descr().
148
149 $baystack->e_name()
150 If the device doesn't support "entPhysicalName", this will try
151 ns_e_name().
152
153 $baystack->e_fwver()
154 If the device doesn't support "entPhysicalFirmwareRev", this will
155 try ns_e_fwver().
156
157 $baystack->e_hwver()
158 If the device doesn't support "entPhysicalHardwareRev", this will
159 try ns_e_hwver().
160
161 $baystack->e_parent()
162 If the device doesn't support "entPhysicalContainedIn", this will
163 try ns_e_parent().
164
165 $baystack->e_pos()
166 If the device doesn't support "entPhysicalParentRelPos", this will
167 try ns_e_pos().
168
169 $baystack->e_serial()
170 If the device doesn't support "entPhysicalSerialNum", this will try
171 ns_e_serial().
172
173 $baystack->e_swver()
174 If the device doesn't support "entPhysicalSoftwareRev", this will
175 try ns_e_swver().
176
177 $baystack->e_type()
178 If the device doesn't support "entPhysicalVendorType", this will
179 try ns_e_type().
180
181 $baystack->e_vendor()
182 If the device doesn't support "entPhysicalMfgName", this will try
183 ns_e_vendor().
184
185 Topology information
186 Based upon the software version devices may support SynOptics Network
187 Management Protocol (SONMP) and Link Layer Discovery Protocol (LLDP).
188 These methods will query both and return the combination of all
189 information. As a result, there may be identical topology information
190 returned from the two protocols causing duplicate entries. It is the
191 calling program's responsibility to identify any duplicate entries and
192 remove duplicates if necessary.
193
194 $baystack->hasCDP()
195 Returns true if the device is running either SONMP or LLDP.
196
197 $baystack->c_if()
198 Returns reference to hash. Key: iid Value: local device port
199 (interfaces)
200
201 $baystack->c_ip()
202 Returns reference to hash. Key: iid Value: remote IPv4 address
203
204 If multiple entries exist with the same local port, c_if(), with
205 the same IPv4 address, c_ip(), it may be a duplicate entry.
206
207 If multiple entries exist with the same local port, c_if(), with
208 different IPv4 addresses, c_ip(), there is either a non-SONMP/LLDP
209 device in between two or more devices or multiple devices which are
210 not directly connected.
211
212 Use the data from the Layer2 Topology Table below to dig deeper.
213
214 $baystack->c_port()
215 Returns reference to hash. Key: iid Value: remote port (interfaces)
216
217 $baystack->c_id()
218 Returns reference to hash. Key: iid Value: string value used to
219 identify the chassis component associated with the remote system.
220
221 $baystack->c_platform()
222 Returns reference to hash. Key: iid Value: Remote Device Type
223
224 Table Methods imported from SNMP::Info::SONMP
225 See "TABLE METHODS" in SNMP::Info::SONMP for details.
226
227 Table Methods imported from SNMP::Info::NortelStack
228 See "TABLE METHODS" in SNMP::Info::NortelStack for details.
229
230 Table Methods imported from SNMP::Info::RapidCity
231 See "TABLE METHODS" in SNMP::Info::RapidCity for details.
232
233 Table Methods imported from SNMP::Info::LLDP
234 See documentation in "TABLE METHODS" in SNMP::Info::LLDP for details.
235
236 Table Methods imported from SNMP::Info::Layer3
237 See "TABLE METHODS" in SNMP::Info::Layer3 for details.
238
239
240
241perl v5.12.0 2009-06-12 Info::Layer2::Baystack(3)