1.本技术涉及通信技术,尤其涉及一种转发设备的控制方法、装置、设备及存储介质。
背景技术:2.软件定义网络(software defined network,简称sdn)是一种新型网络创新架构,它的理念在于将整个网络集中化管理,sdn将所有网络设备的决策能力(具体表现为流表)集中到网络控制设备上,使得网络设备被结构简单的转发设备替代,该转发设备只需要执行通信数据的转发即可。近几年,越来越多的开发人员关注当网络控制设备出现故障,或网络控制设备与所有转发设备的总线中断时如何保证网络控制设备生成的流表,以及所有转发设备的状态信息不丢失等问题。
3.现有技术中,网络控制设备生成所有转发设备的流表,下发至各转发设备,告知各转发设备如何进行通信数据的转发。同时,网络控制设备也会监测各转发设备及对应链路的状态信息。当网络控制设备出现故障,或网络控制设备与所有转发设备的总线中断时,需要对该网络控制设备和/或总线进行修复,或部署一个新的网络控制设备接管,和/或新的总线来连接所有转发设备。修复的网络控制设备或新的网络控制设备重新逐个获取所有转发设备的状态信息,并生成新的流表。
4.然而,修复期间或新的网络控制设备接管之前,如果有至少一个转发设备损坏或其对应链路中断,网络控制设备将无法获取该转发设备的状态信息;修复的网络控制设备或新的网络控制设备丢失了之前的所有流表及所有转发设备的状态信息,需要重新获取所有转发设备的状态信息及生成新的流表,时间消耗多,进而导致获取所有转发设备的状态信息及流表的效率较低。
技术实现要素:5.本技术提供一种转发设备的控制方法、装置、设备及存储介质,用以解决修复期间或新的网络控制设备接管之前,如果有至少一个转发设备损坏或其对应链路中断,网络控制设备将无法获取该转发设备的状态信息的问题;还解决修复的网络控制设备或新的网络控制设备丢失了之前的所有流表及所有转发设备的状态信息,需要重新获取所有转发设备的状态信息及生成新的流表,时间消耗多,进而导致获取所有转发设备的状态信息及流表的效率较低的问题。
6.第一方面,本技术提供一种转发设备的控制方法,所述方法应用于配合设备,所述配合设备为预设网络架构中的多个转发设备中的一个,所述预设网络架构还包括网络控制设备,包括:
7.从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息;
8.监测所述网络控制设备是否在正常运行;
9.若确定所述网络控制设备未在正常运行,则确定各转发设备及对应链路的后续状态信息;
10.若监测到网络控制设备恢复正常运行,则将所述流表及所述后续状态信息发送给所述网络控制设备。
11.在一种可行方式中,所述监测所述网络控制设备是否在正常运行,包括:
12.监测所述网络控制设备是否发生故障及监测所述网络控制设备与各转发设备之间的总线是否中断。
13.在一种可行方式中,所述监测所述网络控制设备是否在正常运行,包括:
14.向所述网络控制设备发送保活报文;
15.预设时间后判断是否接收到保活报文响应;
16.若确定接收到保活报文响应,则确定网络控制设备在正常运行;
17.若确定未接收到保活报文响应,则确定网络控制设备未在正常运行。
18.在一种可行方式中,所述确定各转发设备及对应链路的后续状态信息,包括:
19.向相邻的转发设备发送探测报文,以使所述相邻的转发设备获取探测报文经过的链路信息,将所述链路信息携带到所述探测报文中,并向与其连接的转发设备继续转发探测报文;
20.接收相邻的转发设备发送的镜像探测报文,所述镜像探测报文中包括所述镜像探测报文所经过的转发链路;
21.根据所述转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息。
22.在一种可行方式中,所述根据所述转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息,包括:
23.确定转发链路中是否包括对应的终点转发设备标识;
24.若确定转发链路中不包括对应的终点转发设备标识,则根据转发链路确定存在故障的转发设备或存在断开的链路,确定存在故障的转发设备或对应断开链路的后续状态信息为故障状态,确定不存在故障的转发设备及对应断开链路的后续状态信息为正常状态;
25.若确定转发链路中包括对应的终点转发设备标识,则确定转发链路中不存在故障的转发设备及断开的链路,并确定各转发设备及对应链路的后续状态信息为正常状态。
26.在一种可行方式中,监测网络控制设备是否恢复正常运行,包括:
27.周期性向所述网络控制设备发送保活报文;
28.每次发送保活报文后,在预设时间后判断是否接收到保活报文响应;
29.若确定接收到保活报文响应,则确定网络控制设备恢复正常运行;
30.若确定未接收到保活报文响应,则确定网络控制设备未恢复正常运行。
31.在一种可行方式中,若确定所述网络控制设备在正常运行,则所述方法还包括:
32.接收所述网络控制设备发送的流表更新指令,所述流表更新指令中包括至少一个转发设备对应的新流表;
33.根据新流表对对应的转发设备的流表进行更新。
34.第二方面,本技术提供一种转发设备的控制装置,所述装置位于配合设备,所述配合设备为预设网络架构中的多个转发设备中的一个,所述预设网络架构还包括网络控制设
备,所述装置包括:
35.获取模块,用于从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息;
36.监测模块,用于监测所述网络控制设备是否在正常运行;
37.确定模块,用于若确定所述网络控制设备未在正常运行,则确定各转发设备及对应链路的后续状态信息;
38.发送模块,用于若监测到网络控制设备恢复正常运行,则将所述流表及所述后续状态信息发送给所述网络控制设备。
39.第三方面,本技术提供一种配合设备,所述配合设备包括:处理器,以及与所述处理器通信连接的存储器和收发器;
40.所述存储器存储计算机执行指令;所述收发器,用于收发数据;
41.所述处理器执行所述存储器存储的计算机执行指令,以实现如上述第一方面或任意一种可行方式中所述的方法。
42.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上述第一方面或任意一种可行方式中所述的方法。
43.本技术提供的一种转发设备的控制方法、装置、设备及存储介质,该方法应用于配合设备,该配合设备为预设网络架构中的多个转发设备中的一个,预设网络架构还包括网络控制设备,该方法包括:从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息;监测网络控制设备是否在正常运行;若确定网络控制设备未在正常运行,则确定各转发设备及对应链路的后续状态信息;若监测到网络控制设备恢复正常运行,则将流表及后续状态信息发送给网络控制设备。本技术中,配合设备从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息并进行存储;接着配合设备监测网络控制设备是否正常运行;若网络控制设备未正常运行,配合设备则确定各转发设备及对应链路的后续状态信息,配合设备暂时执行网络控制设备中的监测转发设备的功能,并将后续状态信息进行存储;若配合设备监测网络控制设备恢复正常运行,配合设备就将自身存储的流表及后续状态信息发送给恢复工作的网络控制设备。本技术采用配合设备对各转发设备对应的流表、各转发设备及对应链路的初始状态信息进行存储,可以保证流表及初始状态信息不丢失;当网络控制设备未正常运行时,配合设备则收集及确定各转发设备及对应链路的后续状态信息,保证及时获取并存储各转发设备的后续状态信息,有利于对转发设备及对应链路的监测;当网络控制设备恢复正常运行时,配合设备则将流表及后续状态信息发送给网络控制设备,便于网络控制设备及时、快速获取各转发设备的流表及后续状态信息,不需要耗费大量时间重新逐个获取流表及后续状态信息,节约了时间,提高了获取所有转发设备的状态信息及流表的效率。
附图说明
44.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
45.图1为现有技术提供的一种网络架构图;
46.图2为本技术提供的一种转发设备的控制方法的网络系统架构图;
47.图3为本技术实施例一提供的一种转发设备的控制方法的流程示意图;
48.图4为本技术实施例三提供的一种转发设备的控制方法的流程示意图;
49.图5为本技术实施例四提供的一种转发设备的控制方法的流程示意图;
50.图6为本技术实施例五提供的一种转发设备的控制方法的流程示意图;
51.图7为本技术实施例七提供的一种转发设备的控制装置的示意图;
52.图8为本技术实施例八提供的一种配合设备的结构示意图。
53.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
54.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
55.首先对本技术所涉及的名词进行解释:
56.转发设备:是指通信数据在网络中传输时,两个通信单元设备无法直接连接传输通信数据,因此通信数据传输路径中需要部署中间设备进行中转,该中间设备即为转发设备。在实际大多数情况下,该转发设备可以看成是大型路由器,主要实现通信数据的转发功能。
57.网络控制设备:是指将所有网络设备的控制功能分离出来,并进行集中到一台设备上,该设备即为网络控制设备。网络控制设备具有决策能力,控制所有转发设备按照某种协商的协议进行通信数据的转发。
58.传统的网络架构是由许多网络设备、各个网络设备之间的链路以及其余相关设备组成,一个网络设备具有控制功能和通信数据转发功能。
59.直到近几年提出了一种新型网络架构,即软件定义网络(software defined network,简称sdn),它是网络虚拟化的一种实现方式。sdn的核心技术是将各网络设备的控制功能和通信数据转发功能分离,只保留通信数据转发功能在网络设备中,原来的网络设备变为结构简单的转发设备,该转发设备具备通信数据转发功能。而原来的各网络设备中的控制功能将全部集中到一个网络控制设备中,由网络控制设备对所有的转发设备进行控制,做出决策。具体表现在:网络控制设备生成所有转发设备的流表,并下发至各转发设备,各转发设备读取流表条目并以流表条目为依据进行通信数据的转发,该过程是网络控制设备做出通信数据转发的决策,由转发设备执行通信数据的转发。
60.图1为现有技术提供的一种网络架构图,如图1所示,网络控制设备连接一根总线,该总线包含可以连接多个线路的端口a,每个端口a中包含多个接口a,每个接口a可以连接多个线路端口b,每个端口b中包含多个接口b,每个接口b可以连接一个转发设备。
61.可选的,接口b也可以连接多个线路的端口c,以此类推,直到最后一个接口连接转发设备。其中,转发设备的个数可以达到上百个,甚至更多。
62.现有技术中,网络架构完成后,网络控制设备获取所有转发设备的状态信息,该状态信息包含转发设备是否故障、及该转发设备对应的链路是否断开,及该转发设备与哪些转发设备连接等。同时,网络控制设备可以根据获取到的转发设备状态信息和实际需求生成各转发设备的流表,流表个数与转发设备个数一致,每个转发设备对应一个流表,各自的流表条目会告知各自转发设备如何转发通信数据,做出通信数据转发的决策。网络控制设备生成流表之后,并下发至各自相应的转发设备,各个转发设备读取并存储流表,并按照流表的决策执行通信数据的转发。具体在于:各转发设备有至少一个与之相邻的转发设备,各转发设备的流表决定自身转发设备应该将通信数据转发至相邻的哪一个转发设备中,转发设备按照流表的决策进行通信数据的转发,转发至下一个相邻转发设备。当至少一个转发设备显现故障,或该转发设备对应的链路断开时,为了避免通信数据经过故障的转发设备,或断开的链路,网络控制设备对该转发设备相邻的转发设备的流表进行更新,以实现当上述不利情况发生时,通信数据绕开故障转发设备或断开的链路,最终实现通信数据的传输。
63.但是,现有技术中仍然存在一些缺陷。具体表现在:第一方面,当网络控制设备出现故障,或网络控制设备与各转发设备之间的总线断开时,则网络控制设备将不能做决策,网络控制设备与各转发设备之间处于孤立状态,即相互之间没有通信连接。网络控制设备中的流表及各转发设备的初始状态信息将会丢失或损坏;同时,网络控制设备也不能获取各转发设备及其对应链路的后续状态信息;第二方面,当有新的网络控制设备重新接管和/或总线连接,或旧的网络控制设备和/或总线已经修复,网络控制设备需要重新获取各转发设备及其对应链路的当前状态信息,根据当前状态信息重新生成流表,该过程繁杂,时间消耗多。
64.为了解决现有技术中网络控制设备中的流表及各转发设备的初始状态信息丢失或损坏,网络控制设备不能获取各转发设备及其对应链路的后续状态信息,和网络控制设备需要重新获取各转发设备及其对应链路的当前状态信息生成流表耗时等问题,本方案发明人经过创造性研究,设计一种新的方案。本方案应用于配合设备,该配合设备为预设网络架构中的多个转发设备中的一个,预设网络架构还包括网络控制设备。为了解决网络控制设备中的流表及各转发设备的初始状态信息丢失或损坏等问题,本方案具体表现在:配合设备从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息,并进行存储。为了解决当网络控制设备未正常运行时,网络控制设备不能获取各转发设备及其对应链路的后续状态信息等问题,由配合设备收集各转发设备后续状态信息,具体表现在:若确定网络控制设备未在正常运行,配合设备则确定各转发设备及对应链路的后续状态信息。为了解决当网络控制设备恢复正常运行时,网络控制设备重新获取各转发设备及其对应链路的当前状态信息生成流表耗时多,进而导致获取所有转发设备的状态信息及流表的效率较低等问题,本方案配合设备可以将自身存储的流表和各转发设备后续状态信息快速发送给网络控制设备,具体表现在:配合设备若监测到网络控制设备恢复正常运行,则将流表及后续状态信息发送给网络控制设备。
65.下面对本技术提供一种转发设备的控制方法、装置、设备及存储介质的网络系统架构进行介绍。
66.图2为本技术提供的一种转发设备的控制方法的网络系统架构图。如图2所示,该网络系统架构包括多个转发设备201,一个网络控制设备202,一个配合设备203。需要说明
的是,转发设备的个数可高达一百个,配合设备203是从多个转发设备201中预先设定。每个转发设备201与网络控制设备202之间都会通过总线及各自链路通信连接。转发设备201之间可以通信连接,各转发设备201之间是否通信连接,根据运营人员的需求来确定,此处不做限制。其中,通信连接方式可以是馈线连接,也可以是光纤连接。
67.其中,转发设备201中包含转发设备a、转发设备b、转发设备c、转发设备d及转发设备e。其中,转发设备a分别与转发设备b和转发设备c通信连接,转发设备b又与转发设备c和转发设备e通信连接,转发设备c又与转发设备d通信连接,转发设备d又与转发设备e和配合设备203通信连接,转发设备e又与配合设备203通信连接。
68.具体工作流程如下:该网络架构完成之后,网络控制设备202会获取所有转发设备201的初始状态信息,根据初始状态信息生成各转发设备201的流表,其中,状态信息包含了各转发设备201状态、转发设备201连接信息、转发设备201对应的链路信息等。在众多转发设备201中预先设定一个配合设备203,该配合设备203能够执行除了转发设备201的功能之外,还能执行网络控制设备的部分功能。网络控制设备203将各转发设备的流表、各转发设备及对应链路的初始状态信息发送至配合设备203,配合设备203接收各转发设备的流表、各转发设备及对应链路的初始状态信息并存储在自身的存储区域,进行备份。配合设备203定期向网络控制设备202发送保活报文,监测网络控制设备202是否正常运行。若配合设备203确定网络控制设备202未正常运行,则配合设备203向其相邻的所有转发设备201发送探测报文,主要目的是探测所有转发设备201及对应链路的后续状态信息,监测所有转发设备201是否出现故障,或其对应链路是否断开等信息。配合设备203收集所有转发设备201的后续状态信息,并将其存储在自身存储区域。可以理解的是,如果初始状态信息和后续状态信息有所变化,配合设备203会识别出是哪个/多个转发设备及对应链路的后续状态信息与初始信息有所变化,将该转发设备的初始状态信息替换成后续状态信息,并存储。
69.进一步的,配合设备203若监测到网络控制设备恢复正常运行,则将自身存储的流表及后续状态信息发送给网络控制设备202,网络控制设备202并进行存储,若后续状态信息较之前有所变化,网络控制设备202则根据后续状态信息生成相应的新流表,重新控制各转发设备按照新流表的决策进行通信数据的转发。其中,网络控制设备可以只对后续状态信息有变化的转发设备进行流表更新,可以不用对所有转发设备的流表都进行更新。
70.需要说明的是,本技术的配合设备具有转发设备的通信数据转发功能。当网络控制设备未正常运行时,配合设备既要收集各转发设备及对应链路的后续状态信息,还要按照自身流表进行通信数据的转发;当网络控制设备正常运行时,配合设备即要向网络控制发送保活报文,也要按照自身流表进行通信数据的转发。
71.本技术提供的一种转发设备的控制方法、装置、设备及存储介质,旨在解决现有技术的如上技术问题。
72.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
73.实施例一
74.图3为本技术实施例一提供的一种转发设备的控制方法的流程示意图。本技术方法的执行主体为转发设备的控制装置,该方法应用于配合设备,配合设备为预设网络架构
中的多个转发设备中的一个,预设网络架构还包括网络控制设备,如图3所示,本实施例的方法包括以下步骤。
75.s301,从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息。
76.其中,初始状态信息为网络控制设备还未出现故障前各转发设备及对应链路的状态信息,包含各转发设备是否出现故障,和/或对应链路是否断开等信息。在网络控制设备完好的情况下,初始状态信息可以更新,配合设备一般存储最新的初始状态信息。转发设备对应的流表为当前状态信息下,各转发设备对通信数据的转发决策,具体表现为流表,流表包含了某转发设备将通信数据转发至与其相邻的哪个转发设备的决策,其中,各转发设备的流表会根据初始状态信息的更新而更新,各转发设备的流表不一致。
77.其中,网络控制设备在预设网络架构完成之后,会收集、监测各转发设备及对应链路的初始状态信息,并根据初始状态信息生成各转发设备的流表,同时将初始状态信息和流表发送至配合设备,配合设备获取到流表、各转发设备及对应链路的初始状态信息,并存储。
78.可以理解的是,当网络控制设备一直处于正常工作状态,网络控制设备会定期或者实时监测各转发设备的初始状态信息,如果之后监测的初始状态信息较之前的初始状态信息有所更新,那么网络控制设备会根据最新的初始状态信息更新各转发设备的流表,生成更新后的流表,并又将更新后的初始状态信息和更新后的流表发送至配合设备,配合设备获取更新后的流表、各转发设备及对应链路的更新后的初始状态信息,并存储。同时,配合设备可以将之前的初始状态信息及流表删除。
79.需要说明的是,如果之后监测到的初始状态信息与之前监测到的初始状态信息并没有发生变化,则可以不需要重新存储到配合设备中,保留之前的初始状态信息和流表即可。
80.具体的,若某个转发设备的最新的初始状态信息与其对应的之前的初始状态信息相比,有所变化,可以只更新该转发设备及其相邻转发设备的流表,其余与该转发设备没有关联的转发设备的流表可以不需要更新。进一步的,将该转发设备及其相邻转发设备更新后的流表发送至配合设备,配合设备将用该转发设备及其相邻转发设备更新后的流表、更新后的初始状态信息替换掉该转发设备及其相邻转发设备的之前的流表及之前的初始状态信息,并存储。
81.可以理解的是,当网络控制设备处于正常工作时,可以定期或实时去监测、收集各转发设备及对应链路的初始状态信息,若之后的初始状态信息较之前的初始状态信息有所变化,则根据最新的初始状态信息重新更新流表。可选的,可以对所有的转发设备进行更新流表,也可以只对状态信息发生改变的转发设备及其相邻转发设备进行更新流表,此处不做限制。
82.可以理解的是,在网络控制设备未出现故障或网络控制设备与各转发设备的总线未断开之前,配合设备获取到的状态信息都为初始状态信息,该初始状态信息根据各转发设备的状态也会被更新。配合设备获取到的流表为最新的初始状态信息对应的流表。具体的,上述之前的初始状态信息及之后的初始状态信息皆为本步骤中的初始状态信息。本步骤中,为了保证配合设备存储的初始状态信息及流表更符合当前时间和环境,配合设备最
终存储及保留的是最新的初始状态信息及根据该最新的初始状态信息生成的最新流表。
83.其中,配合设备可以定期或实时获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息。
84.s302,监测网络控制设备是否在正常运行。
85.配合设备获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息后,可以定期监测网络控制设备是否在正常运行。
86.在一种方式中,配合设备向网络控制设备发送保活报文,该保活报文是用来监测网络控制设备是否出现故障和/或总线是否断开。具体的,配合设备向网络控制设备发送保活(英文为:keep alive)报文,当该报文经过总线传输至网络控制设备,网络控制设备接收该报文,该保活报文信息包含监测网络控制设备是否出现故障,或总线是否断开。网络控制设备对报文信息进行响应,保活报文响应为网络控制设备未出现故障,和/或总线未断开,一切正常运行。网络控制设备并将保活报文响应经过总线传输至配合设备,配合设备读取保活报文响应,并确定此时网络控制设备正常运行。另一种情况,当保活报文从配合设备发送一段时间后,还没接收到保活报文响应,则此时认定网络监控设备出现故障和/或总线断开。
87.另一种方式中,提前预设配合设备定期接收网络控制设备发送的正常运行信令,当配合设备在预设时间内接收到网络控制设备的正常运行信令,则代表该网络控制设备正常运行,若在预设时间后仍未接收到网络控制设备的正常运行信令,则代表该网络控制设备未正常运行。
88.s303,若确定网络控制设备未在正常运行,则确定各转发设备及对应链路的后续状态信息。
89.其中,各转发设备及对应链路的后续状态信息为当网络控制设备未正常运行时,配合设备充当网络控制设备的部分功能,监测各转发设备及对应链路的状态信息,包含各转发设备是否出现故障,和/或对应链路是否断开等信息。后续状态信息也是可以不断更新,若之后的后续状态信息较之前的后续状态信息有所变化,则配合设备将之后的后续状态信息替换掉之前的后续状态信息,并存储。
90.根据上述s302的描述,在一种方式中,当保活报文从配合设备发送一段时间后,还没接收到保活报文响应,则此时确定网络控制设备出现故障和/或总线断开,网络控制设备即未正常运行。其中,配合设备定期或实时向各转发设备发送探测报文,确定各转发设备及对应链路的后续状态信息。
91.另一种方式中,当配合设备在预设时间内没有接收到网络控制设备的正常运行信令,则代表该网络控制设备未正常运行。此时,配合设备定期或实时向各转发设备发送探测报文,该探测报文一般用来确定转发设备及对应链路状态,以及相邻转发设备编号。具体的,配合设备向与之相邻的转发设备发送探测报文后,若该相邻转发设备完好,则会继续将探测报文向下转发,探测报文在终点转发设备(即网络架构中的最后一个转发设备)内形成一则镜像探测报文,并将该镜像探测报文按照原路返回至配合设备,该镜像探测报文包括该镜像报文所经过的路径、转发设备等信息,配合设备根据镜像探测报文的信息,确定各转发设备及对应链路的后续状态信息,配合设备并将该后续状态信息进行存储。
92.其中,由于与配合设备相邻的转发设备至少一个,因此,配合设备会向所有与之相
邻的转发设备a发送探测报文,而每一个与之相邻的转发设备a又有多个相邻转发设备b,进而探测报文又转发至所有相邻转发设备b中,以此类推,直到探测报文转发至最后一个转发设备,进而停止转发。
93.可以理解的是,若某个转发设备出现故障或其对应链路断开,则探测报文不会转发至终点转发设备,会在该故障转发设备或链路断开的前一个转发设备停止向后转发,并由前一个转发设备形成一则镜像探测报文,并将该镜像探测报文按照原路返回至配合设备。
94.可选的,配合设备可以向各转发设备下发网络控制设备未正常运行的监测信令,该监测信令包含网络控制设备未正常运行的信息,还包含让各转发设备向配合设备发送自身、对应链路的状态及其相邻转发设备编号等命令,各转发设备回复一则监测信令镜像,该监测信令镜像包含各转发设备自身的状态,对应链路的状态,以及相邻转发设备编号等。配合设备可以接收监测信令镜像,进而确定各转发设备及对应链路的后续状态,配合设备并将该后续状态信息进行存储。
95.可以理解的是,当网络控制设备还没有恢复正常运行,配合设备可以定期或实时去确定后续状态信息,因此,当各转发设备及对应链路的之后的后续状态信息较之前收集的后续状态信息有所变化时,之前的后续状态信息可以被之后的后续状态信息替换,并存储之后的后续状态信息。可以理解的是,后续状态信息其实是不断在更新,配合设备收集并保存最新的后续状态信息。
96.需要说明的是,配合设备获取最新的后续状态信息的目的是为了保证自身存储的后续状态信息更符合当前时间和环境,便于后续发送准确的后续状态信息至网络控制设备。
97.s304,若监测到网络控制设备恢复正常运行,则将流表及后续状态信息发送给网络控制设备。
98.其中,配合设备向网络控制设备发送保活报文后,监测到网络控制设备恢复正常运行。具体表现在:配合设备向网络控制设备发送保活报文一段时间内,网络控制设备由于还未恢复,配合设备不能在预设时间内接收到保活报文响应。配合设备仍然定期发送保活报文,直到有一次发送保活报文时,配合设备接收到保活报文的保活报文响应,即代表配合设备监测到网络控制设备恢复正常运行。其中,恢复正常运行可以是网络架构重新部署了一个新的网络控制设备,和/或新的总线连接,也可以是运营人员对旧的网络控制设备和/或总线进行了修复,使得网络控制设备正常运行。
99.进一步的,配合设备若监测到网络控制设备恢复正常运行,配合设备将自身存储的流表及后续状态信息发送给网络控制设备。网络控制设备根据后续状态信息对相应状态信息有所变化的转发设备进行流表更新,并将对应的更新后流表替换之前配合设备发送的流表,并存储对应更新后的流表。
100.其中,配合设备可以一次性将流表及后续状态信息发送至网络控制设备。
101.本实施例提供一种转发设备的控制方法,该方法应用于配合设备,配合设备为预设网络架构中的多个转发设备中的一个,预设网络架构还包括网络控制设备,该方法包括:从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息;监测网络控制设备是否在正常运行;若确定网络控制设备未在正常运行,则确定各转发设
备及对应链路的后续状态信息;若监测到网络控制设备恢复正常运行,则将流表及后续状态信息发送给网络控制设备。本实施例通过配合设备获取各转发设备的流表、各转发设备及对应链路的初始状态信息,并进行存储,保证了流表及初始状态信息不丢失;当网络控制设备未正常运行时,配合设备则收集及确定各转发设备及对应链路的后续状态信息,保证及时获取并存储各转发设备的后续状态信息,有利于对转发设备及对应链路的监测;当网络控制设备恢复正常运行时,配合设备则将流表及后续状态信息发送给网络控制设备,便于网络控制设备及时、快速获取各转发设备的流表及后续状态信息,不需要耗费大量时间重新逐个获取流表及后续状态信息,节约了时间,提高了获取所有转发设备的状态信息及流表的效率。
102.实施例二
103.基于实施例一的描述,本技术实施例二在实施例一的基础上进一步细化,本实施例是监测网络控制设备是否在正常运行的一种可选实施方式,具体包括:监测网络控制设备是否发生故障及监测网络控制设备与各转发设备之间的总线是否中断。
104.具体的,若网络控制设备发生故障,和/或网络控制设备与各转发设备之间的总线发生中断,则网络控制设备均不能正常运行,所以在监测网络控制设备是否在正常运行时,监测网络控制设备是否发生故障及监测网络控制设备与各转发设备之间的总线是否中断。
105.其中,总线是连接网络控制设备及各转发设备的总线路,一般情况下,若总线断开,则网络控制设备与各转发设备之间的通信即会断开,此时,网络控制设备就像一个孤立设备,与各转发设备都不能建立通信连接。可以理解的是,即便网络控制设备是完好的,但是无法和各转发设备之间建立通信连接,网络控制设备不能监测各转发设备的状态,不能生成新的流表。
106.在一种可行方式中,配合设备可以向网络控制设备发送保活报文,该保活报文经过配合设备与网络控制设备的链路,再传入总线,进入网络控制设备中。若总线未断开及网络控制设备完好的情况下,保活报文进入网络控制设备中,该保活报文信息包含监测网络控制设备是否出现故障和/或总线是否断开,网络控制设备根据保活报文信息生成保活报文响应,并将保活报文响应发送给配合设备,保活报文响应中包括一切正常运行的信息。此时,配合设备接收到保活报文响应,并确定网络控制设备正常运行,成功监测到网络控制设备未发生故障,及总线未断开。
107.同样的,若总线断开的情况下,保活报文经过配合设备与网络控制设备的链路,再进入总线,此时,总线断开,保活报文不能向上传输。一般的,保活报文在总线的前端上传输遇阻,配合设备在预设的时间内还没接收到保活报文的保活报文响应,则认定此时总线可能断开。其中,总线的前端即为总线与配合设备链路的后端的分界线,保活报文按照顺序先进入总线前端,再传到总线后端,可以理解的是,总线断开后,保活报文传输至总线前端后就不会继续向后传输。同样的,若网络控制设备出现故障,保活报文经过配合设备与网络控制设备的链路,再进入总线,通过总线进入网络控制设备,此时,网络控制设备故障,网络控制设备不能读取保活报文。进而配合设备在预设的时间内接收不到保活报文的保活报文响应。
108.其中,配合设备对网络控制设备的监控可以是定期的,也可以是实时的。
109.可选的,可以只是网络控制设备出现故障,也可以只是总线断开,也可以是网络控
制设备出现故障,同时总线断开。
110.本实施例提供一种转发设备的控制方法,该方法监测网络控制设备是否在正常运行,包括:监测网络控制设备是否发生故障及监测网络控制设备与各转发设备之间的总线是否中断。本实施例配合设备对网络控制设备进行监测,确定网络控制设备是否正常运行。配合设备对网络控制设备是否正常运行进行全面监控,网络控制设备出现故障,和/或总线断开都被认定为网络控制设备不能正常运行,对网络控制设备的全面监控,便于配合设备的后续工作及时展开。
111.实施例三
112.图4为本技术实施例三提供的一种转发设备的控制方法的流程示意图,基于实施例一至实施例二的描述,本技术实施例三在上述实施例中的任意一个实施例的基础上进一步细化,本实施例是监测网络控制设备是否在正常运行的一种可选实施方式,具体包括:
113.s401,向网络控制设备发送保活报文。
114.具体的,配合设备向网络控制设备发送保活报文,保活报文经过配合设备与网络控制设备之间的链路和总线,最终进入到网络控制设备中。
115.具体的,配合设备可以定期发送保活报文,示例性的,在配合设备内部预设每10分钟向网络控制设备发送一次保活报文,根据实际情况,也可以是其它周期,此处不做限制。
116.s402,预设时间后判断是否接收到保活报文响应。
117.具体的,在配合设备内设定一个预设时间,该预设时间可用来衡量在这段时间内是否收到保活报文响应。示例性的,该预设时间可以是5分钟,也可以是其它数值。
118.在预设时间后,配合设备判断是否有接收到保活报文响应。若配合设备接收到保活报文响应,则判断是,执行s403;若配合设备未接收到保活报文响应,则判断否,执行s404。
119.其中,保活报文响应包含了网络控制设备及总线完好的状态,即网络控制设备正常运行的信息。
120.s403,确定网络控制设备在正常运行。
121.具体的,在预设时间内接收到保活报文响应,那么就表明保活报文进入到了网络控制设备中,由网络控制设备形成了一个保活报文响应,并按照原路径返回至配合设备。
122.可以理解的是,一旦有保活报文响应的形成,即代表着网络控制设备及总线完好,因此可以确定网络控制设备在正常运行。
123.s404,确定网络控制设备未在正常运行。
124.具体的,在预设时间内未接收到保活报文响应,可以理解的是,保活报文未传入到总线或传入到总线但是未进入到网络控制设备中,以上两种情况网络控制设备都不能接收到保活报文,更加不可能形成保活报文响应。由于无法形成保活报文响应,配合设备在预设时间内就无法接收到保活报文响应,配合设备就能确定出是网络控制设备未正常运行。
125.在一种情况下,总线断开,但是网络设备完好,由于总线的断开,即使此时网络控制设备是正常的,但却不能向各转发设备发送收集、监测状态信息的报文,网络控制设备的所有通信数据都不能下发至转发设备中,因此,该情况,网络控制设备也是未正常运行。
126.可以理解的是,保活报文响应是由网络控制设备形成的,因此总线断开和/或网络控制设备故障,都不能形成保活报文响应。此时,无论预设时间多长,配合设备都不会接收
到保活报文响应,配合设备确定网络控制设备未在正常运行。
127.其中,为了避免环境变化使得保活报文响应传输较慢,可以适当将预设时间调大。
128.本技术实施例提供一种转发设备的控制方法,该方法用于监测网络控制设备是否在正常运行,包括:向网络控制设备发送保活报文;预设时间后判断是否接收到保活报文响应;若确定接收到保活报文响应,则确定网络控制设备在正常运行;若确定未接收到保活报文响应,则确定网络控制设备未在正常运行。本实施例通过向网络控制设备发送保活报文,根据在预设时间后,配合设备判断是否接收到保活报文响应来确定网络控制设备是否正常运行,若配合设备确定接收到保活报文响应,则确定网络控制设备正常运行,若配合设备确定没有接收到保活报文响应,则确定网络控制设备未正常运行。由于配合设备判断是否接收到保活报文响应,可以及时确定出网络控制设备是否正常运行,实现了对网络控制设备的实时性很强的监控,提高了配合设备的功能性;当网络控制设备未正常运行时,便于激发配合设备执行后续工作。
129.实施例四
130.图5为本技术实施例四提供的一种转发设备的控制方法的流程示意图,基于实施例一至实施例三的描述,本技术实施例四在上述实施例中的任意一个实施例的基础上进一步细化,本实施例是确定各转发设备及对应链路的后续状态信息的一种可选实施方式,具体包括:
131.s501,向相邻的转发设备发送探测报文,以使相邻的转发设备获取探测报文经过的链路信息,将链路信息携带到探测报文中,并向与其连接的转发设备继续转发探测报文。
132.其中,探测报文是用于监测转发设备状态及对应链路。
133.具体的,配合设备确定网络控制设备未正常运行,配合设备立刻生成探测报文,并将探测报文分别发送给相邻的转发设备,可以理解的是,配合设备有至少一个相邻的转发设备,所有与配合设备相邻的转发设备都会获取到探测报文,同时,相邻的转发设备可以获取到此探测报文经过的链路信息,该相邻的转发设备并将链路信息携带到探测报文中。与该相邻的转发设备也有至少一个相邻转发设备,并将携带链路信息的探测报文继续发送至与其相邻的所有转发设备。
134.示例性的,配合设备有两个相邻的转发设备,分别为转发设备a1和转发设备a2,其中,配合设备与转发设备a1通过链路a1连接,配合设备与转发设备a2通过链路a2连接。配合设备形成探测报文,并将探测报文经过链路a1发送给转发设备a1,以及经过链路a2发送给转发设备a2,转发设备a1获取探测报文经过的链路信息a-1,该链路信息a-1为探测报文经过链路a1进入到转发设备a1,转发设备a2获取探测报文经过的链路信息a-2,该链路信息a-2为探测报文经过链路a2进入到转发设备a2,转发设备a1将其链路信息a-1携带到该探测报文中,转发设备a2将其链路信息a-2携带到该探测报文中。转发设备a1又分别与转发设备b1和转发设备b2连接,其中,转发设备a1与转发设备b1通过链路b1连接,转发设备a1与转发设备b2通过链路b2连接,转发设备a1将携带链路信息a-1的探测报文继续分别发送至转发设备b1和转发设备b2,转发设备b1获取到探测报文,并获取到该探测报文所经过的链路信息,该链路信息b-1为携带链路信息a-1的探测报文经过链路b1进入到转发设备b1,转发设备b1将其链路信息b-1携带到上述已携带链路信息b-1的探测报文中,以此类推,直到将携带众多链路信息的探测报文传输至终点转发设备,或者是一个故障的转发设备,或者是断开的
链路,探测报文才停止转发。
135.可以理解的是,若其中一条探测报文转发时遇到了故障的转发设备,或断开的链路,则该探测报文不再向下转发,但是不影响其余与该故障转发设备及断开链路不相关的转发设备继续向下转发。
136.可以理解的是,在终点转发设备上,由于终点转发设备至少与一个转发设备连接,因此,若整个网络架构所有转发设备都完好,则终点转发设备会接收到至少一个携带众多链路信息的探测报文。
137.s502,接收相邻的转发设备发送的镜像探测报文,镜像探测报文中包括镜像探测报文所经过的转发链路。
138.具体的,若携带众多链路信息的探测报文转发至终点转发设备,则终点转发设备会获取当前探测报文所经过的最后一个链路信息,并将该链路信息携带到已携带众多链路信息中,终点转发设备会将探测报文中的链路信息进行整理,并按照整理后的链路信息原路返回,形成镜像探测报文。其中,镜像探测报文包含镜像探测报文所经过的转发链路,该转发链路中包含镜像探测报文所经过的转发设备、转发设备上的输入口和输出口,以及经过的链路。
139.同样的,若探测报文在转发过程中,遇到一个转发设备出现故障,或者链路断开,则在该转发设备故障之前的一个转发设备,会将探测报文携带的链路进行整理,并按照整理后的链路信息原路返回,形成镜像探测报文。
140.可以理解的是,镜像探测报文按照链路信息进行原路返回时,各转发设备会将各自镜像探测报文所经过的转发设备、转发设备上的输入口和输出口,以及经过的链路等信息进行读取,形成转发链路,当链路信息上所有转发设备的镜像探测报文所经过的转发设备、转发设备上的输入口和输出口,以及经过的链路等信息都进行读取和整合之后,形成一条完整的转发链路。
141.其中,与配合设备相邻的转发设备会形成最后的镜像探测报文,配合设备接收与其相邻的转发设备的镜像探测报文。
142.其中,镜像探测报文中也可以包含探测报文在转发时的链路信息。
143.可以理解的是,所有的转发设备、转发设备输入口和输出口,转发设备之间的链路都进行了编号,便于区分。其中,链路信息包含了链路编号,转发链路包含了对应转发设备的编号,转发设备输入口和输出口编号,以及转发设备之间链路编号等信息。
144.示例性的,根据上述s501的例子,配合设备发送探测报文,探测报文经过转发设备a1,转发至转发设备b1,该链路信息b-1包含:探测报文经过链路a1和链路b1。其中,转发设备a1有输入口a’1和输出口a’1,转发设备b1有输入口b’1和输出口b’1。该镜像探测报文的转发链路包含:镜像探测报文经过转发设备a1,输入口a’1和输出口a’1,转发设备b1,输入口b’1和输出口b’1,链路a1和链路b1。
145.s503,根据转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息。
146.其中,配合设备预先存储至少一个终点转发设备标识,终点转发设备一般为两个或一个,当选择其中一个终点转发设备作为配合设备时,则终点转发设备为一个。
147.进一步的,配合设备根据转发链路及预先存储的至少一个终点转发设备标识确定
各转发设备是否有故障或转发设备对应的链路是否有断开,进而可以确定各转发设备及对应链路的后续状态信息。
148.在一种方式中,根据转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息,具体包括:
149.确定转发链路中是否包括对应的终点转发设备标识。
150.若确定转发链路中不包括对应的终点转发设备标识,则根据转发链路确定存在故障的转发设备或存在断开的链路,确定存在故障的转发设备或对应断开链路的后续状态信息为故障状态,确定不存在故障的转发设备及对应断开链路的后续状态信息为正常状态。
151.若确定转发链路中包括对应的终点转发设备标识,则确定转发链路中不存在故障的转发设备及断开的链路,并确定各转发设备及对应链路的后续状态信息为正常状态。
152.具体的,配合设备存储了至少一个终点转发设备的标识,若转发链路中有一个转发设备的编号与终点转发设备的标识一致,则代表该转发链路中包括对应的终点转发设备标识,即表明该镜像探测报文是在终点转发设备开始返回。需要说明的是,若转发链路是按照镜像探测报文所经过链路的顺序展示,一般情况下,确定转发链路的第一个转发设备编号是否与终点转发设备标识一致即可,若第一个转发设备编号与预先存储的终点转发设备标识一致,即可代表该转发链路中包括对应的终点转发设备标识。可选的,为了保险起见,以防转发链路中的信息不是按照镜像探测报文所经过链路的顺序记录存储的,也可以将转发链路中所有转发设备的编号都与终点转发设备标识进行匹配。
153.同样的,在转发链路中未发现有一个转发设备编号与终点转发设备标识匹配,则代表镜像探测报文并不是从终点转发设备开始按照原路返回至配合设备,而是在终点转发设备之前的转发设备开始返回,这就说明探测报文在转发时,遇到阻碍,无法顺利到达终点转发设备,只能到达终点转发设备之前的转发设备,并由该转发设备按照链路信息原路返回至配合设备,形成镜像探测报文,则可确定该转发链路中存在故障的转发设备或存在断开的链路。具体的,在转发链路中的第一个按照链路信息返回的转发设备,与之相邻且未在转发链路中的转发设备极有可能存在故障的转发设备或存在断开的链路。
154.示例性的,转发链路中从转发设备3开始按照原路返回至配合设备,转发链路包含了转发设备3、转发设备2以及转发设备1,转发设备3与转发设备2和转发设备4连接,转发设备4是转发设备3的后一个转发设备,转发设备2是转发设备3的前一个转发设备,在该转发链路中,探测报文到达了转发设备3,但是未能继续向后转发报文,探测报文转发至转发设备3就完成了转发,转发设备3按照链路信息原路返回至配合设备,并形成了镜像探测报文,镜像探测报文包含了镜像探测报文经过的转发链路。可以理解的是,由于转发设备4存在故障或者转发设备4与转发设备3之间的链路断开,因此,探测报文在转发设备3就没有转发至转发设备4,根据转发链路中包含了转发设备3、转发设备2以及转发设备1的信息,即可确定转发设备4存在故障,或转发设备3与转发设备4存在断开链路,确定转发设备4及对应链路的后续状态信息为故障状态。
155.其中,转发设备3、转发设备2和转发设备1不存在故障,以及转发设备1到转发设备3之间的链路不存在断开,进而确定转发设备3、转发设备2、转发设备1及其对应链路的后续状态信息为正常状态。
156.具体的,在转发链路中发现有一个转发设备编号与终点转发设备标识匹配,则代
表镜像探测报文是从终点转发设备开始按照原路返回至配合设备,这就说明探测报文转发至终点转发设备,并从终点转发设备按照链路信息原路返回至配合设备,形成镜像探测报文,则可确定该转发链路中不存在故障的转发设备或断开的链路。具体的,在转发链路中包含了终点设备及其前面的转发设备,代表该转发链路顺通无阻,探测报文可以顺利从配合设备转发至终点设备,并由终点设备原路返回至配合设备,形成镜像探测报文,在此期间经过的所有转发设备未故障,经过的转发设备之间的链路未断开,可以确定该转发链路中不存在故障的转发设备及断开的链路,进而确定各转发设备及对应链路的后续状态信息为正常状态。
157.在上述示例性的例子中,若转发设备3为终点设备,转发链路中从转发设备3开始按照原路返回至配合设备,转发链路包含了转发设备3、转发设备2以及转发设备1,则可确定转发设备3、转发设备2和转发设备1不存在故障,以及转发设备1到转发设备3之间的链路不存在断开,进而确定转发设备3、转发设备2、转发设备1及其对应链路的后续状态信息为正常状态。
158.在该方式中,根据转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息,包括:确定转发链路中是否包括对应的终点转发设备标识;若确定转发链路中不包括对应的终点转发设备标识,则根据转发链路确定存在故障的转发设备或存在断开的链路,确定存在故障的转发设备或对应断开链路的后续状态信息为故障状态,确定不存在故障的转发设备及对应断开链路的后续状态信息为正常状态;若确定转发链路中包括对应的终点转发设备标识,则确定转发链路中不存在故障的转发设备及断开的链路,并确定各转发设备及对应链路的后续状态信息为正常状态。本实施例中根据转发链路是否包括对应终点转发设备标识,确定该转发链路中是否存在故障的转发设备或断开的链路,进而确定转发设备及对应链路的后续状态信息。具体的,若确定转发链路中不包括对应的终点转发设备标识,则根据转发链路确定该网络架构中存在故障的转发设备或断开的链路,该故障的转发设备或对应链路的后续状态信息为故障状态,该转发链路中的转发设备及对应链路即为不存在故障的转发设备及不存在断开的链路,则确定不存在故障的转发设备及对应断开链路的后续状态信息为正常状态;若确定转发链路中包括终点转发设备标识,则确定转发链路中不存在故障的转发设备及断开的链路,并确定该转发链路中,各转发设备及对应链路的后续状态信息为正常状态。配合设备对各转发设备及对应链路进行全面监控,能够更加准确确定出各转发设备及对应链路的后续状态信息,进而可以更加准确地确定各转发设备及对应链路是故障状态,还是正常状态。
159.本实施例提供一种转发设备的控制方法,该方法用于确定各转发设备及对应链路的后续状态信息,包括:向相邻的转发设备发送探测报文,以使相邻的转发设备获取探测报文经过的链路信息,将链路信息携带到探测报文中,并向与其连接的转发设备继续转发探测报文;接收相邻的转发设备发送的镜像探测报文,镜像探测报文中包括镜像探测报文所经过的转发链路;根据转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息。本实施例配合设备通过向相邻的转发设备发送探测报文,获取探测报文经过的链路信息,并继续向相邻的转发设备发送携带链路信息的探测报文,配合设备接收镜像探测报文,该镜像探测报文包含经过的转发链路,配合设备根据转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息。配
合设备收集及确定各转发设备及对应链路的后续状态信息,根据至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息,准确率高,实现了对各转发设备及对应链路的准确监控。
160.实施例五
161.图6为本技术实施例五提供的一种转发设备的控制方法的流程示意图,基于实施例一至实施例四的描述,本技术实施例五在上述实施例中的任意一个实施例的基础上进一步细化,本实施例是关于监测网络控制设备是否恢复正常运行的一种可选实施方式,具体包括:
162.s601,周期性向网络控制设备发送保活报文。
163.其中,配合设备按照实施例三的描述,确定了网络控制设备未正常运行工作,此时,配合设备不仅要收集各转发设备及对应链路的后续状态信息,配合设备还要周期性向网络控制设备发送保活报文,确定网络控制设备是否恢复正常工作。周期性间隔时间可以根据自身需要设定,此处不做限制。
164.s602,每次发送保活报文后,在预设时间后判断是否接收到保活报文响应。
165.其中,配合设备向网络控制设备每次发送保活报文后,自身按照预设时间后判断是否接收到保活报文响应。
166.在预设时间后,配合设备判断是否有接收到保活报文响应。若配合设备接收到保活报文响应,则判断是;若配合设备未接收到保活报文响应,则判断否。
167.其中,保活报文响应包含了网络控制设备及总线完好的状态,及网络控制设备恢复运行的信息。
168.其中,在预设时间后,若是,则接收到保活报文响应,则执行s603;若否,则未接收到保活报文响应,则执行s604。
169.s603,确定网络控制设备恢复正常运行。
170.其中,可以重新部署一个新的网络控制设备接管,和/或新的总线连接整个网络架构,也可以是对未正常运行的网络控制设备和/或总线进行修复,从而使得网络控制设备恢复正常运行。
171.具体的,在预设时间内接收到保活报文响应,那么就表明保活报文进入到了网络控制设备中,由网络控制设备形成了一个保活报文响应,并按照原路径返回至配合设备。
172.可以理解的是,一旦有保活报文响应的形成,即代表着网络控制设备已经恢复正常运行。
173.s604,确定网络控制设备未恢复正常运行。
174.具体的,在预设时间内未接收到保活报文响应,可以理解的是,保活报文未传入到总线或传入到总线但是未进入到网络控制设备中,以上两种情况网络控制设备都不能接收到保活报文,更加不可能形成保活报文响应,因此配合设备可以确定网络控制设备未恢复正常运行。具体描述参考s304,此处不再赘述。
175.可以理解的是,本实施例与实施例三的方法一致,本实施例是对网络控制设备出现故障和/或总线断开之后,监测网络控制设备是否恢复正常运行,该方法与实施例三中监测网络控制设备是否正常运行一样。
176.本实施例提供的一种转发设备的控制方法,该方法监测网络控制设备是否恢复正
常运行,包括:周期性向网络控制设备发送保活报文;每次发送保活报文后,在预设时间后判断是否接收到保活报文响应;若确定接收到保活报文响应,则确定网络控制设备恢复正常运行;若确定未接收到保活报文响应,则确定网络控制设备未恢复正常运行。本实施例中,配合设备周期性监测网络控制设备是否恢复正常工作,若在预设时间后,接收到保活报文响应,则确定网络控制设备恢复正常工作,若未接收到保活报文响应,则确定网络控制设备未恢复正常运行。配合设备周期性监测网络控制设备,可以及时得知之前未正常运行的网络控制设备是否恢复运行,进而配合设备可以及时将后续状态信息发送至网络控制设备;配合设备监测网络控制设备的方式简单,操作性强,判断是否接收到保活报文响应的准确率高。
177.实施例六
178.基于实施例一至实施例五的描述,本技术实施例六在上述实施例中的任意一个实施例的基础上进一步细化,本实施例是若确定网络控制设备在正常运行时的一种可选实施方式,具体包括:
179.接收网络控制设备发送的流表更新指令,流表更新指令中包括至少一个转发设备对应的新流表;根据新流表对对应的转发设备的流表进行更新。
180.具体的,网络控制设备在正常运行下,监测到至少一个转发设备故障,或该转发设备与相邻转发设备之间链路断开,此时,网络控制设备将对相关的转发设备进行流表更新,并将更新后的流表进行存储。同时,网络控制设备向配合设备发送流表更新指令,该流表更新指令中包括至少一个转发设备对应的新流表,配合设备接收网络控制设备发送的流表更新指令,并进行更新。具体的,配合设备识别出更新指令中需要更新的转发设备的流表,并在自身的存储的流表中找到对应的转发设备旧流表,根据新流表对对应的转发设备的流表进行更新,并将新流表存储在配合设备中。
181.需要说明的是,若有转发设备与网络控制设备之间的链路断开,则网络控制设备可以对该转发设备及相邻转发设备进行更新,网络控制设备可以将更新后的流表发送至配合设备更新并存储,同时,也会发送给该转发设备及相邻转发设备。由于该转发设备与网络控制设备之间链路断开,该转发设备并不能接收到新流表,而与该转发设备相邻的转发设备可以接收到新流表,并按照新流表决策进行通信数据的转发。
182.本实施例提供一种转发设备的控制方法,该方法若确定网络控制设备在正常运行时,还包括:接收网络控制设备发送的流表更新指令,流表更新指令中包括至少一个转发设备对应的新流表;根据新流表对对应的转发设备的流表进行更新。本实施例当网络控制设备在正常运行时,若网络控制设备监测到至少一个转发设备出现故障或链路断开,则可以生成相关转发设备的新流表,并将包括至少一个转发设备对应的新流表的指令发送给配合设备,配合设备接收流表更新指令,并根据新流表对对应的转发设备的流表进行更新,并存储。配合设备对新流表的更新及存储,有利于保护最新的流表,以防新流表丢失,配合设备具有备份及更新的作用;配合设备保护新流表,有利于后续网络控制设备根据新流表做出决策。
183.实施例七
184.下面是本技术的装置实施例,图7为本技术实施例七提供的一种转发设备的控制装置的示意图。如图7所示,该装置700包括以下模块。
185.获取模块701,用于从网络控制设备中获取各转发设备对应的流表、各转发设备及对应链路的初始状态信息。
186.监测模块702,用于监测网络控制设备是否在正常运行。
187.确定模块703,用于若确定网络控制设备未在正常运行,则确定各转发设备及对应链路的后续状态信息。
188.发送模块704,用于若监测到网络控制设备恢复正常运行,则将流表及后续状态信息发送给网络控制设备。
189.在一种可行方式中,监测模块702,具体用于:
190.监测网络控制设备是否发生故障及监测网络控制设备与各转发设备之间的总线是否中断。
191.在一种可行方式中,监测模块702,具体用于:
192.向网络控制设备发送保活报文;预设时间后判断是否接收到保活报文响应;若确定接收到保活报文响应,则确定网络控制设备在正常运行;若确定未接收到保活报文响应,则确定网络控制设备未在正常运行。
193.在一种可行方式中,确定模块703,具体用于:
194.向相邻的转发设备发送探测报文,以使相邻的转发设备获取探测报文经过的链路信息,将链路信息携带到探测报文中,并向与其连接的转发设备继续转发探测报文;接收相邻的转发设备发送的镜像探测报文,镜像探测报文中包括镜像探测报文所经过的转发链路;根据转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息。
195.在一种可行方式中,确定模块703,在根据转发链路及预先存储的至少一个终点转发设备标识确定各转发设备及对应链路的后续状态信息时,具体用于:
196.确定转发链路中是否包括对应的终点转发设备标识;若确定转发链路中不包括对应的终点转发设备标识,则根据转发链路确定存在故障的转发设备或存在断开的链路,确定存在故障的转发设备或对应断开链路的后续状态信息为故障状态,确定不存在故障的转发设备及对应断开链路的后续状态信息为正常状态;若确定转发链路中包括对应的终点转发设备标识,则确定转发链路中不存在故障的转发设备及断开的链路,并确定各转发设备及对应链路的后续状态信息为正常状态。
197.在一种可行方式中,监测模块702,具体用于:
198.周期性向网络控制设备发送保活报文;每次发送保活报文后,在预设时间后判断是否接收到保活报文响应;若确定接收到保活报文响应,则确定网络控制设备恢复正常运行;若确定未接收到保活报文响应,则确定网络控制设备未恢复正常运行。
199.在一种可行方式中,本实施例提供的一种转发设备的控制装置,还包括:更新模块。
200.其中,更新模块,用于:若确定网络控制设备在正常运行,则接收网络控制设备发送的流表更新指令,流表更新指令中包括至少一个转发设备对应的新流表;根据新流表对对应的转发设备的流表进行更新。
201.本实施例提供的一种转发设备的控制装置可以执行实施例一至实施例六任意一个实施例提供的转发设备的控制方法,具体的技术方案和效果可以参见前述方法实施例的
相关内容,在此不再赘述。
202.实施例八
203.图8为本技术实施例八提供的一种配合设备的结构示意图。如图8所示,该配合设备800包括:处理器801,以及与处理器通信连接的存储器802和收发器803;存储器802存储计算机执行指令;收发器803,用于收发数据;处理器801执行存储器802存储的计算机执行指令,以实现如上述实施例一至实施例六任意一个方法实施例,具体实现方式和技术效果类似,这里不再赘述。
204.其中,本实施例中,存储器802和处理器801通过总线连接。总线可以是工业标准体系结构(industry standard architecture,简称为isa)总线、外部设备互连(peripheral component interconnect,简称为pci)总线或扩展工业标准体系结构(extended industry standard architecture,简称为eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
205.实施例九
206.本技术提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如上述实施例一至实施例六任意一个方法实施例,具体实现方式和技术效果类似,这里不再赘述。
207.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
208.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。