3.7 Microsoft Exchange 2000 and NAS
Microsoft Exchange 2000 is the latest released version of the popular enterprise messaging system from Microsoft and forms a key part of the BackOffice family of products. The architecture of Microsoft Exchange 2000 is significantly different from that of Microsoft Exchange 5.5, the previous version of the product. Although Microsoft Exchange 2000 introduced a lot of new features, the one big drawback,
especially
from the point of view of NAS
vendors
, is that Exchange 2000 cannot be used with NAS storage devices. The present discussion is limited to the
parts
of Microsoft Exchange 2000 that directly contribute to this limitation.
Figure 3.6 shows the relevant part of the architecture for Microsoft Exchange 2000. Note that what is discussed here is a subset of Microsoft Exchange 2000. A full description is outside the scope of this discussion and would require a complete book by itself. The protocol engine shown in Figure 3.6 provides server functionality for mail-
related
protocols such as IMAP, POP3, and SMTP. The Exchange store (ESE) is based on the Jet database engine and provides functionality to store and retrieve various objects that collectively
constitute
an e-mail message. The Exchange Installable File System (ExIFS) provides some important functionality:
-
An extremely efficient interprocess communication mechanism between the Exchange store (ESE) and the Exchange protocol engine.
-
A cross-protocol Windows NT file handle cache. A handle created by one protocol (e.g., POP) can be reused by another protocol (e.g., DAV).
-
Functionality to minimize data conversion back and forth ”for example, storing messages in native MIME format.
Figure 3.6. Microsoft Exchange 2000 Storage Architecture
Although ExIFS provides this functionality, it is also the culprit as far as NAS vendors are
concerned
. The reason is that when an Exchange server uses a NAS device for the Exchange store, the ExIFS is not in the I/O
path
, as Figure 3.7 illustrates.
Figure 3.7. Microsoft Exchange 2000 with Local Storage and NAS Storage
Notice in the figure that when requests from the Exchange store or the Exchange protocol engine go to some Exchange files stored on a local drive, they flow through the protocol stack on the left-hand side of the diagram. For example, a read request goes from the Exchange store to ExIFS, from there to NTFS, from there to the disk class driver, and from there to the port driver. However, when
requests
are made to a file stored on a NAS device, the ExIFS driver is not in the I/O path, so they flow through the network stack on the right-hand side of the diagram. Thus the flow would be from Exchange store to CIFS redirector to TCP/IP protocol stack and from there to the network card, completely missing the ExIFS driver altogether.
Note that the architecture shown in Figures 3.6 and 3.7 applies only to Microsoft Exchange 2000 and not to Microsoft Exchange 5.5. Thus the issue described here does not apply to Microsoft Exchange 5.5.
|
|
3.8 Practical Implications
Starting with Windows 2000, Microsoft introduced a new minidriver model for the benefit of vendors wishing to write a network file system. The
vendors
need only write a minidriver that deals with the specifics of the network file system protocol of their choice. The interactions common to all network file systems (with the Windows operating system and Cache Manager) have been encapsulated into a driver library. Microsoft has built minidrivers for CIFS, NFS, and WebDAV.
CIFS is now a de facto industry standard for Windows
clients
communicating with a server. Several operating system platforms running a network file server implement CIFS. Microsoft licenses a royalty-free CIFS specification, and so also does the Storage Networking Industry Association (SNIA). Several dialects are available for CIFS. Both of the
royalty-free
CIFS specifications referred to earlier
correspond
roughly
to the protocol implemented by a Windows NT 4.0 client. Microsoft also implemented a for-royalty licensing program for the SMB client in the post-Windows NT 4.0 time frame.
Microsoft is competing with NAS appliance vendors built on non-Windows platforms by offering a customized Windows product to NAS OEMs. Only time will determine the degree to which this effort will be successful, though it appears that Microsoft has succeeded in
grabbing
at least a measurable share of the NAS market with this offering.
Microsoft Exchange 2000 does not work with NAS devices. In the longer
term
, Microsoft is expected to eventually build a version of Microsoft Exchange that will use SQL Server for its storage needs. Given that the new version of SQL itself is not yet commercially available, that day, if indeed it is to come, is way off in the unpredictable future. In the meantime, can or will Microsoft do something to alleviate the problem that Microsoft Exchange 2000 cannot run with NAS devices? Keep in mind the realities of market adoption rates and time lags. Even though Microsoft Exchange 2000 has been available for some time, some customers are still running on Microsoft Exchange 5.5. Probably the situation will be similar when the
next
version of Microsoft Exchange is released.