CN107547249A - 链路切换方法、装置、sdn交换机、控制器及存储介质 - Google Patents

链路切换方法、装置、sdn交换机、控制器及存储介质 Download PDF

Info

Publication number
CN107547249A
CN107547249A CN201710451686.XA CN201710451686A CN107547249A CN 107547249 A CN107547249 A CN 107547249A CN 201710451686 A CN201710451686 A CN 201710451686A CN 107547249 A CN107547249 A CN 107547249A
Authority
CN
China
Prior art keywords
link
flow table
sdn
priority
sdn switch
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN201710451686.XA
Other languages
English (en)
Inventor
袁瑞英
夏青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
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 New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201710451686.XA priority Critical patent/CN107547249A/zh
Publication of CN107547249A publication Critical patent/CN107547249A/zh
Pending legal-status Critical Current

Links

Abstract

本发明实施例提供了一种链路切换方法、装置、SDN交换机、控制器及存储介质,其中,链路切换方法包括:接收并存储SDN控制器下发的流表,其中,流表中包括各链路所对应的优先级,优先级与各链路的链路质量参数成正比关系;监测SDN交换机自身与目的设备之间的多条链路;在当前用于转发报文的第一链路故障时,修改SDN交换机本地存储的流表中与第一链路对应的流表项的优先级,修改后的流表中与第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。通过本方案可以实现链路的自动切换,从而减小报文在转发过程中的丢包率,提高报文转发的成功率。

Description

链路切换方法、装置、SDN交换机、控制器及存储介质
技术领域
本发明涉及网络技术领域,特别是涉及一种链路切换方法、装置、SDN交换机、控制器及存储介质。
背景技术
软件定义网络(Software Defined Network,SDN),是一种新型网络创新架构,是网络虚拟化的一种实现方式,SDN架构中包括SDN控制器和SDN交换机。在基于开放流OpenFlow协议的SDN网络中,SDN控制器通过OpenFlow通道获取网络拓扑结构,并根据协议生成流表下发至SDN交换机,SDN交换机依据SDN控制器下发的流表进行报文处理。SDN技术通过将网络设备的控制平面与数据平面分离,从而实现网络流量的灵活控制。
然而,随着网络在生活中扮演的角色越来越重要,对网络的可靠性和安全性要求也越来越高。在网络的负荷量很大时,不论是网络设备异常的重启,还是链路断连等,都有可能导致网络的瘫痪。
因此,在现有的SDN网络中,常常采用多条链路同时存在的方式构建网络,当其中第一链路故障后,SDN控制器利用网络拓扑结构计算出第二链路,并更新流表,更新后的流表指示SDN交换机利用第二链路转发报文,然后SDN控制器向SDN交换机下发更新后的流表,SDN交换机根据该更新后的流表,确定利用第二链路将报文转发至目的设备。但是,在链路出现故障与SDN控制器下发更新后的流表之间,SDN交换机依然尝试通过故障的第一链路转发报文,从而导致报文转发的丢包情况发生,影响报文转发的成功率。
发明内容
本发明实施例的目的在于提供一种链路切换方法、装置、SDN交换机、控制器及存储介质,以减小报文在转发过程中的丢包率,从而提高报文转发的成功率。具体技术方案如下:
第一方面,本发明实施例提供了一种链路切换方法,应用于软件定义网络SDN交换机,所述方法包括:
接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
监测所述SDN交换机自身与所述目的设备之间的多条链路;
在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
第二方面,本发明实施例提供了一种链路切换方法,应用于SDN控制器,所述方法包括:
获取SDN网络的拓扑信息、所述SDN网络中SDN交换机的设备信息及所述SDN交换机与目的设备之间的链路属性;
根据所述拓扑信息、所述设备信息及所述链路属性,确定所述SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数;
生成流表并下发至各SDN交换机,以使所述SDN交换机在当前用于转发报文的第一链路故障时,修改所述流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文,其中,所述流表中各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。
第三方面,本发明实施例提供了一种链路切换装置,应用于SDN交换机,所述装置包括:
接收模块,用于接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
监测模块,用于监测所述SDN交换机自身与所述目的设备之间的多条链路;
修改模块,用于在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
选择模块,用于在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
第四方面,本发明实施例提供了一种链路切换装置,应用于SDN控制器,所述装置包括:
获取模块,用于获取SDN网络的拓扑信息、所述SDN网络中SDN交换机的设备信息及所述SDN交换机与目的设备之间的链路属性;
确定模块,用于根据所述拓扑信息、所述设备信息及所述链路属性,确定所述SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数;
下发模块,用于生成流表并下发至各SDN交换机,以使所述SDN交换机在当前用于转发报文的第一链路故障时,修改所述流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文,其中,所述流表中各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。
第五方面,本发明实施例提供了一种SDN交换机,所述SDN交换机包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现第一方面所述的方法步骤。
第六方面,本发明实施例提供了一种可读存储介质,存储于SDN交换机,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的方法步骤。
第七方面,本发明实施例提供了一种SDN控制器,所述SDN控制器包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现第二方面所述的方法步骤。
第八方面,本发明实施例提供了一种可读存储介质,存储于SDN控制器,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第二方面所述的方法步骤。
本发明实施例提供的一种链路切换方法、装置、SDN交换机、控制器及存储介质,SDN交换机通过接收SDN控制器下发的流表,监测SDN交换机自身与目的设备之间的多条链路的链路状态,在当前用于转发报文的第一链路故障时,直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的自动切换。在链路发生故障时,SDN交换机可以直接对所存储的流表中流表项的优先级进行修改,而无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,可实现链路的快速自动切换,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的第一方面的链路切换方法的一种流程示意图;
图2为本发明实施例的第一方面的链路切换方法的另一种流程示意图;
图3为本发明实施例的第二方面的链路切换方法的流程示意图;
图4为本发明实施例的第三方面的链路切换装置的一种结构示意图;
图5为本发明实施例的第三方面的链路切换装置的另一种结构示意图;
图6为本发明实施例的第四方面的链路切换装置的结构示意图;
图7为本发明实施例的SDN交换机的一种结构示意图;
图8为本发明实施例的SDN控制器的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了实现链路的自动切换,以减小报文在转发过程中的丢包率,提高报文转发的成功率,本发明实施例提供了一种链路切换方法、装置、SDN交换机、控制器及存储介质。
下面首先对本发明实施例所提供的应用于SDN交换机的一种链路切换方法进行介绍。
需要说明的是,由于本发明实施例应用于SDN网络架构下,SDN网络架构中包括了SDN控制器和SDN交换机,SDN控制器可以基于网络拓扑结构生成流表,并向SDN交换机下发流表,该流表中包括多个端口或链路对应的流表项,每个流表项又包含了匹配域、优先级、动作域等信息。其中,匹配域中包括包头域、入端口信息等,对应了SDN交换机的信息;优先级可以理解为流表中各流表项的执行顺序;动作域表示了流表项对应端口的具体动作,例如,输出动作output、输入动作input等。SDN交换机则可以根据接收到的流表来匹配和处理报文的信息。在一种实际的SDN网络架构中,SDN控制器与转发层之间的通信接口标准采用开放流OpenFlow协议,则在SDN网络架构下,SDN交换机为OpenFlow交换机,该OpenFlow交换机支持OpenFlow协议,可以为物理设备,也可以为虚拟设备。SDN控制器通过OpenFlow通道对OpenFlow交换机进行管理和配置,向OpenFlow交换机发送数据包。当然,SDN网络架构基于其他协议也属于本发明实施例的保护范围,这里不再一一赘述。
如图1所示,本发明实施例所提供的一种链路切换方法,应用于SDN交换机,该链路切换方法可以包括如下步骤:
S101,接收并存储SDN控制器下发的流表。
其中,流表中包括SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,优先级与各链路的链路质量参数成正比关系。SDN控制器所下发的流表中还可以包括链路的链路信息、SDN交换机的设备信息及目的设备的设备信息等。SDN控制器对网络拓扑结构进行周期性的分析,标记SDN交换机以及相关的端口,并且通过线路的选型、协议的确定等,根据对丢包率、时延的分析确定链路质量参数,链路质量参数体现了链路在正常情况下传输报文的能力,链路质量参数可以由技术人员根据分析结果设定为具体的数值,链路质量参数越大,则说明该条链路传输报文的能力越强。优先级与各链路的链路质量参数的正比关系可以理解为:某条链路的链路质量越高,则该条链路流表项的优先级越高。为了便于计算及理解,优先级可以为与链路质量参数相等的数值,例如,第一链路的链路质量参数为6,则流表中第一链路对应的流表项的优先级为6;第二链路的链路质量参数为5,则流表中第二链路对应的流表项的优先级为5,等等。SDN控制器通过对网络拓扑结果分析可以得到:例如,第一链路和SDN交换机的端口port1相连,第二链路和SDN交换机的端口port2相连,第三链路和SDN交换机的端口port3相连,等等。通过对链路的链路质量进行分析,确定第一链路的链路质量最高,其次是第二链路,最差是第三链路,并按照链路质量的高低,依次对链路进行排序,则网络架构中链路和链路质量对照表如表1所示。
表1
网络架构中所有链路 链路质量参数取值
第一链路 6
第二链路 5
第三链路 4
SDN控制器可以根据链路质量参数确定每条链路对应的流表项的优先级,为了便于实现,可令优先级与链路质量参数成正比关系,具体的,可以直接将各条链路对应的流表项的优先级设置为与该条链路的链路质量参数相同的数值。SDN控制器生成流表项,该流表项中包括匹配域、优先级、动作域等信息,SDN控制器向SDN交换机下发匹配域与SDN交换机相匹配,且动作域为输出动作output的多个流表项,例如,SDN交换机中动作域为输出动作output的流表项对应的端口为port1(对应第一链路)、port2(对应第二链路)和port3(对应第三链路),由于优先级与链路质量参数成正比,基于上述例子,第一链路的链路质量参数为6、第二链路的链路质量参数为5、第三链路的链路质量参数为4,则第一链路对应的流表项的优先级高于第二链路对应的流表项的优先级,第二链路对应的流表项的优先级高于第三链路对应的流表项的优先级。如果将优先级设置为与链路质量参数相同的数值,则第一链路对应的流表项的优先级为6、第二链路对应的流表项的优先级为5、第三链路对应的流表项的优先级为4。
S102,监测SDN交换机自身与目的设备之间的多条链路。
SDN交换机可以实时监测其自身与目的设备之间的多条链路,目的设备为另一SDN交换机。为了实现在一SDN交换机与一目的设备之间传输报文的链路发生故障时,不影响报文的传输,本发明实施例中,该SDN交换机与同一目的设备之间存在多条链路,并且一个端口对应一条链路。首先,SDN交换机可以监听自身端口与目的设备之间的检测报文传递状态,当检测报文传递状态正常时,SDN交换机判定该端口对应的链路正常,当检测报文传递状态不正常时,SDN交换机判断该端口对应的链路故障,其中,检测报文可以为Hello报文或Echo报文,等等,SDN交换机具体可以通过BFD(Bidirectional Forwarding Detection,双向转发检测)、NQA(Network Quality Analyzer,网络质量分析)等多种方式监听链路的链路状态。其次,由于链路的链路状态会直接反映在SDN交换机的端口状态上,如果端口为UP状态,则说明链路正常,如果端口为DOWN状态,则说明链路故障;因此,可以直接通过监测端口状态,更快速地获取链路的链路状态,提高链路切换的效率。
S103,在当前用于转发报文的第一链路故障时,修改SDN交换机本地存储的流表中与第一链路对应的流表项的优先级。
其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级。由于SDN交换机是根据接收到的流表来匹配和处理报文的信息的,而具体的匹配和处理顺序与流表项的优先级相关,优先级越高,则选用该流表项对应的链路进行处理,因此,在链路发生故障时,可以将故障链路的流表项的优先级改小,这样,就可以使得SDN交换机优先匹配状态正常的链路对报文进行处理。即,可以将目前发生故障的链路的流表项的优先级改至低于其他链路对应的流表项的优先级,使后续的报文采用优先级高的链路进行转发,实现链路的切换,例如,当前传输报文的链路为第一链路,该第一链路的流表项的优先级为6,第二链路的流表项的优先级为5,第三链路的流表项的优先级为4,在第一链路发生故障时,可以将第一链路的流表项的优先级改为3或者更小的数值,则SDN交换机可以通过流表中流表项的优先级确定切换为流表项的优先级为5的第二链路进行传输。更优的,可以直接将发生故障的链路的流表项的优先级更改为0。
S104,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
流表中流表项的优先级为流表中各流表项的执行顺序,也就是对应端口或者链路的报文转发次序,SDN交换机始终选择优先级最高的流表项对应的链路来转发报文,以切换至目前可用的链路中丢包率最低、时延最小的链路用于转发报文,以保证报文的转发速率和成功率。相应于上述例子,由于第一链路对应的流表项的优先级最高,则此时报文按照流表项从端口port1通过第一链路转发出去。如表2所示,为流表项下发情况及报文转发路径。
表2
应用本实施例,SDN交换机通过接收SDN控制器下发的流表,监测SDN交换机自身与目的设备之间的多条链路的链路状态,在当前用于转发报文的第一链路故障时,直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的自动切换。在链路发生故障时,SDN交换机可以直接对所存储的流表中流表项的优先级进行修改,而无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,可实现链路的快速自动切换,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
基于图1所示实施例,如图2所示,为本发明实施例中另一种链路切换方法,该方法具体可以包括如下步骤:
S201,接收并存储SDN控制器下发的流表。
S202,记录各链路对应的初始优先级。
考虑到故障链路恢复的情况,在接收到流表时,可以分别记录下各链路的初始优先级和当前优先级。
S203,监测SDN交换机自身与目的设备之间的多条链路
S204,在当前用于转发报文的第一链路故障时,修改SDN交换机本地存储的流表中与第一链路对应的流表项的优先级。
S205,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
S206,在第一链路的故障恢复时,修改流表中与第一链路对应的流表项的优先级为初始优先级。
在确定第一链路故障时,修改当前优先级为0,初始优先级保持不变。在故障恢复时,需要由第一链路恢复转发报文,则可以将第一链路的当前优先级修改为初始优先级。
应用本实施例,建立了链路质量和优先级之间的对应关系,从而能够选用链路质量最高的链路进行报文转发,并在在链路发生故障时,SDN交换机直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的快速自动切换,无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
需要说明的是,本实施例中的S201、S203、S204、S205分别与图1所示实施例的S101至S104相同,具有相同或相似的有益效果,这里不再一一赘述。
下面对本发明实施例所提供的应用于SDN控制器的一种链路切换方法进行介绍。
如图3所示,本发明实施例所提供的一种链路切换方法,应用于SDN控制器,该方法可以包括如下步骤:
S301,获取SDN网络的拓扑信息、SDN网络中SDN交换机的设备信息及SDN网络中各设备信息对应的SDN交换机与目的设备之间的链路属性。
为了能够得到与优先级相关的链路质量参数,SDN控制器可以对SDN网络的拓扑信息、SDN网络中SDN交换机的设备信息及SDN网络中各设备信息对应的SDN交换机与目的设备之间的链路属性进行获取。
S302,根据拓扑信息、设备信息及链路属性,确定SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数。
SDN控制器在获取到SDN网络的拓扑信息、SDN网络中SDN交换机的设备信息及SDN网络中各设备信息对应的SDN交换机与目的设备之间的链路属性后,对网络拓扑结构进行周期性的分析,标记SDN交换机以及相关的端口,并且通过线路的选型、协议的确定等,根据对丢包率、时延等链路属性的分析,确定链路质量参数,链路质量参数体现了链路在正常情况下传输报文的能力,链路质量参数可以由技术人员根据分析结果设定为具体的数值,链路质量参数越大,则说明该条链路传输报文的能力越强。
S303,生成流表并下发至各SDN交换机,以使SDN交换机在当前用于转发报文的第一链路故障时,修改流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
其中,流表中的各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。SDN控制器根据链路质量参数,确定各链路对应的流表项的优先级,并且链路质量参数与优先级成正比关系,可以理解为:链路质量参数越大,则该条链路对应的流表项的优先级越高。为了便于计算和理解,可以将优先级设置为与链路质量参数相等的数值,例如,第一链路的链路质量参数为6,则确定第一链路对应的流表项的优先级为6;第二链路的链路质量参数为5,则确定第二链路对应的流表项的优先级为5,等等。所生成的流表中还可以包括链路的链路信息、SDN交换机的设备信息及目的设备的设备信息等。
应用本实施例,SDN交换机通过接收SDN控制器下发的流表,监测SDN交换机自身与目的设备之间的多条链路的链路状态,在当前用于转发报文的第一链路故障时,直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的自动切换。在链路发生故障时,SDN交换机可以直接对所存储的流表中流表项的优先级进行修改,而无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,可实现链路的快速自动切换,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
本发明实施例所提供的一种链路切换方法的执行主体为SDN交换机或SDN控制器,两设备具有一定的数据处理能力,因此,分别可以包括例如DSP(Digital SignalProcessor,数字信号处理器)、ARM(Advanced Reduced Instruction Set ComputerMachines,精简指令集计算机微处理器)或者FPGA(Field-Programmable Gate Array,现场可编程门阵列)等核心处理芯片。其中,实现本发明实施例所提供的一种链路切换方法的方式可以为设置于SDN交换机或SDN控制器中的软件、硬件电路及逻辑电路中的至少一种。
相应于上述方法实施例,本发明实施例提供了一种链路切换装置,应用于SDN交换机,如图4所示,该链路切换装置可以包括:
接收模块410,用于接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
监测模块420,用于监测所述SDN交换机自身与所述目的设备之间的多条链路;
修改模块430,用于在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
选择模块440,用于在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
基于图4所示实施例,如图5所示,本发明实施例还提供了一种链路切换装置,该装置可以包括:
接收模块510,用于接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
记录模块520,用于记录各链路对应的初始优先级;
监测模块530,用于监测所述SDN交换机自身与所述目的设备之间的多条链路;
修改模块540,用于在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
选择模块550,用于在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
可选的,所述修改模块540具体还可以用于:
在所述第一链路的故障恢复时,修改所述流表中与所述第一链路对应的流表项的优先级为所述初始优先级。
应用本实施例,建立了链路质量和优先级之间的对应关系,从而能够选用链路质量最高的链路进行报文转发,并在在链路发生故障时,SDN交换机直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的快速自动切换,无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
需要说明的是,本实施例中的接收模块510、监测模块530、修改模块540、选择模块550分别与图4所示实施例的接收模块410、监测模块420、修改模块430、选择模块440相同,具有相同或相似的有益效果。
相应于上述方法实施例,本发明实施例提供了一种链路切换装置,应用于SDN控制器,如图6所示,该链路切换装置可以包括:
获取模块610,用于获取SDN网络的拓扑信息、所述SDN网络中SDN交换机的设备信息及所述SDN交换机与目的设备之间的链路属性;
确定模块620,用于根据所述拓扑信息、所述设备信息及所述链路属性,确定所述SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数;
下发模块630,用于生成流表并下发至各SDN交换机,以使所述SDN交换机在当前用于转发报文的第一链路故障时,修改所述流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文,其中,所述流表中各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。
应用本实施例,SDN交换机通过接收SDN控制器下发的流表,监测SDN交换机自身与目的设备之间的多条链路的链路状态,在当前用于转发报文的第一链路故障时,直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的自动切换。在链路发生故障时,SDN交换机可以直接对所存储的流表中流表项的优先级进行修改,而无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,可实现链路的快速自动切换,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
需要说明的是,本发明实施例的链路切换装置为应用上述链路切换方法的装置,则上述链路切换方法的所有实施例均适用于该装置,且均能达到相同或相似的有益效果。
为了解决现有技术的问题,本发明实施例还提供了一种SDN交换机,如图7所示,SDN交换机700可以包括:处理器710、通信接口720、存储器730和通信总线740,其中,所述处理器710,所述通信接口720,所述存储器730通过所述通信总线740完成相互间的通信,
所述存储器730,用于存放计算机程序;
所述处理器710,用于执行所述存储器730上所存放的程序时,实现如下步骤:
接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
监测所述SDN交换机自身与所述目的设备之间的多条链路;
在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
相应于上述实施例所提供的链路切换方法,本发明实施例提供了一种可读存储介质,存储于SDN交换机,用于存储计算机程序,所述计算机程序被处理器执行时,实现如下步骤:
接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
监测所述SDN交换机自身与所述目的设备之间的多条链路;
在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
为了解决现有技术的问题,本发明实施例还提供了一种SDN控制器,如图8所示,SDN控制器800可以包括:处理器810、通信接口820、存储器830和通信总线840,其中,所述处理器810,所述通信接口820,所述存储器830通过所述通信总线840完成相互间的通信,
所述存储器830,用于存放计算机程序;
所述处理器810,用于执行所述存储器830上所存放的程序时,实现如下步骤:
获取SDN网络的拓扑信息、所述SDN网络中SDN交换机的设备信息及所述SDN交换机与目的设备之间的链路属性;
根据所述拓扑信息、所述设备信息及所述链路属性,确定所述SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数;
生成流表并下发至各SDN交换机,以使所述SDN交换机在当前用于转发报文的第一链路故障时,修改所述流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文,其中,所述流表中各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。
上述SDN交换机及SDN控制器中提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,简称EISA)总线等。通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述SDN交换机及SDN控制器与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本实施例中,SDN交换机及SDN控制器的处理器通过读取存储器中存储的计算机程序,并通过运行计算机程序,能够实现:SDN交换机通过接收SDN控制器下发的流表,监测SDN交换机自身与目的设备之间的多条链路的链路状态,在当前用于转发报文的第一链路故障时,直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的自动切换。在链路发生故障时,SDN交换机可以直接对所存储的流表中流表项的优先级进行修改,而无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,可实现链路的快速自动切换,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
相应于上述实施例所提供的链路切换方法,本发明实施例提供了一种可读存储介质,存储于SDN控制器,用于存储计算机程序,所述计算机程序被处理器执行时,实现如下步骤:
获取SDN网络的拓扑信息、所述SDN网络中SDN交换机的设备信息及所述SDN交换机与目的设备之间的链路属性;
根据所述拓扑信息、所述设备信息及所述链路属性,确定所述SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数;
生成流表并下发至各SDN交换机,以使所述SDN交换机在当前用于转发报文的第一链路故障时,修改所述流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文,其中,所述流表中各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。
本实施例中,存储于SDN交换机的可读存储介质及存储于SDN控制器的可读存储介质存储有在运行时执行本申请实施例所提供的链路切换方法的应用程序,因此能够实现:SDN交换机通过接收SDN控制器下发的流表,监测SDN交换机自身与目的设备之间的多条链路的链路状态,在当前用于转发报文的第一链路故障时,直接通过修改本地存储的流表中第一链路对应的流表项的优先级,实现链路的自动切换。在链路发生故障时,SDN交换机可以直接对所存储的流表中流表项的优先级进行修改,而无需等待SDN控制器重新下发流表,减少了SDN控制器与SDN交换机之间数据传输的数据量,可实现链路的快速自动切换,从而减小了报文在转发过程中的丢包率,提高了报文转发的成功率。
对于SDN交换机、存储于SDN交换机的可读存储介质、SDN控制器以及存储于SDN控制器的可读存储介质实施例而言,由于其所涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种链路切换方法,其特征在于,应用于软件定义网络SDN交换机,所述方法包括:
接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
监测所述SDN交换机自身与所述目的设备之间的多条链路;
在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
2.根据权利要求1所述的方法,其特征在于,在接收并存储SDN控制器下发的流表之后,所述方法还包括:
记录各链路对应的初始优先级;
所述在修改后的流表中,选择优先级最高的流表项对应的链路转发报文之后,所述方法还包括:
在所述第一链路的故障恢复时,修改所述流表中与所述第一链路对应的流表项的优先级为所述初始优先级。
3.一种链路切换方法,其特征在于,应用于SDN控制器,所述方法包括:
获取SDN网络的拓扑信息、所述SDN网络中SDN交换机的设备信息及所述SDN交换机与目的设备之间的链路属性;
根据所述拓扑信息、所述设备信息及所述链路属性,确定所述SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数;
生成流表并下发至各SDN交换机,以使所述SDN交换机在当前用于转发报文的第一链路故障时,修改所述流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文,其中,所述流表中各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。
4.一种链路切换装置,其特征在于,应用于SDN交换机,所述装置包括:
接收模块,用于接收并存储SDN控制器下发的流表,其中,所述流表中包括所述SDN交换机自身与目的设备之间的各链路所对应的流表项的优先级,所述优先级与各链路的链路质量参数成正比关系;
监测模块,用于监测所述SDN交换机自身与所述目的设备之间的多条链路;
修改模块,用于在当前用于转发报文的第一链路故障时,修改所述SDN交换机本地存储的流表中与所述第一链路对应的流表项的优先级,其中,修改后的流表中与所述第一链路对应的流表项的优先级低于其他链路对应的流表项的优先级;
选择模块,用于在修改后的流表中,选择优先级最高的流表项对应的链路转发报文。
5.根据权利要求4所述的装置,其特征在于,所述装置还包括:
记录模块,用于记录各链路对应的初始优先级;
所述修改模块,还用于:在所述第一链路的故障恢复时,修改所述流表中与所述第一链路对应的流表项的优先级为所述初始优先级。
6.一种链路切换装置,其特征在于,应用于SDN控制器,所述装置包括:
获取模块,用于获取SDN网络的拓扑信息、所述SDN网络中SDN交换机的设备信息及所述SDN交换机与目的设备之间的链路属性;
确定模块,用于根据所述拓扑信息、所述设备信息及所述链路属性,确定所述SDN网络中各SDN交换机与目的设备之间各链路的链路质量参数;
下发模块,用于生成流表并下发至各SDN交换机,以使所述SDN交换机在当前用于转发报文的第一链路故障时,修改所述流表中与所述第一链路对应的流表项的优先级,在修改后的流表中,选择优先级最高的流表项对应的链路转发报文,其中,所述流表中各链路所对应的流表项的优先级与各链路的链路质量参数成正比关系。
7.一种SDN交换机,其特征在于,所述SDN交换机包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1或2所述的方法步骤。
8.一种可读存储介质,其特征在于,存储于SDN交换机,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1或2所述的方法步骤。
9.一种SDN控制器,其特征在于,所述SDN控制器包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求3所述的方法步骤。
10.一种可读存储介质,其特征在于,存储于SDN控制器,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求3所述的方法步骤。
CN201710451686.XA 2017-06-15 2017-06-15 链路切换方法、装置、sdn交换机、控制器及存储介质 Pending CN107547249A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710451686.XA CN107547249A (zh) 2017-06-15 2017-06-15 链路切换方法、装置、sdn交换机、控制器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710451686.XA CN107547249A (zh) 2017-06-15 2017-06-15 链路切换方法、装置、sdn交换机、控制器及存储介质

Publications (1)

Publication Number Publication Date
CN107547249A true CN107547249A (zh) 2018-01-05

Family

ID=60970847

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710451686.XA Pending CN107547249A (zh) 2017-06-15 2017-06-15 链路切换方法、装置、sdn交换机、控制器及存储介质

Country Status (1)

Country Link
CN (1) CN107547249A (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108322836A (zh) * 2018-01-24 2018-07-24 北京奇艺世纪科技有限公司 一种数据传输的方法及装置
CN108566298A (zh) * 2018-04-12 2018-09-21 联想(北京)有限公司 一种链路故障处理方法、交换机和链路故障处理系统
CN109117111A (zh) * 2018-07-27 2019-01-01 Oppo广东移动通信有限公司 传输链路切换控制方法及相关产品
CN109361545A (zh) * 2018-11-01 2019-02-19 郑州云海信息技术有限公司 一种软件定义网络sdn控制器控制链路切换的方法及装置
CN109995657A (zh) * 2019-03-19 2019-07-09 新华三技术有限公司合肥分公司 一种流量转发的方法及装置
CN110808918A (zh) * 2019-09-24 2020-02-18 军事科学院系统工程研究院后勤科学与技术研究所 一种业务交换处理方法、系统、设备及其存储介质
CN110995336A (zh) * 2019-11-15 2020-04-10 武汉光迅信息技术有限公司 一种olp传输链路的切换方法、装置、存储介质及olp
CN111275517A (zh) * 2020-01-14 2020-06-12 拉扎斯网络科技(上海)有限公司 链路信息的显示方法及装置、存储介质、终端
CN112104576A (zh) * 2020-08-14 2020-12-18 中国科学院声学研究所 一种sdn交换机的常驻流表存储与校准方法及系统
CN112491700A (zh) * 2020-12-14 2021-03-12 成都颜创启新信息技术有限公司 网络路径调整方法、系统、装置、电子设备及存储介质
CN112543144A (zh) * 2019-09-20 2021-03-23 北京华为数字技术有限公司 一种链路属性确定方法、路由计算方法及装置
CN113630178A (zh) * 2021-08-18 2021-11-09 新华三信息安全技术有限公司 一种报文传输方法及装置
CN113824595A (zh) * 2021-09-29 2021-12-21 联想(北京)有限公司 链路切换控制方法、装置和网关设备
CN114285782A (zh) * 2021-12-22 2022-04-05 深圳电器公司 数据处理方法及相关装置
CN114401184A (zh) * 2021-12-07 2022-04-26 成都市联洲国际技术有限公司 一种网络通信设备及其方法、电子设备及介质
US20220311703A1 (en) * 2019-08-09 2022-09-29 Telefonaktiebolaget Lm Ericsson (Publ) Controller watch port for robust software defined networking (sdn) system operation
CN115277565A (zh) * 2022-08-09 2022-11-01 北京有竹居网络技术有限公司 流量通路的调度方法、装置、电子设备及存储介质
CN115348153A (zh) * 2022-08-15 2022-11-15 中国联合网络通信集团有限公司 转发设备的控制方法、装置、设备及存储介质
CN116455729A (zh) * 2023-03-07 2023-07-18 中国石油大学(华东) 一种基于链路质量评估模型的故障链路检测与恢复方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101291276A (zh) * 2008-06-18 2008-10-22 中国电信股份有限公司 一种基于业务的隧道保护方法和系统
CN104301146A (zh) * 2014-10-23 2015-01-21 杭州华三通信技术有限公司 软件定义网络中的链路切换方法和装置
CN104426855A (zh) * 2013-08-23 2015-03-18 华为技术有限公司 一种流量切换的方法、设备及系统
WO2017050268A1 (zh) * 2015-09-24 2017-03-30 新华三技术有限公司 路径倒换

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101291276A (zh) * 2008-06-18 2008-10-22 中国电信股份有限公司 一种基于业务的隧道保护方法和系统
CN104426855A (zh) * 2013-08-23 2015-03-18 华为技术有限公司 一种流量切换的方法、设备及系统
CN104301146A (zh) * 2014-10-23 2015-01-21 杭州华三通信技术有限公司 软件定义网络中的链路切换方法和装置
WO2017050268A1 (zh) * 2015-09-24 2017-03-30 新华三技术有限公司 路径倒换

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108322836A (zh) * 2018-01-24 2018-07-24 北京奇艺世纪科技有限公司 一种数据传输的方法及装置
CN108566298A (zh) * 2018-04-12 2018-09-21 联想(北京)有限公司 一种链路故障处理方法、交换机和链路故障处理系统
CN109117111A (zh) * 2018-07-27 2019-01-01 Oppo广东移动通信有限公司 传输链路切换控制方法及相关产品
CN109117111B (zh) * 2018-07-27 2021-06-15 Oppo广东移动通信有限公司 传输链路切换控制方法及相关产品
CN109361545A (zh) * 2018-11-01 2019-02-19 郑州云海信息技术有限公司 一种软件定义网络sdn控制器控制链路切换的方法及装置
CN109995657A (zh) * 2019-03-19 2019-07-09 新华三技术有限公司合肥分公司 一种流量转发的方法及装置
CN109995657B (zh) * 2019-03-19 2021-06-08 新华三技术有限公司合肥分公司 一种流量转发的方法及装置
US20220311703A1 (en) * 2019-08-09 2022-09-29 Telefonaktiebolaget Lm Ericsson (Publ) Controller watch port for robust software defined networking (sdn) system operation
CN112543144A (zh) * 2019-09-20 2021-03-23 北京华为数字技术有限公司 一种链路属性确定方法、路由计算方法及装置
CN110808918A (zh) * 2019-09-24 2020-02-18 军事科学院系统工程研究院后勤科学与技术研究所 一种业务交换处理方法、系统、设备及其存储介质
CN110995336A (zh) * 2019-11-15 2020-04-10 武汉光迅信息技术有限公司 一种olp传输链路的切换方法、装置、存储介质及olp
CN111275517A (zh) * 2020-01-14 2020-06-12 拉扎斯网络科技(上海)有限公司 链路信息的显示方法及装置、存储介质、终端
CN112104576A (zh) * 2020-08-14 2020-12-18 中国科学院声学研究所 一种sdn交换机的常驻流表存储与校准方法及系统
CN112104576B (zh) * 2020-08-14 2022-02-22 中国科学院声学研究所 一种sdn交换机的常驻流表存储与校准方法
CN112491700A (zh) * 2020-12-14 2021-03-12 成都颜创启新信息技术有限公司 网络路径调整方法、系统、装置、电子设备及存储介质
CN113630178A (zh) * 2021-08-18 2021-11-09 新华三信息安全技术有限公司 一种报文传输方法及装置
CN113824595A (zh) * 2021-09-29 2021-12-21 联想(北京)有限公司 链路切换控制方法、装置和网关设备
CN114401184B (zh) * 2021-12-07 2023-12-22 成都市联洲国际技术有限公司 一种网络通信设备及其方法、电子设备及介质
CN114401184A (zh) * 2021-12-07 2022-04-26 成都市联洲国际技术有限公司 一种网络通信设备及其方法、电子设备及介质
CN114285782A (zh) * 2021-12-22 2022-04-05 深圳电器公司 数据处理方法及相关装置
CN115277565A (zh) * 2022-08-09 2022-11-01 北京有竹居网络技术有限公司 流量通路的调度方法、装置、电子设备及存储介质
CN115348153A (zh) * 2022-08-15 2022-11-15 中国联合网络通信集团有限公司 转发设备的控制方法、装置、设备及存储介质
CN116455729A (zh) * 2023-03-07 2023-07-18 中国石油大学(华东) 一种基于链路质量评估模型的故障链路检测与恢复方法

Similar Documents

Publication Publication Date Title
CN107547249A (zh) 链路切换方法、装置、sdn交换机、控制器及存储介质
CN102868553B (zh) 故障定位方法及相关设备
Su et al. Redundant rule detection for software-defined networking
CN102415059B (zh) 总线控制装置
CN106605392A (zh) 用于使用控制器在网络上进行操作的系统和方法
CN105281945B (zh) 基于数据流的确定性网络完整性故障检测方法
US10528682B2 (en) Automatic performance characterization of a network-on-chip (NOC) interconnect
CN100596357C (zh) 一种基于以太网和串行通信技术的数据转发装置及系统
CN113938407B (zh) 基于带内网络遥测系统的数据中心网络的故障检测方法及装置
CN106301952A (zh) 一种sdn数据平面链路备份方法及装置
CN105379201B (zh) 路径切换的方法、控制器和故障切换交换机
CN103036787B (zh) 一种网络路由收敛处理方法和装置
CN109495322A (zh) 网络故障定位方法、相关设备及计算机存储介质
CN101299685B (zh) 交换网测试方法和系统以及测试发起模块
CN112564964B (zh) 一种基于软件定义网络的故障链路检测与恢复方法
CN108306777A (zh) 基于sdn控制器的虚拟网关主备切换方法及装置
CN103841015A (zh) 网络系统及路由方法
CN102598601B (zh) 节点、用于节点的监测管理方法、以及使用节点的传送系统、输入电路和输出电路
CN102984058B (zh) 基于开放流的网络通信方法、控制器和交换机
CN102629912A (zh) 面向无缓冲片上网络的容错偏转路由方法及装置
EP3183587A1 (en) Diagnostic routing system and method for a link access group
CN109889411A (zh) 一种数据传输的方法及装置
CN110071843B (zh) 一种基于流路径分析的故障定位方法及装置
CN110022236A (zh) 一种报文转发方法及装置
CN106506265B (zh) 检测fpga芯片挂死的方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180105