Abstract
This paper provides information about storage processors for the Microsoft®
Windows® family of operating systems. It provides guidelines for designers to build
next generation storage systems which provide a level of performance which is
unattainable using general purpose processors and more importantly provide a
hardware platform which is manageable through storage services embedded in
Microsoft operating systems.
Contents
Introduction .................................................................................................................................................3
Overview..................................................................................................................................................3
History of Network Processors................................................................................................................4
What’s Different About Storage?.............................................................................................................5
A Closer Look at Virtualization.................................................................................................................7
Variations and Combinations.............................................................................................................8
Why Storage Processors?.......................................................................................................................9
Logical Targets.................................................................................................................................10
Embedded Initiators.........................................................................................................................10
Advanced Storage Functions...........................................................................................................10
Summary of Benefits........................................................................................................................11
Intelligent Storage Processor Architecture............................................................................................11
FibreSlice™ and Windows NT Storage Architecture.............................................................................12
Conclusion.............................................................................................................................................13
Intelligent Storage Processors - 2
WinHEC Sponsors’ Disclaimer: The contents of this document have not been authored or confirmed by
Microsoft or the WinHEC conference co-sponsors (hereinafter “WinHEC Sponsors”). Accordingly, the
information contained in this document does not necessarily represent the views of the WinHEC
Sponsors and the WinHEC Sponsors cannot make any representation concerning its accuracy. THE
WinHEC SPONSORS MAKE NO WARRANTIES, EXPRESS OR IMPLIED, WITH RESPECT TO THIS
INFORMATION.
Microsoft, Windows, Windows Server, and Windows NT are trademarks or registered trademarks of
Microsoft Corporation in the United States and/or other countries. Other product and company names
mentioned herein may be the trademarks of their respective owners.
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 3
Introduction
This paper provides information about storage processors, a new class of silicon
device dedicated to accelerating storage commands and providing management
capabilities which are not possible with general purpose processors. It compares
and contrasts storage processors with network processors, and further illustrates
how not all storage processors are equal. It also explores the concepts of storage
virtualization with respect to storage processors, and how they are a key component
for designing RAID and Virtualization frameworks. Finally, it delves into how storage
processor technology can be leveraged with Microsoft Enterprise Storage features
to differentiate and add value to products designed with both.
Overview
Until recently, designing storage frameworks included the use of discreet
components such as off-the-shelf generic processors and firmware to meet
competitive standards of performance and manageability. With the advent of new
drive design, packaging and management software, this traditional approach is
being supplanted with a new class of storage processor to meet the new demands
of a network centric storage model.
Many new storage processor devices are now becoming available on the market,
but not all storage processors are created equal. Most of these emerging products
have a traditional network centric view of storage and tend to look at storage
networks as a symmetric network. In reality, storage networks are asymmetric.
Hosts and disks are not peers, as their behavior is very different. To meet the
evolving demands of storage and the adoption of storage virtualization, a new class
of Intelligent Storage Processor (ISP) has appeared as a fundamental building
block. Unlike their cousins in Local Area Network switches and routers, however,
these devices are optimized for dealing with the complexities of a Storage Area
Network (SAN) environment. To achieve maximum benefits in a storage network, a
storage processor must be able to do much more than lookup destinations, forward
frames, probe packets, manipulate data and gather statistics.
In a traditional sense, storage controllers accept read and write commands sent to a
logical volume, then handle the details of mapping those requests to physical
storage devices. This RAID functionality is in essence the simplest form of
virtualization.
When we talk about storage virtualization today, we're extending the RAID
functionality and LUN management functionality found in storage controllers to
operate within network environments. Storage virtualization is a powerful tool for
exploiting the storage architectures of the future. Storage or server assets can be
added, moved, changed and modified without affecting the entire system. Storage
resources can then behave more like a true utility. By representing resources
logically, they can be pooled, provisioned, and deployed with greater flexibility.
Mirroring, Snapshots, and replication can be used to eliminate single points of
failure.
This paper highlights the unique requirements of storage virtualization, explores
some of the various applications that can benefit from virtualization technology, and
outlines how the Aristos Logic FibreSlice architecture can be uniquely leveraged by
the Window NT® storage architecture to provide enhanced functionality such as:
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 4
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 5
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 6
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 7
assure data persistence, even in the event of power loss to volatile memory. This
could be accomplished through battery back-up, or write-through to the physical
device, with the cached copy marked as dirty until an acknowledgement has been
received.
It should be apparent from these examples that simply classifying and moving
frames in and out of the storage controller at high speeds is not enough to duplicate
these sophisticated functions.
Moving even closer to the physical drives, spindle management becomes the most
important optimization function. Disk drive rotational latencies and seek times are so
large relative to command processing overhead that there are opportunities for
“predictive reads” on individual drives, and striping related data across multiple
drives can multiply the sustainable I/O Operations Per Second (IOPS) by
aggregating many physical drives into single logical units.
Initiators on the HBA side have quite different optimizations. Here, cache would be a
liability since servers do not typically back up their outstanding writes with
redundant battery-based power. Instead, an initiator needs to have hardware
assisted Direct Memory Access (DMA) to quickly map outstanding I/O contexts. A
“context” is a set of saved pointers, necessary to keep track of where in-host
memory, in-bound data and status need to be placed. Without the pipelining made
possible by this approach, host processors would be bogged down processing the
constant interrupts and context switching associated with hundreds of outstanding
storage I/Os.
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 8
Management Apps
Software Hardware
Provider Provider
Management Console
Software Hardware
Provider Provider
Target Machine
• Mapping
• Pooling
The performance and availability services
• Snapshot
• Migration
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 9
• Remote copy
These services and features are the fundamental elements of all
sophisticated storage implementations, from RAID to virtualization in a SAN.
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 10
Logical Targets
Servers access logical volumes through a host bus adapter, which, in the language
of storage protocol, is an Initiator. Initiators are responsible for "initiating" I/O
operations such as read and write, and maintaining current state information until
the operation is successfully completed. The burden of error recovery and retrying
commands is also an initiator function. At the ISP, an initiator will always be routed
to a port processor running Target emulation code. Targets are devices that
respond to initiator requests with either data or status. Targets operate
asynchronously, and are not required to maintain current state information for the
duration of the I/O operation. Target Emulation has the effect of making the port
respond to requests for data and status exactly as a physical storage device would.
The emulated logical volume (often referred to by its Logical Unit Number, or LUN)
may map directly to a physical device, or may aggregate multiple physical devices.
Logical volumes may also be supported by cache memory, RAID configurations,
and other functions designed to enhance the performance or reliability of the logical
volume. The logical-to-physical mapping structures and services available to the
resulting logical volume define and bound the benefits available from virtualization.
Embedded Initiators
Another core function in the ISP is the Embedded Initiator. This functional block
has the same protocol requirements as a host bus adapter - it must initiate I/O
operations to external targets and track them to completion. The embedded initiator
supports the "back end" of the virtualization function, redirecting write operations or
requesting the physical blocks from external devices once the logical to physical
mapping has been resolved. All initiators are not created equal. The process of
"reverse mapping" the physical to logical data flow may be supported by specialized
hardware engines capable of fast context switching and DMA, or slower software
parsing in buffer memory may be used. Initiators may also be responsible for
Discovery of new block storage devices, recognition of device moves, failover path
management, error detection, and command retries.
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 11
Summary of Benefits
By choosing to leverage an Intelligent Storage Processor in your network storage
product family, you get optimization of sophisticated storage functions without the
need for specialized in-house expertise. Designers can focus on value and
differentiators, while achieving lower system cost, tighter integration, and higher
performance than discrete designs.
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 12
• Leveraging the Storport driver model to ensure that the software can drive I/O to
obtain a maximum throughput and leverage all the hardware acceleration
features of the FibreSlice architecture
• Leveraging the extensibility provided by Windows Management Initiative – WMI
allows an IHV to provide product differentiation by surfacing additional
instrumentation including data and events classes. These dynamically created
classes can be discovered and utilized by WMI aware systems management
applications
• Leveraging the Volume Shadow Copy Service (VSS) to provide storage and
storage management applications platform integrated access to the snapshot
features of the FibreSlice architecture
• Leveraging the Virtual Disk Service (VDS) to provide storage and storage
management applications integrated platform access to storage in an
application meaningful way (Define a RAID 5 volume of 10GB size; allocate a
RAID 1 volume of 20 GB size; etc)
• Leveraging the power of Multi Path I/O Development kit to utilize the multi path
capabilities of Fibre Slice and provide
WinHEC 2003
Microsoft Windows Hardware Engineering Conference
Intelligent Storage Processors - 13
Conclusion
This paper explored the differences between network processors and storage
processors and also detailed some important concepts of storage virtualization.
Furthermore, it went on to explore how the Microsoft VDS and VSS architectures fit
into this world of storage processors and how Aristos Logic is using the
Windows NT enterprise storage features to differentiate their FibreSlice device.
WinHEC 2003
Microsoft Windows Hardware Engineering Conference