next up previous contents
Next: Physical Ports. Up: Autodiscovery Previous: Physical Nodes.

Physical Modules.

The Fore-Switch-MIB implements a moduleTable containing the information necessary for the discovery of configured physical modules with network functionality.
autodiscovery_mapping(
N,
[[moduleName, Board, Mod] = MType],
[physModule(N, M, MType)]
) :-
concat_atom(['Board', Board, '/', Mod], M),
% map module to board number for board alarms
(module2board(N, Board, M) ->
retract(module2board(N, Board, M))
; true), !,
assertz(module2board(N, Board, M)).
Besides, the Fore-Switch-MIB includes additional tables containing information relative to Power supply, CPU and Fan modules. For instance, on-board CPUs are discovered with the help of the envCPUsTable.
autodiscovery_mapping(
N,
[[envCpuType, Board, CpuSlot] = CT],
[physModule(N, M, CpuType)]
) :-
% case of asx1000: select CPUs on same board as agent
(( switchModel(N, asx1000) ; switchModel(N, asx1200) ) ->
physBoard(N, Board, _BType) % only if board already in database
; true
), !,
concat_atom(['CPU', CpuSlot], M),
s2enum(envCpuType, CpuType, CT).
Just as important as the physical presence of CPU modules is the SCP configuration of the switch, that is, the configuration of a second CPU as backup in the event of failure of the primary module. This information is gathered from the dualScpConfTable.
% discover if node has dual SCP configuration
user_mapping(getSCPconfig(N, Board),
[[dualScpSlot, Board] = Slot,
[dualScpState, Board] = St,
[dualScpPrimary, Board] = Prim,
[dualScpFailover, Board] = FO],
[]
):-
(St == 2 -> % switch operates with dual SCPs
FO == 1 -> % failover enabled
Config = dual
; Config = alone),
(scpConfig(N, Board, Slot, _, _) ->
retract(scpConfig(N, Board, Slot, _, _))
; true), !,
assertz(scpConfig(N, Board, Slot, Prim, Config)).

next up previous contents
Next: Physical Ports. Up: Autodiscovery Previous: Physical Nodes.
Copyright Munich Network Management Team