固态硬盘的连接处理方法、固态硬盘和通信系统技术方案

技术编号:5382517 阅读:1018 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种SSD的连接处理方法、SSD和通信系统。本发明专利技术实施例采用在建立SSD与主机之间的连接时,建立新命令队列和预备命令队列,然后利用这些队列来执行主机命令,在主机命令执行完毕后并不直接关闭连接,而是在确定预备命令队列为空时才关闭连接,从而大大减少了连接的建立和关闭的次数,有效提高了SSD的IOPS,有利于SSD性能的提高。

【技术实现步骤摘要】

本专利技术涉及通信
,具体涉及一种固态硬盘(SSD,solid state disk)的连 接处理方法、SSD和通信系统。
技术介绍
串行连接小型计算机系统接口(SAS,Serial Attached SCSI)是新一代的小型计 算机系统接口 (SCSI, Small Computer System Interface)技术,是并行SCSI接口之后开 发出的全新接口。由于SAS在传输速度、可靠性以及兼容性方面具有等较大的优势,因此, 被广泛地应该在各种存储设备上,比如SSD。由于SAS具有支持多设备连接的特点,因此SAS每次在启动器(比如主机)与目 标器(比如SSD)之间进行交互前都需要先建立连接。其中,该交互包括下发命令、传送数 据或返回响应等。由于传统磁盘寻道时间会比较长(通常是10ms),因此在传统的SAS系统 架构中,通常主机在向磁盘发送一个命令后会立即关闭连接,然后打开与其他盘的连接,与 其它盘进行交互,等该磁盘寻道完毕,准备好数据后,才再次建立连接以进行数据传输。在对现有技术的研究和实践过程中,本专利技术的专利技术人发现,这种频繁地打开连接 和关闭连接的操作对于高性能的SSD来说,是巨大的开销,不利于SSD性能的提升。
技术实现思路
本专利技术实施例提供一种SSD的连接处理方法、SSD和通信系统,可以提高SSD性能。一种SSD的连接处理方法,包括建立SSD与主机之间的连接,并建立新命令队列和预备命令队列;接收所述主机发送的主机命令,将所述主机命令放入新命令队列中;执行新命令队列中的主机命令,并将执行结果放入预备命令队列中,以便将执行 结果返回给主机;在确定所述预备命令队列为空时,关闭所述连接。一种 SSD,包括建立单元,用于建立SSD与主机之间的连接,并建立新命令队列和预备命令队列;接收单元,用于接收所述主机发送的主机命令,将所述主机命令放入建立单元建 立的新命令队列中;执行单元,用于执行接收单元放入新命令队列中的主机命令,并将执行结果放入 建立单元建立的预备命令队列中,以便将执行结果返回给主机;关闭单元,用于在确定所述预备命令队列为空时,关闭建立单元建立的所述连接。一种通信系统,其特征在于,包括主机和本专利技术实施例提供的任一种SSD ;所述主机,用于发送主机命令给SSD。本专利技术实施例采用在建立SSD与主机之间的连接时,建立不同的新命令队列和预 备命令队列,然后利用这些队列来执行主机命令,在主机命令执行完毕后并不直接关闭连接,而是在确定连接达到预置维持时间或预备命令队列为空时才关闭连接,从而大大减少 了连接的建立和关闭的次数,有效提高了 SSD每秒完成输入/输出(1/0,hput/Output)的 次数(IOPS, I/O Per Second),有利于SSD性能的提高。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他 的附图。图1是本专利技术实施例一提供的方法的流程图加是本专利技术实施例中命令队列执行场景示意图2b是本专利技术实施例二提供的方法的流程图3a是本专利技术实施例提供的SSD的结构示意图北是本专利技术实施例提供的SSD的另一结构示意图4是本专利技术实施例提供的通信系统的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于 本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种SSD的连接处理方法、SSD和通信系统。以下分别进行详 细说明。实施例一、本实施例将从SSD的角度进行描述。如图1所示,具体流程可以如下101、建立SSD与主机之间的连接,并为该连接建立相应的新命令队列和预备 (ready)命令队列;其中,新命令队列用于存放从主机接收的未被执行的主机命令,预备命 令队列用于存放主机命令的执行结果,该执行结果尚未给主机返回响应。由于SAS具有支持多设备连接的特点,因此SSD可以通过SAS与多个主机建立连 接,具体实施时,可以通过预置规则来控制各个主机与SSD建立连接的时机。例如,该预置 规则可以为建立SSD和第一主机(称为主机1)的连接A,维持连接A,并建立SSD和第二主机 (称为主机2)的连接B;或者,建立SSD和第一主机(称为主机1)的连接A,在关闭连接A后,才建立SSD和第二 主机(称为主机幻的连接B,等等。其中,建立SSD与主机之间的连接具体可以如下接收主机发送的连接建立请求;根据接收到的连接建立请求建立SSD与该主机之 间的连接。102、利用建立好的连接,接收该主机发送的主机命令,将主机命令放入步骤101 中建立的新命令队列中;具体的主机命令类型和格式可参见现有技术,在此不再赘述。103、执行新命令队列中的主机命令,并将执行结果放入预备命令队列中,以便将 执行结果返回给主机;例如,可以按照主机命令进入新命令队列的时间先后顺序调出需要执行的主机命 令,然后执行该调出的主机命令,并将执行结果放入预备命令队列中;或者,也可以根据预置策略从新命令队列中调出需要执行的主机命令,然后执行该调出 的主机命令,并将执行结果放入预备命令队列中,等等。其中,预置策略可以是关于预先的主机命令优先权的设置,比如,主机命令A具有 最高优先权,主机命令B具有中等优先权,而主机命令C的优先权最低,则SSD在执行命令 前,会先遍历新命令队列,然后按照优先权的高低执行这些主机命令先调出主机命令A, 执行完毕后,再调出主机命令B,执行完毕后,才调出主机命令C进行执行,依此类推。该预置策略还可以是关于主机命令类型的设置,比如,A类型的主机命令优先处 理,而B类型的主机命令则可以稍缓处理,等等。104、在确定预备命令队列为空时,关闭该连接;例如,在预备命令队列为空时,发送完成(done)指令给主机,接收主机返回的关 闭指令,根据接收到的关闭指令关闭该连接。可选的,除此之外,该方法还可以包括在确定该连接达到预置维持时间时,关闭 该连接;即在预备命令队列不为空时,连接达到预置维持时间的情况下,也可以关闭该连接。其中,维持时间可以由用户根据实际应用的需要进行设置。该维持时间是一种超 时机制。之所以设置该维持时间是因为SAS接口是一种虚电路连接,只有在主机和固态硬 盘通信时才会建立连接,因此,为了避免由于长时间占用连接,而对其他主机访问固态硬盘 造成影响,设置了该超时机制,使得在预置的维持时间达到时,不管通信是否完成,都要关 闭连接,如果还需要继续通信,则可以再次打开连接进行通信。另外,还需说明的是,预备命 令队列作为命令执行结果的缓存,与该预置的维持时间并不矛盾,如果预备命令队列为空, 则可以关闭连接,无需判断预置维持时间是否到达,这样其他主机就可以和固态硬盘建立 连接以进行通信。因为预备命令队列中的执行结果都会返回给主机,所以如果预备命令队列为空, 则表示目前与该预备命令队列相关的所有主机命令都执行完毕,所以可以关闭与该主机的 连接。需说明的是,本文档来自技高网...

【技术保护点】
一种固态硬盘的连接处理方法,其特征在于,包括:固态硬盘建立与主机之间的连接,并建立新命令队列和预备命令队列;接收所述主机发送的主机命令,将所述主机命令放入新命令队列中;执行新命令队列中的主机命令,并将执行结果放入预备命令队列中,以便将执行结果返回给主机;在确定所述预备命令队列为空时,关闭所述连接。

【技术特征摘要】

【专利技术属性】
技术研发人员:张靖余夕亮张昆
申请(专利权)人:成都市华为赛门铁克科技有限公司
类型:发明
国别省市:90[中国|成都]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1