WO2011144135A1 - 处理时钟报文的方法、设备及系统 - Google Patents

处理时钟报文的方法、设备及系统 Download PDF

Info

Publication number
WO2011144135A1
WO2011144135A1 PCT/CN2011/075122 CN2011075122W WO2011144135A1 WO 2011144135 A1 WO2011144135 A1 WO 2011144135A1 CN 2011075122 W CN2011075122 W CN 2011075122W WO 2011144135 A1 WO2011144135 A1 WO 2011144135A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
clock
node
tunnel
ipv6
Prior art date
Application number
PCT/CN2011/075122
Other languages
English (en)
French (fr)
Inventor
王江胜
赖志昌
常锁林
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2011144135A1 publication Critical patent/WO2011144135A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0673Clock 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Abstract

本发明提供一种处理时钟报文的方法、设备及系统。该方法包括:将时钟报文封装在IPv6逐跳选项中;发送封装后的时钟报文。本发明实施例提供的技术方案,可以提高根据时钟报文进行同步的时钟精度。

Description

处理时钟报文的方法、 设备及系统
本申请要求于 2010 年 8 月 24 日提交中国专利局、 申请号为 201010264022.0、 发明名称为"处理时钟4艮文的方法、 设备及系统"的中国专 利申请的优先权, 其全部内容通过引用结合在本申请中。 技术领域
本发明涉及通信技术, 尤其涉及一种处理时钟报文的方法、 设备及系 统。
背景技术
对于时钟同步和频率同步需求较高的场景, 精确时钟协议(Precision Time Protocol, 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"这一特征, 则对 ΡΤΡ报文做相应的处理。 例如, 当该路由节点为 TC节点时, 将对此 ΡΤΡ报文的处理时间修正域进行操作, 将自身的处理时间累加进去。
在 IPv6中, 引入了 "扩展头 " 的概念替代了 IPv4中的头部选项部分。 为每个路由节点必须处理的信息特意设定了逐跳选项头 (Hop by hop options header )。 此扩展头位于紧邻 IPv6分组头之后。
采用 UDP封装方式的 PTP报文在经过 IP隧道时, 会被重新封装, 加 入新的 IP头。 则此 IP报文的头部将是 " IPinIP隧道", 而不是 "UDP封装 +UDP端口号 319"。
发明人发现, 现有技术中至少存在如下问题: 采用 UDP封装的 PTP报 文在经过 IP隧道时,会造成途经的路由节点不能识别该报文封装有 PTP报 文,不能对 PTP报文进行相应的处理,造成 PTP协议仅仅在隧道两侧实现, 而在中间的隧道部分未被实现, 引入较大的时钟误差。 发明内容
本发明实施例是提供一种处理时钟报文的方法、 设备及系统, 提高根 据时钟报文进行同步的时钟精度。
本发明实施例提供了一种处理时钟报文的方法, 包括:
将时钟 4艮文封装在 IPv6逐跳选项中;
发送封装后的时钟报文。
本发明实施例提供了一种处理时钟报文的设备, 包括:
封装模块, 用于将时钟报文封装在 IPv6逐跳选项中;
发送模块, 用于发送封装后的时钟报文。
本发明实施例提供了一种处理时钟报文的系统, 包括:
第一设备, 该第一设备为上述的处理时钟报文的设备; 以及
第二设备, 用于接收所述第一设备处理后的时钟报文。 由上述技术方案可知, 本发明实施例通过将时钟报文封装在 IPv6逐跳 选项中, 由于后续途经的节点会对逐跳选项进行处理, 因此, 可以使得途 经的节点对处理时间修正域进行相应的处理, 提高根据时钟报文进行同步 的时钟精度。 附图说明
为了更清楚地说明本发明实施例中的技术方案, 下面将对实施例描述 中所需要使用的附图作一筒单地介绍, 显而易见地, 下面描述中的附图是 本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳 动性的前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明第一实施例的方法流程示意图;
图 2为本发明第二实施例的方法流程示意图;
图 3为本发明实施例中将时钟报文封装在 IPv6报文后的报文示意图; 图 4为本发明实施例中 PTP同步流程的示意图;
图 5为本发明第三实施例的方法流程示意图;
图 6为本发明第四实施例中进行角色判断及处理的流程示意图; 图 7为本发明实施例中将封装有时钟报文的 IPv6报文进行隧道封装后 的报文示意图;
图 8为本发明第四实施例对应的系统结构示意图;
图 9为本发明第四实施例的方法流程示意图;
图 10为本发明实施例中将采用 UDP封装方式封装时钟报文的 IPv6报 文进行隧道封装后的报文示意图;
图 11为本发明实施例中将采用 UDP封装方式封装时钟报文的 IPv4报 文进行隧道封装后的报文示意图; 后的报文示意图; 文示意图;
图 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" 的发送为基准。
时钟 4艮文: IEEE1588v2中定义的,用以建立时钟同步关联和进行时钟 同步所需要的通信数据。 有两种时钟报文: 一种是 "general" (—般) 时 钟报文, 用以传输协商消息或信息; 一种是 "event" (事件) 时钟报文, 用以携带时钟同步时要处理的消息。 二者不同在于 TC的处理方式。 对于一 般时钟报文, TC完全透传,不做任何动作。对于 Event时钟报文, TC要对 "处 理时间修正域" 做修正。 本文中非特指情况下, "时钟报文" 一词仅指代 "Event" 时钟 4艮文。
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
Figure imgf000009_0001
IPv6报文的逐跳选项中各域的说明如表 2所示(重点介绍 IP头和逐跳 选项头) :
表 2
域名 域值 解释
NextHeader 59 表示此分组除 HopbyHop后再无其他数
(下一扩展头) 据
其他 表示此报文后携带了其他信息
Hd Ext Len 5 表示此扩展头部长度为 48字节
(扩展头长度)
Type OOlxxxxx 类型值只定义了前缀 3个比特,后面 5比 (类型) 特待标准化
前 3个比特给出了此选项的处理方式,表 示 1 )如果不识别此域则此 文被透明传 输 2 )此域域值可能被更改
OptLen 44 表示此选项内容长度为 44字节
(内容长度) 图 3中的报文中还可以包括如下的域:
源地址 ( Source Address ) , 目的地址 ( Destination Address ) , 传输十办 议特定域 (TS ) , 保留域 (r ) , 消息长度 ( messagelength ) , 域数量 ( domainNumber ) , 保留域 ( reserved ) , 标识 i或 ( flagField ) , 时间爹正 域( correctionField ),源端口标口 sourecePortldentity ),控制域 ( controlField ), 日志信息周期 ( logMessagelnterval ) , 序列号 ( sequenceld ) 、 原始时间戳 ( originTimestamp ) 。
步骤 22: 途经节点 (即目的 IP地址不是自身的节点)从 IPv6逐跳选 项中获取时钟报文, 并做相应处理。
例如, 当途经的时钟节点为 TC节点时, TC节点从 IPv6逐跳选项中获 取时钟报文, 并更改其中的 "处理时间修正域" 。
步骤 23:从时钟节点从 IPv6逐跳选项中获取时钟报文,进行同步处理。 并根据该时钟报文的发送时间 (可以记录在时间戳内 )和接收时间, 以及 从时钟节点向主时钟节点发送的延时请求报文的相关时间信息, 可以对本 地时间进行同步修正, 实现与主时钟节点的同步。
以时钟报文为 PTP报文中的同步报文为例, 则同步修正流程可以如图 4 所示: 图 4为本发明实施例中 PTP同步流程的示意图, 参见图 4, 包括: 步骤 41 : 主时钟节点向从时钟节点发送同步报文(Sync ) 。 该报文的发送时间为 ίη (可以包含在同步报文中) , 接收时间为 ί22。 其中, 途经的中间节点(如 TC节点)可以将自身的处理时间添加进同 步报文的处理时间修正域, 假设用 表示记录在处理时间修正域内的处理 时间。
另外, 主时钟节点在发送同步报文之后, 还可以进一步发送跟随报文
( Follow—Up ) 。
步骤 42: 从时钟节点向主时钟节点发送延时请求 ^艮文(Delay_Req ) ; 该报文的发送时间为 ίΐ3 , 接收时间为 ίΐ4。 记录的处理修正时间为 。 步骤 43: 主时钟节点向从时钟节点返回延时响应 ^艮文(Delay_Resp ) 该延时响应报文可以包含延时请求报文的接收时间 il4及记录的处理修正时 间 Tdl
通过上述相关时间, 从时钟节点可以采用如下方式进行同步: 首先, 路径延时为 tp = H - ½ )- ( + )) ;
其次, 估算时间差 ie = ½ - + + );
则从时钟节点设定本地时间 t t— te , 即将从时钟节点的时钟调慢 te。 另外, 当时钟 4艮文发送给 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为本发明第四实施例对应的系统结构示意图, H殳, 网络 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 ) i或, 以太网对此 i或不关心。
封装的时候, Hop-by-hop 的下一个扩展头域填充相应的协议类型, 如 对于 IPv4, 该域填充 4, 对于 IPv6, 该域填充 41 , 对于以太网, 该域填充 97。
不同点三, 隧道出口节点的执行方式有如下不同:
将外层 文的 Hoplimit值复制到内层 4艮文的相应的域,例如,对于 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报文为 第一:《^64艮文的外层 文;第二设备 152为:隧道内节点,用于对第二 IPv6 报文中的时钟报文中的处理时间修正域进行处理; 和 /或, 隧道外中间节点, 用于对第一 IPv6 文中的时钟 文中的处理时间修正域进行处理。
或者,
主时钟节点具体用于将时钟报文封装在第一 IPv6报文的逐跳选项中; 该系统还包括: 隧道入口节点, 用于对第一 IPv6报文进行隧道封装, 并将 时钟报文再次封装在第二 IPv6报文的逐跳选项中, 其中, 第二 IPv6报文为 第一 IPv6报文的外层报文; 第二设备 152为: 隧道出口节点, 用于将第二 IPv6报文中的时钟报文的处理时间修正域的值拷贝到第一 IPv6报文中的时 钟报文的处理时间修正域, 或者累加到第一 IPv6报文中的时钟报文的处理 时间修正域; 脱去第二 IPv6报文, 将在隧道出口节点的处理时间累加到第 一 IPv6报文中的时钟报文的处理时间修正域。
本实施例通过将时钟报文封装在 IPv6逐跳选项中, 由于后续途经的节 点会对逐跳选项进行处理, 因此, 可以使得途经的节点对处理时间修正域 进行相应的处理, 实现时钟报文能够在穿越隧道时被识别和处理。
可以理解的是, 本发明实施例中的主时钟节点可以为时钟服务器, BC 节点及 TC节点可以为路由器,从时钟节点可以为基站。但是并不限于上述 具体网元。 以相互参考。
本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步 骤可以通过程序指令相关的硬件来完成, 前述的程序可以存储于一计算机 可读取存储介质中, 该程序在执行时, 执行包括上述方法实施例的步骤; 而前述的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程序 代码的介质。
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通 技术人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修 改, 或者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不 使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims

权利要求
1、 一种处理时钟报文的方法, 其特征在于, 包括:
将时钟 4艮文封装在 IPv6逐跳选项中;
发送封装后的时钟报文。
2、 根据权利要求 1所述的方法, 其特征在于, 所述将时钟报文封装在 IPv6逐跳选项中, 包括:
将时钟报文封装在第一报文的 IPv6逐跳选项中, 所述第一报文为专门 为携带时钟报文生成的, 或者, 所述第一报文为携带数据的数据报文。
3、 根据权利要求 2所述的方法, 其特征在于, 所述将时钟报文封装在 第一报文的 IPv6逐跳选项中, 包括:
主时钟节点将时钟报文封装在第一报文的 IPv6逐跳选项中。
4、 根据权利要求 2所述的方法, 其特征在于, 所述第一报文为外层报 文, 所述将时钟报文封装在第一报文的 IPv6逐跳选项中, 包括:
隧道入口节点对接收的报文进行隧道封装, 并将时钟报文封装在外层 报文的 IPv6逐跳选项中, 其中, 所述接收的报文为内层报文并包含时钟报 文, 所述外层报文为 IPv6报文。
5、 根据权利要求 4所述的方法, 其特征在于, 所述对接收的报文进行 隧道封装, 包括:
将所述内层报文中的时钟报文的处理时间修正域的值拷贝到所述外层 报文中的时钟报文的处理时间修正域, 或者, 将所述外层报文中的时钟报 文的处理时间修正域的值设置为初始值 0。
6、 根据权利要求 4所述的方法, 其特征在于, 还包括:
隧道内的透传时钟 TC 节点对所述外层报文中的时钟报文中的处理时 间爹正域进行处理。
7、 根据权利要求 6所述的方法, 其特征在于, 还包括:
隧道出口节点将所述外层报文中的时钟报文的处理时间修正域的值拷 贝到所述内层报文中的时钟报文的处理时间修正域, 或者, 累加到所述内 层报文中的时钟报文的处理时间修正域;
脱去所述外层报文, 将在隧道出口节点的处理时间累加到所述内层报 文中的时钟 4艮文的处理时间修正域。
8、 根据权利要求 4-7任一项所述的方法, 其特征在于, 所述接收的报 文包括: 封装有时钟报文的 IPv6报文、封装有时钟报文的 IPv4报文或者封 装有时钟报文的以太网报文。
9、 根据权利要求 1-7任一项所述的方法, 其特征在于, 还包括: 接收到报文的节点进行角色判断, 以确定接收到报文的节点为如下项 中的一项: 隧道外中间节点或者隧道内节点; 隧道入口节点; 隧道出口节 点; 从时钟节点。
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 文中的时钟 4艮文中的处理时 间爹正域进行处理。
20、 根据权利要求 16或 17所述的系统, 其特征在于, 所述主时钟节 点具体用于将时钟报文封装在第一 IPv6报文的逐跳选项中; 所述系统还包 括: 隧道入口节点, 用于对所述第一 IPv6报文进行隧道封装, 并将时钟报 文再次封装在第二 IPv6报文的逐跳选项中,其中,第二 IPv6报文为第一 IPv6 报文的外层报文;
所述第二设备为:
隧道出口节点, 用于将第二 IPv6报文中的时钟报文的处理时间修正域 的值拷贝到第一 IPv6报文中的时钟报文的处理时间修正域,或者累加到第 一 IPv6报文中的时钟报文的处理时间修正域; 脱去第二 IPv6报文, 将在 隧道出口节点的处理时间累加到第一 IPv6报文中的时钟报文的处理时间 修正域。
PCT/CN2011/075122 2010-08-24 2011-06-01 处理时钟报文的方法、设备及系统 WO2011144135A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201010264022.0 2010-08-24
CN2010102640220A CN102377663A (zh) 2010-08-24 2010-08-24 处理时钟报文的方法、设备及系统

Publications (1)

Publication Number Publication Date
WO2011144135A1 true WO2011144135A1 (zh) 2011-11-24

Family

ID=44991199

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/075122 WO2011144135A1 (zh) 2010-08-24 2011-06-01 处理时钟报文的方法、设备及系统

Country Status (2)

Country Link
CN (1) CN102377663A (zh)
WO (1) WO2011144135A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017063450A1 (zh) * 2015-10-15 2017-04-20 中兴通讯股份有限公司 一种时间戳过滤的方法及装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106301996B (zh) * 2015-06-26 2019-10-08 中国移动通信集团公司 一种ptp报文自动测试的方法及装置
CN106850175B (zh) * 2015-12-07 2020-11-27 中兴通讯股份有限公司 一种共用ip地址的方法及装置
CN108011837B (zh) * 2017-11-21 2021-06-29 新华三技术有限公司 报文处理方法及装置
WO2021184016A1 (en) * 2020-03-13 2021-09-16 Arris Enterprises Llc Packet timing system with improved hop count
CN112511475B (zh) * 2020-12-10 2023-06-16 国电南瑞科技股份有限公司 一种报文同步精度补偿方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
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 华为技术有限公司 时钟报文隧道传输的方法、网络节点和通信系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
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 (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017063450A1 (zh) * 2015-10-15 2017-04-20 中兴通讯股份有限公司 一种时间戳过滤的方法及装置

Also Published As

Publication number Publication date
CN102377663A (zh) 2012-03-14

Similar Documents

Publication Publication Date Title
US11444713B2 (en) Transmitting residence time information in a network
US8638822B2 (en) Network node, communication system, and method for transmitting clock packet through tunnel
JP5717868B2 (ja) 透過クロックのトンネルフォローアップメッセージ
WO2020233192A1 (zh) 一种为业务流提供业务服务的方法和装置
US7853691B2 (en) Method and system for securing a network utilizing IPsec and MACsec protocols
WO2011144135A1 (zh) 处理时钟报文的方法、设备及系统
EP2216942B1 (en) Method for establishing tunnel and system for realizing tunnel establishment
US20090219939A1 (en) Transporting Packets
EP4050858A1 (en) Method and device for updating mapping
US20080304476A1 (en) Ethernet over mpls circuit emulation service
CN114189473A (zh) 一种报文的发送方法和装置
WO2021174958A1 (zh) 报文转发方法、设备、系统、网络设备和存储介质
WO2011032494A1 (zh) 精确时间协议报文处理方法和时钟设备
WO2020249035A1 (zh) 一种实现业务功能处理的方法及装置
KR101140453B1 (ko) Ip 인터워킹 vll을 통한 회로 에뮬레이션 방법 및 시스템
WO2013082947A1 (zh) 跨越IPv4网络转发IPv6组播报文的方法和边缘设备
WO2008141591A1 (fr) Procédé et dispositif destinés à une garantie qos des datagrammes de réseau transportés dans différents réseaux
WO2021017985A1 (zh) 一种处理bier报文的方法、网络设备及系统
CN113055268A (zh) 隧道流量负载均衡的方法、装置、设备及介质
WO2024045537A1 (zh) 报文传输的方法和网络设备
US11963022B2 (en) Method and apparatus for processing DETNET traffic
JP4330140B2 (ja) 通信ネットワークシステム
JP2004363841A (ja) パケット送信装置、パケット受信装置、パケット転送装置及びパケット送受信装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11783052

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11783052

Country of ref document: EP

Kind code of ref document: A1