The Intelligent Platform Management Interface (IPMI) has standardized the implementation of management functions in servers and telecom equipment. As a result, commercial availability of IPMI building blocks, such as management microcontrollers, sensors, chips sets and firmware, has grown. The release last month of details about IPMI's latest version (v2.0) promises even more capabilities for designers, vendors and end users.
Introduced in 1998, IPMI has earned the support of vendors such as Dell, Hewlett-Packard, Intel and NEC. The interface provides autonomous server remote monitoring, management, diagnostic and recovery capabilities, regardless of the state or type of operating system or CPU. IPMI defines how management software monitors system hardware, controls system components and retrieves logs of system events, both locally and remotely. It also describes how embedded management controllers communicate with other components like the BIOS, OS, sensors and network interface cards (NICs).
The baseboard management controller (BMC) is at the heart of an IPMI-based subsystem. Most commercially available BMCs use the Low Pin Count bus standard on X86 chip sets as the system interface. For systems where Low Pin Count is not available natively, alternative interfaces include the parallel address/data bus and the Systems Management Bus (SMBus).
BMCs typically integrate a number of A/D converters for voltage monitoring, counters for fan-speed monitoring, D/A outputs for driving fans, general-purpose I/Os, serial ports and I2C buses for interfacing to external sensors and expansion components. Standby voltage rails power BMCs and their external interface components, allowing BMCs to provide manageability functions regardless of the system's power state. This is a distinctive advantage of IPMI over O/S-resident agents.
Peripheral management controllers (PMCs) manage subsystems such as storage enclosures or hard-drive backplanes. They reside within the subsystems being managed and communicate with BMCs via the Intelligent Platform Management Bus (IPMB), a protocol for passing IPMI messages over the 100-kbit/second I2C bus. In this way, subsystems become manageable via BMCs.
When the main system interface becomes unavailable, the BMC provides alternative paths for management of the server. One path is via a network interface into the BMC. This can be implemented via a PCI-based NIC with an SMBus management port for interfacing to the BMC or via an ISA-based NIC that connects directly to a BMC's address/data bus.
Another path is an RS-232 interface into the BMC. Through the BMC's serial port, an administrator can use a terminal program to manage the system via a command-line interface. The BMC's serial port can also bridge the BMC to the system serial port, through which the BIOS and OS output their consoles. The BMC can redirect the consoles to a remote administrator over the local-area network (LAN).
IPMI enables multiple vendors' management software to work across different firmware and hardware platforms, and vice versa. For example, IPMI abstracts sensor-specific characteristics from management software. Management software, like OSA's Server Manager, queries raw readings from sensors via the BMC.
Factors for converting to actual measurement units are stored in sensor data records, which are stored separately in nonvolatile memory. Such abstraction enables management software to work across platforms, without platform-specific knowledge of how to interpret the sensors.
Server designers also use IPMI as a framework for custom reliability features. For example, it's possible to use the BMC's watchdog timer to detect and recover from BIOS and OS hangs. The front panel buttons can be routed through the BMC, allowing lock-out of local access.
Such extensions require flexible building blocks. For BMCs, that means the ability to increase RAM, ROM, I2C buses and general-purpose I/Os without changing the core microcontroller. Having a generic address/data bus on the part is helpful. For firmware stacks, extensibility means the ability to add OEM functions and drivers and to modify default firmware behavior via hooks into the firmware.
Today, IPMI v1.5 defines a PCI SMBus that makes use of the SMBus signals added in PCI v2.3 and PCI Express. Expansion cards provide inventory and health information to the BMC.
Upcoming chip sets and I/O buses carry an increasing number of manageability features. Next-generation NICs will have enhanced SMBus management ports that increase the functionality of a BMC's network interface. For example, with a chip set supporting DIMM failover and hot-swap, the BMC can detect failover conditions and alert administrators to replace the DIMM. The same mechanism can apply to PCI Express hot-plug modules.
At September's Intel Developer Forum in San Jose, Calif., Intel previewed IPMI 2.0. Due out in early 2004, it will add significant features to the base IPMI 1.5 spec. For security, the revision includes new authentication (SHA-1- and HMAC-based) and encryption (AES and RC-4) mechanisms and options. Additionally, new LAN session commands and payloads enable value-added features on IPMI session infrastructure.
The new IPMI v2.0 packet format now carries both secure and nonsecure traffic. Standardized serial console redirection over LAN and improved command-line interface (terminal mode) further enhance remote management functionality. Support for virtual LANs and support for modular systems like blades (firmware firewall) with full backward compatibility will extend the usefulness of IPMI standard building blocks to a wider variety of systems.
The draft specification is available at the Intel IPMI Web site and the official IPMI Web site.
Currently all features are destined for the final specification. However, another review will be posted by January 2004.
Philip Sheu is director of field applications for OSA Technologies (San Jose, Calif.).
See related chart