SAS教程.docx
- 文档编号:30727873
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:11
- 大小:205.80KB
SAS教程.docx
《SAS教程.docx》由会员分享,可在线阅读,更多相关《SAS教程.docx(11页珍藏版)》请在冰豆网上搜索。
SAS教程
SAS教程
作者:
董唯元出处:
51CTO.com ( 35 ) 砖 ( 33 ) 好 评论 ( 3)条 进入论坛
更新时间:
2006-03-2814:
17
关键词:
SAS
阅读提示:
SAS(SerialAttachedSCSI)即串行SCSI技术,正逐步走入我们的视线。
按照行业预期,SAS磁盘很快将取代目前的SCSI磁盘甚至FC磁盘而成为主流磁盘类型。
可惜现在对SAS技术的讨论大多集中在应用层面,很少有具体的技术介绍。
有鉴于此,笔者搜集整理了一些资料,权做抛砖引玉吧。
【51CTO.com独家特稿】SAS(SerialAttachedSCSI)即串行SCSI技术,正逐步走入我们的视线。
按照行业预期,SAS磁盘很快将取代目前的SCSI磁盘甚至FC磁盘而成为主流磁盘类型。
可惜现在对SAS技术的讨论大多集中在应用层面,很少有具体的技术介绍。
有鉴于此,笔者搜集整理了一些资料,权做抛砖引玉吧。
什么是SAS?
简单的说,SAS是一种磁盘连接技术。
它综合了现有并行SCSI和串行连接技术(光纤通道、SSA、IEEE1394及InfiniBand等)的优势,以串行通讯为协议基础架构,采用SCSI-3扩展指令集并兼容SATA设备,是多层次的存储设备连接协议栈。
为了更好的了解SAS技术,我们先回顾一下几个相关技术的发展过程。
为了简明,这里只以表格形式体现。
首先是并行SCSI的发展过程。
名称
标准规范
出现年份
理论带宽
关键特性
SASI
1979
SCSI雏形
SCSI-1
SCSI-1
1986
~2MB/s
异步;8位
SCSI-2
SCSI-2
1989
10MB/s
同步;16位
SCSI-3
分离指令集,传输协议与物理接口脱离,成为独立标准
Fast-Wide
SPI/SIP
1992
20MB/s
Ultra
Fast-20附加标准
1995
40MB/s
Ultra2
SPI-2
1997
80MB/s
低压差分机制
Ultra3
SPI-3
1999
160MB/s
附加校验
Ultra320
SPI-4
2001
320MB/s
分包机制;QAS
正是SCSI-3指令集的出现,使得SCSI通讯出现了分层结构,并使SCSI指令通过其他物理媒介传输成为可能。
事实上,SCSI-3指令自诞生之日就被一批新技术相中,此后出现的光纤通道技术、SSA技术、IEEE1394火线技术等,均受益于这一进步。
这些串行技术虽然从名字上看与SCSI毫不相干,但其实它们都支持SCSI-3作为应用层逻辑指令。
下面是这些串行技术的简要回顾。
名称
标准规范
出现年份
理论带宽
关键特性
光纤通道
FCP
1995
100MB/s
支持光介质
SSA
SSA-S2P/TL1/PL1
1996
20MB/s
IBM独有技术
SSA
SSA-S3P/TL2/PL2
1997
40MB/s
IBM独有技术
火线(IEEE1394)
SBP-2
1998
50MB/s
光纤通道
FCP-2
2002
200MB/s
InfiniBand
SRP
2002
250MB/s
4倍速和12倍速
iSCSI
iSCSI
2003
~100MB/s
除了并行SCSI和几种应用SCSI-3指令集的串行技术,我们再简单回顾一下ATA技术的历史。
名称
标准规范
出现年份
理论带宽
关键特性
IDE
1986
未标准化
ATA
1994
PIO模式0/1/2
E-IDE
ATA-2
1996
16MB/s
PIO模式3/4,LBA
ATA-3
1997
16MB/s
S.M.A.R.T.技术
ATA/ATAPI-4
1998
33MB/s
冗余校验
UltraDMA66
ATA/ATAPI-5
2000
66MB/s
UltraDMA模式3/4
UltraDMA100
ATA/ATAPI-6
2002
100MB/s
UltraDMA模式5,48位LBA
UltraDMA133
ATA/ATAPI-7
2003
133MB/s
UltraDMA模式6
SATA
ATA/ATAPI-7
2002
150MB/s
串行ATA
SATA-II
ATA/ATAPI-8
2004
300MB/s
优化指令队列
之所以罗列出以上三个表格,是因为SAS技术正是以串行机制为基础,同时支持SCSI和SATA的协议栈。
了解以上三个方面的历史,有助于更方便的理解SAS技术的特点。
为了增强感性认识,我们先从外观入手,慢慢走进SAS技术内部。
上面这张照片就是SAS外部接口的样子。
使用过InfiniBand交换设备的朋友一定觉得眼熟,没错,SAS外部接口和线缆就是借用了InfiniBand线缆的设计。
不要小看这个只有并行SCSI一半大的接口。
这种端口名叫“四路宽端口”,以目前3Gb的SAS标准,它可以达到12Gb的带宽,也就是4x3GbSAS通道。
SAS技术与光纤通道一样,都采用8位到10位的编码机制,12Gb的物理层带宽换算到应用层就是1.2GB/s,这一根线就比目前主流的64位133MHzPCI-X总线还要快。
SAS磁盘上的端口也与并行SCSI有很大区别,倒是跟SATA磁盘的端口外观非常像。
接脚最多的一组是电源接口,接脚较少的一组是SAS磁盘主端口,位置都与SATA磁盘电源和通讯端口完全一致。
SAS磁盘与SATA磁盘接口的唯一区别是SAS磁盘还有第二个冗余端口,而SATA磁盘则只有一个端口。
说到这里,细心的读者会发现一个问题。
既然SAS磁盘与SATA磁盘的端口数量都不一致,SAS背板又如何完整的兼容SATA磁盘呢?
不错,如果将SATA磁盘直接插入SAS背板,那么背板上的冗余端口将会悬空,也就是说SATA磁盘只连接在一个控制器上。
这样虽然阵列控制器或主机可以使用这些SATA磁盘,但从结构上将无法实现冗余
。
为此,一些提供SAS磁盘阵列的厂商,在兼容SATA磁盘时都在SATA磁盘托架上附加一个小小的电路板,我们姑且称之为“端口选择器”。
其作用就是将SATA磁盘上的单端口与两路SAS同时连接,从而保证前端控制器或主机故障切换时,SATA磁盘仍然能保持连接。
当然物理连接的一致,只是SAS兼容SATA的必要条件。
实际上,在整个SAS协议栈中从物理层到应用层,都贯穿着一套用来兼容SATA的协议。
这套协议被称为STP(SerialATATunnelingProtocol)即“SATA隧道协议”。
从这个命名就可以看出,SAS兼容SATA的方式其实就是在从磁盘端到主机端整条链路上,为SATA磁盘特地开辟出一条隧道。
除了端口设计,SAS和SATA磁盘的供电接口也可能是读者的疑问。
如果SAS和SATA接口中已经包含有供电接脚,传统的四针式电源是否还有用呢?
对磁盘阵列来说,答案显然是没有。
外置磁盘阵列早在SCSI和IDE年代,就已经不使用四针式电源接口了。
但是服务器内部的非热插拔磁盘一般都采用这种接口,而且目前市面上一些SATA磁盘也带有这种电源接口。
这是因为SATA1.0标准刚刚颁布的时候,还没有完全取代四针电源。
无法摆脱四针式电源,就无法直接支持热插拔,因此SATA1.0在当时被定义为仅主机内部连接的协议,不支持外部连接。
不过这些都已经是历史,现在的SAS和SATAII版本中,四针电源完全没有存在的必要。
看过SAS设备外观,我们再看看SAS内部的一些工作原理。
首先,让我们先搞清楚三个名词——“设备”(Device)、“端口”(Port)和“phy”。
“设备”就是指SAS连接末端的物理设备,可以是磁盘,也可以是主机里的SAS适配器,但不是Expander设备。
暂时不晓得Expander为何物的读者不要着急,后面会介绍到。
“端口”是半物理半逻辑的概念。
一方面,每个端口都对应一条实实在在的物理连接线;另一方面,每个SAS端口都有一个唯一的64位地址。
这个地址的格式跟光纤通道里的WWN(严格的说,应该是WWPN,WWNN对应的更像SAS“设备”名)格式完全相同,由24位公司标志和40位厂商自定义字段构成。
“phy”虽然是个逻辑概念,但功能上很像光纤通道中的SFP。
它对应的是一组SAS协议收发单元,由一个发送器和一个接收器组成。
每个phy与远端的另外一个phy连接,构成一发一收两条链路。
SAS支持全双工,就是说每个phy在以3Gbps发送的同时,还可以接收3Gbps的流量。
前面只是简单的罗列出设备、端口和phy各自的大致含义,很多问题还需要进一步说明一下。
前面我们已经提到,每颗SAS磁盘可以提供两个SAS连接。
那么这两路SAS连接是同一个端口的两个phy,还是两个独立的窄端口呢?
答案是后者。
每颗SAS磁盘上有两个phy,这两个phy相互独立,被两个不同的端口使用。
再明确点说,每颗SAS磁盘有两个地址,而不是一个。
记住!
每个地址,就对应一个端口。
地址和端口的对应关系,还能帮我们辨清SAS有效连接。
Phy之间连通,并不等于端口之间能够正常通讯。
只有当一个端口中所有phy都与对方端口中的phy连通后,两个宽端口的通讯才能正常进行。
目前宽端口中最常见的,就是前面提到过的四路宽端口,不过一些SAS适配器厂商正在设计八路宽端口,未来可能会出现单根线缆2.4GBps甚至4.8GBps的SAS连接。
说到SAS适配器,还有个有趣的问题。
目前主流SAS适配器一般支持8个phy,那么大家猜猜一般适配器支持多少端口地址呢?
答案是可以动态设定。
当适配器用来连接外部SAS设备时,需要用外部宽端口,这时适配器将8个phy划分成两个宽端口,支持两个端口地址。
而当适配器连接内部SAS磁盘时,每个phy各自属于自己的端口,适配器将支持8个端口地址。
至此,我们虽然明确了一些关于SAS的技术概念,但是还不能说对SAS技术有所了解。
SAS技术的重点部分——Expander及其工作原理,才是熟悉SAS技术的关键。
SAS的连接模式与光纤通道的Fabric交换在很多方面十分相似。
每一个SASExpander就像一台光纤通道交换机,整个交换结构被称为“域”(Domain),其意义跟光纤通道技术中的“域”几乎完全一样。
在光纤通道Fabric交换结构中,每个域有一个主成员,负责维护整个域的路由信息。
在SAS域中,起中心交换作用的Expander叫做“扇出Expander”(FanoutExpander)。
SAS域中的“扇出Expander”既可以直接连接终端设备,也能连接其它“边缘Expander”(EdgeExpander)。
唯一与光纤通道Fabric不同的是,SAS域中可以没有“扇出Expander”,而光纤通道Fabric域则不能没有主成员。
没有“扇出Expander”的SAS域,最多只可以有两个“边缘Expander”。
理论上,每个“边缘Expander”可以支持128个端口,每个SAS域可以有128个“边缘Expander”,这样每个SAS域中最多可以有128x128=16384个端口。
当然,这并不是说每个SAS域可以连接16384个磁盘和SAS适配器,因为“扇出Expander”与“边缘Expander”相连接时,会占用一部分端口。
如果128个“边缘Expander”全部连接到“扇出Expander”,内部互联至少要占用256个端口。
也就是说,一个SAS域理论上可以连接16384–256=16128个终端SAS设备。
对比光纤环路126个设备的上限,16128这个数字仍然是非常可观。
一些接触过SAS存储产品的读者,可能此时会心存疑惑。
为什么SAS单域就可以支持如此众多设备,但实际应用中却经常看到多域模式的产品呢?
这其实跟目前SAS芯片的制造工艺有关。
如果想制造出一个“扇出Expander”来支持128个“边缘Expander”的连接,那这款“扇出Expander”至少要支持128个phy(每端口至少一个phy)。
而Expander之间的互联一般应采用至少四路宽端口,那就需要中心的“扇出Expander”支持4x128=512个phy(每端口四个phy)。
而现在的实际情况是LSI公司的首款SAS芯片只能支持12个phy,刚刚好是个零头。
虽然SAS技术支持多个Expander芯片组成一个“Expander组”(ExpanderSet)来模拟一个Expander,但过多的芯片无疑会在制造工艺和成本方面带来麻烦。
正是基于目前SAS芯片工艺水平,一些磁盘阵列厂商在设计阵列扩展时,大多采用多域结构。
虽然在软件设计上费力多些,但却可以避开单芯片phy数量有限的问题。
所谓多域模式,在大多数情况下,其实也只不过是两个域而已,即每个阵列控制器各自属于自己的SAS域。
因为目前的SAS交换技术还不支持域之间的路由,所以要想保证每个阵列控制器都能访问到所有磁盘,最多只能引入两个SAS域。
SAS技术借鉴了很多光纤通道技术的工作原理,对比光纤通道技术可以帮助我们更好的了解SAS技术优势。
前面已经提到,SAS端口地址与光纤通道中的WWN格式几乎完全一样,但其使用方式还是略有区别。
SAS域中,端口地址直接作为交换路由表的内容,没有任何转换过程,而光纤通道的Fabric交换中并不直接采用WWN地址,而是要经过一个转换过程,由名字服务器对每个设备二次分发路由地址。
光纤通道之所以这样设计原因很明显,因为在Fabric交换中要支持环路设备,所以不得不兼顾各种编址。
实际上在光纤通道交换域中,每个设备要经过三层登陆(FLOGI、PLOGI/LOGO、PRLI/PRLO)才能接入域中。
这颇像一个臃肿的官僚机构,虽然体系庞大,却效率低下。
而SAS技术舍弃了光纤通道中的仲裁环机制,从而大大简化了交换与地址的关系。
在SAS域中,再也不需要关心那些恼人的繁文缛节了。
由于交换模式的简化,SAS设备与Expander之间不需要通过复杂的磋商,简单的握手之后就开始正常工作了,这就需要双方事前就很多方面必须达成一致共识。
“服务级别”就是共识之一。
我们知道光纤通道可以支持五种不同级别的交换服务,分别是Class1、2、3、4和6。
这其中最常用到的是Class3,即无确认的帧交换。
这种模式好比不负责任的邮递员,反正有收信人和发信人互相确认,他自己根本不操心包裹是否完好。
由于光纤通道技术中没有phy这个层次的设计,Class3是效率最高的工作模式。
而SAS则不然,借由phy的底层独占式互联机制,SAS中的服务级别更像Class1模式,即虚拟电路全带宽连接。
这种模式最能够充分保证每一组SAS设备之间的通讯带宽,同时数据的误传输概率也降到最低。
由于光纤通道技术中层次臃肿的通讯机制,主机端光纤适配器很难直接察觉到磁盘端设备状态的变化。
就好比一个高高在上的官僚,很难知道底层普通市民的住址变迁。
为此,光纤通道交换设计了“注册状态变更通知”(RSCN,RegisteredStateChangeNotification)机制。
就是让每个普通市民在搬家之后,都要主动向政府汇报新地址,政府再将地址簿汇总更新,送交各位领导案头,而官僚们就依据案头的记录信息定位每个市民。
遗憾的是,这个RSCN会打断领导们正在进行的沟通,迫使领导们的工作重新开始,因此严重影响整个政府的办公效率。
而在SAS域中,由于没有了复杂的沟通层次,每位领导都可以直接掌握市民的住址信息,办公效率自然就提高许多。
SAS与光纤通道相比,最明显的技术优势在于连接带宽。
简单从数字上看,3Gb的SAS似乎不及4Gb的光纤通道,但光纤通道技术中端口已经是最基本的逻辑单元,也就是说,两个物理端口间的连接就只可能是4Gb带宽。
而SAS则巧妙的在端口中引入phy这个新的逻辑单元,两个phy之间的互联带宽为3Gb,每端口可以包含4个或8个phy之多,这样两个SAS端口之间的连接很容易达到12Gb甚至24Gb超高带宽。
总之,SAS在借鉴光纤通道技术特点的同时,一方面大刀阔斧简化交换机制,从而提升了交换效率和可靠性,另一方面增加了phy虚拟电路单元,大大增加了性能扩展空间。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SAS 教程