一种存储资源分配方法、装置及计算机可读介质与流程

文档序号:13882781阅读:261来源:国知局
一种存储资源分配方法、装置及计算机可读介质与流程

本发明涉及通讯技术领域,特别涉及一种存储资源分配方法、装置及计算机可读介质。



背景技术:

美国圣地亚哥超级计算中心开发的srb(storageresourcebroker),是一个基于c/s结构的中间件,它结合mcat(元数据目录)屏蔽了网络上多个存储设备或资源,在用户和存储介质之间形成虚拟代理层,为用户提供一个统一的访问接口。它把数据统一表示成目录树层次的结构,抽象了底层的存储设备如硬盘、磁带库或数据库等。srb主要侧重于解决如何对分布存放的大量科学数据进行有效访问的问题。

ibm公司开发的ibm虚拟引擎(svc)用于存储虚拟化的商用产品,采用模块化结构,可以把不同存储设备组成一个大型的存储池,其中的若干存储设备以一个统一逻辑设备存在,可以被系统中的所有服务器访问,防止出现存储设备的信息孤岛。可以做到共享不同厂家存储设备,实现统一管理、远程灾备、本地的快闪备份及在线数据迁移等功能,真正实现不同存储之间的块级别的共享。

美国伯克利大学的oceanstore项目的设计目标是实现一个可以容纳数十亿用户的广域数据存储网。整个存储网络是由存储池(或称为存储域)的节点在网络中连接而成,一个存储池包含一个或多个服务器。用户可以连接到一个或多个存储池。全局范围内的数据查找和资源定位都是通过存储池之间p2p的路由完成,数据可以随时随地复制。

现有的资源管理系统可以分成三种:集中式资源管理模式、分布式资源管理模式和层次式资源管理模式。集中式管理模式具有结构简单、易于管理、可以确保一致性和完整性等优点。但是,由于调度瓶颈问题,集中式资源管理很难用于分布式系统的资源管理。分布式资源管理系统具有很好的扩展性,但是难以获得其他域的状态,因此,整个系统的最佳调度性能存在问题。层次式资源管理模式集合了集中式和分布式资源调度模式的优点,解决了分布式系统资源管理的一些挑战性问题,例如,系统的自治性、异构环境和调度策略的扩展性等等。但是层次式资源管理模式更适合用于网格系统的资源管理,目前尚不能满足网络靶场实时灵活管理海量存储资源的需求。

网络靶场需要针对金融、工业控制、电力等行业需求,开展相应的测试评估、攻防演练、教育培训等多种功能,因此一方面相关数据等信息的应用直接导致了海量的存储资源需求,另一方面网络靶场为实现跨行业的各种大规模网络安全试验和攻防对抗试验的能力,使得网络资源的复用率大幅度升高,网络资源呈现高动态性。因此,突破网络靶场存储资源智能分配技术的研究十分必要,将大大提高靶场资源的利用率和资源配置的灵活性。



技术实现要素:

为了能够满足网络靶场实时灵活管理海量存储资源的需求,本发明提供了一种存储资源分配方法、装置及计算机可读介质。

本发明提供的存储资源分配方法,包括:初始分配模块根据任务的数量、及每项任务所需的存储资源的种类对系统中的存储资源进行分配,得到每项任务的每类存储资源所需的初始分配量,并分别为每项任务的每类存储资源分配第一代理模块;所述第一代理模块根据其对应的初始分配量计算实际分配量;综合分配模块根据所有第一代理模块中的实际分配量得到存储资源分配方案;第二代理模块根据所述存储资源分配方案计算存储资源利用率,根据所述存储资源利用率判断是否需要重新分配存储资源。

具体的,在本发明提供的存储资源分配方法中,根据所述存储资源利用率判断是否需要重新分配存储资源,包括:当所述存储资源利用率未达到预先设定的阈值时,向所述第一代理模块发送重新计算实际分配量的指令,直到存储资源利用率达到预先设定的阈值;当所述存储资源利用率达到预先设定的阈值时,则按照所述存储资源利用率对应的存储资源分配方案分配系统中的存储资源。

具体的,在本发明提供的存储资源分配方法中,所述第一代理模块根据其对应的初始分配量计算实际分配量,包括:获取所述第一代理模块对应的存储资源的初始分配量;获取所述第一代理模块对应的任务的执行情况;获取所述第一代理模块对应的存储资源符合的规则;根据所述存储资源的初始分配量、所述任务的执行情况按照所述存储资源符合的规则进行计算,得到所述第一代理模块对应的存储资源的实际分配量。

具体的,在本发明提供的存储资源分配方法中,所述第二代理模块根据所述存储资源分配方案计算存储资源利用率,包括:获取第二规则,所述第二规则为计算存储资源利用率使用的规则;根据所述存储资源分配方案按照所述第二规则进行计算,得到存储资源利用率。

本发明提供的存储资源分配装置,包括:初始分配模块、第一代理模块、综合分配模块、及第二代理模块:所述初始分配模块,用于根据任务的数量、及每项任务所需的存储资源的种类对系统中的存储资源进行分配,得到每项任务的每类存储资源所需的初始分配量,并分别为每项任务的每类存储资源分配第一代理模块;所述第一代理模块,用于根据其对应的初始分配量计算实际分配量;所述综合分配模块,用于所有第一代理模块中的实际分配量得到存储资源分配方案;所述第二代理模块,用于根据所述存储资源分配方案计算存储资源利用率,根据所述存储资源利用率判断是否需要重新分配存储资源。

具体的,在本发明提供的存储资源分配装置中,所述第二代理模块,具体用于:当所述存储资源利用率未达到预先设定的阈值时,向所述第一代理模块发送重新计算实际分配量的指令,直到存储资源利用率达到预先设定的阈值;当所述存储资源利用率达到预先设定的阈值时,则按照所述存储资源利用率对应的存储资源分配方案分配系统中的存储资源。

具体的,在本发明提供的存储资源分配装置中,,所述第一代理模块,具体用于:获取所述第一代理模块对应的存储资源的初始分配量;获取所述第一代理模块对应的任务的执行情况;获取所述第一代理模块对应的存储资源符合的规则;根据所述存储资源的初始分配量、所述任务的执行情况按照所述存储资源符合的规则进行计算,得到所述第一代理模块对应的存储资源的实际分配量。

具体的,在本发明提供的存储资源分配装置中,所述第二代理模块,具体用于:获取第二规则,所述第二规则为计算存储资源利用率使用的规则;根据所述存储资源分配方案按照所述第二规则进行计算,得到存储资源利用率。

具体的,在本发明提供的存储资源分配装置中,还包括规则库:所述规则库,用于存储所述第一代理模块对应的存储资源符合的规则,和/或所述第二规则。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有存储资源分配程序,所述存储资源分配程序被处理器执行时实现如上所述的存储资源分配方法的步骤。

本发明的有益效果如下:

本发明实施例提供的存储资源分配方法、装置及计算机可读介质,通过多个无智能的代理间的协作表现出系统的智能特性,各代理进行计算所依据的规则是不变的、简单的,但各代理依据简单规则进行协作则实现了群智涌现,实现了网络靶场存储资源的智能分配。

附图说明

图1是本发明方法实施例的存储资源分配方法的流程图;

图2为实例1的存储资源分配方法的流程示意图;

图3是本发明装置实施例的存储资源分配装置的结构示意图;

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

为了能够满足网络靶场实时灵活管理海量存储资源的需求,本发明提供了一种存储资源分配方法、装置及计算机可读介质,以下结合附图对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。

根据本发明的方法实施例,提供了一种存储资源分配方法,图1是本发明方法实施例的存储资源分配方法的流程图,如图1所示,本发明方法实施例的存储资源分配方法,包括以下步骤:

s101:初始分配模块根据任务的数量、及每项任务所需的存储资源的种类对系统中的存储资源进行分配,得到每项任务的每类存储资源所需的初始分配量,并分别为每项任务的每类存储资源分配第一代理模块。

s102:所述第一代理模块根据其对应的初始分配量计算实际分配量。

具体的,在本发明提供的存储资源分配方法中,所述第一代理模块根据其对应的初始分配量计算实际分配量,包括:获取所述第一代理模块对应的存储资源的初始分配量;获取所述第一代理模块对应的任务的执行情况;获取所述第一代理模块对应的存储资源符合的规则;根据所述存储资源的初始分配量、所述任务的执行情况按照所述存储资源符合的规则进行计算,得到所述第一代理模块对应的存储资源的实际分配量。

s103:综合分配模块根据所有第一代理模块中的实际分配量得到存储资源分配方案。

具体的,在本发明提供的存储资源分配方法中,所述第二代理模块根据所述存储资源分配方案计算存储资源利用率,包括:获取第二规则,所述第二规则为计算存储资源利用率使用的规则;根据所述存储资源分配方案按照所述第二规则进行计算,得到存储资源利用率。

s104:第二代理模块根据所述存储资源分配方案计算存储资源利用率,根据所述存储资源利用率判断是否需要重新分配存储资源。

具体的,在本发明提供的存储资源分配方法中,根据所述存储资源利用率判断是否需要重新分配存储资源,包括:当所述存储资源利用率未达到预先设定的阈值时,向所述第一代理模块发送重新计算实际分配量的指令,直到存储资源利用率达到预先设定的阈值;当所述存储资源利用率达到预先设定的阈值时,则按照所述存储资源利用率对应的存储资源分配方案分配系统中的存储资源。

为了更加详细的说明本发明方法实施例的存储资源分配方法,给出实例1。图2为实例1的存储资源分配方法的流程示意图,如图2所示,本发明提出的基于多智能体协作的存储资源分配方法包括下列步骤:

(1)多任务分解,以两任务a、b,所需存储资源两种为例,按所需存储资源类型将任务a所需存储资源定义为a1、a2,任务b所需存储资源定义为b1、b2;

(2)为存储资源a1分配代理agent_a1、a2分配代理agent_a2、b1分配代理agent_b1、b2分配代理agent_b2;各代理agent计算其所需存储资源。

(3)t0时刻存储资源池分配方案为a1、a2b1、b2。

(4)agent_c负责计算存储资利用率,并反馈给上层资源分配代理agent_a1、agent_a2、agent_b1、agent_b2重新计算。

(5)tn时刻存储资源池分配方案为a1’、a2’、b1’、b2’。

代理agent_c依据规则库对计算结果进行判决。资源池分配方更新频率可根据试验规模在更新频率和计算效率间取得平衡。

本发明将多智能体技术应用于网络存储资源分配,各代理agent依据规则库计算资源分配方案和资源利用效率,并根据计算结果对存储资源池进行重新分配。

与本发明的方法实施例相对应,提供了一种存储资源分配装置,图3是本发明装置实施例的存储资源分配装置的结构示意图,如图3所示,本发明装置实施例的存储资源分配装置,包括:初始分配模块30、第一代理模块32、综合分配模块34、及第二代理模块36:

所述初始分配模块30,用于根据任务的数量、及每项任务所需的存储资源的种类对系统中的存储资源进行分配,得到每项任务的每类存储资源所需的初始分配量,并分别为每项任务的每类存储资源分配第一代理模块32;所述第一代理模块32,用于根据其对应的初始分配量计算实际分配量;所述综合分配模块34,用于所有第一代理模块中的实际分配量得到存储资源分配方案;所述第二代理模块36,用于根据所述存储资源分配方案计算存储资源利用率,根据所述存储资源利用率判断是否需要重新分配存储资源。

具体的,在本发明提供的存储资源分配装置中,所述第二代理模块36,具体用于:当所述存储资源利用率未达到预先设定的阈值时,向所述第一代理模块发送重新计算实际分配量的指令,直到存储资源利用率达到预先设定的阈值;当所述存储资源利用率达到预先设定的阈值时,则按照所述存储资源利用率对应的存储资源分配方案分配系统中的存储资源。

具体的,在本发明提供的存储资源分配装置中,所述第一代理模块32,具体用于:获取所述第一代理模块对应的存储资源的初始分配量;获取所述第一代理模块对应的任务的执行情况;获取所述第一代理模块对应的存储资源符合的规则;根据所述存储资源的初始分配量、所述任务的执行情况按照所述存储资源符合的规则进行计算,得到所述第一代理模块对应的存储资源的实际分配量。

具体的,在本发明提供的存储资源分配装置中,所述第二代理模块36,具体用于:获取第二规则,所述第二规则为计算存储资源利用率使用的规则;根据所述存储资源分配方案按照所述第二规则进行计算,得到存储资源利用率。

具体的,在本发明提供的存储资源分配装置中,还包括规则库:所述规则库,用于存储所述第一代理模块32对应的存储资源符合的规则,和/或所述第二规则。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有存储资源分配程序,所述存储资源分配程序被处理器执行时实现如上所述的存储资源分配方法的步骤。

以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1