CN102377663A - 处理时钟报文的方法、设备及系统 - Google Patents
处理时钟报文的方法、设备及系统 Download PDFInfo
- Publication number
- CN102377663A CN102377663A CN2010102640220A CN201010264022A CN102377663A CN 102377663 A CN102377663 A CN 102377663A CN 2010102640220 A CN2010102640220 A CN 2010102640220A CN 201010264022 A CN201010264022 A CN 201010264022A CN 102377663 A CN102377663 A CN 102377663A
- Authority
- CN
- China
- Prior art keywords
- message
- clock
- node
- ipv6
- tunnel
- 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.)
- Pending
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/0673—Clock or time synchronisation among packet nodes using intermediate nodes, e.g. modification of a received timestamp before further transmission to the next packet node, e.g. including internal delay time or residence time into the packet
-
- 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/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明提供一种处理时钟报文的方法、设备及系统。该方法包括将时钟报文封装在IPv6逐跳选项中;发送封装后的时钟报文。本发明实施例提供的技术方案,可以提高根据时钟报文进行同步的时钟精度。
Description
技术领域
本发明涉及通信技术,尤其涉及一种处理时钟报文的方法、设备及系统。
背景技术
对于时钟同步和频率同步需求较高的场景,精确时钟协议(PrecisionTime Protocol,PTP)可以提供较好的解决方案。在PTP报文中包含处理时间修正域(correctionField),每个节点在PTP报文经过时,将本节点对该PTP报文的处理时间累加到该处理时间修改域中。每个节点上的处理时间为PTP报文离开此节点的时间与进入此节点的时间的差值。子时钟节点(slave)根据该处理时间修正域中记录的时间及其他相关时间,可以实现与主时钟节点(master)的同步。
时钟报文分为一般(general)时钟报文和事件(event)时钟报文;一般时钟报文用于传输协商消息或信息;事件时钟报文用于携带时钟同步时要处理的消息。对于一般时钟报文,透传时钟(Transparent Clock,TC)节点完全透传,不做任何处理;对于事件时钟报文,TC节点要对“处理时间修改域”做修正。
PTP在因特网协议(Internet Protocol,IP)网络应用时,可以采用用户数据包协议(User Datagram Protocol,UDP)封装,通过头部的“UDP封装+UDP端口号319”来标识封装有时钟报文。路由节点通过对经过的报文进行识别,如果经过的报文具有“UDP封装+UDP端口号319”这一特征,则对PTP报文做相应的处理。例如,当该路由节点为TC节点时,将对此PTP报文的处理时间修正域进行操作,将自身的处理时间累加进去。
在IPv6中,引入了“扩展头”的概念替代了IPv4中的头部选项部分。为每个路由节点必须处理的信息特意设定了逐跳选项头(Hop by hopoptions header)。此扩展头位于紧邻IPv6分组头之后。
采用UDP封装方式的PTP报文在经过IP隧道时,会被重新封装,加入新的IP头。则此IP报文的头部将是“IPinIP隧道”,而不是“UDP封装+UDP端口号319”。
发明人发现,现有技术中至少存在如下问题:采用UDP封装的PTP报文在经过IP隧道时,会造成途经的路由节点不能识别该报文封装有PTP报文,不能对PTP报文进行相应的处理,造成PTP协议仅仅在隧道两侧实现,而在中间的隧道部分未被实现,引入较大的时钟误差。
发明内容
本发明实施例是提供一种处理时钟报文的方法、设备及系统,提高根据时钟报文进行同步的时钟精度。
本发明实施例提供了一种处理时钟报文的方法,包括:
将时钟报文封装在IPv6逐跳选项中;
发送封装后的时钟报文。
本发明实施例提供了一种处理时钟报文的设备,包括:
封装模块,用于将时钟报文封装在IPv6逐跳选项中;
发送模块,用于发送封装后的时钟报文。
本发明实施例提供了一种处理时钟报文的系统,包括:
第一设备,该第一设备为上述的处理时钟报文的设备;以及
第二设备,用于接收所述第一设备处理后的时钟报文。
由上述技术方案可知,本发明实施例通过将时钟报文封装在IPv6逐跳选项中,由于后续途经的节点会对逐跳选项进行处理,因此,可以使得途经的节点对处理时间修正域进行相应的处理,提高根据时钟报文进行同步的时钟精度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例的方法流程示意图;
图2为本发明第二实施例的方法流程示意图;
图3为本发明实施例中将时钟报文封装在IPv6报文后的报文示意图;
图4为本发明实施例中PTP同步流程的示意图;
图5为本发明第三实施例的方法流程示意图;
图6为本发明第四实施例中进行角色判断及处理的流程示意图;
图7为本发明实施例中将封装有时钟报文的IPv6报文进行隧道封装后的报文示意图;
图8为本发明第四实施例对应的系统结构示意图;
图9为本发明第四实施例的方法流程示意图;
图10为本发明实施例中将采用UDP封装方式封装时钟报文的IPv6报文进行隧道封装后的报文示意图;
图11为本发明实施例中将采用UDP封装方式封装时钟报文的IPv4报文进行隧道封装后的报文示意图;
图12为本发明实施例中将封装有时钟报文的以太网报文进行隧道封装后的报文示意图;
图13为本发明实施例中将时钟报文封装在数据报文的IPv6选项后的报文示意图;
图14为本发明第五实施例的设备结构示意图;
图15为本发明第六实施例的系统结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先对本发明实施例中可能涉及的术语进行简要介绍:
PTP:Precision Time Protocol,精准时钟协议,IEEE1588v2中定义的一种时钟协议。
OC:Ordinary Clock,普通时钟,在PTP里特指只有一个接口的时钟。
Master Clock:主时钟节点,一般为高精度时钟,可以为其他网络节点提高时钟源信号,其他网元与主时钟节点对齐。
Slave Clock:从时钟节点,也称为子时钟节点或称目的时钟节点,接收从主时钟节点来的数据,进行同步处理,实现与主时钟节点对齐。
TC:Transparent Clock,透传时钟节点,主时钟节点与从时钟节点间报文交互要通过的网络节点。这些节点仅对报文做处理时间的标记,不处理时钟报文其他内容。
BC:Boundary Clock,边界时钟节点,在IEEE1588v2中定义的一种时钟节点,有多个节点,多种功能,可以与比自己高等级的时钟同步,并作为比自己等级低的时钟的时钟源。
correctionField:处理时间修正域,IEEE1588v2中定义的时钟报文中的一个域,用于记录此报文经过网络时各个网络节点的处理时间。各个节点把自己的处理时间累加在此域中。此“处理时间”定义为一个报文“进入”此节点的时间与“离开”此节点的时间,以硬件上“bit”的发送为基准。
时钟报文:IEEE1588v2中定义的,用以建立时钟同步关联和进行时钟同步所需要的通信数据。有两种时钟报文:一种是“general”(一般)时钟报文,用以传输协商消息或信息;一种是“event”(事件)时钟报文,用以携带时钟同步时要处理的消息。二者不同在于TC的处理方式。对于一般时钟报文,TC完全透传,不做任何动作。对于Event时钟报文,TC要对“处理时间修正域”做修正。本文中非特指情况下,“时钟报文”一词仅指代“Event”时钟报文。
E2E时钟:IEEE1588v2中定义的一种应用场景。这种场景中,只有时钟源和目的时钟才对时钟报文做解析,网络中通过的节点都仅对此报文的处理时间(correctionField域)做处理,其余部分透明传输,不做解析和处理。
IP:Internet Protocol,因特网协议,IETF在RFC791(v4)和RFC2460(v6)中定义的网际网协议。在本文中,如果有特指,则用IPv4或IPv6标明。如果非特殊指明,IP一词通用于IPv4和IPv6。
隧道:tunnel,一种让数据报文透明穿过某段或某种网络的方式。将一个数据报文或消息从一种协议封装或报文装到另一种协议报文中。封装后的数据报文在网络中通过包装采用的协议进行传输。隧道中传输的报文作为载荷在隧道中传播,不做解析。
UDP:User Datagram Protocol,IETF在RFC768中定义的传输层协议。
ETH:Ethernet,以太网,IEEE802.3定义的数据链路层协议。
TTL:Time-to-Live,生存期。IPv4标准里定义IPv4头部的一个字段。此字段标识了这个IP分组还允许在IP网络上被路由器转发多少次。每个路由器转发后将此字段减1,当此值为0时,路由器将不再转发此报文而是丢弃。在IPv6中,此字段被重命名为“Hop-Limit”。
Hop by hop options header:逐跳选项头,IPv6中定义的一种扩展选项,此选项内容要求途径的每个节点做处理。
HH PTP:Hop-by-Hop封装PTP报文选项。本发明新引入的特用称呼,指封装在Hop-by-Hop选项中的时钟报文,包含Hop-by-Hop选项头部。
图1为本发明第一实施例的方法流程示意图,包括:
步骤11:将时钟报文封装在IPv6逐跳选项中。
其中,对于不需要经过隧道的场景,该封装的执行主体可以为主时钟节点;对于需要经过隧道的场景,该封装的执行主体至少包括隧道入口节点,另外,对于需要经过隧道的场景,当全网支持该IPv6逐跳选项封装时,主时钟节点也可以进行上述封装。
另外,将时钟报文封装在IPv6逐跳选项中可以是:将时钟报文封装在第一报文的IPv6逐跳选项中,该第一报文可以为专门为携带时钟报文生成的,也可以为携带数据的数据报文。本发明实施例中进行处理的时钟报文是以事件时钟报文为例。对于一般时钟报文依旧可以采用UDP封装的方式,以节省路由节点的处理资源。当然,对于一般时钟报文也可以采用本发明实施例的技术方案。
步骤12:发送封装后的时钟报文。
对于主时钟节点,该封装后的报文的目的地址为从时钟节点;对于隧道入口节点,该封装后的报文的目的地址为隧道出口节点。
本实施例提供的技术方案,通过将时钟报文封装在IPv6逐跳选项中,由于后续途经的节点会对逐跳选项进行处理,因此,可以使得途经的节点对处理时间修正域进行相应的处理,提高根据时钟报文进行同步的时钟精度。
图2为本发明第二实施例的方法流程示意图,本实施例以全网支持IPv6逐跳选项封装时钟报文,且没有经过隧道为例。参见图2,本实施例包括:
步骤21:主时钟节点将时钟报文封装在IPv6报文的逐跳选项中。
其中,图3为本发明实施例中将时钟报文封装在IPv6报文后的报文示意图。参见图3,IPv6分组头中的“下一扩展头”域为“Hop-by-Hop(逐跳选项)”(例如用0表示),表示该分组头之后为逐跳选项。其中,以时钟报文为PTP报文为例,该PTP报文封装在逐跳选项中,即参见图3,在IPv6报文的分组头之后为PTP报文。
IPv6报文的分组头中各域的说明如表1所示:
表1
IPv6报文的逐跳选项中各域的说明如表2所示(重点介绍IP头和逐跳选项头):
表2
图3中的报文中还可以包括如下的域:
源地址(Source Address),目的地址(Destination Address),传输协议特定域(TS),保留域(r),消息长度(messagelength),域数量(domainNumber),保留域(reserved),标识域(flagField),时间修正域(correctionField),源端口标识(sourecePortIdentity),控制域(controlField),日志信息周期(logMessageInterval),序列号(sequenceId)、原始时间戳(originTimestamp)。
步骤22:途经节点(即目的IP地址不是自身的节点)从IPv6逐跳选项中获取时钟报文,并做相应处理。
例如,当途经的时钟节点为TC节点时,TC节点从IPv6逐跳选项中获取时钟报文,并更改其中的“处理时间修正域”。
步骤23:从时钟节点从IPv6逐跳选项中获取时钟报文,进行同步处理。
例如,从时钟节点从时钟报文中获取记录在处理时间域内的处理时间,并根据该时钟报文的发送时间(可以记录在时间戳内)和接收时间,以及从时钟节点向主时钟节点发送的延时请求报文的相关时间信息,可以对本地时间进行同步修正,实现与主时钟节点的同步。
以时钟报文为PTP报文中的同步报文为例,则同步修正流程可以如图4所示:图4为本发明实施例中PTP同步流程的示意图,参见图4,包括:
步骤41:主时钟节点向从时钟节点发送同步报文(Sync)。
该报文的发送时间为t11(可以包含在同步报文中),接收时间为t22。
其中,途经的中间节点(如TC节点)可以将自身的处理时间添加进同步报文的处理时间修正域,假设用Td1表示记录在处理时间修正域内的处理时间。
另外,主时钟节点在发送同步报文之后,还可以进一步发送跟随报文(Follow_Up)。
步骤42:从时钟节点向主时钟节点发送延时请求报文(Delay_Req);
该报文的发送时间为t13,接收时间为t14。记录的处理修正时间为Td2。
步骤43:主时钟节点向从时钟节点返回延时响应报文(Delay_Resp)该延时响应报文可以包含延时请求报文的接收时间t14及记录的处理修正时间Td2。
其次,估算时间差te=t22-(t11+Td1+tp);
则从时钟节点设定本地时间t=t-te,即将从时钟节点的时钟调慢te。
另外,当时钟报文发送给BC节点时,BC节点可以从IPv6逐跳选项中获取时钟报文,按照标准的IEEE 1588v2处理方式进行处理。
本实施例提供的技术方案,通过将时钟报文封装在IPv6报文的逐跳选项中,可以使得途经节点能够对该时钟报文进行处理,保证同步精度。
图5为本发明第三实施例的方法流程示意图,本实施例以全网支持IPv6逐跳选项封装时钟报文,且经过IPv6隧道为例。参见图5,本实施例包括:
步骤51:主时钟节点将时钟报文封装在IPv6报文的逐跳选项中,之后发送该封装后的报文。
其中,步骤51的具体实现可以参见步骤21。
步骤52:后续节点进行角色判断,并做相应处理。
该步骤52的具体内容可以参见图6,图6为本发明第四实施例中进行角色判断及处理的流程示意图。其中,角色判断节点在过程中起到判断本设备是什么节点的作用。图6的流程包括:
步骤61:确定接收的IPv6报文中包含时钟报文。
其中,当接收的IPv6报文同时满足如下条件时,表明该IPv6报文中封装有时钟报文:
条件一,IPv6报文包含逐跳选项。如当NextHeader=0时,就表示了分组头之后(Hop-by-Hop),即,当NextHeader=0就表示包含了逐跳选项;
条件二,逐跳选项中的类型值表明为时钟报文(如type=001xxxxx)。
步骤62:判断目的地址是否为自身的地址,若是,执行步骤66,否则,执行步骤63。
其中,可以通过比对IPv6报文头部的目的地址及自身地址,进行该步骤的判断。
步骤63:判断该接收报文是否需要进行隧道封装,若是,执行步骤64,否则,执行步骤65。
其中,可以在各节点的路由表中配置哪些节点需要进行隧道封装,记录需要进行隧道封装的节点的地址,通过比对该地址,可以确定某一节点处是否需要进行隧道封装。
步骤64:确定自身为隧道入口节点,隧道入口节点对封装有时钟报文的IPv6报文再次进行封装。
本步骤中,外层的源地址和目的地址为从隧道模块获取的隧道的源地址和目的地址。隧道模块用于提供隧道的源地址和目的地址。
具体的,步骤64中的隧道入口节点进行对封装有时钟报文的IPv6报文再次进行封装的流程可以参见图7,图7为本发明实施例中将封装有时钟报文的IPv6报文进行隧道封装后的报文示意图,具体域的名称可以参见图3。
值的说明的是,本实施例支持多重隧道,当一个报文已经经过一层隧道,即报文已经有图7所示的格式,则完整地把此报文封装在隧道中。在隧道封装的情况下,IPv6头部的“payloadlength”域的长度可以填写真实的长度,取代图7所示的104。
另外,1)Hoplimit域值拷贝自紧邻内层的相同域。例如,首次隧道封装时,则Hoplimit域值拷贝自没有被隧道封装过的IPv6报文的Hoplimit域,如图7的隧道外层IPv6时钟报文的Hoplimit域值拷贝自隧道内层IPv6时钟报文的Hoplimit域。或者,当隧道封装后被再次隧道封装时,则Hoplimit域值拷贝自上次封装后最外层的IPv6报文的Hoplimt域,如图7若是被再次隧道封装时,则再次隧道封装后的隧道最外层IPv6报文的Hoplimit域值拷贝自图7所示的隧道外层IPv6时钟报文的Hoplimit域。
2)对外层的时钟报文进行“处理时间修正域”的初始化,至少有两种方法,实现处理的多样化:
方法一,把紧邻内层的处理时间修正域拷贝到外层;
方法二,以“0”为初始值。
当报文输出隧道入口节点时,把隧道入口节点的处理时间累加到外层报文的“处理时间修正域”。
步骤65:确定自身为隧道内节点,或者,确定自身为隧道外中间节点。
对于隧道外中间节点可以采用步骤22所示的流程进行处理。
对于隧道内节点,从IPv6报文的逐跳选项中获取时钟报文信息,并更改其他的处理时间域。
其中,该处理的“处理时间域”为IPv6报文外层中的处理时间域。
步骤66:判断该接收报文是否已被隧道封装,若是,执行步骤67,否则,执行步骤68。
其中,当接收的报文同时满足如下条件时,为已被隧道封装的报文:条件一,报文内层封装有IPv6报文(如外层的NextHeader=41);条件二,内层的IPv6报文包含逐跳选项(如内层的NextHeader=0);条件三,该逐跳选项为时钟报文(如逐跳选项的type=001xxxxx)。
步骤67:确定自身为隧道出口节点。
隧道出口节点脱去外层IPv6报文并进行相关域的处理。
具体地,1)脱去IPv6外层报文,并记录此外层报文头部的hoplimit域值,将此值拷贝到紧邻内层的时钟报文的IPv6头部。
2)将IPv6外层报文中的逐跳选项中的“处理时间修正域”体现到内层,与隧道入口对应,可以采用如下方法:
方法一,将外层的“处理时间修正域”拷贝到紧邻内层的时钟报文相应域。
方法二,将外层的“处理时间修正域”累加到紧邻内层的时钟报文相应域。
3)在本报文流出输出端口时,把自己的处理时间累加到脱去IPv6外层后的报文头部的“处理时间修正域”中。
步骤68:确定自身为从时钟节点;
从时钟节点可能是BC节点或者OC节点。对于从时钟节点,可以采用步骤23所示的流程进行处理。
本实施例通过将时钟报文封装在逐跳选项中,能够在报文穿越隧道时,使得途经的隧道内节点可以识别对处理时钟报文,保证同步精度。
图8为本发明第四实施例对应的系统结构示意图,假设,网络1和网络3是同一种网络,例如,为IPv4、以太网(ETH)或者不支持本发明实施例提及的方案的IPv6网络,网络2为支持本发明实施例的IPv6网络。
图9为本发明第四实施例的方法流程示意图,本实施例以经过支持IPv6逐跳选项封装时钟报文的隧道但隧道两侧不支持IPv6逐跳选项封装时钟报文为例。
参见图9,本实施例包括:
步骤91:主时钟节点将时钟报文封装在对应报文中,之后发送该封装后的报文。
例如,将时钟报文以UDP方式封装在IPv6报文中,或者以UDP方式封装在IPv4报文中,或者封装在以太网报文中。其中,对于IPv6封装或者IPv4封装,可以用报文头部的“UDP封装+UDP端口号”进行标识(如端口号为319)。对于以太网报文,可以用协议类型(TYPE=88F7)来标识。
步骤92:后续节点进行角色判断,并做相应处理。
其中,角色判断的流程与图6所示的流程类似,只是在具体内容中有如下不同:
不同点一,判断接收的报文中是否包含时钟报文的方式不同:
对于接收的IPv6或者IPv4封装的报文,可以用“UDP封装+UDP端口号(=319)”来确定封装有时钟报文,对于以太网报文,可以用协议类型(=88F7)来确定封装有时钟报文。
不同点二,隧道入口节点对报文再次进行封装后的报文格式不同,并且相应域的取值不同。
图10为本发明实施例中将采用UDP封装方式封装时钟报文的IPv6报文进行隧道封装后的报文示意图。参见图10,隧道外层为IPv6时钟报文,隧道内层也为IPv6时钟报文,且隧道内层的IPv6报文中的“UDP+端口号=319”表明为UDP封装。具体域的名称可以参见图3,另外,图10中还包括源端口号(SourcePort),总长度(TotalLength)。
图11为本发明实施例中将采用UDP封装方式封装时钟报文的IPv4报文进行隧道封装后的报文示意图。参见图11,隧道外层为IPv6时钟报文,隧道内层为IPv4时钟报文,且隧道内层的IPv4报文中的“UDP+端口号=319”表明为UDP封装。具体域的名称可以参见图3及图10,另外,图11中还包括服务类型(TOS),分组标识(Identification),分片指示域(Flag),分片偏移(Fragment Offset),头校验(Header Checksum)。
图12为本发明实施例中将封装有时钟报文的以太网(ethernet)报文进行隧道封装后的报文示意图。隧道外层为IPv6时钟报文,隧道内层为以太网时钟报文,且隧道内层的以太网报文中的“TYPE=88F7”表明为以太网封装。具体域的名称可以参见图3。
根据接收报文的类型不同,隧道入口节点可以采用图10-12中的一种进行相应封装。
另外,外层报文中的Hoplimit值要取自内层报文的相应的域,例如,对于IPv6,取自Hoplimit域,对于IPv4,取自生存期(Time-to-Live,TTL)域,以太网对此域不关心。
封装的时候,Hop-by-hop的下一个扩展头域填充相应的协议类型,如对于IPv4,该域填充4,对于IPv6,该域填充41,对于以太网,该域填充97。
不同点三,隧道出口节点的执行方式有如下不同:
将外层报文的Hoplimit值复制到内层报文的相应的域,例如,对于IPv6,复制到Hoplimit域,对于IPv4,复制到TTL域,以太网对此域不关心。
根据Hop-by-hop的下一个扩展头域的协议类型,将报文转到相应的输出端口输出。例如,该域为4时,输出到IPv4端口,该域为41时,输出到IPv6端口,该域为97时,输出到以太网端口。
本实施例可以实现其它类型的时钟报文穿越IPv6隧道,并保证同步精度,实现与未采用本发明所示方案的网络对接。
上述实施例分别描述了对专门的协议报文携带时钟报文,另外,本发明实施例还可以用数据报文携带时钟报文,图13为本发明实施例中将时钟报文封装在数据报文的IPv6逐跳选项后的报文示意图。
参见图13,采用IPv6协议的数据报文在传输时,数据报文中的报文头中可以包含IPv6逐跳选项(Hop-by-Hop),当数据报文的报文头中包含IPv6逐跳选项时,可以将时钟报文封装在数据报文的IPv6逐跳选项中。
可以理解的是,用数据报文携带时钟报文的方式可以与上述各实施例分别结合使用,例如,该包含时钟报文的数据报文采用IPv6封装且不经过隧道,或者,该数据报文采用IPv6封装且经过IPv6隧道,或者,该数据报文采用普通的IPv6、IPv4或者以太网封装后且经过IPv6隧道。
本实施例通过数据报文携带时钟报文,无需为传输时钟报文专门生成IPv6报文,可以节省带宽。
值的说明的是,在本发明提供的实施例中,主时钟节点可以为时钟服务器,BC/TC节点可以为路由器,子时钟节点为基站。当然,举例只是为了描述方便,而不是对保护范围的限制。实际上主时钟节点、从时钟节点等,都是标准的说法,是逻辑上的概念。
图14为本发明第五实施例的设备结构示意图,包括封装模块141和发送模块142;封装模块141用于将时钟报文封装在IPv6逐跳选项中;发送模块142用于发送封装后的时钟报文。
其中,该封装模块141具体用于将时钟报文封装在第一报文的IPv6逐跳选项中,该第一报文为专门为携带时钟报文生成的,或者,该第一报文为携带数据的数据报文。
其中,该设备可以为主时钟节点,此时,封装模块141用于将时钟报文封装在IPv6报文的逐跳选项中。
或者,该设备可以为隧道入口节点,此时,封装模块141具体用于对接收的报文进行隧道封装,并将时钟报文封装在外层报文的IPv6逐跳选项中,其中,该接收的报文中为内层报文且包含时钟报文,该外层报文为IPv6报文。
另外,隧道入口节点中的封装模块141包括第一修正子单元1411或者第二修正子单元1412;第一修正子单元1411,用于将该内层报文中的时钟报文的处理时间修正域的值拷贝到该外层报文中的时钟报文的处理时间修正域,第二修正子单元1412,用于将该外层报文中的时钟报文的处理时间修正域的值设置为初始值0。
本实施例通过将时钟报文封装在IPv6逐跳选项中,由于后续途经的节点会对逐跳选项进行处理,因此,可以使得途经的节点对处理时间修正域进行相应的处理,实现时钟报文能够在穿越隧道时被识别和处理。
图15为本发明第六实施例的系统结构示意图,包括第一设备151和第二设备152;第一设备151可以为如图14所示的设备,第二设备152用于接收第一设备处理后的时钟报文。当第一设备151为主时钟节点时,第二设备152包括判断模块1521,判断模块1521用于进行角色判断,以确定第二设备为如下项中的一项:隧道外中间节点或者隧道内节点;隧道入口节点;隧道出口节点;从时钟节点。
具体地,判断模块1521包括第一判断单元15211、第二判断单元15212、第三判断单元15213和第一确定单元15214;第一判断单元15211用于在确定接收的报文中包含时钟报文的前提下,判断目的地址是否为第二设备的地址;第二判断单元15212用于第一判断单元的判断结果为目的地址为第二设备的地址时,判断接收报文是否已被进行隧道封装;第三判断单元15213用于在第二判断单元的判断结果为目的地址不是接收到报文的节点地址时,判断接收到的报文是否需要进行隧道封装;第一确定单元15214用于:当第二判断单元的判断结果为已被进行隧道封装,则确定接收到报文的节点为隧道出口节点,当未被进行隧道封装,则确定第二设备为从时钟节点;或,当第三判断单元的判断结果为需要进行隧道封装时,确定第二设备为隧道入口节点;或,当第三判断单元的判断结果为不需要进行隧道封装时,确定第二设备为隧道内节点或者隧道外中间节点。
进一步地,主时钟节点具体用于将时钟报文封装在第一IPv6报文的逐跳选项中;第二设备152为:隧道入口节点,用于对第一IPv6报文进行隧道封装,并将时钟报文再次封装在第二IPv6报文的逐跳选项中,其中,第二IPv6报文为第一IPv6报文的外层报文。
或者,
主时钟节点具体用于将时钟报文封装在第一IPv6报文的逐跳选项中;该系统还包括:隧道入口节点,用于对第一IPv6报文进行隧道封装,并将时钟报文再次封装在第二IPv6报文的逐跳选项中,其中,第二IPv6报文为第一IPv6报文的外层报文;第二设备152为:隧道内节点,用于对第二IPv6报文中的时钟报文中的处理时间修正域进行处理;和/或,隧道外中间节点,用于对第一IPv6报文中的时钟报文中的处理时间修正域进行处理。
或者,
主时钟节点具体用于将时钟报文封装在第一IPv6报文的逐跳选项中;该系统还包括:隧道入口节点,用于对第一IPv6报文进行隧道封装,并将时钟报文再次封装在第二IPv6报文的逐跳选项中,其中,第二IPv6报文为第一IPv6报文的外层报文;第二设备152为:隧道出口节点,用于将第二IPv6报文中的时钟报文的处理时间修正域的值拷贝到第一IPv6报文中的时钟报文的处理时间修正域,或者累加到第一IPv6报文中的时钟报文的处理时间修正域;脱去第二IPv6报文,将在隧道出口节点的处理时间累加到第一IPv6报文中的时钟报文的处理时间修正域。
本实施例通过将时钟报文封装在IPv6逐跳选项中,由于后续途经的节点会对逐跳选项进行处理,因此,可以使得途经的节点对处理时间修正域进行相应的处理,实现时钟报文能够在穿越隧道时被识别和处理。
可以理解的是,本发明实施例中的主时钟节点可以为时钟服务器,BC节点及TC节点可以为路由器,从时钟节点可以为基站。但是并不限于上述具体网元。
可以理解的是,本发明中的方法实施例及设备实施例中的相应特征可以相互参考。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (20)
1.一种处理时钟报文的方法,其特征在于,包括:
将时钟报文封装在IPv6逐跳选项中;
发送封装后的时钟报文。
2.根据权利要求1所述的方法,其特征在于,所述将时钟报文封装在IPv6逐跳选项中,包括:
将时钟报文封装在第一报文的IPv6逐跳选项中,所述第一报文为专门为携带时钟报文生成的,或者,所述第一报文为携带数据的数据报文。
3.根据权利要求2所述的方法,其特征在于,所述将时钟报文封装在第一报文的IPv6逐跳选项中,包括:
主时钟节点将时钟报文封装在第一报文的IPv6逐跳选项中。
4.根据权利要求2所述的方法,其特征在于,所述第一报文为外层报文,所述将时钟报文封装在第一报文的IPv6逐跳选项中,包括:
隧道入口节点对接收的报文进行隧道封装,并将时钟报文封装在外层报文的IPv6逐跳选项中,其中,所述接收的报文为内层报文并包含时钟报文,所述外层报文为IPv6报文。
5.根据权利要求4所述的方法,其特征在于,所述对接收的报文进行隧道封装,包括:
将所述内层报文中的时钟报文的处理时间修正域的值拷贝到所述外层报文中的时钟报文的处理时间修正域,或者,将所述外层报文中的时钟报文的处理时间修正域的值设置为初始值0。
6.根据权利要求4所述的方法,其特征在于,还包括:
隧道内的透传时钟TC节点对所述外层报文中的时钟报文中的处理时间修正域进行处理。
7.根据权利要求6所述的方法,其特征在于,还包括:
隧道出口节点将所述外层报文中的时钟报文的处理时间修正域的值拷贝到所述内层报文中的时钟报文的处理时间修正域,或者,累加到所述内层报文中的时钟报文的处理时间修正域;
脱去所述外层报文,将在隧道出口节点的处理时间累加到所述内层报文中的时钟报文的处理时间修正域。
8.根据权利要求4-7任一项所述的方法,其特征在于,所述接收的报文包括:封装有时钟报文的IPv6报文、封装有时钟报文的IPv4报文或者封装有时钟报文的以太网报文。
9.根据权利要求1所述的方法,其特征在于,还包括:
接收到报文的节点进行角色判断,以确定接收到报文的节点为如下项中的一项:隧道外中间节点或者隧道内节点;隧道入口节点;隧道出口节点;从时钟节点。
10.根据权利要求9所述的方法,其特征在于,所述进行角色判断,包括:
确定接收的报文中包含时钟报文;
判断目的地址是否为接收到报文的节点的地址;
当目的地址为接收到报文的节点的地址时,判断接收报文是否已被进行隧道封装,当已被进行隧道封装,则确定接收到报文的节点为隧道出口节点,当未被进行隧道封装,则确定接收到报文的节点为从时钟节点;
当目的地址不是接收到报文的节点地址时,判断接收到的报文是否需要进行隧道封装,当需要进行隧道封装时,确定接收到报文的节点为隧道入口节点;当不需要进行隧道封装时,确定接收到报文的节点为隧道内节点或者隧道外中间节点。
11.一种处理时钟报文的设备,其特征在于,包括:
封装模块,用于将时钟报文封装在IPv6逐跳选项中;
发送模块,用于发送封装后的时钟报文。
12.根据权利要求11所述的设备,其特征在于,所述封装模块具体用于将时钟报文封装在第一报文的IPv6逐跳选项中,所述第一报文为专门为携带时钟报文生成的,或者,所述第一报文为携带数据的数据报文。
13.根据权利要求12所述的设备,其特征在于,所述设备为主时钟节点;或者,
所述设备为隧道入口节点,所述隧道入口节点中的封装模块具体用于对接收的报文进行隧道封装,并将时钟报文封装在外层报文的IPv6逐跳选项中,其中,所述接收的报文为内层报文且包含时钟报文,所述外层报文为IPv6报文。
14.根据权利要求13所述的设备,其特征在于,所述隧道入口节点中的封装模块包括:
第一修正子单元,用于将所述内层报文中的时钟报文的处理时间修正域的值拷贝到所述外层报文中的时钟报文的处理时间修正域,或者,
第二修正子单元,用于将所述外层报文中的时钟报文的处理时间修正域的值设置为初始值0。
15.一种处理时钟报文的系统,其特征在于,包括:
第一设备,所述第一设备为如权利要求11至14任一项所述的处理时钟报文的设备;以及
第二设备,用于接收所述第一设备处理后的时钟报文。
16.根据权利要求15所述的系统,其特征在于,当所述第一设备为主时钟节点时,所述第二设备包括判断模块,所述判断模块用于进行角色判断,以确定第二设备为如下项中的一项:
隧道外中间节点或者隧道内节点;隧道入口节点;隧道出口节点;从时钟节点。
17.根据权利要求16所述的系统,其特征在于,所述判断模块包括:
第一判断单元,用于在确定接收的报文中包含时钟报文的前提下,判断目的地址是否为第二设备的地址;
第二判断单元,用于第一判断单元的判断结果为目的地址为第二设备的地址时,判断接收报文是否已被进行隧道封装;
第三判断单元,用于在所述第二判断单元的判断结果为目的地址不是接收到报文的节点地址时,判断接收到的报文是否需要进行隧道封装;
第一确定单元,用于:当第二判断单元的判断结果为已被进行隧道封装,则确定接收到报文的节点为隧道出口节点,当未被进行隧道封装,则确定第二设备为从时钟节点;或,当第三判断单元的判断结果为需要进行隧道封装时,确定第二设备为隧道入口节点;或,当第三判断单元的判断结果为不需要进行隧道封装时,确定第二设备为隧道内节点或者隧道外中间节点。
18.根据权利要求16或17所述的系统,其特征在于,所述主时钟节点具体用于将时钟报文封装在第一IPv6报文的逐跳选项中;
所述第二设备为:
隧道入口节点,用于对所述第一IPv6报文进行隧道封装,并将时钟报文再次封装在第二IPv6报文的逐跳选项中,其中,第二IPv6报文为第一IPv6报文的外层报文。
19.根据权利要求16或17所述的系统,其特征在于,所述主时钟节点具体用于将时钟报文封装在第一IPv6报文的逐跳选项中;所述系统还包括:隧道入口节点,用于对所述第一IPv6报文进行隧道封装,并将时钟报文再次封装在第二IPv6报文的逐跳选项中,其中,第二IPv6报文为第一IPv6报文的外层报文;
所述第二设备为:
隧道内节点,用于对所述第二IPv6报文中的时钟报文中的处理时间修正域进行处理;
和/或,
隧道外中间节点,用于对所述第一IPv6报文中的时钟报文中的处理时间修正域进行处理。
20.根据权利要求16或17所述的系统,其特征在于,所述主时钟节点具体用于将时钟报文封装在第一IPv6报文的逐跳选项中;所述系统还包括:隧道入口节点,用于对所述第一IPv6报文进行隧道封装,并将时钟报文再次封装在第二IPv6报文的逐跳选项中,其中,第二IPv6报文为第一IPv6报文的外层报文;
所述第二设备为:
隧道出口节点,用于将第二IPv6报文中的时钟报文的处理时间修正域的值拷贝到第一IPv6报文中的时钟报文的处理时间修正域,或者累加到第一IPv6报文中的时钟报文的处理时间修正域;脱去第二IPv6报文,将在隧道出口节点的处理时间累加到第一IPv6报文中的时钟报文的处理时间修正域。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102640220A CN102377663A (zh) | 2010-08-24 | 2010-08-24 | 处理时钟报文的方法、设备及系统 |
PCT/CN2011/075122 WO2011144135A1 (zh) | 2010-08-24 | 2011-06-01 | 处理时钟报文的方法、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102640220A CN102377663A (zh) | 2010-08-24 | 2010-08-24 | 处理时钟报文的方法、设备及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102377663A true CN102377663A (zh) | 2012-03-14 |
Family
ID=44991199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102640220A Pending CN102377663A (zh) | 2010-08-24 | 2010-08-24 | 处理时钟报文的方法、设备及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102377663A (zh) |
WO (1) | WO2011144135A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106301996A (zh) * | 2015-06-26 | 2017-01-04 | 中国移动通信集团公司 | 一种ptp报文自动测试的方法及装置 |
WO2017096914A1 (zh) * | 2015-12-07 | 2017-06-15 | 中兴通讯股份有限公司 | 一种实现时钟同步的方法及装置 |
CN108011837A (zh) * | 2017-11-21 | 2018-05-08 | 新华三技术有限公司 | 报文处理方法及装置 |
CN112511475A (zh) * | 2020-12-10 | 2021-03-16 | 国电南瑞科技股份有限公司 | 一种报文同步精度补偿方法及系统 |
US20210288784A1 (en) * | 2020-03-13 | 2021-09-16 | Arris Enterprises Llc | Packet timing system with improved hop count |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106603183B (zh) * | 2015-10-15 | 2019-11-15 | 中兴通讯股份有限公司 | 一种时间戳过滤方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453308A (zh) * | 2008-12-31 | 2009-06-10 | 华为技术有限公司 | Ip时钟报文处理方法、设备及系统 |
CN101494613A (zh) * | 2009-02-24 | 2009-07-29 | 华为技术有限公司 | 时钟报文隧道传输的方法、网络节点和通信系统 |
-
2010
- 2010-08-24 CN CN2010102640220A patent/CN102377663A/zh active Pending
-
2011
- 2011-06-01 WO PCT/CN2011/075122 patent/WO2011144135A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453308A (zh) * | 2008-12-31 | 2009-06-10 | 华为技术有限公司 | Ip时钟报文处理方法、设备及系统 |
CN101494613A (zh) * | 2009-02-24 | 2009-07-29 | 华为技术有限公司 | 时钟报文隧道传输的方法、网络节点和通信系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106301996A (zh) * | 2015-06-26 | 2017-01-04 | 中国移动通信集团公司 | 一种ptp报文自动测试的方法及装置 |
CN106301996B (zh) * | 2015-06-26 | 2019-10-08 | 中国移动通信集团公司 | 一种ptp报文自动测试的方法及装置 |
WO2017096914A1 (zh) * | 2015-12-07 | 2017-06-15 | 中兴通讯股份有限公司 | 一种实现时钟同步的方法及装置 |
CN108011837A (zh) * | 2017-11-21 | 2018-05-08 | 新华三技术有限公司 | 报文处理方法及装置 |
CN108011837B (zh) * | 2017-11-21 | 2021-06-29 | 新华三技术有限公司 | 报文处理方法及装置 |
US20210288784A1 (en) * | 2020-03-13 | 2021-09-16 | Arris Enterprises Llc | Packet timing system with improved hop count |
CN112511475A (zh) * | 2020-12-10 | 2021-03-16 | 国电南瑞科技股份有限公司 | 一种报文同步精度补偿方法及系统 |
CN112511475B (zh) * | 2020-12-10 | 2023-06-16 | 国电南瑞科技股份有限公司 | 一种报文同步精度补偿方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2011144135A1 (zh) | 2011-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101494613B (zh) | 时钟报文隧道传输的方法、网络节点和通信系统 | |
CN108737269B (zh) | 一种封装方法、装置和节点 | |
EP3216143B1 (en) | Transmitting residence time information in a network | |
US8325616B2 (en) | Method and system for determination and exchange of network timing information | |
CN102377663A (zh) | 处理时钟报文的方法、设备及系统 | |
JP5717868B2 (ja) | 透過クロックのトンネルフォローアップメッセージ | |
US9847868B2 (en) | Method of routing synchronization messages | |
US10505651B1 (en) | Precision time synchronization over standardized networking protocols | |
CN101212390A (zh) | 一种数据传输方法及装置 | |
WO2017177751A1 (zh) | 时间同步方法和装置 | |
JP5426695B2 (ja) | 少なくとも1つのタイミング配信プロトコルにより第1のデータおよび第2のデータを別々に伝送することによってクロックを同期するための方法、ならびに関連するシステムおよびモジュール | |
CN101902291B (zh) | 一种精确时间同步方法、设备和系统 | |
CN102457441A (zh) | 一种psn数据包处理方法及装置 | |
CN103227708B (zh) | 一种e1链路中的时钟同步报文的传输方法及装置 | |
EP3846364B1 (en) | Transporting client timing information across a network | |
EP2458757B1 (en) | A method for transmitting IEEE 1588V2 synchronization packets over ethernet in link-by-link mode, via network elements having a transparent clock, and associated help device | |
CN104506433B (zh) | 一种mpls网络中识别ptp报文的方法和装置 | |
JP2009239449A (ja) | 高精度同期型ネットワーク装置、ネットワークシステム及びフレーム転送方法 | |
CN104506296B (zh) | 一种保证ptp报文路径对称的实现方法 | |
EP2530880B1 (en) | Synchronous network switch | |
CN102684993B (zh) | 时钟报文隧道传输的方法、网络节点和通信系统 | |
JP7039125B2 (ja) | 時刻同期方法、時刻同期プログラム、および時刻同期装置、並びに、時刻同期システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120314 |