一种网络管理***及方法
技术领域
本发明涉及通信领域,尤其涉及一种网络管理***及方法。
背景技术
现有的网络管理***,由一台服务器对多个网元设备进行任务的调度,在进行数据传输的过程中,通常需要分配线程给网元设备,以使一线程可以对应一定数量的网元设备,但是由于网元设备在数据传输时需要的时间不同,各个线程执行需要的时间即不相同,但是分配给每个线程的时间却较为相近,如果在前一线程在给定的时间内没有执行完毕,则下一线程将启动,从而造成线程死锁;相反的如果简单的将线程执行的时间加长,会导致下一线程等待的时间过程,造成资源的浪费。
发明内容
针对现有技术存在的问题,现提供了一种网络管理***及方法,能够提高数据传输的效率。
一种网络管理***,应用于服务器与多个网元设备传输数据的过程中,所述网络管理***包括:
获取模块,分别与各个所述网元设备连接,用以获取所述服务器分别与各个所述网元设备传输数据需要的时间信息;
分组模块,与所述获取模块连接,用以根据所述时间信息对多个所述网元设备分组;
分配模块,与所述分组模块连接,用以按照每组所述网元设备传输数据需要的时间分配各组所述网元设备对应线程的执行时间;
执行模块,与所述分配模块连接,根据所述执行时间执行所述线程。
优选的,所述分组模块进行分组时,使每组所述网元设备传输数据需要的时间之和小于等于一预设值,所述分配模块使每组所述网元设备对应的所述线程执行时间等于所述预设值。
优选的,所述获取模块定期获取所述服务器分别向各个所述网元设备传输数据需要的时间信息。
优选的,所述获取模块包括:
预分配单元,用以预分配初始化线程给各个所述网元设备。
优选的,所述获取模块还包括:
记录单元,与所述预分配单元连接,用以于执行所述初始化线程时记录各个所述网元设备传输数据需要的时间信息。
一种网络管理方法,包括:
步骤S1,获取一服务器分别与各个网元设备传输数据需要的时间信息;
步骤S2,根据所述时间信息对多个所述网元设备分组;
步骤S3,按照每组所述网元设备传输数据需要的时间分配各组所述网元设备对应线程的执行时间;
步骤S4,根据所述执行时间执行所述线程。
优选的,所述步骤S4之后还包括:
步骤S5,于一预设时间后,获取所述服务器分别向各个所述网元设备传输数据需要的时间信息。
优选的,所述步骤S2中具体包括:
根据所述时间信息对多个所述网元设备分组,其中,每组所述网元设备传输数据需要的时间之和小于等于一预设值,并且于所述步骤S3中使每组所述网元设备对应的所述线程的执行时间为所述预设值。
优选的,所述步骤S1中具体包括:
预分配初始化线程给各个所述网元设备。
优选的,所述步骤S1中具体包括:
步骤S12,于执行所述初始化线程时记录各个所述网元设备传输数据需要的时间信息。
上述技术方案的有益效果是:
上述技术方案能够按照网元设备传输数据需要的时间进行分组,并且每组网元设备分配的线程的执行时间与该组网元设备传输数据需要的时间对应,充分的利用每一条线程的时间,不仅能够避免线程死锁,而且提高了数据传输效率。
附图说明
图1-图2为本发明一种网络管理***的实施例的结构示意图;
图3为本发明一种网络管理方法的实施例的流程图。
具体实施方式
需要说明的是,在不冲突的情况下,下述技术方案,技术特征之间可以相互组合。
下面结合附图对本发明的具体实施方式作进一步的说明:
本实施例提供一种网络管理***,如图1所示,应用于服务器12与多个网元设备11传输数据的过程中,如图2所示,网络管理***包括:
获取模块1,分别与各个网元设备11连接,用以获取服务器12分别与各个网元设备11传输数据需要的时间信息;
分组模块2,与获取模块1连接,用以根据时间信息对多个网元设备11分组;
分配模块3,与分组模块2连接,用以按照每组网元设备11传输数据需要的时间分配各组网元设备11对应线程的执行时间;
执行模块4,与分配模块3连接,用以根据执行时间执行线程。
本实施中,在网元设备11较多的情况下,通过将各个网元设备11根据其数据传输时间进行分组,并且各组对应的线程的执行时间与其数据传输的时间相近或相同,保证一条线程执行完毕后,能够顺利的执行下一条线程,无需较长的等待时间,防止线程死锁的同时还提高了数据传输的效率。
本发明一个较佳的实施例中,分组模块2进行分组时,使每组网元设备11传输数据需要的时间之和小于等于一预设值,分配模块3使每组网元设备11对应的线程执行时间等于预设值。
本实施例中,每组网元设备11传输数据需要的时间之和只要不超过该预设值,这样就可以保证一线程的执行时间内,该线程对应的网元设备11与服务器12之间的数据传输完毕,但是当每组网元设备11传输数据需要的时间之和小于一预设值时,会存在线程执行的等待,所以作为优选的实施例,每组网元设备11传输数据需要的时间之和等于预设值,可以避免下一线程的执行等待。
现对本实施例每组网元设备11传输数据需要的时间之和等于预设值进行举例说明,首先分配线程,使得一条线程可以对应一个网元设备11,在首次传输数据时,记录下各个网元设备11传输信息需要的时间,即为时间信息,例如,各个网元设备11传输信息需要的总时间为120分钟。
之后,根据各个网元设备11需要的时间进行分组,通过分组可以使得每组的网元设备的数据传输时间之和可以相等,例如,多个网元设备11可以分为20组,那么每组的网元设备11的数据传输时间之和为6分钟,即后续给每组的网元设备11分配的线程的执行时间一样均为6分钟,此处的6分钟即为上述的预设值,这样就可以保证在6分钟内,该线程对应的网元设备与服务器之间的数据传输完毕,并且下一线程无需较多的等待时间,提高数据传输的利用率。需要说明的是,本实施例中的分组情况可以根据各个网元设备11传输信息需要的总时间等因素进行设定,只要能够使得每组的网元设备11的数据传输时间之和相同既可。
本发明一个较佳的实施例中,获取模块1定期获取服务器12分别向各个网元设备11传输数据需要的时间信息。
本发明一个较佳的实施例中,获取模块1包括:
预分配单元,用以预分配初始化线程给各个网元设备11。
本实施例中,由于服务器12与各个网元设备11第一次进行数据传输时无法知晓其数据传输时间,所以服务器12与网元设备11第一次进行数据传输时可以预分配一初始化线程,该初始化线程的执行时间可能与实际的数据传输时间相差较多,但是可由此知晓该网元设备11实际的数据传输时间,便于后续数据传输时进行参考,以对网元设备11进行分组。
本发明一个较佳的实施例中,获取模块1还包括:
记录单元,与预分配单元连接,用以于执行初始化线程时记录各个网元设备11传输数据需要的时间信息。
本实施例中,在执行初始化线程后,记录单元可以获取到各个网元设备11需要的数据传输时间,用于后续参考。
本实施例提供给了一种网络管理方法,如图3所示,包括:
步骤S1,获取一服务器分别与各个网元设备传输数据需要的时间信息;
步骤S2,根据时间信息对多个网元设备分组;
步骤S3,按照每组网元设备传输数据需要的时间分配各组网元设备对应线程的执行时间;
步骤S4,根据执行时间执行线程。
本发明一个较佳的实施例中,步骤S4之后还包括:
步骤S5,于一预设时间后,获取服务器分别向各个网元设备传输数据需要的时间信息。
本发明一个较佳的实施例中,步骤S2中具体包括:
根据时间信息对多个网元设备分组,其中,每组网元设备传输数据需要的时间之和小于等于一预设值,并且于步骤S3中使每组网元设备对应的线程的执行时间为预设值。
本发明一个较佳的实施例中,步骤S1中具体包括:
预分配初始化线程给各个网元设备。
本发明一个较佳的实施例中,步骤S1中具体包括:
步骤S12,于执行初始化线程时记录各个网元设备传输数据需要的时间信息。
现对上述实施例中每组网元设备传输数据需要的时间之和的情况进行举例说明,例如,首先分配线程,使得一条线程可以对应一定数量的网元设备,在首次传输数据时,记录下各个网元设备传输信息需要的时间,即为时间信息,之后,根据各个网元设备需要的时间进行分组,通过分组可以使得每组的网元设备的数据传输时间之和可以相等,之后给每组的网元设备分配线程,每条线程的执行时间一样,这样就可以保证一线程的执行时间内,该线程对应的网元设备与服务器之间的数据传输完毕,并且下一线程无需较多的等待时间,提高数据传输的利用率,此后可以每隔一段时间对网元设备的数据传输时间进行一次获取,再重新进行分组,由于网元设备需要的数据传输时间可能在动态的变化,所以定期的进行时间信息的获取,便于及时调整分组,保证数据传输的效率。
综上,上述技术方案能够按照网元设备传输数据需要的时间进行分组,并且每组网元设备分配的线程的执行时间与该组网元设备传输数据需要的时间对应,充分的利用每一条线程的时间,不仅能够避免线程死锁,而且提高了数据传输效率。
通过说明和附图,给出了具体实施方式的特定结构的典型实施例,基于本发明精神,还可作其他的转换。尽管上述发明提出了现有的较佳实施例,然而,这些内容并不作为局限。
对于本领域的技术人员而言,阅读上述说明后,各种变化和修正无疑将显而易见。因此,所附的权利要求书应看作是涵盖本发明的真实意图和范围的全部变化和修正。在权利要求书范围内任何和所有等价的范围与内容,都应认为仍属本发明的意图和范围内。