CN106130710B - 一种时钟同步方法及系统 - Google Patents
一种时钟同步方法及系统 Download PDFInfo
- Publication number
- CN106130710B CN106130710B CN201610497010.XA CN201610497010A CN106130710B CN 106130710 B CN106130710 B CN 106130710B CN 201610497010 A CN201610497010 A CN 201610497010A CN 106130710 B CN106130710 B CN 106130710B
- Authority
- CN
- China
- Prior art keywords
- time
- interchanger
- message
- host exchange
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种时钟同步方法及系统,包括:控制器获得SDN中的交换机发送的时钟信息,根据时钟信息确定主时钟;生成同步报文,通知主时钟对应的主交换机向第一交换机发送同步报文;主交换机向第一交换机发送同步报文;第一交换机将同步报文和接收时间发送至控制器;控制器解析同步报文得到发送时间,获得第一交换机与主交换机之间的链路延时,根据发送时间、接收时间和链路延时计算相位偏差,并根据发送时间和接收时间计算频率偏差;向第一交换机发送相位偏差和频率偏差,通知第一交换机向SDN中其他第一交换机中的一个转发同步报文;第一交换机接收到相位偏差和频率偏差,进行时钟同步,并转发同步报文。通过本发明可以实现同步SDN时钟。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种时钟同步方法及系统。
背景技术
随着信息时代发展步伐的迅速加快,SDN(Software Defined Network,软件定义网络)由于可编程性强、基础设施虚拟化等特点,成为具有良好发展前景的新型网络。SDN完成信息交换、传输的基础是,网络中各设备的时钟相互同步。其中,SDN一般由控制器、交换机组成。
现有技术中常见的时钟同步方法,1588时钟同步方法,需要网络中每台交换机都能独立完成网络中最佳主时钟的选择、与主时钟的时钟同步、向下游的时钟设备进行授时,也就是说每台交换机都具有控制、交换的功能。
然而,SDN内,交换机只负责转发数据,不具有控制功能。因此,SDN的交换机不能独立完成选择主时钟、与主时钟同步的功能、向下游的时钟设备进行授时的功能。基于上述情况,传统的1588时钟同步方法不适用于SDN。
鉴于上述情况,需要提供一种能够适用于SDN的时钟同步方法。
发明内容
本发明实施例提供了一种时钟同步方法及系统,以实现SDN中的时钟同步。
为达到上述目的,本发明实施例提供了:
一种时钟同步方法,包括:
控制器获得软件定义网络中的交换机发送的时钟信息,并根据所述时钟信息确定主时钟;生成同步报文,通知所述主时钟所对应的主交换机向第一交换机发送所述同步报文,其中,所述第一交换机为需要与主时钟同步的交换机;
所述主交换机向所述第一交换机发送所述同步报文;
所述第一交换机接收到所述同步报文后,将所述同步报文和接收时间发送至所述控制器,其中,所述接收时间为所述第一交换机接收所述同步报文的时间;
所述控制器接收到所述同步报文后,解析所述同步报文得到发送时间,获得所述第一交换机与所述主交换机之间的链路延时,根据所述发送时间、接收时间和链路延时计算相位偏差,并根据所述发送时间和接收时间计算频率偏差;向所述第一交换机发送所述相位偏差和所述频率偏差并通知所述第一交换机向软件定义网络中其他第一交换机中的一个交换机转发所述同步报文,其中,所述发送时间为所述主交换机发送所述同步报文的时间;
所述第一交换机接收到所述相位偏差和所述频率偏差后,进行时钟同步,并向软件定义网络中的其他第一交换机中的一个交换机转发所述同步报文。
优选的,所述根据所述发送时间、所述接收时间和所述链路延时计算相位偏差,包括:
根据以下表达式计算相位偏差offset,
offset=Tk-Tn-Delay
其中,Tk表示所述接收时间,Tn表示所述发送时间,Delay表示所述链路延时。
优选的,所述根据所述接收时间和发送时间计算频率偏差,包括:
根据以下表达式计算频率偏差Freq,
其中,Tk表示所述接收时间,Tn表示所述发送时间,Tk-1表示所述第一交换机上一次接收所述同步报文的时间,Tn-1表示所述主交换机上一次发送所述同步报文的时间。
优选的,所述方法还包括:
所述控制器接收软件定义网络中各个交换机发送的主时钟选取报文,根据所述主时钟选取报文和所述时钟信息确定备选主时钟,判断所述备选主时钟和所述主时钟是否一致,若为否,将所述主时钟更新为所述备选主时钟。
优选的,控制器获得所述第一交换机与所述主交换机之间的链路延时,包括:
所述控制器生成第一延时请求报文,并通知所述第一交换机向所述主交换机发送所述第一延时请求报文;
所述第一交换机向所述主交换机发送所述第一延时请求报文;
所述主交换机接收所述第一延时请求报文,并将所述第一延时请求报文和所述第二时间发送至所述控制器,其中,所述第二时间为,所述主交换机接收所述第一延时请求报文的时间;
所述控制器接收到所述第一延时请求报文和所述第二时间后,封装包含所述第二时间的第一延时应答报文,并通知所述主交换机发送所述第一延时应答报文发送至所述第一交换机;
所述主交换机接收所述第一延时应答报文,并将所述第一延时应答报文发送至所述第一交换机;
所述第一交换机接收到所述第一延时应答报文后,将所述第一延时应答报文、第四时间和第一时间发送至所述控制器,其中,所述第一时间为,所述第一交换机发送所述第一延时请求报文的时间,所述第四时间为,所述第一交换机接收所述第一延时应答报文的时间;
所述控制器解析所述第一延时应答报文得到第三时间,并根据所述第一时间、所述第二时间、所述第三时间和所述第四时间,计算所述第一交换机与所述主交换机之间的链路延时,其中,所述第三时间为,所述主交换机发送所述第一延时应答报文的时间。
优选的,所述根据所述第一时间、第二时间、第三时间和第四时间,计算所述第一交换机与所述主交换机之间的链路延时,包括:
根据以下表达式计算所述第一交换机与所述主交换机之间的链路延时Delay,
其中,T4为所述第四时间,T1为所述第一时间,T3为所述第三时间,T2为所述第二时间。
本发明还提供了一种时钟同步系统,所述系统包括:
控制器、主交换机、至少一个第一交换机,其中,所述控制器与所述交换机通信连接,所述主交换机与第一交换机通信连接;
所述控制器,用于获得软件定义网络中的交换机发送的时钟信息,并根据所述时钟信息确定主时钟;生成同步报文,通知所述主时钟所对应的主交换机向第一交换机发送所述同步报文,其中,所述第一交换机为需要与主时钟同步的交换机;
所述主交换机,用于向所述第一交换机发送所述同步报文;
所述第一交换机,用于接收到所述同步报文后,将所述同步报文和接收时间发送至所述控制器,其中,所述接收时间为所述第一交换机接收所述同步报文的时间;
所述控制器,用于接收到所述同步报文后,解析所述同步报文得到发送时间,获得所述第一交换机与所述主交换机之间的链路延时,根据所述发送时间、接收时间和链路延时计算相位偏差,并根据所述发送时间和接收时间计算频率偏差;向所述第一交换机发送所述相位偏差和所述频率偏差并通知所述第一交换机向软件定义网络网络中其他第一交换机中的一个交换机转发所述同步报文,其中,所述发送时间为所述主交换机发送所述同步报文的时间;
所述第一交换机,用于接收到所述相位偏差和所述频率偏差后,进行时钟同步,并向软件定义网络中的其他第一交换机中的一个交换机转发所述同步报文。
优选的,所述控制器,具体用于:
根据以下表达式计算相位偏差offset,
offset=Tk-Tn-Delay
其中,Tk表示所述接收时间,Tn表示所述发送时间,Delay表示所述链路延时。
优选的,所述控制器,具体用于:
根据以下表达式计算频率偏差Freq,
其中,Tk表示所述接收时间,Tn表示所述发送时间,Tk-1表示所述第一交换机上一次接收所述同步报文的时间,Tn-1表示所述主交换机上一次发送所述同步报文的时间。
优选的,所述控制器,还用于接收软件定义网络中各个交换机发送的主时钟选取报文,根据所述主时钟选取报文和所述时钟信息确定备选主时钟,判断所述备选主时钟和所述主时钟是否一致,若为否,将所述主时钟更新为所述备选主时钟。
优选的,所述控制器,具体用于生成第一延时请求报文,并通知所述第一交换机向所述主交换机发送所述第一延时请求报文;
所述第一交换机,具体用于向所述主交换机发送所述第一延时请求报文;
所述主交换机,具体用于接收所述第一延时请求报文,并将所述第一延时请求报文和第二时间发送至所述控制器,其中,所述第二时间为,所述主交换机接收所述第一延时请求报文的时间;
所述控制器,具体用于接收到所述第一延时请求报文和所述第二时间后,封装包含所述第二时间的第一延时应答报文,并通知所述主交换机发送所述第一延时应答报文发送至所述第一交换机;
所述主交换机,具体用于接收所述第一延时应答报文,并将所述第一延时应答报文发送至所述第一交换机;
所述第一交换机,具体用于接收到所述第一延时应答报文后,将所述第一延时应答报文、第四时间和第一时间发送至所述控制器,其中,所述第一时间为,所述第一交换机发送所述第一延时请求报文的时间,所述第四时间为,所述第一交换机接收所述第一延时应答报文的时间;
所述控制器,具体用于解析所述第一延时应答报文得到第三时间,并根据所述第一时间、所述第二时间、所述第三时间和所述第四时间,计算所述第一交换机与所述主交换机之间的链路延时,其中,所述第三时间为,所述主交换机发送所述第一延时应答报文的时间。
优选的,所述控制器,具体用于:
根据以下表达式计算所述第一交换机与所述主交换机之间的链路延时Delay,
其中,T4为所述第四时间,T1为所述第一时间,T3为所述第三时间,T2为所述第二时间。
本发明实施例提供的时钟同步方法及系统,根据SDN的特点,基于控制器控制交换机发送、接收带有时间信息的报文,然后根据第一交换机接收同步报文的时间、主时钟对应的主交换机发送同步报文的时间以及链路延时计算相位偏差和频率偏差,并将相位偏差和频率偏差发送给第一交换机进行时钟同步,进而调整网络中各交换机的时间,实现SDN的时钟同步。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种时钟同步方法的流程框图;
图2为本发明实施例所提供的一种时钟同步方法的另一流程框图;
图3为本发明实施例所提供的一种时钟同步系统的结构示意框图;
图4为本发明实施例所提供的一种时钟同步系统的结构示意框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明所提供的一种时种同步方法及系统,应用于SDN。
另外,本发明由控制器和交换机相互配合完成网络的时钟同步。
本发明提供一种时钟同步方法,如图1所示,包括如下步骤:
S101:控制器获得SDN中的交换机发送的时钟信息,并根据所述时钟信息确定主时钟;生成同步报文,通知所述主时钟所对应的主交换机向第一交换机发送所述同步报文,其中,所述第一交换机为需要与主时钟同步的交换机;
需要说明的是,所述时种信息包括时钟等级、时钟精度和时钟类型等信息。
进一步需要说明的是,所述确定主时钟包括确定主时钟的路径,所述路径可以为控制器到主交换机的路径。
可以理解的是,所述同步报文由所述控制器生成,并通知主交换机发送至所述第一交换机。
需要强调的是,所述控制器可以控制所述主交换机周期性地发送所述同步报文至所述第一交换机。
S102:所述主交换机向所述第一交换机发送所述同步报文;
具体的,所述同步报文可以是Sync报文。
S103:所述第一交换机接收到所述同步报文后,将所述同步报文和接收时间发送至所述控制器,其中,所述接收时间为所述第一交换机接收所述同步报文的时间;
其中,所述主交换机可以通过openflow协议发送所述同步报文和接收时间至所述控制器。
所述接收时间的具体获得方法可以为,所述第一交换机在接收所述同步报文时,在所述同步报文接收时打时间戳。通过此时间戳,所述第一交换机可以记录所述接收时间。
S104:所述控制器接收到所述同步报文后,解析所述同步报文得到发送时间,获得所述第一交换机与所述主交换机之间的链路延时,根据所述发送时间、接收时间和链路延时计算相位偏差,并根据所述发送时间和接收时间计算频率偏差;向所述第一交换机发送所述相位偏差和所述频率偏差并通知所述第一交换机向SDN中其他第一交换机中的一个交换机转发所述同步报文,其中,所述发送时间为所述主交换机发送所述同步报文的时间;
其中,决定第一交换机具体向哪一交换机转发所述同步报文的方法为现有技术,在此不做赘述。
具体的,可以根据以下表达式计算相位偏差offset,offset=Tk-Tn-Delay,其中,Tk表示所述接收时间,Tn表示所述发送时间,Delay表示所述链路延时。根据以下表达式计算频率偏差Freq,其中,Tk表示所述接收时间(即所述第一交换机接收所述同步报文的时间),Tn表示所述发送时间(即所述主交换机发送所述同步报文的时间),Tk-1表示所述第一换机上一次接收所述同步报文的时间,Tn-1表示所述主交换机上一次发送所述同步报文的时间。
需要说明的是,控制器获得所述第一交换机与所述主交换机之间的链路延时的具体方法可以为:
所述控制器生成第一延时请求报文,并通知所述第一交换机向所述主交换机发送所述第一延时请求报文;所述第一交换机向所述主交换机发送所述第一延时请求报文;所述主交换机接收所述第一延时请求报文,并将所述第一延时请求报文和所述第二时间发送至所述控制器,其中,所述第二时间为,所述主交换机接收所述第一延时请求报文的时间;所述控制器接收到所述第一延时请求报文和所述第二时间后,封装包含所述第二时间的第一延时应答报文,并通知所述主交换机发送所述第一延时应答报文发送至所述第一交换机;所述主交换机接收所述第一延时应答报文,并将所述第一延时应答报文发送至所述第一交换机;所述第一交换机接收到所述第一延时应答报文后,将所述第一延时应答报文、第四时间和第一时间发送至所述控制器,其中,所述第一时间为,所述第一交换机发送所述第一延时请求报文的时间,所述第四时间为,所述第一交换机接收所述第一延时应答报文的时间;所述控制器解析所述第一延时应答报文得到第三时间,并根据所述第一时间、第二时间、第三时间和第四时间,计算所述第一交换机与所述主交换机之间的链路延时,其中,所述第三时间为,所述主交换机发送所述第一延时应答报文的时间。
需要强调的是,所述第一交换机周期性发送所述第一延时请求报文给所述主交换机,相应地,所述主交换机周期性地反馈所述第一延时应答报文给第一交换机。
根据以下表达式计算所述第一交换机与所述主交换机之间的链路延时Delay,其中,T4为所述第四时间,T1为所述第一时间,T3为所述第三时间,T2为所述第二时间。
需要强调的是,上述链路延时可以是在主交换机与第一交换机建立连接之后在S104之前预先得到的,当然也可以是在主交换机与第一交换机建立连接之后被使用时得到的,这都是合理的。
可以理解的是,在一种实现方式中,所述第一时间为所述第一交换机发送所述第一延时请求报文的时间,具体的,所述第一时间为SDN中可随报文发送、接收的时间戳。因此,所述第一时间由所述第一交换机发送所述第一延时请求报文时来记录。同时,可以理解的是,所述第三时间为所述主交换机发送所述第一延时应答报文的时间,同样的,所述第三时间为SDN中可随报文发送、接收的时间戳。因此,所述第三时间由所述主交换机发送所述第一延时应答报文时来记录。
具体的,交换机如何记录上述第一时间、第二时间、第三时间、第四时间,控制器如何解析报文得到第三时间,由现有技术实现,在此不做过多赘述。
需要说明的是,在一种实现方式中,所述第一延时请求报文可以为pdelay-req报文,所述第一延时应答报文可以是pdelay-resp报文。
S105:所述第一交换机接收到所述相位偏差和所述频率偏差后,进行时钟同步,并向SDN中的其他第一交换机中的一个交换机转发所述同步报文。
其中,其他交换机包括SDN中没有进行时钟同步的交换机。
需要说明的是,上述第一交换机向SDN中的其他第一交换机中的一个交换机转发所述同步报文,可以理解为,第一交换机向SDN中二号第一交换机转发所述同步报文,所述二号第一交换机执行与所述第一交换机同样的步骤,完成时钟同步。相似的,所述二号第一交换机也会向三号第一交换机转发所述同步报文,三号第一交换机同样执行所述第一交换机所执行的步骤,完成时钟同步。以此类推,存在四号第一交换机,五号第一交换机等等,同样执行所述第一交换机所执行的步骤,直至完成SDN的所有交换机的时钟同步。
本发明实施例提供的时种同步方法,根据SDN的特点,基于控制器控制交换机发送、接收带有时间信息的报文,然后根据第一交换机接收同步报文的时间、主时钟对应的主交换机发送同步报文的时间以及联络延时计算相位偏差和频率偏差,并将相位偏差和频率偏差发送给第一交换机进行时钟同步,进而调整网络中各交换机的时间,实现SDN的时钟同步。
更进一步的,在图1的基础上,如图2所示,为了提高SDN时钟的准确性,本发明实施例还包括如下步骤:
S106:所述控制器接收SDN中各个交换机发送的主时钟选取报文,根据所述主时钟选取报文和所述时钟信息确定备选主时钟,判断所述备选主时钟和所述主时钟是否一致,若为否,将所述主时钟更新为所述备选主时钟。
需要说明的是,所述时钟信息包括SDN中各个交换机的时钟信息。
需要说明的是,所述主时钟选取报文可以由Announce报文来实现。
本发明实施例提供的一种时钟同步方法,通过检测所获取的SDN网络所有交换机的时钟信息确定主时钟,保证时钟的准确性。
为了详细解释本发明,以下列举一实施例进行阐述。
如图3所示,控制器与各个交换机通过数据线、控制线通信相连,用于传输控制命令以及数据,交换机1与交换机2之间通过数据线通信相连,用于传输数据。其中,数据线传输数据、控制线传输命令只是传输形式中的一种,具体的还可以有无线传输等形式。
控制器通过openflow协议获取SDN中交换机时钟信息,通过BMC(Best MasterClock,最佳主时钟)算法选取主时钟,并确定主时钟所对应的主交换机的路径。同时,接收网络中个交换机周期性发送的Announce报文,将上述报文内信息与所述时钟信息通过BMC算法选取参考主时钟,当参考主时钟与主时钟不相符,将所述主时钟更新为备选主时钟。
假设控制器最终确定的主时钟为时钟1,时钟1为交换机1的时钟。则交换机将产生的同步报文发送给交换机1,并通知交换机1向交换机2发送所述同步报文;
交换机1在收到所述同步报文后,在第0.11ms时将所述同步报文转发给交换机2,交换机2在第0.12ms时接收所述同步报文,并将所述同步报文和接收同步报文的接收时间(0.12ms)发送至控制器。
控制器接收并解析同步报文,得到交换机1发送同步报文的发送时间(0.11ms),并根据所述发送时间(0.11ms)和所接收到的接收时间(0.12ms),以及上一次交换机1发送所述同步报文的时间第0.04ms和上一次交换机2接收所述同步报文的时间第0.06ms,计算频率偏差Freq,
接着根据所述发送时间(0.11ms)、所述接收时间(0.12ms)、和链路延时Delay计算相位偏差。
Delay的获得方法为:控制器生成pdelay-req报文,并通知交换机2向交换机1发送pdelay-req报文;所述交换机2在第0.45ms(第一时间)通过端口向交换机1发送所述pdelay-req报文;交换机1在第0.47ms(第二时间)通过端口接收pdelay-req报文后,将0.47ms(第二时间)以及pdelay-req报文通过openflow协议上传控制器;控制器将接收到的第二时间封装到pdelay-resp中,并通知交换机1将封装有第二时间的pdelay-resp报文发送给交换机2;交换机1在第0.48ms(第三时间)时,通过端口将封装有第二时间的pdelay-resp报文发送至交换机2;交换机2在第0.50ms(第四时间)时通过端口接收pdelay-resp报文,并将pdelay-resp报文、第一时间、第四时间通过openflow发送至控制器;控制器解析pdelay-resp报文得到第三时间,进而根据
进而相位偏差offset,offset=0.12-0.11-Delay=-0.01。
最后,控制器将所述频率偏差、相位偏差发送至交换机2,已完成时钟同步。
相应于上述方法,如图4所示,本发明实施例还提供一种时钟同步系统,包括:
控制器310、主交换机320、第一交换机330,其中,所述第一交换机至少一个,所述控制器与所述主交换机、第一交换机分别通信连接,同时,所述控制器可以与至少一台交换机通信连接,所述交换机可以与一台交换机通信相连。
所述控制器,用于获得SDN中的交换机发送的时钟信息,并根据所述时钟信息确定主时钟;生成同步报文,通知所述主时钟所对应的主交换机向第一交换机发送所述同步报文,其中,所述第一交换机为需要与主时钟同步的交换机;
所述主交换机,用于向所述第一交换机发送所述同步报文;
所述第一交换机,用于接收到所述同步报文后,将所述同步报文和接收时间发送至所述控制器,其中,所述接收时间为所述第一交换机接收所述同步报文的时间;
所述控制器,用于接收到所述同步报文后,解析所述同步报文得到发送时间,获得所述第一交换机与所述主交换机之间的链路延时,根据所述发送时间、接收时间和链路延时计算相位偏差,并根据所述发送时间和接收时间计算频率偏差;向所述第一交换机发送所述相位偏差和所述频率偏差并通知所述第一交换机向SDN网络中其他第一交换机中的一个交换机转发所述同步报文,其中,所述发送时间为所述主交换机发送所述同步报文的时间;
所述第一交换机,用于接收到所述相位偏差和所述频率偏差后,进行时钟同步,并向SDN中的其他第一交换机中的一个交换机转发所述同步报文。
具体的,所述控制器310,具体用于:
根据以下表达式计算相位偏差offset,
offset=Tk-Tn-Delay
其中,Tk表示所述接收时间,Tn表示所述发送时间,Delay表示所述链路延时。
具体的,所述控制器310,具体用于:
根据以下表达式计算频率偏差Freq,
其中,Tk表示所述接收时间,Tn表示所述发送时间,Tk-1表示所述第一交换机上一次接收所述同步报文的时间,Tn-1表示所述主交换机上一次发送所述同步报文的时间。
本发明实施例提供的一种时种同步系统,根据SDN的特点,基于控制器控制交换机发送、接收带有时间信息的报文,然后根据第一交换机接收同步报文的时间、主时钟对应的主交换机发送同步报文的时间以及链路延时计算相位偏差和频率偏差,并将相位偏差和频率偏差发送给第一交换机进行时钟同步,进而调整网络中各交换机的时间,实现SDN的时钟同步。
具体的,所述系统还包括:
所述控制器,还用于收SDN中各个交换机发送的主时钟选取报文,根据所述主时钟选取报文和所述时钟信息确定备选主时钟,判断所述备选主时钟和所述主时钟是否一致,若为否,将所述主时钟更新为所述备选主时钟。
本发明实施例提供的一种时钟同步方法,通过检测所获取的SDN网络所有交换机的时钟信息确定主时钟,保证时钟的准确性。
具体的,控制器310获得所述主交换机320与所述第一交换机330之间的链路延时,包括:
所述控制器,具体用于生成第一延时请求报文,并通知所述第一交换机向所述主交换机发送所述第一延时请求报文;
所述第一交换机,具体用于向所述主交换机发送所述第一延时请求报文;
所述主交换机,具体用于接收所述第一延时请求报文,并将所述第一延时请求报文和第二时间发送至所述控制器,其中,所述第二时间为,所述主交换机接收所述第一延时请求报文的时间;
所述控制器,具体用于接收到所述第一延时请求报文和所述第二时间后,封装包含所述第二时间的第一延时应答报文,并通知所述主交换机发送所述第一延时应答报文发送至所述第一交换机;
所述主交换机,具体用于接收所述第一延时应答报文,并将所述第一延时应答报文发送至所述第一交换机;
所述第一交换机,具体用于接收到所述第一延时应答报文后,将所述第一延时应答报文、第四时间和第一时间发送至所述控制器,其中,所述第一时间为,所述第一交换机发送所述第一延时请求报文的时间,所述第四时间为,所述第一交换机接收所述第一延时应答报文的时间;
所述控制器,具体用于解析所述第一延时应答报文得到第三时间,并根据所述第一时间、第二时间、第三时间和第四时间,计算所述第一交换机与所述主交换机之间的链路延时,其中,所述第三时间为,所述主交换机发送所述第一延时应答报文的时间。
具体的,所述控制器具体用于:
根据以下表达式计算所述第一交换机与所述主交换机之间的链路延时Delay,
其中,T4为所述第四时间,T1为所述第一时间,T3为所述第三时间,T2为所述第二时间。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明实施例提供的时种同步系统,根据SDN的特点,基于控制器控制交换机发送、接收带有时间信息的报文,然后根据第一交换机接收同步报文的时间、主时钟对应的主交换机发送同步报文的时间以及链路延时计算相位偏差和频率偏差,并将相位偏差和频率偏差发送给第一交换机进行时钟同步,进而调整网络中各交换机的时间,实现SDN的时钟同步。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种时钟同步方法,其特征在于,所述方法包括:
控制器获得软件定义网络中的交换机发送的时钟信息,并根据所述时钟信息确定主时钟;生成同步报文,通知所述主时钟所对应的主交换机向第一交换机发送所述同步报文,其中,所述第一交换机为需要与主时钟同步的交换机;
所述主交换机向所述第一交换机发送所述同步报文;
所述第一交换机接收到所述同步报文后,将所述同步报文和接收时间发送至所述控制器,其中,所述接收时间为所述第一交换机接收所述同步报文的时间;
所述控制器接收到所述同步报文后,解析所述同步报文得到发送时间,获得所述第一交换机与所述主交换机之间的链路延时,根据所述发送时间、所述接收时间和所述链路延时计算相位偏差,并根据所述发送时间和所述接收时间计算频率偏差;向所述第一交换机发送所述相位偏差和所述频率偏差并通知所述第一交换机向软件定义网络中其他第一交换机中的一个交换机转发所述同步报文,其中,所述发送时间为所述主交换机发送所述同步报文的时间;
所述第一交换机接收到所述相位偏差和所述频率偏差后,进行时钟同步,并向软件定义网络中的其他第一交换机中的一个交换机转发所述同步报文;
所述控制器接收软件定义网络中各个交换机发送的主时钟选取报文,根据所述主时钟选取报文和所述时钟信息确定备选主时钟,判断所述备选主时钟和所述主时钟是否一致,若为否,将所述主时钟更新为所述备选主时钟;其中,所述时钟信息包括SDN中各个交换机的时钟信息。
2.根据权利要求1所述的方法,其特征在于,所述根据所述发送时间、所述接收时间和所述链路延时计算相位偏差,包括:
根据以下表达式计算相位偏差offset,
offset=Tk-Tn-Delay
其中,Tk表示所述接收时间,Tn表示所述发送时间,Delay表示所述链路延时。
3.根据权利要求1所述的方法,其特征在于,所述根据所述接收时间和发送时间计算频率偏差,包括:
根据以下表达式计算频率偏差Freq,
其中,Tk表示所述接收时间,Tn表示所述发送时间,Tk-1表示所述第一交换机上一次接收所述同步报文的时间,Tn-1表示所述主交换机上一次发送所述同步报文的时间。
4.根据权利要求1-3任一项所述的方法,其特征在于,控制器获得所述第一交换机与所述主交换机之间的链路延时,包括:
所述控制器生成第一延时请求报文,并通知所述第一交换机向所述主交换机发送所述第一延时请求报文;
所述第一交换机向所述主交换机发送所述第一延时请求报文;
所述主交换机接收所述第一延时请求报文,并将所述第一延时请求报文和第二时间发送至所述控制器,其中,所述第二时间为,所述主交换机接收所述第一延时请求报文的时间;
所述控制器接收到所述第一延时请求报文和所述第二时间后,封装包含所述第二时间的第一延时应答报文,并通知所述主交换机发送所述第一延时应答报文发送至所述第一交换机;
所述主交换机接收所述第一延时应答报文,并将所述第一延时应答报文发送至所述第一交换机;
所述第一交换机接收到所述第一延时应答报文后,将所述第一延时应答报文、第四时间和第一时间发送至所述控制器,其中,所述第一时间为,所述第一交换机发送所述第一延时请求报文的时间,所述第四时间为,所述第一交换机接收所述第一延时应答报文的时间;
所述控制器解析所述第一延时应答报文得到第三时间,并根据所述第一时间、所述第二时间、所述第三时间和所述第四时间,计算所述第一交换机与所述主交换机之间的链路延时,其中,所述第三时间为,所述主交换机发送所述第一延时应答报文的时间。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第一时间、第二时间、第三时间和第四时间,计算所述第一交换机与所述主交换机之间的链路延时,包括:
根据以下表达式计算所述第一交换机与所述主交换机之间的链路延时Delay,
其中,T4为所述第四时间,T1为所述第一时间,T3为所述第三时间,T2为所述第二时间。
6.一种时钟同步系统,其特征在于,所述系统包括:
控制器、主交换机、至少一个第一交换机,其中,所述控制器与所述交换机通信连接,所述主交换机与第一交换机通信连接;
所述控制器,用于获得软件定义网络中的交换机发送的时钟信息,并根据所述时钟信息确定主时钟;生成同步报文,通知所述主时钟所对应的主交换机向第一交换机发送所述同步报文,其中,所述第一交换机为需要与主时钟同步的交换机;
所述主交换机,用于向所述第一交换机发送所述同步报文;
所述第一交换机,用于接收到所述同步报文后,将所述同步报文和接收时间发送至所述控制器,其中,所述接收时间为所述第一交换机接收所述同步报文的时间;
所述控制器,用于接收到所述同步报文后,解析所述同步报文得到发送时间,获得所述第一交换机与所述主交换机之间的链路延时,根据所述发送时间、接收时间和链路延时计算相位偏差,并根据所述发送时间和接收时间计算频率偏差;向所述第一交换机发送所述相位偏差和所述频率偏差并通知所述第一交换机向软件定义网络中其他第一交换机中的一个交换机转发所述同步报文,其中,所述发送时间为所述主交换机发送所述同步报文的时间;
所述第一交换机,用于接收到所述相位偏差和所述频率偏差后,进行时钟同步,并向软件定义网络中的其他第一交换机中的一个交换机转发所述同步报文;
所述控制器,还用于接收软件定义网络中各个交换机发送的主时钟选取报文,根据所述主时钟选取报文和所述时钟信息确定备选主时钟,判断所述备选主时钟和所述主时钟是否一致,若为否,将所述主时钟更新为所述备选主时钟;其中,所述时钟信息包括SDN中各个交换机的时钟信息。
7.根据权利要求6所述的系统,其特征在于,所述控制器,具体用于:
根据以下表达式计算相位偏差offset,
offset=Tk-Tn-Delay
其中,Tk表示所述接收时间,Tn表示所述发送时间,Delay表示所述链路延时。
8.根据权利要求6所述的系统,其特征在于,所述控制器,具体用于:
根据以下表达式计算频率偏差Freq,
其中,Tk表示所述接收时间,Tn表示所述发送时间,Tk-1表示所述第一交换机上一次接收所述同步报文的时间,Tn-1表示所述主交换机上一次发送所述同步报文的时间。
9.根据权利要求6-8任一项所述的系统,其特征在于,
所述控制器,具体用于生成第一延时请求报文,并通知所述第一交换机向所述主交换机发送所述第一延时请求报文;
所述第一交换机,具体用于向所述主交换机发送所述第一延时请求报文;
所述主交换机,具体用于接收所述第一延时请求报文,并将所述第一延时请求报文和第二时间发送至所述控制器,其中,所述第二时间为,所述主交换机接收所述第一延时请求报文的时间;
所述控制器,具体用于接收到所述第一延时请求报文和所述第二时间后,封装包含所述第二时间的第一延时应答报文,并通知所述主交换机发送所述第一延时应答报文发送至所述第一交换机;
所述主交换机,具体用于接收所述第一延时应答报文,并将所述第一延时应答报文发送至所述第一交换机;
所述第一交换机,具体用于接收到所述第一延时应答报文后,将所述第一延时应答报文、第四时间和第一时间发送至所述控制器,其中,所述第一时间为,所述第一交换机发送所述第一延时请求报文的时间,所述第四时间为,所述第一交换机接收所述第一延时应答报文的时间;
所述控制器,具体用于解析所述第一延时应答报文得到第三时间,并根据所述第一时间、所述第二时间、所述第三时间和所述第四时间,计算所述第一交换机与所述主交换机之间的链路延时,其中,所述第三时间为,所述主交换机发送所述第一延时应答报文的时间。
10.根据权利要求9所述的系统,其特征在于,所述控制器,具体用于:
根据以下表达式计算所述第一交换机与所述主交换机之间的链路延时Delay,
其中,T4为所述第四时间,T1为所述第一时间,T3为所述第三时间,T2为所述第二时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610497010.XA CN106130710B (zh) | 2016-06-29 | 2016-06-29 | 一种时钟同步方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610497010.XA CN106130710B (zh) | 2016-06-29 | 2016-06-29 | 一种时钟同步方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106130710A CN106130710A (zh) | 2016-11-16 |
CN106130710B true CN106130710B (zh) | 2019-11-08 |
Family
ID=57284480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610497010.XA Active CN106130710B (zh) | 2016-06-29 | 2016-06-29 | 一种时钟同步方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106130710B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108737001B (zh) * | 2017-04-24 | 2020-02-07 | 广东虚拟现实科技有限公司 | 一种数据处理方法及相关设备 |
US11372441B2 (en) * | 2018-07-26 | 2022-06-28 | Integrated Device Technology, Inc. | Zero offset clock distribution |
CN109379175B (zh) * | 2018-12-13 | 2021-06-29 | 中国科学院国家授时中心 | 一种光纤时频传递中频率信号相位的修正装置及方法 |
CN110673097B (zh) * | 2019-10-24 | 2022-01-18 | 浙江工商大学 | 利用音频到达时间差对空间中发声物体的定位方法 |
CN114520702A (zh) * | 2020-11-18 | 2022-05-20 | 中国移动通信有限公司研究院 | 一种时间同步方法及相关设备 |
CN113179441B (zh) * | 2021-03-26 | 2023-06-30 | 卡莱特云科技股份有限公司 | 一种同步播放方法、装置、系统及计算机设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895384A (zh) * | 2010-07-07 | 2010-11-24 | 中兴通讯股份有限公司 | 一种实现边界时钟的方法和装置 |
CN102833061A (zh) * | 2012-08-31 | 2012-12-19 | 北京东土科技股份有限公司 | 基于无缝冗余环网的提高时钟精度的方法及节点 |
CN103262472A (zh) * | 2010-12-13 | 2013-08-21 | 日本电气株式会社 | 计算机系统、控制器、控制器管理器和通信路由分析方法 |
CN103580846A (zh) * | 2013-08-23 | 2014-02-12 | 北京东土科技股份有限公司 | 一种跨非1588网络传输精密时钟报文的方法及系统 |
CN104113386A (zh) * | 2014-07-09 | 2014-10-22 | 北京东土科技股份有限公司 | 一种监控以太网时钟同步的方法及装置 |
CN105591912A (zh) * | 2015-07-21 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种转发路径的选择方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101631016B (zh) * | 2009-04-14 | 2011-09-14 | 华中科技大学 | 一种现场总线的时间同步方法 |
CN103001759B (zh) * | 2012-11-23 | 2015-09-02 | 北京东土科技股份有限公司 | 一种基于网络的时间同步方法、系统及装置 |
-
2016
- 2016-06-29 CN CN201610497010.XA patent/CN106130710B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895384A (zh) * | 2010-07-07 | 2010-11-24 | 中兴通讯股份有限公司 | 一种实现边界时钟的方法和装置 |
CN103262472A (zh) * | 2010-12-13 | 2013-08-21 | 日本电气株式会社 | 计算机系统、控制器、控制器管理器和通信路由分析方法 |
CN102833061A (zh) * | 2012-08-31 | 2012-12-19 | 北京东土科技股份有限公司 | 基于无缝冗余环网的提高时钟精度的方法及节点 |
CN103580846A (zh) * | 2013-08-23 | 2014-02-12 | 北京东土科技股份有限公司 | 一种跨非1588网络传输精密时钟报文的方法及系统 |
CN104113386A (zh) * | 2014-07-09 | 2014-10-22 | 北京东土科技股份有限公司 | 一种监控以太网时钟同步的方法及装置 |
CN105591912A (zh) * | 2015-07-21 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种转发路径的选择方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106130710A (zh) | 2016-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106130710B (zh) | 一种时钟同步方法及系统 | |
CN107078958B (zh) | 用于分组交换网中低抖动通信的系统、设备和方法 | |
CN105680973B (zh) | 航空电子设备网络中的自由运转节点的时间同步方法 | |
JP5792884B2 (ja) | 通信ネットワークにおける時間配信のための方法、装置およびシステム | |
CN102843205B (zh) | 一种基于精确时间协议的时间同步收敛的方法和装置 | |
CN103168440B (zh) | 时间路径补偿方法和装置 | |
CN107147465B (zh) | 一种面向时间触发网络的交换机时钟同步控制器及控制方法 | |
CN106788836B (zh) | 一种系统时间的同步方法及装置 | |
CN103916950A (zh) | 时间同步方法及系统 | |
CN102932083B (zh) | 一种微波同步对时的方法和装置 | |
CN106357362B (zh) | 一种时间同步方法、装置及ptp系统 | |
CN105978652B (zh) | 冗余以太网的同步对时设备、系统及方法 | |
CN107579793A (zh) | 一种通信网络设备间时间同步的优化方法、装置及设备 | |
CN105959076A (zh) | 使无源光网络具备支持时间同步能力的装置与方法 | |
CN108599888A (zh) | 一种分布式网络时钟同步系统 | |
CN103166750A (zh) | 时钟时间同步源配置方法及装置 | |
CN106911414A (zh) | 时钟同步方法和装置 | |
CN109257133A (zh) | 一种应用于lte轨道交通网的全网时钟同步方法及装置 | |
CN110492967A (zh) | 一种时间同步方法、中继设备及装置 | |
CN102511149B (zh) | 监测网络节点的输出时间方法、装置和系统 | |
CN109996325A (zh) | 一种无线传感器网络的时钟同步系统及方法 | |
CN107786294A (zh) | 一种集中式1588的实现系统及方法 | |
CN104243079A (zh) | 一种实时以太网的微秒级时钟同步方法 | |
CN106455042B (zh) | 一种节点间时间同步方法、无线传感网络及其节点 | |
CN108781162A (zh) | 一种网络节点、报文传输方法和网络 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |