CN105262704A - 基于控制器与交换机的映射装置及其映射方法 - Google Patents

基于控制器与交换机的映射装置及其映射方法 Download PDF

Info

Publication number
CN105262704A
CN105262704A CN201510584322.XA CN201510584322A CN105262704A CN 105262704 A CN105262704 A CN 105262704A CN 201510584322 A CN201510584322 A CN 201510584322A CN 105262704 A CN105262704 A CN 105262704A
Authority
CN
China
Prior art keywords
controller
branch
node
switch
module
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
CN201510584322.XA
Other languages
English (en)
Other versions
CN105262704B (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.)
PLA Information Engineering University
Original Assignee
PLA Information Engineering University
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 PLA Information Engineering University filed Critical PLA Information Engineering University
Priority to CN201510584322.XA priority Critical patent/CN105262704B/zh
Publication of CN105262704A publication Critical patent/CN105262704A/zh
Application granted granted Critical
Publication of CN105262704B publication Critical patent/CN105262704B/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
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于控制器与交换机的映射装置及其映射方法,该映射装置包括:数据初始化模块,初始化计算;有用枝计算模块,计算控制器是否存在有用枝;控制器删除模块,修改控制器集合;枝推选模块,推选出负载最轻枝并返回该负载最轻枝的信息;交换机分配模块,完成交换机节点的分配;迭代条件判断模块,判断是否存在可用枝或是否存在可用控制器节点;映射确定模块,完成控制器集合中每个控制器节点与交换机节点的最终分配。本发明在避免控制器容量超载前提下,保证控制器到交换机的通信时延在可接受的范围,为控制器构造可靠的生成树,在保证QoS的基础上,减少了过去映射方法可能带来的数据丢失,大大提升了映射的可靠性和生成树的鲁棒性。

Description

基于控制器与交换机的映射装置及其映射方法
技术领域
本发明涉及计算机网络领域,特别涉及一种可靠的基于控制器与交换机的映射装置及其映射方法。
背景技术
目前,新型网络体系结构,如软件定义网络(SoftwareDefinedNetworks),吸引了学界的广泛关注。它分离了转发层与控制层,将原本束缚在路由器之内的智能环节抽离到上层。最值得注意的是其逻辑上集中的控制平面,使网络具备了协议标准开放、管理集中灵活和直接可编程等特点。但是,单控制器软件定义网络具有许多固有缺陷,如可扩展性和单点失效。由此,为了解决单控制器的相关问题,一些分布式架构逐渐出现,如Onix,Hyperflow和Kandoo。然而,与其他中心控制系统一样,这些系统的控制平面的可靠性受到巨大挑战,包括控制平面的可靠性和控制平面与数据平面的通信链路的可靠性。
现有研究多关注控制平面本身的可靠性,通过控制器布置改善控制拓扑的鲁棒性。但在某些情况下,出于政治、经济的相关原因,控制器布置将由于某些地理位置被禁止放置控制器而失效。此时,必须依靠控制平面与数据平面的通信链路来提升其可靠性,而控制器与交换机的分配映射关系是其中的典型环节。过去的相关研究多简单的把交换机映射到离其最近的控制器上。这样做的缺点是:1)可能会带来严重的控制器超载,当距离成为交换机映射的唯一考量因素时,很可能出现一种情况,即大多数交换机总是离某个控制器较近。此时,控制器将超载;2)可能会构建鲁棒性较差的控制器生成树,控制器交换机形成的节点簇类似于client-server网络,由于控制器负责域内交换机的通信、转发,其构成转发树的可靠性十分重要。仅注重时延的映射方法可能导致直连控制器的枝的负载失衡,一旦发生链路故障,会引发严重的数据丢失。
发明内容
针对现有技术中的不足,本发明提供一种可靠的基于控制器与交换机的映射装置及其映射方法。
按照本发明所提供的设计方案,一种基于控制器与交换机的映射装置,包含:
数据初始化模块,用于对网络信息数据进行初始化计算;
有用枝计算模块,根据数据初始化模块得到的数据来计算控制器是否存在有用枝;
控制器删除模块,判断控制器节点是否已完成与交换机的映射,若已完成,则删除指针指向的该控制器节点,重新修改控制器集合;
枝推选模块,用于推选出负载最轻枝,并返回该负载最轻枝的信息;
交换机分配模块,用于完成交换机节点的分配;
迭代条件判断模块,根据不同环节对是否存在可用枝或是否存在可用控制器节点进行判断;
映射确定模块,根据控制器节点和交换机节点的分配关系,完成控制器集合中每个控制器节点与交换机节点的最终分配。
上述的,所述迭代条件判断模块中根据不同环节对迭代条件进行判断处理包含:有用枝迭代判断单元,用于判断控制器节点是否存在有用枝,如果均为有用枝,则将数据传输至控制器删除模块进行删除该控制器节点处理,若存在有用枝,则将数据传输至枝推选模块进行处理;容量超载判断单元,用于判断控制器节点负载是否已超过控制器容量,若超过控制器容量,则将数据传输至控制器删除模块进行删除对应控制器节点处理。
一种基于控制器与交换机的映射方法,包含如下步骤:
步骤1.网络拓扑数据初始化;
步骤2.判断网络拓扑中是否存在未被分配的交换机节点,若存在,则进入步骤3,否则,跳转至步骤7;
步骤3.对控制器集合中的控制器节点进行判断,判断该控制器节点上的枝集合中是否有有用枝,若存在有用枝,则在有用枝集合中推选出到负载最轻枝,并将指针指向节点为负载最轻节点的孩子节点分配给已推选出的负载最轻枝,将步骤2中未被分配的交换机节点完成分配,进入步骤4,否则,跳转至步骤5;
步骤4.判断加入交换机节点后的负载是否超过控制器节点的容量,若超过,则进入下一步骤,否则,跳转至步骤6;
步骤5.从原有控制器集合中删除对应的控制器节点,重新修改控制器集合;
步骤6.更新网络数据并调整控制器枝集合中的每一枝的指针指向,并返回步骤2;
步骤7.分配结束。
上述的基于控制器与交换机的映射方法,步骤1中的网络信息数据包含拓扑生成各节点连接状态,控制器交换机的对应隶属关系,链路分配信息。
进一步的,所述步骤1包含如下内容:为控制器集合中的每个控制器节点建立元组,元组中的元素为枝的数组集合,每个控制器节点的指针指向即将分配的有用枝的头元素;更新网络信息数据,包括已分配和未分配的交换机节点。
本发明的有益效果:
1.本发明考虑对应映射关系带来的容量超载、枝上最大的负载量、worstcase的数据丢失、负载失衡时的丢包率提升等问题,通过对控制器的容量和交换机的流请求进行刻画,每次选择控制器的一个负载最轻枝,向其分配一个负载最轻节点,直到所有的枝都不可用或者控制器容量已经达到容量上限,在保证QoS基础的同时,减少了现有技术中映射方法可能带来的数据丢失,大大提升了映射的可靠性和生成树的鲁棒性。
2.本发明在避免控制器超载的前提下,保证控制器到交换机的通信时延在可接受的范围内,为每个控制器构造可靠的生成树,通过调整构建控制器与交换机映射关系,人为的为交换机选择负载最轻枝来提升软件定义网络的可靠性,,大大提升了映射装置的可靠性。
附图说明:
图1为本发明的基于控制器与交换机的映射装置原理图;
图2为本发明的基于控制器与交换机的映射方法流程示意图;
图3为本发明的网络拓扑数据初始化流程示意图;
图4为实施例三控制器与交换机分配示意图。
具体实施方式:
下面结合附图和技术方案对本发明作进一步详细的说明,并通过优选的实施例详细说明本发明的实施方式,但本发明的实施方式并不限于此。
实施例一,参见图1所示,一种基于控制器与交换机的映射装置,包含:
数据初始化模块,用于对网络信息数据进行初始化计算;
有用枝计算模块,根据数据初始化模块得到的数据来计算控制器是否存在有用枝;
控制器删除模块,判断控制器节点是否已完成与交换机的映射,若已完成,则删除指针指向的该控制器节点,重新修改控制器集合;
枝推选模块,用于推选出负载最轻枝,并返回该负载最轻枝的信息;
交换机分配模块,用于完成交换机节点的分配;
迭代条件判断模块,根据不同环节对是否存在可用枝或是否存在可用控制器节点进行判断;
映射确定模块,根据控制器节点和交换机节点的分配关系,完成控制器集合中每个控制器节点与交换机节点的最终分配。
进一步的,迭代条件判断模块中根据不同环节对迭代条件进行判断处理包含:有用枝迭代判断单元,用于判断控制器节点是否存在有用枝,如果均为有用枝,则将数据传输至控制器删除模块进行删除该控制器节点处理,若存在有用枝,则将数据传输至枝推选模块进行处理;容量超载判断单元,用于判断控制器节点负载是否已超过控制器容量,若超过控制器容量,则将数据传输至控制器删除模块进行删除对应控制器节点处理。
实施例二,参见图2所示,一种基于控制器与交换机的映射方法,包含如下步骤:
步骤1.网络拓扑数据初始化;
步骤2.判断网络拓扑中是否存在未被分配的交换机节点,若存在,则进入步骤3,否则,跳转至步骤7;
步骤3.对控制器集合中的控制器节点进行判断,判断该控制器节点上的枝集合中是否有有用枝,若存在有用枝,则在有用枝集合中推选出到负载最轻枝,并将指针指向节点为负载最轻节点的孩子节点分配给已推选出的负载最轻枝,将步骤2中未被分配的交换机节点完成分配,进入步骤4,否则,跳转至步骤5;
步骤4.判断加入交换机节点后的负载是否超过控制器节点的容量,若超过,则进入下一步骤,否则,跳转至步骤6;
步骤5.从原有控制器集合中删除对应的控制器节点,重新修改控制器集合;
步骤6.更新网络数据并调整控制器枝集合中的每一枝的指针指向,并返回步骤2;
步骤7.分配结束。
实施例三,与实施例二基本相同,不同之处在于:步骤1中的网络信息数据包含拓扑生成各节点连接状态,控制器交换机的对应隶属关系,链路分配信息。
进一步的,参见图3所示,步骤1中网络拓扑数据初始化还包含如下内容:为控制器集合中的每个控制器节点建立元组,元组中的元素为枝的数组集合,每个控制器节点的指针指向即将分配的有用枝的头元素;更新网络信息数据,包括已分配和未分配的交换机节点。
实施例四,通过具体的实施例来详细说明本发明的技术方案,参见图4所示,在已知网络中,控制器节点事先完成布置,对于已知网络拓扑,包括网络中的节点信息和边得信息,交换机节点分配给已知控制器,图4中不同图样的交换机用于标明不同控制器的隶属关系,仅用于示意并非实际的分配结果,为完成控制器的布置,使用本发明中的映射方法来实现,避免控制器容量超载的前提下,保证控制器到交换机的通信时延在可接受的范围内,为每个控制器构造可靠的生成树,在保证QoS基础上,减少过去映射方法可能带来的数据丢失,大大提升映射的可靠性和生成树的鲁棒性。
本发明并不局限于上述具体实施方式,本领域技术人员还可据此做出多种变化,但任何与本发明等同或者类似的变化都应涵盖在本发明权利要求的范围内。

Claims (5)

1.一种基于控制器与交换机的映射装置,其特征在于:包含:
数据初始化模块,用于对网络信息数据进行初始化计算;
有用枝计算模块,根据数据初始化模块得到的数据来计算控制器是否存在有用枝;
控制器删除模块,判断控制器节点是否已完成与交换机的映射,若已完成,则删除指针指向的该控制器节点,重新修改控制器集合;
枝推选模块,用于推选出负载最轻枝,并返回该负载最轻枝的信息;
交换机分配模块,用于完成交换机节点的分配;
迭代条件判断模块,根据不同环节对是否存在可用枝或是否存在可用控制器节点进行判断;
映射确定模块,根据控制器节点和交换机节点的分配关系,完成控制器集合中每个控制器节点与交换机节点的最终分配。
2.根据权利要求1所述的基于控制器与交换机的映射装置,其特征在于:所述迭代条件判断模块中根据不同环节对迭代条件进行判断处理包含:有用枝迭代判断单元,用于判断控制器节点是否存在有用枝,如果均为有用枝,则将数据传输至控制器删除模块进行删除该控制器节点处理,若存在有用枝,则将数据传输至枝推选模块进行处理;容量超载判断单元,用于判断控制器节点负载是否已超过控制器容量,若超过控制器容量,则将数据传输至控制器删除模块进行删除对应控制器节点处理。
3.一种基于控制器与交换机的映射方法,包含如下步骤:
步骤1.网络拓扑数据初始化;
步骤2.判断网络拓扑中是否存在未被分配的交换机节点,若存在,则进入步骤3,否则,跳转至步骤7;
步骤3.对控制器集合中的控制器节点进行判断,判断该控制器节点上的枝集合中是否有有用枝,若存在有用枝,则在有用枝集合中推选出到负载最轻枝,并将指针指向节点为负载最轻节点的孩子节点分配给已推选出的负载最轻枝,将步骤2中未被分配的交换机节点完成分配,进入步骤4,否则,跳转至步骤5;
步骤4.判断加入交换机节点后的负载是否超过控制器节点的容量,若超过,则进入下一步骤,否则,跳转至步骤6;
步骤5.从原有控制器集合中删除对应的控制器节点,重新修改控制器集合;
步骤6.更新网络数据并调整控制器枝集合中的每一枝的指针指向,并返回步骤2;
步骤7.分配结束。
4.根据权利要求3所述的基于控制器与交换机的映射方法,其特征在于:步骤1中的网络信息数据包含拓扑生成各节点连接状态,控制器交换机的对应隶属关系,链路分配信息。
5.根据权利要求3或4中任一项所述的基于控制器与交换机的映射方法,其特征在于:所述步骤1包含如下内容:为控制器集合中的每个控制器节点建立元组,元组中的元素为枝的数组集合,每个控制器节点的指针指向即将分配的有用枝的头元素;更新网络信息数据,包括已分配和未分配的交换机节点。
CN201510584322.XA 2015-09-15 2015-09-15 基于控制器与交换机的映射装置及其映射方法 Active CN105262704B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510584322.XA CN105262704B (zh) 2015-09-15 2015-09-15 基于控制器与交换机的映射装置及其映射方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510584322.XA CN105262704B (zh) 2015-09-15 2015-09-15 基于控制器与交换机的映射装置及其映射方法

Publications (2)

Publication Number Publication Date
CN105262704A true CN105262704A (zh) 2016-01-20
CN105262704B CN105262704B (zh) 2018-02-23

Family

ID=55102212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510584322.XA Active CN105262704B (zh) 2015-09-15 2015-09-15 基于控制器与交换机的映射装置及其映射方法

Country Status (1)

Country Link
CN (1) CN105262704B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135165A (zh) * 2017-05-08 2017-09-05 梁海燕 一种软件定义网络中分布式控制器的自适应选择方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1349697A (zh) * 1999-06-25 2002-05-15 艾利森电话股份有限公司 交换机结构
CN103746853A (zh) * 2014-01-24 2014-04-23 迈普通信技术股份有限公司 一种端口生成树角色的计算方法及装置
CN104065764A (zh) * 2014-07-05 2014-09-24 中国科学技术大学 一种软件定义网络中基于地址替换的移动管理系统
CN104579949A (zh) * 2013-10-15 2015-04-29 日立金属株式会社 网络中继系统以及交换机装置
US9077648B2 (en) * 2005-06-10 2015-07-07 Partee Cluster Compentence Center Gmbh Data communication system with multiple input/outputs and method of processing data packets
CN104796344A (zh) * 2014-01-16 2015-07-22 中兴通讯股份有限公司 基于SDN实现报文转发的方法、系统、Openflow交换机及服务器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1349697A (zh) * 1999-06-25 2002-05-15 艾利森电话股份有限公司 交换机结构
US9077648B2 (en) * 2005-06-10 2015-07-07 Partee Cluster Compentence Center Gmbh Data communication system with multiple input/outputs and method of processing data packets
CN104579949A (zh) * 2013-10-15 2015-04-29 日立金属株式会社 网络中继系统以及交换机装置
CN104796344A (zh) * 2014-01-16 2015-07-22 中兴通讯股份有限公司 基于SDN实现报文转发的方法、系统、Openflow交换机及服务器
CN103746853A (zh) * 2014-01-24 2014-04-23 迈普通信技术股份有限公司 一种端口生成树角色的计算方法及装置
CN104065764A (zh) * 2014-07-05 2014-09-24 中国科学技术大学 一种软件定义网络中基于地址替换的移动管理系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135165A (zh) * 2017-05-08 2017-09-05 梁海燕 一种软件定义网络中分布式控制器的自适应选择方法
CN107135165B (zh) * 2017-05-08 2020-07-31 郭得科 一种软件定义网络中分布式控制器的自适应选择方法

Also Published As

Publication number Publication date
CN105262704B (zh) 2018-02-23

Similar Documents

Publication Publication Date Title
CN103560967B (zh) 一种业务需求感知的虚拟数据中心映射方法
CN104092621B (zh) 一种负载分担方法和装置
CN104937572A (zh) 业务和/或工作负荷处理
EP3063903A1 (en) Method and system for load balancing at a data network
CN109951869A (zh) 一种基于云雾混合计算的车联网资源分配方法
CN104065585A (zh) 一种在软件定义网络中动态调整控制器负载的方法
CN103457852B (zh) 一种多播虚拟网络的抗毁性映射方法
CN105357124B (zh) 一种MapReduce带宽优化方法
CN106789640A (zh) 一种基于sdn的优先级分类方法、装置和系统
CN108234169A (zh) 一种分布式仿真网络结构实时动态优化方法
CN103441918A (zh) 一种自组织集群服务器系统及其自组织方法
CN111478793B (zh) 一种业务请求的处理方法、装置、终端设备和存储介质
CN104852859B (zh) 一种聚合接口业务处理方法和设备
CN107306224A (zh) 一种路由路径更新方法及网络管理装置
CN110493059A (zh) 基于云端固件的多物联网平台自动加载的系统及其方法
CN104426813A (zh) 一种流表更新的控制方法、装置及控制器
CN102439920B (zh) 业务跨层分离路径计算方法、装置以及通信系统
CN103856449B (zh) 一种用于创建多个虚拟接入节点的接入底盘节点
CN110535673B (zh) 虚拟子网的构建方法、设备及存储介质
CN105262704A (zh) 基于控制器与交换机的映射装置及其映射方法
CN105337832A (zh) 在线多播虚拟网络的资源分配方法
CN103595649A (zh) 实现负载均衡的方法和系统
CN103746894A (zh) 一种基于地理位置约束的批量虚拟网络映射方法
CN105847428A (zh) 一种移动云平台
CN100431306C (zh) 动态网络连接分配系统及方法

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