Chinaunix首页 | 论坛 | 博客
  • 博客访问: 306131
  • 博文数量: 120
  • 博客积分: 2015
  • 博客等级: 大尉
  • 技术积分: 1350
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-13 17:27
文章分类

全部博文(120)

文章存档

2010年(11)

2009年(109)

我的朋友

分类:

2009-11-16 11:56:40

随着计算机技术的发展,计算机内部采用的各种新技术层出不穷,而串行技术作为其中的代表,被广泛地使用。从系统总线、外部接口到各种内外存储介质都将从并行转到串行技术,可以这样说,串行化代表着未来PC技术的发展方向,是一种更符合潮流的技术。下面我们将串行技术在PC内部的使用情况叙述一下。

系统总线

  系统总线从传统的并行PCI转到串行PCI Express,这一点将无可质疑。PCI Express技术也被称作为串行PCI总线技术。与目前的PCI平等对待所有设备、所有设备共享同一条总结资源不同,PCI Express实现了串行的点对点总线数据传输模式,从而能够实现更高的带宽效果,它能够为每一个设备分配独享通道,不需要在设备之间共享资源。具体来说,如果一台支持PCI Express技术的计算机系统提供了6条PCI Express插槽,那么所有这6条插槽都将通过各自独享的通道发送和接受数据,避免出现不同设备同时争抢系统和CPU资源的情况,从而一方面可以最大发挥PCI Express带宽资源的使用价值,另一方面还可以减少或避免硬件设备之间可能产生的通信冲突。在今年的春季“IDF”论坛会上,英特尔正式宣布,将于2004年起在该公司芯片组和网络相关设备以及存储相关设备等各种领域采用PCI Express,从而掀起PC技术串行化热潮。

Serial ATA

  目前已有许多Serial ATA硬盘面市。在Serial ATA硬盘中,串行ATA以一种连续串行的方式传送数据,在每一个系统时钟周期内只会传送一位数据。由于在串行传输中没有信号传输干扰问题,串行传输的工作频率可以无限提高,串行ATA就是通过提高工作频率来提升接口传输速率的。因此串行ATA可以实现更高的传输速率,而并行ATA在没有有效的解决信号干扰问题之前,则很难达到这样高的传输速率。这也是为什么新的硬盘接口标准会采用串行传输的原因。

  所以串行ATA要提高传输速度的话,只需提高控制芯片的工件频率即可。串行ATA一代的时钟频率为150MHz,通过150MHz的时钟频率可以轻易算出半个时钟传输周期只有0.333ns(1个周期=1/150MHz),当然传输过程中等待和数据调整时间也会相应地减少,因此大大提高了传输速度。而且0.333ns只是串行ATA开始,将来还有很大的发展潜力。

  在串行ATA1.0标准中规定:串行ATA数据传输速度为150MB/ s。而且随着未来后续版本的发展,其接口速度还可扩展到2´和4´(300MB/s和600MB/s)。从其发展计划来看,未来串行ATA也将通过提升时钟频率来提高接口传输速率。

  由于采用的是点对点传输协议,串行ATA中每一个硬盘与主机通信时都独占一个通道,系统中所有的硬盘都是对等的,因此,在串行ATA中将不存在“主盘”和“从盘”的概念,用户也不用再费事去设置硬盘的相关跳线了。串行ATA的点对点传输模式的另一个好处是,每一个硬盘都可以独享通道带宽,这对于提高性能是有好处的。

  此外,串行ATA的数据线可以长达一米,支持热拔插;而传统的并行ATA数据线只支持40cm的传输距离,不支持热拔插。

RDRAM内存

  RDRAM绝对是一种独立的架构,它是以串行方式工作的,这一点与SDRAM、DDR SDRAM并行工作的原理存在本质的差异。基于串行技术,RDRAM的总线带宽很窄(只有16位和32位),但它不存在信号干扰问题,工作频率可提高到极高水准。目前PC1066规格的RDRAM工作频率竟然高达1066MHz,未来可提升至1200MHz以上,在速度提升上RDRAM不会遇到明显的瓶颈。而SDRAM和DDR SDRAM都使用较宽的总线宽度(64位),但是并行方式不可避免存在信号干扰的问题,而且随着频率的提升,信号干扰现象越发严重,所以DDR工作频率很难提升到很高的水准,目前要达到200MHz的物理频率已属不易。

  DDR内存的并行工作方式让它不可避免受到信号干扰的影响,其物理工作频率越高,共同工作的内存模块越多,干扰就越明显,若达到一定程度必然导致系统无法稳定运作。实际上如果我们在主板上同时安装多个DDR内存模块,系统稳定性就会降低;安装内存越多,系统越不稳定。以往大家在交流超频经验时往往都说只插单条内存最稳定,双条次之,如果DIMM都插满了则系统的超频能力最差就是这个道理。虽然这个问题今天看来并不严重,DDR内存也还有相当的提升空间,但由于并行总线与生俱来的特性,它迟早会碰到这个问题,所以未来并行模式的DDR最终必然要转向串行技术,换言之,RDRAM是一种更符合内存架构发展潮流的技术,代表着未来内存技术的发展方向,未来的DDR在遇到严重瓶颈的时候必然会借助类似RDRAM的串行技术继续发展,否则它没有前途!
  
IEEE1394接口

  我们再来看看IEEE1394。IEEE1394,又称作“Fire wire”即“火线”。早在1985年,苹果公司就已经开始着手研究“火线”技术,并取得了很大成效;由于IEEE1394的数据传输速率相当快,因此有时又叫它“高速串行总线”。通常,在PC个人计算机领域将它称为IEEE1394,在Mac机(即苹果机)上称为Fire wire,在电子消费品领域则更多的将它称为i-LINK。近年来,采用IEEE1394接口的设备越来越多,很多DV(数码摄象机)、外置扫描仪、外置CD-RW等都配备1394接口;可以预计未来绝大部分PC都将会采用这种极具吸引力的传输规格。

  IEEE1394是国际IEEE标准化组织制定的一项具有视频数据传输速度的串行接口标准。支持外设热插拔,同时可为外设提供电源,省去了外设自带的电源、支持同步数据传输。现有的产品1394协议支持100Mbps、200Mbps、400mbps的数据传输率,将来将达到800Mbps、1600Mbps、3200mbps的数据传输率。

USB2.0接口

  USB (通用串行总线),是一种计算机外设连接规范,由包括康柏、惠普、英特尔、Lucent、微软、NEC和Philips等联合制订。USB2.0在现行的USB1.1规格上增加了高速数据传输模式。在USB2.0中,除了USB1.1中规定的1.5Mbit/s和12Mbit/s两个模式以外,还增加了480Mbit/s(60MB/s)这一“高速”模式。由于增加了高速模式,将会使USB的应用范围得到进一步扩大。由于总线的整体传输速度提高,即使同时使用多个设备也不会导致各设备的传输速度减慢。

  做为新一代的外部接口,USB的优点非常多,首先它可以支持热插拔技术和高级即插即用功能,这样用户可以方便的在计算机上添加外设,而且USB接口不使用IRQ的中断控制以及输入输出的地址资源,最多可以连结127个设备。另外USB接口最大的优点就是速度快,尤其是运用在打印机、扫描仪等设备上,它可以显著提高用户的工作效率。随着全新的USB 2.0规范诞生,输入/输出的带宽得到了显著扩展,从而会进一步刺激USB外设的发展。

结语

  从以上叙述可以看出,随着PC内部更多地采用串行技术,将给用户带来更多的方便性和高效性。而且串行具有并行所没有的特点:

·点对点的高速数据传输
·数据带宽窄
·无信号干扰
·支持外设热插拔

  从表面看,采用并行方式,似乎还能达到更高的传输速度。那么肯定有人会要问:既然并行一次可传送多个字节的数据,而串行每次传输的数据只有1位,那么为什么在高速传输过程中却要使用串行呢?其实这主要的原因在于串行传输没有信号传输干扰问题,这也是串行技术的最大优势。例如,包含了八根线芯的一条并行电缆,相比一条串行电缆,是不是速度能达到后者的八倍呢?理论上是这样的,但实际使用时还要考虑到其他许多因素。在并行电缆的多股线芯之间,电子干扰比较厉害。而且速度较高的时候,线芯之间的同步也是一个问题。因此为减少干扰,并行技术的工作频率不可能太高。

  串行技术建立的是一个简单的“点到点”连接。由于不存在信号干扰,通过提高工作频率,传输能力可以非常方便地加以扩展。而且串行技术易于实现,串行电缆及其接头易于制造,成本低廉。

  我们相信,在今后将有更多的串行技术被计算机所采用。这一点从传统的PCI和Ultra ATA两种总线都将转向串行模式的PCI Express和Serial ATA可以看出,而USB2.0和IEEE1394在外设接口的大量使用,更是代表了这一发展趋势。以高工作频率、数据带宽较窄为特征的串行总线无疑是未来PC技术的主宰。

并行与串行的争斗 网络磁盘存储技术

磁盘接口是磁盘与主机系统间的连接部件,不同的磁盘接口决定着连接速度,接口的优劣直接影响着程序运行快慢和系统性能好坏。磁盘接口技术主要有两种,即并行和串行,按照目前的情况分析,“串行”大有取代“并行”之势。
  我们接触到的磁盘接口技术有很多,在串行技术出现之前,从整体的角度上硬盘接口分为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十分接近了。

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



  换句话说,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插座。

  升华:交换和路由

  与SATA一样,SAS也可以让主机端口与设备端口点对点直接相连,但不同的是,后者从设计之初就引入了类似于Port Multiplier的中间设备,以达成大量设备连接能力并实现更为复杂的拓扑结构。

  这个中间设备叫做扩展器(Expander),不过与并行SCSI中的同名设备不是一个概念。如果把SATA的Port Multiplier比做Hub,那么SAS的扩展器就是交换机(Edge Expander,边沿扩展器)和路由器(Fanout Expander,扇出扩展器)。

  扩展器利用可多达128个的PHY(发送器和接收器各一、能够接受1个物理链接的最小单元,譬如1个4宽度端口即由4个PHY组成)连接主机/设备或其他扩展器,组成星形拓扑架构。SAS还引入了“域”的概念,扇出扩展器是SAS域的核心,一个SAS域只能有一个扇出扩展器,它可以随意连接边沿扩展器;一个边沿扩展器只能连接到一个扇出扩展器上,而在没有扇出扩展器的情况下最多仅允许两个边沿扩展器互连;在不超过数目上限的前提下,扩展器可以随意连接发起者/目标设备。也就是说,在一个SAS域中,任意两点(主机或设备)之间最多可以有3个扩展器。

  SAS制订初期的目标是每个扩展器可连接64个设备,一个SAS域最多4096个(64×64)设备;后来规范制订者们意识到没有必要把扩展器的端口数目限制在64个,于是便改为每个扩展器能够寻址128个PHY,整个SAS域形成一个物理连接数目可达16K(128×128=16384)的点对点交换式拓扑架构。

  扩展器强大的连接能力不仅是为设备数量服务的,它还可以用多达4个的物理链接组成宽链接来获得成倍的带宽。以4宽度内部串行附属连接器为例,SATA只能通过4根相互间没有逻辑联系的线缆获得4个独立的SATA链接,SAS却可以得到一个4宽度链接(在一个扩展器上)、两个2宽度链接(在两个扩展器上)、四个1宽度链接(在四个独立的扩展器或设备上),甚至还能够是一个3宽度链接和一个1宽度链接……性能与灵活度都远胜于SATA。

  不过,扩展器引入的复杂度也不尽是优点,譬如它将原本直接相连的两个设备分隔开就隐藏着潜在的风险。为此,SAS在链路层引入了速率匹配(rate matching)的概念,即在高速连接一侧(视需要)降低实际数据速率,维持扩展器吞吐量的平衡。这一功能对SAS主机控制器(3.0Gbps)通过扩展器连接SATA外围设备(1.5Gbps)的应用显得尤为重要。

  说到SAS主机控制器连接SATA外围设备,我们还得颇费些口舌。SAS支持3种协议,分别是串行SCSI协议(Serial SCSI Protocol,SSP),全双工,让SCSI运行在增强的SATA物理层上;串行ATA隧道协议(Serial ATA Tunneled Protocol,STP),为SATA增加多目标寻址和多发起者访问,以适应SAS环境的需要;串行管理协议(Serial Management Protocol,SMP),用于发现和管理扩展器。’

  扩展器把SATA的点对点连接扩展至SAS的多发起者/多目标,然而SATA协议仅支持单发起者/单目标,STP的任务就是让发起者能够通过扩展器访问SATA目标。STP在发起者与最远的、也就是连接SATA设备的扩展器端口(STP目标端口)之间建立起一条通路(隧道),传输标准的SATA 1.0帧,因此在SATA设备看来,自己连接的就是SATA主机适配器。如果发起者端口识别出与其直接相连的是一台SATA设备,则只使用SATA协议通信。

  那么SAS主机控制器端口怎么知道自己连接的是SATA设备还是SAS设备呢?这就要借助于带外(Out of band,OOB)信号来识别了。在连接初始化时,主机控制器端口送出OOB慢速脉冲信号,检测目标对COMSAS脉冲的响应情况——如果目标也返回COMSAS脉冲,就是SAS设备,反之即为SATA设备。需要注意的是,由于在SAS协议中发起者和目标是对等的,外围设备也可以主动送出COMSAS脉冲,向主机适配器表明自己的身份。以硬盘为例,能否生成COMSAS脉冲即是辨别SAS与SATA的依据。

  STP发起者端口经过OOB协商确认与自己相连的是SATA设备后即进入SATA模式,严格遵循SATA主机适配器的行为规范。STP并不关心SATA FIS(Frame Information Structure,帧信息结构)的内容,SATA命令排队可以在FIS中传输——前提当然是STP发起者端口和SATA设备必须支持命令排队功能。

  传输完成后由SAS主机适配器或扩展器决定是否用STP断开与SATA设备的连接,以后需要时再重新连接。整个过程中该SATA设备始终以为自己通过正常的流控机制直接连在某个SATA主机适配器上,实际情况却是SAS主机适配器进行了SATA“翻译”工作。在Windows操作系统中,这个SAS主机适配器将与使用Miniport驱动程序的SATA主机适配器一样被归类为SCSI控制器。

  结语:融合促进分层存储

  由于单端口的带宽(3.0Gbps,甚至1.5Gbps)已经能够满足硬盘的要求,SAS硬盘增加第二端口并不是为了支持宽链接(2-wide),而是通过给它们赋予不同的SAS地址(World Wide Name,WWN),让双端口分属两个(冗余的)域以防系统出现单点故障,从而提高可用性。

  在SAS环境中,SATA设备同样有高可用性需求,即允许两个主机适配器连接到一台SATA硬盘上,避免主机适配器成为单点故障源。与SAS的双端口不同,在任何时刻都只能由一个主机适配器独享此SATA硬盘的控制权(由系统软件检测哪个主机适配器处于“活动”状态,即不是active-active的)。这种通路切换机制由两端口到单端口的适配器(也称Port Selector——端口选择器)实现,目前Port Selector 1.0规范已经公布。

      在任何时刻只有一个端口处于活动状态,在切换端口之前硬盘的所有行为都必须停止(队列中无请求)。端口选择器的设计取决于子系统厂商,可以两边分别是SAS(双端口)和SATA连接器,也有可能把端口选择器放在背板上,或者干脆将其集成到硬盘上配合统一的背板连接器使用。此外,端口选择器还可以用于静态负载均衡。不过,这样一来也对该SATA硬盘的工作周期(7×24)和平均无故障时间(MTBF)提出了更高的要求。



  SAS的整个架构,比同样以串行方式运行SCSI协议的FC-AL更为完善,有望引起高端硬盘接口一场革命。这里我们要着重指出的是SAS兼容SATA的重大意义。长期以来,高端的FC和并行SCSI接口与低端的PATA接口互不兼容,而随着近几年ILM(信息生命周期管理)概念的提出,企业级存储系统对参考数据应用的需求不断增长,PATA及其继承者SATA开始打入企业级存储市场,系统制造商希望能够通过混用高端磁盘和低端磁盘在单个存储设备内部实现分层存储,为应用提供更高的灵活性。这种混用最初是在磁盘柜级别的,即磁盘柜内部全都是一种接口的硬盘,外部统一为FC接口(如EMC CLARiiON),后来FATA(Fibre Attached Technology Adapted)的出现将混用级别推进到了单个磁盘,灵活度大为提高。

  然而,作为一种高端接口(FC)与低端盘体相结合的产物,FATA磁盘专为高低端磁盘混用而生,市场空间相对有限,成本和灵活性不会很理想。反观SAS与SATA的兼容,可谓自然而然,SATA在取代PATA之后一统低端市场,SATA硬盘随手可得,与SAS配合起来,相得益彰。

  编看编想:谁的寿命更长?

  随着SAS磁盘的推出,用户有了更多的选择,同样,用户也就更关心哪种磁盘技术的寿命长的问题。当我们对各种磁盘技术进行比较时,用户首先关心的是它们的故障率,于是有观点认为,谁的故障率最低谁的寿命最长。然而,事情远非如此简单!

  由于SAS产品刚刚推出,其各种影响力还没有展现,但是,从SATA磁盘的应用来看,其获得成功的关键并不是更低的故障率,相反,其故障率甚至高于SCSI和光纤通道磁盘。记者认为,用户拥有RAID技术,拥有热插拔技术,它们的结合很大程度上补偿了磁盘肯定会发生的故障。另外,有些公司的特定技术(RAID 6以及类似技术)还做到了同时有两块磁盘发生故障而不丢失数据。

  就目前情况来看,还没有一种技术可以完全替代其他所以类型磁盘,但是在用户进行分层次存储选择磁盘时,用户的有些选择已经发生了很大的变化,勿庸置疑,串行技术的优势已经逐渐显现出来,并且会发扬光大。

  IT经理应当了解所有这些问题,然后考虑价格、厂商因素以及其他许多问题。选择SATA或者SAS磁盘会更便宜吗?这取决于用户的需要。在大多数问题得到充分了解后,企业IT经理可以根据IT的经济性而不仅仅是技术,做出决定。

存储接口:从并行转串行之趋势分析

目前,我们经常接触到的存储接口有很多种,如ATA、SCSI、USB、以太网、FC和InfiniBand等等。这些接口基本可以分成两个层次,即本地接口(直接连接磁盘的接口)、阵列或网络接口(连接阵列和网络的接口)。类似USB这样的接口一般被用于终端设备连接,即在设备上使用桥接器实现接口转换。而在网络层面,主要使用光纤通道、以太网络和InfiniBand。
    以太网不仅广泛应用于存储区域网络(SAN),还被用来构建网络附加存储(NAS)。目前的一种新趋势是,在IP协议的基础上使用iSCSI协议或SCSI命令进行数据传输。这一趋势有可能会推动以太网络向磁盘接口层面发展,最终允许磁盘直接连接到网络交换机,就像FC磁盘技术的发展一样。

    就本地存储接口来看,一个非常重要的趋势就是正在迅速地从并行向串行转变。为此,系统设计师需要深入了解新技术带来的变化,认真评估新技术对存储空间、参数设置和存储应用的影响。

一、从并行走向串行

    目前存储接口并行转串行的主要有两个:一个是PATA接口(即并行ATA)转向SATA接口(即串行ATA),另一个就是SCSI接口(即并行SCSI)转向SAS接口(即串行SCSI)。在过去的15年,并行ATA和并行SCSI接口一直在存储设备领域占据着统治地位。而且这两种接口本身也一直在不断发展,现在ATA的传输速度已经提升到了133 MB/s,而Ultra320 SCSI则达到了320 MB/s。

ATA和SCSI两种接口由并行转向串行后,也就意味着SATA和SAS可以共享同一种物理接口。尽管ATA和SCSI的并行电气接口、连接器和针脚完全不同,但是转向串行后的SATA和SAS在连接器和电气接口方面则是一致的。
    这些串行接口可以实现更高的带宽、更好的物理特性和更高的性能。而一项被保留下来的重要特性就是,端口层面的接口指令集在很大程度上与原来的相同,并向后兼容ATA和SCSI的指令集。

    串行接口的一个主要不同是在命令和数据的封包方面:两者都以串行的方式传送。SAS端口分为四层:物理层(PHY)、链路层(LINK)、端口层(PORT)和传输层(TRANSPORT),封包发生在端口层。在端口层,接口的设计是透明的,这样软件就可以直接识别出ATA或SCSI设备。

    SATA和SAS使用的连接器最初源于InfiniBand。SFF(Small Form Factor)委员会负责制订相关规范。目前的连接器版本包括SFF-8482、四端口的内部高密连接器的SFF-8484、四端口的外部高密连接器SFF-8470。这些连接器主要是用来连接磁盘、主机适配卡(HBA)和扩展器。

二、为什么要转向串行?

    存储接口之所以要从并行转向串行,主要是因为现有的接口面临性能瓶颈、信号扭曲和传输率不足等问题。特别是ATA接口本身的电气特性,使其受到的应用限制更为明显。另外,线缆复杂度和可服务性方面的问题也在驱动向串行的转变,如转向串行后可以支持热插拔。
    其实,并行转串行的根源在于深藏在数据背后的时钟(clock)。数据(DATA)和时钟(CLOCK)信息是通过8B/10B的编码规范结合在一起的。接口串行化,可以在增加数据传输速率的同时,消除信号扭曲问题。如SATA最开始的数据传输速率就高达1.5 Gb/s,即与设备连接的最高速率为150 MB/s。目前,SATA-II已经达到了3 Gb/s的速率。SAS允许双向传输,速率为3 Gb/s,如果使用双端口就是6 Gb/s。

三、串行带来了什么好处?

    采用串行存储接口可以获得更高的性能,支持可扩展性和可服务性,同时降低成本。另外,串行接口减少了封装的复杂度,统一了电气和物理特性,允许在同一个存储机架中使用SATA和SAS两种磁盘。

    现在,终端和设备ID的规范也已得到优化,设备选择不再需要跳线。线缆只有0.25英寸厚(图1),七根线缆的连接器也只需占用0.5英寸的空间(图2)。另外,磁盘端和主板端的标准连接器也已经出现,这种标准连接器可以支持硬盘的直接插拔,也可以支持混杂点对点线缆的互连。

    概括来看,存储接口由并行转向串行对应用的影响主要表现在:

1) 由于串行的速度更快一些,虽然当前SAS和SCSI的传输速率差不多,但下一代SAS很快能达到6GB/s,同样SATA的3GB/s也远远大于IDE的133Mb/s,因此,串行技术更加适用于VOD视频点播等对传输速度要求更高的大数据流应用领域。
2) 串行的传输线中的信号线比并行中的要少很多,如SAS只有十几根信号线,而SCSI需要68根。信号线的增多向导致信号线之间的串绕特别严重。如果SCSI要向下一代发展,对线缆的要求就特别高,长度也会缩减一半,从而限制了进一步发展的空间。而SAS向更高频率发展更为容易,从而有利于保护用户投资。

3) SAS由于可以接扩展器,因此扩展能力更强,最多可连接128*128个磁盘,这对于需要海量存储的用户来说是很有意义的。

四、SAS与SATA的对比

    随着SAS和SATA物理接口的融合,各自协议中的优势也就成为它们之间的主要差异。

    SATA设备支持单个主机,而SCSI设备支持多个发起端(initiator)或多个主机。SATA接口是半双工的,而SCSI是全双工的。本地命令队列(Native Command Queuing)曾经是SCSI的优势,但现在也开始在SATA-II中应用。

    SAS允许双端口和全双工通信,可以为磁盘提供双倍的数据传输率。SAS还允许使用扩展器(expander)来实现扩展,每个扩展器支持128个磁盘,因此最多可连接多达16384个设备。SAS协议仍然继续支持高级命令队列,来优化处理数据请求的任务排序。

    虽然SATA和SAS在接口层面上存在一些功能不同,但接口本身的差异远不及SATA和SAS设备之间的差别。与整体性能相关的最重要的一个方面就是设备本身的设计和构造。这两种设备的轴承类型、控制器带宽、控制器数量和马达转速等特性都是不同的,因此也是造成不同接口之间性能差别的关键因素。

    从市场层面来看,SATA磁盘主要还是用在桌面级存储中,而桌面存储在整个存储市场中占据了最大的一块。SATA还可以在磁盘阵列中用作近线存储设备。随着带宽的不断提升,SATA磁盘也在尽力拓展在高端市场的应用,并有可能进入一些以往一直被SCSI占据的领域。而SAS或SCSI仍然会继续占据企业级市场。业界对SCSI磁盘方案的完善已经进行了多年,但并行SCSI很快会被SAS取代。

    综上所述,存储接口由并行向串行的转变提供了更高的数据传输速率和更好的线缆规范。磁盘方面一个显著的特征就是可以实现热插拔。以后,SAS和SATA磁盘可以共享同样的连接器和线缆,使封装在本质上趋同。接口带宽会朝600MB/s的数据传输率发展。点对点、可热插拔的连接方式支持扩展器和RAID技术,从而进一步提高磁盘阵列的可扩展性。我们有理由相信,新的串行技术的出现,会为未来存储应用打下坚实的基础。

阅读(1929) | 评论(0) | 转发(0) |
0

上一篇:解疑存储集群之惑

下一篇:mbr

给主人留下些什么吧!~~