Serial attached SCSI
http://en.wikipedia.org/wiki/Serial_attached_SCSI
Serial attached SCSI
Serial attached SCSI | |
SAS connector
|
|
Width in bits | 1 |
---|---|
Number of devices | 65,535 |
Speed | 3.0 Gbit/s at introduction, 6.0 Gbit/s available February 2009, 12.0 Gbit/s in development |
Style | Serial |
Serial Attached SCSI (SAS) is a point-to-point serial protocol that moves data to and from computer storage devices such as hard drives and tape drives. SAS replaces the older Parallel SCSI (Small Computer System Interface, pronounced "scuzzy"), bus technology that first appeared in the mid-1980s. SAS, like its predecessor, uses the standard SCSI command set. SAS offers backward compatibility with second-generation SATA drives. SATA 3 or 6 Gbit/s drives may be connected to SAS backplanes, but SAS drives cannot connect to SATA backplanes.[1]
The T10 technical committee of the International Committee for Information Technology Standards (INCITS) develops and maintains the SAS protocol; the SCSI Trade Association (SCSITA) promotes the technology.
Contents
[hide]
Introduction[edit]
A typical Serial Attached SCSI system consists of the following basic components:
- An Initiator: a device that originates device-service and task-management requests for processing 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: 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 disk or a disk array system.
- A Service Delivery Subsystem: 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 andbackplanes constitute a service delivery subsystem.
- Expanders: devices that form part of a service delivery subsystem and facilitate communication between SAS devices. Expanders facilitate the connection of multiple SAS End devices to a single initiator port.
Identification and addressing[edit]
A SAS Domain is the SAS version of a SCSI domain—it consists of a set of SAS devices that communicate with one another by means of a service delivery subsystem. Each SAS port in a SAS domain has a SCSI port identifier that identifies the port uniquely within the SAS domain. It is assigned by the device manufacturer, like an Ethernet device's MAC address, and is typically world-wide unique as well. SAS devices use these port identifiers to address communications to each other.
In addition, every SAS device has a SCSI device name, which identifies the SAS device uniquely in the world. One doesn't often see these device names because the port identifiers tend to identify the device sufficiently.
For comparison, in parallel SCSI, the SCSI ID is the port identifier and device name. In Fibre Channel, the port identifier is a WWPN and the device name is a WWNN.
In SAS, both SCSI port identifiers and SCSI device names take the form of a SAS address, which is a 64 bit value, normally in the NAA IEEE Registered format. People sometimes refer to a SCSI port identifier as the SAS address of a device, out of confusion. People sometimes call a SAS address a World Wide Name or WWN, because it is essentially the same thing as a WWN in Fibre Channel. For a SAS expander device, the SCSI port identifier and SCSI device name are the same SAS address.
Comparison with parallel SCSI[edit]
This section does not cite any references or sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (July 2009) |
- The SAS bus operates point-to-point while 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 clock skew.
- SAS allows up to 65,535 devices through the use of expanders, while Parallel SCSI has a limit of 8 or 16 devices on a single channel.
- SAS allows a higher transfer speed (3 or 6 Gbit/s) than most parallel SCSI standards. SAS achieves these speeds on each initiator-target connection, hence getting higher throughput, whereas parallel SCSI shares the speed across the entire multidrop bus.
- SAS devices feature dual ports, allowing for redundant backplanes/multipath I/O.
- SAS controllers may connect to SATA devices, either directly connected using native SATA protocol or through SAS expanders using SATA Tunneled Protocol (STP).
- Both SAS and parallel SCSI use the SCSI command-set.
Comparison with SATA[edit]
There is little physical difference between SAS and SATA.[2]
- Systems identify SATA devices by their port number connected to the host bus adapter or by their Universally unique identifier (UUID), while SAS devices are uniquely identified by their World Wide Name(WWN).
- SAS protocol provides for multiple initiators in a SAS domain, while SATA has no analogous provision.[2]
- Most SAS drives provide tagged command queuing, while most newer SATA drives provide native command queuing,[2] each of which has its pros and cons.
- SATA uses a command set that is based on the parallel ATA command set and then extended beyond that set to include features like native command queuing, hot-plugging, and TRIM. SAS uses the SCSI command set, which includes a wider range of features like error recovery, reservations and block reclamation. Basic ATA has commands only for direct-access storage. However SCSI commands may be tunneled through ATAPI[2] for devices such as CD/DVD drives.
- SAS hardware allows multipath I/O to devices while SATA (prior to SATA 3Gb/s) does not.[2] Per specification, SATA 3Gb/s makes use of port multipliers to achieve port expansion. Some port multiplier manufacturers have implemented multipath I/O using port multiplier hardware.
- SATA is marketed as a general-purpose successor to parallel ATA and has become common in the consumer market, whereas the more-expensive SAS targets critical server applications.
- SAS error-recovery and error-reporting uses SCSI commands, which have more functionality than the ATA SMART commands used by SATA drives.[2]
- SAS uses higher signaling voltages (800–1600 mV TX, 275–1600 mV RX) than SATA (400–600 mV TX, 325–600 mV RX). The higher voltage offers (among other features) the ability to use SAS in serverbackplanes.[2]
- Because of its higher signaling voltages, SAS can use cables up to 10 m (33 ft) long, whereas SATA has a cable-length limit of 1 m (3.3 ft) or 2 m (6.6 ft) for eSATA.[2]
Characteristics[edit]
Technical details[edit]
The Serial Attached SCSI standard defines several layers (in order from highest to lowest):
- Application
- Transport
- Port
- Link
- PHY
- Physical
Serial Attached SCSI comprises three transport protocols:
- Serial SCSI Protocol (SSP) — for command-level communication with SCSI devices.
- Serial ATA Tunneling Protocol (STP) — for command-level communication with SATA devices.
- Serial Management Protocol (SMP) — for managing the SAS fabric.
For the Link and PHY layers, SAS defines its own unique protocol.
At the physical layer, the SAS standard defines connectors and voltage levels. The physical characteristics of the SAS wiring and signaling are compatible with and have loosely tracked that of SATA up to the present 6 Gbit/s rate, although SAS defines more rigorous physical signaling specifications as well as a wider allowable differential voltage swing intended to allow longer cabling. While SAS-1.0/SAS-1.1 adopted the physical signaling characteristics of SATA at the 1.5 Gbit/s and 3 Gbit/s rates, SAS-2.0 development of a 6 Gbit/s physical rate led the development of an equivalent SATA speed. According to the SCSI Trade Association, 12 Gbit/s is slated to follow 6 Gbit/s in a 2013 SAS-3.0 specification.[3][4][5] Additionally, SCSI Express takes advantage of PCI Express infrastructure to directly connect SCSI devices over the more universal interface.[6]
Architecture[edit]
Architecture of SAS layers
SAS architecture consists of six layers:
- Physical layer:
- 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 (InfiniBand connector), up to four devices
- PHY Layer:
- 8b/10b data encoding
- Link initialization, speed negotiation and reset sequences
- Link capabilities negotiation (SAS-2)
- Link layer:
- Insertion and deletion of primitives for clock-speed disparity matching
- Primitive encoding
- Data scrambling for reduced EMI
- Establish and tear down native connections between SAS targets and initiators
- Establish and tear down tunneled connections between SAS initiators and SATA targets connected to SAS expanders
- Power management (proposed for SAS-2.1)
- Port layer:
- Combining multiple PHYs with the same addresses into wide ports
- Transport layer:
- Contains three transport protocols:
- Serial SCSI Protocol (SSP): for command-level communication with SCSI devices
- Serial ATA Tunneled Protocol (STP): for command-level communication with SATA devices
- Serial Management Protocol (SMP): for managing the SAS fabric
- Contains three transport protocols:
- Application layer
Topology[edit]
An initiator may connect directly 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).
SAS expanders[edit]
The components known as Serial Attached SCSI Expanders (SAS Expanders) 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 Protocol target port for management and may contain SAS devices itself. For example, an expander may include a Serial SCSI Protocol target port for access to a peripheral device. An expander is not necessary to interface a SAS initiator and target but allows a single initiator to communicate with more SAS/SATA targets. A useful analogy: one can regard an expander as akin to a network switch in a network, which connects multiple systems using a single switch port.
SAS 1 defined two different types of expander; however, the SAS-2.0 standard has dropped the distinction between the two, as it created unnecessary topological limitations with no realized benefit:
- An edge expander allows for communication with up to 255 SAS addresses, allowing the SAS initiator to communicate with these additional devices. Edge expanders can do direct table routing and subtractive routing. (For a brief discussion of these routing mechanisms, see below). Without a fanout expander, you can use at most two edge expanders in a delivery subsystem (because you connect the subtractive routing port of those edge expanders together, and you can't connect any more expanders). Fanout expanders solve this bottleneck.
- A fanout expander can connect up to 255 sets of edge expanders, known as an edge expander device set, letting even more SAS devices be addressed. The subtractive routing port of each edge expanders connects to the phys of fanout expander. A fanout expander cannot 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 identifies 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 passes 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 expanders and 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.
SAS-1.1 topologies built with expanders generally contain one root node in a SAS domain with the one exception case being topologies that contain two expanders connected via a subtractive-to-subtractive port. If it exists, the root 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 contains routes for all end devices connected to the domain. Note that with the advent in SAS-2.0 of table-to-table routing and new rules for end-to-end zoning, more complex topologies built upon SAS-2.0 rules do not contain a single root node.
Connectors[edit]
The SAS connector is much smaller than traditional parallel SCSI connectors, allowing for the small 2.5-inch (64 mm) drives. SAS currently provides for point data transfer speeds up to 6 Gbit/s, but is expected to reach 12 Gbit/s by the year 2012.[dated info]
The physical SAS connector comes in several different variants:[7]
Image | Codename | Other names | Ext./int. | No of pins | No of devices | Comment |
---|---|---|---|---|---|---|
SFF-8482 | Internal | 29 | 1 | This form factor is designed for compatibility with SATA. The socket is compatible with SATA drives; however, the SATA socket is not compatible with SFF-8482 (SAS) drives. The pictured connector is a drive-side connector. | ||
SFF-8484 | Internal | 32 (19) | 4 (2) | High-density internal connector, 2 and 4 lane versions are defined by the SFF standard. | ||
SFF-8485 | Defines SGPIO (extension of SFF 8484), a serial link protocol used usually for LED indicators. | |||||
SFF-8470 | InfiniBand CX4 connector, Molex LaneLink | External | 32 | 4 | High-density external connector (also used as an internal connector). | |
SFF-8086 | Internal mini-SAS, internal mSAS | Internal | 26 | 4 | This is a less common implementation of SFF-8087 than the 36-circuit version. The fewer positions is enabled by it not supporting sidebands. | |
SFF-8087 | Internal mini-SAS, internal mSAS, internal iSAS, internal iPass | Internal | 36 | 4 | Unshielded 36-circuit implementation of SFF-8086. Molex iPass reduced width internal 4× connector with future 10 Gbit/s capability. | |
SFF-8088 | External mini-SAS, external mSAS, external iSAS, external iPass | External | 26 | 4 | Shielded 26-circuit implementation of SFF-8086. Molex iPass reduced width external 4× connector with future 10 Gbit/s capability. |
Nearline SAS[edit]
Nearline SAS or NL-SAS drives have a SAS interface, but head, media, and rotational speed of traditional enterprise-class SATA drives, so they cost less than other SAS drives.
They have the following benefits compared to SATA:[8]
- Dual ports allowing redundant paths
- Ability to connect a device to multiple computers
- Full SCSI command set
- Faster interface compared to SATA, up to 20%, no STP (Serial ATA Tunneling Protocol) overhead
- No need for SATA interposer cards (for high availability of SATA drives SATA interposer cards are needed)
- Larger (deeper) command queue [depth]
See also[edit]
|
|
http://baike.baidu.com/subview/325942/5754229.htm
Serial attached SCSI的更多相关文章
- sas(Serial Attached SCSI)技术详解
1.什么是SAS 即串行SCSI技术,是一种磁盘连接技术,它综合了并行SCSI和串行连接技术(FC,SSA,IEEE1394)的优势,以串行通讯协议为协议基础架构,采用SCSI-3扩展指令集,并兼容S ...
- IDE、SATA、SCSI、SAS、FC、SSD硬盘类型介绍[zz]
目前所能见到的硬盘接口类型主要有IDE.SATA.SCSI.SAS.FC等等. IDE是俗称的并口,SATA是俗称的串口,这两种硬盘是个人电脑和低端服务器常见的硬盘.SCSI是"小型计算机系 ...
- ATA/SATA/SCSI/SAS/FC总线简介
ATA/SATA/SCSI/SAS/FC 都是应用于存储领域的总线,在当今的存储系统中,普遍应用的硬盘接口主要有 SATA . SCSI . SAS 和FC , ATA 比较古老,在一些老的低端存储系 ...
- FC和SCSI
IDE(Integrated Drive Electronics)即"电子集成驱动器",它的本意是指把"硬盘控制器"与"盘体"集成在一起的硬 ...
- SCSI磁盘标准的架构与文档
来自scsi标准的官方网站http://t10.org/,具体的文档可以去浏览官方网站. (*) This chart reflects the currently approved SCSI pro ...
- SCSI接口图文详解
目前存储设备的接口有五大类:IDE.SCSI.USB,并行口,串口,其中并行口与串口的速度非常慢,不提也罢,最主要的就是IDE,usb,SCSI.IDE(Integrated Drive Electr ...
- IDE SATA SCSI iSCSI等存储硬盘对比与分析
原文地址:http://blog.csdn.net/trochiluses/article/details/21229283 IDE是并口硬盘,(5400-7200转): SATA是串口硬盘,(720 ...
- 主流磁盘接口比较(SATA/SCSI/SAS/FC)[转]
数据越来越多,用户对存储容量的要求是越来越高.作为数据存储最基本的介质——硬盘,其种类也越来越多.面对市场上纷繁复杂的硬盘,用户又该如何选择呢?本文就对SATA.FC.SAS三种硬盘进行了比较,希望能 ...
- SCSI, (P)ATA, SAS, NL-SAS and SATA, what’s the difference?
Everybody needs storage space nowadays. Whether it is used for high performance computing or simply ...
随机推荐
- Mysql 学习目录
Mysql 目录 Mysql之路[第一篇]:Mysql基础 Mysql之路[第二篇]:Mysql 常用命令 Mysql之路[第三篇]:Python对Mysql的操作 Mysql之路[第四篇]:ORM ...
- 【软考2】Java语言的基本知识汇总
导读:现在对于java这一模块,还没有相应的项目经验,只是通过各种类型的资料,对java有一个面上的了解.现在,对此做一个罗列总结,在以后的学习过程中,逐步完善! 一.语言的发展 1.1,机器语言 在 ...
- E. Lost in WHU。矩阵快速幂!
E. Lost in WHU 比赛的时候一直不知道样例怎么来的,然后和队友推了一下,然后还是没什么思路,样例手推很困难,然后我随口枚举了几个算法dp.广搜.快速幂.比赛结束问了谷队长结果真的是用快速幂 ...
- POJ-3481 Double Queue,Treap树和set花式水过!
Double Queue 本打算学二叉树,单纯的二叉树感觉也就那几种遍历了, 无意中看到了这个题,然后就 ...
- PTA 08-图8 How Long Does It Take (25分)
题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/674 5-12 How Long Does It Take (25分) Given ...
- 九度oj 题目1102:最小面积子矩阵
题目描述: 一个N*M的矩阵,找出这个矩阵中所有元素的和不小于K的面积最小的子矩阵(矩阵中元素个数为矩阵面积) 输入: 每个案例第一行三个正整数N,M<=100,表示矩阵大小,和一个整数K接下来 ...
- 刷题总结——书架(bzoj1861)
题解: Description 小T有一个很大的书柜.这个书柜的构造有些独特,即书柜里的书是从上至下堆放成一列.她用1到n的正整数给每本书都编了号. 小T在看书的时候,每次取出一本书,看完后放回书柜然 ...
- [AHOI2009]维护序列 (线段树)
题目描述 老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成. 有长为N的数列,不妨设为a1,a2,-,aN .有如下三种操作形式: (1)把数列中的一段数全部乘一个值; (2)把数列中的一 ...
- 【bzoj2393】Cirno的完美算数教室 数论容斥
Description ~Cirno发现了一种baka数,这种数呢~只含有2和⑨两种数字~~ 现在Cirno想知道~一个区间中~~有多少个数能被baka数整除~ 但是Cirno这么天才的妖精才不屑去数 ...
- ElasticSearch集群状态查看命令大全
Elasticsearch中信息很多,同时ES也有很多信息查看命令,可以帮助开发者快速查询Elasticsearch的相关信息. _cat $ curl localhost:9200/_cat =^. ...