point
Menu
Magazines
Browse by year:
April - 2004 - issue > Technology
RAIDing The Storage Market
Sanjay Mathur & Adam Zagorski
Wednesday, March 31, 2004
Good things come in small packages. This adage rings true even for the traditionally staid computer storage industry. The storage market is undergoing a technology inflection. Features that were once available only on “Big Iron” Enterprise Storage systems are now migrating down into modular systems with smaller footprints. Next generation storage systems, soon to be introduced by some of the industry-leading vendors, will provide features and performance levels which were once available only in “Glass House” storage environment, at a price point targeted for volume markets. The architecture of these storage systems is based upon another good thing in a small package: the RAID Storage Processor.

RAID Storage Processors bring new levels of performance and functionality to storage subsystems. A high level of integration along with a proprietary architecture, consisting of a scalable fabric of programmable processing elements designed to accelerate compute intensive storage routines, enables a single chip enterprise class RAID solution. Multiple task specific hardware engines perform repetitive and algorithmic tasks in parallel with minimal system latency. Read and write commands are fully automated end to end without intervention from an external processor. In essence, all performance critical storage and bandwidth intensive processing is completely offloaded from the processor resulting in a highly optimized data path. Execution speed comes both from the parallelism of multiple commands simultaneously in the pipeline as well as from hardware acceleration of various compute intensive steps in the flow.

RAID controllers for storage systems, which have been in existence since the late 80’s, are a combination of hardware and software. They are typically designed around a general-purpose microprocessor executing software instructions, and discrete task specific ASICS, such as protocol devices and XOR/data path controllers, which are all interconnected via a shared bus. While processor and memory speeds have increased, the fundamental architecture of these controllers remains unchanged.

This legacy architecture has served us well for the past years, but the increased demands on storage systems created by content rich applications, increased volumes of transactions and the migration to higher link speeds has created compute and data path demands that shared bus architectures based on general purpose micro-processors cannot meet. An interrupt-driven architecture such as this inherently reduces system performance caused by the latency induced by each interrupt service routine.

Interrupts are virtually eliminated by the RAID Storage Processor since each integrated processor has its own dedicated memory and data path for code fetch. Multiple hardware engines, which are well suited for performing real time functions, are responsible for executing the deterministic storage algorithms.

Storage Processor Landscape
Generally speaking, Storage Processors can be lumped into one of three categories: TCP/IP Offload Engines (TOE), Network Storage Processors (NSP) and RAID Storage Processors (RSP). Storage Processors are typically devices that provide a high-speed storage data path while eliminating a general-purpose microprocessor from executing time critical performance functions. Since the computational tasks required of these processors are well understood, they have the ability to combine the speed and performance of ASICS with the programming flexibility of microprocessors. Storage processors must also be capable of SCSI Protocol Management, packet processing and encapsulation.

A TCP/IP Offload Engine relieves the network processing bottleneck by offloading network protocol processing such as TCP/IP and iSCSI traditionally performed by host software executing on an external CPU.

While Network Storage Processors can also provide protocol processing, they are optimized for accelerating volume and data management applications in a storage network. They have the ability to directly manipulate table entries that maintain the state of the storage system in order to provide hardware assist for higher-level storage functionality.

A RAID Storage Processor provides all of the same protocol, volume and data services acceleration as a Network Storage Processor, but the key difference between the RAID Storage Processor and the Network Storage Processor is that a Network Storage Processor primarily routes and forwards packets, while the RAID Storage Processor is responsible for a storage specific task called command termination and redirection. Command termination means the storage processor acts as a virtual target, literally intercepting the read and write commands. The processor then creates one or more new commands based on the real command that was terminated. Additional processing on each command can include host/LUN permissions checking, mapping of virtual volumes to physical disk drives, parity calculations or RAID Rebuild. In addition to command termination and RAID functionality, the RAID Storage Processor is also capable of intelligent cache management. The cache is implemented in fast memory at the virtual volume level. To protect against data corruption, cache memories controlled by the RAID Storage Processor must be able to take precautions to assure data persistence, even in the event of power loss to volatile memory.

RAID Storage Processor Benefits
The RAID Storage Processor provides several key benefits to enterprise storage systems.
The architecture enables entry-level storage systems to outperform high-end systems costing several times more. Legacy storage controllers bottleneck under compute intensive environments. Database and On Line Transaction Processing applications consume many CPU cycles, due to the randomness of the data. Writing to a RAID 5 volume, which requires multiple steps in order to calculate parity and mirror all write data to a redundant controller, can be equally as compute intensive. The RAID Storage Processor removes this bottleneck since it accelerates these functions in hardware, and enables new levels of performance.

The performance attributes of the RAID Storage Processor significantly enhance system business continuity. For example, hard disk drive capacity is continually increasing. This, along with the increased use of SATA disk drives, which have a higher failure rate than enterprise drives, places a higher demand on the ability to rebuild a disk drive after a failure. Rebuilding a failed disk drive in a RAID5 system fast is paramount to reduce the risk of permanently losing data. The RAID Storage Processor is capable of keeping up with the rotational speed of the disk drive as it calculates and rewrites the missing data during the rebuild process. This results in shorter rebuild times and higher performance during the rebuild process. The benefit is increased reliability, increased data availability and a significantly minimized risk for data loss.

The high level of integration of the RAID Storage Processor reduces costs by integrating multiple storage components such as discrete off the shelf protocol devices, custom Memory controller/XOR ASICS, expensive processors and RAID software, into a single device. While a single device can provide direct cost savings by lowering the bill of material costs for a RAID controller, it also provides indirect cost savings. Reducing the component count on a controller board increases the reliability further minimizing support costs.

The standardization of RAID functions enables storage OEMS to leverage the RAID Storage Processor technology to provide base level functionality such as volume mapping, redundant controller fail-over, and cache management. Implementation of these features in hardware relieves the storage system manufacturer from re-inventing RAID functionality and allows them to focus their engineering efforts on higher value product differentiators such as disk and data services. Additionally, the disk and data services do not impact the throughput of the storage data path, resulting in a feature rich storage system without compromising performance.

The RAID Storage Processor is the engine beneath the hood for next generation enterprise storage architectures. The combination of an innovative high performance architecture coupled with extreme integration enables storage solutions that optimize for both system performance and cost. This enables RAID Storage Processor powered systems to set a new standard for price/performance.

Sanjay Mathur is the co-founder and Vice President, Engineering of Aristos Logic. He is responsible for establishing strategic technical direction for the company. He has over 18 years of experience in the mainframe, personal computer, storage peripheral, and semiconductor industries. Prior to co-founding Aristos Logic, Mathur was Director of VLSI Development for Western Digital, Irvine.

Adam Zagorski is the Director of Product Marketing at Aristos Logic. He helps set strategies in order for Aristos Logic to meet their product and business goals.


Twitter
Share on LinkedIn
facebook