您现在的位置是:首页 > IT基础架构 > 计算存储 >

并行向左 串行向右——构建磁盘网络世界

2009-10-30 01:24:00作者: 来源:

摘要磁盘接口是磁盘与主机系统间的连接部件,不同的磁盘接口决定着连接速度,接口的优劣直接影响着程序运行快慢和系统性能好坏。磁盘接口技术主要有两种,即并行和串行,按照目前的情况分析,“串行”大有取代“并行”之势。...

磁盘接口是磁盘与主机系统间的连接部件,不同的磁盘接口决定着连接速度,接口的优劣直接影响着程序运行快慢和系统性能好坏。磁盘接口技术主要有两种,即并行和串行,按照目前的情况分析,“串行”大有取代“并行”之势。

我们接触到的磁盘接口技术有很多,在串行技术出现之前,从整体的角度上硬盘接口分为ATA、SCSI和光纤通道三种,ATA磁盘多用于个人产品中,也部分应用于服务器,SCSI硬盘则主要应用于服务器,而光纤通道只应用在高端服务器上,价格昂贵。

ATA和SCSI分别定位于低端、高端应用领域,它们也有一个共同点,那就是并行,因为它们都按照并行的方式来传输数据。

随着时间的推移,这种并行技术的不足逐渐显现:尽管ATA和SCSI均是并行总线接口,但是它们之间却不兼容;ATA现有的传输速率已经逐渐不能满足用户的需求,SCSI磁盘价格昂贵;传输数据和信号的总线是复用的,如果要提高传输的速率,那么传输的数据和信号往往会产生干扰,从而导致错误。

于是串行技术应运而生,与并行技术不同,串行按照串行方式传输数据,它是一种完全崭新的总线架构。去年SATA(Serial ATA)磁盘开始大规模应用,为串行磁盘技术的革命运动拉开了序幕。同ATA和SCSI相对应的是SATA和SAS(Serial Attached SCSI)两种技术,它们克服了原先并行接口技术中的不足。串行技术提高了性能、降低了价格,还采用兼容的架构,在低端(SATA)和高端(SAS)之间架起了沟通的桥梁。

SATA磁盘已经获得了广泛的应用,而SAS的情况却有所不同,其标准虽在几年前就已确定,但是产品却迟迟没有面世。3月31日,迈拓公司推出SAS磁盘,串行技术正式吹响了向高端进军的号角。记者预言,在不久的将来,磁盘世界将是串行一统天下。

现在,网络存储的概念已经深入人心,NAS和SAN、FC和IP之争都是细节问题,关键是大家都明白将磁盘阵列等存储设备直接连到网络上可以提高利用率和效能。不过,对于磁盘阵列内部的状况,了解和关心的人就没有那么多了,但实际上,那些通常被我们当作“黑匣子”看待的钢筋铁骨,其“五脏六腑”的构造也直接影响着容量的利用率和性能的发挥。

拓扑:从总线到星形

近二十年来,与ATA相比,SCSI一直以高端的形象自居。然而,随着2003年Serial ATA(以下简称SATA)Ⅱ工作组先后公布属于SATA Ⅱ第二阶段的Port Multiplier(端口倍增器)和Port Selector(端口选择器)规范,并行SCSI的优势已经不复存在。

请注意,SCSI和并行SCSI不是一个概念,两者之间不应划等号,如果非要划一个标志的话,也应该是大于号。广义的SCSI是一大堆标准的集合,像并行SCSI接口(SCSI Parallel Interface,SPI)、光纤通道协议(Fibre Channel Protocal,FCP)和iSCSI(Internet SCSI)都包括在SCSI标准架构之中。由于最初的SCSI标准(SCSI-1和SCSI-2)确实只有并行这一种实现方式,所以不加前缀的提起SCSI通常是指并行SCSI、SATA与SAS接口。

在串行接口大行其道的今天,并行接口的不是之处简直随便挑,譬如需要的信号线太多导致高频时信号同步困难,从而限制带宽和连接距离,换言之,就是发展空间有限。

同样是受制于信号线过多,并行SCSI只能选择共享传输介质(线缆)的总线型拓扑结构。虽然宽(Wide,16位)SCSI理论上能够连接多达15个设备,但如果真这样做的话每个设备所能分配到的带宽将非常有限,而且总线的仲裁(避免低优先级的设备“饿死”)问题也会十分棘手。因此,实际应用中上一个16位SCSI通道(一条总线)连接的硬盘数量通常不超过4个,从而在性能和连接能力之间取得平衡。

抛开连接器和软件协议都不兼容的表象,在功能上并行ATA可说是并行SCSI的子集——后者有的毛病前者都有,后者没有的缺点前者也有(精简所以不够完善)。线缆长度不超过半米、同一通道只能连接2个设备(且为独占式访问)、接口带宽达到133MBps就已十分勉强等都是并行ATA明显不及并行SCSI之处。

正是由于并行ATA(Parallel ATA,以下简称PATA)更早地碰到了瓶颈,ATA率先开始了彻底放弃并行、转投串行怀抱的革命。2000年春季IDF上Intel公布了串行SATA接口的开发计划,并在2001年秋季IDF上联合APT、Dell、IBM、Seagate及Maxtor,正式发布了SATA 1.0规范。

与连接器针脚多达40根的PATA相比,SATA仅有2对数据线(一对发送,一对接收,250mV LVD信号),加上3根地线也不过才7个接脚,连接器十分小巧,线缆也柔软易于弯曲,实现了每个设备独享全部带宽、没有总线仲裁/冲突开销的点对点连接。串行接口必备的LVDS(低电压差分信号)技术将连接距离提高了一倍,1米的长度完全能够满足PC机内存储的要求;每个端口可连接的设备数目虽然从2个减少为1个,但同样面积所能容纳的端口数量却成倍增加,何况PATA在实用中每端口连接的硬盘通常也只有1个;点对点连接构成相对先进的星形拓扑,可以显著改善并发操作能力。此外,SATA的带宽从150MBps(1.5Gbps,8b/10b编码)起步,后续将会提高到300MBps和600MBps。

不过,SATA 1.0的先进架构只是全面超越了PATA,在并行SCSI面前却未必能占尽上风。就以连接大量设备的能力来说,一个并行SCSI端口上挂接4块硬盘很稀松平常,SATA达到同样的水准却要耗费4个主机端口。

SATA的缔造者们显然也意识到了这个问题,于是他们在SATA Ⅱ中引入了Port Multiplier的概念。Port Multiplier的作用是把一个活动主机连接多路复用至多个设备连接,它采用4位(bit)宽度的PM端口字段,其中控制端口占用一个地址,因此最多能输出15个设备连接——与并行SCSI相当。Port Multiplier的上行端口只有1个,在带宽为150MBps的时候容易成为瓶颈,但如果上行端口支持300MBps的带宽,就与Ultra320 SCSI十分接近了。

换句话说,Port Multiplier本身就是星形拓扑架构的体现,对网络略知一二的朋友都明白它比总线拓扑架构更为优秀。遗憾的是,由于ATA的定位是“廉”(价)字当头,其软件(包括指令集)功能有限,Port Multiplier仅处于星形拓扑的初级阶段,只相当于一个SATA的Hub,而且还不是一个好的Hub——不允许级联。

兼容:师夷长技以制夷

看到SATA Ⅱ不断地扩充功能,不免让人感叹,2001年冬季Compaq、IBM、LSI Logic、Maxtor和Seagate未雨绸缪,宣布开发Serial Attached SCSI(串行连接SCSI,简称SAS)的确是明智之举。

SAS吸纳了SATA的物理层(包括连接器、线缆)设计,增加了第二端口,同时还具备FC的某些特征。与SATA相比,SAS在物理架构上的增强主要包括:

双端口 SAS的数据帧基于FCP(FC Protocol),并在外围设备端添加了第二端口支持,形成符合高可用性要求的双端口(dual port)——这一点也类似于FC。

全双工 并行ATA和SCSI都是发送和接收共用一组数据线,因此发送和接收不能同时进行,即所谓的半双工。SATA数据线由两条传送方向相反的差分信号对(LVDS,共4根)组成,发送(Tx)和接收(Rx)各走一路,为全双工提供了物理上的可能。不过,由于ATA协议是半双工的,因此SATA在一对信号线上传送数据的同时只是用另一对信号线返回流控信息,仍然是半双工;SCSI协议则是支持全双工的,SAS通过将一路数据所需的流控信息与反向传送的数据混合在一起,从而能在同样的数据线上实现全双工。

宽链接 物理链接是SAS中的一个基础概念,一条物理链接包括两对差分信号线(Tx和Rx,即一条SATA线缆),传输方向相反。两个SAS端口之间可以建立起由多个物理链接构成的wide link(宽链接),相应的端口也被称作wide port(宽端口),可以表示为N-wide link和N-wide port,N取值在1~4之间,代表物理链接的数量。SAS支持宽链接的主要出发点是获得成倍的带宽,而设备端双端口的设计则是为了提供冗余链路,增强可用性。

带宽 或许是考虑到第一批SAS产品问世时SATA很可能已推出3.0Gbps的第二代规格,SAS 1.0/1.1采取了直接支持3.0Gbps并向下兼容1.5Gbps的策略。虽然某些初期原型产品的确运行在1.5Gbps,但都是在FPGA和现货供应PHY(物理层)芯片基础上开发的,目前采用完全集成3Gbps PHY芯片和ASIC设计的设备已经出现,并逐渐被业内接受。

连接距离 为了提高连接距离,SAS发送和接收信号的电压范围都比SATA大为提高。在具体的连接距离指标上,最初宣称是10米,新的资料则是大于6米(外部线缆),似乎与信号速率从1.5Gbps提高到3.0Gbps有关。需要指出的是SAS规范里面并没有严格限定线缆长度,而是靠发送水平和接收敏感度来考察,制造商通过检测线缆特性来判定其所能达到的距离——高质量线缆可以连接得更远,当然成本也更高。现在SAS线缆连接距离的要求已经提高到8米,通过3个扩展器(Expander)之后,SAS的连接距离能够超过32米,与Ultra160/320 SCSI的12米(15个设备)或25米(点对点)相比虽没有明显提高,但也足以应付机内存储设备连接和近距离DAS的要求了。

上述规划都很不错,可是第二端口怎么实现呢?通过将原本分离的SATA端口和电源插头相连,并将SAS第二端口设置在连接处的背侧(插座则是对侧,见图),就得到了SAS连接器。第二端口比这块跨接区域略宽,但也只有SATA端口(也即SAS第一端口)的2/3,因此其7个接脚及间距均明显变窄。与SAS插头的“铁板一块”相对应,SAS插座也“全线贯通”(SATA插座在SAS第二端口的位置有一突起),这样既可以保证SATA设备插入SAS插座,又能避免误将SAS设备插入SATA插座。


(本文不涉密)
责任编辑:

站点信息

  • 运营主体:中国信息化周报
  • 商务合作:赵瑞华 010-88559646
  • 微信公众号:扫描二维码,关注我们