- Serial Attached SCSI
Serial Attached SCSI (SAS) is a data transfer technology designed to move data to and from computer storage devices such as
hard drivesand tape drives. It is a point-to-point serial protocol that replaces the parallel SCSIbus technology that first appeared in the mid 1980s in corporate data centers, and uses the standard SCSI command set. At present it is slightly slower than the final parallel SCSI implementation, but in 2009 it will double its present speed to 6 Gbit/s, allowing for much higher speed data transfers than previously available, and is "downwards"-compatible with second generation SATA drives. SATA 3.0 Gbit/s drives may be connected to SAS backplanes, but SAS drives may not be connected to SATA backplanes.
The SAS protocol is developed and maintained by the T10 technical committee of the
International Committee for Information Technology Standards(INCITS) and promoted by the SCSI Trade Association(SCSITA).
A typical Serial Attached SCSI system consists of the following basic components:
# An Initiator is a device that originates device service and task management requests to be processed by a target device and receives responses for the same requests from other target devices. Initiators may be provided as an on-board component on the motherboard (as is the case with many server-oriented motherboards) or as an add-on
host bus adapter.
# A Target is a device containing logical units and target ports that receives device service and task management requests for processing and sends responses for the same requests to initiator devices. A target device could be a
hard diskor a disk arraysystem.
# A Service Delivery Subsystem is the part of an I/O system that transmits information between an initiator and a target. Typically cables connecting an initiator and target with or without expanders and backplanes constitute a service delivery subsystem.
# Expanders are devices that are part of a service delivery subsystem and facilitate communication between SAS devices. It facilitates connection of multiple SAS End devices to a single initiator port.
AS Domain & WWN (World Wide Name)
A "SAS Domain" is an I/O system consisting of a set of SAS devices that communicate with one another by means of a service delivery subsystem. Each SAS device in a SAS domain has a globally unique identifier assigned by the device manufacturer (similar to an
Ethernetdevice's MAC address) called a World Wide Name(aka SAS address). The WWN uniquely identifies the device in the SAS domain just as a SCSI ID identifies a device in a parallel SCSI bus. A SAS domain may contain up to a total of 16,256 devices.
AS (Serial Attached SCSI) vs parallel SCSI
* The SAS bus is
point-to-pointwhile the SCSI bus is multidrop. Each SAS device is connected by a dedicated link to the initiator, unless an expander is used. If one initiator is connected to one target, there is no opportunity for contention; with parallel SCSI, even this situation could cause contention.
* SAS has no termination issues and does not require terminator packs like parallel SCSI.
* SAS eliminates
* SAS supports up to 16,384 devices through the use of expanders while Parallel SCSI is limited to 8 or 16 devices on a single channel.
* SAS supports a higher transfer speed (1.5 OR 3.0
Gbit/s) than most parallel SCSI standards. The speed is realized on each initiator-target connection, hence higher throughput whereas in parallel SCSI the speed is shared across the entire multidropbus.
* SAS controllers are required by the standard to support SATA devices.
* Both SAS and parallel SCSI use the
AS vs SATA
* SATA devices are uniquely identified by their port number connected to the
Host bus adapterwhile SAS devices are uniquely identified by their World Wide Name(WWN).
* Most SAS drives provide
Tagged Command Queuing, while most newer SATA drives provide Native Command Queuing, each of which has its pros and cons.
* SATA follows the ATA command set and thus only supports hard drives and CD/DVD drives. In theory, SAS also supports numerous other devices including scanners and printers. However, this advantage could also be moot, as most such devices have also found alternative paths via such buses as USB,
IEEE 1394(FireWire), and Ethernet.
* SAS hardware allows
multipath I/Oto devices while SATA (prior to SATA II) does not. Per specification, SATA II makes use of port multipliers to achieve port expansion. Some port multiplier manufacturers have implemented multipath I/O leveraging port multiplier hardware.
* SATA is marketed as a general-purpose successor to
Parallel ATAand is now common in the consumer market, while the more expensive SAS is marketed for critical server applications.
* SAS error recovery and reporting utilize SCSI commands which have more functionality than the ATA SMART commands used by SATA drives.
* SAS uses higher signaling voltages (800-1600 mV TX, 275-1600 mV RX) than SATA (400-600 mV TX, 325-600 mV RX). When SAS is mixed with SATA, the SAS drives run at SATA-voltages. One reason for this higher voltage is so SAS may be used in server
* Because of its higher signaling voltages, SAS can use cables up to 8 m (25 ft) long, SATA is limited to 1 m (3 ft).
The Serial Attached SCSI standard defines several layers (in order from highest to lowest):
Serial Attached SCSI is composed of three transport protocols:
* Serial SCSI Protocol (SSP) — Supporting SAS disk drives.
* Serial ATA Tunneling Protocol (STP) — Supporting SATA disks.
* Serial Management Protocol (SMP) — for managing SAS Expanders.
For the Link and PHY layers, SAS defines its own unique protocol.
At the physical layer, the SAS standard defines connectors and voltage levels. Although not identical, the physical characteristics of the SAS wiring and signaling are so similar to SATA that it is unlikely that one technology will be faster than the other. SAS and SATA will probably both progress at the same rate to 3.0 Gbit/s, 6.0 Gbit/s, and 12.0 Gbit/s.
SAS architecture consists of six layers:
**Defines electrical and physical characteristics.
**Differential signaling transmission.
**Three connector types:
***SFF 8482 – SATA compatible
***SFF 8484 – up to four devices
***SFF 8470 – external connector (
InfiniBandconnector), up to four devices
**Defines the signaling protocols.
**Three protocol types: SSP,STP,SMP
**Handles the connections and transmits the data.
**Association of PHYs and SAS directions connected with other PHYs.
**Selects the PHY to transmit.
**Opens and closes connections.
**Supports three transport protocols:
***Serial SCSI Protocol (SSP): supports SAS drive devices.
***Serial ATA Tunneling Protocol (STP): supports SATA drives devices
***Serial Management Protocol (SMP): SAS Expanders controller
An initiator may be directly connected to a target via one or more
PHYs (such a connection is called a port whether it uses one or more PHYs, although the term "wide port" is sometimes used for a multi-PHY connection).
A Serial Attached SCSI Expander (SAS Expander) is a component used to facilitate communication between large numbers of SAS devices. Expanders contain two or more external expander ports. Each expander device contains at least one
SAS Management Protocoltarget port for management and may contain SAS devices itself. For example, an expander may include a Serial SCSI Protocoltarget port for access to a peripheral device. An expander is "not necessary" to interface an SAS initiator and target but, if connected, helps a single initiator to communicate with more SAS/SATA targets. A useful analogy: an expander can be considered akin to a network hubin a network which allows multiple systems to be connected using a single switch port.
There are two different types of expander: Edge Expanders and Fanout Expanders.
*An edge expander allows for communication with up to 128 SAS addresses, allowing the SAS initiator to communicate with these additional devices. Edge expanders are the ones which can do direct table routing and subtractive routing. (A brief discussion of these routing mechanisms is below). Without a fanout expander, you can use at most two edge expanders in your delivery subsystem (because you will connect the subtractive routing port of those edge expanders together, and you can't connect any more expanders). To solve this bottleneck, you would use fanout expanders.
*A fanout expander can connect up to 128 sets of edge expanders, known as an edge expander device set, allowing for even more SAS devices to be addressed. The subtractive routing port of each edge expanders will be connected to the phys of fanout expander. A fanout expander can not do subtractive routing, it can only forward subtractive routing requests to the connected edge expanders.
Direct routing allows a device to identify devices directly connected to it. Table routing is for identifying devices connected to the expanders connected to a device's own PHY. Subtractive routing is used when you are not able to find the devices in the sub-branch you belong to. This will pass the request to a different branch altogether.
Expanders exist to allow more complex interconnect topologies. Expanders assist in link-switching (as opposed to packet-switching) end devices (initiators or targets). They may locate an end device either directly (when the end device is connected to it), via a routing table (a mapping of end device IDs and the expander the link should be switched to 'downstream' to route towards that ID), or when those methods fail, via subtractive routing: the link is routed to a single expander connected to a subtractive routing port. If there is no expander connected to a subtractive port, the end device cannot be reached.
Expanders with no PHYs configured as subtractive act as
fanout expandersand can connect to any number of other expanders. Expanders with subtractive PHYs may only connect to two other expanders at a maximum, and in that case they must connect to one expander via a subtractive port and the other via a non-subtractive port.
There exists one root (most 'upstream') node in a
SAS domain. This node is the expander which is not connected to another expander via a subtractive port. Therefore, if a fanout expander exists in the configuration, it must be the domain's root node. The root node knows about all end devices connected to the domain.
The SAS connector is much smaller than traditional parallel
SCSI connectors allowing for the small convert|2.5|in|mm|sing=on drives. SAS supports point data transfer speeds up to 3 Gbit/s, but is expected to reach 12 Gbit/s by the year 2012.update after|2012|1|1
The physical SAS connector is available in several different variants:
List of device bandwidths
* [http://www.t10.org T10 committee]
* [http://www.scsita.org/ SCSI Trade Association]
*PDFlink| [http://www.t10.org/ftp/t10/drafts/sas2/sas2r14.pdf Current draft revision of SAS 2 from T10] |6.83 MB
Wikimedia Foundation. 2010.