存储 频道

取代FC成定局 专家详解SAS连接技术(二)

  【IT168 专稿】就像SATA是ATA的串行标准一样,SAS是SCSI总线协议的串行标准,SAS的三个字母是Serial Attached SCSI的缩写,就是我们所说的串行连接SCSI。由于SCSI并行技术在发展过程中已经遇到了种种弊端,为了在技术上获得新的突破,串行技术应运而生。在存储连接技术发展的历史过程中,人们围绕着SAS和FC技术哪个才是未来发展趋势这个问题一直颇有争议。支持SAS技术的人认为,作为SCSI的一种升 级技术,SAS有望在未来取代目前占据强势地位的FC技术。而FC技术的支持者则宣称,FC在技术上的先进性仍然毋庸置疑。

  如今,一个显而易见的事实则是,在不同市场定位的存储系统后端连接背板技术上,基本绝大多数厂商都选择SAS技术,因为SAS技术具备性能和经济性两方面的优势。在取代FC成定局 专家详解SAS连接技术(一)中我们已经详细介绍了什么是SAS,与SCSI结构的对比以及SAS结构,本文我们将进一步介绍SAS连接和协议,以及SAS配置。

  SAS连接和协议

  SAS连接:两个SAS设备要通信,必须先open连接,即通过OPEN address frame实现,然后选择相应的PHY进行连接。该帧编码如下:

SAS连接和协议

  SSP:用来执行SCSI命令以及任务管理功能。

  SMP:只有initiator才能发起smp连接。用来perform expander和phy管理。

  stp:在纯SATA设备之间直接进行通信,不需要像ssp和smp那样首先建立connection。

  SATA是半双工传输模式。

  Edge Expander设备组合及局限性

  最简单的SAS配置图,即一个服务器通过HBA卡连接若干硬盘。当主机想和某个硬盘进行数据通信时,必须先建立connection。这个过程有点类似SCSI的仲裁机制。若硬盘想和主机进行数据通信,也是一样的。

  expander一般都是含多PHY的交换芯片,而edge expander则是专门用来连接硬盘设备的。

Edge Expander设备组合及局限性

  这种连接方式的工作效率非常低,因为host同一时刻只能连接一个硬盘设备。

  局限性

  edge expander设备内部存储的SAS地址不能超过128个,不论是单个edge还是edge组合。

  这些地址包括以下几种类型:

  1、 终端设备,如硬盘或主机

  2、 edge expander

  3、 expander设备内部的SAS设备

  4、 expander设备内部包含的STP/SATA bridges的STP target port。

  而且各expander之间必须以树状配置存在不能成环。类似于交换机,一旦成环,也会产生广播。

  路由方式和boundary

  如果只有一个edge expander,则expander会知道该expander连接端口的所有SAS地址。当expander收到发向该端口的OPEN地址帧,则会直接转发。也就是说在edge expander内部,是直接路由。但是当跨edge expander时,就无法知道其它expander的port地址了。有两个方法可解决该问题:

  1、 edge expander会简单的将所有未知的目的请求发送至designated port,这称为subtractive routing。designated port是连接其它edge expander的端口。

  2、 edge expander会维护一张路由表,记录SAS地址和端口的关系,该表必须足够大以记录所有地址,否则会overflow溢出,但是最多也只能记录128个SAS地址。就如同交换机一样,也会维护一张MAC地址和port的表。

  需要注意的是,这里都是提到port地址,而不是PHY地址。如下图expander B/C可用subtractive routing方式将未知的目的地址转发出去,但是A就不行了,因为它不知道该向B还是该向C转发。此时A就该应用上述方法2了。

路由方式和boundary

  boundary

  多个edge expander是如何形成树的,或者挑选root的原则是什么?这很像网络中的STP协议。

  1、 连接到fanout expander

  2、 稀里糊涂的…….不知道讲什么

  以图说明问题

路由方式和boundary

  SAS连接的其他形式

  fanout expander

  一个SAS域只能有一个fanout expander,它可以连接128个edge expander或SAS port。此时,fanout expander利用路由表将报文转发至edge expander,而edge expander则利用subtractive routing来转发报文到fanout expander。若fanout expander有连接edge devices(如host主机上的HBA卡),则内部直接路由,因为一个port就对应单一设备。fanout expander说白了就是牛逼的SAS交换机。除此之外的其它expander,如JBOD,都是edge expander。

SAS连接的其他形式

  wide port

  含有多个PHY的口,这些PHY在电气上是完全独立的,只是将多个PHY封装在一个port里面。SAS port可选择哪个PHY进行通信。毫无疑问,wide port的带宽、并发性操作以及容错机制,得到了完全的释放。

SAS连接的其他形式

  JBOD

  串葫芦的磁盘柜。需要注意JBOD柜子不是无限级联的,约束条件就是expander只能容纳128个SAS地址。

  考虑到WIDE PORT的优势,以及SAS硬盘2PHY的作用,可以充分考虑冗余特性,如下图

SAS连接的其他形式

0
相关文章