Storage Interconnect Technologies
Volume Number: 21 (2005)
Issue Number: 9
Column Tag: Programming
Media Exchange: Storage Interconnect Technologies
A Quick Reference and Guide to IDE/ATA, SATA, eSATA, SCSI, SAS, Fibre, IEEE 1394, USB and RAID
by Emmanuel Stein
With all of the exisiting storage interfaces to choose from, Mac professionals are routinely
faced with a bewildering array of technology and configuration options. Moreover, with Apple's
entrance into the high-end enterprise server market, the identification and implementation of the
array of extant interconnect technologies has become an increasingly complex task. This article
represents a compass for Mac professionals to navigate the maze of available solutions. Using a
modified glossary-style format, each technology is defined in detail with practical commentary on
the application of the various technologies covered. Whenever appropriate, I reference how these
technologies apply to the Mac and give readers a sense of what technologies are being developed and
which ones will likely be supplanted in the near term.
Parallel ATA (IDE/ATA)
Advanced Technology Attachment (ATA) is a parallel interface for connecting internal storage
devices to personal computers and has many aliases including ATA/ATAPI, EIDE, ATA-2, Fast ATA,
ATA-3, Ultra ATA, and Ultra DMA. ATA supports two devices per bus with only one drive able to access
said bus at a time. ATA-7 (ATA-133), the current and final revision of the ATA specification,
supports a maximum data transfer rate of 133 MBytes/sec across an 18-inch cable. Although ATA is
best suited to low cost consumer storage solutions, it has been successfully adapted to the
enterprise market, via clever hardware engineering on Apple's part in their Xserve RAID product,
which overcomes many of the shortcomings of ATA. Every ATA drive in the Xserve RAID is connected to
a dedicated bus, with two independent and non-redundant controllers that support non-native Tagged
Command Queuing, an essential feature for enterprise-grade storage solutions. PATA is, nevertheless,
a technology of the past and, though it is still employed in low end Macs and other devices, it is
being replaced by its serial counterpart.
Serial ATA (SATA)
SATA is quickly replacing parallel ATA as the internal storage interface of choice for desktop
machines and low cost server solutions. SATA made its Mac debut in Apple's PowerMac G5 line and has
been extended the new iMac line. SATA has also been used in newer Xserves, with the notable
exception of the Xserve RAID. SATA remains compatible, on the software level, with ATA and,
therefore, all the existing firmware, operating systems, and applications that work with ATA will
also work with SATA. SATA advantages include point-to-point interconnect that enables full bandwidth
for each drive, native command queuing, lower voltage requirements, hot-plug capability, thin
cabling, longer cable length, faster transfer rate and CRC error checking. These added features make
SATA suitable for cost sensitive server deployments.
SATA - maximum transfer rate is 150MBytes/sec over a cable up to 1 meter long
SATA II - maximum transfer rate is 300MBytes/sec over a cable up to 1 meter long
SATA-III - maximum transfer rate is 600MBytes/sec (will be available in 2007)
External SATA (eSATA)
ESATA is an emerging external storage interface extension to SATA, which offers an inexpensive
and faster external storage solution and is poised to overtake FireWire disk implementations, so
common in the today's Mac environments. Currently, eSATA supports a maximum transfer rate of
150MBytes /sec and has a maximum cable length of 2 meters.
Parallel Small Computer System Interface (SCSI)
Parallel SCSI, better known as just plain SCSI, is a parallel bus technology that connects a
variety of peripherals to one's computer. Parallel SCSI can support up to 16 devices on a single
bus. Although it offers faster throughput and comes with more advanced drive features than ATA, its
price to performance ratio leaves something to be desired. SCSI's parallel nature makes it hard to
deploy in larger environments and the technology has reached its practical performance limit. Ultra
320 is the last line in the evolution of parallel SCSI and supports a maximum transfer rate of
320MBytes/sec over a cable up to 12 meters in length. Although SCSI has dominated the enterprise
market for the past two decades, SAS represents a natural evolution of the technology, which is
likely to eclipse SCSI in the near term.
Serial Attached SCSI (SAS)
SAS is a serial implementation of SCSI that is designed to extend the existing capabilities of
parallel SCSI and enables compatibility with Serial ATA. SAS allows users to interconnect either
SATA or SAS hard disks within an expander that can be configured to support up to 16,256 mixed
drives An essential component of the SAS infrastructure, expanders enable scalable storage with
extended distances between devices and support for multiple device attachment to multiple host
initiators, thereby affording fault tolerance. The maximum cable length of SAS is 10 meters. SAS
also supports smaller storage devices such as 2.5-inch drives. Its point-to-point configuration and
highly scalable architecture makes SAS an advanced, high-cost enterprise-class solution for
applications that do not require the long cable lengths associated with Fibre technologies.
SAS 300 - maximum transfer rate is 300MBytes/sec
SAS 600 - maximum transfer rate is 600MBytes/sec (will be available in 2007)
SAS 1200 - maximum transfer rate is 1200MBytes/sec (will be available in 2010)
Fibre Channel (FC)
Fibre Channel is a serial bus interface for high-speed storage solutions. It is interoperable
with SCSI, IP, ATM, HIPPI and IEEE 802.2 protocols and offers a maximum data transfer rate of 400
MBytes/sec, with a maximum length of 30 meters over copper and 10 kilometers using optical. Fibre
Channel offers point-to-point, switched, and loop interfaces. Via arbitrated loop (FC-AL), fibre
channel can support up to 127 devices and up to 15,663,104 using switched fabric. Fibre has been
increasingly deployed for enterprise applications such as SAN (Storage Area Network), which benefit
from Fibre Channel-specific features like long cable length and capacious device support.
FireWire is a high-speed serial bus developed by Apple. It offers simple connectivity for
multimedia peripherals such as digital video cameras, iPods and high-performance storage. FireWire
can connect up to 63 devices on a single bus and supports hot-swapping. FireWire was originally
designed for streaming digital video and, therefore, was not implemented with heavy file serving in
mind, with its frequent random reads and writes. FireWire hard drives have been widely deployed as
an inexpensive backup solution, particularly in Mac environments. Although cable length is limited
to 4.5 meters, distances up to 50 meters can be achieved using plastic optical fibre (POF) and 100
meters with hard polymer or glass-based fiber cabling. Although, not considered an enterprise grade
solution, Apple's popularization and support for this technology, have gone a long way to
legitimizing its use in the enterprise, as well as, home environments.
FireWire 400 - maximum transfer rate is 400 MBits/sec
FireWire 800 - maximum transfer rate is 800 MBits/sec
Universal Serial Bus (USB)
USB is designed for a variety of peripheral interconnect applications. A single USB channel can
connect up to 127 devices with a maximum cable length of 5 meters. External USB-based hard drives
are popular among PC users since FireWire does not typically come standard. Although used in many
third party storage solutions, USB-based hard drives not appropriate for server or other high-end
applications like digital video and file serving.
USB 1.1 - maximum transfer rate is 12 MBits/sec
USB 2.0 (Hi-speed USB) - maximum transfer rate is 480 MBits/sec
Redundant Array of Independent Disks (RAID)
RAID is a method of consolidating multiple drives into Logical Units (LUNs). RAID can be
implemented using extant hard drive technologies, including SCSI, SATA, and ATA. Depending on the
particular RAID configuration used, benefits will include increased data integrity and redundancy,
facilitated disk cluster management, fault-tolerance, and improved throughput. RAID solutions are
commonly used in the enterprise and have now gained a foothold in the high-end consumer market.
RAID 0 - also known as striping, splits data evenly across all drives and lacks parity
information for redundancy. It increases performance in read and write operations, but introduces an
increased rate of failure with each disk added. RAID 0 is recommended for applications that are not
data critical but require high speed such as audio and video streaming and editing, graphic design
and high-end gaming systems.
RAID 1 - aka mirroring creates an exact copy of the data on two or more disks. It
increases performance in read operations but imposes a small penalty for write operations. RAID 1's
inefficient use of the disk space is considered its main drawback. It is well suited, however, to
data critical applications in which superior reliability is required.
RAID 0+1 - a combination of RAID 0 and RAID 1, a mirror of stripes. Benefits include
increased performance in read and write operations while maintaining data redundancy. Disadvantages
include high cost and limited scalability. Performance is severely degraded during recovery, since
all disks in an array must participate in the rebuilding process. RAID 0+1 is recommended for
imaging applications and general fileserver tasks that require high performance but do not demand
RAID 3 - byte-level striping with a dedicated parity disk. Its random read/write
performance is poor due to byte-level striping, parity calculation overhead and the bottleneck of a
dedicated parity drive. RAID 3 is useful for applications that deal with large files such as video
editing and prepress, which benefit from increased performance with redundancy.
RAID 5 - data and parity information are striped across all drives. It is the most
popular of the RAID configurations because it provides a good balance between availability,
capacity, data protection and performance relative to other RAID implementations. RAID 5 is often
employed in transaction processing applications such as web, e-mail, and news servers, where large
numbers of users access information concurrently.
RAID 10 - a combination of RAID 1 and RAID 0, a stripe of mirrors. It is very costly
to deploy and suffers from limited scalability. Unique advantages include rapid data transfer, with
its striped array, and superior data redundancy. RAID 10 is used in database solutions that require
high performance and fault tolerance.
RAID 50 - block striping with the distributed parity of RAID 5 combined with the block
striping of RAID 0. This combination achieves fast transfer rates via distributed parity and is very
costly to implement. RAID 50 is only recommended for data critical applications that require high
fault tolerance with fast read/write operations.
Emmanuel Stein has been an avid Mac user since 1984 and has honed his cross-platform
skills while working at France Telecom, Time Magazine and Reed-Elsevier. He has recently started his
own Mac-centric consulting company, MacVerse, which offers implementation, system administration and
development services geared towards the enterprise market. As a diehard GNU/Linux geek, he enjoys
hacking open source software and experimenting with new open source projects on OS X. You may reach
him at email@example.com
What's the best direction?
Now that you have a better idea as to what all the different technologies are with their
strengths and weaknesses, which do you use? Unfortunately, there is no one easy answer, but we
thought we'd give you one example of a way to take advantage of these technologies.
Here at MacTech Magazine, we're always bringing in new equipment and replacing old stuff. It's
part of the magazine process. Recently, we decommissioned an older Power Mac G4 tower machine,
which was running perfectly fine, and was wondering what to do with it. As a 450MHz G4, it wasn't
fast enough to be a workstation, but it was plenty fast to be aserver ... depending on the type.
We chose to turn it into another file server. We installed Mac OS X Server on it, gave it 768MB
of RAM, and then started to look and see what disks we could put into it. The problem with the
older machines is that they, many times, don't support drives larger than 128GB, and we weren't
going to invest in drives that small.
Instead of investing in old technology, we decided to combine the best of new and old. In this
case, we went with SATA drives from Maxtor. Why SATA? Well, for starters, they break the 128GB
barrier as a general rule.
And, these Maxtor drives are designed to live for a minimum of 5 years. Meaning that even though
these are going in an older machine, we're investing in technology that will be useful for a while.
We can use these drives for something else down the road. This is one of the best reasons to go
with SATA instead of Ultra ATA.
Specifically, we went with the Maxtor DiamondMax 10. These Serial ATA drives feature a 16MB
buffer, at 7200 RPM, and a data transfer rate of 150 MBps. At time of writing, street prices are
between $110 and $160 for these drives making them a cost effective solution.
But my machine doesn't support SATA!
Yep, none of the older ones do. No worries. You can get an inexpensive SATA PCI card for around
$50. In our case, we used one from Sonnet, and attached two SATA drives to the one cord. Don't
forget, both the interface cables and the power cables are different than ATA. You'll need a power
adapter cable, and SATA interface cables if they don't come with your card.
What else is cool out there?
Maxtor has some other cool stuff as well. The Maxtor Shared Storage drive is a budget conscious
way to share files. It's basically, a low cost file server that you attach to your network, is
automatically configured (and can be further configured in a web interface) and can even help you
share two USB printers. They come in 200 and 300 GB versions.
Maxtor also has some great "OneTouch" devices which you can use as either an external drive, or
as an easy way to do a "one touch" backup. The Maxtor OneTouch II, FireWire 800 Edition actually
sports a triple interface: FireWire 800, FireWire 400 and USB 2.0. Its Mac bootable feature turns a
drive into a bootable system drive. It includes a simple user interface and automated back-up
software so you can designate a portion of drive for high-performance storage and the other portion
for backing up critical data. Two capacities: 200 GB (MSRP: $229.95); 300 GB(MSRP: $319.95)
by Neil Ticktin, publisher of MacTech Magazine.