CN110113127B - 一种基于1588协议传递时间的方法及其系统 - Google Patents
一种基于1588协议传递时间的方法及其系统 Download PDFInfo
- Publication number
- CN110113127B CN110113127B CN201910485849.5A CN201910485849A CN110113127B CN 110113127 B CN110113127 B CN 110113127B CN 201910485849 A CN201910485849 A CN 201910485849A CN 110113127 B CN110113127 B CN 110113127B
- Authority
- CN
- China
- Prior art keywords
- clock
- time
- timestamp
- field
- protocol
- 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
- 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/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Electric Clocks (AREA)
Abstract
本发明涉及时间同步技术领域,公开了一种基于1588协议传递时间的方法及其系统。基于1588协议传递时间的方法应用于Mesh网络,所述Mesh网络用于与基准时钟设备通讯,所述基准时钟设备用于提供基准时间,所述Mesh网络包括多个互连的时钟节点,且只有一个时钟节点与所述基准时钟设备通讯,所述方法包括:获取目标时钟节点与所述基准时钟设备之间的基准时间偏差,所述目标时钟节点与所述基准时钟设备通讯;基于1588协议,将所述基准时间偏差组装在Announce报文的PTP报文头中,其中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间;向剩余时钟节点广播组装后的Announce报文。本发明实施例实现了基于1588协议在Mesh网络中的时钟节点之间传递时间。
Description
技术领域
本发明涉及时间同步技术领域,特别是涉及一种基于1588协议传递时间的方法及其系统。
背景技术
目前,基于1588协议,采用GrandMaster节点与基准时钟设备(即GPS)通讯,剩余时钟节点则逐跳应用1588传递时间。
但是,上述方式适用于链形或环形网络,且存在主从关系,而在Mesh网络中,所有的时钟节点处于同等位置,不存在主从关系,并且,除了与基准时钟设备通讯的目标时钟节点,剩余时钟节点不能直接通过自身获取其与基准时钟设备的基准时间偏差,因此,本发明实施例提供了一种应用于Mesh网络的基于1588协议传递时间的方法。
发明内容
本发明实施例旨在提供一种基于1588协议传递时间的方法及其系统,其能够实现基于1588协议在Mesh网络中的时钟节点之间传递时间。
为解决上述技术问题,本发明实施例提供以下技术方案:
第一方面,本发明实施例提供一种基于1588协议传递时间的方法,应用于Mesh网络,所述Mesh网络用于与基准时钟设备通讯,所述基准时钟设备用于提供基准时间,所述Mesh网络包括多个互连的时钟节点,且只有一个时钟节点与所述基准时钟设备通讯,所述方法包括:
获取目标时钟节点与所述基准时钟设备之间的基准时间偏差,所述目标时钟节点与所述基准时钟设备通讯;
基于1588协议,将所述基准时间偏差组装在Announce报文的PTP报文头中,其中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间;
向剩余时钟节点广播组装后的Announce报文。
在一些实施例中,所述基准时间偏差为浮点型格式,所述基于1588协议,将所述基准时间偏差组装在Announce报文的PTP报文头中,包括:
将浮点型格式的基准时间偏差转换为结构体格式的时间戳,所述时间戳包括所述基准时间偏差的数值信息和所述基准时间偏差的数值正负信息;
基于1588协议,将所述时间戳组装在Announce报文的PTP报文头中。
在一些实施例中,所述PTP报文头包括时间修正域字段与预留字段,所述基于1588协议,将所述时间戳组装在Announce报文的PTP报文头中,包括:
基于1588协议,重定义所述PTP报文头中的所述时间修正域字段与所述预留字段;
将所述时间戳组装在重定义后的Announce报文的PTP报文头中。
在一些实施例中,所述将所述时间戳组装在重定义后的Announce报文的PTP报文头中,包括:
将所述时间修正域字段与所述预留字段重定义为时间戳描述字段,并将所述时间戳组装在重定义后的Announce报文的PTP报文头中,所述时间戳描述字段用于描述所述时间戳的时间属性。
在一些实施例中,所述时间戳描述字段包括与所述时间戳对应的秒部分描述字段、纳秒部分描述字段及时间标记描述字段;
其中,所述基准时间偏差的数值信息分别填入对应的所述秒部分描述字段和所述纳秒部分描述字段,所述数值正负信息填入对应的所述时间标记描述字段,所述时间标记描述字段用于标识所述基准时间的正负。
在一些实施例中,所述时间标记描述字段的第0位为真时,所述基准时间为正;
所述时间标记描述字段的第0位为假时,所述基准时间为负;
所述标志域字段的第7位为真时,所述Announce报文携带基准时间;
所述标志域字段的第7位为假时,所述Announce报文未携带基准时间。
在一些实施例中,所述基准时间为GPS时间。
在一些实施例中,所述方法还包括:
根据所述剩余时钟节点中任一时钟节点与所述基准时钟设备之间传输的PTP报文,计算所述剩余时钟节点中任一时钟节点与所述基准时钟设备之间的同步时间偏差;
根据所述基准时间偏差与所述同步时间偏差,控制所述Mesh网络中任一时钟节点与所述基准时钟设备的时间同步。
在一些实施例中,所述根据所述基准时间偏差与所述同步时间偏差,控制所述Mesh网络中任一时钟节点与所述基准时钟设备的时间同步,包括:
相加所述基准时间偏差与所述同步时间偏差,得到时间偏差总和;
控制所述Mesh网络中任一时钟节点补偿所述时间偏差总和,以使所述Mesh网络中任一时钟节点与所述基准时钟设备的时间同步。
第二方面,本发明实施例提供一种基于1588协议传递时间的系统,包括:
基准时钟设备;和
Mesh网络,所述Mesh网络用于与所述基准时钟设备通讯,以使所述Mesh网络中任一时钟节点执行如上任一项所述的基于1588协议传递时间的方法。
本发明实施例的有益效果是:区别于现有技术的情况下,本发明实施例提供的一种基于1588协议传递时间的方法及其系统。通过将所述基准时间偏差组装在Announce报文的PTP报文头中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间,向剩余时钟节点广播组装后的Announce报文,从而使得基准时间偏差传递至Mesh网络中的剩余时钟节点。因此,本发明实施例实现了基于1588协议在Mesh网络中的时钟节点之间传递时间。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供的一种基于1588协议传递时间的系统的结构示意图;
图2是本发明实施例提供的一种基于1588协议传递时间的方法的流程示意图;
图3是图2中步骤S12的流程示意图;
图4是图3中步骤S122的流程示意图;
图5是本发明另一实施例提供的一种基于1588协议传递时间的方法的流程示意图;
图6是图5中步骤S15的流程示意图;
图7是图1中时钟节点A与时钟节点B基于PTP协议的传输示意图;
图8是图1中时钟节点A与时钟节点C基于PTP协议的传输示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
请参阅图1,为本发明实施例提供的一种基于1588协议传递时间的系统的结构示意图。如图1所示,所述基于1588协议传递时间的系统300包括Mesh网络100和基准时钟设备200。
所述Mesh网络100用于与所述基准时钟设备200通讯,所述Mesh网络100包括多个互连的时钟节点10,且只有一个所述时钟节点10与所述基准时钟设备200通讯,与所述基准时钟设备200通讯的所述时钟节点10为目标时钟节点。
可以理解,所述时钟节点10指的是标准以太网或其他采用多播技术的分布式总线系统中的传感器、执行器以及其他终端设备中的时钟。其中,所述终端设备指的是经由通信设施向计算机输入程序和数据或接收计算机输出处理结果的设备。
其中,每一个时钟节点10均与所述Mesh网络100中的其他时钟节点10连接。例如,本实施例以3个所述时钟节点10的所述Mesh网络100进行阐述,其中,时钟节点A与时钟节点B和时钟节点C连接,时钟节点B与时钟节点C和时钟节点A连接,时钟节点C与时钟节点A和时钟节点B连接。进一步的,所述时钟节点A还与所述基准时钟设备200通讯连接,即所述时钟节点A为该3个所述时钟节点10的所述Mesh网络100的目标时钟节点。
优选地,所述目标时钟节点与所述基准时钟设备200为无线通讯连接,所述时钟节点10两两之间为无线通讯连接。在一些实施例中,所述目标时钟节点与所述基准时钟设备200可以为有线通讯连接。
所述基准时钟设备200用于提供基准时间,所述基准时钟设备200的数量为一个,即所述基准时钟设备200为所述基于1588协议传递时间的系统300中唯一的一个同步时钟,所述Mesh网络100中的所有时钟节点10均与所述同步时钟保持同步。
在本实施例中,所述基准时钟设备200为GPS(Global Positioning System,全球定位系统)或GPS模块,所述基准时间为GPS时间,所述GPS时间属于卫星定位系统时间。
综上,所述基准时钟设备200向所述Mesh网络100发送所述基准时间,所述时钟节点A接收所述基准时间,并获取所述时钟节点A与所述基准时钟设备200之间的基准时间偏差。所述时钟节点A、所述时钟节点B以及所述时钟节点C彼此之间传递1588报文(即PTP报文),所述PTP报文包括Announce报文sync报文、Delay_Req报文、Follow_up报文、Delay_Resp报文等。
以所述时钟节点A为例,所述时钟节点A通过接收、响应所述时钟节点B和所述时钟节点C的所述PTP报文,所述PTP报文包括时戳信息,再根据所述时戳信息,从而得到所述时钟节点A与所述时钟节点B之间的同步时间偏差和所述时钟节点A与所述时钟节点C之间的同步时间偏差;将所述时钟节点A与所述基准时钟设备200之间的基准时间偏差、所述时钟节点A与所述时钟节点B之间的同步时间偏差以及所述时钟节点A与所述时钟节点C之间的同步时间偏差相加再除以节点数3,得到所述时钟节点A到所述时钟节点A、所述时钟节点B以及所述时钟节点C组成的3节点的Mesh网络的中心位置的相位差值;根据该相位差值,将所述时钟节点A对齐到中心位置,同理,根据该相位差值,将所述时钟节点B和将所述时钟节点C对齐到中心位置,从而,完成了所述时钟节点A、所述时钟节点B以及所述时钟节点C与所述基准时钟设备200的时间同步。
为解决基于1588协议在Mesh网络中的时钟节点之间传递时间的问题,本发明实施例提出了一种基于1588协议传递时间的系统,通过将所述基准时间偏差组装在Announce报文的PTP报文头中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间,向剩余时钟节点广播组装后的Announce报文,从而使得基准时间偏差传递至Mesh网络中的剩余时钟节点。因此,本发明实施例实现了基于1588协议在Mesh网络中的时钟节点之间传递时间。
请参阅图2,为本发明实施例提供的一种基于1588协议传递时间的方法的流程示意图。所述方法应用于Mesh网络,所述Mesh网络用于与基准时钟设备通讯,所述基准时钟设备用于提供基准时间,所述Mesh网络包括多个互连的时钟节点,且只有一个时钟节点与所述基准时钟设备通讯。如图2所示,所述方法包括:
S11:获取目标时钟节点与所述基准时钟设备之间的基准时间偏差,所述目标时钟节点与所述基准时钟设备通讯。
在本实施例中,所述目标时钟节点与所述基准时钟设备通讯,根据所述目标时钟节点内置的时钟模块或者FPGA模块,跟踪并锁定所述基准时钟设备的PPS秒脉冲信号,从而测量得到所述目标时钟节点与所述基准时钟设备之间的基准时间偏差,并将其存储于所述目标时钟节点,以便于所述Mesh网络获取所述基准时间偏差。
其中,所述基准时钟设备为GPS或GPS模块,所述基准时间为GPS时间,所述目标时钟节点根据获取到的所述GPS时间,基于1588协议,使得所述GPS时间在所述Mesh网络中的所有时钟节点之间传递。
具体的,所述基准时间偏差为所述GPS到所述目标时钟节点的时间差值,所述GPS向所述目标时钟节点发送所述GPS时间,所述目标时钟接收所述GPS时间,根据所述GPS时间,测量得到所述基准时间偏差以及所述GPS到所述目标时钟节点的相位差。
S12:基于1588协议,将所述基准时间偏差组装在Announce报文的PTP报文头中,其中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间。
其中,1588协议也称网络测量和控制系统的精密时钟同步协议标准,用以使得分布式网络内的最精确时钟与其他时钟保持同步。其中,1588协议定义了一种精确时间协议PTP(Precision Time Protocol),PTP协议用于对标准以太网或其他采用多播技术的分布式总线系统中的传感器、执行器以及其他终端设备中的时钟进行亚微秒级同步。
具体的,可以1588协议规定了PTP报文,PTP报文包括事件报文和通用报文,其中,事件报文是在发送和接收的过程中都需要精密时间戳,会激发发送后续消息的报文,主要包括sync报文、Delay_Req报文、Pdelay_Req报文及Pdelay_Resp报文;通用报文则不会激发后续消息,主要包括Announce报文、Follow_up报文、Delay_Resp报文、Pdelay_Resp_Follow_up报文、Management报文及Signaling报文。
PTP报文可以采用PTP over用户数据报协议(UDP)over IPv4、PTP over UDP overIPv6、PTP over IEEE 802.3/Ethernet,PTP over Device NET、PTP over Control NET、PTP over IEC 61158 Type 10(现场总线)等方式,电信网通常应用前3中方式。以PTP overUDP over IPv4为例,该协议描述的是如何使用UDP和以太网协议版本4(IPv4)完成PTP报文的传输。在该传输协议下,首先将PTP报文封装到UDP数据包中,为识别其为PTP报文数据,PTP报文的第一字节应该紧跟在UDP报文头的最后一字节之后,加入IPv4协议的IP包头后,再封装到以太网帧中进行传输。
其中,所述Announce报文是用来描述时间源能力的报文,可用于向所述Mesh网络中剩余时钟节点广播,用以使得所述GPS时间在所述Mesh网络中传递。请参阅表1,表1为IEEE 1588-2008协议中定义的Announce报文格式。
Octets | Offset | |
header | 34 | 0 |
originTimestamp | 10 | 34 |
currentUtcOffset | 2 | 44 |
reserved | 1 | 46 |
grandmasterPriority1 | 1 | 47 |
grandmasterClockQuality | 4 | 48 |
grandmasterPriority2 | 1 | 52 |
grandmasterIdentity | 8 | 53 |
stepsRemoved | 2 | 61 |
timeSource | 1 | 63 |
表1
在本实施例中,所述基准时间偏差组装在Announce报文的PTP报文头中。请参阅表2,表2为IEEE 1588-2008协议中定义的PTP报文头格式。
表2
其中,所述Announce报文属于所述PTP报文的一种,所述PTP报文由报文头、报文主体及报文扩展字段(可选)等部分组成,所述PTP报文头包括34个字节(272个bit),所述PTP报文头格式适用于所有的PTP报文。
在本实施例中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间。具体的,flagField字段用于标识所述Announce报文是否携带基准时间,该字段包括显示状态的多种标志。
表3
请参阅表3,表3为flagField字段bit7的定义。
其中,所述标志域字段的第7位为真时,所述Announce报文携带基准时间;所述标志域字段的第7位为假时,所述Announce报文未携带基准时间。具体的,所述标志域字段的第7位定义为gpsTimeFlag,当所述gpsTimeFlag等于TRUE时,表示所述Announce报文携带基准时间;当所述gpsTimeFlag等于FALSE时,表示所述Announce报文未携带基准时间。
可以理解,所述时钟节点根据接收的Announce报文,获取所述Announce报文的所述PTP报文头的所述标志域字段的内容,从而确定所述Announce报文是否携带基准时间,根据所述Announce报文是否携带基准时间,提升时钟节点之间传递时间的效率,例如,当确定所述Announce报文未携带基准时间,可以直接丢弃该报文。
请参阅图3,述基准时间偏差为浮点型格式,所述基于1588协议,将所述基准时间偏差组装在Announce报文的PTP报文头中,包括:
S121:将浮点型格式的基准时间偏差转换为结构体格式的时间戳,所述时间戳包括所述基准时间偏差的数值信息和所述基准时间偏差的数值正负信息。
在本实施例中,所述基准时间偏差以浮点型格式存储于所述目标时钟节点,记为gOffset。
其中,将浮点型格式转换为结构体格式,即将浮点型格式的gOffset转换为structTimestamp格式的gOffset。1588协议中定义的将浮点型格式的基准时间偏差转换为结构体格式如下:
struct Timestamp
{
UInteger48 secondsField;
UInteger32 nanosecondsField;
};
Timestamp gOffset;
Boolean negative.
其中,定义所述结构体格式的时间戳(即struct Timestamp格式的gOffset)包括Timestamp gOffset和Boolean negative,定义Timestamp gOffset表示所述基准时间偏差的数值信息,定义Boolean negative表示所述基准时间偏差的数值正负信息。当Booleannegative等于TRUE时,表示所述基准时间偏差为负数,当Boolean negative等于FALSE时,表示所述基准时间偏差为正数。
S122:基于1588协议,将所述时间戳组装在Announce报文的PTP报文头中。
为了便于传输所述基准时间偏差的数值信息Timestamp gOffset和所述基准时间偏差的数值正负信息negative,需要重定义所述PTP报文头中的Offset为8的correctionField字段与Offset为16的reserved字段。
在本实施例中,所述将所述时间戳组装在Announce报文的PTP报文头中包括:将所述时间修正域字段与所述预留字段重定义为时间戳描述字段,并将所述时间戳组装在重定义后的Announce报文的PTP报文头中,所述时间戳描述字段用于描述所述时间戳的时间属性。
请参阅图4,所述基于1588协议,将所述时间戳组装在Announce报文的PTP报文头中,包括:
S1221:基于1588协议,重定义所述PTP报文头中的所述时间修正域字段与所述预留字段。
如表2所示,所述PTP报文头包括时间修正域字段与预留字段。
具体的,将表2中的correctionField字段和以及correctionField字段的下一个字段(即reserved字段)重定义为时间戳描述字段。
Type | Octets | Offset | |
secondsField | UInteger48 | 6 | 8 |
nanosecondsField | UInteger32 | 4 | 14 |
flag | UInteger8 | 1 | 18 |
reserved | 1 | 19 |
表4
请参阅表4,表4为重定义后的时间戳描述字段的定义。
其中,所述时间戳描述字段包括与所述时间戳对应的秒部分描述字段、纳秒部分描述字段及时间标记描述字段。所述基准时间偏差的数值信息分别填入对应的所述秒部分描述字段和所述纳秒部分描述字段,所述数值正负信息填入对应的所述时间标记描述字段,所述时间标记描述字段用于标识所述基准时间的正负。
如表4所示,secondsField字段用于描述Timestamp gOffset的秒部分,nanosecondsField字段用于描述Timestamp gOffset的纳秒部分。
表5
请参阅表5,表5为表4中的flag字段的定义
在实施例中,所述时间标记描述字段用于标识所述基准时间的正负,即所述数值正负信息填入对应的flag字段的第0比特位。所述时间标记描述字段的第0位为真时,所述基准时间为正;所述时间标记描述字段的第0位为假时,所述基准时间为负。
进一步的,通过获取secondsField字段的内容,可以得到Timestamp gOffset的秒部分的数值,通过获取nanosecondsField字段的内容,可以得到Timestamp gOffset的纳秒部分的数值,通过获取flag字段的内容,可以得到所述基准时间偏差的数值正负,也即所述基准时间正负。具体的,所述标志域字段的第7位定义为negative,也即negative填入所述时间标记描述字段的第0位,当所述negative等于TRUE时,表示所述基准时间为正;当所述negative等于FALSE时,表示所述基准时间为负。
S1222:将所述时间戳组装在重定义后的Announce报文的PTP报文头中。
S13:向剩余时钟节点广播组装后的Announce报文。
将所述基准时间偏差组装在Announce报文的PTP报文头中,其中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间,通过向剩余时钟节点广播组装后的Announce报文,使得所述GPS时间在所述Mesh网络中传递,且所述剩余时钟节点中任一时钟节点可以获得所述基准时间偏差。
本发明实施例提供的一种基于1588协议传递时间的方法,通过将所述基准时间偏差组装在Announce报文的PTP报文头中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间,向剩余时钟节点广播组装后的Announce报文,从而使得基准时间偏差传递至Mesh网络中的剩余时钟节点。因此,本发明实施例实现了基于1588协议在Mesh网络中的时钟节点之间传递时间。
请参阅图5,为本发明另一实施例提供的一种基于1588协议传递时间的方法的流程示意图。如图5所示,所述方法还包括:
S14:根据所述剩余时钟节点中任一时钟节点与所述基准时钟设备之间传输的PTP报文,计算所述剩余时钟节点中任一时钟节点与所述基准时钟设备之间的同步时间偏差。
在本实施例中,所述剩余时钟节点中任一时钟节点与所述基准时钟设备之间的同步时间偏差通过PTP协议获得。
例如,如图7所示,时钟节点A为基准时钟设备,时钟节点A与时钟节点B之间传递PTP报文,包括PTP报文的接收与响应。
其中,时钟节点A周期性的发出sync报文,并记录下sync报文离开时钟节点A的精确发送时间t11,同时,时钟节点A将精确发送时间他t11封装到Follow_up报文中,发送至时钟节点B;时钟节点B记录下sync报文到达时钟节点B的精确到达时间t12;时钟节点B向时钟节点A发送Delay_Req报文,并记录Delay_Req报文的精确发送时间t13;时钟节点A记录Delay_Req报文达到的精确到达时间t14;时钟节点A将携带精确到达时间t14的Delay_Resp报文发送至时钟节点B。
因此,时钟节点B与时钟节点A之间的同步时间偏差等于(t12-t11+t13-t14)/2,时钟节点B与时钟节点A之间的传输延时等于(t12-t11-t13+t14)/2。
还例如,如图8所示,时钟节点A为基准时钟设备,时钟节点A与时钟节点C之间传递PTP报文,包括PTP报文的接收与响应。
其中,时钟节点A周期性的发出sync报文,并记录下sync报文离开时钟节点A的精确发送时间t21,同时,时钟节点A将精确发送时间t21封装到Follow_up报文中,发送至时钟节点C;时钟节点C记录下sync报文到达时钟节点C的精确到达时间t22;时钟节点C向时钟节点A发送Delay_Req报文,并记录Delay_Req报文的精确发送时间t23;时钟节点A记录Delay_Req报文达到的精确到达时间t24;时钟节点A将携带精确到达时间t24的Delay_Resp报文发送至时钟节点C。
因此,时钟节点C与时钟节点A之间的同步时间偏差等于(t22-t21+t23-t24)/2,时钟节点C与时钟节点A之间的传输延时等于(t22-t21–t23+t24)/2。
S15:根据所述基准时间偏差与所述同步时间偏差,控制所述Mesh网络中任一时钟节点与所述基准时钟设备的时间同步。
其中,时间同步也称为相位同步,是指所述Mesh网络中任一时钟节点与所述基准时钟设备之间的GPS时间信号的频率和相位保持一致。
请参阅图6,根据所述基准时间偏差与所述同步时间偏差,控制所述Mesh网络中任一时钟节点与所述基准时钟设备的时间同步,包括:
S151:相加所述基准时间偏差与所述同步时间偏差,得到时间偏差总和。
S152:控制所述Mesh网络中任一时钟节点补偿所述时间偏差总和,以使所述Mesh网络中任一时钟节点与所述基准时钟设备的时间同步。
可以理解,以时钟节点B为例,相加所述基准时间偏差与时钟节点B与时钟节点A之间的时钟节点B,可以得到时钟节点B与所述GPS的时间偏差,通过补偿对应的时间偏差,可以将时钟节点B同步到所述GPS。
本发明实施例提供的一种基于1588协议传递时间的方法,通过根据剩余时钟节点中任一时钟节点与基准时钟设备之间传输的PTP报文,计算剩余时钟节点中任一时钟节点基准时钟设备之间的同步时间偏差,再根据基准时间偏差与同步时间偏差,控制Mesh网络中任一时钟节点与基准时钟设备的时间同步,因此,本发明实施例实现Mesh网络中任一时钟节点与基准时钟设备的时间同步。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种基于1588协议传递时间的方法,应用于Mesh网络,所述Mesh网络用于与基准时钟设备通讯,所述基准时钟设备用于提供基准时间,所述Mesh网络包括多个互连的时钟节点,且只有一个时钟节点与所述基准时钟设备通讯,其特征在于,所述方法包括:
获取所述基准时钟设备的PPS秒脉冲信号;
根据所述PPS秒脉冲信号获取目标时钟节点与所述基准时钟设备之间的基准时间偏差,所述目标时钟节点与所述基准时钟设备通讯;
基于1588协议,将所述基准时间偏差组装在Announce报文的PTP报文头中,其中,所述PTP报文头包括标志域字段,所述标志域字段用于标识所述Announce报文是否携带基准时间;
向剩余时钟节点广播组装后的Announce报文;
根据所述剩余时钟节点中任一时钟节点与连接于所述基准时钟设备的时钟节点之间传输的PTP报文,获得所述剩余时钟节点中任一时钟节点与连接于所述基准时钟设备的时钟节点之间的同步时间偏差;
将与连接于所述基准时钟设备的时钟节点与所述基准时钟设备之间的基准时间偏差、所述与连接于所述基准时钟设备的时钟节点与剩余时钟节点中任一时钟节点之间的同步时间偏差相加,再除以节点数,获得与连接于所述基准时钟设备的时钟节点与所述剩余时钟节点组成的Mesh网络的中心位置的相位差值;
根据所述相位差值,将所述与连接于所述基准时钟设备的时钟节点对齐到所述中心位置,并且,根据所述相位差值,将所述剩余时钟节点对齐到所述中心位置。
2.根据权利要求1所述的方法,其特征在于,所述基准时间偏差为浮点型格式,所述基于1588协议,将所述基准时间偏差组装在Announce报文的PTP报文头中,包括:
将浮点型格式的基准时间偏差转换为结构体格式的时间戳,所述时间戳包括所述基准时间偏差的数值信息和所述基准时间偏差的数值正负信息;
基于1588协议,将所述时间戳组装在Announce报文的PTP报文头中。
3.根据权利要求2所述的方法,其特征在于,所述PTP报文头包括时间修正域字段与预留字段,所述基于1588协议,将所述时间戳组装在Announce报文的PTP报文头中,包括:
基于1588协议,重定义所述PTP报文头中的所述时间修正域字段与所述预留字段;
将所述时间戳组装在重定义后的Announce报文的PTP报文头中。
4.根据权利要求3所述的方法,其特征在于,所述将所述时间戳组装在重定义后的Announce报文的PTP报文头中,包括:
将所述时间修正域字段与所述预留字段重定义为时间戳描述字段,并将所述时间戳组装在重定义后的Announce报文的PTP报文头中,所述时间戳描述字段用于描述所述时间戳的时间属性。
5.根据权利要求4所述的方法,其特征在于,所述时间戳描述字段包括与所述时间戳对应的秒部分描述字段、纳秒部分描述字段及时间标记描述字段;
其中,所述基准时间偏差的数值信息分别填入对应的所述秒部分描述字段和所述纳秒部分描述字段,所述数值正负信息填入对应的所述时间标记描述字段,所述时间标记描述字段用于标识所述基准时间的正负。
6.根据权利要求5所述的方法,其特征在于,
所述时间标记描述字段的第0位为真时,所述基准时间为正;
所述时间标记描述字段的第0位为假时,所述基准时间为负;
所述标志域字段的第7位为真时,所述Announce报文携带基准时间;
所述标志域字段的第7位为假时,所述Announce报文未携带基准时间。
7.根据权利要求1所述的方法,其特征在于,所述基准时间为GPS时间。
8.一种基于1588协议传递时间的系统,其特征在于,包括:
基准时钟设备;和
Mesh网络,所述Mesh网络用于与所述基准时钟设备通讯,以使所述Mesh网络中任一时钟节点执行上述权利要求1至7任一项所述的基于1588协议传递时间的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910485849.5A CN110113127B (zh) | 2019-06-05 | 2019-06-05 | 一种基于1588协议传递时间的方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910485849.5A CN110113127B (zh) | 2019-06-05 | 2019-06-05 | 一种基于1588协议传递时间的方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110113127A CN110113127A (zh) | 2019-08-09 |
CN110113127B true CN110113127B (zh) | 2021-08-20 |
Family
ID=67493986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910485849.5A Active CN110113127B (zh) | 2019-06-05 | 2019-06-05 | 一种基于1588协议传递时间的方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110113127B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113708869B (zh) * | 2020-05-20 | 2024-04-12 | 华为技术有限公司 | 配置端口状态的方法、装置及系统 |
CN112152747B (zh) * | 2020-10-14 | 2023-07-21 | 长沙行深智能科技有限公司 | 一种车载多控制器时间同步方法及系统 |
CN113613326A (zh) * | 2021-08-30 | 2021-11-05 | 麦芯(太仓)科技有限公司 | 一种自组网节点同步方法、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103974408A (zh) * | 2014-04-01 | 2014-08-06 | 宽兆科技(深圳)有限公司 | 一种基于Mesh网的OFDMA系统及控制方法 |
CN107105498A (zh) * | 2016-02-22 | 2017-08-29 | 华为技术有限公司 | 定位方法和装置 |
CN109218007A (zh) * | 2017-07-03 | 2019-01-15 | 中兴通讯股份有限公司 | 路径选择方法、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8139558B2 (en) * | 2008-05-02 | 2012-03-20 | The Boeing Company | Method and system for establishing a system time within a mobile ad hoc network |
CN102833176B (zh) * | 2011-06-13 | 2018-01-26 | 腾讯科技(深圳)有限公司 | 获取信息的方法、装置和系统 |
US10390324B2 (en) * | 2015-05-25 | 2019-08-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Adaptive measurement report mapping for UE positioning |
-
2019
- 2019-06-05 CN CN201910485849.5A patent/CN110113127B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103974408A (zh) * | 2014-04-01 | 2014-08-06 | 宽兆科技(深圳)有限公司 | 一种基于Mesh网的OFDMA系统及控制方法 |
CN107105498A (zh) * | 2016-02-22 | 2017-08-29 | 华为技术有限公司 | 定位方法和装置 |
CN109218007A (zh) * | 2017-07-03 | 2019-01-15 | 中兴通讯股份有限公司 | 路径选择方法、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于IEEE1588的工业以太网实时同步技术的研究与开发;陈大峰;《中国优秀硕士学位论文全文数据库》;20131215;第15—34页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110113127A (zh) | 2019-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110113127B (zh) | 一种基于1588协议传递时间的方法及其系统 | |
US9929855B2 (en) | Synchronizing clocks in a communications network | |
US10158444B1 (en) | Event-driven precision time transfer | |
US8681772B2 (en) | Timing synchronization for networks with radio links | |
US9154292B2 (en) | Communication apparatus, communication system, and time synchronization method | |
CN101594673B (zh) | 一种分布式处理1588时间戳的方法及系统 | |
CN101582733A (zh) | 一种在sdh设备之间实现高精度时间同步的方法和系统 | |
US20090086764A1 (en) | System and method for time synchronization on network | |
WO2017179608A1 (ja) | 時刻同期方法、センサ収容端末、およびセンサネットワークシステム | |
US20220007321A1 (en) | Network Entities and Methods for a Wireless Network System for Determining Time Information | |
CN103138887A (zh) | 一种1588事件报文的处理方法及系统 | |
CN101399655A (zh) | 穿通时钟设备同步端口的确定方法及装置 | |
CN111193997A (zh) | 一种uwb定位系统的到达时间差测量与校准方法 | |
WO2012149751A1 (zh) | 一种时钟等级分级方法及相关设备 | |
CN102571253B (zh) | 实现精确时间同步的方法和设备 | |
CN110290580B (zh) | 一种基于1588协议传递时间的方法及其系统 | |
US20080304521A1 (en) | Internal signaling method to support clock synchronization of nodes connected via a wireless local area network | |
CN110224777B (zh) | 一种基于1588协议传递时间的方法及其系统 | |
US20170117980A1 (en) | Time synchronization for network device | |
CN114928425A (zh) | 终端设备对时同步系统、方法、设备及存储介质 | |
JP2001036538A (ja) | 時刻同期方法及びその装置 | |
CN107959968B (zh) | 一种高精度、低开销的无线传感器网络时钟同步方法 | |
SE2150183A1 (en) | Robust time distribution and synchronization in computer and radio access networks | |
CN112737724B (zh) | 时间信息的同步方法及装置、存储介质、电子装置 | |
US20160128012A1 (en) | Communication system, communication system control method, transmission device, and reception device |
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 |