不同的硬盘接口决定着硬盘与控制器之间的连接速度, 在整个系统中, 硬盘接口的性能高低对磁盘阵列整体性能有直接的影响, 因此了解一款磁盘阵列的硬盘接口往往是衡量这款产品的关键指标之一.
硬盘接口是硬盘与主机系统间的连接部件, 作用是在硬盘缓存和主机内存之间传输数据. 不同的硬盘接口决定着硬盘与控制器之间的连接速度, 在整个系统中, 硬盘接口的性能高低对磁盘阵列整体性能有直接的影响, 因此了解一款磁盘阵列的硬盘接口往往是衡量这款产品的关键指标之一. 存储系统中目前普遍应用的硬盘接口主要包括 SATA, SCSI,SAS 和 FC 等, 此外 ATA 硬盘在 SATA 硬盘出现前也在一些低端存储系统里被广泛使用.
每种接口协议拥有不同的技术规范, 具备不同的传输速度, 其存取效能的差异较大, 所面对的实际应用和目标市场也各不相同. 同时, 各接口协议所处于的技术生命阶段也各不相同, 有些已经没落并面临淘汰, 有些则前景光明, 但发展尚未成熟. 那么经常困扰客户的则是如何选择合适类型阵列, 既可以满足应用的性能要求, 又可以降低整体投资成本. 现在, 我们将带您了解目前常见的硬盘接口技术的差异与特点, 从而帮助您选择适合自身需求的最佳方案.
ATA, 在并行中没落
ATA (AT Attachment)接口标准是 IDE(Integrated DriveElectronics)硬盘的特定接口标准. 自问世以来, 一直以其价廉, 稳定性好, 标准化程度高等特点, 深得广大中低端用户的青睐, 甚至在某些高端应用领域, 如服务器应用中也有一定的市场. ATA 规格包括了 ATA/ATAPI-6 其中 Ultra ATA 100 兼容以前的 ATA 版本, 在 40-pin 的连接器中使用标准的 16 位并行数据总线和 16 个控制信号.
最早的接口协议都是并行 ATA(Paralle ATA)接口协议. PATA 接口一般使用 16-bit 数据总线, 每次总线处理时传送 2 个字节. PATA 接口一般是 100Mbytes/sec 带宽, 数据总线必须锁定在 50MHz, 为了减小滤波设计的复杂性, PATA 使用 Ultra 总线, 通过 "双倍数据比率" 或者 2 个边缘 (上升沿和下降沿) 时钟机制用来进行 DMA 传输. 这样在数据滤波的上升沿和下降沿都采集数据, 就降低一半所需要的滤波频率. 这样带宽就是: 25MHz 时钟频率 x 2 双倍时钟频率 x16 位 / 每一个边缘 / 8 位 / 每个字节 = 100 Mbytes/sec.
在过去的 20 年中, PATA 成为 ATA 硬盘接口的主流技术. 但随着 CPU 时钟频率和内存带宽的不断提升, PATA 逐渐显现出不足来. 一方面, 硬盘制造技术的成熟使 ATA 硬盘的单位价格逐渐降低, 另一方面, 由于采用并行总线接口, 传输数据和信号的总线是复用的, 因此传输速率会受到一定的限制. 如果要提高传输的速率, 那么传输的数据和信号往往会产生干扰, 从而导致错误.
PATA 的技术潜力似乎已经走到尽头, 在当今的许多大型企业中, PATA 现有的传输速率已经逐渐不能满足用户的需求. 人们迫切期待一种更可靠, 更高效的接口协议来替代 PATA, 在这种需求的驱使下, 串行(Serial)ATA 总线接口技术应运而生, 直接导致了传统 PATA 技术的没落.
SATA, 在低端徘徊
PATA 曾经在低端的存储应用中有过光辉的岁月, 但由于自身的技术局限性, 逐步被串行总线接口协议 (Serial ATA,SATA) 所替代. SATA 以它串行的数据发送方式得名. 在数据传输的过程中, 数据线和信号线独立使用, 并且传输的时钟频率保持独立, 因此同以往的 PATA 相比, SATA 的传输速率可以达到并行的 30 倍. 可以说: SATA 技术并不是简单意义上的 PATA 技术的改进, 而是一种全新的总线架构.
从总线结构上, SATA 使用单个路径来传输数据序列或者按照 bit 来传输, 第二条路径返回响应. 控制信息用预先定义的位来传输, 并且分散在数据中间, 以打包的格式用开 / 关信号脉冲发送, 这样就不需要另外的传输线. SATA 带宽为 16-bit. 并行 Ultra ATA 总线每个时钟频率传输 16bit 数据, 而 SATA 仅传输 1bit, 但是串行总线可以更高传输速度来弥补串行传输的损失. SATA 将会引入 1500Mbits/sec 带宽或者 1.5Gbits/sec 带宽. 由于数据用 8b/10b 编码, 有效的最大传输峰值是 150Mbytes/sec.
目前能够见到的有 SATA-1 和 SATA-2 两种标准, 对应的传输速度分别是 150MB/s 和 300MB/s. 从速度这一点上, SATA 已经远远把 PATA 硬盘甩到了后面. 其次, 从数据传输角度上, SATA 比 PATA 抗干扰能力更强. 从 SATA 委员会公布的资料来看, 到 2007 年, 在第三代 SATA 技术中, 个人电脑存储系统将具有最高达 600MB/s 的数据带宽. 此外, 串口的数据线由于只采用了四针结构, 因此相比较起并口安装起来更加便捷, 更有利于缩减机箱内的线缆, 有利散热.
虽然厂商普遍宣称 SATA 支持热插拔, 但实际上, SATA 在硬盘损坏的时候, 不能像 SCSI/SAS 和 FC 硬盘一样, 显示具体损坏的硬盘, 这样热插拔功能实际上形同虚设. 同时, 尽管 SATA 在诸多性能上远远优越于 PATA, 甚至在某些单线程任务的测试中, 表现出了不输于 SCSI 的性能, 然而它的机械底盘仍然为低端应用设计的, 在面对大数据 [注] 吞吐量或者多线程的传输任务时, 相比 SCSI 硬盘, 仍然显得力不从心. 除了速度之外, 在多线程数据读取时, 硬盘磁头频繁地来回摆动, 使硬盘过热是 SATA 需要克服的缺陷. 正是因为这些技术上致命的缺陷, 导致目前为止, SATA 还只能在低端的存储应用中徘徊.
SCSI, 中端存储的主流之选
SCSI(Small Computer System Interface)是一种专门为小型计算机系统设计的存储单元接口模式, 通常用于服务器承担关键业务的较大的存储负载, 价格也较贵. SCSI 计算机可以发送命令到一个 SCSI 设备, 磁盘可以移动驱动臂定位磁头, 在磁盘介质和缓存中传递数据, 整个过程在后台执行. 这样可以同时发送多个命令同时操作, 适合大负载的 I/O 应用. 在磁盘阵列上的整体性能也大大高于基于 ATA 硬盘的阵列.
SCSI 规范发展到今天, 已经是第六代技术了, 从刚创建时候的 SCSI(8bit)到今天的 Ultra 320 SCSI, 速度从 1.2MB/s 到现在的 320MB/s 有了质的飞跃. 目前的主流 SCSI 硬盘都采用了 Ultra 320 SCSI 接口, 能提供 320MB/s 的接口传输速度. SCSI 硬盘也有专门支持热拔插技术的 SCA2 接口(80-pin), 与 SCSI 背板配合使用, 就可以轻松实现硬盘的热拔插. 目前在工作组和部门级服务器中, 热插拔功能几乎是必备的.
相比 ATA 硬盘, SCSI 体现出了更适合中, 高端存储应用的技术优势:
首先 SCSI 相对于 ATA 硬盘的接口支持数量更多. 一般而言, ATA 硬盘采用 IDE 插槽与系统连接, 而每 IDE 插槽即占用一个 IRQ(中断号), 而每两个 IDE 设备就要占用一个 IDE 能道, 虽然附加 IDE 控制卡等方式可以增加所支持的 IDE 设备数量, 但总共可连接的 IDE 设备数最多不能超过 15 个. 而 SCSI 的所有设备只占用一个中断号(IRQ), 因此它支持的磁盘扩容量要比 ATA 更为巨大. 这个优点对于普通用户而言并不具备太大的吸引力, 但对于企业存储应用则显得意义非凡, 某些企业需要近乎无节制地扩充磁盘系统容量, 以满足网络存储用户的需求.
其次: SCSI 的带宽很宽, Ultra 320 SCSI 能支持的最大总线速度为 320MB/s, 虽然这只是理论值而已, 但在实际数据传输率方面, 最快 ATA/SATA 的硬盘相比 SCSI 硬盘无论在稳定性和传输速率上, 都有一定的差距. 不过如果单纯从速度的角度来看, 用户未必需要选择 SCSI 硬盘, RAID 技术可以更加有效地提高磁盘的传输速度.
最后, SCSI 硬盘 CPU 占用率低, 并行处理能力强. 在 ATA 和 SATA 硬盘虽然也能实现多用户同时存取, 但当并行处理人数超过一定数量后, ATA/SATA 硬盘就会暴露出很大的 I/O 缺陷, 传输速率大幅下降. 同时, 硬盘磁头的来回摆动, 也造成硬盘发热不稳定的现象.
对于 SCSI 而言, 它有独立的芯片负责数据处理, 当 CPU 将指令传输给 SCSI 后, 随即去处理后续指令, 其它的相关工作就交给 SCSI 控制芯片来处理; 当 SCSI"处理器" 处理完毕后, 再次发送控制信息给 CPU,CPU 再接着进行后续工作, 因此不难想像 SCSI 系统对 CPU 的占用率很低, 而且 SCSI 硬盘允许一个用户对其进行数据传输的同时, 另一位用户同时对其进行数据查找, 这就是 SCSI 硬盘并行处理能力的体现.
SCSI 硬盘较贵, 但是品质性能更高, 其独特的技术优势保障 SCSI 一直在中端存储市场占据中流砥柱的地位. 普通的 ATA 硬盘转速是 5400 或者 7200RPM;SCSI 硬盘是 10000 或者 15000 RPM,SCSI 硬盘的质保期可以达到 5 年, 平均无故障时间达到 1,200,000 小时. 然而对于企业来说, 尽管 SCSI 在传输速率和容错性上有极好的表现, 但是它昂贵的价格使得用户望而却步. 而下一代 SCSI 技术 SAS 的诞生, 则更好的兼容了性能和价格双重优势.
SAS, 接口协议的明日帝国
SAS 是 Serial Attached SCSI 的缩写, 即串行连接 SCSI. 和现在流行的 Serial ATA(SATA)硬盘相同, 都是采用串行技术以获得更高的传输速度, 并通过缩短连结线改善内部空间等.
SAS 是新一代的 SCSI 技术, 同 SATA 之于 PATA 的革命意义一样, SAS 也是对 SCSI 技术的一项变革性发展. 它既利用了已经在实践中验证的 SCSI 功能与特性, 又以此为基础引入了 SAS 扩展器. SAS 可以连接更多的设备, 同时由于它的连接器较小, SAS 可以在 3.5 英寸或更小的 2.5 英寸硬盘驱动器上实现全双端口, 这种功能以前只在较大的 3.5 英寸光纤通道硬盘驱动器上能够实现. 该功能对于高密度服务器如刀片服务器等需要冗余驱动器的应用非常重要.
为保护用户投资, SAS 的接口技术可以向下兼容 SATA.SAS 系统的背板 (Backplane) 既可以连接具有双端口, 高性能的 SAS 驱动器, 也可以连接高容量, 低成本的 SATA 驱动器. 过去由于 SCSI,ATA 分别占领不同的市场段, 且设备间共享带宽, 在接口, 驱动, 线缆等方面都互不兼容, 造成用户资源的分散和孤立, 增加了总体拥有成本. 而现在, 用户即使使用不同类型的硬盘, 也不需要再重新投资, 对于企业用户投资保护来说, 实在意义非常. 但需要注意的是, SATA 系统并不兼容 SAS, 所以 SAS 驱动器不能连接到 SATA 背板上.
SAS 使用的扩展器可以让一个或多个 SAS 主控制器连接较多的驱动器. 每个扩展器可以最多连接 128 个物理连接, 其中包括其它主控连接, 其它 SAS 扩展器或硬盘驱动器. 这种高度可扩展的连接机制实现了企业级的海量存储空间需求, 同时可以方便地支持多点集群, 用于自动故障恢复功能或负载平衡. 前期, SAS 接口速率为 3Gbps(SAS1.0), 其 SAS 扩展器多为 12 端口. 目前 6Gbps(SAS2.0),12Gbps(SAS3.0)的高速接口均已商用, 并且会有 28 或 36 端口的 SAS 扩展器出现以适应不同的应用需求.
在 SAS 接口享有种种得天独厚的优势的同时, SAS 产品的成本从芯片级开始, 都远远低于 FC, 而正是因为 SAS 突出的性价比优势, 使 SAS 在磁盘接口领域, 给光纤存储带来极大的威胁. 目前众多厂商均已推出 SAS 磁盘接口协议的产品, SAS 也成为存储的主流接口标准.
来源: http://stor.51cto.com/art/201805/574032.htm