一种软件定义网络SDN控制器控制链路切换的方法及装置制造方法及图纸

技术编号:20394637 阅读:23 留言:0更新日期:2019-02-20 04:50
本发明专利技术实施例公开了一种SDN控制器控制链路切换的方法及装置,所述方法包括:周期性地探测第一虚拟交换机和第二虚拟交换机之间的所有链路,判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障;当判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路发生故障时,向所述第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。根据本申请提供的方法,一旦发现链路发生故障,可以立即进行链路切换,从而实现低延迟链路切换,保证虚拟网络链路的可靠性和稳定性。

【技术实现步骤摘要】
一种软件定义网络SDN控制器控制链路切换的方法及装置
本专利技术涉及虚拟化网络技术,尤指一种软件定义网络SDN控制器控制链路切换的方法及装置。
技术介绍
随着云计算、SDN、虚拟化等理念和技术的不断成熟,云计算生产环境部署的规模也在不断增长,如何保证虚拟机交换机之间的网络链路可靠性的同时提高网络的稳定性成为亟待解决的问题。
技术实现思路
针对上述技术问题,本申请实施例提供了一种软件定义网络SDN控制器控制链路切换的方法及装置,一旦发现链路发生故障,可以立即进行链路切换,实现低延迟链路切换,保证虚拟网络链路的可靠性和稳定性。根据本申请的一个方面,提供了一种软件定义网络SDN控制器控制链路切换的方法,包括:周期性地探测第一虚拟交换机和第二虚拟交换机之间的链路;判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障;当判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路发生故障时,向所述第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。可选地,所述方法还包括:通过所述SDN控制器利用链路层发现协议LLDP对所述第一虚拟交换机和第二虚拟交换机之间的链路进行探测,并将探测到的链路记录在链路发现表中。可选地,所述方法还包括:当所述未发生故障链路包括多条时,根据链路状态参数选一条未发生故障的链路作为第二链路。可选地,其中所述判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障,包括:通过所述SDN控制器周期性地利用Packet_out消息向所述第一虚拟交换机发送LLDP数据包,命令所述第一虚拟交换机将所述LLDP数据包通过所述第一链路发送给所述第二虚拟交换机;接收所述第二虚拟交换机返回的Packet_in消息;在预设时间内没有接收所述第二虚拟交换机发回的Packet_in消息时,判定所述第一虚拟交换机和第二虚拟交换机之间的第一链路故障。根据本申请的另一方面,还提供了一种软件定义网络SDN控制器控制链路切换的装置,包括:探测模块,用于周期性地探测第一虚拟交换机和第二虚拟交换机之间的链路;判断模块,用于判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障;切换模块,用于当判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路发生故障时,向所述第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。可选地,所述探测模块具体用于:通过所述SDN控制器利用链路层发现协议LLDP对所述第一虚拟交换机和第二虚拟交换机之间的链路进行探测,并将探测到的链路记录在链路发现表中。可选地,所述切换模块还用于:当所述未发生故障链路包括多条时,根据链路状态参数选一条未发生故障的链路作为第二链路。可选地,所述判断模块具体用于:通过所述SDN控制器周期性地利用Packet_out消息向所述第一虚拟交换机发送LLDP数据包,命令所述第一虚拟交换机将所述LLDP数据包通过所述第一链路发送给所述第二虚拟交换机;接收所述第二虚拟交换机返回的Packet_in消息;在预设时间内没有接收所述第二虚拟交换机发回的Packet_in消息时,判定所述第一虚拟交换机和第二虚拟交换机之间的第一链路故障。根据本申请的又一个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项方法的步骤。根据本申请的又一个方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项方法的步骤。本申请提供的SDN控制器控制链路切换的方法及装置,周期性地探测第一虚拟交换机和第二虚拟交换机之间的所有链路,可以收集整网链路设备信息;利用Packet_out消息向第一虚拟交换机发送LLDP数据包,命令第一虚拟交换机将所述LLDP数据包通过第一链路发送给第二虚拟交换机;如果在预设时间内没有接收所述第二虚拟交换机发回的Packet_in消息时,则可以判定所述第一虚拟交换机和第二虚拟交换机之间的第一链路出现故障,可以根据链路状态参数选一条未发生故障的链路作为第二链路,向第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。这样,一旦发现当前链路发生故障,可以立即进行链路切换,实现低延迟链路切换,保证虚拟机之间的链路的可靠性和稳定性。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。附图说明附图用来提供对本专利技术技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本专利技术的技术方案,并不构成对本专利技术技术方案的限制。图1为本申请第一实施例的SND控制器控制链路切换的方法示意图;图2为本申请第二实施例的SND控制器控制链路切换的装置示意图;图3为本申请的一种示范性实施例示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下文中将结合附图对本专利技术的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。如图1所示,本申请的第一实施例提供了一种软件定义网络SDN控制器控制链路切换的方法,包括:步骤S02:周期性地探测第一虚拟交换机和第二虚拟交换机之间的链路;步骤S04:判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障;步骤S06:当判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路发生故障时,向所述第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。本申请提供的SDN控制器控制链路切换的方法,周期性地探测第一虚拟交换机和第二虚拟交换机之间的所有链路,判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障;当判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路发生故障时,向所述第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。一旦发现链路发生故障,可以立即进行链路切换,从而实现低延迟链路切换的效果,保证虚拟网络链路的可靠性和稳定性。可选地,所述方法还包括:通过所述SDN控制器利用链路层发现协议LLDP对所述第一虚拟交换机和第二虚拟交换机之间的链路进行探测,并将探测到的链路记录在链路发现表中。本申请提供实施例,通过SDN控制器利用链路层发现协议LLDP对所述第一虚拟交换机和第二虚拟交换机之间的链路进行探测,将探测到的第一虚拟交换机和第二虚拟交换机之间的所有链路记录在链路发现表中,从而可以为当前链路提供备用链路。可选地,所述方法还包括:当所述未发生故障链路包括多条时本文档来自技高网...

【技术保护点】
1.一种软件定义网络SDN控制器控制链路切换的方法,其特征在于,包括:周期性地探测第一虚拟交换机和第二虚拟交换机之间的链路;判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障;当判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路发生故障时,向所述第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。

【技术特征摘要】
1.一种软件定义网络SDN控制器控制链路切换的方法,其特征在于,包括:周期性地探测第一虚拟交换机和第二虚拟交换机之间的链路;判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障;当判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路发生故障时,向所述第一虚拟机交换机下发切换链路的Openflow流表,使所述第一虚拟机交换机通过未发生故障的第二链路向第二虚拟交换机发送数据。2.根据权利要求1所述的控制链路切换的方法,其特征在于,还包括:通过所述SDN控制器利用链路层发现协议LLDP对所述第一虚拟交换机和第二虚拟交换机之间的链路进行探测,并将探测到的链路记录在链路发现表中。3.根据权利要求1所述的控制链路切换的方法,其特征在于,包括:当所述未发生故障链路包括多条时,根据链路状态参数选一条未发生故障的链路作为第二链路。4.根据权利要求1所述的控制链路切换的方法,其特征在于,所述判断所述第一虚拟交换机和所述第二虚拟交换机之间的第一链路是否发生故障,包括:通过所述SDN控制器周期性地利用Packet_out消息向所述第一虚拟交换机发送LLDP数据包,命令所述第一虚拟交换机将所述LLDP数据包通过所述第一链路发送给所述第二虚拟交换机;接收所述第二虚拟交换机返回的Packet_in消息;在预设时间内没有接收所述第二虚拟交换机发回的Packet_in消息时,判定所述第一虚拟交换机和第二虚拟交换机之间的第一链路故障。5.一种软件定义网络SDN控制器控制链路切换的装置,其特征在于,包括:探测模块,用于周期性地探测第一虚拟交换机和第二虚拟交换机之间的链路;判断模块,用...

【专利技术属性】
技术研发人员:王培辉蒋晨晓
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1