SAS and Serial ATA Tunneling Protocol (STP)
 


By Michael Micheletti, Product Manager, LeCroy Corp.

Serial Attached SCSI (SAS) is a storage interface developed to meet the needs of enterprise-class storage applications. Leading solution vendors are rapidly adopting this new standard because it offers superior performance while preserving compatibility with legacy SCSI applications. Central to the SAS value proposition is its ability to scale storage systems beyond the limits of today’s parallel SCSI by using a switching technology called expanders. Designed to provide a fan-out architecture for SAS, expanders allow SAS initiators to connect up to 16,000 physical links per domain. Yet this is only one aspect of SAS' scalability as an enterprise-class storage interface.

Another important advantage of SAS is interoperability with Serial ATA (SATA) disk drives. The SAS specification defines an electrical and physical connection interface within the backplane that is form-factor compatible with SATA. This feature is ushering in a new approach to storage system design, enabling manufacturers, integrators and users to populate a single storage enclosure with either SAS or SATA disks. Enterprise-class storage systems can be equipped with high performance SAS drives for mission-critical applications. The same storage enclosure can also be introduced with lower cost SATA drives to address segments of the market that value capacity over performance.

  • Product segmentation–a single storage platform can deliver performance, capacity or a combination
  • Lower design costs–a single backplane design can be leveraged across multiple market segments
  • Supply-chain management–reduced inventory cost throughout the distribution channel
  • Lower procurement costs–higher volumes drive lower prices for cabling and connectors
  • Flexible upgrade options–users can easily reconfigure existing storage resources for performance or capacity applications

 

Serial Tunneling Protocol (STP) is the foundation for supporting SATA devices within SAS storage enclosure subsystems. Host Bus Adapters (HBAs) and expanders that support STP/SATA bridging exhibit several unique capabilities, including the ability to:

  • Establish connections between SATA target devices and the SAS domain
  • Respond to SATA reset sequences
  • Send and receive SATA Flow Control primitives including R_RDY & HOLD
  • Accept SATA Frame Information Sequences (FIS)

Expanders attach directly to SATA drives and tunnel SATA frames over SAS for transport to the SAS initiator. Once an STP connection is open, the SATA host capability (within the SAS HBA) and the SATA device communicate as if they were directly attached on a physical link. A bilingual analyzer has already been designed to support SAS, STP and pure SATA protocol traffic. In addition to showing SSP frames, it clearly communicates STP transactions including OPEN address frames initiated by either the host or STP target port.

STP OPEN is transmitted by the initiator port attached to channel 1. An expander port (acting as an STP target ) responds with Arbitration in Progress (AIP). An STP connection is established when Open Accept is transmitted and the Initiator port sends a Register Host-to-Device FIS (READ DMA EXT) to the STP target port.


Another key differentiator for enterprise-class storage systems has been fault tolerance within the storage architecture via support of redundancy for all components in the array. The SAS protocol specification, like Fibre Channel, has native support for dual-port drives. In addition, SAS also supports multi-initiator access. These capabilities provide redundant pathways within the SAS subsystem, and are an important element in making SAS robust enough to span a broad range of applications.

By comparison, the ATA protocol is not capable of multi-initiator access or true dual-port capability. SATA devices have no notion of multiple SATA hosts. SATA devices maintain only a single ATA task file register image. Within a SAS domain, it’s possible that more than one STP initiator port might be vying for access to the same SATA device. This can impact performance or create potential deadlock conditions.

SAS initiators rely on SL_CC (connection control) link layer state machine as the primary mechanism for managing STP connections. In the example above, an STP target port establishes a connection with an STP initiator port by responding to STP_Open with Open_Accept. The SL_CC1 arb select state machine transitions to SL_CC3 connected by transmitting connection open confirmation. Once the connection is open, the STP target port (in the expander) rejects all subsequent connection requests from STP initiator ports by sending an OPEN_REJECT (STP Resources Busy) message to the SL transmitter.

Affiliations are used as an added safeguard to prevent device contention, in particular when systems (hosts) are added to a configuration (ie: during PHY resets). Affiliations use register settings to provide exclusive access to a SATA or STP device for the duration of a command to ensure coherent access to the SATA device. The AFFILIATION VALID bit is set to “1” when a valid STP INITIATOR SAS ADDRESS initiates a transfer. This serves to lock communication to the STP target until the connection is closed with CLOSE (CLEAR AFFILIATION) or PHY reset is transmitted.

This graceful handling of multiple-initiator environments ensures SAS and SATA devices will interoperate seamlessly within an STP-enabled storage enclosure. Together, SAS and SATA technologies will provide better flexibility and lower overall solution cost for high volume servers and storage subsystems.

www.lecroy.com
www.scsita.org