Tonya Comer, Product Marketing Manager
Serial Attached SCSI (SAS) incorporates differential signaling, which reduces the effects of capacitance, inductance, and noise experienced by parallel SCSI at higher speeds. SAS links are full duplex (Figure 1); they send and receive information simultaneously, thereby reducing a major source of latency inherent in parallel SCSI. Unlike traditional parallel SCSI that shares the bandwidth of one bus with many devices, SAS is a point-to-point technology that provides maximum bandwidth to each device, greatly improving scalability and performance. All end devices (initiators and targets) have a connection point called a port. Expanders and HBAs have multiple ports. A port can contain one or more transceiver mechanisms, or phys. A narrow port has only one phy, while a wide port has more than one phy.
The speed of the first-generation SAS (SAS-1) link is 3Gb/s. The SAS interface allows for combining multiple links to create 2x, 3x, or 4x connections for scalable bandwidth.
The second-generation SAS (SAS-2) link speed doubles the transfer rate to *6Gb/s (Figure 1). SAS-2 eliminates the distinction between fanout and edge expanders by replacing them with self-configuring expanders. SAS-2 enables zoning for enhanced resource deployment flexibility, security, and data traffic management. SAS-2 is also backward compatible with SAS-1.
*Note: the STA brand name given to the SAS-2 technology generation is 6Gb/s SAS.
The number of devices (initiators, targets, expanders, and/or virtual devices) allowed in a given domain is limited only by the size of the expander route tables. Managing such a large number of devices can be very complicated. Therefore, zoning was introduced into the SAS-2 standard for efficiency (traffic management) and security. SAS-2 allows large physical topologies to be broken into logical groups which allow access within and between zone groups being controlled. A group of zoning-enabled expanders that cooperate to control access between phys is known as a zoned portion of a service delivery system (ZPSDS).
There can be 128 or 256 zone groups numbered from 0 to 127 or 0 to 255, respectively. Zone groups 0 through 8 are pre-defined and cannot be changed by the user. Devices in zone group 0 can only access devices in zone group 1, while devices in zone group 1 are allowed access to all zone groups. For example, a system administrator can use zone group 0 for a new (unassigned) device that is added to a ZPSDS. At the same time, the administrator can use zone group 1 for topology discovery and zone management.
Zoning is controlled through permission tables in SAS expanders. This means that an end device does not require any special features to operate within a zoned SAS domain, which makes legacy SAS and SATA devices compatible. An end device in a zone can only “see” other end devices in the domain as permitted by the zoning expander(s). Figure 2 shows a SAS domain with a ZPSDS containing three zoning expanders in addition to one expander device without zoning enabled.
The SAS-2 standard enables port-based zoning, a secure zoning method that uses the unique ID number of each expander phy. In port-based zoning, each port of a zoning expander is assigned to a zone group, and any device attached to one of the ports becomes part of that respective zone group. All devices within a zone group can interact with each other by default. The permission table in the expander controls access between devices in different zone groups. If an attached device changes, the expander may be configured to set the zone group to 0 (no access), which allows an address-resolved, like policy to be implemented. For example, if a particular SAS device address needs to have certain permissions and the device is moved to a different expander in the fabric, then the zone manager can reprogram the zone group at the new location. Port-based zoning is ideal for small topologies, server blade enclosures, and clustering applications.
A zone manager is responsible for configuring each zone. As shown in Figure 3 (top), the zone manager can control a zone by using an end device that has a SAS port connected to one of the zoning expanders. The zone manager can also control a zone through a sideband interface (e.g., Ethernet) on one or more zoning expanders (Figure 3 bottom).
The zone manager assigns zone groups to all zoning expander phys, and it assigns all phys in a wide port to the same zone group. The zone manager stores the zoning assignment of each expander
phy along with SAS addresses in the zoning expander’s route table.
Inside a particular ZPSDS, the zone manager assigns each zoning expander phy attached to another zoning expander phy to zone group 1. Basically, phys in zone group 1 have access to phys in all zone groups. The zone manager assigns each zoning expander phy on the boundary of the ZPSDS to a zone group other than group 1. The ZPSDS boundary is defined by designating expander phys as “not trusted” when connected to end devices outside the zone.
Each zoning expander device also contains a zone permission table that controls whether a connection is allowed between phys in different zone groups.
Each SAS device (initiator, target, or expander) may support one or more SAS communication speeds. If any two linked devices support multiple speeds, the highest speed will be used if performance is critical or a slower speed may be used if reliability is more important. During this speed negotiation process, linked SAS devices determine their mutually supported SAS speed(s), and other speed-related options such as, transmission amplitude, slew rate, de-emphasis, and spread spectrum clocking.
After the speed negotiation process is complete, the SAS-2 standard provides for a time interval, or training window, during which the linked devices exchange predefined signals to test the link using the selected speed(s) and speed-related options.
The evolution of SAS technology is leading to the development of storage products with new technologies such as SAS zoning. Storage professionals will need to stay abreast of changes in the SAS standard and how these changes might affect storage options.