一种对使用受限资源的批量操作的调度方法和装置的制作方法

文档序号:7730238阅读:191来源:国知局
专利名称:一种对使用受限资源的批量操作的调度方法和装置的制作方法
技术领域
本发明涉及网络通信领域中的大批量消息的调度,特别涉及一种对使用受限资源的批量操作的调度方法和装置。
背景技术
在现有的网管系统中,可以对多个同类网元进行批量操作,对于大型网管系统来说,管理上千个网元设备也是有可能的。对于某些操作,消息简单,可以同时对数百个网元设备进行操作,利用这种网管系统是十分方便的。但是对于一些特殊的操作功能,可能需要使用一些额外的资源,而当资源有限时,就不能满足同时批量操作同样个数的网元设备了。例如,现有网管系统中的版本下载功能,是网元设备通过网管系统中的FTP(File TransferProtocol,文件传输协议)服务下载版本文件的方式进行的。这里FTP服务器支持的最大连接个数和下载时使用的网络带宽等资源都是有限的,不可能同时支持数百个网元设备同 时进行版本下载操作。同时,由于这种操作比较费时,它的执行又对其它简单的操作产生一定的影响。目前通用的调度策略只考虑了网元设备的处理能力,而没有考虑到网管系统的可利用资源。批量操作的消息通常在一次调度中,操作请求被全部发送。但是,对于类似网络连接数、网络带宽和CPU (Central Processing Unit,中央处理器)利用率等受限资源,不可能被无限制地使用,当对需要这些受限资源的消息进行如此的调度后,会导致超过资源能力范围的请求操作被执行,从而导致操作成功率降低。另外,目前通用的调度策略假定所有操作请求的执行时间都是大体相同的,而没有考虑到需要受限资源的消息可能会由于资源限制占用很长时间。对于操作失败的原因没有具体分析是真的由于网元设备问题导致的,还是由于网管系统资源受限导致的。对于这种需要使用受限资源又很耗时的消息进行批量操作的情况,目前普遍的做法是,在界面上加以限制,使得操作人员每次只能选择少量的网元批量操作。但是,如果这样的话,在实际的开局或升级场景中,上千个设备需要下载版本,而每次都需要操作人员值守,需要几百次的操作才能完成,这样做无疑效率是低下的。

发明内容
本发明的目的在于提供一种对使用受限资源的批量操作的调度方法和装置,用于解决系统内普通消息和受限资源消息同时存在时的调度问题。根据本发明的一个方面,提供了一种对使用受限资源的批量操作的调度方法,包括以下步骤请求接收器接收到网管客户端发送的包括网元标识的命令消息后,把命令消息发送至命令消息分发器;命令消息分发器把命令消息分配给对应的逻辑阅读器;逻辑阅读器判断命令消息是否为受限资源消息,若命令消息为受限资源消息,则逻辑阅读器为命令消息向资源令牌池申请资源令牌并在申请成功后把命令消息发送给命令消息调度器;命令消息调度器通过命令消息发送器把命令消息发送至对应的网元设备。优选的,受限资源消息是使用网络中有限资源的消息。优选的,命令消息分发器把命令消息分配给对应的逻辑阅读器,包括命令消息分发器根据网元标识得到与命令消息对应的逻辑阅读器;若逻辑阅读器中的消息存在受限资源消息,则命令消息分配失败,创建快速失败的结果并存储至操作结果存储池;若逻辑阅读器中的消息不存在受限资源消息,则把命令消息分配给该逻辑阅读 器。优选的,逻辑阅读器为命令消息向资源令牌池申请资源令牌,包括任务计时器预先设定定时时间;逻辑阅读器每隔定时时间为命令消息在资源令牌池中申请资源令牌;逻辑阅读器记录申请资源令牌失败次数,若失败次数超过预先固定次数,则申请失败,否则,申请成功。优选的,逻辑阅读器向资源令牌池为命令消息申请资源令牌,若申请失败,则不处理命令消息,创建操作超时的结果并存储至操作结果存储池。优选的,在命令消息分发器把命令消息分配给对应的逻辑阅读器之后,还包括逻辑阅读器判断所述命令消息是否为受限资源消息,若命令消息不是受限资源消息,则所述逻辑阅读器把所述命令消息发送给命令消息调度器;命令消息调度器通过命令消息发送器把命令消息发送至对应的网元设备。优选的,方法还包括操作结果处理器监听发送至网元设备的消息,若发送至网元设备的消息为受限资源消息,则操作结果处理器告知资源令牌池释放该消息占用的资源令牌。根据本发明的另一方面,提供了一种对使用受限资源的批量操作的调度装置,包括请求接收器,用于接收并发送网管客户端发送的包括网元标识的命令消息;命令消息分发器,用于接收命令消息,并把命令消息分配给对应的逻辑阅读器;逻辑阅读器,用于判断命令消息是否为受限资源消息,并当命令消息是受限资源消息时向资源令牌池申请资源令牌;资源令牌池,用于当命令消息为受限资源消息时为命令消息分配资源令牌并在申请成功后把命令消息发送给命令消息调度器;命令消息调度器,用于控制发送命令消息;命令消息发送器,用于把命令消息发送至对应的网元设备。优选的,受限资源消息是使用网络中有限资源的消息。优选的,装置还包括操作结果处理器,用于监听发送至网元设备的消息,若发送至网元设备的消息为受限资源消息,则操作结果处理器告知资源令牌池释放该消息占用的资源令牌。与现有技术相比较,本发明的有益效果在于本发明通过把网管系统中的多种命令消息按照是否使用受限资源的原则进行分类,对不同的命令消息采用不同的调度策略,实现了系统内的有限资源的动态管理。


图I是本发明提供的对使用受限资源的批量操作的调度方法的流程示意图;图2是本发明提供的对使用受限资源的批量操作的调度装置的框图;图3是本发明实施例提供的命令消息调度器的处理流程图;图4是本发明实施例提供的操作结果处理器的处理流程图;图5是本发明实施例提供的分发命令消息的工作示意图。
具体实施例方式以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。图I显示了本发明提供的对使用受限资源的批量操作的调度方法的流程示意,如图I所示步骤S101,请求接收器接收到网管客户端发送的包括网元标识的命令消息后,把命令消息发送至命令消息分发器。步骤S102,命令消息分发器把命令消息分配给对应的逻辑阅读器。命令消息分发器根据命令消息中的网元标识得到与命令消息对应的逻辑阅读器,若逻辑阅读器中的当前命令消息和命令消息队列中的消息存在受限资源消息,则命令消息分配失败,命令消息分发器不把命令消息分配给逻辑阅读器,命令消息调度器控制逻辑阅读器创建快速失败的结果并通过操作结果处理器存储至操作结果存储池;若逻辑阅读器中的当前命令消息和命令消息队列的消息不存在受限资源消息,则把命令消息分配给逻辑阅读器。其中,受限资源消息是使用网络中有限资源的消息。步骤S103,逻辑阅读器判断命令消息是否为受限资源消息,若命令消息为受限资源消息,则逻辑阅读器为命令消息向资源令牌池申请资源令牌并在申请成功后把命令消息发送给命令消息调度器,若命令消息为受限资源消息不是受限资源消息,则逻辑阅读器通过命令消息分发器把命令消息发送给命令消息调度器。其中,逻辑阅读器为命令消息向资源令牌池申请资源令牌的步骤如下任务计时器预先设定定时时间,逻辑阅读器每隔定时时间为命令消息在资源令牌池中申请资源令牌,逻辑阅读器记录申请资源令牌失败次数,若失败次数超过预先固定次数,则申请失败,否则,申请成功。若申请成功,则逻辑阅读器通过命令消息分发器把命令消息发送给命令消息调度器,若申请失败,则不处理命令消息,创建操作超时的结果并存储至操作结果存储池。步骤S104,命令消息调度器通过命令消息发送器把命令消息发送至对应的网元设备。此外,操作结果处理器监听发送至网元设备的消息,若发送至网元设备的消息为受限资源消息,则操作结果处理器告知资源令牌池释放该消息占用的资源令牌。其中,资源令牌池的令牌数量是固定的,若逻辑阅读器为命令消息向资源令牌池申请资源令牌时,当前正在处理的命令消息中是受限资源消息的数量若已达到该固定数量,则申请失败,否则,申请成功。操作结果处理器会把所有的操作结果发送至操作结果存储池,请求接收器根据网管客户端发送的操作结果请求消息从操作结果存储池中读取操作结果并发送给网管客户端。图2显示了本发明提供的对使用受限资源的批量操作的调度装置的框图,如图2所示,该装置包括网管客户端101、网管服务端111和网元设备112。网管客户端101 —方面用于组装包含网元标识和操作标识的命令消息给网管服务端111,另一方面网管客户端101定时向网管服务端111请求操作结果,并显示操作结果在图形界面上。网管服务端111用于处理来自网管客户端101和网元设备112的消息。网元设备112接收来自网管服务端111的命令消息,与网管系统相连,由网管系统进行操作管 理。 其中,网管服务端111包括请求接收器102,用于接收网管客户端101发送的包括网元标识的命令消息,以及接收网管客户端101发送的操作结果请求消息并返回给网管客户端101操作结果。命令消息分发器103,维护着网管系统中逻辑阅读器104的命令消息队列,用于将请求接收器102收到的批量命令消息分发到不同逻辑阅读器104的命令消息队列中。逻辑阅读器104,用于标识管理系统中的虚拟网元设备,对该设备的操作存储在内部的命令消息队列中。资源令牌池105,用于控制和管理系统内有限资源的使用。如,判断命令消息是否为受限资源消息,当命令消息是受限资源消息时向资源令牌池申请资源令牌。命令消息调度器106,用于调度命令消息,并启动命令消息发送器107。命令消息发送器107,用于将命令消息发送给网元设备112。操作结果处理器108,用于在产生不同类型的操作结果时,进行相应的处理并把操作结果发送给操作结果存储池109。同时,监听发送至网元设备的消息,若发送至网元设备的消息为受限资源消息,则告知资源令牌池105释放该消息占用的资源令牌。操作结果存储池109,用于存储命令消息的操作结果。任务计时器110,用于在逻辑阅读器104向资源令牌池105申请资源令牌时开始计时,如果到达超时时间后,就生成一个响应超时结果,并通过操作结果处理器108放入操作结果存储池109。下面对照图2对本发明的对使用受限资源的批量操作的调度方法进行详细说明步骤S201,请求接收器102接收到网管客户端101发送的命令消息列表后,将命令消息列表发送给命令消息分发器103。步骤S202,命令消息分发器103接收到请求接收器102发送的命令消息列表后,逐一解析出命令消息中包含的网元标识,根据网元标识将命令消息发送给对应的逻辑阅读器104。步骤S203,逻辑阅读器104接收到命令消息分发器103发送的命令消息后,将命令消息放到命令消息队列中,同时启动任务计时器110,开始计时。
步骤S204,任务计时器110启动后,计时开始,到达超时时间后,产生的操作结果交给操作结果处理器108进行逻辑处理。步骤S205,命令消息调度器106在系统启动时开始工作,定时检索命令消息分发器103中是否有需要发送的命令消息。步骤S206,命令消息分发器103循环遍历逻辑阅读器104的当前命令消息。步骤S207,逻辑阅读器104判断当前命令消息是否是受限资源消息,如果是则执行步骤S208,否则执行步骤S2089。步骤S208,逻辑阅读器104向资源令牌池105申请资源并取得资源令牌。

步骤S209,逻辑阅读器104将当前命令消息返回给命令消息分发器103。步骤S210,命令消息分发器103将所有逻辑阅读器104的命令消息返回给命令消息调度器106。步骤S211,命令消息调度器106调度逻辑阅读器104中的命令消息,并启动命令消息发送器107发送消息。步骤S212,命令消息发送器107接收到命令消息调度器106发送的命令消息,通过网络向网元设备112发送命令消息。步骤S213,操作结果处理器108在收到新产生的结果时,判断是否占用资源令牌,如果占用资源令牌则执行步骤S214,否则执行步骤S215。步骤S214,资源令牌池105释放该结果占用的资源令牌以便后续给其他申请者使用。步骤S215,操作结果处理器108将操作结果放入操作结果存储池109中。步骤S216,请求接收器102定时从操作存储池109中取出操作结果,返回给网管客户端101显示。图3显示了本发明实施例提供的命令消息调度器的处理流程,如图3所示步骤S301,请求接收器收到网管客户端发送命令消息后,流程开始。步骤S302,命令消息分发器根据命令消息取得逻辑阅读器标识,判断该逻辑阅读器的当前命令消息和命令消息队列中的消息是否已经存在受限资源消息,如果存在则执行步骤S315,否则执行步骤S303。步骤S303,命令消息分发器将命令消息加入到对应逻辑阅读器的命令消息队列中。步骤S304,命令消息分发器启动任务定时器,开始计时。步骤S305,命令消息调度器通过命令消息分发器循环调度逻辑阅读器内的当前命令消息。步骤S306,命令消息调度器判断当前调度到的消息是否是受限资源消息,如果是则执行步骤S307,否则执行步骤S309。步骤S307,命令消息调度器想资源令牌池申请资源令牌。步骤S308,资源令牌池根据当前系统内剩余的受限资源的数量,判断申请是否成功,如果是则执行步骤S309,否则执行步骤S312。步骤S309,该逻辑阅读器的申请资源令牌失败计数器清零。步骤S310,命令消息调度器启动命令消息发送器,发送命令消息。
步骤S311,命令消息调度器创建发送成功的结果,流程结束。步骤S312,如果申请资源令牌失败,该逻辑阅读器的申请资源令牌失败计数器加
Io步骤S313,命令消息调度器判断该逻辑阅读器的申请资源令牌失败次数是否超过限制,如果是则执行步骤S314,否则返回步骤S305,等待下一轮再次被调度。步骤S314,命令消息调度器创建操作超时的结果,流程结束。
步骤S315,命令消息调度器创建快速失败的结果,流程结束。图4显示了本发明实施例提供的操作结果处理器的处理流程,如图4所示步骤S401,操作结果处理器收到系统不同时机产生的不同类型的操作结果后,流程开始。步骤S402,操作结果处理器判断该操作结果是否是由于定时器到达时间点所产生的响应超时结果,如果是则执行步骤S403,否则执行步骤S407。步骤S403,操作结果处理器调用该结果对应的逻辑阅读器,判断此时定时器产生的超时结果对应的是否是该逻辑阅读器的当前命令消息,如果是则执行步骤S404,否则执行步骤S407。步骤S404,操作结果处理器判断该结果对应的操作请求是否是受限资源消息,如果是则执行步骤S405,否则执行步骤S407。步骤S405,操作结果处理器通过调用该结果对应的逻辑阅读器,判断此逻辑阅读器的申请资源令牌失败计数器的次数是否超过限制,如果没有超过限制则执行步骤S406,否则执行步骤S407。步骤S406,操作结果处理器通过调用该结果对应的逻辑阅读器,启动新的定时器任务,如果新的定时器任务到达时间点后,开始新的一轮循环处理操作结果,循环执行步骤S401。步骤S407,将操作结果放入操作结果存储池中,准备返回给网管客户端用于显示。步骤S408,操作结果处理器通过调用资源令牌池,判断本次结果是否占用了资源令牌,如果是则执行步骤S409,否则流程结束。步骤S409,资源令牌池释放本次结果占用的资源令牌,以备其他受限资源消息使用。图5显示了本发明实施例提供的分发命令消息的工作示意,如图5所示命令消息分发器103 :所有消息进入系统的入口,由其根据消息的网元标识分配给具体处理的逻辑阅读器104。逻辑阅读器104 :模拟真实的网元设备,与物理网元一一对应。负责管理和维护该网元上正在发送和将要发送的操作消息。其中包括两部分结构,一个是“当前命令消息”,一个是“命令消息队列”。命令消息队列逐一取出队头的消息,放在当前命令消息的结构中,用来标识该逻辑阅读器当前正在处理的命令消息。当产生了与当前命令消息对应的操作结果后,删除当前命令消息,再将命令消息队列的队头消息取出。资源令牌池105 :管理系统内的资源数量,提供申请令牌和释放令牌的功能。命令消息发送器107 :命令消息分发器103从逻辑阅读器104中取出的可执行操作的命令消息,通过调用命令消息发送器107发送给网元设备。
并且,本发明的逻辑阅读器在系统运行中所处的状态包括以下几种可能状态,其中逻辑阅读器104-b中的当前命令消息、逻辑阅读器104-c中的当前命令消息、逻辑阅读器104-d中的命令消息3是受限资源消息逻辑阅读器104-a :该逻辑阅读器的当前命令消息和命令消息队列中均无受限资源消息。命令消息分发器103调度消息时,直接将当前命令消息通过调用命令消息发送器107进行发送。另外,如果此时新产生了命令消息5,由于逻辑阅读器104-a的当前命令消息和命令消息队列中均无受限资源消息,并且命令消息队列未满,可以成功插入到命令消息队列中等待发送。逻辑阅读器104-b :该逻辑阅读器的当前命令消息是受限资源消息。命令消息分发器103调度消息时,首先到资源令牌池中申请令牌,如果申请成功,将当前命令消息通过调用命令消息发送器107进行发送。另外,如果此时新产生了命令消息5,由于逻辑阅读器104-b的当前命令消息是受限资源消息,此时返回快速失败的操作结果,提示操作人员“该网元正在执行耗时操作,请稍后再试”的提示,不再将此请求插入到命令消息队列中。
逻辑阅读器104-c :该逻辑阅读器的当前命令消息是受限资源消息。命令消息分发器103调度消息时,首先到资源令牌池中申请令牌,如果申请失败,不调用命令消息发送器107进行发送,而是等待下一次调度时重新申请令牌。另外,如果此时新产生了命令消息5,由于逻辑阅读器104-c的当前命令消息是受限资源消息,此时返回快速失败的操作结果,提示操作人员“该网元正在执行耗时操作,请稍后再试”的提示,不再将此请求插入到命令消息队列中。逻辑阅读器104-d :该逻辑阅读器的当前命令消息不是受限资源消息,但是命令消息队列中存在受限资源消息。命令消息分发器103调度消息时,直接将当前命令消息通过调用命令消息发送器进行发送。另外,如果此时新产生了命令消息5,由于逻辑阅读器104-d的命令消息队列中存在受限资源消息,此时返回快速失败的操作结果,提示操作人员“该网元正在执行耗时操作,请稍后再试”的提示,不再将此请求插入到命令消息队列中。综上所述,本发明具有以下技术效果本发明对多个同类网元的批量消息调度策略进行了改进,以操作需要使用的物理资源和时间资源多少为原则,将操作请求分为普通消息和受限资源消息两类,并提供了相应的调度策略上的调整。本发明中提出的“受限资源”的概念和“资源令牌”、“多段式定时器”等理论创新,解决了在实际应用中单次批量操作受限资源消息数量需人为控制、批量操作受限资源消息操作成功率低和普通消息受影响普遍超时的实际问题,并且细化了操作失败的结果类型,对于操作人员定位问题具有很好的易用性。尽管上文对本发明进行了详细说明,但是本发明不限于此,本领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。
权利要求
1.一种对使用受限资源的批量操作的调度方法,其特征在于,包括以下步骤 请求接收器接收到网管客户端发送的包括网元标识的命令消息后,把所述命令消息发送至命令消息分发器; 所述命令消息分发器把所述命令消息分配给对应的逻辑阅读器; 所述逻辑阅读器判断所述命令消息是否为受限资源消息,若所述命令消息为受限资源消息,则所述逻辑阅读器为所述命令消息向资源令牌池申请资源令牌并在申请成功后把所述命令消息发送给命令消息调度器;以及 所述命令消息调度器通过命令消息发送器把所述命令消息发送至对应的网元设备。
2.根据权利要求I所述的方法,其特征在于,所述受限资源消息是使用网络中有限资源的消息。
3.根据权利要求2所述的方法,其特征在于,所述命令消息分发器把所述命令消息分配给对应的逻辑阅读器,包括 所述命令消息分发器根据所述网元标识得到与所述命令消息对应的逻辑阅读器; 若所述逻辑阅读器中的消息存在受限资源消息,则命令消息分配失败,创建快速失败的结果并存储至操作结果存储池;以及 若所述逻辑阅读器中的消息不存在受限资源消息,则把所述命令消息分配给所述逻辑阅读器。
4.根据权利要求3所述的方法,其特征在于,所述逻辑阅读器为所述命令消息向资源令牌池申请资源令牌,包括 任务计时器预先设定定时时间; 所述逻辑阅读器每隔所述定时时间为所述命令消息在资源令牌池中申请资源令牌;以及 所述逻辑阅读器记录申请资源令牌失败次数,若失败次数超过预先固定次数,则申请失败,否则,申请成功。
5.根据权利要求4所述的方法,其特征在于,所述逻辑阅读器向资源令牌池为所述命令消息申请资源令牌,若申请失败,则不处理所述命令消息,创建操作超时的结果并存储至操作结果存储池。
6.根据权利要求5所述的方法,其特征在于,在所述命令消息分发器把命令消息分配给对应的逻辑阅读器之后,还包括 所述逻辑阅读器判断所述命令消息是否为受限资源消息,若所述命令消息不是受限资源消息,则所述逻辑阅读器把所述命令消息发送给命令消息调度器;以及 所述命令消息调度器通过命令消息发送器把所述命令消息发送至对应的网元设备。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括 操作结果处理器监听发送至网元设备的消息,若发送至网元设备的消息为受限资源消息,则操作结果处理器告知资源令牌池释放该消息占用的资源令牌。
8.一种对使用受限资源的批量操作的调度装置,其特征在于,包括 请求接收器,用于接收并发送网管客户端发送的包括网元标识的命令消息; 命令消息分发器,用于接收所述命令消息,并把所述命令消息分配给对应的逻辑阅读器;逻辑阅读器,用于判断所述命令消息是否为受限资源消息,并当所述命令消息是受限资源消息时向资源令牌池申请资源令牌; 资源令牌池,用于当所述命令消息为受限资源消息时为所述命令消息分配资源令牌并在申请成功后把所述命令消息发送给命令消息调度器; 命令消息调度器,用于控制发送所述命令消息;以及 命令消息发送器,用于把所述命令消息发送至对应的网元设备。
9.根据权利要求8所述的装置,其特征在于,所述受限资源消息是使用网络中有限资源的消息。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括 操作结果处理器,用于监听发送至网元设备的消息,若发送至网元设备的消息为受限资源消息,则操作结果处理器告知资源令牌池释放该消息占用的资源令牌。
全文摘要
本发明公开了一种对使用受限资源的批量操作的调度方法和装置,该方法包括请求接收器接收到网管客户端发送的包括网元标识的命令消息后,把命令消息发送至命令消息分发器;命令消息分发器把命令消息分配给对应的逻辑阅读器;逻辑阅读器判断命令消息是否为受限资源消息,若命令消息为受限资源消息,则逻辑阅读器为命令消息向资源令牌池申请资源令牌并在申请成功后把命令消息发送给命令消息调度器;命令消息调度器通过命令消息发送器把命令消息发送至对应的网元设备。本发明通过把网管系统中的多种命令消息按照是否使用受限资源的原则进行分类,对不同的命令消息采用不同的调度策略,实现了系统内的有限资源的动态管理。
文档编号H04L12/24GK102891806SQ20111020566
公开日2013年1月23日 申请日期2011年7月21日 优先权日2011年7月21日
发明者孟英 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1