Disk array controller

Disk array controller

A disk array controller is a device which manages the physical disk drives and presents them to the computer as logical units. It almost always implements hardware RAID, thus it is sometimes referred to as RAID controller. It also often provides additional disk cache.

A disk array controller name is often improperly shortened to a disk controller. The two should not be confused as they provide very different functionality.


Front-end and back-end side

Disk array controller provides front-end interfaces and back-end interfaces.

  • Back-end interface communicates with controlled disks. Hence protocol is usually ATA (a.k.a. PATA; incorrectly called IDE), SATA, SCSI, FC or SAS.
  • Front-end interface communicates with a computer's host adapter (HBA, Host Bus Adapter) and uses:
    • one of ATA, SATA, SCSI, FC; these are popular protocols used by disks, so by using one of them a controller may transparently emulate a disk for a computer
    • somewhat less popular protocol dedicated for a specific solution: FICON/ESCON, iSCSI, HyperSCSI, ATA over Ethernet or InfiniBand

A single controller may use different protocols for back-end and for front-end communication. Many enterprise controllers use FC on front-end and SATA on back-end.

Enterprise controllers

In a modern enterprise architecture disk array controllers are parts of physically independent enclosures, such as disk arrays placed in a storage area network (SAN) or network-attached storage (NAS) servers.

Those external disk arrays are usually purchased as an integrated subsystem of RAID controllers, disk drives, power supplies, and management software. It is up to controllers to provide advanced functionality (various vendors name these differently):

  • automatic failover to another controller (transparent to computers transmitting data)
  • long-running operations performed without downtime
    • forming a new RAID set
    • reconstructing degraded RAID set (after a disk failure)
    • adding a disk to online RAID set
    • removing a disk from a RAID set (rare functionality)
    • partitioning a RAID set to separate volumes/LUNs
  • snapshots
  • Business Continuance Volumes (BCV)
  • replication with a remote controller....

Simple controllers

Promise Technology ATA RAID controller

A simple disk array controller may fit inside a computer, either as a PCI expansion card or just built onto a motherboard. Such a controller usually provides host bus adapter (HBA) functionality itself to save physical space. Hence it is sometimes called a RAID adapter.

As of February 2007 Intel started integrating their own Matrix RAID controller in their more upmarket motherboards, giving control over 4 devices and an additional 2 SATA connectors, and totalling 6 SATA connections (3Gbit/s each). For backward compatibility one IDE connector able to connect 2 ATA devices (100 Mbit/s) is also present.


While hardware RAID controllers were available for a long time, they always required expensive SCSI hard drives and aimed at the server and high-end computing market. SCSI technology advantages include allowing up to 15 devices on one bus, independent data transfers, hot-swapping, much higher MTBF.

Around 1997, with the introduction of ATAPI-4 (and thus the Ultra-DMA-Mode 0, which enabled fast data-transfers with less CPU utilization) the first ATA RAID controllers were introduced as PCI expansion cards. Those RAID systems made their way to the consumer market, where the users wanted the fault-tolerance of RAID without investing in expensive SCSI drives.

ATA drives make it possible to build RAID systems at lower cost than with SCSI, but most ATA RAID controllers lack a dedicated buffer or high-performance XOR hardware for parity calculation. As a result, ATA RAID performs relatively poorly compared to most SCSI RAID controllers. Additionally, data safety suffers if there is no battery backup to finish writes interrupted by a power outage.


  • Storage Basics: Choosing a RAID Controller, May 7, 2004, By Ben Freeman[1]

This article was originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL.

Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Array controller based encryption — Within a storage network, encryption of data may occur at different hardware levels. Array controller based encryption describes the encryption of data occurring at the disk array controller before being sent to the disk drives. This article will …   Wikipedia

  • Disk Array —   [dt. »Festplattenanordnung«], zwei oder mehr Festplatten, die ein RAID System bilden. Sie werden über einen Controller und über Management Software so gesteuert, dass sie sich wie eine einzige Festplatte oder wie ein gespiegeltes System… …   Universal-Lexikon

  • Disk Array — Hewlett Packard Disk Arrays: HASS (oben) und NIKE EMC CLARiiON CX500 mit abgenommener Abdeckung an einem Platten Shelf …   Deutsch Wikipedia

  • Disk-Array — Hewlett Packard Disk Arrays: HASS (oben) und NIKE …   Deutsch Wikipedia

  • Disk controller — The disk controller is the circuit which enables the CPU to communicate with a hard disk, floppy disk or other kind of disk drive. Early disk controllers were identified by their storage methods and data encoding. They were typically implemented… …   Wikipedia

  • Controller (computing) — In computing and especially in computer hardware, controller is a chip, an expansion card, or a stand alone device (usually called a control unit) that interfaces with a peripheral device. This may be a link between two parts of a computer (for… …   Wikipedia

  • Disk mirroring — In data storage, disk mirroring or RAID1 is the replication of logical disk volumes onto separate physical hard disks in real time to ensure continuous availability. A mirrored volume is a complete logical representation of separate volume copies …   Wikipedia

  • Disk buffer — Not to be confused with page cache. The disk buffer sits on the controller board of the hard drive. In computer storage, disk buffer (often ambiguously[citation needed] called disk cache …   Wikipedia

  • Disk-drive performance characteristics — are the attributes which control the time it takes to transfer (read or write) data between a computer and a data storage device (most typically disk storage) starting with the initial command from the computer or host until the storage device… …   Wikipedia

  • disk duplexing —    A fault tolerant technique that writes the same information simultaneously onto two hard disks.    Each hard disk uses a different disk controller to provide greater redundancy. If one disk or disk controller fails, information from the other… …   Dictionary of networking