CN105721170A - 基于sdn网络架构的多控制器的节能方法及装置 - Google Patents

基于sdn网络架构的多控制器的节能方法及装置 Download PDF

Info

Publication number
CN105721170A
CN105721170A CN201610049842.5A CN201610049842A CN105721170A CN 105721170 A CN105721170 A CN 105721170A CN 201610049842 A CN201610049842 A CN 201610049842A CN 105721170 A CN105721170 A CN 105721170A
Authority
CN
China
Prior art keywords
controller
closed
cluster
request
controllers
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.)
Granted
Application number
CN201610049842.5A
Other languages
English (en)
Other versions
CN105721170B (zh
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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201610049842.5A priority Critical patent/CN105721170B/zh
Publication of CN105721170A publication Critical patent/CN105721170A/zh
Application granted granted Critical
Publication of CN105721170B publication Critical patent/CN105721170B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Remote Monitoring And Control Of Power-Distribution Networks (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

本发明提供了一种基于SDN网络架构的多控制器的节能方法及装置,通过接收各个集群中的每个控制器发送的信令,信令包括控制器标识,以及控制器标识对应的当前负载量;根据每个控制器标识对应的当前负载量,以及每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;判断该能量消耗总值是否大于第一预设能耗值;若否,根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。从而实现在保证SDN网络架构正常运转的情况下的低能耗,起到节能环保的作用。

Description

基于SDN网络架构的多控制器的节能方法及装置
技术领域
本发明涉及网络技术领域,尤其涉及一种基于SDN网络架构的多控制器的节能方法及装置。
背景技术
软件定义网络(SoftwareDefinedNetwork,简称SDN)是一种新型的网络创新架构,其通过将网络设备控制面与数据面进行解耦,从而实现了对网络流量的灵活控制。在现有SDN网络中,存在一种分布-集中式的控制架构模型,即设置大量控制器用以对各网络硬件设备进行数据转发等操作,并通过一个与各控制器连接的主控制器对各控制器进行统筹,从而实现多个控制器的协同运行。
但是,在上述的SDN网络架构中由于存在有大量的控制器,而每一个控制器又将管控有多个网络硬件交互设备,这会造成整个网络架构的庞大化,使得SDN网络的对电能等能量的消耗激增,违背了绿色环保的理念。
发明内容
本发明提供一种基于SDN网络架构的多控制器的节能方法及装置,用于克服现有技术中SDN网络的能量消耗较高,不符合节能环保理念的问题。
一方面,本发明提供一种基于SDN网络架构的多控制器的节能方法,包括:
接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;
根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;
判断所述能量消耗总值是否大于第一预设能耗值;
若否,根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
进一步地,所述根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,包括:
根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量;
根据各个集群中每个控制器对应的当前负载量、时延参数以及可容纳的最大负载量以及所述待关闭的控制器的数量,确定待关闭的控制器的位置;
根据所述待关闭的控制器的位置获得所述待关闭的控制器的标识;
相应的,所述向所述待关闭的控制器发送关闭请求,包括:
根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求。
进一步地,所述根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求之前,还包括:
对于每个待关闭的控制器,若所述待关闭的控制器中包括N个待排队处理消息,则判断与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数是否小于N,其中,所述N为正整数;
若否,则将所述N个待排队处理消息转移给所述集群中其他未关闭的控制器;
若是,则将所述N个待排队处理消息转移给所述各个集群中其他未关闭的控制器。
进一步地,所述将所述N个待排队处理消息转移给各个集群中其他未关闭的控制器包括:
根据所述各个集群中其他未关闭的控制器的当前负载量的倒数比对所述N个待排队处理消息进行转移。
进一步地,所述接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理之后,还包括:
当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理。
另一方面,本发明还提供一种基于SDN网络架构的装置,包括:
接收模块,接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;
计算模块,用于根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;
获取模块,用于判断所述能量消耗总值是否大于第一预设能耗值;若否,则所述获取模块用于根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
进一步地,所述获取模块具体用于:
根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量;
根据各个集群中每个控制器对应的当前负载量、时延参数以及可容纳的最大负载量以及所述待关闭的控制器的数量,确定待关闭的控制器的位置;
根据所述待关闭的控制器的位置获得所述待关闭的控制器的标识;
根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求。
进一步地,所述获取模块还用于:
在所述根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求之前,对于每个待关闭的控制器,若所述待关闭的控制器中包括N个待排队处理消息,则判断与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数是否小于N,其中,所述N为正整数;
若否,则将所述N个待排队处理消息转移给所述集群中其他未关闭的控制器;
若是,则将所述N个待排队处理消息转移给所述各个集群中其他未关闭的控制器。
进一步地,所述获取模块还用于:
根据所述各个集群中其他未关闭的控制器的当前负载量的倒数比对所述N个待排队处理消息进行转移。
进一步地,所述装置还包括:
重启模块,用于当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理。
本发明提供的一种基于SDN网络架构的多控制器的节能方法及装置,通过接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;判断所述能量消耗总值是否大于第一预设能耗值;若否,根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。从而实现对SDN网络架构的多控制器的节能控制,实现根据当前能量消耗总值对各个集群中各个控制器的开启和关闭进行判定,达到在保证SDN网络架构正常运转的情况下的低能耗和节能环保。
附图说明
图1为本发明各实施例中所基于的SDN网络架构的架构示意图;
图2为本发明实施例一提供的一种基于SDN网络架构的多控制器的节能方法的流程示意图;
图3为本发明实施例二提供的一种基于SDN网络架构的多控制器的节能方法的流程示意图;
图4为本发明实施例三提供的一种基于SDN网络架构的多控制器的节能方法的流程示意图;
图5为本发明实施例四提供的一种基于SDN网络架构的多控制器的节能方法的流程示意图;
图6为本发明实施例五提供一种基于SDN网络架构的装置的结构示意图;
图7为本发明实施例六提供一种基于SDN网络架构的装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本发明中下述的方法的执行主体为基于SDN网络架构的装置,例如SDN网络架构中的主控制器,中央控制单元,或与主控制器具有相应功能的模块等,本说明书将以主控制器为例对各实施例和实施方式进行说明。
图1为本发明各实施例中所基于的SDN网络架构的架构示意图,如图1所示,本发明提供的SDN网络架构包括主控制器和x个集群,其中,集群与集群之间相互独立;在一个集群中,包括有y个控制器,而每个控制器均与主控制电连接;而每个控制器连接还连接有多个交换设备,交换设备将不停的向相应的控制器发送待处理的Packet_in消息,其中,x和y均为整整数。需要说明的是,本发明中所使用的SDN网络架构中的每个控制器的性能参数相同,其可容纳的最大负载量相同,对于其他SDN网络架构,本领域技术人员可根据所使用控制器的实际情况对各实施例中所使用的公式进行变换,本发明对此不做限定。
图2为本发明实施例一提供的一种基于SDN网络架构的多控制器的节能方法的流程示意图,如图2所示,该方法包括:
步骤101、接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量。
具体的,主控制器接收各个集群中的每个控制器发送的信令,该信令中包括有各个控制器的标识,以及与各个控制器的标识相对应的当前负载量。其中,该当前负载量与当前待处理的Packet_in消息的数量正相关,可以理解为代当前待处理的Packet_in消息的数量。
步骤102、根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值。
具体的,主控制器根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量m,获取所有控制器的能量消耗总值。其中,能耗参数为每个控制器的固有参数,其包括负载量为0时对应的最低能耗值和负载量为m时对应的最大能耗值。该所有控制器的能量消耗总值则为所有控制器的当前能量消耗值之和,而每个控制器的当前能量消耗值可通过公式(1)得出。
P i = P i d l e + ( P m a x - P i d l e ) * ( 2 V i m - ( V i m ) 2 ) 公式(1);
其中,Pi为该控制器的当前能量消耗值,Pidle为该控制器在负载量为0时对应的最低能耗值,Pmax为该控制器在负载量为m时对应的最大能耗值,Vi为该控制器的当前负载量,i为该控制器的标识,m为该控制器的可容纳的最大负载量,其中Vi,i,m均为正整数。
主控制器根据每个控制的当前负载量,最低能耗值,最大能耗值,以及可容纳的最大负载量,通过上述公式(1)获得该控制器的当前能量消耗值,并根据获得的每个控制器的当前能量消耗值生成以x,y为维度的能耗矩阵,计算该能耗矩阵中所有元素的和,即获得所有控制器的能量消耗总值sum_P。
步骤103、判断所述能量消耗总值是否大于第一预设能耗值。若否,则执行步骤104。
具体的,主控制器在获得的所有控制器的能量消耗总值sum_P之后,对sum_P的值进行判定。进一步地,可将步骤103中的第一预设能耗值设置为所有控制器的最大能耗值的n倍,可用n*x*y*Pmax表示其中,n可为任一预设的正数。当sum_P大于n*x*y*Pmax时,则相当于SDN网络处于高负载状态,此时,主控制器可等待下一时刻,并重复上述步骤101。当sum_P小于等于n*x*y*Pmax时,则相当于SDN网络的处于低负载状态,此时SDN网络将执行步骤104以实现节能环保。
步骤104、根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
具体的,主控制器根据各个集群中每个控制器对应的当前负载量Vi、时延参数time_delay、理论负载量L以及可容纳的最大负载量m,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。从而实现通过降低开启的控制器的数量的方法,降低当前所有控制器的最大总能量消耗值,进而使sum_P大于n*x*y*Pmax,即SDN网络处于高负载状态,避免能量的浪费。
本发明提供的一种基于SDN网络架构的多控制器的节能方法,通过接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;判断所述能量消耗总值是否大于第一预设能耗值;若否,根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。从而实现对SDN网络架构的多控制器的节能控制,实现根据当前能量消耗总值对各个集群中各个控制器的开启和关闭进行判定,达到在保证SDN网络架构正常运转的情况下的低能耗和节能环保。
进一步地,为了清楚地解释如何选择待关闭的控制器,使得节能环保的效果能加出色,在上述实施例一的基础上,图3为本发明实施例二提供的一种基于SDN网络架构的多控制器的节能方法的流程示意图,如图3所示,步骤104具体可包括:
步骤201、根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量。
具体的,在获得的所有控制器的能量消耗总值sum_P之后,当主控制器判定出sum_P的值小于第一预设能耗值时,则根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量。
其中,为了进一步解释说明步骤201,可将待关闭的控制器的数量的计算建模为整数线性规划问题,获得公式(2):
mintr(Sum_P*S)=min(P11S11+P12S12+...+P1yS1y+P21S21+...+PxySxy)公式(2);
其中,S表示SDN网络的开关状态的矩阵,Sxy则表示第x个集群中的第y个控制器的开关状态,当该控制器为开启状态时,Sxy=1,当该控制器为关闭状态时,Sxy=0;Sum_P表示所有控制器的能量消耗矩阵,其是以x*y为维度的矩阵,而Pxy则表示第x个集群中的第y个控制器的能量消耗值,其具体值可由公式(1)计算得出。在公式(2)中,将所有控制器的能量消耗矩阵与当前SDN网络的开关状态的矩阵相乘,并对其做矩阵的迹的运算从而得到等号的右侧的展开式。
为了保证SDN网络中,当关闭控制器后还能够正常运转和工作,不会导致消息丢包,公式(2)中存在约束条件公式(3)和公式(4):
mS≥c11+c12+c13+...+cxy公式(3);
mS≥L11+L12+L13+...+Lxy公式(4);
其中,m为控制器的可容纳的最大负载量;S为SDN网络的开关状态的矩阵;cxy为第x集群中的第y个控制器当前的待处理的Packet_in消息个数,其可根据第x集群中的第y个控制器的当前负载量Vi计算获得;Lxy为第x集群中的第y个控制器理论负载值。具体的,公式(4)中的理论负载值可通过排队论中的建模进行模拟获得:例如,每个集群中的每个控制器都可建模为一个独立的单服务窗等待制排队模型M/M/1/m,因此,SDN网络将建模有x*y个独立的单服务窗等待制排队模型,每个控制器上的Packet_in消息将按照参数为λ的泊松分布到达,而每个控制器处理Packet_in消息的时间服从参数为μ的负指数分布,则控制器的负荷水平ρ(负荷强度)可用参数λ与参数μ的比值表示,即ρ=λ/μ。每个控制器的理论负载值Lxy则可表示为: L x y = ρ 1 - ρ - mρ m + 1 + ρ 1 - ρ m + 1 .
结合公式(2)、公式(3)以及公式(4)可求得使所有控制器的能量消耗总值最小的开关矩阵S,并通过公式(5)得出待关闭的控制器的数量close_num:
close_num=x*y-open_num=x*y-(S11+S12+S13+...+Sxy)公式(5);
其中,open_num为SDN网络需要开启的控制器的数量最小值,其为正整数。
步骤202、根据各个集群中每个控制器对应的当前负载量、时延参数以及可容纳的最大负载量以及所述待关闭的控制器的数量,确定待关闭的控制器的位置。
具体的,当得到待关闭的控制器的数量close_num之后,SDN网络则有种方案对待关闭的控制器进行选择。在每种可能下,对每种方案的代价函数进行计算并得到代价最小的方案:
cos t = t i m e _ d e l a y e n e r g y _ s a v e 公式(6);
其中,time_delay为所有控制器的时延参数,其为可通过每个控制器的预设的时延参数与该控制器可接收的消息个数获得;energy_save则为SDN网络在执行关闭之前和关闭之后的能量消耗总值的差值,其可通过使用公式(1)并结合开关矩阵S算出相应的能量消耗总值,再进行差值计算得到。通过上述公式(6)可得到代价最小的方案,并根据该方案确定待关闭的控制器的位置。
步骤203、根据所述待关闭的控制器的位置获得所述待关闭的控制器的标识。
具体的,在主控制器确定待关闭的控制器的位置之后,根据该待关闭的控制器的位置获得相应的待关闭的控制器的标识。例如,在步骤202中,主控制器若确定当S12=0且S21=0时,代价函数的取值最小,即相当于,当第1个集群中第2个控制器和第2个集群中的第1个控制器关闭时,代价函数的取值最小,主控制器可根据上述待关闭的控制器的位置可获得待关闭的控制器的标识。
步骤204、根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
本发明实施例二提供的基于SDN网络架构的多控制器的节能方法,通过根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量,根据各个集群中每个控制器对应的当前负载量、时延参数以及可容纳的最大负载量以及所述待关闭的控制器的数量,确定待关闭的控制器的位置,根据所述待关闭的控制器的位置获得所述待关闭的控制器的标识,根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求,从而实现对待关闭的控制器的选择,使关闭部分控制器后的SDN网络在保证Packet_in消息不丢包的情况下的能量消耗总值最小,更加有利于节能环保。
进一步地,为了更好地保证SDN网络的运转,图4为本发明实施例三提供的一种基于SDN网络架构的多控制器的节能方法的流程示意图,在上述图3所示方法的基础上,如图4所示,步骤204之前,还包括:
步骤301、对于每个待关闭的控制器,若所述待关闭的控制器中包括N个待排队处理消息,则判断与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数是小于N,其中,所述N为正整数;
步骤302、若否,将所述N个待排队处理消息转移给所述集群中其他未关闭的控制器;
步骤303、若是,将所述N个待排队处理消息转移给所述各个集群中其他未关闭的控制器。
具体的,在主控制器根据待关闭的控制器的标识向该待关闭的控制器发送关闭请求,以供接收到该关闭请求的待关闭的控制器,根据该关闭请求,进行关闭处理之前,为了使SDN网络的运转保持流畅,待关闭的控制器可将在该待关闭的控制器处的N个待排队处理消息Packet_in消息转移给其他未关闭的控制器进行处理,其中本实施例中的参数N与实施例二中的参数cxy相应。
例如,在第1集群中,当第1控制器为待关闭的控制器时,主控制器首先根据比较公式(7)对第1集群中的除第1控制器以外的其他未关闭的控制器可接收的消息的个数是否大于等于N进行判定:
(m-c12)+(m-c13)+(m-c14)+...+(m-c1y)-N公式(7)
其中,cxy为第x集群中的第y个控制器当前的待处理的Packet_in消息个数,m为控制器的可容纳的最大负载量。当公式(7)所得结果为正,则可将该第1控制器中的N个待排队处理消息转移给第1集群中其他未关闭的控制器,其每个未关闭的控制器接收待处理的Packet_in消息的个数可用公式(8)表示:
P a c k e t _ in 1 y = c 11 * ( 1 / c 1 y ) ( 1 / c 12 ) + ( 1 / c 13 ) + ( 1 / c 14 ) + ... + ( 1 / c 1 y ) 公式(8);
而当公式(7)所得结果为负,则需要将该第1控制器中的N个待排队处理消息转移给第1集群中其他未关闭的控制器以及其他第2至第x个集群中的其他未关闭的控制器。
进一步地,为了使本实施例三中的待排队处理消息转移更加合理,使SDN网络处理速度更快,在主控制器所述N个待排队处理消息转移给各个集群中其他未关闭的控制器时,可根据所述各个集群中其他未关闭的控制器的当前负载量的倒数比对所述N个待排队处理消息进行转移。
具体的,每个未关闭的控制器所接收Packet_in消息的个数还可通过公式(9)表示:
P a c k e t _ in x y = Σ k = 2 y ( m - c 1 k ) * ( 1 / c 1 y ) Σ k = 2 y ( 1 - c 1 k ) , x = 1 [ c 11 - Σ k = 2 y ( m - c 1 k ) ] * ( 1 / Σ k = 1 y c x k ) Σ n = 2 x ( 1 / Σ k = 1 y c n k * ( 1 / c x y ) Σ k = 1 y ( 1 / c x k ) , x ≠ 1 公式(9);
其中,k为正整数,其数值小于y,表示第k个控制器;n为正整数,其数值小于x,表示第n个集群。公式(9)中的x等于1的情况下为第1集群中的各个未关闭的控制器所接收的消息个数,而x不等于1的情况下为第1集群以外的其他集群中的各个未关闭的控制器所接收的消息个数。
本发明实施例三提供的基于SDN网络架构的多控制器的节能方法,通过对于每个待关闭的控制器中的待排队处理消息的数量与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数进行对比并判断,若大于等于则将待排队处理消息转移给所述集群中其他未关闭的控制器,若小于则将待排队处理消息转移给所述各个集群中其他未关闭的控制器,从而优化待排队处理消息的转移,使SDN网络更好地运转。
进一步地,为了保证SDN网络在关闭控制器后不会发生由于消息的个数增多而导致的数据丢包的情况,图5提供了一种基于SDN网络架构的多控制器的节能方法的流程示意图,在上述各实施方式的基础上,如图5所示,步骤104之后,还包括:
步骤401、当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理。
具体的,在待关闭的控制器根据主控制器的关闭请求进行关闭处理之后,该关闭的控制器还将持续接收待排队处理消息,当主控制器发现到该待排队处理消息个数大于第二预设阈值时,主控制器将向关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理,并重新开始处理待排队处理信息,所述第二预设阈值可由本领域技术人员根据SDN网络架构实际运行情况进行自行设定。
或者,根据在SDN网络架构中,实际使用的控制器的种类不同,在待关闭的控制器根据主控制器的关闭请求进行关闭处理之后,该关闭的控制器还可持续接收待排队处理消息,当该关闭的控制器发现到该待排队处理消息个数大于第二预设阈值时,该关闭的控制器可自行开启,并开始进行消息处理工作,关闭的控制器进行重启操作的前提条件可由本领域技术人员自行设定,本发明对此不进行限定。本申请实施例四提供的基于SDN网络架构的多控制器的节能方法,通过当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理,从而避免出现SDN网络在关闭控制器后发生由于消息的个数增多而导致的数据丢包的情况,使整个SDN网络在节能环保的前提下,运行更加合理和流畅。
图6为本发明实施例五提供一种基于SDN网络架构的装置的结构示意图,如图6所示,该装置包括:
接收模块10,接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;
计算模块20,用于根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;
获取模块30,用于判断所述能量消耗总值是否大于第一预设能耗值;若否,则所述获取模块用于根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
需要说明的是,本发明实施例五提供的基于SDN网络架构的装置具体可为SDN网络架构中的主控制器或与主控制器相应功能的其他装置模块。
具体的,接收模块10接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量,计算模块20则用于根据接收模块10接收到的每个所述控制器标识对应的当前负载量以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值,获取模块30用于判断计算模块20获得的所述能量消耗总值是否大于第一预设能耗值;若否,则所述获取模块用于根据接收模块10接收到各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
上述实施方式中各模块的实现方法与实施例一中的各个步骤相应,在此不作赘述。
进一步地,为了使获取模块对待关闭的控制器的选择更加合理,节能环保效果更加出色,获取模块30具体用于:
根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量;根据各个集群中每个控制器对应的当前负载量、时延参数以及可容纳的最大负载量以及所述待关闭的控制器的数量,确定待关闭的控制器的位置;根据所述待关闭的控制器的位置获得所述待关闭的控制器的标识;根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求。
上述实施方式中各模块的实现方法与实施例二中的各个步骤相应,在此不作赘述。在该实施方式中通过获取模块30对待关闭的控制器的选择的进一步细化,从而使SDN网络的节能环保效果更加出色。
进一步地,在上述结构的基础上,为了更好地保证SDN网络的运转,获取模块30还用于:
在所述向所述待关闭的控制器发送关闭请求之前,对于每个待关闭的控制器,若所述待关闭的控制器中包括N个待排队处理消息,则判断与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数是否小于N,其中,所述N为正整数;若否,则将所述N个待排队处理消息转移给所述集群中其他未关闭的控制器;若是,则将所述N个待排队处理消息转移给各个集群中其他未关闭的控制器。具体的,所述获取模块还可用于:当判断出与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数小于N时,则根据所述各个集群中其他未关闭的控制器的当前负载量的倒数比对所述N个待排队处理消息进行转移。
上述实施方式中各模块的实现方法与实施例三中的各个步骤相应,在此不作赘述。在该实施方式中通过获取模块30对于每个待关闭的控制器中的待排队处理消息的数量与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数进行对比并判断,从而对待排队处理消息的转移过程进行了优化,使SDN网络更好地运转。
本发明实施例五提供的基于SDN网络架构的装置,通过接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;判断所述能量消耗总值是否大于第一预设能耗值;若否,根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。从而实现对SDN网络架构的多控制器的节能控制,实现根据当前能量消耗总值对各个集群中各个控制器的开启和关闭进行判定,达到在保证SDN网络架构正常运转的情况下的低能耗和节能环保。
进一步地,为了避免SDN网络在关闭控制器后发生由于消息的个数增多而导致的数据丢包的情况,图7为本发明实施例六提供的一种基于SDN网络架构的装置的结构示意图,在上述图6所示结构的基础上,如图7所示,该装置还包括:
重启模块40,用于当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理。
具体的,在待关闭的控制器根据获取模块30的关闭请求进行关闭处理之后,该关闭的控制器还将持续接收待排队处理消息,当重启模块40发现到通过接收模块10接收到的该待排队处理消息个数大于第二预设阈值时,重启模块40将向关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理。
上述实施方式中各模块的实现方法与实施例四中的各个步骤相应,在此不作赘述。
本申请实施例六提供的基于SDN网络架构的装置,通过当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理,从而避免出现SDN网络在关闭控制器后发生由于消息的个数增多而导致的数据丢包的情况,使整个SDN网络在节能环保的前提下,运行更加合理和流畅。
通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种基于SDN网络架构的多控制器的节能方法,其特征在于,包括:
接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;
根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;
判断所述能量消耗总值是否大于第一预设能耗值;
若否,根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
2.根据权利要求1所述的方法,其特征在于,所述根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,包括:
根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量;
根据各个集群中每个控制器对应的当前负载量、时延参数以及可容纳的最大负载量以及所述待关闭的控制器的数量,确定待关闭的控制器的位置;
根据所述待关闭的控制器的位置获得所述待关闭的控制器的标识;
相应的,所述向所述待关闭的控制器发送关闭请求,包括:
根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求。
3.根据权利要求2所述的方法,其特征特在于,所述根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求之前,还包括:
对于每个待关闭的控制器,若所述待关闭的控制器中包括N个待排队处理消息,则判断与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数是否小于N,其中,所述N为正整数;
若否,则将所述N个待排队处理消息转移给所述集群中其他未关闭的控制器;
若是,则将所述N个待排队处理消息转移给所述各个集群中其他未关闭的控制器。
4.根据权利要求3所述的方法,其特征在于,所述将所述N个待排队处理消息转移给各个集群中其他未关闭的控制器,包括:
根据所述各个集群中其他未关闭的控制器的当前负载量的倒数比对所述N个待排队处理消息进行转移。
5.根据权利要求1所述的方法,其特征在于,所述接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理之后,还包括:
当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理。
6.一种基于SDN网络架构的装置,其特征在于,包括:
接收模块,接收各个集群中的每个控制器发送的信令,所述信令包括控制器标识,以及所述控制器标识对应的当前负载量;
计算模块,用于根据每个所述控制器标识对应的当前负载量,以及所述每个控制器标识对应的能耗参数和可容纳的最大负载量,获取所有控制器的能量消耗总值;
获取模块,用于判断所述能量消耗总值是否大于第一预设能耗值;若否,则所述获取模块用于根据各个集群中每个控制器对应的当前负载量、时延参数、理论负载量以及可容纳的最大负载量,获取待关闭的控制器,并向所述待关闭的控制器发送关闭请求,以供接收到所述关闭请求的待关闭的控制器,根据所述关闭请求,进行关闭处理。
7.根据权利要求6所述的装置,其特征在于,所述获取模块具体用于:
根据各个集群中每个控制器对应的当前负载量、理论负载量以及可容纳的最大负载量计算待关闭的控制器的数量;
根据各个集群中每个控制器对应的当前负载量、时延参数以及可容纳的最大负载量以及所述待关闭的控制器的数量,确定待关闭的控制器的位置;
根据所述待关闭的控制器的位置获得所述待关闭的控制器的标识;
根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求。
8.根据权利要求7所述的装置,其特征特在于,所述获取模块还用于:
在所述根据所述待关闭的控制器的标识向所述待关闭的控制器发送关闭请求之前,对于每个待关闭的控制器,若所述待关闭的控制器中包括N个待排队处理消息,则判断与所述待关闭的控制器所属的集群中的其他未关闭的控制器可接收的消息的个数是否小于N,其中,所述N为正整数;
若否,则将所述N个待排队处理消息转移给所述集群中其他未关闭的控制器;
若是,则将所述N个待排队处理消息转移给所述各个集群中其他未关闭的控制器。
9.根据权利要求8所述的装置,其特征在于,所述获取模块还用于:
根据所述各个集群中其他未关闭的控制器的当前负载量的倒数比对所述N个待排队处理消息进行转移。
10.根据权利要求6所述的装置,其特征在于,还包括:
重启模块,用于当关闭的控制器的待排队处理消息个数大于第二预设阈值时,向所述关闭的控制器发送开启请求,以供接收到所述开启请求的关闭的控制器,根据所述开启请求,进行开启处理。
CN201610049842.5A 2016-01-25 2016-01-25 基于sdn网络架构的多控制器的节能方法及装置 Active CN105721170B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610049842.5A CN105721170B (zh) 2016-01-25 2016-01-25 基于sdn网络架构的多控制器的节能方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610049842.5A CN105721170B (zh) 2016-01-25 2016-01-25 基于sdn网络架构的多控制器的节能方法及装置

Publications (2)

Publication Number Publication Date
CN105721170A true CN105721170A (zh) 2016-06-29
CN105721170B CN105721170B (zh) 2018-10-16

Family

ID=56154096

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610049842.5A Active CN105721170B (zh) 2016-01-25 2016-01-25 基于sdn网络架构的多控制器的节能方法及装置

Country Status (1)

Country Link
CN (1) CN105721170B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106549805A (zh) * 2016-11-02 2017-03-29 北京邮电大学 一种sdn网络架构及其通信方法
CN106572170A (zh) * 2016-10-28 2017-04-19 中国电子科技集团公司第五十四研究所 一种控制器及sdn分层多控制器下的动态负载均衡方法
CN106657416A (zh) * 2017-03-02 2017-05-10 北京邮电大学 一种控制器负载均衡方法及装置
CN107682410A (zh) * 2017-09-14 2018-02-09 广州西麦科技股份有限公司 一种分布式sdn控制器集群的控制方法及装置
CN110365543A (zh) * 2019-08-01 2019-10-22 北京邮电大学 一种角色变更方法及装置
CN111149330A (zh) * 2017-09-22 2020-05-12 华为技术有限公司 软件定义网络中的拓扑感知控制器关联
CN111641564A (zh) * 2020-05-11 2020-09-08 紫光云技术有限公司 Sdn控制器的集群系统及下发配置方法
CN112783639A (zh) * 2019-11-07 2021-05-11 北京沃东天骏信息技术有限公司 一种应用于服务重启后的流量调度方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103428102A (zh) * 2013-08-06 2013-12-04 北京智谷睿拓技术服务有限公司 在分布式网络中实现动态负载平衡的方法和系统
CN103916261A (zh) * 2013-01-09 2014-07-09 华为技术有限公司 确定进入节能模式的网络装置的数量的方法及控制装置
CN104298339A (zh) * 2014-10-11 2015-01-21 东北大学 一种面向最小能耗的服务器整合方法
CN104935460A (zh) * 2015-05-05 2015-09-23 浙江大学 一种基于数据面流量预测的多控制器节能优化方法
US20150350102A1 (en) * 2014-06-03 2015-12-03 Alberto Leon-Garcia Method and System for Integrated Management of Converged Heterogeneous Resources in Software-Defined Infrastructure
CN105208099A (zh) * 2015-08-24 2015-12-30 浪潮(北京)电子信息产业有限公司 一种云服务器内利用sdn技术智能节电的体系架构

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916261A (zh) * 2013-01-09 2014-07-09 华为技术有限公司 确定进入节能模式的网络装置的数量的方法及控制装置
CN103428102A (zh) * 2013-08-06 2013-12-04 北京智谷睿拓技术服务有限公司 在分布式网络中实现动态负载平衡的方法和系统
US20150350102A1 (en) * 2014-06-03 2015-12-03 Alberto Leon-Garcia Method and System for Integrated Management of Converged Heterogeneous Resources in Software-Defined Infrastructure
CN104298339A (zh) * 2014-10-11 2015-01-21 东北大学 一种面向最小能耗的服务器整合方法
CN104935460A (zh) * 2015-05-05 2015-09-23 浙江大学 一种基于数据面流量预测的多控制器节能优化方法
CN105208099A (zh) * 2015-08-24 2015-12-30 浪潮(北京)电子信息产业有限公司 一种云服务器内利用sdn技术智能节电的体系架构

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FU YONGHONG,BI JUN,WU JIANPING等: "A dormant multi-controller model for software defined networking", 《CHINA COMMUNICATIONS》 *
GHAITH WARKOZEK,ELISABETH DRAYER,VINCENT DEBUSSCHERE等: "A new approach to model energy consumption of servers in data centers", 《2012 IEEE INTERNATIONAL CONFERENCE ON INDUSTRIAL TECHNOLOGY (ICIT)》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572170A (zh) * 2016-10-28 2017-04-19 中国电子科技集团公司第五十四研究所 一种控制器及sdn分层多控制器下的动态负载均衡方法
CN106572170B (zh) * 2016-10-28 2019-05-07 中国电子科技集团公司第五十四研究所 一种控制器及sdn分层多控制器下的动态负载均衡方法
CN106549805A (zh) * 2016-11-02 2017-03-29 北京邮电大学 一种sdn网络架构及其通信方法
CN106549805B (zh) * 2016-11-02 2019-09-24 北京邮电大学 一种sdn网络架构及其通信方法
CN106657416B (zh) * 2017-03-02 2019-10-08 北京邮电大学 一种控制器负载均衡方法及装置
CN106657416A (zh) * 2017-03-02 2017-05-10 北京邮电大学 一种控制器负载均衡方法及装置
CN107682410A (zh) * 2017-09-14 2018-02-09 广州西麦科技股份有限公司 一种分布式sdn控制器集群的控制方法及装置
CN111149330A (zh) * 2017-09-22 2020-05-12 华为技术有限公司 软件定义网络中的拓扑感知控制器关联
CN111149330B (zh) * 2017-09-22 2022-04-29 华为技术有限公司 软件定义网络中的拓扑感知控制器关联
US11463313B2 (en) 2017-09-22 2022-10-04 Futurewei Technologies, Inc. Topology-aware controller associations in software-defined networks
CN110365543A (zh) * 2019-08-01 2019-10-22 北京邮电大学 一种角色变更方法及装置
CN112783639A (zh) * 2019-11-07 2021-05-11 北京沃东天骏信息技术有限公司 一种应用于服务重启后的流量调度方法和装置
CN112783639B (zh) * 2019-11-07 2024-03-01 北京沃东天骏信息技术有限公司 一种应用于服务重启后的流量调度方法和装置
CN111641564A (zh) * 2020-05-11 2020-09-08 紫光云技术有限公司 Sdn控制器的集群系统及下发配置方法
CN111641564B (zh) * 2020-05-11 2023-08-29 紫光云技术有限公司 Sdn控制器的集群系统及下发配置方法

Also Published As

Publication number Publication date
CN105721170B (zh) 2018-10-16

Similar Documents

Publication Publication Date Title
CN105721170A (zh) 基于sdn网络架构的多控制器的节能方法及装置
CN107391317A (zh) 一种数据恢复的方法、装置、设备及计算机可读存储介质
CN104503826B (zh) 一种云计算数据中心的虚拟机映射方法及装置
CN104050142B (zh) 具有片上互连的混合可编程众核设备
CN104572307A (zh) 一种对虚拟资源进行弹性调度的方法
DE102015118705A1 (de) Technologien für leistungsbasierte Außer-der-Reihe-Task-Planung für Datenzentren
CN102624546B (zh) 功耗封顶的控制方法、设备和系统
CN105808328A (zh) 任务调度的方法、装置和系统
CN107479944B (zh) 混合云模式下的虚拟机内存自适应热迁移调度方法及系统
CN102662754A (zh) 一种支持多场景的虚拟机调度装置和方法
CN104049712A (zh) 用于计算机系统的功率管理方法和系统
CN102890735A (zh) 稳控装置的策略表和策略搜索匹配的建模方法
CN103927244A (zh) 一种基于动态代理实现的插件调度过程监控的方法
CN105808346A (zh) 一种任务调度方法与装置
WO2013112145A1 (en) User generated data center power savings
Wassing et al. A machine learning approach for service function chain embedding in cloud datacenter networks
CN106201658A (zh) 一种迁移虚拟机目的主机多目标优化选择方法
CN107133093A (zh) 一种虚拟机的在线迁移方法及装置
CN107967172B (zh) 一种面向异构存储的Spark任务动态迁移方法和系统
Mencagli et al. Reconfiguration stability of adaptive distributed parallel applications through a cooperative predictive control approach
Lencse Efficient parallel simulation with the Statistical Synchronization Method
CN106874110A (zh) 一种集群存储系统的节能方法和装置
CN101197782B (zh) 一种基于多核处理器的网络设备的控制方法及系统
CN107479945B (zh) 一种虚拟机资源调度方法及装置
Kuang et al. Level value density task scheduling algorithm for cyber physical systems on cloud

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant