调度方法及装置与流程

文档序号:14993502发布日期:2018-07-20 23:01阅读:146来源:国知局

本发明涉及网络技术领域,尤其涉及一种调度方法及装置。



背景技术:

随着网络的快速发展,应用业务类型的日益丰富,传统网络模式已经很难满足网络发展的需求,故而软件定义网络(英文:softwaredefinednetwork,简称:sdn)越来越受重视。sdn技术被广泛应用于各个领域及各种用户实际网络中。

sdn控制器可以根据数据流的约束条件、传输数据流的当前路径以及网络拓扑中每段链路的传输质量和带宽占用情况,动态的为数据流选择传输路径,并实时为数据流更新传输路径,以保证数据流可以优先在符合约束条件的路径上传输。

由于sdn控制器在对路径调度时,需要考虑到每段链路带宽的占用情况,若sdn控制器并发的对多数据流的路径进行同时调度会导致资源占用的混乱问题。所以,在现有路径调度方案中,sdn控制器往往采用一种顺序执行的路径调度方式,即确定现有用于传输业务数据的路径是否符合传输策略;在不符合传输策略的情况下,重新确定用于传输业务数据的路径,下发该路径至网络设备,并在下发路径后根据该下发的路径更新网络的带宽占用信息。

但是,由于sdn控制器向网络设备下发路径时,需要实时关注路径下发的结果。即,sdn控制器根据网络设备进行路径下发的结果,再执行对路径的重计算、重下发以及对下一路径的计算、下发过程。因此,在数据流的路径调整过程中,sdn控制器下发路径耗时比较多,也导致sdn控制器的调度效率较低。



技术实现要素:

有鉴于此,本发明提出了一种调度方法及装置,以能够提高sdn控制器对路径调整过程中的调度效率以及调度精度。

在第一方面,本发明提供了一种调度方法,所述方法包括:

当每次确定出用于传输第一业务数据的预测路径时,依次向路径管理模块发送用于下发每条预测路径的路径下发请求消息;

接收所述路径管理模块发送的路径下发回应消息,所述路径下发回应消息为所述路径管理模块依次对每条所述预测路径下发后发送;

根据所述路径下发回应消息,确定用于传输所述第一业务数据的当前路径是否可用。

结合第一方面,在第一种可能的实现方式中,所述路径下发回应消息包括:路径下发结果以及路径标识;

所述根据所述路径下发回应消息,确定用于传输所述第一业务数据的当前路径是否可用,包括:

从第一路径存储区域中,获取用于传输所述第一业务数据的当前路径信息和当前预测路径信息;

在所述路径下发结果表征为路径下发失败时,若所述路径标识对应的预测路径与所述当前预测路径信息对应的当前预测路径一致,则从所述第一路径存储区域中删除所述当前预测路径信息;

保持所述当前路径为用于传输所述第一业务数据的路径。

结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述路径下发回应消息,确定用于传输所述第一业务数据的当前路径是否可用,还包括:

在所述路径下发结果表征为路径下发成功时,将所述路径标识对应的预测路径更新为用于传输所述第一业务数据的当前路径。

结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述方法还包括:

将更新后的所述当前路径的信息存储至第二路径存储区域。

在第二方面,本发明提供了一种调度方法,包括:

依次接收调度模块发送的多个路径下发请求消息,所述路径下发请求消息包括预测路径信息;

根据所述预测路径信息,建立所述预测路径信息指示的预测路径;

在任一所述预测路径信息指示的预测路径建立完成后,向所述调度模块发送路径下发回应消息,所述路径下发回应消息与通过所述预测路径信息指示建立所述预测路径的路径下发请求消息对应。

结合第二方面,在第一种可能的实现方式中,所述根据所述预测路径信息,建立所述预测路径信息指示的预测路径,包括:

从多个路径下发进程中,确定出用于建立所述预测路径的路径下发进程;

将所述路径下发请求消息分配至确定出的路径下发进程,以使所述路径下发进程根据所述路径下发请求消息建立所述预测路径信息指示的预测路径。

结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述从多个路径下发进程中,确定出用于建立所述预测路径的路径下发进程,包括:

获取构成所述预测路径的网络设备的标识信息;

根据所述标识信息,将所述预测路径信息分配至与所述标识信息存在对应关系的路径下发进程中。

在第三方面,本发明提供了一种调度装置,包括:

第一发送模块,用于当每次确定出用于传输第一业务数据的预测路径时,依次向路径管理模块发送用于下发每条预测路径的路径下发请求消息;

第一接收模块,用于接收所述路径管理模块发送的路径下发回应消息,所述路径下发回应消息为所述路径管理模块依次对所述每条预测路径下发后发送;

确定模块,用于根据所述路径下发回应消息,确定用于传输所述第一业务数据的当前路径是否可用。

结合第三方面,在第一种可能的实现方式中,所述路径下发回应消息包括:路径下发结果以及路径标识;所述确定模块包括:

获取子模块,用于从第一路径存储区域中,获取用于传输所述第一业务数据的当前路径信息和当前预测路径信息;

删除子模块,用于在所述路径下发结果表征为路径下发失败时,若所述路径标识对应的预测路径与所述当前预测路径信息对应的当前预测路径一致,则从所述第一路径存储区域中删除所述当前预测路径信息;

第一更新子模块,用于保持所述当前路径为用于传输所述第一业务数据的路径。

结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述确定模块还包括:

第二更新子模块,用于在所述路径下发结果表征为路径下发成功时,将所述路径标识对应的预测路径更新为用于传输所述第一业务数据的当前路径。

结合第三方面的第二种可能的实现方式,在第三种可能的实现方式中,所述装置还包括:

存储模块,用于将更新后的所述当前路径信息存储至第二路径存储区域。

在第四方面,本发明提供了一种调度装置,包括:

第二接收模块,用于依次接收调度模块发送的多个路径下发请求消息,所述路径下发请求消息包括预测路径信息;

建立模块,用于根据所述预测路径信息,建立所述预测路径信息指示的预测路径;

第二发送模块,用于在任一所述预测路径信息指示的预测路径建立完成后,向所述调度模块发送路径下发回应消息,所述路径下发回应消息与通过所述预测路径信息指示建立所述预测路径的路径下发请求消息对应。

结合第四方面,在第一种可能的实现方式中,所述建立模块包括:

第一确定子模块,用于从多个路径下发进程中,确定出用于建立所述预测路径的路径下发进程;

分配子模块,用于将所述路径下发请求消息分配至确定出的路径下发进程,以使所述路径下发进程根据所述路径下发请求消息建立所述预测路径信息指示的预测路径。

结合第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一确定子模块还用于:

获取构成所述预测路径的网络设备的标识信息;

根据所述标识信息,将所述预测路径信息分配至与所述标识信息存在对应关系的路径下发进程中。

这样一来,调度模块可以在每次确定出用于传输第一业务数据的预测路径时,向路径管理模块下发针对预测路径的路径下发请求消息,以使得路径管理模块根据上述路径下发请求消息进行预测路径的下发。调度模块接收路径管理模块发送的路径下发回应消息,并根据路径下发回应消息确定用于传输第一业务数据的当前路径。

本发明实施例提供的调度方法通过调度模块进行路径调度,通过路径管理模块进行路径下发,实现路径调度流程及路径下发流程的分离,并发进行路径调度及路径下发,以提高路径调度效率。调度模块在向路径管理模块下发路径下发请求消息的同时,并行进行接收路径管理模块发送的路径下发回应消息,通过路径下发回应消息获知路径下发结果,并根据路径下发结果确定用于传输第一业务数据的当前路径,以使得sdn控制器中存储的用于传输第一业务数据的当前路径与网络设备实际转发第一业务数据的转发路径同步,因此能够提高sdn控制器的调度效率,并能够保证调度的精度。

根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。

图1示出根据本发明一实施例的一种调度方法的流程图;

图2示出根据本发明一实施例的一种调度方法的流程图;

图3示出根据本发明一实施例的一种调度方法的流程图;

图4示出根据本发明一实施例的一种调度方法的流程图;

图5示出根据本发明一实施例的一种调度方法的流程图;

图6示出根据本发明一实施例的一种调度装置的结构框图;

图7示出根据本发明一实施例的一种调度装置的结构框图;

图8示出根据本发明一实施例的一种调度装置的结构框图;

图9示出根据本发明一实施例的一种调度装置的结构框图;

图10是根据一示例性实施例示出的一种调度装置的硬件结构框图。

具体实施方式

以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。

本发明实施例提供的调度方法通过调度模块进行路径调度,通过路径管理模块进行路径下发,以实现路径调度流程及路径下发流程的分离。路径管理模块在路径下发完成后,可以向调度模块发送相应的路径下发回应消息,以使得调度模块通过路径下发回应消息获知路径下发结果,并根据路径下发结果确定用于传输第一业务数据的当前路径,由于调度模块可以获知路径下发结果,因此能够在保证调度可靠性的基础上,提高sdn控制器的调度效率。

图1示出根据本发明一实施例的一种调度方法的流程图。该方法可以应用于调度模块。可以理解的是,该调度模块可直接以功能模块的形式存在于sdn控制器中,或者,为用于实现路径调度方法的其他功能模块。如图1所示,该调度方法可以包括以下步骤:

步骤101、当每次确定出用于传输第一业务数据的预测路径时,依次向路径管理模块发送用于下发每条预测路径的路径下发请求消息。

调度模块为sdn控制器中用于为业务进行路径规划及调度的模块,路径管理模块为sdn控制器中用于执行路径下发的模块。

调度模块在用于传输第一业务数据的当前路径发生故障或者该当前路径不符合路径策略时,可以重新规划用于传输第一业务数据的当前路径。预测路径为调度模块重新规划的用于传输第一业务数据、且尚未下发至目标网络设备的路径。

举例来说,当前用于传输第一业务数据的路径为路径1。若此时,路径1不符合路径策略或者路径1发生故障,则调度模块重新确定用于传输第一业务数据的路径为路径2,在路径2下发成功之前,路径2即为用于传输第一业务数据的预测路径。

调度模块始终对网络状态及数据传输质量进行监测,并在用于传输第一业务数据的当前路径发生故障或者该当前路径不符合路径策略,导致业务数据传输质量不满足要求时,为业务重新规划用于传输业务数据的路径,将此路径作为预测路径。调度模块向路径管理模块下发针对该预测路径的路径下发请求消息,该路径下发请求消息用于指示路径管理模块下发上述预测路径。调度模块可以并发进行路径规划及下发路径下发请求消息的操作。

举例来说,调度模块在时刻1确定用于传输第一业务数据的预测路径为路径2后,向路径管理模块发送针对路径2的路径下发请求消息。调度模块在时刻2确定用于传输第一业务数据的预测路径为路径3后,向路径管理模块发送针对路径3的路径下发请求消息。

步骤102、接收所述路径管理模块发送的路径下发回应消息,所述路径下发回应消息为所述路径管理模块依次对所述每条预测路径下发后发送。

举例来说,路径管理模块接收调度模块发送的路径下发请求消息,并根据路径下发请求消息进行相应预测路径的下发。

举例来说,路径管理模块可以并发执行路径下发请求消息,即并发进行预测路径的下发。在预测路径的下发结束后,路径管理模块可以根据下发结果(路径下发成功或者路径下发失败)向调度模块发送针对路径下发请求消息的路径下发回应消息,路径下发回应消息可以用于通知调度模块对应的预测路径下发成功或者失败。

调度模块接收路径管理模块发送的路径下发回应消息,该路径下发回应消息可以为对应当前预测路径的路径下发请求消息的回应消息,或者该路径下发回应消息可以为对应当前预测路径之前下发的预测路径的路径下发请求消息的回应消息。

举例来说,调度模块在时刻1确定用于传输第一业务数据的预测路径为路径2,并向路径管理模块发送针对路径2的路径下发请求消息1;路径管理模块接收路径下发请求消息1后,开始执行路径2的下发,并在时刻2完成路径2的下发后,向调度模块发送对应路径下发请求消息1的路径下发回应消息。调度模块在时刻2接收到针对路径下发请求消息1的路径下发回应消息。

再如,调度模块在时刻1确定用于传输第一业务数据的预测路径为路径2后,向路径管理模块发送针对路径2的路径下发请求消息1;路径管理模块接收路径下发请求消息1后,开始执行路径2的下发。调度模块在时刻2确定用于传输第一业务数据的预测路径为路径3后,向路径管理模块发送针对路径3的路径下发请求消息2,此时路径管理模块仍在执行路径2的下发。路径管理模块在时刻3完成路径2的下发后,向调度模块发送对应路径下发请求消息1的路径下发回应消息,调度模块在时刻3接收到针对路径下发请求消息1的路径下发回应消息。

步骤103、根据所述路径下发回应消息确定用于传输所述第一业务数据的当前路径是否可用。

调度模块接收路径下发回应消息后,根据该路径下发回应消息确定对应的预测路径的下发结果,并根据下发结果确定用于传输第一业务数据的当前路径是否可用。

举例来说,用于传输第一业务数据的当前路径为路径1,调度模块先后依次向路径管理模块下发了针对路径2的路径下发请求消息1及针对路径3的路径下发请求消息2。路径管理模块依次接收并执行路径下发请求消息1和路径下发请求消息2,并在路径2下发结束后,向调度模块发送针对路径下发请求消息1的路径下发回应消息。

此时用于传输第一业务数据的当前路径为路径1,且当前预测路径为路径3,而调度模块接收的路径下发回应消息对应路径2,则调度模块根据路径2确定用于传输第一业务数据的当前路径。

例如:若路径下发回应消息指示路径2下发成功,则确定用于传输第一业务数据的当前路径不可用,重新确定用于传输第一业务数据的当前路径为路径2;若路径下发回应消息指示路径2下发失败,则确定用于传输第一业务数据的当前路径可用,用于传输第一业务数据的当前路径仍然为路径1。

这样一来,调度模块可以在每次确定出用于传输第一业务数据的预测路径时,向路径管理模块下发针对预测路径的路径下发请求消息,以使得路径管理模块根据上述路径下发请求消息进行预测路径的下发。调度模块接收路径管理模块发送的路径下发回应消息,并根据路径下发回应消息确定用于传输第一业务数据的当前路径。

本发明实施例提供的调度方法通过调度模块进行路径调度,通过路径管理模块进行路径下发,实现路径调度流程及路径下发流程的分离,并发进行路径调度及路径下发,以提高路径调度效率。调度模块在向路径管理模块下发路径下发请求消息的同时,并行进行接收路径管理模块发送的路径下发回应消息,通过路径下发回应消息获知路径下发结果,并根据路径下发结果确定用于传输第一业务数据的当前路径,以使得sdn控制器中存储的用于传输第一业务数据的当前路径与网络设备实际转发第一业务数据的转发路径同步,因此能够提高sdn控制器的调度效率,并能够保证调度的精度。

图2示出根据本发明一实施例的一种调度方法的流程图,其中,步骤201、及步骤202与上述步骤101、及步骤102相类似,本发明实施例在此不再赘述。

在一种可能的实现方式中,所述路径下发回应消息可以包括:路径下发结果以及路径标识,参照图2,上述方法可以包括以下步骤:

步骤201、当每次确定出用于传输第一业务数据的预测路径时,依次向路径管理模块发送用于下发每条预测路径的路径下发请求消息。

步骤202、接收所述路径管理模块发送的路径下发回应消息,所述路径下发回应消息为所述路径管理模块依次对所述每条预测路径下发后发送。

路径下发回应消息中可以包括路径下发结果及路径标识,其中,路径下发结果可以表征路径下发成功或者路径下发失败,路径标识为能够唯一标识一条路径的信息。

举例来说,路径标识可以为路径包括的节点信息,或者路径对应的时间戳等信息,调度模块根据路径标识确定路径下发回应消息对应的预测路径。

步骤203、从第一路径存储区域中,获取用于传输所述第一业务数据的当前路径信息和当前预测路径信息。

上述第一路径存储区域为用于记录用于传输第一业务数据的当前路径信息及当前预测路径信息的区域,举例来说,上述第一路径存储区域可以为数据库或者文件夹。调度模块在每次下发针对预测路径的路径下发请求消息后,在第一路径存储区域中记录下发的预测路径为当前预测路径,并记录当前预测路径信息。可以理解的是,当前预测路径信息可以包括构成当前预测路径的网络设备的标识、转发报文的出入接口及下一跳。调度模块接收路径下发回应消息后,响应于该路径下发回应信息,从第一路径存储区域中获取用于传输第一业务数据的当前路径信息和当前预测路径信息。

举例来说,当前用于传输第一业务数据的路径为路径1,调度模块在时刻1向路径管理模块下发针对路径2的路径下发消息,之后在时刻2向路径管理模块下发针对路径3的路径下发消息,此时用于传输第一业务数据的当前预测路径为路径3。

步骤204、在所述路径下发结果表征为路径下发失败时,若所述路径标识对应的预测路径与所述当前预测路径信息对应的当前预测路径一致,则从所述第一路径存储区域中删除所述当前预测路径信息。

在路径下发结果表征路径下发失败的情况下,调度模块确定路径标识对应的预测路径与当前用于传输第一业务数据的当前预测路径信息对应的当前预测路径是否一致。在路径标识对应的预测路径与当前用于传输第一业务数据的当前预测路径一致时,调度模块确定当前用于传输第一业务数据的当前预测路径下发失败,故可以从第一路径存储区域中删除该当前预测路径信息。

以上述示例为例,假设路径标识对应的当前预测路径为路径3,则调度模块可以确定路径3下发失败,由于当前预测路径为路径3,故调度模块可以从第一路径存储区域中删除当前预测路径3对应的当前预测路径信息。

步骤205、保持所述当前路径为用于传输所述第一业务数据的路径。

在路径下发结果表征路径下发失败时,调度模块保持用于传输第一业务数据的当前路径不变。

仍以上述示例为例,用于传输第一业务数据的当前路径为路径1,此时接收的路径下发回应消息表征路径3下发失败,则调度模块仍然保持当前路径为路径1。调度模块根据第一业务和路径1更新带宽信息,举例来说,调度模块在确定用于传输第一业务数据的预测路径,并下发针对该预测路径的路径下发请求消息后,根据第一业务和该预测路径更新带宽信息,例如:释放第一业务占用的带宽后,使第一业务的业务流量占用上述预测路径的带宽。在该预测路径下发失败后,调度模块释放第一业务占用的该预测路径的带宽,并使第一业务数据重新占用用于传输第一业务数据的当前路径的带宽。

实际上,调度模块在确定预测路径并下发该预测路径后,根据该预测路径更新带宽信息,以实现对下发的预测路径对网络带宽影响的预测。这样使sdn控制器具有更好的全局观,进而提高调度的有效性。在路径下发回应消息表征路径下发失败,且路径标识对应的预测路径与当前用于传输第一业务数据的当前预测路径一致,表示当前没有下发中的预测路径。调度模块根据用于传输第一业务数据的当前路径更新带宽信息,能够保证带宽占用的准确性,进而能够提高调度的有效性。

这样一来,调度模块可以并发进行路径调度,并根据路径下发结果确定当前路径,以在预测路径下发失败后保持当前路径不变。这样使得sdn控制器中存储的用于传输第一业务数据的当前路径与网络设备实际转发第一业务数据的转发路径同步,进而能够提高sdn控制器的调度效率,并能够保证调度的精度。

图3示出根据本发明一实施例的一种调度方法的流程图,其中,步骤301至步骤305与上述步骤201至步骤205相类似,本发明实施例在此不再赘述。在一种可能的实现方式中,上述方法还可以包括:

步骤301、当每次确定出用于传输第一业务数据的预测路径时,依次向路径管理模块发送用于下发每条预测路径的路径下发请求消息。

步骤302、接收所述路径管理模块发送的路径下发回应消息,所述路径下发回应消息为所述路径管理模块依次对所述每条预测路径下发后发送。

步骤303、从第一路径存储区域中,获取用于传输所述第一业务数据的当前路径信息和当前预测路径信息。

步骤304、在所述路径下发结果表征为路径下发失败时,若所述路径标识对应的预测路径与所述当前预测路径信息对应的当前预测路径一致,则从所述第一路径存储区域中删除所述当前预测路径信息。

步骤305、保持所述当前路径为用于传输所述第一业务数据的路径。

步骤306、在所述路径下发结果表征为路径下发成功时,将所述路径标识对应的预测路径更新为用于传输所述第一业务数据的当前路径。

在路径下发结果表征为路径下发成功的情况下,调度模块确定路径标识对应的预测路径与当前用于传输第一业务数据的当前预测路径信息对应的当前预测路径是否一致。在路径标识对应的预测路径与当前用于传输第一业务数据的当前预测路径一致时,调度模块确定当前用于传输第一业务数据的当前预测路径下发成功。故调度模块可以将当前用于传输第一业务数据的当前预测路径更新为当前用于传输第一业务数据的当前路径,并从第一路径存储区域中删除上述当前预测路径信息。

在路径标识对应的预测路径与当前用于传输第一业务数据的当前预测路径信息对应的当前预测路径不一致时,调度模块确定该路径标识对应的预测路径不是最新的预测路径,而是当前用于传输第一业务数据的当前预测路径之前下发的预测路径。故调度模块可以将上述路径标识对应的预测路径更新为用于传输第一业务数据的当前路径,并在接收到下一路径下发回应消息时,根据下一路径下发回应消息更新用于传输第一业务数据的当前路径。

仍以上述示例为例,假设路径标识对应的预测路径为路径3,则调度模块可以确定路径3下发成功。由于当前预测路径为路径3,故调度模块可以将用于传输第一业务数据的当前路径由路径1更新为路径3,并从第一路径存储区域中删除当前预测路径信息;或者,上述路径标识对应的预测路径为路径2,则调度模块可以确定路径2下发成功,并将用于传输第一业务数据的当前路径由路径1更新为路径2。

在一种示例中,调度模块在确定用于传输第一业务数据的预测路径时,向路径管理模块发送用于下发该预测路径的路径下发请求消息,该路径下发请求消息中可以包括:第一业务标识信息、预测路径信息及时间戳信息,第一业务标识信息为能够标识第一业务数据的标识信息,时间戳信息为预测路径的确定时间。路径管理模块在该预测路径下发结束后,向调度模块发送路径下发回应消息,该路径下发回应消息中可以包括:第一业务标识信息、预测路径信息、时间戳信息及路径下发结果。

调度模块路径下发回应消息后,可以根据第一业务标识信息确定该路径下发回应消息对应的第一业务,在路径下发回应消息中的时间戳信息与下发针对第一业务的上述预测路径的时间戳信息一致时,确定该路径下发回应消息为上述预测路径对应的路径下发请求消息的回应消息,根据路径下发结果确定预测路径下发成功或者下发失败,进而确定用于传输第一业务数据的当前路径是否可用,在当前路径不可用时,根据路径下发回应消息重新确定用于传输第一业务数据的当前路径。

可选地,在一种可能的实现方式中,上述方法还可以包括:

将更新后的所述当前路径的当前路径信息存储至第二路径存储区域。

调度模块在根据路径下发回应消息更新了用于传输第一业务数据的当前路径后,可以将更新后的当前路径信息存储至第二路径存储区域。

上述第二路径存储区域用于存储业务与用于传输该业务对应的业务数据的路径的对应关系。

这样一来,在sdn控制器重启或者进行主备机切换后,调度模块可以从上述第二路径存储区域确定用于传输第一业务数据的当前路径信息,进而根据当前路径信息确定用于传输第一业务数据的当前路径;或者,在sdn控制器重启或者进行主备机切换后,可以向路径管理模块下发路径查询信息,以查询用于传输第一业务数据的当前路径。在查询失败时,调度模块可以从上述第二路径存储区域确定用于传输第一业务数据的当前路径信息,进而根据当前路径信息确定用于传输第一业务数据的当前路径。

因此,调度模块可以并发进行路径调度,并根据路径下发结果确定当前路径,以在预测路径下发失败后保持用于传输第一业务数据的当前路径不变。在预测路径下发成功后更新当前路径,以使得sdn控制器中存储的用于传输第一业务数据的当前路径与网络设备实际转发第一业务数据的转发路径同步,进而能够提高sdn控制器的调度效率,并能够保证调度的精度。

可选地,在一种可能的实现方式中,上述方法还可以包括:

调度模块在检测到针对所述第一业务数据的查询操作时,获取对应的查询信息;

调度模块根据所述查询信息,确定所述第一业务数据的当前路径、和/或当前预测路径,并在显示界面上显示所述第一业务数据的当前路径、和/或当前预测路径。

针对第一业务数据的查询操作可以为用户通过命令行或者触发查询控件等操作进行的针对用于传输第一业务数据的路径的查询操作。

举例来说,调度模块在检测到针对第一业务数据的查询操作后,获取用于传输第一业务数据的当前路径信息及当前预测路径信息,并在显示界面上显示上述当前路径信息及当前预测路径信息,使用户可以直观的获知用于传输第一业务数据的路径的情况。

图4示出根据本发明一实施例的一种调度方法的流程图。该方法可以应用于路径管理模块,可以理解的是,该路径管理模块可直接以功能模块的形式存在与sdn控制器中,或者,为用于实现路径调度方法的其他功能模块。如图4所示,该路径调度方法可以包括以下步骤:

步骤401、依次接收调度模块发送的多个路径下发请求消息;其中,所述路径下发请求消息包括预测路径信息。

步骤402、根据所述预测路径信息,建立所述预测路径信息指示的预测路径。

步骤403、在任一所述预测路径信息指示的预测路径建立完成后,向所述调度模块发送路径下发回应消息,所述路径下发回应消息与通过所述预测路径信息指示建立所述预测路径的路径下发请求消息对应。

调度模块在每次确定用于传输第一业务数据的预测路径后,向路径管理模块发送针对该预测路径的路径下发请求消息,该路径下发请求消息中可以包括用于表征预测路径的预测路径信息。

路径管理模块依次接收调度模块发送的多个路径下发请求消息后,响应于上述路径下发请求消息,建立预测路径信息指示的预测路径。建立预测路径的过程实际上即为预测路径的下发过程,在预测路径建立完成后,对应路径下发结果为路径下发成功或者路径下发失败。

路径下发请求消息中包括预测路径信息,该预测路径信息包括构成预测路径的多个节点网络设备。

举例来说,路径管理模块可以确定每一个节点网络设备的下一跳网络设备,并向各个节点网络设备发送路径建立消息,该路径建立消息中携带节点网络设备的下一跳网络设备;或者,路径管理模块可以通过预测路径消息确定各个节点网络设备用于转发报文的转发流表,并向各个节点网络设备下发转发流表,以建立预测路径。

在任一路径下发请求对应的预测路径建立完成后,路径管理模块根据预测路径建立完成后对应的路径下发结果向调度模块发送路径下发回应消息,以指示预测路径下发成功或者预测路径下发失败。调度模块根据预测路径下发结果确定用于传输第一业务数据的当前路径是否可用,在当前路径可用时,维持当前路径,在当前路径不可用时,将预测路径更新为用于传输第一业务数据的当前路径,使得用于传输第一业务数据的当前路径与网络设备实际转发第一业务数据的转发路径同步。

在一种可能的实现方式中,路径管理模块依次接收了针对传输第一业务数据的路径下发请求消息1(针对预测路径1)及路径下发请求消息2(针对预测路径2)。此时路径管理模块的下发进程全部占用,路径下发请求消息1及路径下发请求消息2都尚未开始执行。由于调度模块在下发针对预测路径1的路径下发请求消息1后,下发了针对预测路径2的路径下发请求消息2,故可知当前符合传输第一业务数据的传输策略的路径为预测路径2。因此路径管理模块可以丢弃路径下发请求消息1,仅执行路径下发请求消息2对应的预测路径2的下发,提高路径管理模块的路径下发效率。

这样一来,路径管理模块接收调度模块发送的路径下发请求消息后,响应于该路径下发请求消息,建立路径下发请求消息对应的预测路径。在完成预测路径的建立后向调度模块发送路径下发回应消息,以通知调度模块预测路径下发成功或者预测路径下发失败。调度模块可以根据路径下发回应消息确定用于传输第一业务数据的当前路径。

本发明实施例提供的调度方法通过调度模块进行路径调度,通过路径管理模块进行路径下发,以实现路径调度流程及路径下发流程的分离,通过路径下发回应消息获知路径下发结果,并根据路径下发结果确定用于传输第一业务数据的当前路径,以使得sdn控制器中存储的用于传输第一业务数据的当前路径与网络设备实际转发第一业务数据的转发路径同步,因此能够提高sdn控制器的调度效率,并能够保证调度的精度。

图5示出根据本发明一实施例的一种调度方法的流程图,其中,步骤501与上述步骤401相类似,本发明在此不再赘述。

在一种可能的实现方式中,参照图5,上述方法可以包括以下步骤。

步骤501、依次接收调度模块发送的多个路径下发请求消息,所述路径下发请求消息包括预测路径信息。

步骤502、从多个路径下发进程中,确定出用于建立所述预测路径的路径下发进程。

步骤503、将所述路径下发请求消息分配至确定出的路径下发进程,以使所述路径下发进程根据所述路径下发请求消息建立所述预测路径信息指示的预测路径。

路径管理模块中存在多个用于建立预测路径的路径下发进程。路径管理模块接收路径下发请求消息后,可以在多个路径下发进程中按照预置规则或者随机指定一个路径下发进程作为建立预测路径信息指示的预测路径的路径下发进程。路径管理模块将预测路径信息分配给该确定的路径下发进程,以通过该路径下发进程建立该预测路径信息对应的预测路径。

举例来说,路径管理模块随机指定一个用于进行预测路径的建立处理的路径下发进程。路径管理模块中有n个路径下发进程,分别为路径下发进程1、路径下发进程2、……、路径下发进程n。路径管理模块接收路径下发请求消息1后,随机从上述n个路径下发进程中指定一个路径下发进程:假设指定路径下发进程2。路径管理模块将路径下发请求消息1对应的预测路径信息1分配给路径下发进程2,以使得路径下发进程2执行路径下发消息1中的预测路径信息1指示的预测路径的建立。

在路径下发请求消息1对应的预测路径信息所指示的预测路径1的建立过程中,路径管理模块依次接收到路径下发请求消息2和路径下发请求消息3,路径管理模块还可依次从n个路径下发进程中随机指定一个路径下发进程:假设依次指定路径下发进程3和路径下发进程n。则路径管理模块将路径下发请求消息2对应的预测路径信息2分配给路径下发进程3,将路径下发请求消息3对应的预测路径信息3分配给路径下发进程n,以使得路径下发进程3执行预测路径信息2指示的预测路径的建立,路径下发进程n执行预测路径信息3指示的预测路径的建立。

在完成路径下发请求消息1、路径下发请求消息2、路径下发请求消息3中任一预测路径信息指示的预测路径的建立后,路径管理模块向调度模块发送对应的路径下发回应消息。

或者,路径管理模块可以根据路径下发进程的占用情况分配上述路径下发请求消息对应的预测路径信息。举例来说,路径管理模块确定空闲路径下发进程,并将路径下发请求消息对应的预测路径信息分配给空闲路径下发进程;或者,在没有空闲下发进程时,路径管理模块确定执行任务相对少的路径下发进程,并将路径下发请求消息对应的预测路径信息分配给该路径下发进程。

在一种可能的实现方式中,上述从多个路径下发进程中,确定出用于建立所述预测路径的路径下发进程,可以包括:

获取构成预测路径的网络设备的标识信息。

根据所述标识信息,将预测路径信息分配至与标识信息存在对应关系的路径下发进程中。

网络设备的标识信息是能够唯一标识该网络设备的标识。举例来说,网络设备的标识信息为网络设备的id信息(例如:通用唯一识别码(英文:universallyuniqueidentifier,简称:uuid))。

路径管理模块对网络设备的标识信息进行散列(hash)计算,得到对应的hash计算结果。根据hash计算结果确定对应的路径下发进程,其中,每个路径下发进程均对应一个hash计算结果。

这样一来,路径管理模块接收调度模块发送的路径下发请求消息后,可以通过多个路径下发进程并发进行预测路径的建立,因此能够提高sdn控制器的路径下发效率,并且路径管理模块在完成预测路径的建立后向调度模块发送路径下发回应消息,以通知调度模块预测路径下发成功或者预测路径下发失败,使得调度模块可以根据路径下发回应消息确定用于传输第一业务数据的当前路径,能够使得sdn控制器中存储的用于传输第一业务数据的当前路径与网络设备实际转发第一业务数据的转发路径同步,因此能够提高sdn控制器的调度效率,并能够保证调度的精度。

图6示出根据本发明一实施例的一种调度装置的结构框图。该装置可以应用于调度模块。可以理解的是,该调度模块可直接以功能模块的形式存在与sdn控制器中,或者,为用于实现路径调度方法的其他功能模块。如图6所示,该调度装置可以包括:

第一发送模块601,可以用于当每次确定出用于传输第一业务数据的预测路径时,依次向路径管理模块发送用于下发每条预测路径的路径下发请求消息;

第一接收模块602,可以用于接收所述路径管理模块发送的路径下发回应消息,所述路径下发回应消息为所述路径管理模块依次对所述每条预测路径下发后发送;

确定模块603,可以用于根据所述路径下发回应消息,确定用于传输所述第一业务数据的当前路径是否可用。

图7示出根据本发明一实施例的一种调度装置的结构框图,其中第一发送模块701、第一接收模块702及确定模块703与上述实施例中第一发送模块601、第一接收模块602及确定模块703相类似,本发明实施例在此不再赘述。

在一种可能的实现方式中,参照图7,上述路径下发回应消息包括:路径下发结果以及路径标识;确定模块703可以包括:

获取子模块7031,可以用于从第一路径存储区域中,获取用于传输所述第一业务数据的当前路径信息和当前预测路径信息;

删除子模块7032,可以用于在所述路径下发结果表征为路径下发失败时,若所述路径标识对应的预测路径与所述当前预测路径信息对应的当前预测路径一致,则从所述第一路径存储区域中删除所述当前预测路径信息;

第一更新子模块7033,可以用于保持所述当前路径为用于传输所述第一业务数据的路径。

在一种可能的实现方式中,参照图7,确定模块703还可以包括:

第二更新子模块7034,可以用于在所述路径下发结果表征为路径下发成功时,将所述路径标识对应的预测路径更新为用于传输所述第一业务数据的当前路径。

在一种可能的实现方式中,参照图7,所述装置还可以包括:

存储模块704,可以用于将更新后的所述当前路径的当前路径信息存储至第二路径存储区域。

图8示出根据本发明一实施例的一种调度装置的结构框图。该装置可以应用于路径管理模块。可以理解的是,该路径管理模块可直接以功能模块的形式存在与sdn控制器中,或者,为用于实现路径调度方法的其他功能模块。如图8所示,该调度装置可以包括:

第二接收模块801,可以用于依次接收调度模块发送的多个路径下发请求消息,所述路径下发请求消息包括预测路径信息;

建立模块802,可以用于根据所述预测路径信息,建立所述预测路径信息指示的预测路径;

第二发送模块803,可以用于在任一所述预测路径信息指示的预测路径建立完成后,向所述调度模块发送路径下发回应消息,所述路径下发回应消息与通过所述预测路径信息指示建立所述预测路径的路径下发请求消息对应。

图9示出根据本发明一实施例的一种调度装置的结构框图,其中第二接收模块901、建立模块902及第二发送模块903,与上述实施例中第二接收模块801、建立模块802及第二发送模块803相类似,本发明在此不再赘述。

在一种可能的实现方式中,参照图9,上述建立模块902可以包括:

第一确定子模块9021,可以用于从多个路径下发进程中,确定出用于建立所述预测路径的路径下发进程;

分配子模块9022,可以用于将所述路径下发请求消息分配至确定出的路径下发进程,以使所述路径下发进程根据所述路径下发请求消息建立所述预测路径信息指示的预测路径。

在一种可能的实现方式中,上述第一确定子模块9021还可以用于:

获取构成所述预测路径的网络设备的标识信息;

根据所述标识信息,将所述预测路径信息分配至与所述标识信息存在对应关系的路径下发进程中。

相应地,图10是根据一示例性实施例示出的一种调度装置的硬件结构框图。在实际应用中,该装置可通过服务器实现。参照图10,该装置1000可包括处理器1001、存储有机器可执行指令的机器可读存储介质1002。处理器1001与机器可读存储介质1002可经由系统总线1003通信。并且,处理器1001通过读取机器可读存储介质1002中与调度方法逻辑对应的机器可执行指令以执行上文所述的调度方法。

本文中提到的机器可读存储介质1002可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:随机存取存储器(英文:radomaccessmemory,简称:ram)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

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