控制器状态处理方法及装置制造方法及图纸

技术编号:17737313 阅读:73 留言:0更新日期:2018-04-18 13:23
本发明专利技术实施例涉及一种控制器状态处理方法及装置,该方法包括:判断是否接收到与所述第一控制器连接的交换机发送的控制器状态消息,所述控制器状态消息用于表征与所述交换机连接的全部控制器的当前工作状态;如果接收到所述控制器状态消息,则根据所述控制器状态消息,获取与所述交换机连接的第二控制器的当前工作状态;根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式。由此,可以避免同一个区域中同时存在两个主控制器,导致对交换机的控制出现混乱的问题,即能够避免区域内发生脑裂情形。

Controller state processing method and device

【技术实现步骤摘要】
控制器状态处理方法及装置
本专利技术涉及网络管理
,尤其涉及一种控制器状态处理方法及装置。
技术介绍
虚拟应用融合架构控制器(英文:VirtualConvergedFrameworkController,简称:VCFC)的区域(Region)是一种基于Openflow协议的高可用性(英文:HighAvailability,简称:HA)集群技术。每个区域中包括一个主控制器(对应Openflow角色为主(Master)的控制器)和一个备控制器(对应Openflow角色为备(Slave)的控制器)。上层应用通过主控制器向该区域内的Openflow交换机下发Openflow配置,Openflow交换机通过Openflow配置实现对报文转发处理。当区域内的主控制器故障或者失去与交换机的Openflow连接,而无法继续再对区域内的交换机进行管理时,区域内的备控制器转换为主控制器,并接管区域内的交换机。图1是现有技术中的实现区域的高可用性的示意图。如图1所示,区域内的主控制器和备控制器通过互相发送定时的心跳消息来检测对方是否存在,并且备控制器根据彼此之间是否成功发送心跳消息来控制自身角色的转换。例如,若备控制器检测到自身已无法与主控制器发送心跳消息,则备控制器确定主控制器离开或故障,主控制器失去对与其连接的交换机的管理,备控制器将自身转换为主控制器,接管区域中的交换机,从而实现区域的高可用性。然而,在主控制器和备控制器这两者都存在于区域中、但是这两者之间的链路断开的情况下,主控制器和备控制器之间无法成功发送心跳消息。如果备控制器根据彼此之间是否成功发送心跳消息来控制自身角色的转换,则备控制器会错误地将自身转换为主控制器,使得同一个区域中同时存在两个主控制器,导致该区域内对交换机的控制出现混乱,即脑裂(brain-split)情形。
技术实现思路
有鉴于此,本专利技术提出了一种控制器状态处理方法及装置,解决了区域内同时出现两个主控制器,导致对交换机的控制出现混乱的问题。根据本专利技术的第一方面,提供了一种控制器状态处理方法,应用于第一控制器,该方法包括:判断是否接收到与所述第一控制器连接的交换机发送的控制器状态消息,所述控制器状态消息用于表征与所述交换机连接的全部控制器的当前工作状态;如果接收到所述控制器状态消息,则根据所述控制器状态消息,获取与所述交换机连接的第二控制器的当前工作状态;根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式。结合第一方面,在第一种可能的实现方式中,所述判断是否接收到与所述第一控制器连接的交换机发送的控制器状态消息之前,所述方法还包括:设置所述第一控制器的当前工作模式;向所述交换机周期性的发送配置管理消息,所述配置管理消息用于获取所述控制器状态消息。结合第一方面,在第二种可能的实现方式中,所述根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式,包括:当所述第二控制器的当前工作状态为激活状态,且所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,将所述第一控制器的当前工作模式转换为备控制器;当所述第二控制器的当前工作状态为所述激活状态,且所述第一控制器的当前工作模式为预设的备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第二控制器的当前工作状态为待机状态,且所述第一控制器的当前工作模式为预设的备控制器时,将所述第一控制器的当前工作模式转换为主控制器;当所述第二控制器的当前工作状态为待机状态,且所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,维持所述第一控制器的当前工作模式为主控制器。结合第一方面,在第三种可能的实现方式中,如果未接收到所述控制器状态消息,所述方法还包括:当所述第一控制器的当前工作模式为预设的备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,将所述第一控制器的当前工作模式转换为备控制器;当所述第一控制器的当前工作模式已由预设的主控制器转换为备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第一控制器的当前工作模式为预设的主控制器时,将所述第一控制器的当前工作模式转换为备控制器。结合第一方面,在第四种可能的实现方式中,所述根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式,包括:当所述第一控制器的当前工作模式已由预设的主控制器转换为备控制器时,将所述第一控制器的当前工作模式转换为主控制器;当所述第一控制器的当前工作模式为预设的主控制器时,维持所述第一控制器的当前工作模式为主控制器。根据本专利技术的第二方面,提供了一种控制器状态处理装置,应用于第一控制器,该装置包括:判断模块,用于判断是否接收到与所述第一控制器连接的交换机发送的控制器状态消息,所述控制器状态消息用于表征与所述交换机连接的全部控制器的当前工作状态;获取模块,用于如果接收到所述控制器状态消息,则根据所述控制器状态消息,获取与所述交换机连接的第二控制器的当前工作状态;处理模块,用于根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式。结合第二方面,在第一种可能的实现方式中,所述装置还包括:设置模块,用于设置所述第一控制器的当前工作模式;发送模块,用于向所述交换机周期性的发送配置管理消息,所述配置管理消息用于获取所述控制器状态消息。结合第二方面,在第二种可能的实现方式中,所述处理模块具体用于,当所述第二控制器的当前工作状态为激活状态,且所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,将所述第一控制器的当前工作模式转换为备控制器;当所述第二控制器的当前工作状态为所述激活状态,且所述第一控制器的当前工作模式为预设的备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第二控制器的当前工作状态为待机状态,且所述第一控制器的当前工作模式为预设的备控制器时,将所述第一控制器的当前工作模式转换为主控制器;当所述第二控制器的当前工作状态为待机状态,且所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,维持所述第一控制器的当前工作模式为主控制器。结合第二方面,在第三种可能的实现方式中,如果未接收到所述控制器状态消息,所述处理模块还用于:当所述第一控制器的当前工作模式为预设的备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,将所述第一控制器的当前工作模式转换为备控制器;当所述第一控制器的当前工作模式已由预设的主控制器转换为备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第一控制器的当前工作模式为预设的主控制器时,将所述第一控制器的当前工作模式转换为备控制器。结合第二方面,在第四种可能的实现方式中,所述处理模块具体用于,当所述第一控制器的当前工作模式已由预设的主控制器转换为备控制器时,将所述第一控制器的当前工作模式转换为主控制器;当所述第一控制器的当前工作模式为预设的主控制器时,维持所述第一控制器本文档来自技高网
...
控制器状态处理方法及装置

【技术保护点】
一种控制器状态处理方法,应用于第一控制器,其特征在于,所述方法包括:判断是否接收到与所述第一控制器连接的交换机发送的控制器状态消息,所述控制器状态消息用于表征与所述交换机连接的全部控制器的当前工作状态;如果接收到所述控制器状态消息,则根据所述控制器状态消息,获取与所述交换机连接的第二控制器的当前工作状态;根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式。

【技术特征摘要】
1.一种控制器状态处理方法,应用于第一控制器,其特征在于,所述方法包括:判断是否接收到与所述第一控制器连接的交换机发送的控制器状态消息,所述控制器状态消息用于表征与所述交换机连接的全部控制器的当前工作状态;如果接收到所述控制器状态消息,则根据所述控制器状态消息,获取与所述交换机连接的第二控制器的当前工作状态;根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式。2.根据权利要求1所述的方法,其特征在于,所述判断是否接收到与所述第一控制器连接的交换机发送的控制器状态消息之前,所述方法还包括:设置所述第一控制器的当前工作模式;向所述交换机周期性的发送配置管理消息,所述配置管理消息用于获取所述控制器状态消息。3.根据权利要求1所述的方法,其特征在于,所述根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式,包括:当所述第二控制器的当前工作状态为激活状态,且所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,将所述第一控制器的当前工作模式转换为备控制器;当所述第二控制器的当前工作状态为所述激活状态,且所述第一控制器的当前工作模式为预设的备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第二控制器的当前工作状态为待机状态,且所述第一控制器的当前工作模式为预设的备控制器时,将所述第一控制器的当前工作模式转换为主控制器;当所述第二控制器的当前工作状态为待机状态,且所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,维持所述第一控制器的当前工作模式为主控制器。4.根据权利要求1所述的方法,其特征在于,如果未接收到所述控制器状态消息,所述方法还包括:当所述第一控制器的当前工作模式为预设的备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第一控制器的当前工作模式已由预设的备控制器转换为主控制器时,将所述第一控制器的当前工作模式转换为备控制器;当所述第一控制器的当前工作模式已由预设的主控制器转换为备控制器时,维持所述第一控制器的当前工作模式为备控制器;当所述第一控制器的当前工作模式为预设的主控制器时,将所述第一控制器的当前工作模式转换为备控制器。5.根据权利要求1所述的方法,其特征在于,所述根据所述第二控制器的当前工作状态和所述第一控制器的当前工作模式,调整或维持所述第一控制器的当前工作模式,包括:当所述第一控制器的当前工作模式已由预设的主控制器转换为备控制器时,将所述第一控制器的当前工作模式转换为主控制器;...

【专利技术属性】
技术研发人员:王汉
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

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

1