Inside Windows Storage: Server Storage Technologies for Windows 2000, Windows Server 2003 and Beyond

   

7.5 HBA API

In a storage area network, HBAs provide extremely important functionality and provide a means of physical connectivity between a server and other elements of the storage network, including storage devices, switches, and other hosts . As storage networks grow in complexity, the need for automatic discovery and management of devices becomes increasingly important.

The Storage Networking Industry Association (SNIA) defined a C library API to allow storage management applications to manage Fibre Channel HBAs. The management applications using the API can implement a single interface, no matter what the HBA model or vendor is, as long as the vendor supports the SNIA-defined HBA API. The APIs defined include support for querying and setting HBA configuration management, as well as measuring HBA performance statistics. In particular, the HBA API can provide the following:

Although Microsoft and SNIA members both support the HBA API, the approaches differ a little. The SNIA approach, illustrated in Figure 7.4, requires three components :

  1. A generic HBA API DLL owned and maintained by SNIA. This DLL exposes a standard interface for the benefit of management applications; at the bottom layer, the DLL interfaces with several vendor-written DLLs.

  2. An HBA vendor-written DLL that plugs into the generic HBA API DLL. This vendor-written DLL reveals management information and interacts with the vendor-written driver using proprietary IOCTLs.

  3. A vendor-written device driver for the HBA.

Figure 7.4. The SNIA HBA API

Although this standardization effort has its merits, Microsoft sees some problems with this approach:

Microsoft advocates a slightly different approach, illustrated in Figure 7.5, which consists of the following components:

Figure 7.5. The Microsoft HBA API

The advantages with the Microsoft approach are as follows :

Note that the WMI interfaces needed to code the HBA driver shipped with Windows 2000. Therefore, if one had the Microsoft dynamic link library mapping WMI information to the SNIA, along with the SNIA HBA dynamic link library, the solution would work on Windows 2000 as well. The problem is that the Microsoft dynamic link library is indeed available with Windows Server 2003, but it remains to be seen whether Microsoft offers a version of this library for the Windows platform as well.


   
Top

Категории