Disk array controller
Manages disks as logical units, often with hardware RAID.
A disk array controller is a device that manages physical disk drives and presents them to a computer as logical units. It often implements hardware RAID, leading to its common designation as a RAID controller, and frequently provides additional disk cache. The term is sometimes ambiguously shortened to 'disk controller,' which can also refer to the circuitry that manages internal disk drive operations.
- Front-end protocols
- ATA, SATA, SCSI, FC, FICON/ESCON, iSCSI, HyperSCSI, ATA over Ethernet, InfiniBand
- Back-end protocols
- ATA (PATA), SATA, SCSI, FC, SAS
- Enterprise controller form
- Physically independent enclosures in SAN or NAS
- Simple controller form
- PCI/PCIe expansion card or built onto motherboard
- Intel matrix raid connections
- 6 SATA (3 Gbit/s each) plus 1 IDE connector (100 Mbit/s)
- Ata raid introduction context
- Around introduction of ATAPI-4 and Ultra-DMA-Mode
- Openbsd bio(4) adoption year
- 2005
Lore & Background
Disk array controllers have front-end and back-end interfaces. The back-end communicates with the controlled disks using protocols such as ATA, SATA, SCSI, FC, or SAS. The front-end communicates with a computer's host adapter, using protocols like ATA, SATA, SCSI, FC, or less common dedicated protocols such as FICON/ESCON, iSCSI, HyperSCSI, ATA over Ethernet, or InfiniBand. A single controller may use different protocols for front-end and back-end; many enterprise controllers use FC on the front-end and SATA on the back-end.
In enterprise architectures, disk array controllers—sometimes called storage processors (SPs)—are parts of physically independent enclosures, such as disk arrays in a storage area network (SAN) or network-attached storage (NAS) servers. These external disk arrays are typically purchased as integrated subsystems of RAID controllers, disk drives, power supplies, and management software. The controllers provide advanced functionality including automatic failover, long-running operations without downtime, forming new RAID sets, reconstructing degraded RAID sets, adding or removing disks online, partitioning RAID sets into volumes/LUNs, snapshots, business continuance volumes (BCV), and replication with a remote controller.
Simple disk array controllers may fit inside a computer as a PCI/PCIe expansion card or be built onto a motherboard, often providing host bus adapter (HBA) functionality themselves and sometimes called a RAID adapter. Intel integrated their Matrix RAID controller in upmarket motherboards, controlling 4 devices plus 2 additional SATA connectors for 6 total SATA connections at 3 Gbit/s each, with one IDE connector for backward compatibility.
Reader's Guide
The disk array controller's significance lies in its role as the bridge between physical storage and logical presentation, enabling RAID functionality that provides fault tolerance, performance, and capacity management. Historically, hardware RAID controllers initially required expensive Parallel SCSI hard drives and targeted the server and high-end computing market, with SCSI advantages including support for up to 15 devices per bus, independent data transfers, hot-swapping, and higher MTBF. Around the introduction of ATAPI-4 and Ultra-DMA-Mode, the first ATA RAID controllers appeared as PCI expansion cards, bringing RAID to the consumer market for users seeking fault tolerance without investing in expensive SCSI drives. However, most ATA RAID controllers lacked dedicated buffers or high-performance XOR hardware, resulting in relatively poor performance compared to SCSI RAID controllers, and data safety suffered without battery backup for writes interrupted by power outages.
Operating system support varies widely. Because hardware RAID controllers present assembled RAID volumes, operating systems are not strictly required to implement complete configuration for each controller. Basic features are often implemented in open-source drivers, with extended features provided through binary blobs from manufacturers. RAID controllers are typically configured through card BIOS before booting, and proprietary configuration utilities are available from each manufacturer. Unlike Ethernet network interface controllers, which can be configured through common OS paradigms without third-party tools, each RAID controller manufacturer usually provides proprietary software for each supported OS, creating vendor lock-in and potential reliability issues. Some operating systems have implemented generic frameworks for interfacing with any RAID controller, such as OpenBSD's bio(4) pseudo-device driver and bioctl utility from 2005, which provide volume status, LED/alarm/hotspare control, and health monitoring sensors, keeping the feature set minimal so each controller can be supported uniformly.
Did You Know?
- A disk array controller is often ambiguously shortened to 'disk controller,' which can also refer to internal drive circuitry.
- Many enterprise controllers use Fibre Channel on the front-end and SATA on the back-end.
- Intel integrated a Matrix RAID controller in upmarket motherboards providing 6 SATA connections at 3 Gbit/s each.
- OpenBSD introduced the bio(4) pseudo-device driver and bioctl utility in 2005 for generic RAID controller monitoring.
Frequently Asked Questions
What is a disk array controller and what does it actually do?
It is a hardware device that takes charge of multiple physical disk drives and bundles them together so the host computer sees them as one or more logical storage units. Because it handles the array logic in dedicated silicon rather than leaving it to the operating system, it is most commonly recognized as a RAID controller.
Which front-end and back-end protocols can a disk array controller speak?
On the host-facing side it supports ATA, SATA, SCSI, Fibre Channel, FICON/ESCON, iSCSI, HyperSCSI, ATA over Ethernet, and InfiniBand. On the drive-facing side it connects using ATA (PATA), SATA, SCSI, FC, or SAS.
Why is the shortened term 'disk controller' considered ambiguous?
People often drop 'array' and just say 'disk controller,' but that phrase can equally mean the basic circuitry that manages a single internal drive's read and write operations. In technical documentation the two meanings can collide, so context is needed to tell them apart.
What physical form factors does a disk array controller come in?
In enterprise deployments it lives in a physically independent enclosure attached through a SAN or NAS fabric. In simpler or workstation-class systems it is either a PCI/PCIe expansion card you slot into the board, or the controller logic is integrated directly onto the motherboard.
How many drive connections does Intel's Matrix RAID controller provide, and when did it appear?
It offers six SATA ports at 3 Gbit/s each plus a single legacy IDE connector running at 100 Mbit/s. This configuration dates to the period around the introduction of ATAPI-4 and Ultra-DMA-Mode, when ATA-based RAID was first becoming practical.
More in Computer Storage 1-24
Spotted an error? Know more?
Reader corrections go straight into our review queue. Suggest an edit · How this site is sourced
