Most storage administrators are very familiar with the difference between implementing RAID in software and implementing RAID with specialized hardware, and the tradeoffs in cost, performance and reliability the different methods offer. However there are different kinds of both hardware and software RAID implementations and each has its own set of trade offs.

IOP vs IOC The two common ways of implementing hardware RAID are to use a special processor or subsystem in the array (I/O Processor, or IOP) or to rely on the processor(s) in the controller (I/O Controller, or IOC) to handle the various RAID tasks. The processor is usually either part of the server or built into the HBA. IOP RAID is the most common hardware implementation. It is also the most expensive and the most flexible. The separate processor and associated software and firmware give the RAID system much greater ability to handle chores like RAID level migration, recovery and disk array rebuilding than the alternative methods. For the storage administrator the major drawback to IOP RAID is cost. Because of the dedicated processor and other components, IOP RAID is the most expensive method of implementing RAID.

The other common approach to implementing hardware RAID is IOC, which uses processors on the disk controllers to provide RAID functionality. The major advantage of controller-based RAID is that it is a much cheaper form of hardware-based RAID. The biggest drawbacks are lack of

    Requires Free Membership to View

performance and lack of flexibility compared to IOP. IOC is limited by the processor power and the memory bandwidth of the controller, so it is not usually as fast as IOP RAID. It also can't do as many of the RAID management jobs as IOP RAID. However it can still run tasks in the background and is independent of the operating system used by the computer. IOC RAID isn't well suited to high performance applications like databases, but it provides a (relatively) economical method of achieving the benefits of hardware RAID.

Driver vs OS-Based Software RAID also comes in two flavors. While software RAID systems are limited in performance and are not as reliable as hardware RAID, they are also much cheaper. This makes them especially useful in non-critical applications where high performance isn't needed. Software RAID can be implemented either in the disk controller driver or by the operating system itself.

Driver-based RAID is implemented in the drivers of the hard disk controllers. It offers an inexpensive version of RAID that is independent of the operating system, but relies on the specific make of controller for RAID functionality. OS-based RAID includes a RAID engine in the operating system. It is controller-independent, but OS-dependent. Both kinds of software RAID rely on system processor and memory resources to function, which means they can significantly affect performance in a highly loaded environment.

Dell Computers discusses the strengths and weaknesses of the various forms of RAID in a paper on its web site titled "Comparing RAID Implementation Methods", available at www.dell.com.


Rick Cook has been writing about mass storage since the days when the term meant an 80K floppy disk. The computers he learned on used ferrite cores and magnetic drums. For the last twenty years he has been a freelance writer specializing in storage and other computer issues.


This was first published in November 2003

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.