负载均衡的方法及装置的制造方法_4

文档序号:9814289阅读:来源:国知局
[0163] S5. 3,根据上述流表统计信息集合,超级节点针对每个交换机累计获得5个时间 戳的流表统计Fi、F2、F3、F4、Fs,即获得了送样的数据;Fi = {控制器编号、交换机编号、时间 戳X、流表统计刊。
[0164] S5. 4,若上述5个时间戳的控制器流量中流表统计总和最大的郝一个大于控制器 的历史流表统计Hifm。、,贝。
[0165] S5. 5,对集群控制器中各控制器管控的每个交换机,使用式1-1的最小二乘法数 学模型,并根据公式1-2和1-3计算得出下一时间戳的各个交换机的流表统计信息;
[0166] S5. 6,为了使得预估值更加接近实际值,取一周内该时间戳的流表统计实际测量 值,与预估值求和取平均;
[0167] S6,根据时间戳,超级节点从集群分布式共享存储系统中读取每个控制器上报的 除packet_in之外的其他OF交互信息统计(W后简称其他OF信息),通过W下子步骤来实 现:
[0168] S6. 1,确定时间戳个数N,即尝试获取N个时间戳的完整其他OF信息统计集合; 所述完整其它OF信息集合是指同一控制器同一时间戳的所有不同的交换机与控制器的除 packet_in之外的所有OF交互统计信息且时间戳是最近的;
[0169] S6. 2,若获取时间戳的完整其它OF信息统计集合不到N个,循环执行S2,直到获取 到N个时间戳的其它OF信息统计集合;
[0170] S6. 3,根据上述其它OF信息统计集合,超级节点针对每个交换机累计获得N个时 间戳的其它OF信息统计Mi、M2、……、Mw,即获得了送样的数据;Mi= {控制器编号、交换机 编号、时间戳X、其它OF信息统计刊。
[0171] S6. 4,若上述N个时间戳的控制器其它OF信息统计最大的郝一个大于控制器的历 史其它OF信息统计,贝U
[0172] S6. 5,对集群控制器中各控制器管控的每个交换机,使用最小二乘法数学模型 (见式1-1)通过回归分析计算得出下一时间戳的各个交换机的其它OF统计信息计 算公式见式1-2和式1-3。
[0173] S6. 6,为了使得预估值更加接近实际值,根据样本数据的取样周期,取实际测量前 几个周期内该时间戳交换机的其它OF统计信息的实际值,然后与预估值求和取平均,得到 更加精确的预估值。
[0174] S7,根据实际数据使用公式1-4、1-5和1-6计算得出PpHi、PfHi和Pmhi,分别与通过 公式1-7、1-8和1-9计算得出的PpHy、P?、和Pmh,进行比较,根据比较的结果大小调整各个控 制器管控的交换机,实现负载均衡,该步骤通过W下子步骤来实现:
[01巧]S7. 1,本实施例假设系数X = l,y = 0,即根据每个交换机上报的packet_in报文 为依据,来调整管控的交换机个数;
[0176] S7. 2,要待调动交换机池设为空;通过获取到的5个时间戳的packet-in报文数计 算得到;PpHi = 1. 〇9,PpH2 = 0. 39,PpH3 = 1. 11 ;计算控制器总预估接收到的packet-in报文 数与总最大packet-in报文数之比Pphv = 0. 95 ;控制器的负载压力表分别为表4所示。上 述待调动交换机池装载送样的元素 EP:: = {转出控制器编号,交换机编号,packet-in报 文数,转入控制器编号}。
[0177] 表4根据packet-in报文得出的控制器负载压力表 [017 引
[0179] S7. 3,根据公式1-10和1-11可得Pi = PpHi,Pv = PpHv,参照Pi W降序对各个控制 器执行S7. 4,执行完毕后执行S7. 7。
[0180] S7. 4,对于各个控制器,当其Pi大于Py时,执行S7. 5,否则执行S7. 6 ;
[0181] S7. 5,计算应调出的交换机列表,该步骤通过W下子步骤来实现:
[0182] S7. 5. 1,本实施是按照控制器收到的各个交换机的packet_in报文数据为依据, 来调整管控的交换机个数,根据公式1-12可得;Bmiw = 1地PMUe ;
[0183] S7. 5. 2,然后根据公式1-13计算町。。<,,根据Bm。,,多对该控制器管控的交换机升序 排列,获得交换机队列;
[0184] S7. 5. 3,从上述队列中自上而下选择交换机;
[01财 S7. 5. 4,累计计算要移出交换机BiCMt总化若不大于Bmuc则继续执行S7. 5. 4,否 则执行S7. 5. 5 ;
[0186] S7. 5. 5,将送些待调动的交换机编号,连同控制器编号,BiCMt加入到待调动交换机 池,其中转入控制器编号为空,此时获得的待掉动列表如表5所示;
[0187] 表5实例1调整前控制器资源共享区域待调动池表
[0189] S7. 6,计算应调入的交换机列表,该步骤通过W下子步骤来实现:
[0190] S7. 6. 1,本实施例是按照控制器收到的各个交换机上报的packet_in报文数据为 依据,来调整管控的交换机个数,根据公式1-14可得Buu。= 1地PUU。;
[01川 S7. 6. 2,根据Buiw大小对控制器做降序排列,然后依次根据控制器负载调入交换 机,具体由W下子步骤实现:
[0192] S7. 6. 2. 1,根据待调动交换机池 Bi。。,,大小对交换机做降序排列,获得交换机队 列;
[0193] S7. 6. 2. 2,针对每一个控制器,从上述队列中自上而下选择交换机,分别将Bmext与 Si…e进行比较,若Binext〉Buize,贝IJ选择下一个交换机,若Bmext<Buize,贝叫尋待调动交换机池中 与送个交换机对应的元素的转入控制器编号设为本控制器编号,同时Buu。= Buiw-BmMt, 然后检查下一个交换机,直到检查到最后一个交换机,具体步骤见流程图4所示,此时获得 的待掉动列表如表6所示;
[0194] 表6实例1调整后控制器资源共享区域待调动池表
[0195]
[0196] S7. 7,重构对应交换机,实现负载均衡,该步骤通过W下子步骤来实现:
[0197] S7. 7. 1,超级节点对待调动交换机池中每一元素,若转入控制器编号不为空,则向 转出控制器编号对应的交换机和转入控制器编号转移交换机命令并执行S7. 7. 2,否则略过 此元素;
[019引 S7. 7. 2,依据slave-master机制调换,实现交换机调度;所述slave-master机制 调换有化enFlow协议设定,用于改变多控制器控制时不同控制器的角色;结束后的流量状 态如表7所示。
[0199] 表7实例1中根据packet_in报文调整后各控制器负载压力表
[0201] S8,本次调度结束,下一时间间隔重复执行S2。
[0202] 实施例2 :
[0203] W图6为例,域内分布有SDN控制器节点A、B、C。A控制器节点管控的交换机包括 SWl、sw2和sw3 ;B控制器节点管控的交换机包括sw4和sw5 ;C控制器节点管控的交换机包 括sw6、sw7和sw8 ;下面开始详细描述本优选实施例。
[0204] SI,集群控制器调度开始:控制器设置packet-in数量的历史最大值为Hipm。,、流表 数的历史最大值为Hifm。、和其它OF消息的历史最大值为,并分别设为0。
[0205] S2,采用集群控制器中信息收集模块收集样本信息,本实例采集的样本数据为一 周内某天一个时间段不同时间戳的统计信息。同时采集之前一周内该时段内的实际测量信 息作为参考,使得预估信息更加接近实际值。收集样本数据信息由W下子步骤实现:
[0206] S2. 1,在相同的时间间隔内,由集群中的超级节点发起所管控集群的控制器的信 息收集命令;集群所有控制器A,B,C开始向其管控的交换机收集packet-in报文个数和统 计向每个交换机下发的流表数及其它OF消息;
[0207] S2. 2,当控制器收集到所有管控交换机的统计信息,开始向集群分布式共享存储 系统发送流表、packet_in和其他OF消息的统计信息,分别记为Fi、Pi和Mi,其中Fi包括: 控制器编号,交换机标号,交换机流表统计,时间戳;Pl包括;控制器编号、交换机标号、交换 机上送的packet-in报文数、时间戳;Mi包括;控制器编号、交换机标号、交换机与控制器除 packet_in之外的其他OF信息、时间戳。所述时间戳是指收集到所有管控交换机的应答消 息的时刻。所有信息会作为历史参考或及时预测使用。
[020引 S3,超级节点使用控制器中的数据处理模块根据最小二乘法的数学模型预测下一 个时间间隔内各个控制器下的交换机上报的packet-in报文数、控制器向交换机下发的流 表数及其它OF消息,分别通过步骤S4、步骤S5和步骤S6来实现:
[0209] S4,根据时间戳,超级节点A从集群分布式共享存储系统中读取每个控制器上报 的packet-in报文统计信息,通过W下子步骤来实现:
[0210] S4. 1,送里取时间戳个数N = 5,即尝试获取5个时间戳的完整packet-in报文统 计信息集合;所述完整packet-in报文统计信息集合是指同一控制器同一时间戳的所有不 同的交换机上报的packet-in报文统计信息且时间戳是最近的;
[0211] S4. 2,若获取时间戳的完整packet-in报文统计信息集合不到5个,循环执行S2, 直到获取到5个时间戳的packet-in报文统计信息集合;
[0212] S4. 3,根据上述packet-in报文统计信息集合,超级节点针对每个交换机累计获 得5个时间戳的packet-in报文的信息统计Pi、P2、P3、P4、P5,即获得了送样的数据:Pi = {控制器编号、交换机编号、时间戳X、packet-in报文统计信息刊;
[0213] S4. 4,若上述5个时间戳的控巧[J器中packet-in报文信息统 计总和最大的郝一个大于控制器的历史packet-in报文统计Hipm。,,则
[0214] S4. 5,对集群控制器管控下的每个交换机,使用式1-1的最小二乘法数学模型, 并根据公式1-2和1-3计算得出下一个时间戳的各个交换机的packet-in报文统计信息 P. .
[021引 S4. 6,为了使得预估值更加接近实际值,取一周内该时间戳的接收到的packet-in 报文数量实际测量值,与预估值求和取平均。
[0216] S5,根据时间戳,超级节点A从集群分布式共享存储系统中读取每个控制器上报 的流表统计信息,通过W下子步骤来实现:
[0217] S5. 1,送里取时间戳个数N= 5,即尝试获取5个时间戳的完整流表统计信息集合; 所述完整流表统计信息集合是指同一控制器同一时间戳向所有不同的交换机下发的流表 统计信息且时间戳是最近的;
[021引S5. 2,若获取时间戳的完整流表统计信息集合不到5个,循环执行S2,直到获取到 5个时间戳的流表统计信息集合;
[0219] S5. 3,根据上述流表统计信息集合,超级节点针对每个交换机累计获得5个时间 戳的流表统计Fi、F2、F3、F4、Fs,即获得了送样的数据;Fi = {控制器编号、交换机编号、时间 戳X、流表统计刊;
[0220] S5. 4,若上述5个时间戳的控制器流量中流表统计总和最大的郝一个大于控制器 的历史流表统计
[0221] S5. 5,对集群控制器中各控制器管控的每个交换机,使用式1-1的最小二乘法数 学模型,并根据公式1-2和1-3计算得出下一时间戳的各个交换机的流表统计信息;
[0222] S5. 6,为了使得预估值更加接近实际值,取一周内该时间戳的流表统计实际测量 值,与预估值求和取平均。
[0223] S6,根据时间戳,超级节点从集群分布式共享存储系统中读取每个控制器上报的 除packet_in之外的其他OF交互信息统计(W后简称其他OF信息),通过W下子步骤来实 现:
[0224] S6. 1,确定时间戳个数N,即尝试获取N个时间戳的完整其他OF信息统计集合; 所述完整其它OF信息集合是指同一控制器同一时间戳的所有不同的交换机与控制器的除 packet_in之外的所有OF交互统计信息且时间戳是最近的;
[0225] S6. 2,若获取时间戳的完整其它OF信息统计集合不到N个,循环执行S2,直到获取 到N个时间戳的其它OF信息统计集合;
[0226] S6. 3,根据上述其它OF信息
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1