在多个环形拓扑间实现稳定通信的方法、系统及拓扑结构的制作方法

文档序号:7746097阅读:189来源:国知局
专利名称:在多个环形拓扑间实现稳定通信的方法、系统及拓扑结构的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种在多个环形拓扑之间实现稳定通信的方 法及系统。本发明还涉及一种采用该方法构建的复杂拓扑结构。
背景技术
随着以太网技术的迅速发展及其在商用领域的应用日渐广泛,越来越多的工业控 制设备也逐渐使用以太网并采用TCP/IP协议作为主要的通信标准。虽然应用于工业控制 领域的以太网标准与商用以太网相同,但在工业控制领域,还需要网络能在比较恶劣的工 作环境下稳定地工作。因此,用来连接工业设备的网络产品需要经过特别设计,才能提供工 业级的可靠性,以满足长期连续运行的需求。另外,在工业控制领域,所需连接的设备分布 较分散,单个地方连接设备少,因此需要实现光纤冗余环路功能。STP协议解决了冗余环路问题。但是它还是有缺点的,STP协议的缺陷主要表现在 收敛速度上。当拓扑发生变化,新的配置消息要经过一定的时延才能传播到整个网络,这个 时延称为Forward Delay,协议默认值是15秒。在所有网桥收到这个变化的消息之前,若旧 拓扑结构中处于转发的端口还没有发现自己应该在新的拓扑中停止转发,则可能存在临时 环路。为了解决临时环路的问题,生成树使用了一种定时器策略,即在端口从阻塞状态到转 发状态中间加上一个只学习MAC地址但不参与转发的中间状态,两次状态切换的时间长度 都是Forward Delay,这样就可以保证在拓扑变化的时候不会产生临时环路。但是,这个看 似良好的解决方案实际上带来的却是至少两倍ForwardDelay的收敛时间!申请号为“201010107799. 6”的中国发明专利申请文件提出了一种环形拓扑,可以 实现快速收敛,但是单个的环形拓扑结构比较简单,不能构建复杂拓扑,虽然RSTP能构建 复杂拓扑,但是收敛时间满足不了一些应用。因此,有必要提供一种方法,该方法既能实现 复杂拓扑也能满足快速收敛。

发明内容本发明要解决的技术问题在于,提供一种在多个环形拓扑之间实现稳定通信的方 法,该方法既能实现复杂拓扑也能满足快速收敛。本发明解决其技术问题所采用的技术方案是—种在多个环形拓扑之间实现稳定通信的方法,包括以下步骤步骤S1,建立双链路在两个需要通信的环形拓扑之间提供两条连接链路,其中 一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形拓扑中 的一个节点;步骤S2,备份式通信当所述主链路正常连接时,两个环形拓扑通过主链路传递 通信数据,此时备份链路被阻塞;当主链路断开连接时,备份链路被打开,两个环形拓扑通 过备份链路传递通信数据;当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次通 过主链路传递通信数据;当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主链路传递通信数据。作为优选方案,所述当主链路断开连接时,备份链路被打开,两个环形拓扑通过备 份链路传递通信数据的步骤具体为当主链路断开连接时,与所述主链路连接的两个节点分别通过各自的端口,在各 自所在的环形拓扑中发送通知消息GHR_FLAGS_Y0UW0RK,与备份链路连接的两个节点收到 该通知消息GHR_FLAGS_Y0UW0RK时,立即将各自与备份链路相连的端口设置为转发状态, 同时两个环形拓扑中曾参与转发该通知消息GHR_FLAGS_Y0UW0RK的节点刷新自身的MAC 表,从而备份链路被打开,两个环形拓扑通过备份链路传递通信数据。作为优选方案,所述当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次 通过主链路传递通信数据的步骤具体为当主链路恢复连接时,与所述主链路连接的两个节点分别通过各自的端口,在各 自所在的环形拓扑中发送通知消息GHR_FLAGS_MEWORK,与备份链路连接的两个节点收到 该GHR_FLAGS_MEWORK通知消息时,立即将各自与备份链路相连的端口设置为阻塞状态,同 时回应GHR_FLAGS_Y0UW0RK通知消息,与所述主链路连接的两个节点收到回应的通知消息 GHR_FLAGS_Y0UW0RK时,立即将各自与主链路相连的端口设置为转发状态,同时两个环形拓 扑中曾参与转发通知消息的节点刷新自身的MAC表,从而备份链路即被阻塞,两个环形拓 扑再次通过主链路传递通信数据。作为优选方案,所述当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主 链路传递通信数据的步骤具体为当备份链路断开连接时,与备份链路连接的两个节点分别通过各自的端口,在各 自所在的环形拓扑中发送通知消息GHR_FLAGS_Y0UW0RK,与所述主链路连接的两个节点收 到所述通知消息GHR_FLAGS_Y0UW0RK时,立即将各自与备份链路相连的端口设置为转发状 态,同时两个环形拓扑中曾参与转发所述通知消息GHR_FLAGS_Y0UW0RK的节点刷新自身的 MAC表,从而两个环形拓扑通过主链路传递通信数据;当备份链路恢复连接时,与备份链路连接的两个节点分别通过各自的端口,在各 自所在的环形拓扑中发送通知消息GHR_FLAGS_MEWORK,与主链路连接的两个节点收到该通 知消息GHR_FLAGS_MEWORK时,若主链路连接正常,则不回应通知消息,从而两个环形拓扑 仍通过主链路传递通信数据。作为优选方案,所述当备份链路恢复连接时,与备份链路连接的两个节点分别通 过各自的端口,在各自所在的环形拓扑中发送通知消息GHR_FLAGS_MEWORK,与主链路连接 的两个节点收到该通知消息GHR_FLAGS_MEWORK时的步骤之后还包括以下步骤若主链路处于断开状态,则回应通知消息GHR_FLAGS_Y0UW0RK,与备份链路连接的 两个节点收到回应的通知消息GHR_FLAGS_Y0UW0RK时,立即将各自与备份链路相连的端口 设置为转发状态,同时两个环形拓扑中曾参与转发通知消息的节点刷新自身的MAC表,从 而两个环形拓扑通过备份链路传递通信数据。作为优选方案,所述步骤S2,备份式通信还包括当主链路处于正常工作状态时,与主链路相连的节点以均勻时间间隔在各自所在 的环形拓扑中发送健康检测报文GHR_FLAGS_LINKHELLO,若与备份链路连接的节点收到该 健康检测报文,则将各自与备份链路相连的端口设置为阻塞状态;若与备份链路连接的设备节点在预先设置的时间内未能收到该健康检测报文,则将各自与备份链路相连的端口设 置为转发状态,于是备份链路被打开,两个环形拓扑通过备份链路传递通信数据。本发明还提供一种在多个环形拓扑之间实现稳定通信的系统,所述系统包括两条 链路、信息处理模块和设置模块所述两条链路分别连接两个环形拓扑,用于两个环形拓扑之间传递通信数据,其 中一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形拓扑 中的一个节点;所述信息处理模块设置于与所述两条链路相连的节点上,用于当链路断开连接或 者恢复连接时,通过所在节点的端口,在环形拓扑中发送或者回应通知消息;所述设置模块也设置于与所述两条链路相连的节点上,用于在收到所述信息处理 模块发出或者回应的通知消息时,将所在节点的与链路相连的端口设置为转发状态或者阻 塞状态。作为优选方案,所述信息处理模块发送或者回应的通知消息包括第一通知消息GHR_FLAGS_Y0UW0RK,收到该第一通知消息的节点即将自身的端口 设置为转发状态;第二通知消息GHR_FLAGS_MEWORK,当链路恢复连接时,与该链路相连的节点即发 送该第二通知消息;健康检测报文GHR_FLAGS_LINKHELLO,当主链路处于正常工作状态时,与主链路相 连的节点以均勻时间间隔在环形拓扑中发送该健康检测报文。本发明还提供一种可以实现快速收敛且通讯稳定的复杂拓扑结构,包括至少两个 环形拓扑,每个环形拓扑由至少三个节点和连接相邻节点的链路构成,所述的节点中有且 只有一个为主节点,其余为传输节点,所述环形拓扑中的每一个节点具有若干个与链路相 连的端口,所述端口具有转发和阻塞两种状态;所述复杂拓扑结构的特征在于,在两个需要通信的环形拓扑之间具有两条连接链 路,其中一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形 拓扑中的一个节点;当所述主链路正常连接时,两个环形拓扑通过主链路传递通信数据,此 时备份链路被阻塞;当主链路断开连接时,备份链路被打开,两个环形拓扑通过备份链路传 递通信数据;当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次通过主链路传递 通信数据;当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主链路传递通信数据。采用本发明提供在多个环形拓扑之间实现稳定通信的的方法,多个环形拓扑之间 可以实现稳定通信。当连接两个环形拓扑之间的主链路和备份链路中的一条链路断开连接 或者恢复连接时,可以实现链路的快速切换,整个拓扑结构可实现快速收敛,收敛时间仅需 要几毫秒。同时,采用本发明实施例提供的方法,环形拓扑和主备链路相结合,可以实现较 为复杂的拓扑结构。

下面将结合附图及实施例对本发明作进一步说明,附图中图1是连接两个环形拓扑的链路正常工作时的示意图;图2是图1中的主链路断开连接示意7
图3是图1中的主链路恢复连接示意图。
具体实施方式本发明实施例提供一种在多个环形拓扑之间实现稳定通信的方法。所述环形拓扑 由至少三个节点和连接相邻节点的链路构成,所述的节点中有且只有一个为主节点,其余 为传输节点。每一个环形拓扑在物理上对应一个环形连接的以太网拓扑,由整数表示的ID 来标识。所述环形拓扑中的一个节点实质上就是一台通信设备。所述环形拓扑中的每一个 节点具有若干个端口,该端口具有转发和阻塞两种状态。与节点相连的链路实际上是连接 该节点的端口。当一条链路两端连接的两个端口都处于转发状态时,该链路可用于通信进 行数据传递;当该链路两端的两个端口中的一个或两个处于阻塞状态时,该链路即被阻塞, 不能用于数据传递。所述环形拓扑中的主节点是环形拓扑上的主要决策和控制节点。每个环形拓扑中 必须有一个主节点,而且只能有一个。主节点是环网状态主动检测机制(即Polling机制) 的发起者,也是环形拓扑发生改变后执行操作的决策者。主节点周期性的从其主端口发送 健康检测报文(即HELLO报文),该报文依次经各传输节点在环形拓扑中传播。如果主节点 从其副端口能够收到自己发送的健康检测报文,说明环网链路完整;如果在预先设置的时 间内收不到健康检测报文,说明环网发生链路故障。所述环形拓扑上除主节点之外的其余节点都可以称为传输节点。一个正常的环形 拓扑上至少有两个或者以上传输节点。每一个环形拓扑由整数表示的ID来标识。传输节 点负责监测相连接链路的状态,并把链路变化通知主节点,然后由主节点来决策如何处理。本发明实施例提供的在多个环形拓扑之间实现稳定通信的方法,是通过在两个环 形拓扑之间提供两条链路实现的。所述的两条链路,其中一条为主链路,另一条为备份链 路。两条链路中,每一条链路的两端分别连接两个环形拓扑中的一个节点。正常工作时,两 个环形拓扑通过主链路传递通信数据,此时备份链路被阻塞。当主链路断开连接时,备份链 路被打开用于两个环形拓扑之间的通信数据传递。当主链路恢复连接时,备份链路即被阻 塞,重新采用主链路用于两个环形拓扑之间的通信数据传递。下面结合附图进行详细说明。图1是连接两个环形拓扑的链路正常工作时的示意图。图中,节点SW1、SW2、SW3、 SW4及依次连接各节点的链路构成第一环形拓扑,节点SW5、SW6、SW7、SW8及依次连接各节 点的链路构成第二环形拓扑。在第一环形拓扑中,SW2为主节点(master节点),其以均勻 时间间隔在第一环形拓扑中发送健康检测报文(即GHR_FLAGS_LINKHELLO);在第二环形拓 扑中,SW7为主节点,其同样以均勻时间间隔在第二环形拓扑中发送健康检测报文(即GHR_ FLAGS_LINKHELLO)。若发出健康检测报文的主节点收到自身发送的健康检测报文,说明环 形拓扑链路完整;若发出健康检测报文的主节点在预先设置的时间内不能收到自身发送的 健康检测报文,则认为环形拓扑链路发生故障。连接第一环形拓扑和第二环形拓扑的链路 有两条,其中连接节点SW4和SW5的链路为主链路,连接节点SW3和SW6的链路为备份链路。 第一环形拓扑和第二环形拓扑通过主链路进行通信数据传递。备份链路处于阻塞状态,阻 止通信数据传递。当主链路处于正常工作状态时,与主链路相连的设备节点以均勻时间间 隔在各自所在的环形拓扑中发送健康检测报文GHR_FLAGS_LINKHELLO。与备份链路连接的 设备节点收到该健康检测报文,则将自身与备份链路相连的端口设置为阻塞状态;若与备份链路连接的设备节点在预先设置的时间内未能收到该健康检测报文,则将自身与备份链 路相连的端口设置为转发状态,于是备份链路被打开用于两个环形拓扑之间的通信数据传 递。图2是主链路断开连接时的示意图。当主链路断开连接时,本发明实施例提供的 方法采用消息通知的方式实现链路的快速切换。如图所示,主链路断开时,与该主链路连 接的设备即节点SW4和SW5分别通过各自的端口,在各自所在的环形拓扑中发送通知消息 GHR_FLAGS_Y0UW0RK。与备份链路连接的设备即节点SW3和SW6收到该GHR_FLAGS_Y0UW0RK 通知消息时,立即将各自与备份链路相连的端口设置为转发状态,同时两个环形拓扑中曾 参与转发该GHR_FLAGS_Y0UW0RK通知消息的节点刷新自身的MAC表。于是,备份链路被打 开,可用于两个环形拓扑之间的通信数据传递。上述过程中,从主链路断开连接,切换到采 用备份链路进行通信数据传递,整个拓扑系统达到稳定状态,仅需要几毫秒而已。图3是主链路恢复连接时的示意图。如图所示,主链路恢复连接时,与主链路连 接的设备即节点SW4和SW5分别通过各自的端口,在各自的环形拓扑中发送通知消息GHR_ FLAGS_MEW0RK。与备份链路连接的设备即节点SW3和SW6收到该GHR_FLAGS_MEWORK通知消 息时,则立即将各自与备份链路相连的端口设置为阻塞状态,同时回应GHR_FLAGS_Y0UW0RK 通知消息。节点SW4和SW5收到回应的GHR_FLAGS_Y0UW0RK通知消息时,立即将各自与主 链路相连的端口设置为转发状态,同时两个环形拓扑中曾参与转发通知消息的节点刷新自 身的MAC表。于是,备份链路被阻塞,而主链路被打开用于两个环形拓扑之间的通信数据传 递。上述过程中,从主链路恢复连接,到阻塞备份链路,重新采用主链路进行通信数据传递, 整个拓扑系统达到稳定状态,仅需要几毫秒而已。在上述主链路恢复连接时,若备份链路已处于断开连接状态,则与备份链路连接 的节点SW3和SW6收到GHR_FLAGS_MEWORK通知消息时,直接回应GHR_FLAGS_Y0UW0RK,节 点SW4和SW5收到回应的GHR_FLAGS_Y0UW0RK通知消息时,立即将各自与主链路相连的端 口设置为转发状态,同时两个环形拓扑中曾参与转发通知消息的节点刷新自身的MAC表。与主链路断开连接时相似,当备份链路断开连接时,与备份链路连接的设备即 节点SW3和SW6分别通过各自的端口,在各自的环形拓扑中发送通知消息GHR_FLAGS_ Y0UW0RK。与该主链路连接的设备即节点SW4和SW5收到该GHR_FLAGS_Y0UW0RK通知消息 时,立即将各自与备份链路相连的端口设置为转发状态,同时两个环形拓扑中曾参与转发 该GHR_FLAGS_Y0UW0RK通知消息的节点刷新自身的MAC表。从而实现链路的快速切换。与主链路恢复连接时相似,当备份链路恢复连接时,与备份链路连接的设备即节 点SW3和SW6分别通过各自的端口,在各自的环形拓扑中发送通知消息GHR_FLAGS_MEWORK。 与主链路连接的设备即节点SW4和SW5收到该GHR_FLAGS_MEWORK通知消息时,若主链路连 接正常,则不回应;若主链路处于断开状态,则回应GHR_FLAGS_Y0UW0RK通知消息。节点SW3 和SW6收到回应的GHR_FLAGS_Y0UW0RK通知消息时,立即将各自与备份链路相连的端口设 置为转发状态,同时两个环形拓扑中曾参与转发通知消息的节点刷新自身的MAC表。从而 实现链路的快速切换。需要说明的是,一个环形拓扑可以同时连接多对主备链路,每对主备链路使用链 路ID区分标识。例如,在存在三个环形拓扑的情况下,第一环形拓扑和第二环形拓扑之间 存在一对主备链路,第一环形拓扑和第三环形拓扑之间也存在一对主备链路。环形拓扑的局部改变不会影响主备链路的的正常运作。这样环形拓扑与主备链路相结合,可以实现较 为复杂的拓扑。在连接两个环形拓扑的链路正常工作以及一条链路断开连接或者恢复连接,整个 拓扑实现稳定的过程中,两个环形拓扑及相连的链路中传递的通知消息包括以下三种,下 面进行详细说明GHR_FLAGS_Y0UW0RK,该通知消息用于通知对方链路打开。当连接两个环形拓扑的 一条链路断开连接时,与该链路连接的两个节点即发送该通知消息。与另一条链路连接的 两个节点收到该消息时,立即将各自与所述另一条链路相连的端口设置为转发状态,于是 所述另一条链路被打开。GHR_FLAGS_MEWORK,该通知消息是链路恢复连接时发出的。当连接两个环形拓扑 的一条链路恢复连接时,与该链路连接的两个节点即发送该通知消息。若另一条链路为主 链路且处于转发状态,则与主链路连接的两个节点收到该消息时,不回应消息;若另一条链 路为备份链路且处于转发状态,则与备份链路连接的两个节点收到该消息时,立即将各自 与备份链路相连的端口设置为阻塞状态,同时回应GHR_FLAGS_Y0UW0RK通知消息;若另一 条链路为备份链路且处于断开状态,则与备份链路连接的两个节点收到该消息时,立即直 接回应GHR_FLAGS_Y0UW0RK通知消息。GHR_FLAGS_LINKHELLO,该报文用于链路之间的循环健康检测。当主链路处于正常 工作状态时,与主链路相连的设备节点以均勻时间间隔在环形拓扑中发送该报文。与备份 链路连接的设备节点收到该报文,则将自身与备份链路相连的端口设置为阻塞状态;若与 备份链路连接的设备节点在预先设置的时间内未能收到该报文,则将自身与备份链路相连 的端口设置为转发状态,于是备份链路被打开用于两个环形拓扑之间的通信数据传递。采用本发明实施例提供的方法,多个环形拓扑之间可以实现稳定通信。当连接两 个环形拓扑之间的主链路和备份链路中的一条链路断开连接或者恢复连接时,可以实现链 路的快速切换,整个拓扑结构可以实现收敛,达到稳定时间仅需要几毫秒。同时,采用本发 明实施例提供的方法,环形拓扑和主备链路相结合,可以实现较为复杂的拓扑结构。本发明还提供一种在多个环形拓扑之间实现稳定通信的系统,所述系统包括两条 链路、信息处理模块和设置模块所述两条链路分别连接两个环形拓扑,用于两个环形拓扑之间传递通信数据,其 中一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形拓扑 中的一个节点;所述信息处理模块设置于与所属两条链路相连的节点上,用于当链路断开连接或 者恢复连接时,通过所在节点的端口,在环形拓扑中发送或者回应通知消息;所述设置模块也设置于与所属两条链路相连的节点上,用于在收到所述信息处理 模块发出或者回应的通知消息时,将所在节点的与链路相连的端口设置为转发状态或者阻 塞状态。作为优选方案,所述信息处理模块发送或者回应的通知消息包括第一通知消息GHR_FLAGS_Y0UW0RK,收到该第一通知消息的节点即将自身的端口 设置为转发状态;第二通知消息GHR_FLAGS_MEWORK,当链路恢复连接时,与该链路相连的节点即发送该第二通知消息;健康检测报文GHR_FLAGS_LINKHELLO,当主链路处于正常工作状态时,与主链路相 连的节点以均勻时间间隔在环形拓扑中发送该健康检测报文。本发明还提供一种可以实现快速收敛且通讯稳定的复杂拓扑结构,包括至少两个 环形拓扑,每个环形拓扑由至少三个节点和连接相邻节点的链路构成,所述的节点中有且 只有一个为主节点,其余为传输节点,所述环形拓扑中的每一个节点具有若干个与链路相 连的端口,所述端口具有转发和阻塞两种状态;所述复杂拓扑结构的特征在于,在两个需要通信的环形拓扑之间具有两条连接链 路,其中一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形 拓扑中的一个节点;当所述主链路正常连接时,两个环形拓扑通过主链路传递通信数据,此 时备份链路被阻塞;当主链路断开连接时,备份链路被打开,两个环形拓扑通过备份链路传 递通信数据;当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次通过主链路传递 通信数据;当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主链路传递通信数据。以上所述仅为本发明的较佳实施例,并不用于限制本发明,凡在本发明精神和原 则内所做的修改、等同替换或者改进等,均应包含在本发明的保护范围之内。
权利要求
一种在多个环形拓扑之间实现稳定通信的方法,其特征在于,包括以下步骤步骤S1,建立双链路在两个需要通信的环形拓扑之间提供两条连接链路,其中一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形拓扑中的一个节点;步骤S2,备份式通信当所述主链路正常连接时,两个环形拓扑通过主链路传递通信数据,此时备份链路被阻塞;当主链路断开连接时,备份链路被打开,两个环形拓扑通过备份链路传递通信数据;当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次通过主链路传递通信数据;当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主链路传递通信数据。
2.根据权利要求1所述的在多个环形拓扑之间实现稳定通信的方法,其特征在于,所 述当主链路断开连接时,备份链路被打开,两个环形拓扑通过备份链路传递通信数据的步 骤具体为当主链路断开连接时,与所述主链路连接的两个节点分别通过各自的端口,在各自所 在的环形拓扑中发送通知消息GHR_FLAGS_YOUWORK,与备份链路连接的两个节点收到该通 知消息GHR_FLAGS_YOUWORK时,立即将各自与备份链路相连的端口设置为转发状态,同时 两个环形拓扑中曾参与转发该通知消息GHR_FLAGS_YOUWORK的节点刷新自身的MAC表,从 而备份链路被打开,两个环形拓扑通过备份链路传递通信数据。
3.根据权利要求1所述的在多个环形拓扑之间实现稳定通信的方法,其特征在于,所 述当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次通过主链路传递通信数据 的步骤具体为当主链路恢复连接时,与所述主链路连接的两个节点分别通过各自的端口,在各自 所在的环形拓扑中发送通知消息GHR_FLAGS_MEWORK,与备份链路连接的两个节点收到该 GHR_FLAGS_MEWORK通知消息时,立即将各自与备份链路相连的端口设置为阻塞状态,同时 回应GHR_FLAGS_YOUWORK通知消息,与所述主链路连接的两个节点收到回应的通知消息 GHR_FLAGS_YOUWORK时,立即将各自与主链路相连的端口设置为转发状态,同时两个环形拓 扑中曾参与转发通知消息的节点刷新自身的MAC表,从而备份链路即被阻塞,两个环形拓 扑再次通过主链路传递通信数据。
4.根据权利要求1所述的在多个环形拓扑之间实现稳定通信的方法,其特征在于,所 述当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主链路传递通信数据的步骤具 体为当备份链路断开连接时,与备份链路连接的两个节点分别通过各自的端口,在各自所 在的环形拓扑中发送通知消息GHR_FLAGS_YOUWORK,与所述主链路连接的两个节点收到所 述通知消息GHR_FLAGS_YOUWORK时,立即将各自与备份链路相连的端口设置为转发状态, 同时两个环形拓扑中曾参与转发所述通知消息GHR_FLAGS_YOUWORK的节点刷新自身的MAC 表,从而两个环形拓扑通过主链路传递通信数据;当备份链路恢复连接时,与备份链路连接的两个节点分别通过各自的端口,在各自所 在的环形拓扑中发送通知消息GHR_FLAGS_MEWORK,与主链路连接的两个节点收到该通知消 息GHR_FLAGS_MEWORK时,若主链路连接正常,则不回应通知消息,从而两个环形拓扑仍通 过主链路传递通信数据。
5.根据权利要求4所述的在多个环形拓扑之间实现稳定通信的方法,其特征在于,所 述当备份链路恢复连接时,与备份链路连接的两个节点分别通过各自的端口,在各自所在 的环形拓扑中发送通知消息GHR_FLAGS_MEWORK,与主链路连接的两个节点收到该通知消息 GHR_FLAGS_MEWORK时的步骤之后还包括以下步骤若主链路处于断开状态,则回应通知消息GHR_FLAGS_YOUWORK,与备份链路连接的两个 节点收到回应的通知消息GHR_FLAGS_YOUWORK时,立即将各自与备份链路相连的端口设置 为转发状态,同时两个环形拓扑中曾参与转发通知消息的节点刷新自身的MAC表,从而两 个环形拓扑通过备份链路传递通信数据。
6.根据权利要求1所述的在多个环形拓扑之间实现稳定通信的方法,其特征在于,所 述步骤S2,备份式通信还包括 当主链路处于正常工作状态时,与主链路相连的节点以均勻时间间隔在各自所在的环 形拓扑中发送健康检测报文GHR_FLAGS_LINKHELLO,若与备份链路连接的节点收到该健康 检测报文,则将各自与备份链路相连的端口设置为阻塞状态;若与备份链路连接的设备节 点在预先设置的时间内未能收到该健康检测报文,则将各自与备份链路相连的端口设置为 转发状态,于是备份链路被打开,两个环形拓扑通过备份链路传递通信数据。
7.一种在多个环形拓扑之间实现稳定通信的系统,其特征在于,所述系统包括两条链 路、信息处理模块和设置模块,所述两条链路分别连接两个环形拓扑,用于两个环形拓扑之间传递通信数据,其中一 条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形拓扑中的 一个节点;所述信息处理模块设置于与所述两条链路相连的节点上,用于当链路断开连接或者恢 复连接时,通过所在节点的端口,在环形拓扑中发送或者回应通知消息;所述设置模块也设置于与所述两条链路相连的节点上,用于在收到所述信息处理模块 发出或者回应的通知消息时,将所在节点的与链路相连的端口设置为转发状态或者阻塞状 态。
8.根据权利要求1所述的在多个环形拓扑之间实现稳定通信的系统,其特征在于,所 述信息处理模块发送或者回应的通知消息包括第一通知消息GHR_FLAGS_YOUWORK,收到该第一通知消息的节点即将自身的端口设置 为转发状态;第二通知消息GHR_FLAGS_MEWORK,当链路恢复连接时,与该链路相连的节点即发送该 第二通知消息;健康检测报文GHR_FLAGS_LINKHELLO,当主链路处于正常工作状态时,与主链路相连的 节点以均勻时间间隔在环形拓扑中发送该健康检测报文。
9.一种可以实现快速收敛且通讯稳定的复杂拓扑结构,包括至少两个环形拓扑,每个 环形拓扑由至少三个节点和连接相邻节点的链路构成,所述的节点中有且只有一个为主节 点,其余为传输节点,所述环形拓扑中的每一个节点具有若干个与链路相连的端口,所述端 口具有转发和阻塞两种状态;所述复杂拓扑结构的特征在于,在两个需要通信的环形拓扑之间具有两条连接链路, 其中一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形拓扑中的一个节点;当所述主链路正常连接时,两个环形拓扑通过主链路传递通信数据,此时 备份链路被阻塞;当主链路断开连接时,备份链路被打开,两个环形拓扑通过备份链路传递 通信数据;当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次通过主链路传递通 信数据;当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主链路传递通信数据。
全文摘要
本发明公开了一种在多个环形拓扑之间实现稳定通信的方法,包括以下步骤在两个需要通信的环形拓扑之间提供两条连接链路,其中一条链路为主链路,另一条链路为备份链路,每一条链路的两端分别连接两个环形拓扑中的一个节点;当所述主链路正常连接时,两个环形拓扑通过主链路传递通信数据,此时备份链路被阻塞;当主链路断开连接时,备份链路被打开,两个环形拓扑通过备份链路传递通信数据;当主链路恢复连接时,备份链路即被阻塞,两个环形拓扑再次通过主链路传递通信数据;当备份链路断开连接或恢复连接时,两个环形拓扑仍通过主链路传递通信数据。采用本发明提供的方法,多个环形拓扑之间可以实现稳定通信,可以构建快速收敛的复杂拓扑结构。
文档编号H04L12/437GK101848128SQ20101014694
公开日2010年9月29日 申请日期2010年4月8日 优先权日2010年4月8日
发明者晏平仲 申请人:深圳市金宏威实业发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1