SAS接口完全互连指南Word文档下载推荐.docx
《SAS接口完全互连指南Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《SAS接口完全互连指南Word文档下载推荐.docx(34页珍藏版)》请在冰豆网上搜索。
在SATA问世之初,线缆和连接器的情况相对简单——毕竟SATA不支持端口聚合,一个端口对应一个接口连接器,线缆也就只有单路连接。
SAS则不同:
一开始便支持4路的宽链接(widelink),允许多达4个窄端口(narrowlink)聚合为一个宽端口(wideport),并制订了相应的连接器规范。
这样一来,SAS的接口连接器至少有两种了,再加上内外之别,各种可行的组合使得SAS线缆的类型多达10种以上,因此,出现“手中虽有SAS线缆,却无法将两端的SAS设备连接起来”的情况是常有的事儿。
各种SAS线缆和连接器,要让人眼花缭乱实在是太容易了……你见过几种呢?
所以,很有必要对各种SAS线缆的由来和用途加以详细介绍,这也是本文的主要目的。
SAS驱动器连接(上):
兼容SATA
SAS首先定义了硬盘驱动器的接口连接器,其规范即SFF-8482。
由于SAS兼容SATA,既要向下兼容SATA硬盘驱动器,又不能让SATA的数据线连接到SAS硬盘驱动器上,SFF-8482规范的制订者们很是下了一番心思。
SFF-8482规范定义的SAS线缆端插座,引脚S1-S7是主端口,另一侧的S8-S14是从端口,而P1-P15的供电部分在SATA是分离的
SFF-8482定义了SAS硬盘驱动器的双端口(dualport)插头,SATA数据线无法与之相连,而符合SFF-8482规范的插座(位于SAS线缆和背板)却可以随意接纳SAS硬盘驱动器或SATA硬盘驱动器。
SAS硬盘驱动器的双端口连接器(上-中)与SATA硬盘驱动器的连接器(下)对比
众所周知,SATA硬盘驱动器的SATA端口和电源供应是分离的,两个连接器之间有大约2个(SATA或电源)引脚宽度的间隙。
SAS的做法是打掉“隔断”,将双方连为一体,第二端口就位于这个4~5个SATA信号引脚宽度的“桥”的背面。
虽然空间利用得很充分,可毕竟也要布置7个信号引脚,所以从端口(SecondaryPort,SAS②)和主端口(PrimaryPort,SAS①)的“个头”在上面的实物对比图中看起来就像武大郎和武松一样差别明显——当然,仅是针对宽度而言,引脚定义及传递信号的能力是没有区别的。
SAS(上)和SATA(下)硬盘驱动器的连接器在这个投影方向上的主要区别是有无隔断,前者的轮廓包容了后者,使它们共用SAS线缆连接器成为可能
由于SAS硬盘驱动器的接口连接器只是比SATA(加电源)多出来一个从端口,所以SAS线缆连接器很自然地就能兼容SATA硬盘驱动器,反之(SATA线缆配SAS硬盘驱动器)则因受到从端口的阻隔而行不通。
这种设计能够避免SATAHBA/RAID卡(不支持后者所需的STP协议)访问SAS硬盘驱动器,从而满足了“防呆”的要求。
SAS线缆既可以连接SAS硬盘驱动器(左),也能够连接SATA硬盘驱动器(右)——注意红色箭头所指处缺口的有无,以及硬盘驱动器接口连接器上引脚数量的差异
如上图所示,将主端口、从端口和电源供应融为一体的SAS线缆连接器(共29个引脚),与SAS硬盘驱动器的接口连接器一同由小型化委员会(SFFCommittee)制订的SFF-8482规范(非屏蔽双端口串行附加连接器)定义,也被称为“SAS样式连接器”;
与之相对应,原来用于连接SATA硬盘驱动器的信号电缆,其连接器只有7个数据引脚,被称为“SATA样式连接器”。
SAS样式连接器的好处当然是用起来方便,但在连接SAS硬盘驱动器时,却也有个潜在的问题。
SATA数据线缆(左)与SAS的SFF-8482线缆对比(想了解更多关于双端口的资料请点击这里)
SAS驱动器连接(下):
双端口实现
SATA样式的线缆是数据与电源供应相分离的设计,而SFF-8482规范定义的SAS插头连接器和插座连接器却不得不把主/从两个端口和供应电源的针脚整合在一起,上图中很清楚地体现出了两者的区别。
需要强调的是,无论SAS还是SATA,驱动器上的都是“插头”,相配合的“插座”位于线缆一端,切记不要搞反了……
SAS驱动器上的双端口分别连接到两个SASHBA/RAID卡,以提高可用性
不过,并不是用SAS样式(SFF-8482规范)的插座与SAS硬盘/磁带驱动器的插头相连就可以实现双端口功能。
我们必须明确,SAS设备端(device,主要指驱动器)设计双端口功能,初衷不是为了提高带宽,而是要防止主机端出现单点故障,提高SAS驱动器的可用性。
因此,SAS驱动器连接插头上的两个端口,不能连接到同一个SAS主机控制器设备(SASIC/HBA/RAID卡)乃至同一台主机上(SAShost),而是有主、从(Primary和Secondary)之分,分别连接到两个SASHBA或RAID卡上,采用Active-Active(双活)模式,确保任何一个SASHBA/RAID卡出故障时,SAS硬盘/磁带驱动器仍能被另一个SASHBA/RAID所在的主机访问,如上图所示。
SAS线缆直连的典型状况——无法实现双端口
然而,多数情况下,配合SASHBA/RAID卡使用的SAS线缆,无法同时连接到两个SASHBA/RAID卡上。
在SASHBA/RAID卡通过SAS线缆直接与SAS硬盘/磁带驱动器相连的时候,因为SAS规范不允许SAS硬盘驱动器的两个端口连接到同一HBA/RAID卡(前面已经说过,双端口设计不是为了增加带宽,而是高可用性和容灾的需要),所以这些SAS线缆上每一个用于连接SAS硬盘/磁带驱动器的SAS样式连接器只分配了一根单端口的连接线,如上图所示。
换句话说,这样的SAS样式连接器受对外(主机端)为单路连接的限制,实际上仅有主端口是可用的,但在插入后却无法避免地将SAS硬盘/磁带驱动器的从端口一并占据,反而令双端口功能形同虚设。
ADP-4000SAS热插拔背板适配器上的SAS样式连接器,用于连接SAS硬盘驱动器
所以,若想要双端口发挥作用,SAS样式连接器通常应该出现在磁盘背板上,接纳SAS硬盘驱动器的插入,而另一侧可以是一对SATA样式连接器(分别对应SAS样式连接器的主、从端口),迎接来自两个HBA/RAID卡上的SAS线缆,实现高可用性。
CSElectronics出品的ADP-4000SAS热插拔背板适配器,可以把它当作一个“迷你背板”
正因如此,某些SASHBA/RAID卡配套的SAS线缆,在设备一端用的不是SAS样式连接器,而是利于实现双端口的SATA样式连接器。
然而,前面已经介绍过,SATA样式连接器不能插入SAS硬盘驱动器。
在这种情况下,可以使用上图所示的SAS-SATA适配器:
一端为SAS样式连接器,用来插入SAS硬盘驱动器;
另一端(也就是面对我们的)有两个分为主、从的SATA样式连接器,对应SAS硬盘驱动器的两个端口,采用SATA样式连接器的SAS线缆插入标有“主信号”(Signal-Primary)的连接器,便可通过SAS硬盘驱动器的主端口访问,另一个(Signal-Secondary)同理类推。
如果两者各连一个SASHBA/RAID卡,还能组成高可用性配置。
红色椭圆圈内可以作为一个在SAS背板上实现双端口的范例——主机侧两个SATA样式连接器(上),分别对应SAS样式连接器(下)的主、从端口,如红色箭头所示
为了进一步展示双端口在SAS背板上的实现,不妨以SuperMicro的SAS825TQ背板来加以说明,如上图。
需要强调的是,作为一款主要用于服务器的磁盘背板,SAS825TQ并不支持双端口,其上的每一个SAS样式连接器只对应主机侧的一个SATA样式连接器,除非去掉半数的SAS样式连接器,否则红色椭圆圈内的情况不会出现。
当然,将SATA样式连接器的数量增加一倍也可以,但过多孤立的连接器又会带来占地面积过大和不利于布线的问题,下一页将为您献上解决之道。
内部连接器(上):
SAS4i整合并塑身
与主机端和驱动器(硬盘/光盘)端通吃的SATA样式连接器不同,遵循SFF-8482规范的SAS样式连接器只能和以硬盘/磁带驱动器为代表的存储设备一起混。
因此,在构成SAS线缆时,另一端必须要有可以与SAS主机端设备(如HBA/RAID卡)相匹配的连接器。
不通过背板或扩展器等“中间人”,由线缆直连驱动器是典型的机箱内部应用,因此和SFF-8482连接器隔着线缆相望的主机端连接器被称为“内部连接器”,它们除了栖身于SASHBA/RAID卡,也会在背板上出现。
从2004年至今,SAS内部连接器已经历了从SATA样式连接器到SFF-8484,乃至SFF-8087的变迁……
同样是4个内部SAS端口,采用SATA样式连接器(上,2004年)比SFF-8484连接器(下,2005年)消耗的PCB面积更大,而且前者分散的放置也不利于布线
往简单里说,从硬件的层面上看,SAS可以被理解为支持双端口的SATA。
但是,我们知道,双端口是硬盘/磁带驱动器等存储设备的事儿,SASHBA/RAID卡上的端口可以聚合(如4路宽端口),但也可以表现为相对独立的单端口。
因此,第一批SASHBA普遍采用了标准的SATA样式连接器。
这种“拣现成”的做法好处不言而喻,缺点同样不容回避——如何提供更多的端口?
最简单的方式是继续平铺在PCB上,可是PCB的面积终归有限,尤其是还要放置IOP和内存等元件的RAID卡。
SATARAID卡缩减端口连接器占用PCB空间的两种方式——双面堆叠(左,2002年)和单面堆叠(右,2005年)
所以,在SAS之前,以3ware为代表的SATARAID卡设计者们已经在尝试解决这一问题。
最初是把PCB的两面都用上,一张半长的卡可以放置8个端口对应的接口连接器。
然后是“盖楼房”——两个SATA样式连接器堆叠放置,成本效益更好,而且使用范围不局限于PCB的边缘,使MD2规格的卡能够支持多达12个端口。
不论怎么堆叠,分散而杂乱的SATA线缆都是很大的问题
可是,两种做法的本质没有什么区别——都是每个端口各自对应一条线缆,8个端口就要8条线,这已经很乱了,而且会严重影响机箱内的空气流动。
当然,如果能够将线缆捆绑起来,可以改善机箱内部的生态环境。
简单的做法是将线缆捆绑在一起,连接器依然各自为战(一些特殊的并行ATA数据线就是这样设计的)。
更进一步呢?
如果将接口连接器也整合起来,不仅利于安装,还能保证连接的物理稳定性。
连接着1转4扇出线缆的SFF-8484连接器(插头),左右两侧黄色部分是锁定扣具的释放按钮
天生支持端口聚合的SAS技术至少在客观上起到了推动接口连接器整合进程的作用。
小型化委员会(SFFCommittee)为4路内部接口连接器制订了SFF-8484规范,SAS4i的称呼一目了然——i代表内部(internal)。
这4个物理上整合在一个接口连接器上的端口,既可以是一个4路宽端口,也可以是4个独立的单端口。
相应地,SFF-8484定义的线缆既可以是一条4宽度的连接两端,也可以一分为四,即所谓的“fan-outcable”(扇出线缆)。
SFF-8484连接实例图,红色的fanout线缆,可以看到,SFF8484连接器的特点决定了插座和PCB边缘之间最好保留一块空白地带
一个符合SFF-8484规范的接口连接器宽度略小于四个并排的SATA接口连接器,8个端口只需两个SFF-8484连接器即可搞定,线缆理论上也仅有2条(需要考虑到fan-out的情况)。
但是,SFF-8484并没能从根本上解决接口连接器占地面积过大的问题,一方面是SFF-8484连接器的宽度仍约相当于3个SATA样式连接器,更致命的是连接器上的锁定扣具和粗壮的四合一线缆需要更大的纵深(长度),如果不安排在PCB的边缘,占用空间反而会更大。
因此,即便是全长的SASRAID卡,一般也只能容纳2个SAS4i连接器。
从近乎全尺寸的LSIMegaRAIDSAS8408E可以看出,SFF-8484插座如果不放置在边缘,浪费的PCB面积有多大
也正是因为这个原因,SATARAID卡对SFF-8484连接器很不“感冒”。
我们知道,4路宽端口对SATA而言是没有意义的,两两堆叠的SATA样式连接器甚至比SAS4i连接器更为节省空间,后者只剩下线缆捆绑这么一个优点了。
权衡利弊,SATARAID卡继续采用堆叠SATA样式连接器的方式,直到MiniSAS4i连接器的出现。
内部连接器(下):
MiniSAS4i完成小型化
SATA接口连接器可以堆叠设计,相对高端的SATARAID卡也不会超过16个端口,用堆叠连接的方式,占用面积总比SFF-8484要少。
SAS则不同——端口数量倒在其次,关键是宽端口需要四合一。
既然SFF-8484过于浪费空间,那就继续瘦身呗。
两款基于不同接口连接器的3ware9550SX-12对比:
上面是采用InfiniBand4X连接器的9550SX-12MI-I,PCB的一端就可以放下3个,全部12个端口;
下面的9550SX-12SI同样空间内只能容纳5组堆叠的SATA连接器,共10个端口。
此外,线缆方面也是3粗对10细,管理和通风上的差别不言而喻……
有道是“病急乱投医”,AMMC在其2005年底推出的3ware9550SX-12端口SATARAID卡中尝试了原本为InfiniBand开发的4X外部连接器。
这种“外衣内穿”的插座宽度比SFF-8484连接器有较大的缩减,但其主体结构复杂,使用的金属件也太多,导致成本较高,很大程度上抵消了PCB尺寸减小带来的好处,因而没有得到推广。
SFF-8087规范插头端的连接器引脚定义
真正解决问题的是MiniSAS连接器。
MiniSAS的核心是SFF委员会制订的SFF-8086规范,吸取了SFF-8470规范的教训,主体结构大为简化,宽度也有进一步的收敛,与一组堆叠的SATA连接器较为接近,但能提供的端口数量却多一倍(4:
2)。
和SFF-8484相比,SFF-8086在提高空间利用率的同时,较好地控制了连接器的成本。
SFF-8087插座端的连接器及外壳设计
严格说来,SFF-8086规范不能单独工作,因为它只定义了连接器主体和引脚功能,而不包括连接器的外壳和固定部分。
我们知道,内外部应用对连接器外壳设计的要求是不同的,主要体现在内部连接通常是非屏蔽的(Unshielded),而外部连接则需要屏蔽(Shielded)。
因此,在具体的实施上,以SFF-8086为基础衍生出来了SFF-8087和SFF-8088两个版本,分别规范内部连接器和外部连接器。
两个具体设计有细微差异的SFF-8087插头,虽然金属簧片的总体构造不同,但接近前端的特定位置都有两个小钩,对应插座外壳上的两个小孔,插入后锁定连接,按下簧片则可释放
符合SFF-8087规范的插座有一层薄薄的金属外壳,为插头上金属簧片前端的小钩留下了两个小孔,嵌入后起到固定的作用,用力按压簧片方能拔出。
这样设计的好处是根据自身特点形成扣具,不至于像SFF-8484那样因两侧固定端过远而难以平稳地插拔。
插入后的SFF-8087连接器,旁边还有一个空着的插座,和另一个带着保护塞的插座——是否说明SAS4i插座的外壳确实不够坚固呢?
不过,在我们实际使用的过程中,多次出现线缆上的SFF-8087插头无法从对应的插座中拔出的现象,原因在于SFF-8087插座外壳和插头簧片过于单薄,很容易发生变形,导致我们经常需要动用工具辅助才能让插头和插座分离,拔出数据线缆,这一点恐怕是SFF-8087规范最需要改进的地方。
连接器尺寸直观对比:
三个SFF-8087插座并排仅比一个SFF-8484插座略宽,实际占用的PCB纵深也大致相当
MiniSAS的出现在某种程度上解决了SFF-8484规范占用PCB空间过大的问题,SFF-8087规范为HBA/RAID卡所广泛接受,包括SATARAID卡也开始采用x4的设计(从引脚的电气特性上来说,一个SAS单端口和一个SATA端口是等效的),SAS与SATA在HBA/RAID卡的连接器上开始走向统一。
不过,端口数目在4个以内的SAS/SATAHBA/RAID卡,依然只能选择传统的SATA样式连接器。
四合一的线缆必然是粗大的,因此HBA/RAID卡上的SFF-8087插座注定只能安置在PCB边缘,但占用的空间已经比SFF-8484插座小很多,所以才能在RAID卡的一端布置4个SFF-8087插座(左),提供多达16个端口,这对SFF-8484来说是无法想象的(右)——即使用上成倍的空间也不过才8个端口,仅有前者的一半
有趣的是,SFF-8484连接器虽然很快被SFF-8087逐出了HBA和RAID卡市场,却没有就此退出历史舞台,而是仍能在磁盘背板上保留一块栖身之地,这一点我们将在下页提及。
磁盘背板:
兼收并蓄集大成
在机架式服务器或硬盘驱动器槽位较多的塔式服务器中,SASHBA/RAID卡一般不直接用SAS线缆与硬盘驱动器相连,而是会通过磁盘背板,以方便硬盘驱动器的插拔。
磁盘背板也是典型的内部连接应用,一面接硬盘驱动器,另一面连HBA/RAID卡。
驱动器端好说,统一为SFF-8482插座,SAS和SATA驱动器都可以使用,总体上要好于再单独开发仅支持SATA驱动器的背板。
PCB和布线显然不是我们关注的重点,主要的变数就在与来自HBA/RAID卡的线缆相连的“主机端连接器”上。
主机端连接器和驱动器连接器通常在磁盘背板的两面,但也有在同一面的时候,如上图中白色的SFF-8484连接器(连SASHBA/RAID卡),和箭头所指处两个黑色的SFF-8482连接器(连硬盘驱动器)
既然要通过线缆与HBA/RAID卡相连,主机端连接器的选择范围同样不外乎前面两页介绍的那么几种,最大的区别在于布置方式的变化——由原来“趴”在HBA/RAID卡的PCB上,改为“站起来”,即垂直于磁盘背板。
不要小瞧这个区别,说它至少影响了其中一种连接器的命运也不算过份。
SATA样式连接器、SAS4i(SFF-8484)连接器和MiniSAS4i(SFF-8087)连接器都垂直于磁盘背板放置
与SASHBA/RAID卡一样,磁盘背板在主机端最初用的也是SATA样式连接器。
由于是垂直放置,一个带护套的SATA样式连接器占地面积很小,相对于磁盘背板的尺寸来说几乎可以忽略不计,像本文第3页提到的SuperMicroSAS825TQ背板那样有8个SATA样式连接器的情况很正常,甚至16个也不显多。
但是,线缆多而杂乱、PCB布线分散等SATA样式连接器固有的问题是无法避免的——毕竟,对于SAS来说,SATA样式连接器只是一种过渡方案,现在已经没有存在的必要。
如果并肩“站”在磁盘背板上,SFF-8484(中)并不比SFF-8087(右)逊色多少
接下来依然是SFF-8484连接器。
前面我们说过,SAS4i最大的罪状就是太占用SASHBA/RAID卡的PCB空间,但那是在它“趴下”,插拔的方向与PCB平行的时候。
当SFF-8484插头竖立放置的时候,虽宽度依然,但厚度仅与带护套的SATA样式连接器持平,小于SFF-8087插座。
至于高度,SFF-8484插座反而比SFF-8087插座更低矮,处于结合状态(插头进入)时也只是大致相当。
综合来看,磁盘背板的特殊性很好地掩盖了SFF-8484连接器的不足,SFF-8087连接器的优势远没有在SASHBA/RAID卡上时明显,这大概是SFF-8484至今仍未被“坐卧均可”的SFF-8087淘汰的主要原因。
上图左为Adaptec为IBMxSeries460服务器提供的IBMServeRAID8iSASRAID卡,由于要水平安装,两个SFF-8484插座垂直于PCB放置,占用空间大为减少——不过,这种做法不具普遍性,因为多数SASHBA/RAID卡设计时要考虑相邻的PCI插槽,SFF-8484插座必须平行于PCB放置;
上图右则是IBMxSeries460服务器磁盘背板上的SFF-8484连接器
除了方便硬盘驱动器的插拔之外,磁盘背板还有助于双端口功能的实现。
本文第3页我们探讨过双端口的问题,无论磁盘背板上使用哪一种主机端连接器——SATA样式、SAS4i还是MiniSAS4i,只要有相应的布线配合,都可以实施双端口,但是必须遵循以下两条原则:
·
主机端连接器的端口总和应两倍于SFF-8482连接器的数量;
同一个SFF-8482连接器上的两个端口,信号源应来自于不同的主机端连接器。
采用CompactPCI接口的磁盘阵列控制器
但是,在实际应用中,我们很少能看到上述“双端口原则”的体现。
道理很简单:
基本上只有服务器才会采用SATA样式、SFF-8484或SFF-8087连接器作为磁盘背板的主机端连接器,但服务器通常无须支持双端口功能;
双控制器的磁盘阵列需要双端口功能,但这些控制器普遍通过无线缆的CompactPCI接口与背板连接,不存在单独的SAS连接器,只能从另一面看到供硬盘驱动器使用的SFF-8482连接器。
磁盘阵列背板上的SFF-8482连接器,节省空间,有利于硬盘驱动器的通风散热
最后需要补充的一点是,上面的很多讨论,都有一个假定的前提,即主机端连接器提供的端口数,和(驱动器端)的SFF-8482连接器数量相等,或者两倍于后者(双端口情况,此时两面的端口数相等)。
但实际上,考虑到磁盘背板上可以放置Expander(扩展器)以提高连接驱动器的能力,来自SASHBA/RAID卡的端口数(提供给主机端连接器)有可能会少于SFF-8482连接器的数量。
当然,这已经偏离了我们讨论的主题,故不再深究。
外部连接器(上):
SAS4x偷师Infini