Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
COMMUNICATION DEVICE CAPABLE OF MULTI-PATH DATA TRANSMISSION, DATA COMMUNICATION NETWORK SYSTEM AND DATA COMMUNICATION METHOD
Document Type and Number:
WIPO Patent Application WO/2019/201189
Kind Code:
A1
Abstract:
Disclosed is a communication device capable of multi-path data transmission, comprising: two or more network link ports, and a path decision component comprising a data modification unit, a learning unit and a path decision unit. The data modification unit modifies path information. The learning unit is used for learning a port number, the path information and a source user switch ID, and forming a user switch ID table. The path decision unit queries the user switch ID table, and sends, based on a destination user switch ID, a data frame to the one or more network link ports. Also disclosed are a communication network and communication method using the communication device.

Inventors:
YAN XIAOFENG (US)
Application Number:
PCT/CN2019/082594
Publication Date:
October 24, 2019
Filing Date:
April 15, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
YAN XIAOFENG (CN)
International Classes:
H04L45/24; H04L45/02
Foreign References:
CN108600097A2018-09-28
CN107395479A2017-11-24
CN107248963A2017-10-13
US20110222541A12011-09-15
US20150244544A12015-08-27
Attorney, Agent or Firm:
BEIJING JINXUN INTELLECTUAL PROPERTY AGENCY (LLP) (CN)
Download PDF:
Claims:
权利要求书

[权利要求 i] 一种可多路径传输数据的通讯设备, 包括:

两个或多个网络链接端口, 每个网络链接端口用于接收来自相邻的前 一个通讯设备传输来的数据帧, 并用于将不属于本地的数据帧输出到 相邻的后一个通讯设备;

路径决策组件, 其包括数据修改单元、 学习单元以及路径决策单元, 其中,

所述数据修改单元修改所接收的数据帧的路由协议中所包含的路径信 息,

所述学习单元用来学习接收所述数据帧的网络链接端口的端口号、 所 修改后的所述数据帧中的路径信息以及所述数据帧的路由协议中所包 含的源用户交换机 ID, 并形成包含所所学习到的信息的用户交换机 I D表, 以及

所述路径决策单元基于所述数据帧的路由协议中所包含的目的地用户 交换机 ID查询用户交换机 ID表, 并基于与用户交换机 ID表中的目的 地用户交换机 ID相关联的路径信息决定将其目的地用户交换机 ID不 同于本地用户交换机 ID的一个数据帧或多个相同数据帧中的一个数据 帧发送到与用户交换机 ID表中的目的地用户交换机 ID相关联记录的 一个或多个端口号所对应一个或多个网络链接端口。

[权利要求 2] 根据权利要求 1所述的可多路径传输数据的通讯设备, 其中所述路径 决策单元包括:

路径信息选择单元, 用于从用户交换机 ID表中的与所述数据帧的路由 协议中的目的地用户交换机 ID相关联的多个路径信息中选择具有最小 有效拓扑面积 (LETA) 的路径信息; 以及

数据帧路由单元, 基于路径信息选择单元所选择的路径信息将其路由 协议中包含的目的地用户交换机 ID不为本地用户交换机 ID的所述数 据帧路由到与目的地用户交换机 ID相关联的一个或多个网络链接端口 [权利要求 3] 根据权利要求 2所述的可多路径传输数据的通讯设备, 其中所述路径 信息为所述数据帧从与用户交换机相连的源通讯设备传输到当前通讯 设备所经过的通讯设备的数量, 并且所述具有最小有效拓扑面积 (L ETA) 的路径信息为所述数据帧所经过的通讯设备的数量最小的路径 信息。

[权利要求 4] 根据权利要求 2所述的可多路径传输数据的通讯设备, 其中所述路径 信息为所述数据帧从与用户交换机相连的源通讯设备传输到当前通讯 设备所累计的传输时间, 所述具有最小有效拓扑面积 (LETA) 的路 径信息为所述数据帧所累计的传输时间最短的路径信息。

[权利要求 5] 根据权利要求 2所述的可多路径传输数据的通讯设备, 其中所述路径 信息为所述路径信息为所述数据帧从与用户交换机相连的源通讯设备 传输到当前通讯设备所经过的通讯设备的数量以及所述数据帧从与用 户交换机相连的源通讯设备传输到当前通讯设备所累计的传输时间, 并且所述具有最小有效拓扑面积 (LETA) 的路径信息为所述数据帧 所经过的通讯设备的数量最小以及所述数据帧所累计的传输时间最短 的路径信息。

[权利要求 6] 根据权利要求 1所述的可多路径传输数据的通讯设备, 其中所述学习 单元还学习源用户交换机 ID关联的数据帧序列号, 并基于源用户交换 机 ID更新数据帧序列号。

[权利要求 7] 根据权利要求 6所述的可多路径传输数据的通讯设备, 其中所述路径 决策单元在所述数据帧的帧序列号已经被登记在用户交换机 ID表中的 情况下将所述数据帧丢弃。

[权利要求 8] 一种可多路径传输数据的数据通讯网络系统, 包括三个或三个以上的 根据权利要求 1-7之一所述的可多路径传输数据的通讯设备, 其中, 第一通讯设备, 接收与其相连的源用户交换机发送来的数据帧; 以及 第二通讯设备, 具有两个或多个网络链接端口, 接收第一通讯设备直 接过经由该系统中的其他通讯设备传输来的相同数据帧; 其中, 第二通讯设备的修改所接收的每个相同数据帧的路由协议中所包含的 路径信息;

第二通讯设备的学习单元用来学习接收所述数据帧的一个或多个网络 链接端口的端口号、 所修改后的所述数据帧中的路径信息以及所述数 据帧的路由协议中所包含的源用户交换机 ID, 并形成包含所所学习到 的信息的用户交换机 ID表, 从而在第二通讯设备的用户交换机 ID表 中针对所述源用户交换机的 ID相关联地记录多个相同数据帧的不同路 径信息; 以及

第二通讯设备的路径决策单元基于所述每个相同数据帧的路由协议中 所包含的作为目的地用户交换机的 ID查询第一通讯设备的用户交换机 ID表, 并基于与第二通讯设备的用户交换机 ID表中的目的地用户交 换机的 ID相关联的路径信息决定将具有该目的地用户交换机 ID的一 个数据帧或多个相同数据帧中的一个数据帧发送到与第二通讯设备的 用户交换机 ID表中的目的地用户交换机 ID相关联记录的一个或多个 端口号对应的第二通讯设备的一个或多个网络链接端口。

[权利要求 9] 一种利用权利要求 1-7之一所述的可多路径传输数据的通讯设备进行 多路径数据通讯方法, 包括:

源用户交换机向与其相连第一通讯设备发送数据帧;

第一通讯设备向第二通讯设备的两个或多个网络链接端口传输相同数 据帧;

第二通讯设备的数据修改单元修改所接收的每个相同数据帧的路由协 议中所包含的路径信息;

第二通讯设备的学习单元用来学习接收所述数据帧的一个或多个网络 链接端口的端口号、 所修改后的所述数据帧中的路径信息以及所述数 据帧的路由协议中所包含的源用户交换机 ID, 并形成包含所所学习到 的信息的用户交换机 ID表, 从而在第二通讯设备的用户交换机 ID表 中针对所述源用户交换机的 ID相关联地记录多个相同数据帧的不同路 径信息; 以及

第二通讯设备的路径决策单元基于所述每个相同数据帧的路由协议中 所包含的作为目的地用户交换机的 ID查询第一通讯设备的用户交换机 ID表, 并基于与第二通讯设备的用户交换机 ID表中的目的地用户交 换机的 ID相关联的路径信息决定将具有该目的地用户交换机 ID的一 个数据帧或多个相同数据帧中的一个数据帧发送到与第二通讯设备的 用户交换机 ID表中的目的地用户交换机 ID相关联记录的一个或多个 端口号对应的第二通讯设备的一个或多个网络链接端口。

[权利要求 10] 根据权利要求 9所述的进行多路径数据通讯方法, 还包括:

在接收到广播数据帧时, 所有被广播的通讯设备的学习单元基于学习 结果更新用户交换机 ID表中各个用户交换机 ID所对应的路径信息和 端口号。

Description:
可多路径传输数据的诵讯设备、 数据诵讯网络系统及数 据诵讯方法

技术领域

[0001] 本公开涉及一种通讯设备, 尤其是涉及一种可多路径传输数据的通讯设备 、 由 这种可多路径传输数据的通讯设备构成的可多 路径传输数据的数据通讯网络系 统以及可多路径传输数据的数据通讯方法。

背景技术

[0002] 当前的工业现场, 对控制数据的冗余性具有较高的要求, 期望能够在传输路径 出现阻断或拥塞的情况下, 能够有备用路径同时进行倒换提供不间断数据 通讯

[0003] 目前工业用环网包括有损倒换环网 (非零自愈) 以及无损倒换环网。 无损倒换 环网所使用的可多路径传输数据的通讯设备, 诸如 HSR交换机, 采用国际标准 IE

C63599 , 其利用了 PRP (parallel Redundancy

protocol平行冗余协议) 和 HSR (High-availability Seamless protocol高性能无缝协 议) 。 有损倒换环网尽管有其固有的优点, 但是在对数据有较高技术要求的环 境中, 由于有损倒换环网不能满足用户要求 (例如, 存在数据丢失问题) , 因 此有些工业应用场合采用无损倒换环网。 但是, 当前的无损倒换环网, 即零自 愈环网, 所采用的交换机的自愈机制是基于以太网源 MAC学习机制, 利用以太 网数据协议中自有的数据包 ID达到零自愈传输。 这样, 当网络上有大量的设备 时, 就需要大量资源来存储 MAC, 以及长时间的查找 MAC和对比数据包 ID, 因 此, 资源受限和查找对比方式大大降低了设备接入 量和带宽使用率。 这也是导 致目前零自愈可多路径传输数据的通讯设备的 接入设备数量受到限制 (通常不 超过 512) , 因此不能应用于大规模使用接入设备的工业场 合。

[0004] 本申请的申请人为此提出了一种名称为“无损 环网交换机、 无损自愈环网及其 数据通讯方法”申请号为 CN201710357928.9公开号为 CN107395479A的中国专利 申请。 其提出了一种无损环网交换机, 由于其针对数据帧进行源用户交换机 ID 的学习, 并核对目的地用户交换机 ID和源交换机数据帧序列号, 因此, 极大地 降低了交换机进行数据交换速度。 因为, 在环网上的交换机的数量远小于接入 设备的数量, 因此根据专利公开号 CN 107395479A的单台无损环网交换机的 MAC 数可以达到 16K以上的程度 (相当于单个交换机芯片的容量) 。 其传输速率可以 达到线速 (线路设计速度) 的 90%以上。 尽管该专利申请提供了一种应用于大规 模使用接入设备的工业场合, 但是在环网出现被极端破坏的情况下, 其依然不 能完全解决控制数据传输的路径的冗余性。

发明概述

技术问题

[0005] 因此, 人们期望提供一种能够极大限度地为工业数据 通讯提供冗余的工业通讯 网络和设备, 应用于的复杂而环境严苛的工业场合。

问题的解决方案

技术解决方案

[0006] 为此, 本公开提供了一种可多路径传输数据的通讯设 备, 包括: 两个或多个网 络链接端口, 每个网络链接端口用于接收来自相邻的前一个 通讯设备传输来的 数据帧, 并用于将不属于本地的数据帧输出到相邻的后 一个通讯设备; 路径决 策组件, 其包括数据修改单元、 学习单元以及路径决策单元, 其中, 所述数据 修改单元修改所接收的数据帧的路由协议中所 包含的路径信息, 所述学习单元 用来学习接收所述数据帧的一个或多个网络链 接端口的端口号、 所修改后的所 述数据帧中的路径信息以及所述数据帧的路由 协议中所包含的源用户交换机 ID , 并形成包含所所学习到的信息的用户交换机 ID表, 以及所述路径决策单元基 于所述数据帧的路由协议中所包含的目的地用 户交换机 ID查询用户交换机 ID表 , 并基于与用户交换机 ID表中的目的地用户交换机 ID相关联的路径信息决定将 其目的地用户交换机 ID不同于本地用户交换机 ID的一个数据帧或多个相同数据 帧中的一个数据帧发送到与用户交换机 ID表中的目的地用户交换机 ID相关联记 录的一个或多个端口号所对应一个或多个网络 链接端口。

[0007] 根据本公开的可多路径传输数据的通讯设备, 其中所述路径决策单元包括: 路 径信息选择单元, 用于从用户交换机 ID表中的与所述数据帧的路由协议中的目 的地用户交换机 ID相关联的多个路径信息中选择具有最小有效 扑面积 (LETA ) 的路径信息; 以及数据帧路由单元, 基于路径信息选择单元所选择的路径信 息将其路由协议中包含的目的地用户交换机 ID不为本地用户交换机 ID的所述数 据帧路由到与目的地用户交换机 ID相关联的一个或多个网络链接端口。

[0008] 根据本公开的可多路径传输数据的通讯设备, 其中所述路径信息为所述数据帧 从与用户交换机相连的源通讯设备传输到当前 通讯设备所经过的通讯设备的数 量, 并且所述具有最小有效拓扑面积 (LETA) 的路径信息为所述数据帧所经过 的通讯设备的数量最小的路径信息。

[0009] 根据本公开的可多路径传输数据的通讯设备, 其中所述路径信息为所述数据帧 从与用户交换机相连的源通讯设备传输到当前 通讯设备所累计的传输时间, 所 述具有最小有效拓扑面积 (LETA) 的路径信息为所述数据帧所累计的传输时间 最短的路径信息。

[0010] 根据本公开的可多路径传输数据的通讯设备, 其中所述路径信息为所述路径信 息为所述数据帧从与用户交换机相连的源通讯 设备传输到当前通讯设备所经过 的通讯设备的数量以及所述数据帧从与用户交 换机相连的源通讯设备传输到当 前通讯设备所累计的传输时间, 并且所述具有最小有效拓扑面积 (LETA) 的路 径信息为所述数据帧所经过的通讯设备的数量 最小以及所述数据帧所累计的传 输时间最短的路径信息。

[0011] 根据本公开的可多路径传输数据的通讯设备, 其中所所述学习单元还学习源用 户交换机 ID关联的数据帧序列号, 并基于源用户交换机 ID更新数据帧序列号。

[0012] 根据本公开的可多路径传输数据的通讯设备, 其中所述路径决策单元在所述数 据帧的帧序列号已经被登记在用户交换机 ID表中的情况下将所述数据帧丢弃。

[0013] 根据本公开的另一方面, 提供了一种可多路径传输数据的数据通讯网络 系统, 包括三个或三个以上所述的可多路径传输数据 的通讯设备, 其中, 第一通讯设 备, 接收与其相连的源用户交换机发送来的数据帧 ; 以及第二通讯设备, 具有 两个或多个网络链接端口, 接收第一通讯设备直接过经由该系统中的其他 通讯 设备传输来的相同数据帧; 其中, 第二通讯设备的修改所接收的每个相同数据 帧的路由协议中所包含的路径信息; 第二通讯设备的学习单元用来学习接收所 述数据帧的一个或多个网络链接端口的端口号 、 所修改后的所述数据帧中的路 径信息以及所述数据帧的路由协议中所包含的 源用户交换机 ID, 并形成包含所 所学习到的信息的用户交换机 ID表, 从而在第二通讯设备的用户交换机 ID表中 针对所述源用户交换机的 ID相关联地记录多个相同数据帧的不同路径信 ; 以 及第二通讯设备的路径决策单元基于所述每个 相同数据帧的路由协议中所包含 的作为目的地用户交换机的 ID查询第一通讯设备的用户交换机 ID表, 并基于与 第二通讯设备的用户交换机 ID表中的目的地用户交换机的 ID相关联的路径信息 决定将具有该目的地用户交换机 ID的一个数据帧或多个相同数据帧中的一个数 据帧发送到与第二通讯设备的用户交换机 ID表中的目的地用户交换机 ID相关联 记录的一个或多个端口号对应的第二通讯设备 的一个或多个网络链接端口。

[0014] 根据本公开的另一方面, 提供了一种一种利用上述可多路径传输数据的 通讯设 备进行多路径数据通讯方法, 包括: 源用户交换机向与其相连第一通讯设备发 送数据帧; 第一通讯设备向第二通讯设备的两个或多个网 络链接端口传输相同 数据帧; 第二通讯设备的数据修改单元修改所接收的每 个相同数据帧的路由协 议中所包含的路径信息; 第二通讯设备的学习单元用来学习接收所述数 据帧的 一个或多个网络链接端口的端口号、 所修改后的所述数据帧中的路径信息以及 所述数据帧的路由协议中所包含的源用户交换 机 ID, 并形成包含所所学习到的 信息的用户交换机 ID表, 从而在第二通讯设备的用户交换机 ID表中针对所述源 用户交换机的 ID相关联地记录多个相同数据帧的不同路径信 ; 以及第二通讯 设备的路径决策单元基于所述每个相同数据帧 的路由协议中所包含的作为目的 地用户交换机的 ID查询第一通讯设备的用户交换机 ID表, 并基于与第二通讯设 备的用户交换机 ID表中的目的地用户交换机的 ID相关联的路径信息决定将具有 该目的地用户交换机 ID的一个数据帧或多个相同数据帧中的一个数 帧发送到 与第二通讯设备的用户交换机 ID表中的目的地用户交换机 ID相关联记录的一个 或多个端口号对应的第二通讯设备的一个或多 个网络链接端口。

[0015] 根据本公开的进行多路径数据通讯方法, 还包括: 在接收到广播数据帧时, 所 有被广播的通讯设备的学习单元基于学习结果 更新用户交换机 ID表中各个用户 交换机 ID所对应的路径信息和端口号。 在接收到广播数据帧时, 所有被广播的 交换机的学习单元基于学习结果更新用户交换 机 ID表中各个用户交换机 ID所对 应的路径信息和端口号。

发明的有益效果

有益效果

[0016] 在此处键入有益效果描述段落。

对附图的简要说明

附图说明

[0017] 此处的附图被并入说明书中并构成本说明书的 一部分, 示出了符合本公开的实 施例, 并与说明书一起用于解释本公开的原理。

[0018] 图 1所示为根据本发明的实施例的可多路径传输 据的通讯设备 100的原理示意 图。

[0019] 图 2所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第一实施例的 拓扑示意图。

[0020] 图 3所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第二实施例的 拓扑示意图。

[0021] 图 4所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第三实施例的 拓扑示意图。

[0022] 图 5所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第一实施例的 拓扑最短路径决策示意图。

[0023] 图 6所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第一实施例的 拓扑最短路径决策结果示意图。 实施该发明的最佳实施例

本发明的最佳实施方式

[0024] 这里将详细地对示例性实施例进行说明, 其示例表示在附图中。 下面的描述涉 及附图时, 除非另有表示, 不同附图中的相同数字表示相同或相似的要素 。 以 下示例性实施例中所描述的实施方式并不代表 与本公开相一致的所有实施方式 。 相反, 它们仅是与如所附权利要求书中所详述的、 本公开的一些方面相一致 的装置和方法的例子。

[0025] 在本公开使用的术语是仅仅出于描述特定实施 例的目的, 而非旨在限制本开。

在本公开和所附权利要求书中所使用的单数形 式的“一种”、 “所述”和“该”也旨在 包括多数形式, 除非上下文清楚地表示其他含义。 还应当理解, 本文中使用的 术语“和 /或”是指并包含一个或多个相关联的列出项 的任何或所有可能组合。

[0026] 应当理解, 尽管在本公开可能采用术语第一、 第二、 第三等来描述各种信息, 但这些信息不应限于这些术语。 这些术语仅用来将同一类型的信息彼此区分开 。 例如, 在不脱离本公开范围的情况下, 第一交换机也可以被称为第二交换机 , 反之亦然。 取决于语境, 如在此所使用的词语“如果”可以被解释成为 “在 ...时” 或“当 ...时”或“响应于确定”。

[0027] 为了使本领域技术人员更好地理解本公开, 下面结合附图和具体实施方式对本 公开作进一步详细说明。

[0028] 图 1所示为根据本发明的实施例的可多路径传输 据的通讯设备 100的原理示意 图。 如图 1所示, 可多路径传输数据的通讯设备 100 (为方便描述, 下面将本公 开的可多路径传输数据的通讯设备简称为“通 讯设备”) 包括作为多个网络链接端 口的多个网络连接通道 1、 2...... N (以下也称为“网络链接端口 1、 2...... N”) 。 尽管如图 1所示, 还显示了多个网络连接通道 1’、 2’ ...... N’, 这是为了形象解释 的需要, 并不是为了显示络链接端口需要成对出现。 可选择地, 网络连接端口 也可以成对出现, 但是在本公开中, 成对出现的网络端口将具有相同的端口编 号, 在逻辑上属于同一网络链接端口。 设置这种多个网络连接端口的目的是为 了实现通讯设备 100的数据多路径传输。 如图 1所示, 每个网络链接端口用于接 收来自相邻的前一个通讯设备 100传输来的数据帧, 并用于将不属于本地的数据 帧输出到相邻的后一个通讯设备 100。 需要指出的是, 如果从网络连接端口 1接 收到的数据帧, 则该数据帧在被转发到相邻的后一个通讯设备 100时, 将从不同 于该网络连接端口 1的网络链接端口 2、 3...或 N被输出到后一个通讯设备 100。

[0029] 如图 1所示, 通讯设备 100包括路径决策组件 110。 所述路径决策组件 110包含有 数据修改单元 111、 学习单元 112以及路径决策单元 113。

[0030] 当数据帧经由网络链接端口 1、 2、 3...或 N之一被传输到通讯设备 100时, 所述 数据修改单元 111修改所接收的数据帧的路由协议中所包含的 路径信息。 适用于 本公开的通讯设备 100的数据帧的路由协议中可包含有如下表 1中的路径信息字 段, 例如跳数信息:

[0031] 表 1

[0032] 如表 1所示, 数据帧除了包含跳数信息外, 还包含数据帧的目的地用户交换机 I D、 源用户交换机 ID以及基于源用户交换机的帧序列号以及数据 容和其他路由 协议。 具体而言, 源用户交换机 ID是数据帧传输过程中所经历的第一个通讯设 备 100上所连接的源用户交换机的 ID, 而跳数信息是数据帧在传输过程中所经过 的通讯设备的数量。 举例而言, 如果数据帧从作为与源用户交换机相连的通讯 设备 100 (以下简称为“源通讯设备 100”) 的第一通讯设备 100出发, 其目的地通 讯设备 100为第四通讯设备 100, 数据帧会依次经过第一通讯设备 100、 第二通讯 设备 100、 第三通讯设备 100并到达第四通讯设备 100。 因此, 在数据帧进入第一 通讯设备 100时, 其数据修改单元 111将该数据帧的路由协议中的“跳数信息”字 段 修改为 1跳。 在数据帧进入第二通讯设备 100时, 第二通讯设备 100的数据修改单 元 111将该数据帧的路由协议中的“跳数信息”字 段修改为 2跳。 以此类推, 逐渐增 加, 因此当数据帧最终到达第四通讯设备 100时, 第四通讯设备 100的据修改单 元 111将该数据帧的路由协议中的“跳数信息”字 段修改为 4跳。

[0033] 尽管表 1显示的路由协议字段采用了表 1所示的排列方式, 但是在实际应用过程 中, 可以根据实际需要调整排列顺序, 例如, 将目的地用户交换机 ID和源用户 交换机 ID位置调换, 或者将路由信息设置在头部, 或者将其他路由协议布置在 头部等等。

[0034] 在每个通讯设备 100接收到数据帧时, 通讯设备 100的学习单元 112会获取接收 到该数据帧的端口信息, 即网络链接端口的端口编号。 每个通讯设备 100都会对 自己的网络链接端口进行编号, 以便确切获知接收数据帧的端口号。 学习单元 1 12同时会从数据帧的路由协议中学习到该数据 的“源用户交换机 ID”, 也就是获 知该数据帧是通过哪个源用户交换机发送到网 络上来的。 同时, 学习单元 112还 会学习到该修改后的数据帧中学习到该数据帧 的“跳数信息”, 从而获取该数据帧 从源通讯设备 100开始到达本地通讯设备 100, 经过了多少通讯设备 100, 从而获 知其跳数路径信息。 学习单元 112学习到上述信息后, 会将所学习到的信息存储 在本地通讯设备 100的用户交换机 ID表中。 所述用户交换机 ID表中基于所学习到 的源用户交换机 ID进行数据分类存储。 在同一源用户交换机 ID下, 会存在具有 本地端口号、 多条作为路径信息的跳数信息。 表 2给出了一个用户交换机 ID表的 例子:

[0035] 表 2

[0036] 如表 2所示, 一个源用户交换机 ID的地址索引对应一个源用户交换机。 基于用 户交换机 ID地址索引可以获得用户交换机 ID 在拓扑网络建立之时, 由于相互 之间进行数据广播, 初始建立的用户交换机 ID表中, 同一个源用户交换机 ID可 能在查找表中会对应有多个端口号。 通常而言, 如果一个通讯设备 100有 N个端 口号, 那么, 在通讯设备 100的用户交换机 ID表中, 任意一个源用户交换机 ID会 对应 N个端口号, 每个端口号通常会对应一个跳数信息, 但是也有的端口没有对 应跳数信息的情况(这将在后面解释)。 举例而言, 在初始状态下建立拓扑网络, 由于源用户交换机与目的地用户交换机之间存 在多条网络传输路径, 多个相同 广播数据帧会从源通讯设备 100的不同端口经过这些不同传输路径会最终到 与目 的地用户交换机相连的通讯设备 100 (以下简称“目的地通讯设备 100”) 的不同网 络链接端口或者到达中间通讯设备的不同网络 连接端口。 因此, 目的地通讯设 备 100或中间通讯设备 100在接收到相同的广播数据帧时, 学习单元 112会对同一 广播数据帧会学习到不同的网络连接端口号。 需要指出的是, 如果该发出的数 据帧为广播数据帧或组播数据帧, 该数据帧所添加的路由协议字段中的目的地 的用户交换机 ID采用常规方式处理为全 F。 当然, 也可以采用其他标识来表示目 的地可多路径传输数据的用户交换机 ID以表明该数据帧为广播帧。 尽管上述路 由协议添加在数据帧的头部, 但是路由协议的长度和添加位置可以根据应用 任 意设置。

[0037] 同样, 对于非广播数据帧, 也就是常规的具有目的地用户交换机 ID的数据帧, 源通讯设备 100会基于路径信息选择一条或多条最优的路径 对数据帧进行发送, 也就是会通过与一条最优路径相关的端口或与 多条最优路径相关的多个端口进 行发送数据帧。 目的地通讯设备 100或中间通讯设备 100在从不同的最优路径接 收到相同的非广播数据帧时, 学习单元 112会对多个相同的非广播数据帧学习到 不同的网络连接端口号。

[0038] 因此, 目的地通讯设备 100或中间通讯设备 100在接收到相同的数据帧时, 由于 相同的数据帧到达目的地通讯设备 100或中间通讯设备 100所经历的跳数不同, 因此学习单元 112会针对相同的被修改过的数据帧 (尽管此处认为这些数据帧为“ 相同”, 但是其实际上存在不同之处在于其“路径信息 ”由于数据经过的交换机数 量不同而会存在不同。 此处所述的“相同”, 仅仅表示该数据帧的原始数据内容相 同, 主要是源用户交换机 ID、 目的地用户交换机 ID、 数据帧序列号以及具体数 据内容相同) 学习到各个相同数据帧的路由协议 (例如表 1) 中包含的路径信息 , 例如跳数信息, 会存在不同。

[0039] 表 2中的“已登记帧序列号”表示与与源交换机 ID关联数据帧的序列号 (以下简 称为“帧序列号”) 。 尽管在表 2中的交换机 ID表的查找表中显示了“已登记帧序列 号”, 但是“已登记帧序列号”可以不包含在上述交 换机 ID表的查找表中, 其可以 与源交换机 ID关联地单独存储并针对重复接收到的数据帧 行单独丢弃处理。 不过为了描述简便以及实际记录方便, 通常采用将“已登记帧序列号”信息也设置 在查找表中。 但是为了缩小查找表的容量, 也尽量将“已登记帧序列号”信息单独 设置, 以便尽可能提高交换机 ID表的查收速度, 用户可以基于自身需要进行折 中选择。 下面为了描述简便, 在交换机 ID表中都将包含“已登记帧序列号”, 但是 同样并不表示交换机 ID表必须包含“已登记帧序列号”。 尤其需要指出的是, “已 登记帧序列号”仅仅与“已登记帧序列号”相 关联, 与端口号和路径信息没有直接 关系, 其记录也不与端口号和路径信息之一或两者相 关联。 [0040] 在上述表 2中, 用户交换机 ID地址索引、 端口号、 路径信息以及帧序列号, 彼 此之间并一定是一对一的关系。 但是需要指出的是, 目的地通讯设备 100或中间 通讯设备 100的一个端口仅仅能够接收到从源通讯设备 100发送来并且最快到达 该端口的数据帧, 因此, 学习单元 112只能学习到的到达该端口的数据帧的路径 信息。 尽管在表 2中看起来彼此之间是一对一的关系, 但这是为了简略表示。 实 际上会存在多种对应情况, 例如, 针对一个端口, 对同一个数据帧, 只能学习 到一个跳数信息。 对多个相同的数据帧, 在不同的端口, 学习单元 112可以学习 到相同的跳数信息或不同的跳数信息。 而对于同一个源用户交换机 ID所发出不 同数据帧 (具有不同的帧序列号) , 由于其发出时间不同, 可能存在网络拓扑 结构出现变化的情况, 因此, 在某个中间通讯设备或目的地通讯设备 100的同一 端口处, 会存在学习单元 112学习到不同跳数信息的情况。 总而言之, 对于接收 数据帧的通讯设备 100而言, 其用户交换机 ID表中, 对于源自同一源用户交换机 的相同的数据帧, 学习单元 112针对一个端口只能学习到一个路径信息。 而源自 同一通讯设备 100的多个相同的数据帧, 学习单元 112针对不同端口, 可能学习 到的路径信息相同, 也可能学习到不同的路径信息。 因此对于不同端口, 学习 单元 112针对相同数据帧所学习到的路径信息取决于 相同的数据帧在到达各自端 口时实际经过的通讯设备 100的数量。 下面的表 3-1就给出了实际记录情况与表 2 不一样的用户交换机 ID表。

[0041] 表 3-1

[]

[0042] 如上所述, 表 3-1右侧查找表中的“已登记帧序列号”与“端 口号”和“路径信息 ( 跳数信息) ”不相关联, 其不影响本公开的路径决策。 因此可以将“已登记帧序列 号”分离出来单独与交换机 ID相关联记载。 并且, 每个用户交换机 ID只关联一个 数据帧序列号, 并在通讯设备 100运行过程中, 只要有来自同一用户交换机 ID的 新的数据帧, 就不断更新该数据帧序列号。 即不断用新的数据帧序列号信息覆 盖前一个数据帧序列号信息。 为此, 将“已登记帧序列号”单独列于查找表之外, 以显示其与端口和路径信息无关并且可持续更 新如表 3-2所示。

[0043] 表 3-2

[]

[0044] 如表 3-2所示, 帧序列号仅仅与用户交换机 ID相关联。 同时可以看出, 在查找 表内增加了“老化信息”, 记录交换机 ID有多长时间没有接收到新的数据帧或者通 讯设备 100的某个端口多长时间没有接收到数据帧。 当老化信息显示的时间长度 达到预定时长时, 例如一个月、 两个月、 三个月等等, 这意味着该用户交换机 可能已经从工业网络上断开很久, 因此, 通讯设备 100中的更新单元 (未示出) 会直接将所述用户交换机 ID以及与之相关的信息删除, 从而避免通讯设备的用 户交换机 ID表被无效占用。 同样, 当某个端口老化信息显示的时间长度达到预 定时长时, 例如一个月、 两个月、 三个月等等, 这意味着该端口的网络链接可 能已经断开很久, 因此, 通讯设备 100中的更新单元 (未示出) 会直接将所述端 口以及与之相关的信息删除, 从而避免通讯设备的用户交换机 ID表被无效占用

[0045] 可选择地, 用户交换机 ID表还会实时更新路径信息。 表 3-3显示了与表 3-2的不 同。

[0046] 表 3-3

[]

[0047] 与表 3-2中用户交换机 ID的地址索引的 ID1所对应的端口 1和 2的跳数信息为跳数 信息 1以及端口 3的跳数信息为跳数信息 3不同, 表 3-3中用户交换机 ID的地址索引 的 ID1所对应的端口 1和 2的跳数信息为跳数信息 1, 而端口 3的跳数信息为跳数信 息 1, 这是网络拓扑变化导致端口 3的跳数信息也变成了跳数信息 1, 因此, 端口 3也会被列为最优路径。

[0048] 在上面的表 3-1、 表 3-2以及表 3-3中, 对于索引 ID1所代表的用户交换机 ID, 其 对应于本地通讯设备的三个端口号, 有相同或不同的路径信息, 例如端口号 1和 2对应的跳数信息相同, 而与端口号 3的跳数信息不同。 通常情况下, 对于本地 通讯设备的同一端口接收到的同一源用户交换 机 ID来的不同数据帧而言, 学习 单元 112所学习到的跳数信息是相同的。 例如表 3- 1中的索弓 | 2所代表的用户交换 机 ID, 当跳数信息 4对于作为目的地通讯设备 100而言是最优路径时, 对所接收 到的具有相同源用户交换机 ID和目的地用户交换机 ID的帧序列号 5 (在表 3-1中未 示出, 因为其已经被帧序列号 6所覆盖) 和帧序列号 6的不同数据帧, 学习单元 1 12针所学习到的跳数信息是相同的。 但是当拓扑网络中新增加了索引 2的源用户 交换机到目的地用户交换机之间的中间通讯设 备而改变彼此之间的拓扑关系时 , 该端口 3针对该索引 2的跳数信息可能会发生变化, 因此, 学习单元 112通过重 新学习到的更优的跳数信息来更新该端口 3针对索引 2所代表的用户交换机 ID的 跳数信息, 如表 3-2所显示的。 [0049] 可选择地, 数据帧的路由协议中的路径信息可以是数据帧 从源通讯设备 100到 达中间通讯设备 100或目的地交换机的累计时间。 表 4是根据本公开的第二种实 施方式的数据帧路由协议结构。

[0050] 表 4

[0051] 表 4与表 1不同的是, 数据帧的路由协议的路径信息字段部分的不是 跳数信息, 而是传输时间, 即数据帧从与源通讯设备 100到达中间通讯设备 100或目的地交 换机的累计时间。 表 4的其他字段部分都与表 1的其他字段部分相同, 因此相同 的部分的解释省略。

[0052] 具体而言, 传输时间是数据帧在传输过程中所经过的时间 。 举例而言, 如果数 据帧从作为源通讯设备 100的第一通讯设备 100出发, 其目的地通讯设备 100为第 四通讯设备 100, 数据帧会依次经过第一通讯设备 100、 第二通讯设备 100、 第三 通讯设备 100并到达第四通讯设备 100。 因此, 在数据帧进入第一通讯设备 100时 , 其数据修改单元 111将该数据帧的路由协议中的“传输时间”字 段修改为时间 tl 。 在数据帧进入第二通讯设备 100时, 第二通讯设备 100的数据修改单元 111将该 数据帧的路由协议中的“传输时间”字段修改 为 t2。 以此类推, 逐渐增加, 因此当 数据帧最终到达第四通讯设备 100时, 第四通讯设备 100的据修改单元 111将该数 据帧的路由协议中的“传输时间”字段修改为 t4。

[0053] 尽管表 4显示的路由协议字段采用了表 1所示的排列方式, 但是在实际应用过程 中, 可以根据实际需要调整排列顺序, 例如, 将目的地用户交换机 ID和源用户 交换机 ID位置调换, 或者将传输时间设置在头部, 或者将其他路由协议布置在 头部等等。

[0054] 同样, 在每个通讯设备 100接收到数据帧时, 通讯设备 100的学习单元 112会学 习到该数据帧的端口编号、 该数据帧的“源用户交换机 ID”以及该修改后的数据帧 中“传输时间 t”。 学习单元 112通过学习“传输时间 t”而获取该数据帧从源通讯设备 100开始到达本地通讯设备 100所经过的时间, 从而获知其时间路径信息。 类似 地, 学习单元 112学习到上述信息后, 会将所学习到的信息存储在本地通讯设备 100的用户交换机 ID表中。 所述用户交换机 ID表中基于所学习到的源用户交换机 I D进行数据分类存储。 在同一源用户交换机 ID下, 会存在本地端口号、 多条作为 路径信息的传输时间 t。 表 5给出了一个用户交换机 ID表的例子:

[0056] 表 5与表 2不同之处在于路径信息为传输时间 t。 与表 2相同的部分的解释将省略 。 不同之处在于, 在表 5中的用户交换机 ID表中, 针对每个源用户交换机 ID, 本 地通讯设备 100的每个端口号会对应一个传输时间 t。 这些传输时间 t可能不同, 可能相同。 通常而言, 这些传输时间 t是不同的, 因为经过不同路径传输, 必然 在传输时间上存在客观上的差异。 目的地通讯设备 100或中间通讯设备 100在接 收到相同的数据帧时, 由于多个相同的数据帧到达目的地通讯设备 100或中间通 讯设备 100所经历的时间不同, 因此学习单元 112会针对相同的被修改过的数据 帧学习到各个相同数据帧的路由协议 (例如表 4) 中包含的路径信息, 例如传输 时间 t, 会存在不同。 因此, 在上述表 5中, 用户交换机 ID地址索引、 端口号、 路 径信息以及帧序列号, 彼此之间并不是一对一的关系。 但是需要指出的是, 目 的地通讯设备 100或中间通讯设备 100的一个端□仅仅能够接收到从源通讯设备 1 00发送来并且最快到达该端口的数据帧, 因此, 学习单元 112只能学习到的到达 该端口的数据帧的路径信息。 同样, 尽管在表 5中看起来彼此之间是一对一的关 系, 但这是为了简略表示。 实际上会存在多种对应情况, 例如, 针对一个端口 , 对同一个数据帧, 只能学习到一个传输时间 t。 对多个相同的数据帧, 在不同 的端口, 学习单元 112可以学习到相同的传输时间域不同的传输时 间 t。 而对于 同一个源用户交换机 ID所发出不同数据帧, 由于其发出时间不同, 可能存在网 络拓扑结构出现变化的情况, 因此, 在某个中间通讯设备或目的地通讯设备 100 的同一端口处, 会存在学习单元 112学习到不同传输时间 t的情况。 总而言之, 对 于接收数据的交换机而言, 在其用户交换机 ID表中, 对于源自同一通讯设备 100 的相同的数据帧, 学习单元 112针对一个端口只能学习到一个路径信息, 而源自 同一通讯设备 100的多个相同数据帧, 学习单元 112针对不同端口, 可能学习到 相同的传输时间 t, 也可能学习到不同的传输时间 t。 因此对于不同端口, 学习单 元 112针对相同数据帧所学习到的路径信息取决于 相同的数据帧在到达各自端口 时实际经过传输时间 t。 表 6就给出了实际记录情况与表 5不一样的用户交换机 ID 表:

[0057] 表 6

[0058] 如上表 6 , 对于索引 1所代表的用户交换机 ID, 其对应于本地通讯设备的三个端 口号, 有相同或不同的路径信息, 例如端口号 1和 2对应的传输时间 tl相同, 而与 端口号 3的传输时间 t 2不同。 尽管在表 6中显示通常情况下端口号 1和 2对应的传输 时间 tl相同, 但是在实际应用中, 对于来自端口号 1和 2的两个相同数据帧所经历 的传输时间 t不可能完全相同, 必然存在一定差别。 为此, 本公开可以对传输时 间 t设置精确计数范围、 相对误差范围或最优路径个数。 因此, 本公开可以将从 而将位于同一计数范围内的传输时间 t记录为同一级别的路径信息。 举例而言, 设置精确计数范围 At, 那么在 AtxN到 Atx(N+l)之间的传输时间 t会被认为同一 级别传输时间。 将一个单位时间 At内作为第一级别路径信息, 将两个单位时间 △t内的作为第二级别路径信息, 以此类推。 可选择地本公开可以将相对误差范 围内的传输时间 t记录为同一级别。 例如, 设置相对误差范围 At, 那么以最短传 输时间 t min 为基准, 在 t _到1 min +At之间的传输时间 t会被认为同一级别传输时间 。 将一个误差范围 At内的作为第一级别路径信息, 将两个误差范围 At内的作为 第二级别路径信息, 以此类推。 可选择地, 本公开可以直接设置最优路径个数 N , 那么将传输时间 t最短的前 N条路径为最优路径。

[0059] 对于本地通讯设备的同一端口接收到的同一源 用户交换机 ID来的不同数据帧而 言, 学习单元 112所学习到的传输时间 t是相同的。 例如表 6中的索引 2所代表的用 户交换机 ID, 当传输时间 t3对于作为目的地通讯设备 100而言是最优路径时, 对 所接收到的具有相同源用户交换机 ID和目的地用户交换机 ID的帧序列号 5 (在表 6中未示出, 因为其已经被帧序列号 6所覆盖) 和帧序列号 6的不同数据帧, 学习 单元 112针所学习到的传输时间 t3是相同的。 但是当拓扑网络中新增加索引 2的源 用户交换机到目的地用户交换机之间的中间通 讯设备而改变彼此之间的拓扑关 系时, 该端口 3针对该索引 2的传输时间 t可能会发生变化, 因此, 学习单元 112通 过重新学习到的更优的传输时间来更新该端口 3针对索引 2所代表的用户交换机 I D的传输时间。 需要指出的是, 在网络系统使用过程中, 即使拓扑结构没有变化 , 同一路径的传输时间 t也可能会变化, 因此同一通讯设备 100中的用户交换机 ID 表内的同一源用户交换机 ID下的同一端口的路径信息中的传输时间会根 实际 情况发生变化, 从而基于每帧数据帧被更新。 因此, 用户交换机 ID表同一条数 据下传输时间 t是随着网络的使用而动态更新的。

[0060] 可选择地, 数据帧的路由协议中的路径信息可以是数据帧 从源通讯设备 100到 达中间通讯设备 100或目的地通讯设备 100的跳数信息和累计时间。 表 7是根据本 公开的第三种实施方式的数据帧路由协议结构 。

[0061] 表 7

[]

[0062] 表 7 与表 i和 4的不同是, 数据帧的路由协议字段部分的路径信息字段同 时包括 跳数信息和传输时间, 即数据帧从从源通讯设备 100到达中间通讯设备 100或目 的地交换机的跳数信息和累计时间。 表 7的其他字段部分都与表 1和 4的其他字段 部分相同, 因此相同的部分的解释省略。 [0063] 尽管表 7显示的路由协议字段采用了表 1所示的排列方式, 但是在实际应用过程 中, 可以根据实际需要调整排列顺序, 例如, 将目的地用户交换机 ID和源用户 交换机 ID位置调换, 或者将跳数信息和传输时间设置在头部, 或者将跳数信息 和传输时间分开设置在不相邻位置, 或者将其他路由协议布置在头部等等。

[0064] 如表 7所示, 数据帧的路由协议字段部分除了具有包括跳数 信息和传输时间的 路径信息字段外, 还包含数据帧的目的地用户交换机 ID、 源用户交换机 ID以及 基于源交换机的帧序列号以及数据内容和其他 路由协议。 如上所述, 跳数信息 是数据帧在传输过程中所经过的通讯设备的数 量, 而传输时间是数据帧在传输 过程中所经过的时间。 具体到数据修改单元 111对这两个路径信息的修改, 可参 见针对表 1和表 4的描述。 同样, 在每个通讯设备 100接收到数据帧时, 通讯设备 1 0 0的学习单元 112会学习接收到该数据帧的端口信息以及从数 据帧的路由协议 中学习到该数据帧的“源用户交换机 ID”。 同时, 学习单元 112还会学习到该修改 后的数据帧中学习到该数据帧的“跳数信息” 以及“传输时间 t”。 学习单元 112学习 到上述信息后, 会将所学习到的信息存储在本地通讯设备 100的用户交换机 ID表 中。 所述用户交换机 ID表中基于所学习到的源用户交换机 ID进行数据分类存储 。 在同一源用户交换机 ID下, 会存在多个本地端口号、 多条作为路径信息的跳 数信息和传输时间 t。 表 8给出了一个用户交换机 ID表的例子:

[0065] 表 8

[]

[0066] 表 8和表 2与 5不同之处在于路径信息为包含了跳数信息和 输时间。 与表 2和 5 相同的部分的解释将省略。 不同之处在于, 在表 8中的用户交换机 ID表中, 针对 每个源用户交换机 ID, 本地通讯设备 100的每个端口号会对应一组跳数信息和传 输时间 t。 对于多个相同的数据帧, 不同端口所对应的一组跳数信息和传输时间 t 可能不同, 可能相同。 目的地通讯设备 100或中间通讯设备 100的一个端口仅仅 能够接收到从源通讯设备 100发送来并且最快到达该端口的完整有效数据 帧, 因 此, 学习单元 112只能学习到的到达该端口的数据帧的路径信 息。 同样, 尽管在 表 8中看起来彼此之间是一对一的关系, 但这是为了简略表示。 实际上会存在多 种对应情况, 例如, 针对一个端口, 对同一个数据帧, 只能学习到一个路径信 息。 对多个相同的数据帧, 在不同的端口, 学习单元 112可以学习到相同的路径 信息或不同的路径信息。 而对于同一个源用户交换机 ID所发出不同数据帧, 由 于其发出时间不同, 可能存在网络拓扑结构出现变化的情况, 因此, 在某个中 间通讯设备或目的地通讯设备 100的同一端口处, 会存在学习单元 112学习到不 同路径信息的情况。 总而言之, 对于接收数据的交换机而言, 在其用户交换机 I D表中, 对于源自同一通讯设备 100的相同的数据帧, 学习单元 112针对一个端口 只能学习到一个路径信息, 而源自同一通讯设备 100的多个相同数据帧, 学习单 元 112针对不同端口, 可能学习到相同的路径信息, 也可能学习到不同的路径信 息。 因此对于不同端口, 学习单元 112针对相同数据帧所学习到的路径信息取决 于相同的数据帧在到达各自端口时实际经过路 径信息。 表 9就给出了实际记录情 况与表 8不一样的用户交换机 ID表:

[0067] 表 9

[0068] 如上表 9 , 对于索引 1所代表的用户交换机 ID, 其对应于本地通讯设备的四个端 口号, 有相同或不同的路径信息, 例如端口号 1和 2对应的跳数信息 1和传输时间 t i相同, 而与端口号 3的跳数信息 3和传输时间 t2构成的路径信息都不同, 同时端 口号 4的跳数信息 3不同但是传输时间 tl相同。 对于本地通讯设备的同一端口接收 到的同一源用户交换机 ID来的不同数据帧而言, 学习单元 112所学习到的跳数信 息和传输时间 t是相同的。 例如表 9中的索引 2所代表的用户交换机 ID, 当跳数信 息 4和传输时间 t3对于作为目的地通讯设备 100而言是最优路径时, 对所接收到的 具有相同源用户交换机 ID和目的地用户交换机 ID的帧序列号 5 (在表 9中未示出 , 因为其已经被帧序列号 6所覆盖) 和帧序列号 6的不同数据帧, 学习单元 112针 对不同数据帧所学习到的跳数信息 4和传输时间 t3组合的路径信息是相同的。 但 是当拓扑网络中新增加索弓 12的源用户交换机到目的地用户交换机之间的 间通 讯设备而改变彼此之间的拓扑关系时, 该端口 3针对该索引 2的传输时间 t可能会 发生变化, 因此, 学习单元 112通过重新学习到的更优的跳数信息和传输时 间来 更新该端口 3针对索引 2所代表的用户交换机 ID的传输时间。 需要指出的是, 在 网络系统使用过程中, 即使拓扑结构没有变化, 同一路径的传输时间 t也可能会 变化, 因此同一通讯设备 100中的用户交换机 ID表内的同一源用户交换机 ID下的 同一端口的路径信息中的传输时间会根据实际 情况发生变化, 从而基于每帧数 据帧被更新。 因此, 用户交换机 ID表同一条数据下传输时间 t是随着网络的使用 而动态更新的。

[0069] 返回图 1, 路径决策组件 110的路径决策单元 113在本地通讯设备 100从自身的网 络连接端口 1、 2、 3...... N之一接收到符合本公开的网络协议的数据帧 , 通过 学习单元 112所学习到的数据帧的路由协议中所包含的目 的地用户交换机 ID, 查 询本地通讯设备 100的用户交换机 ID表, 获取针对该目的地用户交换机 ID所对应 的路径信息和端口号数据条目。 在本地通讯设备 100的用户交换机 ID表中, 会存 在多个端口号下对应多个路径信息的数据条目 , 因此, 路径决策单元 113的路径 决策单元 (未示出) 从多个路径信息中选择最优的一条路径信息或 多条最优的 路径信息, 即从用户交换机 ID表中的与所述数据帧的路由协议中的目的地 户 交换机 ID相关联的多个路径信息中选择具有最小有效 扑面积 (LETA) 的路径 信息。 而路径决策单元 113的数据帧路由单元 (未示出) 将所接收到的数据帧路 由到这条路径信息或多条路径信息所对应的网 络链路端口, 从而将该数据帧经 由一个或多个端口多路径地转发到其目的地通 讯设备 100方向, 即基于路径信息 选择单元所选择的路径信息将其路由协议中包 含的目的地用户交换机 ID不为本 地用户交换机 ID的所述数据帧路由到与目的地用户交换机 ID相关联的一个或多 个网络链接端口。

[0070] 具体而言, 对于上述表 1中路由协议的数据帧, 路径决策单元 113的路径决策单 元选择跳数最小的路径信息所对应的一个或多 个网络连接端口, 而路径决策单 元 113的数据帧路由单元转发数据帧。 当该数据帧的目的地用户交换机 ID有多个 网络连接端口对应的跳数信息为最小跳数, 则向该多个网络连接端口发送该数 据帧, 实现多路径数据发送。 而对于表 3-1、 3-2、 3-3中的路由协议的数据帧, 路径决策单元 113选择传输时间最短的路径信息所对应的一个 或多个网络连接端 口转发数据帧。 当该数据帧的目的地用户交换机 ID有多个网络连接端口对应的 传输时间为最短, 则向该多个网络连接端口发送该数据帧, 实现多路径数据发 送。 同样, 对于表 5中的路由协议的数据帧, 路径决策单元 113首先选择传输时 间最短的路径信息, 然后再在传输时间最短的路径信息中选择跳数 最小的路径 信息, 最后从与传输时间最短并且跳数最小的路径信 息所对应的网络连接端口 发送该数据帧, 当与传输时间最短并且跳数最小的路径信息所 对应的网络连接 端口有多个时, 实现多路径数据传输。 类似地, 对于表 5中的路由协议的数据帧 , 路径决策单元 113首先选择传跳数最小的路径信息, 然后再在跳数最小的路径 信息中选择传输时间最短的路径信息, 最后从与跳数最小并且传输时间最短的 路径信息所对应的网络连接端口发送该数据帧 , 当与跳数最小并且传输时间最 短的路径信息所对应的网络连接端口有多个时 , 实现多路径数据传输。

[0071] 图 2所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第一实施例的 拓扑示意图。 如图 2所示,图标“馨” 代表可多路径传输数据的通讯设备 100, 其中共有 12个, 每个图标的附近采用编 号 1-12分别标识。 下面在描述时, 对图 2所示的通讯设备都标识为“100 -编号”的 形式, 例如, 编号为 2的通讯设备, 其标识为“通讯设备 100-2”。 根据图 2所示, 通讯设备 100-2显示有六个端口, 其中五个连接到整个拓扑网络。 因此, 在通讯 设备 100-2的用户交换机 ID表中, 针对目的地通讯设备 100-8的 ID, 将可能记载多 达五个路径信息, 因为, 在初始建立拓扑网络连接的情况下, 与任何通讯设备 1 00相连的用户交换机 (例如图 2中的设备 A) 的广播数据帧都会通过泛洪方式进 入到通讯设备 100-2的五个网络连接端口。 其它通讯设备 100也是一样的。 因此对 来自通讯设备 100-8的广播数据帧, 通讯设备 100-2的学习单元 112将会从五个端 口分别学习多达五个路径信息 (通常会小于五个或小于网络连接端口的数量 )

, 因此, 针对与目的地通讯设备 100-8相连的目的地用户交换机的 ID, 通讯设备 1 00-2的用户交换机 ID表能够记载多达五个路径信息。 其他通讯设备 100也是如此 , 例如编号为 6和 7的通讯设备 100-6和 100-7的针对任何用户交换机的 ID会记载多 达 8个端口的 8个路径信息。

[0072] 因此, 如图 2所示, 当用户交换机 (例如图 2中的设备 A) 向通讯设备 100-2发送 目的地为连接到通讯设备 100-8的目的地用户交换机 (例如图 2中的设备 B) 的数 据帧后, 通讯设备 100-2查询其本地用户交换机 ID表, 获取用户交换机 ID表中的 连接到目的地通讯设备 100-8的目的地用户交换机 ID, 并获得该目的地通讯设备 1 00-8的目的地用户交换机 ID在该用户交换机 ID表中对应的通讯设备 100-2处的端 口信息以及到目的地通讯设备 100-8的目的地用户交换机 ID的路径信息。 随后通 讯设备 100-2处的路径决策单元 113从这五个端口对应的五个路径信息中选择一 条 或多条最优的路径信息将数据帧发送到目的地 通讯设备 100-8的目的地用户交换 机 ID, 从而实现多路径数据通讯。

[0073] 如图 2所示, 设备 A和设备 B为用户交换机, 阴影部分的外边轮廓线条即为设备 A和 B之间第 2号通讯设备 100和 8号通讯设备 100之间的最短传输路径。 如上表 1所 示, 在路径信息为跳数信息的情况下, 从源通讯设备 100-2到目的地通讯设备 100 -8之间的最小跳数为 3跳, 即 2 7 8以及 2 3 8。 该在通讯设备 100-2的用户交 换机 ID表中记录的最短跳数信息实际上是在目的地 讯设备 100-8作为源通讯设 备向通讯设备 100-2发送数据帧时, 通讯设备 100-2的学习单元 112所学习到的最 短路径信息, 该最短路径实际传输过程与通讯设备 100-2向通讯设备 100-8发送数 据帧是的路径相反, 即 8 7 2以及 8 3 2。 由于这个路径形成了两者之间的最 短路径, 因此, 如图 2所示, 本公开将通讯设备 100-2和 100-8之间阴影区域称为 最小有效拓扑面积 (LETA) 。 因此, 为了降低数据在网络上通过各个端口随意 发送, 本公开的通讯设备仅仅通过选择最优路径发送 数据到目的地, 由此提高 了网络路径的利用有效性, 同时既能够提高数据通讯的冗余又避免了数据 在网 络上泛洪的情况。

[0074] 因此, 可多路径数据传输的通讯设备 100之间的最短传输路径信息, 是指每一 台可多路径传输的通讯设备 100学习到本通讯设备 100与源通讯设备 100的所有传 输路径, 并根据数据帧中的传输路径信息, 选择出最短传输路径, 当有数据帧 的目的地为该源用户交换机时, 将数据帧从最短传输路径发出, 这样, 可多路 径数据传输的通讯设备 100便共同决策出两台可多路径数据传输的通讯 设备 100 间的最短传输路径, 从而建立了最小有效拓扑面积。 当拓扑不发生改变时, 基 于最短传输路径所建立的最小有效拓扑面积是 唯一且固定的。 当拓扑发生改变 时, 会重新学习并选择最短传输路径。 例如, 当在图 2所示的拓扑中, 出现通讯 设备 100-2和 100-8之间的直接端口连接时, 两者之间会彼此重新学习彼此之间的 路径, 从而形成新的路径信息或最短路径信息。

[0075] 图 3所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第二实施例的 拓扑示意图。 如图 3所示, 与图 2 所示一样, 图标“馨”代表可多路径传输数据的通讯设备 100, 其中共有 12个, 每 个图标的附近采用编号 1-12分别标识。 下面在描述时, 与针对图 2所描述的相同 的内容将被省略。

[0076] 因此, 如图 3所示, 当用户交换机 (例如图 2中的设备 A) 向通讯设备 100-2发送 目的地为连接到通讯设备 100-8的目的地用户交换机 (例如图 2中的设备 B) 的数 据帧后, 通讯设备 100-2查询其本地用户交换机 ID表, 获取用户交换机 ID表中的 连接到目的地通讯设备 100-8的目的地用户交换机 ID, 并获得该目的地通讯设备 1 00-8的目的地用户交换机 ID在该用户交换机 ID表中对应的通讯设备 100-2处的端 口信息以及到目的地通讯设备 100-8的目的地用户交换机 ID的路径信息。 随后通 讯设备 100-2处的路径决策单元 113从这五个端口对应的五个路径信息中选择一 条 或多条最优的路径信息将数据帧发送到目的地 通讯设备 100-8的目的地用户交换 机 ID, 从而实现多路径数据通讯。 [0077] 如图 3所示, 设备 A和设备 B为用户交换机, 阴影部分的外边轮廓线条即为设备 A和 B之间第 2号通讯设备 100和 8号通讯设备 100之间的最佳传输路径。 如上表 4所 示, 在路径信息为传输时间的情况下, 从通讯设备 100-2到目的地通讯设备 100-8 之间的最短时间 t min , 即 2 741148以及243 448。 反之也是如此。 由于这个 路径形成了两者之间的最短传输时间路径, 因此, 如图 3所示, 我们将通讯设备 100-2和 100-8之间阴影区域 (例如路径 2 7 11 8与路径 2 3 4 8包围的区域 ) 称为最小有效拓扑面积 (LETA) 。 这种表达方式并不意味着, 在这个阴影区 域之内只有两条最短传输时间路径而不包含其 他最短传输时间路径。 可选择地 , 例如, 如果路径 2 7 8和 /或 2 3 8所花的传输时间与路径 2 7 11 8的传 输时间一样, 那么, 路径 2 7 8和 /或 2 3 8的传输时间也是最短传输时间路 径信息, 两者仅仅是端口不同而已。

[0078] 可选择地, 当数据帧的路由协议为表 7所示的情况, 路径信息包含跳数信息和 传输时间 t 时, 在图 3所示的情况下, 举例而言, 在通讯设备 100-8的用户交换机 I D表中记载的从源通讯设备 100-2到通讯设备 100-8的路径信息可能包含四条具有 相同传输时间 t的路径信息, 例如 2 7 11 8、 2 3 4 8、 2 7 8以及 2 3 8, 其分别对应通讯设备 100-8的四个端口。 这四个传输时间对应的跳数分别为 4 、 4、 3以及 3。 通讯设备 100-8的路径决策单元 113会基于最短传输时间 t和最小跳 数信息来确定从通讯设备 100-8到通讯设备 100-2的传输路径。 因此, 在这种情况 下, 通讯设备 100-8的路径决策单元 113会形成包含路径 2 7 8和 2 3 8的最小 有效拓扑面积 (LETA) 即如图 2中阴影面积所示的最小有效拓扑面积 (LETA ) , 从而沿着路径 2 7 8和 2 3 8向通讯设备 100-2发送数据帧。

[0079] 可选择的一种情况是, 当不存在最短传输时间 t和最小跳数信息同时满足时, 通讯设备 100的路径决策单元 113将基于最短传输时间 t的路径信息来形成有效拓 扑面积 (LETA) , 从而基于有效拓扑面积 (LETA) 来确定多路径发送数据。

[0080] 可选择地, 当不存在最短传输时间 t和最小跳数信息同时满足时, 也可以对每 个路径信息中的传输时间 t和跳数信息赋予一个权重值, 并基于该权重值, 计算 该路径信息的得分, 从而利用得分高的前两位、 前三位或前四位的路径信息形 成有效拓扑面积 (LETA) , 由此, 通讯设备 100的路径决策单元 113基于所获得 有效拓扑面积 (LETA) 来确定多路径以发送数据。 针对某一用户交换机 ID的某 一路径信息中的传输时间 t权重值的赋予方式根据针对该用户交换机 ID的该路径 信息中的传输时间 t与针对该用户交换机 ID的最短时间 t min 之间的差值确定。 同样 , 针对某一用户交换机 ID的某一路径信息中的跳数信息的权重值的赋 方式根 据针对该用户交换机 ID的该路径信息中的跳数信息的与针对该用户 换机 ID的 最小跳数信息的之间的差值确定。 差值越小, 赋予的权重值越大。 如果传输时 间 t为最小, 则赋予权重值 1。 同样, 如果跳数信息最小, 则赋予权重值 1。

[0081] 举例而言, 基于最短传输路径和最少传输时间选择最优路 径, 可以对每个路径 信息中的传输时间 t和跳数信息赋予一个权重值, 利用权重算法来判断最优路径 。 对传输时间 t赋予权重值, 可以基于本公开对传输时间 t设置的精确计数范围或 相对误差范围, 或最优路径个数。 例如对传输时间 t设置了精确计数范围 At, 当 传输时间 t在 AtxN到 Atx(N+ 1 )范围内时, 权重值即为 1/(N+ 1 ) 当对传输时间 t设 置了相对误差范围 At时, 当传输时间 t在 t min

+AtxN范围内时, 权重值即为 1/(N+1)。 当对传输时间设置了最优路径个数时, 最少传输时间权重为 1/1, 次少传输时间权重值为 1/2, 以此类推。 对跳数信息赋 予权重值, 可以将跳数信息作为权重值, 也可以以最少跳数的倒数为基准 (权 重值为 1/1) 依次加 1取倒数 (1/2, 1/3... ) 。

[0082] 例如, 当传输时间 t设置的精确计数范围、 相对误差范围或绝对值属于第二等 级, 则赋予其值为 2, 其权重值为 1/2, 而跳数信息为 3 , 则其权重值为 1/3。 其路 径信息评分则为:

[0083] 权重得分= (2xl/2+3xl/3) / (2+3) =2/5

[0084] 这样一个通讯设备对同一交换机 ID的所有路径信息计算权重得分, 将最大权重 得分的路径选择为最优路径, 从而决策最优路径。

[0085] 可选择地, 当设置了传输时间和跳数信息的权重比 A:B后, 可利用权重值和权 重比得到加权值, 例如 Ax传输时间权重值 +Bx跳数信息权重值, 选择几条加权 值最大的路径为最优路径, 从而决策最优路径。

[0086] 图 4所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径 传输数据的数据通讯网络系统的第三实施例的 拓扑示意图。 如图 4所示, 2 7 1 2 8和 2 3 8 , 在通讯设备 100-2到通讯设备 100-8的所有路径信息中, 其各自 传输时间 t和跳数信息可能都不是最小或最短, 但是其得分较高, 因此成为有效 的最优路径。

[0087] 如上参考图 4所述, 通讯设备 100的路径决策单元 113基于最短传输路径和最少 传输时间共同决策最优路径。 每一台可用于多路径数据传输的通讯设备的学 习 单元 112学习到目的地用户交换机与源用户交换机的 所有传输路径, 并根据数据 帧中的传输路径信息和传输时间信息, 选择出源交换机与本交换机的最优传输 路径。 这样, 多台可用于多路径数据传输的通讯设备便共同 决策出两台通讯设 备间的最优传输路径, 从而建立了最小有效拓扑面积。 当有数据帧的目的地为 该源用户交换机时, 将数据帧从这些路径发出。 如上所述, 基于最短传输路径 和最少传输时间的实现, 并不一定是最短路径, 也不一定是最少传输时间路径 , 而是根据赋予权重计算加权得分等仲裁机制选 择出相应的最优路径。 同样, 如参照图 2和图 3所述, 基于最短传输路径和最少传输时间所建立的最 小有效拓 扑面积不是唯一的, 当拓扑发生改变或路径上的传输时间关系发生 改变时, 会 实时地改变最优传输路径, 进而更新了最小有效拓扑面积。

[0088] 图 2-4尽管现实了三种拓扑结构, 但是其同样显示了一种可多路径传输数据的 数据通讯网络系统 200。 如上所述, 该系统包含了 12个通讯设备 100, 按照顺序 编号为 1-12, 相应地依次被称为通讯设备 100-1、 100-2......100-12。 尽管此处仅 仅显示了 12个通讯设备 100, 但是实际上可以根据需要进行无限量拓扑连接 , 例 如 100、 200、 1000以至于几百万个。

[0089] 下面参照图 2来解释可多路径传输数据的数据通讯网络系 200上数据通讯过程 。 如图 2所示, 在初始状态下, 所有连接到用户交换机的通讯设备 100进行广播 并泛洪广播数据帧。 以通讯设备 100-2和通讯设备 100-8之间的通讯为例, 可多路 径传输数据的数据通讯网络系统 200中的第二通讯设备 100-8的两个或多个网络链 接端口接收源自第一通讯设备 100-2经由多个通讯设备 100-3、 100-7、 100-8、 100 -11等传输来的相同广播数据帧。

[0090] 如图 2所示, 通讯设备 100-2的 5个网络链接端口按照图中从水平方向左侧网 链接端口开始顺时针方向分别编号为端口 1、 端口 2、 端口 3、 端口 4以及端口 5 ( 不包含设备连接端口) 。 通讯设备 100-7的 8个网络链接端口按照图中从水平方向 左侧网络链接端口开始顺时针方向分别编号为 端口 1、 端口 2、 端口 3、 端口 4、 端口 5、 端口 6、 端口 7以及端口 8。 通讯设备 100-7的 8个网络链接端口按照图中从 水平方向左侧网络链接端口开始顺时针方向分 别编号为端口 1、 端口 2、 端口 3、 端口 4以及端口 5 (不包含设备连接端口) 。 其他通讯设备 100的端口也类似编号

[0091] 在拓扑建立时, 当广播数据帧经由通讯设备 100-2进行泛洪时, 其经由 5个端口 发出数据, 并最终经由通讯设备 100-8的 5个端口进入通讯设备 100-8。 在不考虑 传输带宽等客观情况以及数据丢失的情况下, 跳数越少, 传输时间越短。 那么 通讯设备 100-7的 8个端口接收广播帧的路径和端口如表 10:

[0092] 表 10

[0093] 但是实际上, 中间通讯设备 100-7的 8个端口不会每个都收到通过泛洪收到的来 自通讯设备 100-2的广播数据帧, 因为, 通常, 中间通讯设备 100-7的有些端口, 例如其端口 8 , 通常比较早接收到通讯设备 100-2的广播数据帧, 这样中间通讯设 备 100-7的路径决策单元 113会立即将最早接收到的通讯设备 100-2的有效广播数 据帧发送到其没有接收到广播帧的端口, 例如其端口 5 , 并迅速传输到下一个通 讯设备 100, 例如通讯设备 100-8的端口 1。 此时, 通讯设备 100-8的端口 1所接收 到的广播帧可能是其各个端口中最早接收到广 播数据帧, 因此, 通讯设备 100-8 的路径决策单元 113会将所接收到的该广播数据帧立即发送到它 的其他端口以便 进行泛洪。 此时在泛洪的同时, 通讯设备 100-8的其他端口, 例如其端口 5可能紧 接着在端口 1之后接收到经由通讯设备 100-3转发来的广播数据帧, 但是, 由于通 讯设备 100-8已经之前接收从其端口 1来的广播数据帧, 因此, 通讯设备 100-8不 会再转发后面接收到的相同的广播数据帧, 而是会丢弃之后接收到的相同的广 播数据帧。 由此, 通讯设备 100-7的端口 5在这种情况下不会接收到从通讯设备 10 0-2来的广播数据帧, 因此通讯设备 100-7的学习单元 112不会学习到通讯设备 100 -2的广播数据帧的路径信息, 从而上表中的与路径“2 3 8 7”相对应的路径信 息“通讯设备 100-2、 本地端口 5、 跳数 4”将不会出现在通讯设备 100-7的用户交换 机 ID表中。 因此, 当通讯设备 100-7从其某一端口转发的广播数据帧最早到达 该端口相邻的通讯设备 100时, 则该相邻的通讯设备 100就不会向通讯设备 100-7 的该端口转发源自通讯设备 100-2的广播数据帧, 因为该相邻的通讯设备 100会基 于从通讯设备 100-7的该端口接收的广播数据帧而不是后收到 广播数据帧向该 相邻通讯设备 100的其他端口泛洪。 另外, 举例而言, 如果通讯设备 100-7从其某 一端口, 例如其端口 1, 转发的广播数据帧不是最早到达与该端口相邻 的通讯设 备 100 , 例如通讯设备 100-6时, 则该相邻的通讯设备 100-6的路径决策单元 113就 会将通过它的其他端口, 例如其端口 7 , 从通讯设备 100-2接收到的广播数据帧通 过其端口 5向通讯设备 100-7的该端口 1转发。 此时通讯设备 100-7会从端口 1接收 到源自通讯设备 100-2经由通讯设备 100-6发来的广播数据帧。 因此在这种情况下 , 通讯设备 100-7的学习单元 112会学习到该路径 2 6 7。 上述过程适用于泛洪 状态下的所有交换机。 因此, 在实际情况下, 作为代表通讯设备 100的通讯设备 100-7 , 其学习单元 112所学习得到的信息将可能如下表 11.

[0094] 表 11

[]

[0095] 在表 11中, 符号“x”表示通讯设备 100-7在对应的端口没有接收到经过这个路径 接收到数据帧。 而类似符号“4/x”表示通讯设备 100-7在对应的端口存在可能的两 种情况。 通讯设备 100的路径决策组件 110的所述路径决策单元 113在任何数据帧 (包括广播数据帧或常规含有目的地信息的数 据帧) 的帧序列号已经被登记在 用户交换机 ID表中的情况下会将随后接收到的数据帧丢弃 不进行转发。 换而 言之, 如果该端口向其所指向的另一个通讯设备转发 广播数据帧最早在到达其 所指向的该另一个通讯设备, 则该端口将不会接收到来自该另一个通讯设备 100 所转发的广播数据帧, 因此就不会学习到对应的路径信息, 因此对应这种情况 为“x”; 相反, 如果该端口向其所指向的另一个通讯设备转发 广播数据帧不是最 早在到达其所指向的该另一个通讯设备, 则该端口将会接收到来自该另一个通 讯设备 100所转发的广播数据帧, 因此就不会学习到对应的路径信息, 因此对应 这种情况为跳数“4”。 为此上述“跳数信息”采用“4/x”来表达两种 可能。 这种学习 单元 112可能学到的跳数信息将会随着实际情况而不 断变化, 从而在通讯设备 10 0的用户交换机 ID表的信息也在不断变化。

[0096] 上述拓扑结构建立的过程适用于每个通讯设备 100。 就图 2所示的情形而言, 在 网络链接线路带宽相同且不存在物理损害的情 况下, 任何接收广播数据帧的通 讯设备 100的端口都将经由与源通讯设备 100最小跳数的路径接收到该广播数据 帧。 因此通讯设备 100-8将最早经由最短路径 2 7 8以及 2 3 8接收到来自通 讯设备 100-2的广播帧 (当然, 也会经由其他路径接收到广播数据帧, 并学习到 对应其他端口的路径信息) , 这两个最短路径信息将记录在通讯设备 100-8的用 户交换机 ID表中, 并形成了有效拓扑面积 (LETA) 。

[0097] 在进入实际工况下的常规数据帧通讯过程时, 举例而言, 如图 2所示, 工业网 络 200包含 12个通讯设备 100。 作为数据帧的源通讯设备 100-2, 其一个端口连接 用户交换机 (例如用户设备 A, 可以是本申请人的公开号为 CN107395479A的中 国专利申请所披露的交换机) 。 源通讯设备 100-2的数据修改单元 111修改所接收 的数据帧的路由协议中所包含的路径信息, 例如跳数为第 1跳。 作为接收数据帧 的第二通讯设备 100-3、 100-7或 100-8的数据修改单元 111修改所接收的每个相同 数据帧的路由协议中所包含的路径信息, 例如跳数为第 2跳或第 3跳。 跳数修改 的过程可以基于数据帧的接收 /发送被触发, 当本地通讯设备接收到数据帧或发 送数据帧时, 触发一次跳数修改。 可选择地, 采用其他方式触发跳数修改。 第 二通讯设备的学习单元 112学习接收每个相同数据帧的网络链接端口的 端口号、 所修改后的每个相同数据帧中的多个路径信息 、 所述多个相同数据帧的数据协 议中包含的连接到第一通讯设备 100-2的源用户交换机的 ID以及与源用户交换机 的 ID相关联的数据帧的帧序列号, 并在第二通讯设备 100的用户交换机 ID表中针 对连接到第一通讯设备 100-2的源用户交换机的 ID相关联地记录多个相同数据帧 的不同路径信息。 尽管此处以广播数据帧作为例子来描述路径信 息的记录过程 , 但是利用常规的含有目的地用户交换机 ID的数据帧也同样可以建立路径信息 的记录过程。 当在第二通讯设备 100的用户交换机 ID表中初始建立了针对连接到 第一通讯设备 100-2的源用户交换机的 ID的路径信息后, 针对随后根据相同路径 来自第一通讯设备 100-2的数据帧, 第二通讯设备 100的用户交换机 ID表会更新其 中的数据帧序列号信息, 因此利用常规的含有目的地用户交换机 ID的数据帧也 同样可以建立路径信息的记录过程。 不同的是, 由于拓扑结构在初始广播数据 帧建立后, 交换机在数据传输过程中将基于决策优选机制 发送数据, 从而能够 阻止在正常工作运行期间的数据泛洪情形, 仅仅使得数据在优选路径上传输, 极大减小了网络传输的负荷。

[0098] 进一步, 例如第二通讯设备 100-8的路径决策单元 113基于所述每个相同数据帧 的路由协议中所包含的作为目的地用户交换机 的第三用户交换机的 ID (例如与 第三通讯设备 100-10相连的用户设备 (未示出) ) 查询第二通讯设备 100-8的用 户交换机 ID表, 并基于与第二通讯设备的用户交换机 ID表中的第三用户交换机 的 ID相关联的路径信息决定将目的地用户交换机 ID为第三用户交换机的 ID的一 个数据帧或多个相同数据帧中的一个数据帧发 送到与第二通讯设备 100-8的用户 交换机 ID表中的第三用户交换机的 ID相关联记录的一个或多个端口号 (例如端 口 1和 2) 对应的第二通讯设备的一个或多个网络链接端 口 (例如端口 1和 2) 。 举例而言, 第二通讯设备 100-8会将源自第一通讯设备 (例如通讯设备 100-4) 的 数据帧经过由第二通讯设备 100-8的端口 1和 2转发到第三通讯设备 100-10。

[0099] 如果第二通讯设备 100-8的路径决策单元 113基于所述每个相同数据帧的路由协 议中所包含的作为目的地用户交换机的第二用 户交换机的 ID (例如用户设备 B的 ID) 查询第二通讯设备 100-8的用户交换机 ID表, 确定目的地用户交换机 ID就是 与第二通讯设备 100-8相连的本地用户交换机的 ID, 则路径决策单元 113不再转发 该数据帧, 而是确定将数据帧路由到本地用户交换机所连 接的端口。

[0100] 针对图 3和 4的可多路径传输数据的数据通讯网络系统 200的运行方式与图 2所示 的网络系统 200—样, 不同之处在于, 其采用的路径信息的具体内容不同, 图 3 所使用的路径信息是传输时间, 图 4所使用的路径信息为跳数信息和传输时间。 尽管在此基于不同路径信息针对不同的网络系 统 200进行描述, 但是彼此可以替 换。 传输时间的修改的过程同样可以基于数据帧的 接收 /发送被触发, 当本地通 讯设备接收到数据帧或发送数据帧时, 触发一次传输时间 t修改并基于数据帧所 携带的最初发送时间信息和本地时间修改传输 时间。

[0101] 应用于图 3和 4的可多路径传输数据的数据通讯网络系统 200数据通讯方法为本 领域提供了新的多路径数据通讯方法。 图 5所示的是利用根据本公开的可多路径 传输数据的通讯设备构成的可多路径传输数据 的数据通讯网络系统的第一实施 例的拓扑最短路径决策示意图。 如图 5所示, 以基于最短传输路径的方法为例, 描述最优路径决策流程。 简而言之, 设备 A发起访问, 如上针对图 2所描述的, 此时网络中的可多路径传输数据的通讯设备 100不知道设备 B所在的拓扑位置, 因此将该数据帧泛洪, 所有可多路径传输数据的通讯设备便会记录通 讯设备 100 与设备 A之间的最短路径。 如图 5所示, 箭头线条即为可多路径传输数据的通讯 设备学习到的自身与设备 A的最短路径。 箭头指向设备 A到达本通讯设备 100的最 短路径方向, 而黑色直线条为未学习到的路径或者非最短路 径。 具体而言, 源 用户交换机, 例如设备 A, 向与其相连第一通讯设备 100-2发送数据帧。 第一通 讯设备 100-2向第二通讯设备 100-3、 100-7或 100-8的两个或多个网络链接端口传 输相同数据帧。 第二通讯设备 100-3、 100-7或 100-8的数据修改单元 111修改所接 收的每个相同数据帧的路由协议中所包含的路 径信息。 第二通讯设备 100-3、 100 -7或 100-8的学习单元 112用来学习接收所述数据帧的一个或多个网络 链接端口的 端口号、 所修改后的所述数据帧中的路径信息、 所述数据帧的路由协议中所包 含的源用户交换机 ID以及与源用户交换机 ID关联的数据帧序列号, 并形成包含 所所学习到的信息的用户交换机 ID表, 从而在第二通讯设备 100-3、 100-7或 100- 8的用户交换机 ID表中针对所述源用户交换机的 ID相关联地记录多个相同数据帧 的不同路径信息。 第二通讯设备 100-3、 100-7或 100-8的路径决策单元 113基于所 述每个相同数据帧的路由协议中所包含的作为 目的地用户交换机的 ID查询第一 通讯设备的用户交换机 ID表, 并基于与第二通讯设备 100-3、 100-7或 100-8的用 户交换机 ID表中的目的地用户交换机的 ID相关联的路径信息决定将具有该目的 地用户交换机 ID的一个数据帧或多个相同数据帧中的一个数 帧发送到与第二 通讯设备 100-3、 100-7或 100-8的用户交换机 ID表中的目的地用户交换机 ID相关 联记录的一个或多个端口号对应的第二通讯设 备 100-3、 100-7或 100-8的一个或 多个网络链接端口。 在接收到广播数据帧时, 所有被广播的通讯设备的学习单 元 112基于学习结果更新用户交换机 ID表中各个用户交换机 ID所对应的路径信息 和端口号。

[0102] 随后, 设备 B收到设备 A的访问请求后发起响应, 此时网络中的通讯设备已经 知道本通讯设备与设备 A的最短路径, 因此按照最短路径将数据帧发给设备 A。 图 6所示的是利用根据本公开的可多路径传输数 的通讯设备构成的可多路径传 输数据的数据通讯网络系统的第一实施例的拓 扑最短路径决策结果示意图。 如 图 6所示, 单向箭头线条即为可多路径传输数据的通讯设 备 100学习到的自身与 设备 A的最短路径, 箭头指向设备 A到达本通讯设备的最短路径方向。 双向箭头 线条即为可多路径传输数据的通讯设备仲裁出 的从 B到 A的最短传输路径, 箭头 指向设备 B发往设备 A的数据帧方向。

[0103] 经过上面两个步骤, 多路径传输交换机便建立了设备 A与设备 B之间图 2-4中的 阴影部分所示的最小有效拓扑面积。

[0104] 综上, 利用本公开的通讯装置、 包含该通讯设备网络及应用于其中的方法, 提 供了在不损失传输效率和带宽使用率的前提下 , 多路径数据传输, 以保障工业 现场的数据冗余性, 满足了当前的工业现场对控制数据的冗余性高 要求。 可选 择地, 所述的用户交换机是连接在本公开的通讯设备 的网络链接端口上用于通 过该网络链接端口向本公开的可多路径传输数 据的通讯设备 100所处的工业网络 上传输数据和下载数据的交换机。 本公开可采用专利公开号 CN107395479A所披 露的交换机。 因此, 本公开通过参引方式将公开号 CN107395479A所公开的内容 整体包含在本公开的说明书。 可选择地, 公开号 CN107395479A所披露的交换机 的结构可以整体集成在本公开的可多路径传输 数据的通讯设备 100中。

[0105] 还需要指出的是, 在本公开的装置和方法中, 显然, 各部件或各步骤是可以分 解和 /或重新组合的。 这些分解和 /或重新组合应视为本公开的等效方案。 并且, 执行上述系列处理的步骤可以自然地按照说明 的顺序按时间顺序执行, 但是并 不需要一定按照时间顺序执行。 某些步骤可以并行或彼此独立地执行。

[0106] 上述具体实施方式, 并不构成对本公开保护范围的限制。 本领域技术人员应该 明白的是, 取决于设计要求和其他因素, 可以发生各种各样的修改、 组合、 子 组合和替代。 任何在本公开的精神和原则之内所作的修改、 等同替换和改进等 , 均应包含在本公开保护范围之内。




 
Previous Patent: PATH PLANNING FOR ROBOT

Next Patent: DRY LAND SKIING BOARD