基于软件定义网络SDN的同步报文调度方法及装置与流程

文档序号:12131363阅读:304来源:国知局
基于软件定义网络SDN的同步报文调度方法及装置与流程

本发明涉及网络技术领域,具体涉及一种基于软件定义网络SDN的同步报文调度方法及装置。



背景技术:

网络时间同步协议都存在同步报文往返测距延时不对称问题,具体表现在:①同步报文在网络中交换节点时延的不确定性。同步报文在经过传输介质、中继器、交换机和路由器等网络交换设备产生了往返路径时延,在网络负载发生变化时,同步测距报文需要与其他类型的报文在网络交换设备缓存中一起排队,造成节点时延不稳定,甚至会发生冲突、丢包,这些都会影响假设前提的成立。②同步报文受在网络中往返传播路径的不确定性。同步报文经过网络交换节点时,自由选择路由使得同步测距报文往返路径不一致,也会使得测距同步不准确。

目前IEEE1588协议能提供最高的时间同步精度,而未来智能电网遵循的61850规约中对于时间同步问题,已经给出了使用IEEE1588解决方案,并将其引入电力行业形成了IEEE61588协议。

IEEE1588协议中针对延时不对称提出的改进措施,采用硬件支持方案,IEEE1588协议中引入边界时钟和透明时钟机制来减少经过复杂网络而引起时延抖动,都需要专门的硬件支持。IEEE1588协议提出之初,主要应用与本地网络的测控系统的时钟同步。IEEE1588v引入边界时钟与同步终端节点之间实现逐级同步,减少了同步报文穿越造成的延时抖动,边界时钟还用于划分同步子域和连接底层通信技术不同的域,但这样容易产生时间误差的累计。它的第二个版本IEEE1588v2在v1版本基础上额外引入透明时钟则是通过测量同步报文的驻留时间(同步报文穿过透明时钟所需的时间)以及两个透明时钟间对应端口之间的传输时延,写入Fol low_Up相应字段传递给从时钟完成修正。目前基于IEEE1588协议软件算法改进研究主要是将非对称链路时延认为是一种干扰噪声,设计相应的滤波算法;而采用固定时延思想的文章也都是在有硬件TC设备支持下才能实现。



技术实现要素:

因此,本发明实施例要解决的技术问题在于克服现有技术中同步报文往返测距延时不对称的缺陷。

为此,本发明实施例提供了如下技术方案:

本发明实施例提供了一种基于软件定义网络SDN的同步报文调度方法,应用于SDN控制器,所述同步报文调度方法包括如下步骤:获取同步报文传播路径;选择所述同步报文传输路径中的最大时延值;根据所述最大时延值为同步报文分配在各个网络节点的等待时延。

可选地,根据所述最大时延值为同步报文分配在各个网络节点的等待时延之后,还包括:获取所述同步报文在当前网络节点Ni的实际调度时间;当所述同步报文在当前网络节点Ni的实际调度时间不等于等待时延时,重新为所述同步报文分配在所述当前网络节点Ni的下跳网络节点的等待时延;其中,i为自然数。

可选地,重新为所述同步报文分配在所述当前网络节点Ni的下跳网络节点的等待时延包括:当所述同步报文在当前网络节点Ni的实际调度时间大于等待时延时,减少所述同步报文在所述当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为所述同步报文在所述当前网络节点Ni的实际调度时间与所述等待时延的差值,tΔi+n′为所述同步报文在所述当前网络节点Ni的下n′跳网络节点减少的等待时延。

可选地,重新为所述同步报文分配在所述当前网络节点Ni的下跳网络节点的等待时延包括:当所述同步报文在当前网络节点Ni的实际调度时间小于等待时延时,增加所述同步报文在所述当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为所述等待时延与所述同步报文在所述当前网络节点Ni的实际调度时间的差值,tΔi+n′为所述同步报文在所述当前网络节点Ni的下n′跳网络节点增加的等待时延。

可选地,所述方法还包括:在的情况下,丢弃所述同步报文;其中,Nk为所述同步报文传播路径的最后一跳网络节点。

本发明实施例还提供了一种基于软件定义网络SDN的同步报文调度装置,应用于SDN控制器,所述同步报文调度装置包括:第一获取模块,用于获取同步报文传播路径;选择模块,用于选择所述同步报文传输路径中的最大时延值;第一分配模块,用于根据所述最大时延值为同步报文分配在各个网络节点的等待时延。

可选地,所述装置还包括:第二获取模块,用于在所述分配模块根据所述最大时延值为同步报文分配在各个网络节点的等待时延之后,获取所述同步报文在当前网络节点Ni的实际调度时间;第二分配模块,用于当所述同步报文在当前网络节点Ni的实际调度时间不等于等待时延时,重新为所述同步报文分配在所述当前网络节点Ni的下跳网络节点的等待时延;其中,i为自然数。

可选地,所述第二分配模块还用于当所述同步报文在当前网络节点Ni的实际调度时间大于等待时延时,减少所述同步报文在所述当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为所述同步报文在所述当前网络节点Ni的实际调度时间与所述等待时延的差值,tΔi+n′为所述同步报文在所述当前网络节点Ni的下n′跳网络节点减少的等待时延。

可选地,所述第二分配模块还用于当所述同步报文在当前网络节点Ni的实际调度时间小于等待时延时,增加所述同步报文在所述当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为所述等待时延与所述同步报文在所述当前网络节点Ni的实际调度时间的差值,tΔi+n′为所述同步报文在所述当前网络节点Ni的下n′跳网络节点增加的等待时延。

可选地,所述装置还包括:丢弃模块,用于在的情况下,丢弃所述同步报文;其中,Nk为所述同步报文传播路径的最后一跳网络节点。

本发明实施例技术方案,具有如下优点:

本发明实施例提供了一种基于软件定义网络SDN的同步报文调度方法及装置,应用于SDN控制器,获取同步报文传播路径;选择该同步报文传输路径中的最大时延值,以同步报文传播路径中最大时延值为基准确定同步报文传播时延,以保障同步报文通过任意所选定的传播路径的端到端以及上下行时延等于确定同步报文传播时延;根据该最大时延值为同步报文分配在各个网络节点的等待时延。解决了现有技术中同步报文往返测距延时不对称的问题。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例的同步报文调度方法的流程图;

图2是根据本发明实施例的同步报文调度装置的一个结构框图;

图3是根据本发明实施例的同步报文调度装置的另一个结构框图;

图4是根据本发明实施例的同步报文调度装置的再一个结构框图。

具体实施方式

下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。

实施例1

在本实施例中提供了一种基于软件定义网络SDN的同步报文调度方法,应用于软件定义网络SDN中的SDN控制器,图1是根据本发明实施例的同步报文调度方法的流程图,如图1所示,该流程包括如下步骤:

步骤S11:获取同步报文传播路径;在网络中确定同步报文传播路径,可以是多条独立路径,且上下行不需要对称,但必须是确定的路径,构成端到端的同步报文隧道,并匹配上行和下行路径;

步骤S12:选择同步报文传输路径中的最大时延值;交换机的SDN控制器,以同步报文传播路径中最大时延值为基准确定同步报文传播时延,以保障同步报文通过任意所选定的传播路径的端到端以及上下行时延等于确定同步报文传播时延;

步骤S13:根据最大时延值为同步报文分配在各个网络节点的等待时延。交换机控制将同步报文在端到端路径中的确定时延分解到路径中的每个交换机,由该交换机控制其同步报文在交换机中的时延等于其所分配的等待时延。

通过上述步骤,获取同步报文传播路径;选择该同步报文传输路径中的最大时延值,以同步报文传播路径中最大时延值为基准确定同步报文传播时延,以保障同步报文通过任意所选定的传播路径的端到端以及上下行时延等于确定同步报文传播时延;根据该最大时延值为同步报文分配在各个网络节点的等待时延。解决了现有技术中同步报文往返测距延时不对称的问题。

通过上述步骤根据最大时延值为同步报文分配在各个网络节点的等待时延,在有些情况下,同步报文在网络节点的实际调度时间与分配的等待时延可能不一致,因此,在一个可选实施例中,根据最大时延值为同步报文分配在各个网络节点的等待时延之后,获取同步报文在当前网络节点Ni的实际调度时间,当该同步报文在当前网络节点Ni的实际调度时间不等于等待时延时,重新为同步报文分配在该当前网络节点Ni的下跳网络节点的等待时延;其中,i为自然数,从而实现了当路径中的交换机的调整时间不符合所约定的交换排队等待时间,则通过更新附加在该同步报文中的排队时延补偿量,在下一跳交换机中提取该补偿量并计入到该跳交换机的时延设定值,保证了同步报文延时对称。

上述步骤涉及到重新为该同步报文分配在该当前网络节点Ni的下跳网络节点的等待时延,在一个可选实施例中,当同步报文在当前网络节点Ni的实际调度时间大于等待时延时,减少同步报文在该当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为该同步报文在该当前网络节点Ni的实际调度时间与该等待时延的差值,tΔi+n′为该同步报文在该当前网络节点Ni的下n′跳网络节点减少的等待时延。控制器减小该同步包在该网络节点后序的网络节点上的发送等待延时,假设在Ni+1节点减小的等待延时为同时节点指向下一跳;在同步包未到达网络的最后一跳节点Nk之前,在节点Ni+n有则时间补偿完成,跳出补偿策略;则继续补偿。当同步测距报文到达网络的最后一跳节点Nk时,若则时间补偿完成,跳出时间补偿策略。

在另一个可选实施例中,当同步报文在当前网络节点Ni的实际调度时间小于等待时延时,增加同步报文在该当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为等待时延与该同步报文在该当前网络节点Ni的实际调度时间的差值,tΔi+n′为同步报文在该当前网络节点Ni的下n′跳网络节点增加的等待时延。

在的情况下,时间补偿失败,丢弃该同步报文;其中,Nk为该同步报文传播路径的最后一跳网络节点。

实施例2

在本实施例中还提供了一种基于软件定义网络SDN的同步报文调度装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图2是根据本发明实施例的同步报文调度装置的一个结构框图,应用于软件定义网络SDN中的SDN控制器,如图2所示,该装置包括:第一获取模块21,用于获取同步报文传播路径;选择模块22,用于选择该同步报文传输路径中的最大时延值;第一分配模块23,用于根据该最大时延值为同步报文分配在各个网络节点的等待时延。

图3是根据本发明实施例的同步报文调度装置的另一个结构框图,如图3所示,该装置还包括:第二获取模块31,用于在该分配模块根据该最大时延值为同步报文分配在各个网络节点的等待时延之后,获取该同步报文在当前网络节点Ni的实际调度时间;第二分配模块32,用于当该同步报文在当前网络节点Ni的实际调度时间不等于等待时延时,重新为该同步报文分配在该当前网络节点Ni的下跳网络节点的等待时延;其中,i为自然数。

可选地,第二分配模块32还用于当该同步报文在当前网络节点Ni的实际调度时间大于等待时延时,减少该同步报文在该当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为该同步报文在该当前网络节点Ni的实际调度时间与该等待时延的差值,tΔi+n′为该同步报文在该当前网络节点Ni的下n′跳网络节点减少的等待时延。

可选地,第二分配模块32还用于当该同步报文在当前网络节点Ni的实际调度时间小于等待时延时,增加该同步报文在该当前网络节点Ni的下跳网络节点的等待时延,直至其中,TΔ为该等待时延与该同步报文在该当前网络节点Ni的实际调度时间的差值,tΔi+n′为该同步报文在该当前网络节点Ni的下n′跳网络节点增加的等待时延。

图4是根据本发明实施例的同步报文调度装置的再一个结构框图,如图4所示,该装置还包括:丢弃模块41,用于在的情况下,丢弃该同步报文;其中,Nk为该同步报文传播路径的最后一跳网络节点。

上述各个模块的更进一步的功能描述与上述对应实施例相同,在此不再赘述。

综上所述,为了使同步报文在多个交换机构成的通信路径中有确定的“端到端”时间延迟(防止抖动),并且适应交换机调度算法的“事件驱动机制”,本发明确定了在每个交换机中首先构成了独立的同步报文队列,调整同步报文队列头部进入交换节点的时间,当路径中的交换机的调整时间不符合所约定的交换排队等待时间,则通过更新附加在该同步报文中的排队时延补偿量,在下一跳交换机中提取该补偿量并计入到该跳交换机的时延设定值。这样,解决同步报文传播路径中,除最后一跳交换机之外,因为有高优先级报文,或应速率调整原因,使得交换机的调整时间不符合所约定的交换排队等待时间问题。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

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