CN111654419B - 网络同步方法、系统、节点设备及可读存储介质 - Google Patents
网络同步方法、系统、节点设备及可读存储介质 Download PDFInfo
- Publication number
- CN111654419B CN111654419B CN202010568538.8A CN202010568538A CN111654419B CN 111654419 B CN111654419 B CN 111654419B CN 202010568538 A CN202010568538 A CN 202010568538A CN 111654419 B CN111654419 B CN 111654419B
- Authority
- CN
- China
- Prior art keywords
- node
- network
- slave
- network segment
- port
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0641—Change of the master or reference, e.g. take-over or failure of the master
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0682—Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明属于通信网络领域,公开了一种网络同步方法、系统、节点设备及可读存储介质,所述网络同步方法包括:当当前节点接收报文后,提取报文中的源IP,采用网段最小IP与源IP中的较小者更新网段最小IP;将网段最小IP与当前节点的自身IP比较,当当前节点的自身IP大于网段最小IP时,当前节点定义为该网段内的从节点,将网段最小IP对应的节点定义为该网段内的主节点;将当前节点在该网段内的所有端口均定义为从端口,测量当前节点在该网段内每个从端口与主节点之间的链路延迟值,进而得到当前节点的时钟修正值,通过当前节点的时钟修正值进行同步。能够实现环形网络拓扑、交换型网络拓扑、冗余型网络拓扑及多种拓扑的混合组网的网络同步。
Description
技术领域
本发明属于通信网络领域,涉及一种网络同步方法、系统、节点设备及可读存储介质。
背景技术
网络测量和控制系统的精密时钟同步协议标准(IEEE 1588)能够为分布式网络提供高精度时钟同步。IEEE1588(简称1588)是一种主从式网络同步方法,其节点工作模式包括OC、BC以及TC三种。OC(普通时钟):网络中的一般节点,可以作为系统中的主时钟,也可以作为相对于主时钟而言的从时钟;BC(边界时钟):网络中的中间节点,具有多个物理端口,各物理端口位于不同的网段内,允许一个端口作为从端口与其所在网段内主设备同步,其余端口作为主端口同步所在网段内其他设备,因此BC可以同时作为主设备和从设备;TC(透明时钟):测量同步报文的节点驻留时间。
混合异构网络包括了环形拓扑、线形拓扑、交换型拓扑、冗余型拓扑以及多种拓扑的混合网络。参见图1,混合异构网络典型示意图,包括8个端节点(ES),1个交换节点(SW),其中ES_1、ES_2、ES_3和ES_4构成了环网,ES_4、ES_5和ES_6构成了线网,ES_2、ES_7和ES_8构成了交换网,假设主节点为ES_1。位于网桥位置上的节点,如ES_2和ES_4,需要具备BC功能来实现跨网时钟同步,但1588规定BC可以支持一个从端口和多个主端口,如果网关位于环网中,且在环网中存在主节点,则该网关会出现两个从端口,传统BC无法解决该问题;位于环网中的节点,由于环网通信是双端口冗余的,如果使用OC,由于OC作为从节点时仅支持一个从端口参与同步,否则会出现主时钟冲突,因此在环网中无法实现;如果使用BC,BC可以支持一个从端口,多个主端口的同步方式,但是BC本身作为一个边界时钟设备,每一级BC的同步均会损失同步精度,当环网规模较大时(如32个节点),精度损失累积,例如在31个节点的环网中,每一级同步精度为500ns时,精度最大损失会达到7.5us。
综上,现有同步方法要么无法适用于混合异构网络的同步,要么同步精度损失较大,不能满足同步需求。
发明内容
本发明的目的在于克服上述现有技术中现有同步方法要么无法适用于混合异构网络的同步,要么同步精度损失较大,不能满足同步需求的缺点,提供一种网络同步方法、系统、节点设备及可读存储介质。
为达到上述目的,本发明采用以下技术方案予以实现:
本发明一方面,一种网络同步方法,应用于网络内的节点,包括以下步骤:
S1:当当前节点接收报文后,提取报文中的源IP;定义当前节点接收报文的端口所属的网段内的最小IP为网段最小IP;
S2:采用网段最小IP与源IP中的较小者更新网段最小IP;
S3:将网段最小IP与当前节点的自身IP比较,当当前节点的自身IP大于网段最小IP时,当前节点定义为该网段内的从节点,进行S4;否则,当前节点在该网段内不需同步;
S4:将网段最小IP对应的节点定义为该网段内的主节点;
S5:将当前节点在该网段内的所有端口均定义为从端口,测量当前节点在该网段内每个从端口与主节点之间的链路延迟值,得到每个从端口的链路延迟值;
S6:根据每个从端口的链路延迟值,得到每个从端口的时钟修正值;根据每个从端口的时钟修正值得到当前节点的时钟修正值,通过当前节点的时钟修正值将当前节点与网段内的主节点同步。
本发明网络同步方法进一步的改进在于:
所述S6中根据每个从端口的时钟修正值得到当前节点的时钟修正值的具体方法为:
根据每个从端口的时钟修正值,采用中值算法得到当前节点的时钟修正值。
当当前节点在该网段内的从端口数量不大于四个时,所述中值算法的具体过程为:
当仅有一个从端口时,node_correction=port_correction1;
当有两个从端口时,node_correction=(port_correction1+port_correction2)/2;
当有三个从端口时,node_correction=port_correction2;
当有四个从端口时,node_correction=(port_correction2+port_correction3)/2;
其中,node_correction为节点时钟修正值,port_correction为从端口的时钟修正值,下标1至3表示从端口的时钟修正值按照从小到大排列时的序号。
所述中值算法的具体过程为:将所有从端口的时钟修正值求平均。
本发明又一方面,一种网络同步方法,应用于网络,包括以下步骤:
S1:获取网络内所有网段,根据每个节点的IP大小确定每个网段中的主节点以及所有网段中的主网段;定义每个网段中除主节点外的其余节点均为从节点;
S2:在一个网段内,将从节点在该网段中的所有端口均定义为从端口;
S3:在一个网段内,针对选取的从节点,分别测量该从节点的每个从端口与主节点之间的链路延迟,得到该从节点的每个从端口的链路延迟值;
S4:根据该从节点的每个从端口的链路延迟值,得到该从节点的每个从端口的时钟修正值;
S5:根据该从节点的所有从端口的时钟修正值得到该从节点的时钟修正值,通过该从节点的时钟修正值将该从节点与网段内的主节点同步;
S6:依次选取从节点进行S3,至遍历该网段内所有从节点;
S7:按照主网段至从网段的顺序选取网段进行S2,至遍历网络内所有网段。
本发明网络同步方法进一步的改进在于:
所述S1中根据每个节点的IP大小确定每个网段中的主节点以及所有网段中的主网段的具体方法为:
将每个网段中的最小IP对应的节点确定为该网段的主节点,将网络中的最小IP对应的节点所属的网段确定为主网段。
本发明又一方面,一种网络同步系统,应用于节点,包括:
源IP提取模块,用于当当前节点接收报文后,提取报文中的源IP;定义当前节点接收报文的端口所属网段内的最小IP为网段最小IP;
更新模块,用于采用网段最小IP与源IP中的较小者更新网段最小IP;
节点状态确定模块,用于将网段最小IP与当前节点的自身IP比较,当当前节点的自身IP大于网段最小IP时,当前节点定义为该网段内的从节点,进行S4;否则,当前节点在该网段内不需同步;
主节点确定模块,将网段最小IP对应的节点定义为该网段内的主节点;
测量模块,用于将当前节点在该网段内的所有端口均定义为从端口,测量当前节点在该网段内每个从端口与主节点之间的链路延迟值,得到每个从端口的链路延迟值;以及
同步模块,用于根据每个从端口的链路延迟值,得到每个从端口的时钟修正值;根据每个从端口的时钟修正值得到当前节点的时钟修正值,通过当前节点的时钟修正值将当前节点与网段内的主节点同步。
本发明又一方面,一种节点设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述网络同步方法的步骤。
本发明又一方面,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述网络同步方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明网络同步方法,通过网段来划分节点端口的主从属性,根据节点在网段内的主从属性来确定网段内端口的主从属性,可以将节点在同一个网段中的多个端口同时作为从端口,进而支持环形、环形冗余及其他需要支持多个从端口功能的网络进行异构组网;通过各从端口完成自己的链路测量,计算各从端口的时钟修正值,进而在各从端口的时钟修正值的基础上得到节点的时钟修正值,完成时钟同步,在一个网段内部由从端口与主端口进行主从时钟同步,避免采用BC级联导致的精度损失,从而提高时钟同步的精度。同时,相较于一个端口的计算形式,各从端口单独计算的方式,有效的提高了时钟同步的可靠性,例如当环形网络中一个从端口上的链路断开或通信故障时,可以依靠另外一个正常工作的从端口计算得到时钟修正值,正常进行时钟同步。
附图说明
图1为混合异构网络模型示意图;
图2为本发明实施例的网络同步方法流程框图;
图3为本发明实施例的基于网段的最佳主时钟算法示意图;
图4为本发明实施例的主-从链路延时示意图;
图5为本发明实施例的环形、线形、交换型异构网络同步模型示意图;
图6为本发明实施例的环形冗余网络同步模型示意图;
图7为本发明实施例的交换型冗余网络同步模型示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图对本发明做进一步详细描述:
参见图2,本发明实施例提供了一种网络同步方法,应用于网络内的节点,包括以下步骤:
S1:当当前节点接收报文后,提取报文中的源IP;定义当前节点接收报文的端口所属的网段内的最小IP为网段最小IP。
S2:采用网段最小IP与源IP中的较小者更新网段最小IP。
S3:将网段最小IP与当前节点的自身IP比较,当当前节点的自身IP大于网段最小IP时,当前节点定义为该网段内的从节点,进行S4;否则,当前节点在该网段内不需同步。
S4:将网段最小IP对应的节点定义为该网段内的主节点。
S5:将当前节点在该网段内的所有端口均定义为从端口,在该网段内测量当前节点每个从端口与主节点之间的链路延迟值,得到每个从端口的链路延迟值。
S6:根据每个从端口的链路延迟值,得到每个从端口的时钟修正值;根据每个从端口的时钟修正值得到当前节点的时钟修正值,通过当前节点的时钟修正值将当前节点与网段内的主节点同步。
具体的,S6中根据每个从端口的时钟修正值得到当前节点的时钟修正值的具体方法为:根据每个从端口的时钟修正值,采用中值算法得到当前节点的时钟修正值。这里的中值算法可以是将所有从端口的时钟修正值求平均得到平均值,但不以此为限制,也可以采用其他的中值形式,比如在本实施例中,当当前节点在该网段内的从端口数量不大于四个时,上述中值算法的具体过程也可以为:当仅有一个从端口时,node_correction=port_correction1;当当前节点有两个从端口时,node_correction=(port_correction1+port_correction2)/2;当有三个从端口时,node_correction=port_correction2;当有四个从端口时,node_correction=(port_correction2+port_correction3)/2;其中,node_correction为节点时钟修正值,port_correction为从端口的时钟修正值,下标1至3表示从端口的时钟修正值按照从小到大排列时的序号。
再一实施例中,本发明提供一种网络同步方法,应用于网络,包括以下步骤:
S1:获取网络内所有网段,根据每个节点的IP大小确定每个网段中的主节点以及所有网段中的主网段;定义每个网段中除主节点外的其余节点均为从节点。
S2:在一个网段内,将从节点在该网段中的所有端口均定义为从端口。
S3:在一个网段内,针对选取的从节点,分别测量该从节点的每个从端口与主节点之间的链路延迟,得到该从节点的每个从端口的链路延迟值。
S4:根据该从节点的每个从端口的链路延迟值,得到该从节点的每个从端口的时钟修正值。
S5:根据该从节点的所有从端口的时钟修正值得到该从节点的时钟修正值,通过该从节点的时钟修正值将该从节点与网段内的主节点同步。
S6:依次选取从节点进行S3,至遍历该网段内所有从节点。
S7:按照主网段至从网段的顺序选取网段进行S2,至遍历网络内所有网段。
下面详细介绍本发明网络同步方法的实现过程和实现原理:
本发明网络同步方法,以1588为理论基础,结合混合异构网络的组网特点,提出了适应该类型网络的节点模型和同步方法,解决了混合异构网络的时钟同步问题,定义了一种融合OC、BC和TC特性并支持端口冗余的节点同步模型,使得节点能够适应混合异构网络中的多种同步角色需求,并提出了在该类型网络中的同步方法。
本实施例中以节点支持四个端口为例说明,若干节点能够构建环形、线形和交换型网络,可以支持这三类网络的两两异构,以及构建环形冗余、交换型冗余网络的需求。本实施例中以节点支持两个网段为例说明,作为普通节点,能够满足环网、线网和交换网的需求,作为网桥节点,能够满足环网、线网和交换网两两异构的需求。
本发明网络同步方法中的节点不再划分端口的主从关系,而是划分节点在其所在的网段中的主从关系,节点的一个或者多个端口属于同一个网段,那么属于同一网段的所有端口具有同样的主从身份。在环形、线形、交换型拓扑中,各节点参与互联的端口均属于一个网段,具有同样的主从身份。在异构拓扑中,例如环网和交换网异构时的网桥节点,位于环网中的两个端口具有同样的主从身份,位于交换网中的端口具有独立的主从身份。本发明中的从节点时钟修正按照端口独立进行,原因是具有同样主从身份的端口与主节点之间的链路不同,需要独立进行1588的链路测量和时钟修正。
本发明网络同步方法以1588为基础,在1588的基础上作适应性改造,主要包括最佳主时钟算法(BMC)和主从时钟同步算法。
BMC由节点执行,目的是确定网络中的主节点,并仲裁出本当前节点在该网段中的主从身份。
仲裁的依据为节点IP的大小,IP最小的节点为主,其余均为从。节点根据网段来进行BMC,进而将该身份赋予节点在该网段中的所有端口,参见图3,节点可支持I和II两个网段,pbest_ip为I网段中最小IP,qbest_ip为II网段中最小IP,master_ip为全网中最小IP,即最佳主时钟的IP,pnet_state为节点在I网段中的主/从状态,qnet_state为节点在II网段中的主/从状态。
初始,当节点未收到任何节点发送的报文,其pbest_ip为最大IP值255.255.255.255,qbest_ip为最大IP值255.255.255.255,master_ip为节点自身IP,节点在I、II网段均为主状态。
当节点收到其它节点的报文后提取报文中的源IP,如果I网段中端口收到,则将p_rev_ip则与当前的pbest_ip进行比较,如果比当前的pbest_ip小,将pbest_ip更新为p_rev_ip;如果II网段中端口收到,将q_rev_ip与当前的qbest_ip进行比较,如果比当前的qbest_ip小,qbest_ip更新为q_rev_ip。其中,p_rev_ip为I网段内端口收到报文中的源IP,q_rev_ip为II网段内端口收到报文中的源IP。
比较当前的pbest_ip、qbest_ip和local_ip,local_ip为当前节点的自身IP,当pbest_ip为三者中最小时,说明当前最佳主时钟位于I网段中,master_ip为pbest_ip,本节点I网段为SLAVE模式,II网段为MASTER模式;当qbest_ip为三者中最小时,说明当前最佳主时钟位于II网段中,master_ip为qbest_ip,本节点I网段为MASTER模式,II网段为SLAVE模式;当local_ip为三者中最小时,说明当前最佳主时钟为本节点,master_ip为local_ip,本节点在I网段和II网段中均为MASTER模式;当abest_ip、bbest_ip和local_ip中存在相等情况时,说明网络中出现了IP冲突的节点,此时无法仲裁出最佳主时钟。
BMC是一个迭代算法,master_ip为当前的最佳主时钟,一次仲裁完成后,节点等待收到的下一个报文,再次进行仲裁。通过基于网段的BMC算法,解决了网络节点多个从端口共存的问题,因此在环形网络中也可采用OC同步机制,在一个网段内部由从端口与主端口进行主从时钟同步,避免采用BC级联导致的精度损失,从而提高时钟同步的精度。
通过BMC的仲裁,可以得到当前节点在网段内的主从状态,当当前节点定义为该网段内的从节点时,需要进行主从时钟同步算法实现当前节点与主节点的同步。
节点在网段中为从状态时,可能存在多个从端口,由于不同主-从端口之间的链路不同,因此各从端口独立进行主从之间的链路测量,由从端口记录链路测量值。参见图4,假设本网段内ES_9为主,ES_12为从,则ES_12的a端口和ES_9的b端口之间的链路延时为pa_link_delay,ES_12的b端口和ES_9的a端口之间的链路延时为pb_link_delay,pa_link_delay和pb_link_delay不同,因此ES_12的a、b端口独立开展链路测量。节点进行时钟修正时,针对同一网段中存在多个从端口的情况,各从端口独立计算时钟修正值,而对各从端口的时钟修正值从小到大排序,进而采用中值算法得到节点的时钟修正值。
参见图5,示出了环形、线形和交换型异构网络,其中,1、2、3、4、5、6、7、8为本发明中的网络节点,2和4为网桥,9为交换机。节点详细描述如下:
节点1:IP为a,10为节点1位于I网段内的端口分组,该端口分组包含两个端口。节点2:IP为b,11为节点2位于I网段内的端口分组,该端口分组包含两个端口,12为节点2位于II网段内的端口分组,该端口分组包含一个端口。节点3:IP为c,13为节点3位于I网段内的端口分组,该端口分组包含两个端口。节点4:IP为d,14为节点4位于I网段内的端口分组,该端口分组含两个端口;15为节点4位于II网段内的端口分组,该端口分组包含一个端口。节点5:IP为e,16为节点5位于I网段内的端口分组,该端口分组包含两个端口。节点6:IP为f,17为节点6位于I网段内的端口分组,该端口分组包含一个端口;节点7:IP为g,18为节点7位于I网段内的端口分组,该端口分组包含一个端口;节点8:IP为h,19为节点8位于I网段内的端口分组,该端口分组包含一个端口。这里的I网段和II网段仅是为了表明同一节点在两个网段内,I网段和II网段不表示网段的特定属性,即不同节点的I网段不一定是同一网段,也就是针对同一网段来说,有可能是节点1的I网段和节点2的II网段。
其中,IP的排序为a至h依次增大,根据本发明所述的BMC算法,节点在不同网段的同步状态如下:节点1,10为主;节点2,11为从,12为主;节点3,13为从;节点4,14为从,15为主;节点5,16为从;节点6,17为从;节点7,18为从;节点8,19为从。根据本发明所述的主从时钟同步算法,从端口独立进行计算时钟修正值,而后节点执行中值算法,得到时钟修正值:
节点1为主节点不执行同步修正;节点2、3和4的节点修正值均为(port_correction1+port_correction2)/2;节点5和6的节点修正值均为port_correction1;节点7和8的节点修正值均为port_correction1。
参见图6,示出了环形冗余网络同步典型拓扑,20、21、22和23为网络节点,构成环形冗余网络,节点四个端口均位于I网段中。节点详细描述如下:
节点20,IP为a,24为节点20的I网段内的端口分组,该端口分组含四个端口;节点21,IP为b,25为节点21的I网段内的端口分组,该端口分组含四个端口;节点22,IP为c,26为节点22的I网段内的端口分组,该端口分组含四个端口;节点23,IP为d,27为节点23的I网段内的端口分组,该端口分组含四个端口;其中,IP的排序为a至d依次增大。
根据本发明所述的BMC算法,节点在各自网段的同步状态如下:节点20,24为主;节点21,25为从;节点22,26为从;节点23,27为从。根据本发明所述的主从时钟同步算法,节点的从端口独立进行计算时钟修正值,而后执行中值算法,得到节点的时钟修正值:节点20为主节点不执行同步修正;节点21、22和23的节点修正值均为(port_correction2+port_correction3)/2。
参见图7,示出了交换型冗余网络同步典型拓扑,31、32和33为网络节点,34、35和36为交换机。节点详细描述如下:
节点31,IP为a,37为节点31的I网段内的端口分组,该端口分组含三个端口;节点32,IP为b,38为节点32的I网段内的端口分组,该端口分组含三个端口;节点33,IP为c,39为为节点33的I网段内的端口分组,该端口分组含三个端口。其中,IP的排序为a至d依次增大。根据本发明所述的BMC算法,节点在各自网段的同步状态如下:节点31,37为主;节点32,38为从;节点33,39为从。根据本发明所述的主从时钟同步算法,节点的从端口独立进行计算时钟修正值,而后执行中值算法,得到节点的时钟修正值:节点31为主节点不执行同步修正;节点32和33的节点修正值均为port_correction2。
再一实施例中,本发明提供一种网络同步系统,应用于节点,包括源IP提取模块、更新模块、节点状态确定模块、主节点确定模块、测量模块和同步模块。
其中,源IP提取模块用于当当前节点接收报文后,提取报文中的源IP;定义当前节点接收报文的端口所属网段内的最小IP为网段最小IP。更新模块用于采用网段最小IP与源IP中的较小者更新网段最小IP。节点状态确定模块用于将网段最小IP与当前节点的自身IP比较,当当前节点的自身IP大于网段最小IP时,当前节点定义为该网段内的从节点,进行S4;否则,当前节点在该网段内不需同步。主节点确定模块用于将网段最小IP对应的节点定义为该网段内的主节点。测量模块用于将当前节点在该网段内的所有端口均定义为从端口,测量当前节点在该网段内每个从端口与主节点之间的链路延迟值,得到每个从端口的链路延迟值。同步模块用于根据每个从端口的链路延迟值,得到每个从端口的时钟修正值;根据每个从端口的时钟修正值得到当前节点的时钟修正值,通过当前节点的时钟修正值将当前节点与网段内的主节点同步。
本发明网络同步方法可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本发明网络同步方法如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
基于这样的理解,在示例性实施例中,还提供了一种计算机可读存储介质,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于该计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述有关网络同步方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。其中,所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。
在示例性实施例中,还提供计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述网络同步方法的步骤。处理器可能是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor、DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
Claims (9)
1.一种网络同步方法,应用于网络内的节点,其特征在于,所述网络为混合异构网络,所述网络同步方法包括以下步骤:
S1:当当前节点接收报文后,提取报文中的源IP;定义当前节点接收报文的端口所属的网段内的最小IP为网段最小IP;
S2:采用网段最小IP与源IP中的较小者更新网段最小IP;
S3:将网段最小IP与当前节点的自身IP比较,当当前节点的自身IP大于网段最小IP时,当前节点定义为该网段内的从节点,进行S4;否则,当前节点在该网段内不需同步;
S4:将网段最小IP对应的节点定义为该网段内的主节点;
S5:将当前节点在该网段内的所有端口均定义为从端口,测量当前节点在该网段内每个从端口与主节点之间的链路延迟值,得到每个从端口的链路延迟值;
S6:根据每个从端口的链路延迟值,得到每个从端口的时钟修正值;根据每个从端口的时钟修正值得到当前节点的时钟修正值,通过当前节点的时钟修正值将当前节点与网段内的主节点同步。
2.根据权利要求1所述的网络同步方法,其特征在于,所述S6中根据每个从端口的时钟修正值得到当前节点的时钟修正值的具体方法为:
根据每个从端口的时钟修正值,采用中值算法得到当前节点的时钟修正值。
3.根据权利要求2所述的网络同步方法,其特征在于,当当前节点在该网段内的从端口数量不大于四个时,所述中值算法的具体过程为:
当仅有一个从端口时,node_correction=port_correction1;
当有两个从端口时,node_correction=(port_correction1+port_correction2)/2;
当有三个从端口时,node_correction=port_correction2;
当有四个从端口时,node_correction=(port_correction2+port_correction3)/2;
其中,node_correction为节点时钟修正值,port_correction为从端口的时钟修正值,下标1至3表示从端口的时钟修正值按照从小到大排列时的序号。
4.根据权利要求2所述的网络同步方法,其特征在于,所述中值算法的具体过程为:将所有从端口的时钟修正值求平均。
5.一种网络同步方法,应用于网络,其特征在于,所述网络为混合异构网络,所述网络同步方法包括以下步骤:
S1:获取网络内所有网段,根据每个节点的IP大小确定每个网段中的主节点以及所有网段中的主网段;定义每个网段中除主节点外的其余节点均为从节点;
S2:在一个网段内,将从节点在该网段中的所有端口均定义为从端口;
S3:在一个网段内,针对选取的从节点,分别测量该从节点的每个从端口与主节点之间的链路延迟,得到该从节点的每个从端口的链路延迟值;
S4:根据该从节点的每个从端口的链路延迟值,得到该从节点的每个从端口的时钟修正值;
S5:根据该从节点的所有从端口的时钟修正值得到该从节点的时钟修正值,通过该从节点的时钟修正值将该从节点与网段内的主节点同步;
S6:依次选取从节点进行S3,至遍历该网段内所有从节点;
S7:按照主网段至从网段的顺序选取网段进行S2,至遍历网络内所有网段。
6.根据权利要求5所述的网络同步方法,其特征在于,所述S1中根据每个节点的IP大小确定每个网段中的主节点以及所有网段中的主网段的具体方法为:
将每个网段中的最小IP对应的节点确定为该网段的主节点,将网络中的最小IP对应的节点所属的网段确定为主网段。
7.一种网络同步系统,应用于节点,其特征在于,所述网络为混合异构网络,所述网络同步系统包括:
源IP提取模块,用于当当前节点接收报文后,提取报文中的源IP;定义当前节点接收报文的端口所属网段内的最小IP为网段最小IP;
更新模块,用于采用网段最小IP与源IP中的较小者更新网段最小IP;
节点状态确定模块,用于将网段最小IP与当前节点的自身IP比较,当当前节点的自身IP大于网段最小IP时,当前节点定义为该网段内的从节点,进行S4;否则,当前节点在该网段内不需同步;
主节点确定模块,将网段最小IP对应的节点定义为该网段内的主节点;
测量模块,用于将当前节点在该网段内的所有端口均定义为从端口,测量当前节点在该网段内每个从端口与主节点之间的链路延迟值,得到每个从端口的链路延迟值;以及
同步模块,用于根据每个从端口的链路延迟值,得到每个从端口的时钟修正值;根据每个从端口的时钟修正值得到当前节点的时钟修正值,通过当前节点的时钟修正值将当前节点与网段内的主节点同步。
8.一种节点设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述网络同步方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述网络同步方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010568538.8A CN111654419B (zh) | 2020-06-19 | 2020-06-19 | 网络同步方法、系统、节点设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010568538.8A CN111654419B (zh) | 2020-06-19 | 2020-06-19 | 网络同步方法、系统、节点设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111654419A CN111654419A (zh) | 2020-09-11 |
CN111654419B true CN111654419B (zh) | 2022-02-11 |
Family
ID=72350617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010568538.8A Active CN111654419B (zh) | 2020-06-19 | 2020-06-19 | 网络同步方法、系统、节点设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111654419B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112953672B (zh) * | 2021-04-09 | 2023-01-17 | 北京国科天迅科技有限公司 | 一种基于网桥模块实现时钟同步的系统 |
CN113541844B (zh) * | 2021-07-14 | 2022-07-26 | 卡斯柯信号有限公司 | 一种多节点时钟同步方法和时钟同步模块 |
CN113794850B (zh) * | 2021-09-30 | 2024-04-26 | 苏州华兴源创科技股份有限公司 | 时序修正方法、装置、电子设备及可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI104665B (fi) * | 1996-09-30 | 2000-04-14 | Nokia Networks Oy | Hierarkkinen synkronointimenetelmä |
US9806835B2 (en) * | 2012-02-09 | 2017-10-31 | Marvell International Ltd. | Clock synchronization using multiple network paths |
CN103369579B (zh) * | 2013-07-20 | 2016-12-28 | 西安电子科技大学 | 一种空中自组织网络拓扑感知与维护方法 |
CN103929294B (zh) * | 2014-05-05 | 2017-09-12 | 浙江大学 | 一种时钟同步系统及同步方法 |
CN110138490A (zh) * | 2019-05-14 | 2019-08-16 | 浙江国利网安科技有限公司 | 一种时钟竞争的方法与装置 |
-
2020
- 2020-06-19 CN CN202010568538.8A patent/CN111654419B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111654419A (zh) | 2020-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111654419B (zh) | 网络同步方法、系统、节点设备及可读存储介质 | |
US10212074B2 (en) | Level of hierarchy in MST for traffic localization and load balancing | |
EP2692054B1 (en) | Power converter with dual ring network control | |
JP6125652B2 (ja) | 時間同期方法及び装置 | |
CN103107876B (zh) | 一种多时钟同步技术混合组网的实现方法和系统和装置 | |
EP2472795B1 (en) | Method and system for re-building single ring network topology | |
JP2017098694A (ja) | 通信装置,及びその時刻同期方法 | |
EP2738971B1 (en) | Method and device for clock synchronization | |
JP2006262461A (ja) | 複数の時間同期ドメインの応用 | |
CN101848193B (zh) | 网络同步的方法、系统和网络节点 | |
US11546074B2 (en) | Clock topology in an ethernet network | |
CN102946305B (zh) | 一种链路状态协议数据单元的同步方法和设备 | |
WO2013174025A1 (zh) | 基于ptp协议的透明时钟被动端口选举方法及装置 | |
CN113395261A (zh) | 一种mlag环境下的生成树协议快速收敛的方法、设备及介质 | |
JP2014183386A (ja) | 通信制御装置及び通信システム | |
CN114826466A (zh) | 一种冗余主时钟的选取以及切换方法 | |
CN114039909B (zh) | 一种快速实时生成树协议的实现方法 | |
US20190013926A1 (en) | Time synchronous slave device and communication control method | |
CN216792776U (zh) | 一种基于tsn背板总线的电力测控装置平台 | |
EP2698949B1 (en) | METHOD AND SYSTEM FOR SETTING DETECTION FRAME TIMEOUT DURATION OF ETHERNET NODEs | |
JP2009239450A (ja) | ルート変更型ネットワーク装置及びシステム | |
JP2019153941A (ja) | 通信制御装置及び通信制御システム | |
Liu et al. | Highly reliable clock synchronization based on port redundancy in time-sensitive networking | |
Ferrari et al. | Advanced networks for distributed measurement in substation automation systems | |
CN110995582A (zh) | 一种bgp路由反射器冗余网络收敛实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |