Patent ID: 8180907

Claim:
An apparatus for managing Intelligent Platform Management Interface (“IPMI”) sessions between a plurality of application modules and a target IPMI device, the apparatus comprising: (a) a processor; (b) a memory area operatively connected to the processor; and (c) a session abstraction layer module stored in the memory area and communicatively connected to each one of the plurality of application modules, the session abstraction layer module configured to cause the processor to: (i) receive an IPMI request from one of the plurality of application modules over a first communication link, wherein the IPMI request identifies the target IPMI device, includes a unique requester ID that identifies the particular application module that sent the IPMI request, and includes at least one command to receive status data corresponding to the operational health of the target IPMI device; (ii) determine whether an IPMI session has been established with the target IPMI device; and (iii) if it is determined that an IPMI session has not been established: (1) establish an IPMI session with the target IPMI device over a second communication link; (2) share the established IPMI session across the plurality of application modules; (3) forward the IPMI request to the target IPMI device via the shared IPMI session over the second communication link; (4) receive a response to the IPMI request from the target IPMI device via the shared IPMI session over the second communication link, the response including data with a status of the operational health of the target IPMI device; (5) determine, based at least in part on the requester ID, which particular one of the plurality of application modules to forward the response to; and (6) forward the response to the particular application module over the first communication link, wherein the plurality of application modules comprises at least five application modules.