Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
TRANSPARENT CLOCK PASSIVE PORT ELECTION METHOD AND DEVICE BASED ON PTP PROTOCOL
Document Type and Number:
WIPO Patent Application WO/2013/174025
Kind Code:
A1
Abstract:
Provided are a transparent clock passive port election method and device based on the PTP protocol. In the method, by extracting the TLV field of a received announce message, a first port of a network device acquires the clock identification information, forwarding times information and port identification information carried in the TLV field, and then compares the forwarding times information and clock identification information carried in the TLV field to the forwarding times information carried in the TLV field contained in a received announce message from a port by itself, and its own clock identification information, so as to select a port as a passive port. Therefore, by adding the comparison factors, such as clock identification information, forwarding times information and port identification information, in the TLV field of an announce message, a transparent clock is allowed to support the PTP protocol, thus avoiding a protocol storm formed by a PTP message in a complex topology network and a ring network constituted by the transparent clock to improve the stability of the network.

Inventors:
MA HUAYI (CN)
XUE BAIHUA (CN)
HUANG JIANCHAO (CN)
Application Number:
PCT/CN2012/076216
Publication Date:
November 28, 2013
Filing Date:
May 29, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
KYLAND TECHNOLOGY CO LTD (CN)
MA HUAYI (CN)
XUE BAIHUA (CN)
HUANG JIANCHAO (CN)
International Classes:
H04J3/06; H04L7/00; H04L69/40; H04L45/18; H04L49/111
Domestic Patent References:
WO2012016507A12012-02-09
Foreign References:
CN102195996A2011-09-21
CN101207606A2008-06-25
CN101170373A2008-04-30
CN102026364A2011-04-20
CN101399655A2009-04-01
Attorney, Agent or Firm:
RUNPING & PARTNERS (CN)
北京润平知识产权代理有限公司 (CN)
Download PDF:
Claims:
权利要求

1、 一种基于 PTP协议的透明时钟被动端口选举方法, 其特征在于, 所 述方法包括:

网络设备的端口接收其他网络设备发送的宣告报文, 提取所述宣告报 文的 TLV字段, 获取所述 TLV字段中携带的时钟标识信息、转发次数信息 及端口标识信息, 其中, 所述网络设备至少具有两个端口;

判断所述网络设备的端口是否为从端口;

当确定所述网络设备的端口非从端口时, 将所述网络设备的端口接收 的所述 TLV字段携带的转发次数,与所述网络设备的从端口接收的 TLV字 段携带的转发次数进行比较, 当确定所述网络设备的端口接收的 TLV字段 携带的转发次数与所述从端口接收的 TLV字段携带的转发次数差的绝对值 为 0或者 1时, 选举优先级最低的端口作为被动端口;

当所述网络设备的端口为从端口, 或转发次数差的绝对值非 0或者 1 时, 将所述网络设备的时钟标识信息及所述网络设备转发所述宣告报文端 口的端口标识信息更新到所述宣告报文的 TLV字段中分别作为时钟标识信 息及端口标识信息, 将所述宣告报文的转发次数加一后, 采用所述转发所 述宣告报文端口转发该宣告报文。

2、如权利要求 1所述的方法, 其特征在于, 获取所述 TLV字段中携带 的时钟标识信息、 转发次数信息及端口标识信息之前, 方法还包括:

判断所述网络设备的端口接收的所述宣告报文的 TLV字段是否未携带 时钟标识信息、 转发次数信息及端口标识信息;

当确定所述宣告报文的 TLV字段未携带时钟标识信息、 转发次数信息 及端口标识信息时, 解析所述宣告报文, 获取所述宣告报文中携带的时钟 ID标识信息,将所述宣告报文中携带的时钟 ID标识信息更新至所述宣告报 文的 TLV字段中作为父时钟标识信息, 将所述网络设备的时钟标识信息及 所述网络设备转发所述宣告报文端口的端口标识信息更新到所述宣告报文 的 TLV字段中分别作为时钟标识信息及端口标识信息, 将所述宣告报文的 转发次数设为 1, 并采用所述转发所述宣告报文端口转发该宣告报文。 3、如权利要求 1或 2所述的方法, 其特征在于, 所述 TLV字段中还携 带有父时钟标识信息;

所述将所述网络设备的端口接收的所述 TLV字段携带的转发次数, 与 所述网络设备的从端口接收的 TLV字段携带的转发次数进行比较之前, 方 法还包括:

判断所述网络设备的端口接收的所述宣告报文的 TLV字段携带的父时 钟 ID标识信息与所述宣告报文中包含的时钟 ID标识信息是否一致;

当确定所述网络设备的端口接收的所述宣告报文的 TLV字段携带的父 时钟 ID标识信息与所述宣告报文中包含的时钟 ID标识信息不一致时, 将 所述宣告报文中包含的时钟 ID标识信息更新至所述宣告报文的 TLV字段 中作为父时钟标识信息, 将所述网络设备的时钟标识信息及所述网络设备 转发所述宣告报文端口的端口标识信息更新到所述宣告报文的 TLV字段中 分别作为时钟标识信息及端口标识信息, 将所述宣告报文的转发次数设为 1, 并采用所述转发所述宣告报文端口转发该宣告报文。

4、 如权利要求 1所述的方法, 其特征在于, 判断所述网络设备的端口 是否为从端口包括:

网络设备根据所述网络设备各端口接收的宣告报文中 TLV字段携带的 转发次数信息及所述网络设备各端口的标识信息, 判定优先级最高的端口 作为从端口; 端口标识信息包括端口的优先级;

其中, 所述判定优先级最高的端口作为从端口包括:

将网络设备各端口接收的宣告报文中 TLV字段携带的转发次数进行比 较, 选择接收的宣告报文中 TLV字段携带的转发次数最少的端口, 判断所 述接收的宣告报文中 TLV字段携带的转发次数最少的端口是否唯一;

当确定所述接收的宣告报文中 TLV字段携带的转发次数最少的端口唯 一时, 将该端口作为从端口;

否则, 将所述接收的宣告报文中 TLV字段携带的转发次数最少的各端 口的端口标识信息中的优先级进行比较, 选择优先级最高的端口作为从端 □。

5、 如权利要求 4所述的方法, 其特征在于, 所述选举优先级最低的端 口作为被动端口包括:

当确定所述网络设备的端口接收的 TLV字段携带的转发次数与所述从 端口接收的 TLV字段携带的转发次数差的绝对值为 0时, 将所述网络设备 的端口作为被动端口;

当确定所述网络设备的端口接收的 TLV字段携带的转发次数与所述从 端口接收的 TLV字段携带的转发次数差的绝对值为 1时, 将所述网络设备 的端口接收的 TLV字段携带的时钟标识信息与所述网络设备的时钟标识信 息进行比较;

当确定所述网络设备的端口接收的 TLV字段携带的时钟标识信息中的 优先级高于所述网络设备的时钟标识信息中的优先级时, 将所述网络设备 的端口作为被动端口; 时钟标识信息包括时钟标识的优先级;

当确定所述网络设备的端口接收的 TLV字段携带的时钟标识信息中的 优先级不高于所述网络设备的时钟标识信息中的优先级时,

将所述网络设备的时钟标识信息及所述网络设备转发所述宣告报文端 口的端口标识信息更新到所述宣告报文的 TLV字段中分别作为时钟标识信 息及端口标识信息, 将所述宣告报文的转发次数加一后, 采用所述转发所 述宣告报文端口转发该宣告报文。

6、 一种基于 PTP协议的透明时钟被动端口选举装置, 其特征在于, 所 述装置包括:

接收提取模块, 用于网络设备的网络设备的端口接收其他网络设备发 送的宣告报文, 提取所述宣告报文的 TLV字段, 获取所述 TLV字段中携带 的时钟标识信息、 转发次数信息及端口标识信息;

判断模块, 用于判断所述网络设备的端口是否为从端口;

比较选举模块, 用于当确定所述网络设备的端口非从端口时, 将所述 网络设备的端口接收的所述 TLV字段携带的转发次数, 与所述网络设备的 从端口接收的 TLV字段携带的转发次数进行比较, 当确定所述网络设备的 端口接收的 TLV字段携带的转发次数与所述从端口接收的 TLV字段携带的 转发次数差的绝对值为 0或者 1时, 选举优先级最低的端口作为被动端口; 更新转发模块, 用于当所述网络设备的端口为从端口, 或转发次数差 的绝对值非 0或者 1时, 将所述网络设备的时钟标识信息及所述网络设备 转发所述宣告报文端口的端口标识信息更新到所述宣告报文的 TLV字段中 分别作为时钟标识信息及端口标识信息, 将所述宣告报文的转发次数加一 后, 采用所述转发所述宣告报文端口转发该宣告报文。

7、 如权利要求 6所述的装置, 其特征在于, 判断模块, 还用于判断所 述网络设备的端口接收的所述宣告报文的 TLV字段是否未携带时钟标识信 息、 转发次数信息及端口标识信息;

更新转发模块, 还用于当确定所述宣告报文的 TLV字段未携带时钟标 识信息、 转发次数信息及端口标识信息时, 解析所述宣告报文, 获取所述 宣告报文中携带的时钟 ID标识信息, 将所述宣告报文中携带的时钟 ID标 识信息更新至所述宣告报文的 TLV字段中作为父时钟标识信息, 将所述网 络设备的时钟标识信息及所述网络设备转发所述宣告报文端口的端口标识 信息更新到所述宣告报文的 TLV字段中分别作为时钟标识信息及端口标识 信息, 将所述宣告报文的转发次数设为 1, 并采用所述转发所述宣告报文端 口转发该宣告报文。

8、 如权利要求 6或 7所述的装置, 其特征在于, 判断模块, 还用于判 断所述网络设备的端口接收的所述宣告报文的 TLV字段携带的父时钟 ID 标识信息与所述宣告报文中包含的时钟 ID标识信息是否一致;

更新转发模块, 还用于当确定所述网络设备的端口接收的所述宣告报 文的 TLV字段携带的父时钟 ID标识信息与所述宣告报文中包含的时钟 ID 标识信息不一致时, 将所述宣告报文中包含的时钟 ID标识信息更新至所述 宣告报文的 TLV字段中作为父时钟标识信息, 将所述网络设备的时钟标识 信息及所述网络设备转发所述宣告报文端口的端口标识信息更新到所述宣 告报文的 TLV字段中分别作为时钟标识信息及端口标识信息, 将所述宣告 报文的转发次数设为 1, 并采用所述转发所述宣告报文端口转发该宣告报 文。

9、 如权利要求 6所述的装置, 其特征在于, 所述比较选举模块, 还用 于网络设备根据所述网络设备各端口接收的宣告报文中 TLV字段携带的转 发次数信息及所述网络设备各端口的标识信息, 选择优先级最高的端口作 为从端口; 端口标识信息包括端口的优先级;

所述比较选举模块, 还用于将所述网络设备各端口接收的宣告报文中

TLV字段携带的转发次数进行比较, 选择接收的宣告报文中 TLV字段携带 的转发次数最少的端口, 判断所述接收的宣告报文中 TLV字段携带的转发 次数最少的端口是否唯一, 当确定所述接收的宣告报文中 TLV字段携带的 转发次数最少的端口唯一时, 将该端口作为从端口, 否则, 将所述接收的 宣告报文中 TLV字段携带的转发次数最少的各端口的端口标识信息中的优 先级进行比较, 选择优先级最高的端口作为从端口。

10、 如权利要求 9所述的装置, 其特征在于, 所述比较选举模块, 还 用于当确定所述网络设备的端口接收的 TLV字段携带的转发次数与所述从 端口接收的 TLV字段携带的转发次数差的绝对值为 0时, 将所述网络设备 的端口作为被动端口;

所述比较选举模块, 还用于当确定所述网络设备的端口接收的 TLV字 段携带的转发次数与所述从端口接收的 TLV字段携带的转发次数差的绝对 值为 1时, 将所述网络设备的端口接收的 TLV字段携带的时钟标识信息与 所述网络设备的时钟标识信息进行比较, 当确定所述网络设备的端口接收 的 TLV字段携带的时钟标识信息中的优先级高于所述网络设备的时钟标识 信息中的优先级时, 将所述网络设备的端口作为被动端口; 时钟标识信息 包括时钟标识的优先级;

所述更新转发模块, 还用于当确定所述网络设备的端口接收的 TLV字 段携带的时钟标识信息中的优先级不高于所述网络设备的时钟标识信息中 的优先级时, 将所述网络设备的时钟标识信息及所述网络设备转发所述宣 告报文端口的端口标识信息更新到所述宣告报文的 TLV字段中分别作为时 钟标识信息及端口标识信息, 将所述宣告报文的转发次数加一后, 采用所 述转发所述宣告报文端口转发该宣告报文。

Description:
基于 PTP协议的透明时钟被动端口选举方法及装置 技术领域

本发明涉及网络传输精确同歩协议 (Precision Time Protocol, PTP) 技 术领域, 尤其涉及一种基于 PTP协议的透明时钟被动 (Passive) 端口选举 方法及装置。 背景技术

随着计算机网络的飞速发展, 越来越多的工业领域对时钟同歩提出了 更高的要求, 尤其是在大多数以工业以太网为基础的分布式 控制系统中, 已经对时钟同歩的同歩要求达到了亚微秒级。 特别是在智能变电站、 分布 式控制系统中, 考虑到实时的数据采集、 调度和控制, 对时间统一的要求 就更为严格。

IEEE-1588精确时间同歩协议 (简称 PTP) , 定义了一个在测试和控制 网络中, 与网络通讯、 本地计算和分配对象有关的精确同歩时钟协议 。 该 协议支持系统范围的时钟同歩, 即可以用于广域的以太网中, 也可以用于 支持多点传送的局域网中,能够实现时间同歩 精度达到亚微秒级。 IEEE1588 精确时钟同歩算法由于其高同歩精度、 低成本实现、 方便安装与维护等优 越性, 在供电管理、 工业控制、 测试和测量、 网络通信等领域得到了广泛 的应用。

目前使用的 PTP协议版本绝大多数为 1EEE1588V2版本, 相对于 VI 版本, 增加了对透明时钟的支持, 这更加简化了 1588的实现难度、 提高了 1588的稳定性并提高了对时精度; 尤其是透明时钟更加适合在交换机系统 中实现时钟的传递。

目前在组网时, 若多个透明时钟之间构成复杂拓扑网络或环形 网络, 由于透明时钟根据接收到的 PTP报文, 只做频率同歩并不做时间同歩, 而 且具有透明时钟功能的节点本身只对接收到的 PTP报文做一些处理后, 转 发该 PTP报文, 因此, 将导致 PTP报文在所述环网中引起协议风暴, 从而 造成网络无法实现时钟同歩。

针对上述问题现有技术中存在一种解决方式, 根据生成树的端口状态 来区别是否转发 PTP协议报文, 此种方式可以解决在存在生成树的网络中 的透明时钟对时问题, 但对于多生成树和通过路由来组网的设备是无 法或 无法完全通过端口生成树的状态来判断是否转 发透明时钟报文, 因此导致

PTP协议失效。 发明内容

有鉴于此,本发明提供一种基于 PTP协议的透明时钟 Passive端口选举 方法及装置, 用以解决由多个透明时钟构成的复杂拓扑网络 或者环网无法 支持 PTP协议, 而导致的 PTP报文形成协议风暴的问题。

本发明提供了一种基于 PTP协议的透明时钟 Passive端口选举方法,该 选举方法包括:

网络设备的端口接收其他网络设备发送的宣告 报文, 提取所述宣告报 文的 TLV字段, 获取所述 TLV字段中携带的时钟标识信息、转发次数信息 及端口标识信息; 所述网络设备至少具有两个端口;

判断所述网络设备的端口是否为从端口;

当确定所述网络设备的端口非从端口时, 将所述网络设备的端口接收 的所述 TLV字段携带的转发次数,与所述网络设备的从 端口接收的 TLV字 段携带的转发次数进行比较, 当确定所述网络设备的端口接收的 TLV字段 携带的转发次数与所述从端口接收的 TLV字段携带的转发次数差的绝对值 为 0或者 1时, 选举一个端口作为被动端口;

当所述网络设备的端口为从端口, 或转发次数差的绝对值非 0或者 1 时, 将所述网络设备的时钟标识信息及所述网络设 备转发所述宣告报文端 口的端口标识信息更新到所述宣告报文的 TLV字段中分别作为时钟标识信 息及端口标识信息, 将所述宣告报文的转发次数加一后, 采用所述转发所 述宣告报文端口转发该宣告报文。

本发明提供了一种基于 PTP协议的透明时钟 Passive端口选举装置,该 选举装置包括:

接收提取模块, 用于网络设备的网络设备的端口接收其他网络 设备发 送的宣告报文, 提取所述宣告报文的 TLV字段, 获取所述 TLV字段中携带 的时钟标识信息、 转发次数信息及端口标识信息;

判断模块, 用于判断所述网络设备的端口是否为从端口; 比较选举模块, 用于当确定所述网络设备的端口非从端口时, 将所述 网络设备的端口接收的所述 TLV字段携带的转发次数, 与所述网络设备的 从端口接收的 TLV字段携带的转发次数进行比较, 当确定所述网络设备的 端口接收的 TLV字段携带的转发次数与所述从端口接收的 TLV字段携带的 转发次数差的绝对值为 0或者 1时, 选举优先级最低的端口作为被动端口; 更新转发模块, 用于当所述网络设备的端口为从端口, 或转发次数差 的绝对值非 0或者 1时, 将所述网络设备的时钟标识信息及所述网络设 备 转发所述宣告报文端口的端口标识信息更新到 所述宣告报文的 TLV字段中 分别作为时钟标识信息及端口标识信息, 将所述宣告报文的转发次数加一 后, 采用所述转发所述宣告报文端口转发该宣告报 文。

本发明提供了一种基于 PTP协议的透明时钟 Passive端口选举方法及装 置, 在该方法中网络设备的第一端口接收其他网络 设备发送的宣告 (Announce) 报文, 提取所述 Announce报文的 TLV字段, 获取所述 TLV 字段中携带的时钟标识信息、 转发次数信息及端口标识信息; 判断所述第 一端口是否为 Slave端口; 当确定所述第一端口非从 (Slave) 端口时, 将 所述第一端口接收的所述 TLV字段携带的转发次数, 与自身的 Slave端口 接收的 TLV 字段携带的转发次数进行比较, 当确定所述第一端口接收的 TLV字段携带的转发次数与所述 Slave端口接收的 TLV字段携带的转发次 数差的绝对值为 0或者 1时, 选择一个端口作为 Passive端口; 当所述第一 端口为 Slave端口, 或转发次数差的绝对值非 0或者 1时, 将自身的时钟标 识信息及自身转发所述 Announce 报文端口的端口标识信息更新到所述 Announce报文的 TLV字段中, 将所述 Announce报文的转发次数加一后, 采用所述转发所述 Announce报文端口转发该 Announce报文。

在本发明中网络设备的第一端口通过提取接收 的 Announce报文的 TLV 字段, 获取该 TLV字段携带的时钟标识信息、 转发次数信息及端口标识信 息,并根据该 TLV字段携带的转发次数信息及时钟标识信息, 与自身 Slave 端口接收的 Announce报文包含的 TLV字段中携带的转发次数信息及自身 的时钟标识信息进行比较, 从而选择一个优先级最低的端口作为 Passive端 口, 因此通过在 Announce报文的 TLV字段中增加时钟标识信息、 转发次 数信息及端口标识信息等比较因子, 使得透明时钟支持 PTP协议, 从而避 免了在由透明时钟构成的复杂拓扑网络及环形 网络中 PTP报文形成的协议 风暴, 提高了网络的稳定性。 附图说明

此处所说明的附图用来提供对本发明的进一歩 理解, 构成本发明的一 部分, 本发明的示意性实施例及其说明用于解释本发 明, 并不构成对本发 明的不当限定。 在附图中:

图 1为本发明提供的一种基于 PTP协议的透明时钟 Passive端口选举的 过程示意图;

图 2为本发明提供的一种对称网络中基于 PTP协议的透明时钟 Passive 端口选举的详细过程示意图;

图 3为本发明提供的应用基于 PTP协议的透明时钟 Passive端口选举方 法的对称网络结构布置图。

图 4为本发明提供的应用基于 PTP协议的透明时钟 Passive端口选举方 法的非对称网络结构布置图。

图 5为本发明提供的应用基于 PTP协议的透明时钟 Passive端口选举方 法的冗余网络的结构布置图。

图 6为本发明提供的应用基于 PTP协议的透明时钟 Passive端口选举装 置的结构示意图。 具体实施方式

为了使本发明所要解决的技术问题、 技术方案及有益效果更加清楚、 明白, 以下结合附图和实施例, 对本发明进行进一歩详细说明。 应当理解, 此处所描述的具体实施例仅仅用以解释本发明 , 并不用于限定本发明。

本发明实施例为了解决由多个透明时钟构成的 复杂拓扑网络或者环形 网络中, 由于透明时钟根据接收到的 PTP报文, 只做频率同歩并不做时间 同歩, 而且具有透明时钟功能的节点本身只对接收到 的 PTP报文做一些处 理后, 转发该 PTP报文, 而导致的 PTP报文在环形网络中形成协议风暴的 问题, 提供了一种基于 PTP协议的透明时钟 Passive端口选举方法及装置, 通过对 Announce报文进行扩展,使得透明时钟支持 PTP协议,从而避免了 PTP报文形成协议风暴, 提高了网络的稳定性。

下面结合说明书附图, 对本发明实施例进行详细说明。 图 1为本发明提供的一种基于 PTP协议的透明时钟 Passive端口选举的 过程示意图, 该选举过程包括以下几个歩骤:

S101 : 网络设备的第一端口接收其他网络设备发送的 Announce报文, 该 Announce报文的 TLV字段中携带时钟标识信息、 转发次数信息及端口 标识信息。

在由多个透明时钟构成的复杂拓扑网络或者环 形网络中, 透明时钟由 于只能做频率同歩而不能做时间同歩, 因此不能成为主时钟, 为了能让每 个透明时钟中的数据集能够继续进行比较, 本发明的网络设备在 Announce 报文的 TLV字段中增加比较因子, 例如时钟标识信息、 转发次数信息及端 口标识信息, 其中, 本发明中网络设备包括但不限于具有透明时钟 功能的 交换机、 路由器及其他智能设备。

S102: 提取所述 Announce报文的 TLV字段, 获取所述 TLV字段中携 带的时钟标识信息、 转发次数信息及端口标识信息。

在本发明中 TLV字段中携带的时钟标识信息包括时钟标识的 优先级, 端口标识信息包括端口标识的优先级,转发次 数信息包括所述 Announce报 文经过复杂拓扑网络或者环形网的其他透明时 钟转发的次数。 其中, 时钟 标识的优先级根据网络设备自身本地时钟的 ID及具体配置决定, 端口标识 的优先级由端口的 ID及具体配置确定。

S103 : 判断所述第一端口是否为 Slave端口, 当判定结果为是时, 进行 歩骤 S 106, 否则, 进行歩骤 S 104。

在本发明中所述网络设备的 Slave端口选举方法包括:网络设备根据自 身各端口接收的 Announce报文中 TLV字段携带的转发次数信息及自身各 端口的标识信息, 选择优先级最高的端口作为 Slave端口。

具体的, 选择优先级最高的端口作为 Slave端口包括: 将各端口接收的 Announce报文中 TLV字段携带的转发次数进行比较,选择接收的 Announce 报文中 TLV字段携带的转发次数最少的端口, 判断所述接收的 Announce 报文中 TLV字段携带的转发次数最少的端口是否唯一; 当确定所述接收的 Announce报文中 TLV字段携带的转发次数最少的端口唯一时,将 该端口作 为 Slave端口;

否则, 将所述接收的 Announce报文中 TLV字段携带的转发次数最少 的各端口的端口标识信息的优先级进行比较, 选择优先级最高的端口作为 Slave ¾ P。

S104: 判断第一端口接收的 TLV字段携带的转发次数与自身的 Slave 端口接收的 TLV字段携带的转发次数差的绝对值是否为 0或者 1, 当判定 结果为是时, 进行歩骤 S105 , 否则, 进行歩骤 S106。

S105: 当确定所述第一端口接收的 TLV字段携带的转发次数与自身的 Slave端口接收的 TLV字段携带的转发次数差的绝对值为 0或者 1时,选择 一个优先级最低的端口作为 Passive端口。

当确定所述第一端口接收的 TLV字段携带的转发次数与所述 Slave端 口接收的 TLV字段携带的转发次数差的绝对值为 0时, 将所述第一端口作 为 Passive端 P;

当确定所述第一端口接收的 TLV字段携带的转发次数与所述 Slave端 口接收的 TLV字段携带的转发次数差的绝对值为 1时, 将所述第一端口接 收的 TLV字段携带的时钟标识信息与自身的时钟标识 信息进行比较;

当确定所述第一端口接收的 TLV字段携带的时钟标识信息的优先级高 于自身的时钟标识信息的优先级时, 将所述第一端口作为 Passive端口。

当确定所述第一端口接收的 TLV字段携带的时钟标识信息的优先级不 高于自身的时钟标识信息的优先级时, 所述方法还包括:

将自身的时钟标识信息及自身转发所述 Announce报文端口的端口标识 信息更新到所述 Announce报文的 TLV字段中, 将所述 Announce报文的转 发次数加一后, 采用所述转发所述 Announce报文端口转发该 Announce报 文。

S106:将自身的时钟标识信息及自身转发所述 Announce报文端口的端 口标识信息更新到所述 Announce报文的 TLV字段中, 将所述 Announce报 文的转发次数加一后, 采用所述端口标识信息对应的所述转发所述 Announce报文端□转发该 Announce报文。

具体的, 当网络设备接收到其他设备发送的 Announce报文时, 该网络 设备将所述 Announce报文经由自身的延时时间累加到所述 Announce报文 的修正域中 (当网络设备为 E2E透明时钟时, 计算自身的驻留时间并累加 到报文的修正域中, 当网络设备为 P2P透明时钟时, 计算点到点链路时延 和自身的驻留时间并累加到报文的修正域中) , 并将自身的时钟标识信息及 所经端口的端口标识信息分别更新到所述 Announce报文的 TLV字段的时 钟标识信息及端口标识信息中, 同时将所述 Announce报文的 TLV字段携 带的转发次数加一, 采用所述端口标识信息对应的所述转发所述 Announce 报文端口转发该 Announce报文。

Announce报文首次由边界时钟发送到透明时钟构 的复杂拓扑网络或 者环形网络时, 由于边界时钟在接收和转发 Announce 报文时, 不需要对 Announce 报文的 TLV 字段包含的信息进行比较或者更新, 所以此时 Announce报文的 TLV字段中并不携带时钟标识信息、转发次数信 息及端口 标识信息, 因此复杂拓扑网络或者环形网络中网络设备的 端口接收到的 Announce报文的 TLV字段中也不携带时钟标识信息、转发次数信 息及端口 标识信息。 优选地, 在这种情况下, 在选举 Slave端口之前进行如下处理: 当确定所述 Annoimce报文的 TLV字段未携带时钟标识信息、 转发次 数信息及端口标识信息时, 解析所述 Announce报文, 获取所述 Announce 报文中携带的时钟 ID标识信息,将所述 Annoimce报文中携带的时钟 ID标 识信息更新至所述 Announce报文的 TLV字段中作为父时钟标识信息, 将 自身的时钟标识信息及自身转发所述 Announce报文端口的端口标识信息分 别更新到所述 Announce报文的 TLV字段中作为时钟标识信息及端口标识 信息, 在 TLV字段中将所述 Announce报文的转发次数设为 1, 然后将该 Announce报文从自身除 Passive端口外的所有端口转发。

Announce报文的 TLV字段中还携带有父时钟标识信息的情况下, 在本 发明中透明时钟除了根据本发明提供的方法对 接收到的 Announce 报文的 TLV字段进行更新外,只根据 Announce报文在自身的驻留时间及链路延时, 对该 Announce报文的修正域进行更新, 并不修改 Announce报文的时钟 ID 标识信息, 当该 Announce报文在经过透明时钟组成的网络传输至 个边界 时钟组成的网络, 由于边界时钟更新了该 Announce报文的时钟 ID标识信 息, 并没有修改该 Announce报文的 TLV字段, 因此当该 Announce报文又 从边界时钟发送至另一个由透明时钟组成的环 形网络时, 将导致该 Announce报文 TLV字段中携带的转发次数信息在上一个透明时 钟的基础上 继续累加, 从而导致选举结果不准确。 为了解决该问题, 复杂拓扑网络或 者环形网络时中的透明时钟在选举 Slave端口之前还优选地进行如下处理: 判断所述第一端口接收的所述 Announce报文的 TLV字段携带的父时 钟 ID标识信息与所述 Announce报文中包含的时钟 ID标识信息是否一致; 当确定所述第一端口接收的所述 Announce报文的 TLV字段携带的父时钟 ID标识信息与所述 Announce报文中包含的时钟 ID标识信息不一致时, 将 所述 Announce报文中包含的时钟 ID标识信息更新至所述 Announce报文的 TLV字段中作为父时钟 ID标识信息,将自身的时钟标识信息及自身转 所 述 Announce 报文端口的端口标识信息分别更新到所述 Announce 报文的 TLV字段中作为时钟标识信息及端口标识信息, 在 Announce报文的 TLV 字段中将所述 Annoimce 报文的转发次数设为 1, 并采用所述转发所述 Announce报文端口转发该 Announce报文,并且不再进行 Slave端口的判定。

图 2为本发明提供的一种基于 PTP协议的透明时钟 Passive端口选举的 详细过程示意图, 该选举过程包括以下几个歩骤:

S201 : 网络设备的第一端口接收其他网络设备发送的 Announce报文, 提取该 Announce报文的 TLV字段。

S202: 判断第一端口接收的该 Announce报文的 TLV字段是否未携带 时钟标识信息、 转发次数信息及端口标识信息, 当判定结果为是时, 进行 歩骤 S210, 否则, 进行歩骤 S203。

S203 : 判断第一端口接收的该 Announce报文的 TLV字段携带的父时 钟 ID标识信息与该 Announce报文中包含的时钟 ID标识信息是否一致,当 判定结果为是时, 进行歩骤 S204, 否则, 进行歩骤 S210。

S204: 判断所述第一端口是否为 Slave端口, 当判定结果为是时, 进行 歩骤 S209, 否则, 进行歩骤 S205。

S205: 判断第一端口接收的 TLV字段携带的转发次数与自身的 Slave 端口接收的 TLV字段携带的转发次数是否一致, 当判定结果为是时, 进行 歩骤 S208, 否则, 进行歩骤 S206。

S206: 判断第一端口接收的 TLV字段携带的转发次数与自身的 Slave 端口接收的 TLV字段携带的转发次数差的绝对值是否为 1, 当判定结果为 是时, 进行歩骤 S207, 否则, 进行歩骤 S209。

S207: 判断第一端口接收的 TLV字段携带的时钟标识信息的优先级是 否高于自身的时钟标识信息的优先级, 当判定结果为是时,进行歩骤 S208, 否则, 进行歩骤 S209。

S208: 选择第一端口作为 Passive端口。

S209:将自身的时钟标识信息及自身转发所述 Announce报文端口的端 口标识信息分别更新到所述 Announce报文的 TLV字段中作为时钟标识信 息和端口标识信息, 将所述 Announce报文的转发次数加一后, 采用所述转 发所述 Announce报文端口转发该 Announce报文。

S210: 将所述 Announce 报文中包含的时钟 ID 标识信息更新至所述 Announce报文的 TLV字段中作为父时钟 ID标识信息, 将自身的时钟标识 信息及自身转发所述 Announce 报文端口的端口标识信息分别更新到所述 Announce报文的 TLV字段中作为时钟标识信息和端口标识信息, 将所述 Announce报文的转发次数设为 1,并采用所述转发所述 Announce报文端口 转发该 Announce报文。

图 3为本发明提供的应用基于 PTP协议的透明时钟 Passive端口选举方 法的对称网络结构布置图, 图中单独存在的数字表示 Announce报文转发的 次数。 如图所示, 在由网络设备 TC1〜TC6组成的环形网络中, 其中, 所述 网络设备 TC1〜TC6为透明时钟,网络设备 TC1的第一接口接收外部网络发 送的 Announce报文,提取该 Announce报文的 TLV字段,判断该 Announce 报文的 TLV字段是否未携带时钟标识信息、转发次数信 息及端口标识信息, 当判定结果为是时, 解析该 Announce报文, 将该 Announce报文中包含的 时钟 ID标识信息更新至该 Announce报文的 TLV字段中作为父时钟 ID标 识信息, 将自身的时钟标识信息及第二端口的端口标识 信息更新到该 Announce报文的 TLV字段中作为时钟标识信息和端口标识信息, 并将该 Announce报文的转发次数设为 1后, 经第二端口转发。

网络设备 TC2〜TC6接收环形网络中其他网络设备转发的该 Announce 报文, 提取该 Announce报文的 TLV字段, 获取该 TLV字段中携带的时钟 标识信息、 转发次数信息及端口标识信息, 根据该 TLV字段中携带的时钟 标识信息及转发次数信息, 选择一个优先级最低的端口作为 Passive端口, 图中网络设备 TC4的黑色点状端口为所述 Passive端口,因此通过对对协议 尤其是 Announce报文进行扩展,使得透明时钟支持 PTP协议,从而避免了 在由透明时钟构成的复杂拓扑网络及环形网络 中 PTP 报文形成的协议风 暴, 提高了网络的稳定性。

图 4为本发明提供的应用基于 PTP协议的透明时钟 Passive端口选举方 法的非对称网络结构布置图, 图中单独存在的数字表示 Announce报文转发 的次数。 如图所示, 由于网络设备 TC4和 TC5的两个端口的转发次数的差 值为 1, 根据本发明提供的方法当确定第一端口接收的 TLV字段携带的转 发次数与自身的第二端口接收的 TLV字段携带的转发次数差的绝对值为 1 时, 选择时钟标识信息的优先级低的作为 Passive端口, 因此在由透明时钟 组成的非对称环形网络中, 网络设备 TC4侧与 TC5相连的端口为 Passive 端口。

图 5为本发明提供的一种基于 PTP协议的透明时钟 Passive端口选举方 法的冗余网络的结构布置图, 图中单独存在的数字表示 Announce报文转发 的次数。 如图所示, 网络设备 TC4及 TC5为上述环形网络的冗余部分, 通 过采用本发明所提供的透明时钟 Passive端口选举方法, 有效的将环形网络 的布置结果转换为树形布置结构, 从而避免了 PTP报文在环形网络中形成 协议风暴, 提高了网络的稳定性。

图 6为本发明提供的一种基于 PTP协议的透明时钟 Passive端口选举装 置的结构示意图, 该选举装置包括:

接收提取模块 61, 用于网络设备的端口接收其他网络设备发送的 Announce报文, 提取所述 Announce报文的 TLV字段, 获取所述 TLV字段 中携带的时钟标识信息、 转发次数信息及端口标识信息;

判断模块 62, 用于判断所述网络设备的端口是否为 Slave端口; 比较选举模块 63, 用于当确定所述网络设备的端口非 Slave端口时, 将所述网络设备的端口接收的所述 TLV字段携带的转发次数, 与所述网络 设备的 Slave端口接收的 TLV字段携带的转发次数进行比较, 当确定所述 网络设备的端口接收的 TLV字段携带的转发次数与所述 Slave端口接收的 TLV字段携带的转发次数差的绝对值为 0或者 1时, 选择一个优先级最低 的端口作为 Passive端口;

更新转发模块 64, 用于当所述网络设备的端口为 Slave端口, 或转发 次数差的绝对值非 0或者 1时, 将所述网络设备的时钟标识信息及所述网 络设备转发所述 Announce报文端口的端口标识信息更新到所述 Announce 报文的 TLV 字段中分别作为时钟标识信息及端口标识信息 , 将所述 Announce报文的转发次数加一后, 采用所述转发所述 Announce报文端口 转发该 Announce报文。

判断模块 62, 还用于判断所述网络设备的端口接收的所述 Announce 报文的 TLV字段是否未携带时钟标识信息、转发次数信 息及端口标识信息; 更新转发模块 64, 还用于当确定所述 Annoimce报文的 TLV字段未携 带时钟标识信息、 转发次数信息及端口标识信息时, 解析所述 Announce报 文, 获取所述 Announce报文中携带的时钟 ID标识信息, 将所述 Announce 报文中携带的时钟 ID标识信息更新至所述 Announce报文的 TLV字段中作 为父时钟标识信息, 将所述网络设备的时钟标识信息及所述网络设 备转发 所述 Announce报文端口的端口标识信息更新到所述 Announce报文的 TLV 字段中分别作为时钟标识信息及端口标识信息 ,将所述 Announce报文的转 发次数设为 1, 并采用所述转发所述 Announce报文端口转发该 Announce 报文。

所述选举装置还包括:

判断模块 62, 还用于判断所述网络设备的端口接收的所述 Announce 报文的 TLV字段携带的父时钟 ID标识信息与所述 Annoimce报文中包含的 时钟 ID标识信息是否一致;

更新转发模块 64, 还用于当确定所述网络设备的端口接收的所述 Announce报文的 TLV字段携带的父时钟 ID标识信息与所述 Announce报文 中包含的时钟 ID标识信息不一致时, 将所述 Announce报文中包含的时钟 ID标识信息更新至所述 Annoimce报文的 TLV字段中作为父时钟标识信息, 将所述网络设备的时钟标识信息及所述网络设 备转发所述 Announce报文端 口的端口标识信息更新到所述 Announce报文的 TLV字段中分别作为时钟 标识信息及端口标识信息, 将所述 Annoimce报文的转发次数设为 1, 并采 用所述转发所述 Announce报文端口转发该 Announce报文。

所述比较选举模块 63, 还用于网络设备根据所述网络设备各端口接收 的 Announce报文中 TLV字段携带的转发次数信息及所述网络设备各 端口 的标识信息, 选择优先级最高的端口作为 Slave端口; 端口标识信息包括端 口的优先级。

所述比较选举模块 63,具体用于将各端口接收的 Announce报文中 TLV 字段携带的转发次数进行比较, 选择接收的 Announce报文中 TLV字段携 带的转发次数最少的端口, 判断所述接收的 Announce报文中 TLV字段携 带的转发次数最少的端口是否唯一, 当确定所述接收的 Annoimce 报文中 TLV字段携带的转发次数最少的端口唯一时,将 该端口作为 Slave端口,否 则, 将所述接收的 Announce报文中 TLV字段携带的转发次数最少的各端 口的端口标识信息中的优先级进行比较, 选择优先级最高的端口作为 Slave 端口。

所述比较选举模块 63, 还用于当确定所述网络设备的端口接收的 TLV 字段携带的转发次数与所述 Slave端口接收的 TLV字段携带的转发次数差 的绝对值为 0时, 将所述网络设备的端口作为 Passive端口。

所述比较选举模块 63, 还用于当确定所述网络设备的端口接收的 TLV 字段携带的转发次数与所述 Slave端口接收的 TLV字段携带的转发次数差 的绝对值为 1时, 将所述网络设备的端口接收的 TLV字段携带的时钟标识 信息与所述网络设备的时钟标识信息进行比较 , 当确定所述网络设备的端 口接收的 TLV字段携带的时钟标识信息中的优先级高于所 述网络设备的时 钟标识信息中的优先级时, 将所述网络设备的端口作为 Passive端口; 时钟 标识信息包括时钟标识的优先级。

所述更新转发模块 64, 还用于当确定所述网络设备的端口接收的 TLV 字段携带的时钟标识信息中的优先级不高于所 述网络设备的时钟标识信息 中的优先级时, 还将所述网络设备的时钟标识信息及所述网络 设备转发所 述 Announce报文端口的端口标识信息更新到所述 Announce报文的 TLV字 段中分别作为时钟标识信息及端口标识信息, 将所述 Announce报文的转发 次数加一后,采用所述转发所述 Announce报文端口转发该 Announce报文。

所述选举装置还包括:

恢复模块 65, 用于当链路发生异常时, 自动恢复设置的 Passive端口。 本发明提供了一种基于 PTP协议的透明时钟 Passive端口选举方法及装 置, 在该方法中网络设备的网络设备的端口接收其 他网络设备发送的 Announce报文, 提取所述 Announce报文的 TLV字段, 获取所述 TLV字段 中携带的时钟标识信息、 转发次数信息及端口标识信息; 判断所述网络设 备的端口是否为 Slave端口; 当确定所述网络设备的端口非 Slave端口时, 将所述网络设备的端口接收的所述 TLV字段携带的转发次数, 与所述网络 设备的 Slave端口接收的 TLV字段携带的转发次数进行比较, 当确定所述 网络设备的端口接收的 TLV字段携带的转发次数与所述 Slave端口接收的 TLV字段携带的转发次数差的绝对值为 0或者 1时, 选择一个优先级最低 的端口作为 Passive端口; 当所述网络设备的端口为 Slave端口, 或转发次 数差的绝对值非 0或者 1 时, 将所述网络设备的时钟标识信息及所述网络 设备转发所述 Announce报文端口的端口标识信息更新到所述 Announce报 文的 TLV字段中, 将所述 Announce报文的转发次数加一后, 采用所述转 发所述 Announce报文端口转发该 Announce报文。 在本发明中网络设备的 网络设备的端口通过提取接收的 Announce报文的 TLV字段, 获取该 TLV 字段携带的时钟标识信息、 转发次数信息及端口标识信息, 并根据该 TLV 字段携带的转发次数信息及时钟标识信息,与 所述网络设备 Slave端口接收 的 Announce报文包含的 TLV字段中携带的转发次数信息及所述网络设备 的时钟标识信息进行比较, 从而选择一个端口作为 Passive端口, 因此通过 在 Announce报文的 TLV字段中增加时钟标识信息、 转发次数信息及端口 标识信息等比较因子, 使得透明时钟支持 PTP协议, 从而避免了在由透明 时钟构成的复杂拓扑网络及环形网络中 PTP报文形成的协议风暴, 提高了 网络的稳定性。

上述说明示出并描述了本发明的优选实施例, 但如前所述, 应当理解 本发明并非局限于本文所披露的形式, 不应看作是对其他实施例的排除, 而可用于各种其他组合、 修改和环境, 并能够在本文所述发明构想范围内, 通过上述教导或相关领域的技术或知识进行改 动。 而本领域人员所进行的 改动和变化不脱离本发明的精神和范围, 则都应在本发明所附权利要求的 保护范围内。