CN102684993B - 时钟报文隧道传输的方法、网络节点和通信系统 - Google Patents
时钟报文隧道传输的方法、网络节点和通信系统 Download PDFInfo
- Publication number
- CN102684993B CN102684993B CN201210082803.7A CN201210082803A CN102684993B CN 102684993 B CN102684993 B CN 102684993B CN 201210082803 A CN201210082803 A CN 201210082803A CN 102684993 B CN102684993 B CN 102684993B
- Authority
- CN
- China
- Prior art keywords
- tunnel
- clock message
- clock
- message
- network node
- 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
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种时钟报文隧道传输的方法、网络节点和通信系统,涉及通信领域。所述方法:在隧道入口,以该隧道相应的封装方式对接收到的隧道入口时钟报文进行封装处理,并对封装处理后的时钟报文进行时钟修正处理;对进行过时钟修正处理的时钟报文,发往隧道出口。一种处理时钟报文的网络节点包括封装模块和发送模块。一种通信系统包括前述处理时钟报文的网络节点、还包括隧道内网络节点和隧道出口网络节点。本发明通过对时钟报文重新进行封装后在隧道中进行穿越,由于后续处理中都是以节点自身为时钟参考点进行透传处理,无需各个网络节点都达到绝对的时间同步,不但解决了时钟报文隧道传输的时钟同步问题,而且使得隧道穿越中时钟同步更加精准。
Description
技术领域
本发明涉及通信领域,特别涉及一种时钟报文隧道传输的方法、网络节点和通信系统。
背景技术
随着电信网络IP(Internet Protocol,网际协议)化,电信设备支持IP传输成为一般必选项。而很多电信设备对时钟同步需求很高(如TD-CDMA要求NodeB设备绝对时间精度不低于±1.5μs)。而传统IP网络是基于分组交换的网络,由于对同步的要求并不高,所以并不能满足时钟同步很高的IP传输要求。而且,由于IP网络对物理层和数据链路层没有特殊的要求,一个运营网络可能由多个不同类型的物理网络构成,因此在这种网络环境(分组网络和混合网络集合成的网络环境)中,采取IP层的时钟协议是解决时钟同步的最终方案,因此IEEE1588协议(即PTP协议,precision time protocol,精准时钟协议)和IEEE1588v2协议(即PTPv2协议)就诞生于这种环境中,并得以广泛应用。
因为分组时钟报文在传输路径上延时的不确定性主要是由于途径网络节点的处理引起的,如排队,拥塞控制等,利用IEEE1588v2协议实现时钟同步的核心思想是,通过消除时钟报文在传输路径上的处理延时,从而达到时钟的同步。即IEEE1588v2协议中定义的时钟报文应用场景,时钟源和目的时钟对时钟报文做解析,网络中的网络节点对此时钟报文的处理时间记录在处理时间修正域中,通过对处理时间修正域做修正处理,从而实现时钟同步。
但是,IEEE1588v2协议并未考虑到时钟报文使用的UDP/IP(UserDatagram Protocol/Intemet Protocol,用户数据报协议/网际协议)数据分组穿越隧道的应用场景,当时钟报文在穿越隧道(例如,IP隧道、MPLS隧道、ETH隧道、IPSec隧道等)时由于不能对处理时间修正域进行修正处理,所以时钟报文在穿越隧道时会引入时钟的较大误差。
在实施本发明过程中,发明人发现现有技术中至少存在如下问题,利用这种方式解决隧道穿越中的时钟同步问题时,要求隧道入口节点和隧道出口节点必须绝对时间同步,才能精确计算T1与T2,从而实现时钟同步,但是实践中由于隧道入口节点和隧道出口节点一般很难做到绝对时间同步,所以这种方式在解决隧道穿越中时钟同步问题时其实也存在较大的误差。
发明内容
本发明实施例提供的一种时钟报文隧道传输的方法、网络节点和通信系统,以解决隧道穿越中时钟同步的问题。
一方面,提供了一种时钟报文隧道传输的方法,包括:在隧道入口,以该隧道相应的封装方式对接收到的隧道入口时钟报文进行封装处理,并对封装处理后的时钟报文进行时钟修正处理;对进行过所述时钟修正处理过的时钟报文,发往隧道出口。
另一方面,提供了一种处理时钟报文的网络节点,包括:封装模块,用于当接收到的时钟报文为隧道入口时钟报文时,将所述时钟报文以隧道相应的封装方式进行封装处理,并对封装的时钟报文进行时钟修正处理;发送模块,用于对所述封装模块处理过的时钟报文,发往隧道出口。
再一方面,提供了一种处理时钟报文的通信系统,包括前述的处理时钟报文的网络节点,还包括:隧道内网络节点,用于当接收到的时钟报文为隧道内时钟报文时,对所述时钟报文进行时钟修正处理;以及,隧道出口网络节点,用于当接收到的时钟报文为隧道出口时钟报文时,对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
本发明实施例提供的一种时钟报文隧道传输的方法、网络节点和通信系统的有益效果是:
本发明实施例以隧道相应的封装方式封装时钟报文,使得穿越隧道的过程中对封装的时钟报文能够进行修正处理,后续处理中无需各个网络节点都达到绝对的时间同步,不但解决了时钟报文隧道传输的时钟同步问题,而且使得隧道穿越中时钟同步更加精准。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中IEEE1588v2协议时钟报文传输原理图;
图2为本发明实施例提供的一种时钟报文隧道传输的方法流程图;
图3为本发明实施例提供的一种时钟报文隧道传输的方法流程图;
图4为实施例判断时钟报文类型的方法流程图;
图5为本发明实施例提供的一种采用逐层合并方法实现IP时钟报文穿越两层IP隧道的方法示意图;
图6为实施例隧道入口节点对时钟报文处理示意图;
图7为实施例隧道内节点对时钟报文处理示意图;
图8为实施例隧道出口节点对时钟报文处理示意图;
图9为本发明实施例提供的一种采用逐层替换方法实现IP时钟报文穿越两层IP隧道的方法示意图;
图10为本发明实施例提供的一种以太网时钟报文穿越IP隧道的方法示意图;
图11为实施例隧道入口节点对时钟报文处理示意图;
图12为实施例隧道出口节点对时钟报文处理示意图;
图13为本发明实施例提供的一种时钟报文穿越IPSec隧道的方法示意图;
图14为本发明实施例提供的一种处理时钟报文的网络节点结构框图;
图15为本发明实施例提供的一种处理时钟报文的网络节点结构框图;
图16为本发明实施例提供的一种处理时钟报文的网络节点结构框图;
图17为本发明实施例提供的一种处理时钟报文的通信系统示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
如图1所示为IEEE1588v2协议时钟报文传输原理图,其中Master OC(Ordinary clock,普通时钟)为主时钟,一般为高精度时钟,可以为其他网络节点提供时钟源信号;Slave OC为从时钟,子时钟或称目的时钟,接收从主时钟来的数据,与主时钟对齐;TC(Transparent Clock)为透传时钟,是主时钟与从时钟间的时钟报文交互要通过的网络节点,这些网络节点对该时钟报文做处理时间的标记,不处理时钟报文其他内容。从Master时钟网络节点发出的时钟报文,经过两个TC网络节点到达Slave时钟网络节点,总延时是tp(tp=t1+t2+t3+t4+t5),其中,t2和t4为TC网络节点对时钟报文的处理时间,t1、t3、t5为网络节点间传输的时间。时钟报文经过路径上的TC网络节点,在该时钟报文的处理时间修正域(correctionField)中添加其处理延时的时间“校正”。当一个时钟报文到达Slave时钟网络节点时,Slave时钟网络节点不仅掌握了Master发过来的时标,还掌握了路径上处理的延时td=t2+t4(可以从Slave时钟网络节点接收到的时钟报文处理时间修正域中得到该处理延时td),这样,就可以根据总延时tp和处理延时td计算出路径延时。如果假设路径是对称的,那么可以获得报文从Master发出后经过Slave返回Master的总时间T,于是可以计算出报文从Master到Slave经历的网络节点间的总传输时间t1+t3+t5=T/2-td,则Slave可以将本地时间加上t1+t3+t5及td,从而达到与Master的时钟同步。
表1IEEE1588v2时钟报文格式
IEEE1588v2协议中,时钟报文(如Sync时钟报文)格式如表1,时钟报文经过路径网络节点时,会在处理时间修正域中记录处理延时,具体为:处理时间修正域(correctionField)初始化为0(或初始化为其他值),路径网络节点时,网络节点解析出此域,把自己的处理时间加到此域值上(correctionField=correctionField+localProcessingDelay),重新打包,发往下一个网络节点,所以Slave便可以从时钟报文的处理时间修正域中获取总的处理延时td,利用上述计算方法便可以实现时钟同步了。可见,对于本发明实施例提供的时钟报文隧道传输(或者称时钟报文穿越隧道)的方案中只要能够得到时钟报文隧道传输总的处理时间,便可以利用上述计算方法实现时钟同步了。
参见图2,为本发明实施例提供的一种时钟报文隧道传输的方法,包括:
步骤S1:在隧道入口,以该隧道相应的封装方式对接收到的隧道入口时钟报文进行封装处理,并对封装处理后的时钟报文进行时钟修正处理;
步骤S2:对进行过所述时钟修正处理过的时钟报文,发往隧道出口。
本发明实施例以隧道相应的封装方式封装时钟报文,使得穿越隧道的过程中对封装的时钟报文能够进行修正处理,后续处理中,无需各个网络节点都达到绝对的时间同步,不但解决了时钟报文隧道传输的时钟同步问题,而且使得隧道穿越中时钟同步更加精准。
参见图3,本发明实施例提供的一种时钟报文隧道传输的方法,包括如下步骤:
步骤101:网络节点判断接收到的时钟报文的类型;
参见图4,由于每个网络节点可能同时担当多个角色,即:对于隧道入口时钟报文而言,该网络节点为隧道入口节点;对于隧道出口时钟报文而言,该网络节点为隧道出口节点;而对于隧道内时钟报文而言,该网络节点又是隧道内节点。所以,当网络节点接收到时钟报文时,可以判断接收到的时钟报文的类型是隧道入口时钟报文、隧道内时钟报文、还是隧道出口时钟报文,进而可以执行相应的后续处理(步骤102、103或104)。判断的具体实现方式描述如下:
步骤1201:网络节点接收到时钟报文;
步骤1202:判断所述时钟报文的目的地址是否为该网络节点自身,如果判断结果为否,则执行步骤1203,如果判断结果为是,则执行步骤1204;
步骤1203:判断所述时钟报文是否为需要打隧道的报文,如果判断结果为是,则确定所述时钟报文为隧道入口时钟报文;如果判断结果为否,则进一步判断所述时钟报文是否超长,如果判断结果为超长,则确定所述时钟报文为隧道内时钟报文,如果判断结果为未超长,则确定所述时钟报文为普通TC(Transparent Clock,透传时钟)时钟报文,相应的,可遵循IEEE1588v2协议对该普通TC时钟报文进行普通透传处理;
当时钟报文不是需要打隧道的报文时,还可以通过解析该时钟报文,通过判断其内层是否能识别到“UDP封装+UDP端口号319”特征,来确定该时钟报文为隧道内时钟报文还是普通TC时钟报文,当解析该时钟报文内层识别到其内层有“UDP封装+UDP端口号319”特征时,则该时钟报文为隧道内时钟报文,否则,为普通TC时钟报文。当然,实际应用中不限于上述两种方法判断是否为隧道内时钟报文。
具体的,上述步骤1203中判断所述时钟报文是否为需要打隧道的报文的步骤包括:与本节点中的隧道处理模块进行交互,根据该时钟报文的源地址和目的地址判断是否为需要打隧道的报文。当该时钟报文为需要打隧道的报文时,还包括从隧道处理模块中获取所述隧道的源地址和目的地址。
上述步骤1203中判断所述时钟报文是否超长的步骤包括:判断所述时钟报文是否超过IEEE1588v2协议规定的时钟报文的长度,比如IEEE1588v2协议规定一个Sync或Delay Req时钟报文的长度为44byte(不包含UDP头)。
步骤1204:判断所述时钟报文是否为被打隧道的报文,如果判断结果为是,则确定所述时钟报文为隧道出口时钟报文,如果判断结果为否,则确定所述时钟报文为普通BC(Boundary Clock,边界时钟)或OC(Ordinary Clock,普通时钟)时钟报文,相应的,可遵循IEEE1588v2协议进行普通BC处理或OC处理。
对于IP-in-IP隧道(前面的IP表示内层协议号,如IPv4、IPv6等,后面的IP表示IP隧道)而言,上述步骤1204中判断所述时钟报文是否为被打隧道的报文的步骤包括:判断当所述时钟报文的UDP端口标明为IEEE1588v2时钟报文,且所述时钟报文的长度超出了IEEE1588v2协议规定的标准IEEE1588v2时钟报文长度,且时钟报文的尾部标识为“IP/UDP/PTP”报文(即IPversion域为v4或v6,UDP协议号域为768,且UDP端口为319)时,该时钟报文为被打隧道的报文,否则不是被打隧道的报文。
对于ETH-in-IP隧道(前面的ETH表示内层协议号,即以太网协议的时钟报文,后面的IP表示IP隧道)而言,上述步骤1204中判断所述时钟报文是否为被打隧道的报文的步骤包括:判断当所述时钟报文的UDP端口标明为IEEE1588v2时钟报文,且所述时钟报文的长度超出了IEEE1588v2协议规定的标准IEEE1588v2时钟报文长度,且时钟报文尾部的以太头部中的
“type”域值为“0x88F7”时,该时钟报文为被打隧道的报文,否则不是被打隧道的报文。
步骤102:当接收到时钟报文为隧道入口时钟报文时,网络节点将所述时钟报文以隧道相应的封装方式进行封装处理,并对封装的时钟报文进行时钟修正处理;
其中,隧道相应的封装方式是指隧道能够识别的方式,比如当隧道为IP隧道时,对接收到的时钟报文以隧道相应的封装方式进行封装是指对接收到的时钟报文进行UDP封装;当隧道为MPLS隧道时,对接收到的时钟报文以隧道相应的封装方式进行封装是指对接收到的时钟报文进行MPLS封装;当隧道为ETH隧道时,对接收到的时钟报文以隧道相应的封装方式进行封装是指对接收到的时钟报文进行GRE封装,等等;本发明实施例不限于上述3种隧道和封装方式。
具体的,时钟报文可以包括时钟报文处理时间修正域,而隧道可以为单层隧道或多层隧道。相应的,将所述时钟报文以隧道相应的封装方式进行封装处理的步骤包括:设置所述时钟报文最外层处理时间修正域的初始值,生成新时钟报文,将原时钟报文添加在所述新时钟报文之后,并以该隧道相应的封装方式打包处理。
以穿越IP隧道为例详细说明此步骤:当接收到时钟报文为隧道入口时钟报文时,网络节点对接收到的时钟报文进行UDP封装,对UDP封装后的时钟报文的处理时间修正域进行时钟修正处理,然后将修正处理后的时钟报文送入隧道进行传输。将修正处理后的时钟报文送入隧道进行传输的步骤还可以包括:对送入隧道的时钟报文进行隧道封装的步骤,比如,时钟报文穿越的是IP隧道的话,则需要在时钟报文前添加IP头实现隧道封装,以便能够正常穿越隧道。
上述对封装的时钟报文进行时钟修正处理是指:将对所述时钟报文的处理时间加到时钟报文的处理时间修正域中,其中,对时钟报文的处理时间是指:从接收到该时钟报文至将该时钟报文发送出去之间,该网络节点对该时钟报文的处理时间,比如,包括依据IEEE1588v2协议对该时钟报文进行的透传处理时间、以该隧道能够识别的形式进行封装处理的时间、隧道封装处理的时间等等。
步骤103:当接收到的时钟报文为隧道内时钟报文时,网络节点对所述时钟报文进行时钟修正处理;
对所述时钟报文进行时钟修正处理是指:将对该时钟报文的处理时间加到时钟报文的处理时间修正域中,处理时间包括该网络节点对该时钟报文的透传处理的时间等。
对于现有的通信网络中已有的TC网络节点而言,如果能够支持对超长报文的处理,则不需要进行改动,可以直接适用于本发明实施例步骤103中,即对时钟报文进行时钟修正处理。此时需要现有的通信网络中已有的TC网络节点满足的条件有:1)该网络节点不限于处理定长的时钟报文,即不做长度检测;2)没有做长度限制,且对除“处理时间修正域”外的其他域不做任何改动或处理;3)对于IPv4隧道而言,UDP头中的校验设置为0;4)对于IPv6隧道而言,时钟报文校验计算不是针对定长的时钟报文,可以支持不定长时钟报文的校验计算。
当现有的通信网络中已有的TC网络节点不符合上述条件时,可以对其进行升级,以适用于本发明实施例步骤103中的方法。
因此,总体而言,本发明实施例对现有通信网络的改动很小,便于实现。
步骤104:当接收到的时钟报文为隧道出口时钟报文时,网络节点对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
所述时钟报文包括时钟报文处理时间修正域,所述隧道为单层隧道或多层隧道,则将所述时钟报文以隧道相应的封装方式进行封装处理的步骤包括:设置所述时钟报文最外层处理时间修正域的初始值,生成新时钟报文,将原时钟报文添加在所述新时钟报文之后,并以隧道相应的封装方式打包处理。相应的,对所述时钟报文进行解封装处理的步骤可以是:解包处理所述时钟报文,分离掉所述新时钟报文,并将解封装前时钟报文最外层处理时间修正域中的值减去最外层处理时间修正域的初始值,并加到解封装后时钟报文的处理时间修正域中。
其中,如果在隧道入口,设置所述时钟报文最外层处理时间修正域的初始值具体为将所述时钟报文最外层处理时间修正域中的值直接作为初始值;且在所述隧道内,对隧道内时钟报文进行时钟修正处理具体为对隧道内时钟报文的最外层处理时间修正域进行修正处理时,则在隧道出口,对所述时钟报文进行解封装处理可以是:解包处理所述时钟报文,分离掉所述新时钟报文,并将解封装前时钟报文最外层处理时间修正域中的值替换到解封装后时钟报文的最外层处理时间修正域中。
仍然以时钟报文穿越IP隧道为例说明:当接收到时钟报文为隧道出口时钟报文时,网络节点对接收到的时钟报文进行UDP解封装处理,对UDP解封装后的时钟报文的处理时间修正域进行时钟修正处理,此步骤还包括对该时钟报文进行隧道解封装的步骤,即剥离时钟报文的IP头的步骤。
可见,本发明实施例以隧道相应的封装方式封装时钟报文,使得穿越隧道的过程中对封装的时钟报文能够进行修正处理,并在穿越隧道后对时钟报文进行解封装处理,可以得到时钟报文在穿越隧道时总的处理时间,通过计算便可以解决时钟报文在隧道穿越中时钟同步的问题,同时由于隧道的每个网络节点对封装后的时钟报文的处理时间修正域进行修正处理时,都是以节点自身为时钟参考点,无需各个网络节点都达到绝对的时间同步,使得隧道穿越中时钟同步更加精准。
上述时钟报文隧道传输的方法不仅适用于穿越单层隧道的情形,还进一步适用于时钟报文穿越多层隧道的情形,即隧道入口节点和与隧道入口节点对应的隧道出口节点为至少两个的情形,时钟报文在各层隧道入口和各层隧道出口对处理时间修正域的修正处理方法可以采用逐层合并、逐层替换等多种方法,实际应用中不限于上述两种方法。
其中,逐层合并的方法,可以采用每层独立计算该层隧道的处理时间,在每层隧道入口处,将所述时钟报文以隧道相应的封装方式进行封装处理的步骤包括,设置接收到的时钟报文最外层处理时间修正域的初始值为0或其他数值,生成新时钟报文,将原时钟报文(即接收到的时钟报文)添加在所述新时钟报文之后,并以隧道相应的封装方式重新打包;对应的,在隧道内网络节点处,对所述隧道内时钟报文进行时钟修正处理的步骤包括,将对所述隧道内时钟报文的处理时间加到所述隧道内时钟报文的处理时间修正域中,此处对时钟报文的处理时间可以加到时钟报文的任一层处理时间修正域中;在每层隧道出口处,对所述时钟报文进行解封装处理的步骤包括,解包处理隧道出口接收到的时钟报文,分离掉添加在前面的所述新时钟报文,并将解封装前时钟报文最外层处理时间修正域中的值减去最外层处理时间修正域的初始值,并加到解封装后时钟报文的处理时间修正域中。此处可以将解封装前时钟报文最外层处理时间修正域中的值加到解封装后时钟报文的任意一层的处理时间修正域中,由于每层隧道出口时都可以对将解封装前时钟报文最外层处理时间修正域中的值进行求和,所以当时钟报文从最外层隧道穿越出来后,其处理时间修正域中的值便是穿越所有隧道后的处理时间之和。
逐层替换的方法:在每层隧道入口处,将所述时钟报文以隧道相应的封装方式进行封装处理的步骤包括,将所述时钟报文最外层处理时间修正域中的值直接作为初始值,生成新时钟报文,将原时钟报文添加在所述新时钟报文之后,并以隧道相应的封装方式重新打包;对应的,在隧道内网络节点处,对所述隧道内时钟报文进行时钟修正处理的步骤包括,将对所述隧道内时钟报文的处理时间加到所述隧道内时钟报文的最外层处理时间修正域中;在每层隧道出口处,对所述时钟报文进行解封装处理的步骤包括,在每层隧道出口处,解包处理所述时钟报文,分离掉所述新时钟报文,并将解封装前时钟报文最外层处理时间修正域中的值替换到解封装后时钟报文的最外层处理时间修正域中。此处由于在每层隧道入口处对时钟报文进行封装时,都需将封装前时钟报文的最外层处理时间修正域中的值替换到封装后时钟报文的最外层处理时间修正域中,在每层隧道出口处都会将解封装前时钟报文最外层处理时间修正域中的值替换到解封装后时钟报文的最外层处理时间修正域中,所以当时钟报文从最外层隧道穿越出来后,其处理时间修正域中的值便是穿越所有隧道后的处理时间之和。
当时钟报文穿越单层隧道时,在隧道入口的封装、隧道内的修正和在隧道出口的解封装也可以适用于上面介绍的封装、修正、解封装处理方法,此处不再赘述。
可见,本发明实施例还解决了多层隧道穿越中时钟同步的问题。
为了进一步提高时钟精度,所述方法还包括依据IEEE1588v2协议进行频率校正的步骤。
本发明实施例中的时钟报文包括IEEE1588v2时钟报文。网络节点可以是服务器、交换机、路由器或无线基站等。
本发明实施例中时钟报文包括但不限于IP(因特网协议)时钟报文、ETH(以太网)时钟报文、MPLS(多协议标签交换)时钟报文等,隧道包括但不限于IP隧道、ETH隧道、MPLS隧道或IPSec(IP安全协议)隧道等。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于同构网络,还适用于异构网络。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于已有的隧道传输时钟报文,还适用于专门建立隧道传输时钟报文的情形。
参见图5,本发明实施例提供一种IP时钟报文穿越两层IP隧道的方法。
现有技术中,IEEE1588v2时钟报文在IP网络中应用时,采用的是UDP封装方式,UDP封装的时钟报文格式请参见表2。时钟报文在经过IP网络中的网络节点时,网络节点识别出该时钟报文的“UDP封装+UDP端口号319”特征后,对该时钟报文进行时钟修正处理,即把该网络节点对该时钟报文的透传处理时间加到处理时间修正域中。这里所述的时钟报文在IP网络中的应用不包括时钟报文在IP网络中穿越隧道的应用场景,因为IEEE1588v2协议不支持时钟报文应用于穿越隧道的场景。
表2UDP封装的时钟报文格式
现有技术中,IEEE1588v2时钟报文在穿越IP隧道时,会被进行隧道封装,即在外层添加一层IP头,如表3所示,因为如果不进行隧道封装,直接透传的话,该时钟报文将无法正确穿越IP隧道到达对端,在实施本发明过程中,发明人发现现有技术中至少存在如下问题,由于该时钟报文在进入IP隧道的过程中被添加了外层的IP头,所以此时钟报文的头部将被标识为“IP in IP隧道”,而不再被标识为“UDP封装+UDP端口号319”,这样途经的IP隧道中的网络节点将不能正确识别出该时钟报文,也就不会对处理时间修正域进行时钟修正处理,使得时间修正处理仅仅在隧道两侧实现,而隧道中间未做时钟修正处理的部分将会引入时钟的较大误差。
表3IP隧道封装后时钟报文格式
而本发明实施例提供的IP时钟报文穿越IP隧道的方法中,通过在穿越IP隧道时对时钟报文重新UDP封装,从而可以使时钟报文在IP隧道中间也可以进行时钟修正处理,进而解决时钟报文在穿越IP隧道中的时钟同步问题。
本发明实施例中的网络节点A、B、C、D、E、F、G分别为分布在网络中的服务器。这里采用逐层合并的方法,设置每层隧道入口时钟报文的处理时间修正域的初始值为0:
网络节点A,即master OC(IP:A)发送一个IEEE1588v2时钟报文(比如E2E场景的sync时钟报文)到网络节点B,即slave OC(IP:B),需要经过两个IP隧道,分别是TNL1(网络节点C→网络节点D)和TNL2(网络节点E→网络节点F)。回程的Delay Request也经过类似的处理过程。图5中阴影部分为每个网络节点要处理的处理时间修正域。在第一层隧道入口节点C(IP:C)处,将原IP时钟报文经过UDP封装;在第一层隧道出口节点D(IP:D)则进行UDP解封装处理,把解封装前最外层的处理时间修正域的值累加到解封装后最外层的处理时间修正域中,并继续转发。在另一个隧道E→F的处理方式类似。
参见图6,第一层IP隧道入口节点C接收到的时钟报文后,判断当该时钟报文的目的地址不是该网络节点自身,且此时钟报文为需要打隧道时钟报文时,确认该时钟报文为隧道入口时钟报文,即网络节点C为隧道入口节点,记录该时钟报文进入隧道入口节点C的IP端口的时间t1,将时钟报文经过IEEE1588v2协议进行TC处理后,进行UDP封装,并将UDP端口标识(即UDP port标识)设置为IEEE1588v2时钟报文,此时封装后的时钟报文头中的length域填充为整个UDP报文的长度,校验设为0,得到UDP封装的时钟报文,再将封装的时钟报文经过IP隧道封装,即在UDP报文的外层会添加一层IP头,并把“协议号(IPv4)”或“下一个头(IPv6)”域设为“IP-in-IP”(其中IP是内层协议号,IP表示穿越的是IP隧道);时钟报文在出网络节点C时,网络节点C记录自己对该时钟报文处理后的时间t2,修改UDP封装后的时钟报文最外层的处理时间修正域(图5中阴影部分)的值为tC=t2-t1,将修正处理后的时钟报文送入第一层IP隧道进行传输。上述过程还包括网络节点C将该时钟报文的目的地址转换成隧道出口地址,源地址转换成隧道入口地址的步骤。
上述封装的时钟报文包括两个部分,而不是两个时钟报文,即封装后的时钟报文的长度=新时钟报文的长度+原时钟报文(包括IP头)的长度,参见表4。可见,由于封装的步骤采用“新时钟报文”+“原时钟报文”的形式,不引入其他的改动,所以对现有时钟报文的改动很小,便于实现。
表4UDP封装后的时钟报文
当网络节点C对时钟报文进行UDP封装后从第一层IP隧道传送到网络节点E处时,通过判断,网络节点E接收到的时钟报文为隧道入口时钟报文,即网络节点E为第二层IP隧道入口节点,网络节点E对上述接收到的时钟报文(经网络节点C进行UDP封装后的时钟报文)再次进行上述UDP封装,对再次UDP封装后的时钟报文的最外层处理时间修正域进行修正处理,即修改UDP封装后的时钟报文最外层的处理时间修正域的值为tE,然后将修正处理后的时钟报文送入第二层IP隧道进行传输。
参见图7,隧道内节点G在接收到的时钟报文后,通过判断,当该时钟报文的目的地址不是该网络节点自身,确认此时钟报文不是需要打隧道的报文且为超长时钟报文时,确定网络节点G接收到的时钟报文为隧道内时钟报文,即网络节点G为IP隧道内节点,网络节点G对最外层的时钟修正域进行修正处理,被封装的原时钟报文并不被改动。时钟报文进入网络节点G的IP端口后,网络节点G首先记录进入时间t3,网络节点G对接收到的时钟报文进行尾部分离,对分离出尾部的时钟报文(即新时钟报文)按照IEEE 1588v2协议进行TC处理后,然后重新将尾部报文添加在经TC处理后的上述报文之后,记录该时钟报文出网络节点G的时间t4,将网络节点G的处理时间tG=t4-t3加到该时钟报文最外层处理时间修正域的值tE上,即此时该时钟报文最外层处理时间修正域的值为tE+tG,由网络节点G的IP端口输出后继续在隧道中传输。
参见图8,网络节点F接收到时钟报文,通过判断,当该时钟报文的目的地址是该网络节点自身,且此时钟报文为被打隧道的报文时,确认该时钟报文为隧道出口时钟报文,即网络节点F为隧道出口节点,时钟报文从第二层IP隧道传输至第二层隧道出口节点F后,网络节点F记录该时钟报文从其IP端口进入的时间t5,先进行隧道解封装处理,即剥离掉最外层IP头,然后分离掉添加在前面的新时钟报文,并将解封装前时钟报文最外层处理时间修正域中的值tE+tG加到解封装后时钟报文的处理时间修正域中(因为隧道入口处设置处理时间修正域的初始值为0),即得到tC+tE+tG,再将本网络节点F的处理时间tF=t6-t5累加到解封装后的时钟报文的最外层处理时间修正域中,即得到tC+tE+tG+tF,其中t6为时钟报文从网络节点F的IP端口出去的时间,即将tC+tE+tG+tF替换到解封装后的最外层处理时间修正域中,这里强调“解封装后的最外层”,目的是在穿越多层隧道时,各层隧道只做自己层的修正。在实际应用中,不限于解封装后的最外层,实现时加在解封装后的哪一层处理时间修正域中都可以,因为最终是所有各层之和。上述过程对接收到的时钟报文剥离外层IP头时,外层的TTL(Transister-Transister-Logic,晶体管-晶体管逻辑电路)变化也要替换到内层。
同理,网络节点D为第一层IP隧道的隧道出口节点,同样进行如上处理,便可以在最内层的处理时间修正域中得到时钟报文经过两层IP隧道后所有网络节点对其处理的总时间tC+tE+tG+tF+tD。
根据路径的对称性,通过计算便可以实现时钟报文在穿越隧道中的时钟同步。本发明实施例将IP时钟报文进行UDP封装,使得穿越隧道的过程中能够对UDP封装后的时钟报文的处理时间修正域进行修正处理,并在穿越隧道后对时钟报文进行UDP解封装处理,解决了时钟报文穿越IP隧道中时钟同步的问题,同时由于隧道的每个网络节点对封装后的时钟报文的处理时间修正域进行修正处理时,都是以节点自身为时钟参考点,无需各个网络节点都达到绝对的时间同步,使得隧道穿越中时钟同步更加精准。另外,对现有通信网络及时钟报文的改动很小,便于实现。
为了提高时钟精度,所述方法中网络节点C、E、G、F和/或D还可以进一步的采取IEEE588v2标准的6.5.4章节所描述的频率校正技术对时钟报文进行频率校正。
本发明实施例中的时钟报文包括IEEE1588v2时钟报文。
上述方法为采用逐层合并的方法实现的,参见图9所示的各层处理时间修正域中的值(阴影部分),为采用逐层替换的方法实现的,在进入第一层IP隧道时,隧道入口节点C将最外层处理时间修正域的值替换为tC,在进入第二层IP隧道时,隧道入口节点E设置UDP封装前的时钟报文最外层的处理时间修正域中的值tC作为UDP封装后的时钟报文的最外层处理时间修正域的初始值,隧道入口节点E再对该时钟报文进行时钟修正处理,即将本网络节点处理时间tE累加到上述初始值tC上,得到最外层处理时间修正域的值为tC+tE,在经过隧道内节点G时,对该隧道内时钟报文进行时钟修正处理,即将本网络节点处理时间tG累加到最外层处理时间修正域中,得到最外层处理时间修正域的值为tC+tE+tG,在出第二层IP隧道时,隧道出口节点F获取接收到的时钟报文最外层处理时间修正域中的值tC+tE+tG,加上将本网络节点处理时间tF(即对该时钟报文进行时钟修正处理),将相加结果tC+tE+tG+tF替换解封装处理后的时钟报文的最外层处理时间修正域中的值,即将解封装后的时钟报文最外层处理时间修正域的值替换为tC+tE+tG+tF,同理,在出第一层IP隧道时,隧道出口节点D将最外层处理时间修正域的值替换为tC+tE+tG+tF+tD。可见,本发明实施例进一步解决了时钟报文在多层隧道穿越中的时钟同步问题。
参见图10,本发明实施例提供的一种以太网ETH时钟报文穿越IP隧道的方法,即给出了一种时钟报文隧道传输适用于异构网络的具体实例,在IEEE1588v2协议中,一般解决异构网络的方式是采用BC的形式实现的,由于采用BC的方式实现时需要在进入不同类型网络时重新建立时钟参考点等,对于时钟同步的控制很复杂,而本发明实施例采用隧道的方式在异构网中传输时钟报文,由于采用的是TC的形式,所以相对BC的形式而言更便于对时钟报文传输的控制。进一步的,本发明实施例可以采用已有的隧道传输时钟报文,也可以专为时钟报文建立隧道,用以传输时钟报文,此隧道可以手工设置,也可以自动配置。
本发明实施例采用逐层合并的方法,设置每层隧道入口时钟报文的处理时间修正域的初始值为0:网络节点A,即master OC(MAC:A)发送一个以太网时钟报文(E2E场景的sync时钟报文)到网络节点B即slave OC(MAC:B),需要经过IP隧道TNL1(C→D)。回程的Delay Request也经过类似的处理过程。注意,图中阴影部分为对应网络节点要处理的“处理时间修正域”所在的位置。在隧道入口节点C(IP:C)处,将原以太网时钟报文经过UDP封装;在第一层隧道出口节点D(IP:D)则进行UDP解封装处理,把解封装前最外层的处理时间修正域的值累加到解封装后最外层的处理时间修正域中,并继续转发。
参见图11,IP隧道入口节点C接收到的以太网时钟报文后,判断当该时钟报文的目的地址不是该网络节点自身,且此时钟报文为需要打隧道的报文时,确认该时钟报文为隧道入口时钟报文,节点C为隧道入口节点,记录该时钟报文进入隧道入口节点C的以太网端口的时间t1,将时钟报文经过IEEE1588v2协议进行TC处理后,进行UDP封装,得到UDP封装的时钟报文,再将封装的时钟报文经过IP隧道封装后送出网络节点C继续传输,网络节点C记录自己对该时钟报文处理后的时间t2,修改UDP封装后的时钟报文最外层的处理时间修正域(图10中阴影部分)的值为tC=t2-t1。上述过程还包括网络节点C将该时钟报文的目的地址转换成隧道出口地址,源地址转换成隧道入口地址的步骤。
隧道内节点G在接收到的时钟报文后,通过判断,当该时钟报文的目的地址不是该网络节点自身,确认此时钟报文不是需要打隧道的报文且为超长时钟报文时,确定网络节点G接收到的时钟报文为隧道内时钟报文,即网络节点G为IP隧道内节点,网络节点G对接收到的时钟报文的最外层时钟修正域进行修正处理,即修正该时钟报文最外层处理时间修正域的值为tC+tG,由网络节点G的IP端口输出后继续在隧道中传输,同理,此处不也不仅仅限于最外层,可以是任意一层。
参见图12,网络节点D接收到时钟报文,通过判断,当该时钟报文的目的地址是该网络节点自身,且此时钟报文为被打隧道时钟报文时,确认此时钟报文为隧道出口时钟报文,即网络节点D为隧道出口节点,网络节点D记录时钟报文进入其IP端口的时间t5,先进行隧道解封装处理,将解封装前时钟报文最外层处理时间修正域中的值tE+tG加到解封装后时钟报文的处理时间修正域中,即得到tC+tE+tG,再将本网络节点F的处理时间tF=t6-t5累加到解封装后的时钟报文的最外层处理时间修正域中,即得到tC+tE+tG+tF,其中t6为时钟报文从网络节点F的以太网端口出去的时间,即将tC+tE+tG+tF替换到解封装后的最外层处理时间修正域中,同理,此处不限于解封装后的最外层,实现时加在解封装后的哪一层都可以。上述过程对接收到的时钟报文剥离外层IP头时,外层的TTL变化也要替换到内层。
为了提高时钟精度,所述方法还可以进一步的采取IEEE588v2标准的6.5.4章节所描述的频率校正技术对时钟报文进行频率校正。
本发明实施例中的时钟报文包括IEEE1588v2时钟报文。
可见,本发明实施例不仅解决了以太网时钟报文穿越IP隧道中时钟同步的问题,和多层隧道穿越中时钟同步的问题,而且还进一步解决了异构网络中隧道穿越中时钟同步的问题,另外,对现有通信网络及时钟报文的改动很小,便于实现。
参见图13,本发明实施例提供的一种时钟报文穿越IPSec隧道的方法,
在实施本发明过程中,发明人发现现有技术中至少存在如下问题,时钟报文在穿越IPSec隧道时,可能被进行完整性保护或加密,在完整性保护情况下,如果“处理时间修正域”在传输过程中被更改,则此时钟报文会被终端认为是被篡改的,会被丢弃;在加密的情况下,处理时间修正域的更改将无法进行,因为经过加密和解密的此域值已经不能体现时间信息,另外,有可能时钟报文经过加密后在隧道中传输时,因为UDP端口不再是319,而不能被隧道内节点识别,因此时钟报文在穿越IPSec隧道时无法进行时钟同步。
而本发明实施例提供的时钟报文穿越IPSec隧道方法可以解决时钟报文在穿越IPSec隧道的时钟同步问题,具体实现为:
当时钟报文为隧道入口时钟报文时,将时钟报文进行UDP封装处理,并对封装的时钟报文进行时钟修正处理,将修正处理后的时钟报文送入IPSec隧道进行传输。
当时钟报文隧道内时钟报文时,对该时钟报文的时钟修正域进行修正处理,将修正处理后的时钟报文继续在IPSec隧道中传输。
当时钟报文为隧道出口时钟报文时,解封装处理该时钟报文,并对解封装的时钟报文进行时钟修正处理。
在此实施中,IPSec隧道可以是专为时钟报文建立加密通道,也可以是一般数据加密隧道,这两种隧道的实施目的不同,前者是专为保护时钟协议,可能要隐藏IP地址、时间戳等;后者是时钟报文要通过一个为所有数据都加密的通道。
为了提高时钟精度,所述方法还可以进一步的采取IEEE588v2标准的6.5.4章节所描述的频率校正技术对时钟报文进行频率校正。
本发明实施例中的时钟报文包括IEEE1588v2时钟报文。
可见,本发明实施例不仅解决了时钟报文穿越IPSec隧道穿中时钟同步的问题,多层隧道穿越中时钟同步的问题,而且还进一步解决了完整性保护或加密的时钟报文在穿越IPSec隧道时的时钟同步的问题,另外,对现有通信网络及时钟报文的改动很小,便于实现。
参见图14,本发明实施例提供了一种处理时钟报文的网络节点结构框图,包括:
封装模块11,用于当接收到的时钟报文为隧道入口时钟报文时,将所述时钟报文以隧道相应的封装方式进行封装处理,并对封装的时钟报文进行时钟修正处理;
发送模块12,用于对所述封装模块11处理过的时钟报文,发往隧道出口。
其中,隧道相应的封装方式是指隧道能够识别的方式,比如当隧道为IP隧道时,对接收到的时钟报文以隧道相应的封装方式进行封装是指对接收到的时钟报文进行UDP封装;当隧道为MPLS隧道时,对接收到的时钟报文以隧道相应的封装方式进行封装是指对接收到的时钟报文进行MPLS封装;当隧道为ETH隧道时,对接收到的时钟报文以隧道相应的封装方式进行封装是指对接收到的时钟报文进行GRE封装,等等;本发明实施例不限于上述3种隧道和封装方式。
进一步的,本发明实施例提供的网络节点还包括判断模块,用于判断接收到的时钟报文是否为隧道入口时钟报文。
进一步的,本发明实施例提供的网络节点还包括修正模块,用于当接收到的时钟报文为隧道内时钟报文时,对所述时钟报文进行时钟修正处理。
再进一步的,本发明实施例提供的网络节点还包括解封装模块,用于当接收到的时钟报文为隧道出口时钟报文时,对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
为了提高时钟精度,更进一步的,本发明实施例提供的网络节点还包括频率校正模块,用于依据IEEE1588v2协议6.5.4章节所描述的频率校正技术对时钟报文进行频率校正。
本发明实施例提供的处理时钟报文的网络节点不仅适用于时钟报文穿越单层隧道的情形,还进一步适用于时钟报文穿越多层隧道的情形,该网络节点对时钟报文进行封装可以采用逐层合并、逐层替换等多种方法,实际应用中不限于上述两种方法。可见本发明实施例还解决了多层隧道穿越中时钟同步的问题。同时由于隧道的每个网络节点对封装后的时钟报文的处理时间修正域进行修正处理时,都是以节点自身为时钟参考点,无需各个网络节点都达到绝对的时间同步,使得隧道穿越中时钟同步更加精准。
本发明实施例中的时钟报文包括IEEE1588v2时钟报文。
本发明实施例中时钟报文包括但不限于IP时钟报文、ETH时钟报文、MPLS时钟报文等,隧道包括但不限于IP隧道、ETH隧道、MPLS隧道或IPSec隧道等。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于同构网络,还适用于异构网络,因此,本发明实施例还可以进一步解决异构网络隧道穿越中时钟同步的问题。进一步的,本发明实施例提供的网络节点还可以应用于IPSec隧道中,以解决IPSec隧道穿越中的时钟同步问题。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于已有的隧道传输时钟报文,还适用于专门建立隧道传输时钟报文的情形。
参见图15,本发明实施例提供了一种处理时钟报文的网络节点结构框图,包括:
修正模块2,用于当接收到的时钟报文为隧道内时钟报文时,对所述时钟报文进行时钟修正处理。
其中,所述隧道内时钟报文为已在所述隧道的入口以隧道能够识别的形式进行封装处理后的时钟报文。
修正模块2对所述时钟报文进行时钟修正处理是指:修正模块2将对该时钟报文的处理时间加到时钟报文的处理时间修正域中,处理时间包括该网络节点对该时钟报文的透传处理的时间等,优选的,可以将对该时钟报文的处理时间加到时钟报文的最外层处理时间修正域中。
进一步的,本发明实施例提供的网络节点还包括判断模块,用于判断接收到的时钟报文是否为隧道内时钟报文。
进一步的,本发明实施例提供的网络节点还包括封装模块,用于当接收到的时钟报文为隧道入口时钟报文时,将所述时钟报文以隧道相应的封装方式进行封装处理,并对封装的时钟报文进行时钟修正处理;及发送模块,用于对所述封装模块处理过的时钟报文,发往隧道出口。
再进一步的,本发明实施例提供的网络节点还包括解封装模块,用于当接收到的时钟报文为隧道出口时钟报文时,对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
为了提高时钟精度,更进一步的,本发明实施例提供的网络节点还包括频率校正模块,用于依据IEEE1588v2协议6.5.4章节所描述的频率校正技术对时钟报文进行频率校正。
本发明实施例提供的网络节点不仅适用于时钟报文穿越单层隧道的情形,还进一步适用于时钟报文穿越多层隧道的情形,该网络节点对时钟报文进行修正可以采用逐层合并、逐层替换等多种方法,实际应用中不限于上述两种方法。可见本发明实施例还能够解决多层隧道穿越中时钟同步的问题。同时由于后续处理中都是以节点自身为时钟参考点,无需各个网络节点都达到绝对的时间同步,使得隧道穿越中时钟同步更加精准。
本发明实施例中的时钟报文包括IEEE1588v2时钟报文。
本发明实施例中时钟报文包括但不限于IP时钟报文、ETH时钟报文、MPLS时钟报文等,隧道包括但不限于IP隧道、ETH隧道、MPLS隧道或IPSec隧道等。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于同构网络,还适用于异构网络,因此,本发明实施例还可以进一步解决异构网络隧道穿越中时钟同步的问题。进一步的,本发明实施例提供的网络节点还可以应用于IPSec隧道中,以解决IPSec隧道穿越中的时钟同步问题。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于已有的隧道传输时钟报文,还适用于专门建立隧道传输时钟报文的情形。
参见图16,本发明实施例提供了一种处理时钟报文的网络节点结构框图,包括:
解封装模块3,用于当接收到的时钟报文为隧道出口时钟报文时,对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
进一步的,本发明实施例提供的网络节点还包括判断模块,用于判断接收到的时钟报文是否为隧道出口时钟报文。
进一步的,本发明实施例提供的网络节点还包括封装模块,用于当接收到的时钟报文为隧道入口时钟报文时,将所述时钟报文以隧道相应的封装方式进行封装处理,并对封装的时钟报文进行时钟修正处理;及发送模块,用于对所述封装模块处理过的时钟报文,发往隧道出口。
再进一步的,本发明实施例提供的网络节点还包括修正模块,用于当接收到的时钟报文为隧道内时钟报文时,对所述时钟报文进行时钟修正处理。
为了提高时钟精度,更进一步的,本发明实施例提供的网络节点还包括频率校正模块,用于依据IEEE1588v2协议6.5.4章节所描述的频率校正技术对时钟报文进行频率校正。
本发明实施例提供的网络节点不仅适用于时钟报文穿越单层隧道的情形,还进一步适用于时钟报文穿越多层隧道的情形,该网络节点对时钟报文进行解封装可以采用逐层合并、逐层替换等多种方法,实际应用中不限于上述两种方法。可见本发明实施例还解决了多层隧道穿越中时钟同步的问题。同时由于后续处理中都是以节点自身为时钟参考点,无需各个网络节点都达到绝对的时间同步,使得隧道穿越中时钟同步更加精准。
本发明实施例中的时钟报文包括IEEE1588v2时钟报文。
本发明实施例中时钟报文包括但不限于IP时钟报文、ETH时钟报文、MPLS时钟报文等,隧道包括但不限于IP隧道、ETH隧道、MPLS隧道或IPSec隧道等。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于同构网络,还适用于异构网络,因此,本发明实施例还可以进一步解决异构网络隧道穿越中时钟同步的问题。进一步的,本发明实施例提供的网络节点还可以应用于IPSec隧道中,以解决IPSec隧道穿越中的时钟同步问题。
本发明实施例提供的时钟报文隧道传输的方法不仅适用于已有的隧道传输时钟报文,还适用于专门建立隧道传输时钟报文的情形。
参见图17,本发明实施例还提供了一种处理时钟报文的通信系统,包括:
隧道入口网络节点,用于当接收到的时钟报文为隧道入口时钟报文时,将所述时钟报文以隧道相应的封装方式进行封装处理,并对封装的时钟报文进行时钟修正处理,对所述封装模块处理过的时钟报文,发往隧道出口;
隧道内网络节点,用于当接收到的时钟报文为隧道内时钟报文时,对所述时钟报文进行时钟修正处理;以及
隧道出口网络节点,用于当接收到的时钟报文为隧道出口时钟报文时,对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
其中,所述隧道内时钟报文为已在所述隧道的入口以隧道能够识别的形式进行封装处理后的时钟报文。
本发明实施例中隧道内网络节点可以是一个或多个;对于单层隧道而言,隧道入口网络节点和隧道出口网络节点可以是一个;对于多层隧道而言,隧道入口网络节点和隧道出口网络节点可以是多个,时钟报文可能经过某层隧道的入口网络节点或隧道内网络节点后,再次进入另一层隧道的隧道入口网络节点等。
本发明实施例以隧道相应的封装方式封装时钟报文,使得穿越隧道的过程中对封装的时钟报文能够进行修正处理,后续处理中无需各个网络节点都达到绝对的时间同步,不但解决了时钟报文隧道传输的时钟同步问题,而且使得隧道穿越中时钟同步更加精准。
值得说明的是,上述装置或系统实施例在实现时,可能涉及时钟报文属于隧道入口时钟报文、隧道内时钟报文或隧道出口时钟报文的判断,具体判断的方法可以参照前述方法实施例中的实现方式,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括如下步骤:(方法的步骤),所述的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种时钟报文隧道传输的方法,其特征在于,所述方法为:
在隧道入口,以该隧道相应的封装方式对接收到的隧道入口时钟报文进行封装处理,并对封装处理后的时钟报文进行时钟修正处理;
对进行过所述时钟修正处理过的时钟报文,发往隧道出口;
所述时钟报文包括时钟报文处理时间修正域,所述隧道为单层隧道或多层隧道,所述以该隧道相应的封装方式对接收到的隧道入口时钟报文进行封装处理包括:
设置所述时钟报文最外层处理时间修正域的初始值,生成新时钟报文,并将原时钟报文添加在所述新时钟报文之后,以该隧道相应的封装方式打包处理,其中,所述时钟报文最外层处理时间修正域的初始值为0。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述隧道内,对隧道内时钟报文进行时钟修正处理;和/或,
在所述隧道出口,对隧道出口时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
3.根据权利要求2所述的方法,其特征在于,所述在隧道出口,对所述时钟报文进行解封装处理包括:
解包处理所述时钟报文,分离掉所述新时钟报文,并将解封装前时钟报文最外层处理时间修正域中的值减去最外层处理时间修正域的初始值,并加到解封装后时钟报文的处理时间修正域中,或
解包处理所述时钟报文,分离掉所述新时钟报文,并将解封装前时钟报文最外层处理时间修正域中的值替换到解封装后时钟报文的最外层处理时间修正域中。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:判断接收到的时钟报文是否为隧道入口时钟报文,包括:
若接收到时钟报文的目的地址不是接收到时钟报文的节点自身,判断所述时钟报文是否为需要打隧道的报文,如果所述时钟报文是需要打隧道的报文,则判断所述时钟报文为隧道入口时钟报文。
5.根据权利要求1至3任一项所述的方法,其特征在于,
所述时钟报文包括因特网协议IP时钟报文、以太网ETH时钟报文或多协议标签交换MPLS时钟报文;
所述隧道包括IP隧道、ETH隧道、MPLS隧道或IP安全协议IPSec隧道。
6.一种处理时钟报文的网络节点,其特征在于,所述网络节点包括:
封装模块,用于当接收到的时钟报文为隧道入口时钟报文时,将所述时钟报文以隧道相应的封装方式进行封装处理,并对封装的时钟报文进行时钟修正处理;
发送模块,用于对所述封装模块处理过的时钟报文,发往隧道出口;
其中,所述时钟报文包括时钟报文处理时间修正域,所述隧道为单层隧道或多层隧道,所述封装模块具体通过以下方式将所述时钟报文以隧道相应的封装方式进行封装处理:设置所述时钟报文最外层处理时间修正域的初始值,生成新时钟报文,并将原时钟报文添加在所述新时钟报文之后,以该隧道相应的封装方式打包处理,其中,所述时钟报文最外层处理时间修正域的初始值为0。
7.如权利要求6所述的网络节点,其特征在于,所述网络节点还包括:
判断模块,用于判断接收到的时钟报文是否为隧道入口时钟报文。
8.如权利要求7所述的网络节点,其特征在于,所述网络节点还包括:
修正模块,用于当接收到的时钟报文为隧道内时钟报文时,对所述时钟报文进行时钟修正处理。
9.如权利要求6至8任一项所述的网络节点,其特征在于,所述网络节点还包括:
解封装模块,用于当接收到的时钟报文为隧道出口时钟报文时,对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
10.一种处理时钟报文的通信系统,其特征在于,包括如权利要求6至8任一项所述的网络节点,还包括:
隧道内网络节点,用于当接收到的时钟报文为隧道内时钟报文时,对所述时钟报文进行时钟修正处理;以及
隧道出口网络节点,用于当接收到的时钟报文为隧道出口时钟报文时,对所述时钟报文进行解封装处理,并对解封装的时钟报文进行时钟修正处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210082803.7A CN102684993B (zh) | 2009-02-24 | 2009-02-24 | 时钟报文隧道传输的方法、网络节点和通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210082803.7A CN102684993B (zh) | 2009-02-24 | 2009-02-24 | 时钟报文隧道传输的方法、网络节点和通信系统 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101187090A Division CN101494613B (zh) | 2009-02-24 | 2009-02-24 | 时钟报文隧道传输的方法、网络节点和通信系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102684993A CN102684993A (zh) | 2012-09-19 |
CN102684993B true CN102684993B (zh) | 2015-03-25 |
Family
ID=46816378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210082803.7A Active CN102684993B (zh) | 2009-02-24 | 2009-02-24 | 时钟报文隧道传输的方法、网络节点和通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102684993B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1507206A (zh) * | 2002-12-06 | 2004-06-23 | 北京格林威尔科技发展有限公司 | 电路业务在基于以太网的无源光网络上传输的方法 |
WO2006003105A1 (en) * | 2004-07-01 | 2006-01-12 | Thomson Licensing | Method for transmitting packets in a transmission system |
CN1791053A (zh) * | 2004-12-13 | 2006-06-21 | 杭州华为三康技术有限公司 | 一种对多服务器进行最优选择的方法 |
-
2009
- 2009-02-24 CN CN201210082803.7A patent/CN102684993B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1507206A (zh) * | 2002-12-06 | 2004-06-23 | 北京格林威尔科技发展有限公司 | 电路业务在基于以太网的无源光网络上传输的方法 |
WO2006003105A1 (en) * | 2004-07-01 | 2006-01-12 | Thomson Licensing | Method for transmitting packets in a transmission system |
CN1791053A (zh) * | 2004-12-13 | 2006-06-21 | 杭州华为三康技术有限公司 | 一种对多服务器进行最优选择的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102684993A (zh) | 2012-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101494613B (zh) | 时钟报文隧道传输的方法、网络节点和通信系统 | |
US10887211B2 (en) | Indirect packet classification timestamping system and method | |
EP3216143B1 (en) | Transmitting residence time information in a network | |
US10079748B2 (en) | Supporting efficient and accurate sync/followup timestamps | |
CN102783079A (zh) | 基于包的分布式时间戳引擎 | |
WO2018188661A1 (zh) | 封装方法、装置和节点 | |
CN107800528B (zh) | 一种传输同步信息的方法、装置和系统 | |
CN107181663A (zh) | 一种报文处理方法、相关设备及计算机可读存储介质 | |
JP2014512126A (ja) | 通信ネットワークにおける時間配信のための方法、装置およびシステム | |
Striffler et al. | Time-sensitive networking in 5th generation cellular networks-current state and open topics | |
CN104660360B (zh) | 一种以太数据与多路e1数据的处理方法及系统 | |
KR20160126325A (ko) | 광전달망 시스템에서의 데이터 손실을 최소화하는 보호절체 장치 및 방법 | |
CN103780470B (zh) | 一种is‑is的信息同步方法和装置 | |
CN107294633A (zh) | 时间同步方法和装置 | |
JP2012520591A (ja) | 少なくとも1つのタイミング配信プロトコルにより第1のデータおよび第2のデータを別々に伝送することによってクロックを同期するための方法、ならびに関連するシステムおよびモジュール | |
CN101902291B (zh) | 一种精确时间同步方法、设备和系统 | |
CN102377663A (zh) | 处理时钟报文的方法、设备及系统 | |
CN102684993B (zh) | 时钟报文隧道传输的方法、网络节点和通信系统 | |
CN114095459B (zh) | 一种传输方法、网元及存储介质 | |
CN113132043B (zh) | 跨网络运输客户端定时信息 | |
WO2018090611A1 (zh) | 一种报文处理方法和装置、计算机存储介质 | |
CN104506433B (zh) | 一种mpls网络中识别ptp报文的方法和装置 | |
US20250030630A1 (en) | Packet processing | |
CN102546112B (zh) | 一种数据封装方法及装置 | |
EP2680466A1 (en) | Low latency transparent clock |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |