一种存储设备控制器间的通讯方法及系统的制作方法

文档序号:10612738阅读:602来源:国知局
一种存储设备控制器间的通讯方法及系统的制作方法
【专利摘要】本发明公开了一种存储设备控制器间的通讯方法及系统,该方法包括:源控制器参照预设的通讯规则,确定从自身到控制命令的目标控制器的通讯通道,并利用确定的通讯通道来发送控制命令;目的控制器接收控制命令,对比自身标识和控制命令中的目标控制器标识,确定自身是否为所述目标控制器,如果是,则执行与控制命令相对应的控制操作,如果否,则将自身作为源控制器并发送控制命令。可见,在本发明中,在需要转发控制命令时由控制器根据预设的通讯规则来确定相应的通讯通道,而非现有技术中根据硬件来确定相应的通讯通道,从而使控制器间的通讯设计可以屏蔽硬件设计的不同,提高控制器间通讯的灵活性,使控制器间的通讯更易于实现和维护。
【专利说明】
一种存储设备控制器间的通讯方法及系统
技术领域
[0001] 本发明涉及计算机通讯技术领域,特别是涉及一种存储设备控制器之间的通讯方 法及系统。
【背景技术】
[0002] 当今,为了使存储设备具有高可用、高带宽以及高读写速率的特性,在设计存储设 备时,通常会为其配置多个控制器,如四控制器或者更多控制器,这些控制器均处于激活状 态,可对外提供数据存储服务。在这种情况下,存储设备的配置操作以及各个控制器之间的 工作协调极为重要,而这一切都依赖于各个控制器之间的高效、可靠通讯。
[0003] 在现有技术中,存储设备控制器间的通讯方案是与存储设备的硬件结构绑定的, 即对于不同的硬件结构,需要设计不同的通讯方式。但是,由于多控制器之间存在多种通讯 通道,包括直接内存访问(Dma)、两线式串行总线(I2c)、高速外设总线(Pci-e)和以太网 (Eth)等等,同时多控制器之间也会有多种通道连接方式,包括环型,星型,主从型等等。显 然,这些通讯通道以及连接方式的多样化,使得控制器间的通讯方式存在实现与维护复杂 的问题。
[0004] 基于此,亟需一种易于实现和维护的存储设备控制器间的通讯方法及系统。

【发明内容】

[0005] 有鉴于此,本发明提供了一种存储设备控制器间的通讯方法及系统,以实现易于 实现和维护的目的。
[0006] 为解决上述技术问题,本发明提供一种存储设备控制器间的通讯方法,包括:
[0007] 源控制器参照预设的通讯规则,确定从自身到控制命令的目标控制器的通讯通 道,并利用确定的通讯通道来发送所述控制命令;
[0008] 其中,所述控制命令包括目标控制器标识,所述预设的通讯规则包含任一控制器 到其它控制器的通讯通道信息;
[0009] 目的控制器接收所述控制命令,对比自身标识和所述控制命令中的所述目标控制 器标识,确定自身是否为所述目标控制器,如果是,则执行与所述控制命令相对应的控制操 作,如果否,则将自身作为所述源控制器并发送所述控制命令。
[0010] 上述方法中,优选地,所述源控制器利用确定的通讯通道来发送所述控制命令,包 括:
[0011] 当所述确定的通讯通道的条数为一条时,直接利用所述确定的通讯通道来发送所 述控制命令;
[0012] 当所述确定的通讯通道的条数为多条时,在所述确定的通讯通道中任意选择一条 通讯通道来发送所述控制命令。
[0013] 上述方法中,优选地,当所述确定的通讯通道的条数为多条时,还包括:
[0014] 在所述确定的通讯通道中,选择一条从自身到所述目标控制器途径控制器数量最 少的通讯通道来发送所述控制命令。
[0015] 上述方法中,优选地,在所述源控制器利用确定的通讯通道来发送所述控制命令 之前,还包括:
[0016] 所述源控制器将所述控制命令发送至预设的中央转发设备,以使所述中央转发设 备将所述控制命令转发至所述目标控制器。
[0017]本发明还提供了一种存储设备控制器间的通讯系统,包括:
[0018] 源控制器,用于参照预设的通讯规则,确定从自身到控制命令的目标控制器的通 讯通道,并利用确定的通讯通道来发送所述控制命令;
[0019] 其中,所述控制命令包括目标控制器标识,所述预设的通讯规则包含任一控制器 到其它控制器的通讯通道信息;
[0020] 目的控制器,用于接收所述控制命令,对比自身标识和所述控制命令中的所述目 标控制器标识,确定自身是否为所述目标控制器,如果是,则执行与所述控制命令相对应的 控制操作,如果否,则将自身作为所述源控制器并发送所述控制命令。
[0021] 上述系统中,优选地,所述源控制器用于利用确定的通讯通道来发送所述控制命 令,具体用于:
[0022] 当所述确定的通讯通道的条数为一条时,直接利用所述确定的通讯通道来发送所 述控制命令;当所述确定的通讯通道的条数为多条时,在所述确定的通讯通道中任意选择 一条通讯通道来发送所述控制命令。
[0023] 上述系统中,优选地,所述源控制器还用于:
[0024] 当所述确定的通讯通道的条数为多条时,在所述确定的通讯通道中,选择一条从 自身到所述目标控制器途径控制器数量最少的通讯通道来发送所述控制命令。
[0025] 上述系统中,优选地,该系统还包括中央转发设备,所述源控制器还用于:
[0026] 在所述源控制器利用确定的通讯通道来发送所述控制命令之前,所述源控制器将 所述控制命令发送至预设的中央转发设备,以使所述中央转发设备将所述控制命令转发至 所述目标控制器。
[0027] 以上本发明提供的一种存储设备控制器间的通讯方法及系统,源控制器参照预设 的通讯规则,确定从自身到控制命令的目标控制器的通讯通道,并利用确定的通讯通道来 发送所述控制命令;目的控制器(可能是中转控制器也可能就是目标控制器)接收所述控制 命令,对比自身标识和所述控制命令中的所述目标控制器标识,确定自身是否为所述目标 控制器,如果是,则执行与所述控制命令相对应的控制操作,如果否,则将自身作为所述源 控制器并发送所述控制命令。
[0028] 可见,在本发明中,在需要转发控制命令时由控制器(包括源控制器和中转控制 器)根据预设的通讯规则来确定相应的通讯通道,而非现有技术中根据硬件来确定相应的 通讯通道,从而使控制器间的通讯设计可以屏蔽硬件设计的不同,提高控制器间通讯的灵 活性,使控制器间的通讯更易于实现和维护。
【附图说明】
[0029] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据 提供的附图获得其他的附图。
[0030] 图1为本发明实施例提供的一种存储设备控制器间的通讯方法的流程图;
[0031] 图2为本发明实施例提供的四控制器环形连接的示意图;
[0032] 图3为本发明实施例提供的四控制器两两连接的示意图;
[0033] 图4为本发明实施例提供的控制器通过中央转发设备连接的示意图;
[0034] 图5为本发明实施例提供的一种存储设备控制器间的通讯系统的结构框图示意 图。
【具体实施方式】
[0035]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0036] 本发明的核心是提供一种存储设备控制器间的通讯方法及系统,以实现易于实现 和维护的目的。
[0037] 为了使本技术领域的人员更好地理解本发明方案,下面结合附图和【具体实施方式】 对本发明作进一步的详细说明。
[0038] 参考图1,图1示出了本发明实施例提供的一种存储设备控制器间的通讯方法的流 程图,该方法具体可以包括如下步骤:
[0039] 步骤S100、源控制器参照预设的通讯规则,确定从自身到控制命令的目标控制器 的通讯通道,并利用确定的通讯通道来发送控制命令。
[0040] 在本发明中,对于多个存储设备控制器(简称控制器)来说,最初生成并发送控制 命令的控制器称为源控制器;解析该控制命令并执行相应的控制操作的控制器称为目标控 制器;在控制命令从源控制器到目标控制器之间所涉及到的起到转发作用的控制器称为目 的控制器。可以理解的是,目标控制器即为控制命令在发送过程中最终的目的控制器。
[0041 ]对于控制命令,其可以包括源控制器标识和目标控制器标识,这样,接收到该控制 命令的控制器就能知道谁是源控制器,谁是目标控制器。当然,可以理解的是控制命令中还 需要包含相应的控制信息,这个控制信息可以让目标控制器知道自己应该执行那些控制操 作。
[0042] 对于预设的通讯规则,其中包含了任一控制器到其它控制器的通讯通道信息,这 些通讯通道信息可以根据硬件设计的不同而进行相适应的变更;在实际应用过程中,这个 通讯规则可以设置与各个控制器中,以便各控制器可以迅速利用该规则确定相应的通讯通 道。
[0043] 当确定的通讯通道的条数为一条时,直接利用确定的通讯通道来发送控制命令; 当确定的通讯通道的条数为多条时,在确定的通讯通道中任意选择一条通讯通道来发送控 制命令。进一步地,为了保证控制命令能快速到达目标控制器,当确定的通讯通道的条数为 多条时,还可以在确定的通讯通道中,选择一条从自身到目标控制器途径控制器数量最少 的通讯通道来发送控制命令。
[0044] 步骤S101、目的控制器接收控制命令,对比自身标识和控制命令中的目标控制器 标识,确定自身是否为目标控制器,如果是,则执行与控制命令相对应的控制操作,如果否, 则将自身作为源控制器并发送控制命令。
[0045] 从上述目标控制器与目的控制器的定义可以看出,这里的目的控制器可能是仅起 到中转控制命令作用的中转控制器,也可能就是需要执行与控制命令相对应的控制操作的 目标控制器。当目的控制器接收到一个控制命令时,其先根据该控制命令中的目标控制器 标识来判断自己是否就是目标控制器,如果是就对控制命令进行解析,得到控制信息,并执 行与该控制信息相对应的控制操作;可以理解的是,如果判定出自己并不是目标控制器,就 需要将该控制命令转发至目标控制器,这时,该目标控制器就可以暂时充当源控制器的角 色,即执行上述步骤S100所涉及的方案,即参照预设的通讯规则,确定从自身到目标控制器 的通讯通道,并利用确定的通讯通道来转发控制命令。直到所述控制命令到达目标控制器。
[0046] 另外,在实际应用中,各控制器之间的控制命令还可以通过一个专门用于转发的 设备来实现,这里将其称为中央转发设备。具体地,预先为各控制器配置一个中央转发设 备,各控制器可以将控制命令发送至这个中央转发设备,该中央转发设备可以从控制命令 中知道谁是目标控制器,并将控制命令发送至相应的目标控制器,即在源控制器生成控制 命令时,将控制命令发送至预设的中央转发设备,以使中央转发设备将控制命令转发至目 标控制器。
[0047] 可见,在本发明中,在需要转发控制命令时由控制器(包括源控制器和中转控制 器)根据预设的通讯规则来确定相应的通讯通道,而非现有技术中根据硬件来确定相应的 通讯通道,从而使控制器间的通讯设计可以屏蔽硬件设计的不同,提高控制器间通讯的灵 活性,使控制器间的通讯更易于实现和维护。
[0048]基于上述本发明实施例所公开的技术方案,在本发明另一实施例中,以两种常用 的控制器间的连接方式,对通讯规则的具体设计进行举例说明:
[0049] 图2示出了四控制器环形连接的示意图,其中,四个控制器包括控制器1、控制器2、 控制器3和控制器4,每个控制器均有2个通讯通道(也称通讯链路),标记为1和2。表1为与该 环形连接对应的通讯规则。
[0050] 表1四控制器环形连接对应的通讯规则
[0051]
[0052]
[0053] 其中,当前控制器标识为源控制器的标识或者是中转控制器的标识。以源控制器 为控制器1、目标控制器为控制器4为例,刚开始,源控制器作为通讯发起者,其作为当前控 制器,根据当前控制器标识为1且目标控制器标识为4,确定可使用的通讯链路标识为1和2, 也就是说,其可以任选一个通讯链路进行控制命令的发送,假如选定通讯链路1,则其将通 过通讯链路1将控制命令发送出去,控制指令携带目标控制器标识4;显然,此时的目的控制 器为控制器2,控制器2接收到控制器1发送的控制指令,通过了解到目标控制器标识为4知 道自己不是目标控制器,这时,控制器2为当前控制器,即当前控制器标识为2且目标控制器 标识为4,以此确定可使用的通讯链路标识为2,进而控制器2将控制命令通过通讯链路2将 发送出去;此时的目的控制器为控制器4,显然,其正好是目标控制器,控制器4会对控制命 令进行解析并执行相应的控制操作。
[0054]对于其它例子的实现方案,请参照上述实现过程,本发明在此不再赘述。
[0055] 图3示出了四控制器两两连接的示意图,其中,每个控制器均有3个通讯链路,标记 为1,2,3。表2为四控制器两两连接对应的通讯规则。
[0056] 表2四控制器两两连接对应的通讯规则
[0057]

[0058] 对于采用中央转发设备的实现过程,举例参考图4示出的控制器通过中央转发设 备连接的示意图,其中每个控制器只有1个通讯链路,标记为1,转发设备可认为为控制器5, 拥有通讯链路1,2,3,4。表3为通过中央转发设备连接对应的通讯规则。
[0059] 表3通过中央转发设备连接对应的通讯规则
[0060]
L0062」基于上还本友明买施例提供的仔储设爸捏制器丨曰」的通讯万法,本友明买施例处提 供了一种存储设备控制器间的通讯系统,参考图5,该系统500可以包括如下内容:
[0063] 源控制器501,用于参照预设的通讯规则,确定从自身到控制命令的目标控制器的 通讯通道,并利用确定的通讯通道来发送控制命令;
[0064]其中,控制命令包括目标控制器标识,预设的通讯规则包含任一控制器到其它控 制器的通讯通道信息;
[0065]目的控制器502,用于接收控制命令,对比自身标识和控制命令中的目标控制器标 识,确定自身是否为目标控制器,如果是,则执行与控制命令相对应的控制操作,如果否,则 将自身作为源控制器并发送控制命令。
[0066]本发明中,源控制器501用于利用确定的通讯通道来发送控制命令,具体可以用 于:当确定的通讯通道的条数为一条时,直接利用确定的通讯通道来发送控制命令;当确定 的通讯通道的条数为多条时,在确定的通讯通道中任意选择一条通讯通道来发送控制命 令。
[0067]另外,源控制器501具体还可以用于:当确定的通讯通道的条数为多条时,在确定 的通讯通道中,选择一条从自身到目标控制器途径控制器数量最少的通讯通道来发送控制 命令。
[0068]本发明中,该系统500还可以包括中央转发设备,基于此,源控制器501具体还可以 用于:在源控制器利用确定的通讯通道来发送控制命令之前,源控制器将控制命令发送至 预设的中央转发设备,以使中央转发设备将控制命令转发至目标控制器。
[0069]需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重 点说明的都是与其它实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。 对于系统类实施例而言,由于其与方法实施例基本相似,所以描述得比较简单,相关之处参 见方法实施例的部分说明即可。
[0070]以上对本发明所提供的一种存储设备控制器间的通讯方法及系统进行了详细介 绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只 是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员 来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修 饰也落入本发明权利要求的保护范围内。
【主权项】
1. 一种存储设备控制器间的通讯方法,其特征在于,包括: 源控制器参照预设的通讯规则,确定从自身到控制命令的目标控制器的通讯通道,并 利用确定的通讯通道来发送所述控制命令; 其中,所述控制命令包括目标控制器标识,所述预设的通讯规则包含任一控制器到其 它控制器的通讯通道信息; 目的控制器接收所述控制命令,对比自身标识和所述控制命令中的所述目标控制器标 识,确定自身是否为所述目标控制器,如果是,则执行与所述控制命令相对应的控制操作, 如果否,则将自身作为所述源控制器并发送所述控制命令。2. 如权利要求1所述的方法,其特征在于,所述源控制器利用确定的通讯通道来发送所 述控制命令,包括: 当所述确定的通讯通道的条数为一条时,直接利用所述确定的通讯通道来发送所述控 制命令; 当所述确定的通讯通道的条数为多条时,在所述确定的通讯通道中任意选择一条通讯 通道来发送所述控制命令。3. 如权利要求2所述的方法,其特征在于,当所述确定的通讯通道的条数为多条时,还 包括: 在所述确定的通讯通道中,选择一条从自身到所述目标控制器途径控制器数量最少的 通讯通道来发送所述控制命令。4. 如权利要求1至3任意一项所述的方法,其特征在于,在所述源控制器利用确定的通 讯通道来发送所述控制命令之前,还包括: 所述源控制器将所述控制命令发送至预设的中央转发设备,以使所述中央转发设备将 所述控制命令转发至所述目标控制器。5. -种存储设备控制器间的通讯系统,其特征在于,包括: 源控制器,用于参照预设的通讯规则,确定从自身到控制命令的目标控制器的通讯通 道,并利用确定的通讯通道来发送所述控制命令; 其中,所述控制命令包括目标控制器标识,所述预设的通讯规则包含任一控制器到其 它控制器的通讯通道信息; 目的控制器,用于接收所述控制命令,对比自身标识和所述控制命令中的所述目标控 制器标识,确定自身是否为所述目标控制器,如果是,则执行与所述控制命令相对应的控制 操作,如果否,则将自身作为所述源控制器并发送所述控制命令。6. 如权利要求5所述的系统,其特征在于,所述源控制器用于利用确定的通讯通道来发 送所述控制命令,具体用于: 当所述确定的通讯通道的条数为一条时,直接利用所述确定的通讯通道来发送所述控 制命令;当所述确定的通讯通道的条数为多条时,在所述确定的通讯通道中任意选择一条 通讯通道来发送所述控制命令。7. 如权利要求6所述的系统,其特征在于,所述源控制器还用于: 当所述确定的通讯通道的条数为多条时,在所述确定的通讯通道中,选择一条从自身 到所述目标控制器途径控制器数量最少的通讯通道来发送所述控制命令。8. 如权利要求5至7任意一项所述的系统,其特征在于,该系统还包括中央转发设备,所 述源控制器还用于: 在所述源控制器利用确定的通讯通道来发送所述控制命令之前,所述源控制器将所述 控制命令发送至预设的中央转发设备,以使所述中央转发设备将所述控制命令转发至所述 目标控制器。
【文档编号】G06F13/16GK105975410SQ201610270522
【公开日】2016年9月28日
【申请日】2016年4月27日
【发明人】陈思聪, 陈良华, 杜彦魁
【申请人】浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1