一种sdn集群中控制器的状态检测方法和装置制造方法

文档序号:7815156阅读:204来源:国知局
一种sdn集群中控制器的状态检测方法和装置制造方法
【专利摘要】本发明提供了一种SDN集群中控制器的状态检测方法,技术方案为:对各集群接入交换机上连接控制器的端口的状态进行检测,根据检测结果确定该端口连接的控制器的工作状态。本发明能够及时感知控制器的工作状态。
【专利说明】一种SDN集群中控制器的状态检测方法和装置

【技术领域】
[0001]本发明涉及通信【技术领域】,特别涉及一种软件定义网络(Soft Define Network,SDN)集群中控制器的状态检测方法和装置。

【背景技术】
[0002]SDN是一种新型网络创新架构,其核心思想是将网络设备的控制层面与转发层面分离,以实现对网络流量的灵活控制,为核心网络及应用的创新提供良好的平台。
[0003]SDN集群中包括多个控制器和交换机,交换机和控制器之间建立OpenFlow连接,交换机属性和主机信息在集群内同步。SDN集群中的交换机分为两种,一种用于完成SDN网络的数据平面功能,称为OpenFlow交换机,另一种用于实现控制器之间的互联和通信,称为集群接入交换机。
[0004]SDN集群中控制器和交换机之间建立OpenFlow连接,每个控制器被分配执行部分功能并维护网络中的部分或者全部交换机,当前的工作状态直接影响SDN集群的整体工作性能。当某个控制器工作异常时,SDN集群必须及时做出调整,将其维护的交换机迁移到其他控制器上。
[0005]SDN集群内控制器状态检测主要是通过周期性发送ping报文或者其他ip检测报文来实现,具体为:主控制器周期性发送Ping报文或者其他ip检测报文到各备控制器,如果在规定的检测时间内没有收到某一备控制器的回应报文,则认为该备控制器故障,此时会在SDN集群内通知该故障事件,并发起业务切换。
[0006]主控制器通过周期性发送ping报文或者其他ip检测报文对各备控制器进行状态检测的方法,会因网络阻塞或备控制器处理压力过大无法及时回应等原因,存在一定延迟,无法及时感知控制器的工作状态变化。


【发明内容】

[0007]有鉴于此,本发明的目的在于提供一种SDN集群中控制器的状态检测方法和装置,能够及时感知控制器的工作状态。
[0008]为了达到上述目的,本发明提供了如下技术方案:
[0009]一种SDN集群中控制器的状态检测方法,SDN集群中的所有控制器通过集群接入交换机互联,该方法包括:
[0010]接收任一集群接入交换机在自身端口状态变化时上送的端口状态消息;
[0011]在已建立的端口信息和该端口连接的控制器的设备信息的关联关系中,查找所述端口状态消息中携带的端口信息关联的控制器的设备信息,如果查找到,则根据所述端口状态消息中携带的状态信息确定该控制器的工作状态,否则,若该端口连接的是一控制器,则建立所述端口状态消息中携带的端口信息与该端口连接的控制器的设备信息的关联关系。
[0012]一种SDN集群中的控制器,SDN集群中的所有控制器通过集群接入交换机互联,该控制器包括:接收单元、查找单元,处理单元;
[0013]所述接收单元,用于接收任一集群接入交换机在自身端口状态变化时上送的端口状态消息;
[0014]查找单元,用于在已建立的端口信息和该端口连接的控制器的设备信息的关联关系中,查找所述端口状态消息中携带的端口信息关联的控制器的设备信息;
[0015]处理单元,用于如果查找单元查找到所述端口状态消息中携带的端口信息关联的控制器的设备信息,则根据所述端口状态消息中携带的状态信息确定该控制器的工作状态,否则,若该端口连接的是一控制器,则建立所述端口状态消息中携带的端口信息与该端口连接的控制器的设备信息的关联关系。
[0016]由上面的技术方案可知,本发明中,通过对各集群接入交换机上连接控制器的端口的状态进行检测,根据检测结果确定各端口连接的控制器的工作状态。本发明不需要等待在主控制器和备控制器进行检测报文交互,只需根据各集群接入交换机上连接控制器的端口的状态就可以确定端口连接的控制器的状态,可以达到及时感知控制器的工作状态的目的。

【专利附图】

【附图说明】
[0017]图1是现有技术SDN集群拓扑示意图;
[0018]图2是本发明实施例SDN集群中控制器的状态检测方法流程图;
[0019]图3是本发明实施例SDN集群中的控制器300的结构示意图。

【具体实施方式】
[0020]为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
[0021]当一个端口工作(Up)时,其它设备可以通过该端口与该端口连接的设备进行通信;当一个端口故障(Down)或阻塞(Block)时,任何设备都无法通过该端口与该端口连接的设备进行通信。
[0022]因此,对于SDN集群中的任一控制器来说,如果某一集群接入交换机与该控制器相连,则该集群接入交换机上连接该控制器的端口 Up时,SDN网络中的其它设备可以通过该端口与该控制器进行通信,该集群接入交换机上连接该控制器的端口 Down或Block时,SDN网络中的其它设备不能通过该端口与该控制器进行通信。
[0023]例如,在图1所示的SDN集群拓扑示意图中,控制器1、控制器2、控制器3、控制器4通过集群接入交换机1和集群接入交换机2实现互联,假设集群接入交换机1上的端口 1直连到控制器1,端口 2直连到控制器2 ;集群接入交换机2上的端口 3直连到控制器3,端口 4直连到控制器4。当集群接入交换机1上的端口 1故障时,其它设备将无法与控制器1进行通信;当集群接入交换机1上的端口 2故障时,其它设备将无法与控制器2进行通信。当集群接入交换机2上的端口 3故障时,其它设备将无法与控制器3进行通信;当集群接入交换机2上的端口 4故障时,其它设备将无法与控制器4进行通信
[0024]可见,集群接入交换机上直连控制器的端口的状态可以决定该控制器是否可与外界通信,如果不能与外界通信,则表明该控制器无法正常工作,处于异常工作状态;如果可以与外界通信,则表明的该控制器能够正常工作,处于正常工作状态。也就是说根据集群接入交换机上连接控制器的端口的状态可以确定该控制器的工作状态。
[0025]基于上述原理,本发明中,每个集群接入交换机上连接控制器的端口状态发生变化时,上送端口状态消息给所有控制器;每个控制器根据端口状态消息就可以确定发生状态变化的端口,从而确定该端口连接的控制器的工作状态。
[0026]下面结合具体实施例进行说明。
[0027]参见图2,图2是本发明SDN集群中控制器的状态检测方法流程图,如图2所示,该方法主要包括以下步骤:
[0028]步骤201、当前控制器接收任一集群接入交换机在自身端口状态变化时上送的端口状态消息。
[0029]当前控制器为SDN集群中的任一控制器。
[0030]所述集群接入交换机为SDN集群中用于实现控制器之间的互联和通信的交换机。[0031 ] 集群接入交换机在自身的任一端口状态发生变化时,均需向SDN集群中的所有控制器发送端口状态消息。
[0032]端口状态消息中可以包括如下内容:端口信息、状态信息等。其中,端口信息包括端口所属设备的标识、端口号等信息;状态信息包括:Up、Down、Block三种状态。
[0033]步骤202、当前控制器在已建立的端口信息与该端口连接的控制器的设备信息的关联关系中,查找所述端口状态消息中携带的端口信息关联的控制器的设备信息,如果查找到,则根据所述端口状态消息中携带的状态信息确定该控制器的工作状态,如果未查找至IJ,则若该端口连接的是一控制器,则建立所述端口状态消息中携带的端口信息与该端口连接的控制器的设备信息的关联关系。
[0034]这里,设备信息可以包括如下内容:设备的地址信息和标识,其中的地址信息包括IP地址和/或MAC地址。
[0035]建立各集群接入交换机上连接控制器的各端口信息与该端口连接的控制器的设备信息的关联关系的方法有多种,例如,
[0036]预先在当前控制器中进行配置每个集群接入交换机上连接控制器的各端口信息与该端口连接的控制器的设备信息,从而建立其各集群接入交换机上连接控制器的各端口信息与该端口连接的控制器的设备信息的关联关系。
[0037]较佳地,可以利用端口状态消息建立起各集群接入交换机上连接控制器的各端口信息与该端口连接的控制器的设备信息的关联关系。
[0038]具体地,各集群接入交换机在发送的端口状态消息中携带该端口连接的设备信息,各集群接入交换机可以在通过自身的各端口与该端口连接的设备进行ARP通信时获取该端口连接的设备信息。同时每个控制器中预先配置SDN集群中其它各控制器的设备信肩、Ο
[0039]这样,当前控制器接收到一集群接入交换机在自身端口状态变化时上送的端口状态消息后,如果未能在已建立的端口信息与该端口连接的控制器的设备信息的关联关系中查找该端口状态消息中携带的端口信息关联的控制器的设备信息,则可以将该端口状态消息中携带的该端口连接的设备信息与预先配置的SDN集群中其它各控制器的设备信息进行比较来判断该端口连接的是否是一控制器,当该端口连接的设备信息是否是一个控制器的设备信息,如果是,则可确定该端口连接的是一控制器,这时,可以建立该端口信息和该端口连接的控制器的设备信息之间的关联关系,否则,可确定该端口连接的不是一控制器,此时,不需要建立该端口信息和该端口连接的设备信息之间的关联关系。当该端口连接的是一控制器,且建立了该端口信息与该端口连接的设备信息之间的关联关系后,当前控制器再接收到该集群接入交换机针对该端口的端口状态消息时,就可以直接查找到该关联关系,从而确定该端口连接的设备为一控制器,并根据该端口的状态确定该端口连接的控制器的工作状态。
[0040]在实际实现中,控制器初始并不区分SDN集群中各交换机是集群接入交换机或OpenFlow交换机,为了能够对集群接入交换机上送的端口状态信息进行上述步骤201、202的处理操作,可以通过接收SDN网络中各交换机发送的交换机描述报文,根据该交换机描述报文来确定交换机描述报文的发送者为集群接入交换机或OpenFlow交换机,从而只针对集群接入交换机上送的端口状态消息执行上述步骤201、202中的处理操作。
[0041 ] 控制器的工作状态包括正常状态和异常状态两种。
[0042]步骤202中,根据所述端口状态消息中携带的状态信息确定该端口连接的控制器的工作状态的方法具体可以为:当该状态信息为Up时,确定该控制器的工作状态为正常状态;当该状态信息为Down或Block时,确定该控制器的工作状态为异常状态。
[0043]当SDN集群中的某一控制器处于异常状态时,需要由SDN集群中的主控制器对该控制器的业务进行切换,也即将该控制器的业务切换到其它控制器。因此,当前控制器确定某一控制器的工作状态为异常后,需要判断自身是否是主控制器,如果是主控制器,则可以对该控制器的业务进行切换。
[0044]主控制器可以采用预先设置的业务切换模式对该控制器执行业务切换。所述业务切换模式至少包括以下几种:即时响应、延迟响应和定时响应,其中,
[0045]即时响应是指当检测确定一控制器的工作状态为异常状态时,立即对该控制器执行业务切换;
[0046]延迟响应是指当检测确定一控制器的工作状态为异常状态后,如果经过第一预设时间(具体值可根据需求设定)后该控制器的工作状态仍为异常状态,则对该控制器执行业务切换;
[0047]定时响应是指周期性判断当前记录的各控制器的工作状态,当判定一控制器的工作状态为异常状态时,对该控制器执行业务切换。
[0048]在实际应用中,通过集群接入交换机上连接控制器的端口的状态确定该控制器的工作状态,其实质是检测控制器的物理接入端口 /链路,但是控制器的物理接入端口 /链路正常,并不表明控制器本身正常,当控制器故障时,即使其物理接入端口 /链路正常,也无法正常工作,也即其工作状态仍然是异常的。
[0049]因此,仅通过集群接入交换机上连接控制器的端口的状态确定该控制器的工作状态并不能确定出所有控制器异常情况,为此,还需要在集群内主控制器和备控制器之间进行IP检测。
[0050]现有技术中,SDN集群中的主控制器会定时给每个备控制器发送检测报文,每个备控制器都会及时应答,当某个备控制器未及时应答时,主控制器会认为该备控制器处于异常状态,此时会向其它备控制器通告该被控制器的异常状态。该方式下,SDN集群内控制器规模比较大的情况下,主控制器需要和每个备控制器交互检测报文,检测任务较重。
[0051]本发明实施例中,对现有技术中主控制器和备控制器之间的IP检测方式进行优化。
[0052]主控制器可以在每个第一检测周期发送自身的保活live报文到其它各备控制器,备控制器如果在第二预设时间内接收到主控制器的live报文,则确定主控制器在线(也即主控制器的工作状态为正常状态),备控制器如果未在第二预设时间内接收到主控制器的live报文,则确定主控制器不在线(也即主控制器的工作状态为异常状态)。这里的第二预设时间应大于一个第一检测周期的时间长度,具体值可根据需求设定。主控制器工作状态异常的情况下,备控制器可以重新选举主控制器,此属于现有技术,不再赘述。
[0053]各备控制器可以每个第二检测向主控制器发送自身的live报文,主控制器如果在第三预设时间内接收到某一备控制器的live报文,则可以确定该备控制器的工作状态为正常状态;主控制器如果未在第三预设时间内接收到某一备控制器的live报文,则可以确定该备控制器的工作状态为异常状态,此时可以对该备控制器执行业务切换。
[0054]另外,当一个备控制器需要主动脱离SDN集群时,可以向主控制器发送离开(leave)报文。这样,主控制器接收到该备控制器的Leave报文,就可以确定该备控制器的工作状态为异常状态,此时可以对该备控制器执行业务。
[0055]需要说明的是,在现有技术中,控制器会与集群接入交换机建立OpenFlow连接,因此也会向集群接入交换机下发流表。
[0056]本发明实施例中,可以在集群接入交换机上进行特殊处理,使得控制器不需要下发流表到集群接入交换机,以避免在集群接入交换机执行数据转发工作。具体地,可以在集群接入交换机上进行设置,将其OpenFlow能力集可用流表数量设置为0,从而使得控制器不会下发流表到集群接入交换机,确保控制器间的数据传输走普通数据转发流程执行,不受流表限制;同时还禁止下发数据报文的Table Miss属性流表,从而不允许数据报文匹配默认流表而被上送到控制器,影响控制器的性能。另外,还需要允许集群接入交换机将用于链路发现的LLDP/BDDP报文上送到控制器,以使控制器能够发现SDN集群拓扑;SDN集群内每个控制器都会独立的发现交换机拓扑,且每个控制器针对集群接入交换机的拓扑不作同步,收到集群内其他控制器发出的LLDP报文时丢弃之,确保每个控制器独立发现拓扑,以避免控制器之间的拓扑同步引起的拓扑混乱。
[0057]以上对本发明实施例SDN集群中控制器的状态检测方法进行了详细说明,本发明还提供了一种SDN集群中的控制器,以下结合图3进行详细说明。
[0058]参见图3,图3是本发明实施例SDN集群中的控制器300的结构示意图,如图3所示,该控制器300包括:接收单元301、查找单元302,处理单元303 ;其中,
[0059]接收单元301,用于接收任一集群接入交换机在自身端口状态变化时上送的端口状态消息;
[0060]查找单元302,用于在已建立的端口信息和该端口连接的控制器的设备信息的关联关系中,查找所述端口状态消息中携带的端口信息关联的控制器的设备信息;
[0061]处理单元303,用于如果查找单元302查找到所述端口状态消息中携带的端口信息关联的控制器的设备信息,则根据所述端口状态消息中携带的状态信息确定该控制器的工作状态,否则,若该端口连接的是一控制器,则建立所述端口状态消息中携带的端口信息与该端口连接的控制器的设备信息的关联关系。
[0062]图3所示控制器还包括配置单元304 ;
[0063]所述端口状态消息中还携带了该端口连接的设备信息;
[0064]所述配置单元304,用于预先配置SDN集群中其它各控制器的设备信息;
[0065]所述处理单元303,判断该端口连接的是否是一控制器时,用于:根据配置单元304预先配置的SDN集群中其它各控制器的设备信息,判断所述端口状态消息中携带的该端口连接的设备信息是否是一个控制器的设备信息,如果是,则确定该端口连接的是一控制器,否则,确定该端口连接的不是控制器。
[0066]图3所示控制器中,
[0067]所述端口信息包括:端口所属设备的标识、端口号;
[0068]所述设备信息包括:设备的地址信息和标识,所述地址信息包括IP地址和/或MAC地址。
[0069]图3所示控制器中,
[0070]控制器的工作状态包括正常状态和异常状态;
[0071]所述状态信息包括工作Up、故障Down、阻塞Block ;
[0072]所述处理单元303根据所述端口状态消息中携带的状态信息确定该控制器的工作状态时,用于:当该端口状态信息为Up时,确定该控制器的工作状态为正常状态;当该端口状态信息为Down或Block时,确定该控制器的工作状态为异常状态。
[0073]图3所示控制器中,
[0074]所述处理单元303,根据所述端口状态消息中携带的端口状态信息确定该控制器的工作状态之后,进一步用于:当该控制器的工作状态为异常状态时,如果当前控制器为主控制器,则采用预先设置的业务切换模式对该控制器执行业务切换;
[0075]其中,所述业务切换模式包括:即时响应、延迟响应和定时响应;
[0076]所述即时响应是指当检测确定一控制器的工作状态为异常状态时,对该控制器执行业务切换;
[0077]所述延迟响应是指当检测确定一控制器的工作状态为异常状态后,如果经过第一预设时间后该控制器的工作状态仍为异常状态,则对该控制器执行业务切换;
[0078]所述定时响应是指周期性判断当前记录的各控制器的工作状态,当判定一控制器的工作状态为异常状态时,对该控制器执行业务切换。
[0079]图3所示控制器还包括发送单元305 ;
[0080]所述发送单元305,用于如果当前控制器为主控制器,则在每个第一检测周期发送自身的保活live报文到其它各备控制器;如果当前控制器为备控制器,则在每个第二检测周期向主控制器发送自身的live报文;
[0081]所述接收单元301,用于如果当前控制器为备控制器,则若未在第二预设时间内接收到主控制器的live报文,则确定主控制器的工作状态为异常状态,否则,确定主控制器的工作状态为正常状态;如果当前控制器为主控制器,则若未在第三预设时间内接收到一备控制器的live报文,则确定该备控制器的工作状态为异常状态,并指示处理单元303对该备控制器执行业务切换,否则,确定该备控制器的工作状态为正常状态;
[0082]其中,所述第二预设时间大于一个第一检测周期的时间长度;所述第三预设时间大于一个第二检测周期的时间长度。
[0083]图3所示控制器中,
[0084]所述发送单元305,用于如果当前控制器为备控制器,则当前控制器需要脱离SDN集群时,向主控制器发送离开leave报文;
[0085]所述接收单元301,用于如果当前控制器为主控制器,则若接收到一备控制器的Leave报文,则确定该备控制器的工作状态异常状态,并指示处理单元303对该备控制器执行业务切换。
[0086]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种软件定义网络SDN集群中控制器的状态检测方法,SDN集群中的所有控制器通过集群接入交换机互联,其特征在于,该方法包括: 接收任一集群接入交换机在自身端口状态变化时上送的端口状态消息; 在已建立的端口信息和该端口连接的控制器的设备信息的关联关系中,查找所述端口状态消息中携带的端口信息关联的控制器的设备信息,如果查找到,则根据所述端口状态消息中携带的状态信息确定该控制器的工作状态,否则,若该端口连接的是一控制器,则建立所述端口状态消息中携带的端口信息与该端口连接的控制器的设备信息的关联关系。
2.根据权利要求1所述的方法,其特征在于, 所述端口状态消息中还携带了该端口连接的设备信息; 预先配置SDN集群中其它各控制器的设备信息; 判断所述端口状态消息中携带的端口连接的是否是一控制器的方法为:根据预先配置的SDN集群中其它各控制器的设备信息,判断所述端口状态消息中携带的该端口连接的设备信息是否是一个控制器的设备信息,如果是,则确定该端口连接的是一控制器,否则,确定该端口连接的不是控制器。
3.根据权利要求2所述的方法,其特征在于, 所述端口信息包括:端口所属设备的标识、端口号; 所述设备信息包括:设备的地址信息和标识,所述地址信息包括IP地址和/或MAC地址。
4.根据权利要求1所述的方法,其特征在于, 控制器的工作状态包括正常状态和异常状态; 所述状态信息包括工作Up、故障Down、阻塞Block ; 根据所述端口状态消息中携带的状态信息确定该控制器的工作状态的方法为:当该状态信息为Up时,确定该控制器的工作状态为正常状态;当该状态信息为Down或Block时,确定该控制器的工作状态为异常状态。
5.根据权利要求4所述的方法,其特征在于, 根据所述端口状态消息中携带的状态信息确定该控制器的工作状态之后,进一步包括:当该控制器的工作状态为异常状态时,如果当前控制器为主控制器,则采用预先设置的业务切换模式对该控制器执行业务切换; 其中,所述业务切换模式包括:即时响应、延迟响应和定时响应; 所述即时响应是指当检测确定一控制器的工作状态为异常状态时,对该控制器执行业务切换; 所述延迟响应是指当检测确定一控制器的工作状态为异常状态后,如果经过第一预设时间后该控制器的工作状态仍为异常状态,则对该控制器执行业务切换; 所述定时响应是指周期性判断当前记录的各控制器的工作状态,当判定一控制器的工作状态为异常状态时,对该控制器执行业务切换。
6.根据权利要求1所述的方法,其特征在于,该方法进一步包括: 如果当前控制器为主控制器,则在每个第一检测周期发送自身的保活live报文到其它各备控制器;如果当前控制器为备控制器,则若未在第二预设时间内接收到主控制器的live报文,则确定主控制器的工作状态为异常状态,否则,确定主控制器的工作状态为正常状态; 如果当前控制器为备控制器,则在每个第二检测周期向主控制器发送自身的live报文;如果当前控制器为主控制器,则若未在第三预设时间内接收到一备控制器的live报文,则确定该备控制器的工作状态为异常状态,并对该备控制器执行业务切换,否则,确定该备控制器的工作状态为正常状态; 其中,所述第二预设时间大于一个第一检测周期的时间长度;所述第三预设时间大于一个第二检测周期的时间长度。
7.根据权利要求6所述的方法,其特征在于,该方法进一步包括: 如果当前控制器为备控制器,则当前控制器需要脱离SDN集群时,向主控制器发送离开leave报文;如果当前控制器为主控制器,则若接收到一备控制器的Leave报文,则确定该备控制器的工作状态为异常状态,并对该备控制器执行业务。
8.一种软件定义网络SDN集群中的控制器,其特征在于,该控制器包括:接收单元、查找单元,处理单元; 所述接收单元,用于接收任一集群接入交换机在自身端口状态变化时上送的端口状态消息; 查找单元,用于在已建立的端口信息和该端口连接的控制器的设备信息的关联关系中,查找所述端口状态消息中携带的端口信息关联的控制器的设备信息; 处理单元,用于如果查找单元查找到所述端口状态消息中携带的端口信息关联的控制器的设备信息,则根据所述端口状态消息中携带的状态信息确定该控制器的工作状态,否贝U,若该端口连接的是一控制器,则建立所述端口状态消息中携带的端口信息与该端口连接的控制器的设备信息的关联关系。
9.根据权利要求8所述的控制器,其特征在于,该控制器还包括配置单元; 所述端口状态消息中还携带了该端口连接的设备信息; 所述配置单元,用于预先配置SDN集群中其它各控制器的设备信息; 所述处理单元,判断该端口连接的是否是一控制器时,用于:根据预先配置的SDN集群中其它各控制器的设备信息,判断所述端口状态消息中携带的该端口连接的设备信息是否是一个控制器的设备信息,如果是,则确定该端口连接的是一控制器,否则,确定该端口连接的不是控制器。
10.根据权利要求9所述的控制器,其特征在于, 所述端口信息包括:端口所属设备的标识、端口号; 所述设备信息包括:设备的地址信息和标识,所述地址信息包括IP地址和/或MAC地址。
11.根据权利要求8所述的控制器,其特征在于, 控制器的工作状态包括正常状态和异常状态; 所述状态信息包括工作Up、故障Down、阻塞Block ; 所述处理单元根据所述端口状态消息中携带的状态信息确定该控制器的工作状态时,用于:当该端口状态信息为Up时,确定该控制器的工作状态为正常状态;当该端口状态信息为Down或Block时,确定该控制器的工作状态为异常状态。
12.根据权利要求11所述的控制器,其特征在于, 所述处理单元,根据所述端口状态消息中携带的端口状态信息确定该控制器的工作状态之后,进一步用于:当该控制器的工作状态为异常状态时,如果当前控制器为主控制器,则采用预先设置的业务切换模式对该控制器执行业务切换; 其中,所述业务切换模式包括:即时响应、延迟响应和定时响应; 所述即时响应是指当检测确定一控制器的工作状态为异常状态时,对该控制器执行业务切换; 所述延迟响应是指当检测确定一控制器的工作状态为异常状态后,如果经过第一预设时间后该控制器的工作状态仍为异常状态,则对该控制器执行业务切换; 所述定时响应是指周期性判断当前记录的各控制器的工作状态,当判定一控制器的工作状态为异常状态时,对该控制器执行业务切换。
13.根据权利要求8所述的控制器,其特征在于,该控制器还包括发送单元; 所述发送单元,用于如果当前控制器为主控制器,则在每个第一检测周期发送自身的保活live报文到其它各备控制器;如果当前控制器为备控制器,则在每个第二检测周期向主控制器发送自身的live报文; 所述接收单元,用于如果当前控制器为备控制器,则若未在第二预设时间内接收到主控制器的live报文,则确定主控制器的工作状态为异常状态,否则,确定主控制器的工作状态为正常状态;如果当前控制器为主控制器,则若未在第三预设时间内接收到一备控制器的live报文,则确定该备控制器的工作状态为异常状态,并指示处理单元对该备控制器执行业务切换,否则,确定该备控制器的工作状态为正常状态; 其中,所述第二预设时间大于一个第一检测周期的时间长度;所述第三预设时间大于一个第二检测周期的时间长度。
14.根据权利要求13所述的控制器,其特征在于, 所述发送单元,用于如果当前控制器为备控制器,则当前控制器需要脱离SDN集群时,向主控制器发送离开leave报文; 所述接收单元,用于如果当前控制器为主控制器,则若接收到一备控制器的Leave报文,则确定该备控制器的工作状态异常状态,并指示处理单元对该备控制器执行业务切换。
【文档编号】H04L12/26GK104243239SQ201410491345
【公开日】2014年12月24日 申请日期:2014年9月23日 优先权日:2014年9月23日
【发明者】宋小恒 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1