[发明专利]一种基于最小堆的软件定义网络扩展方法有效
申请号: | 201611055837.1 | 申请日: | 2016-11-25 |
公开(公告)号: | CN106656578B | 公开(公告)日: | 2019-10-18 |
发明(设计)人: | 姜竹青;刘崇华;何善宝;王婵;门爱东;杨波;刘杨 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | H04L12/24 | 分类号: | H04L12/24 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 汤财宝 |
地址: | 100876 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 最小 软件 定义 网络 扩展 方法 | ||
本发明提供一种基于最小堆的软件定义网络扩展方法,利用软件定义网络中控制器能获取网络拓扑结构的特点将全网构造成一个或多个最小堆;利用最小堆的插入算法可将新加入的网络节点与原有堆合并至一个堆,从而实现网络的扩展;利用最小堆的堆合并算法可将新加入的堆与原有堆合并至一个堆,从而实现网络的扩展。通过优化软件定义网络的数据结构,在网络扩展中采用最小堆,利用最小堆的特点可灵活的向网络中添加节点或多个节点形成的堆,并且基于最小堆优化的路由算法明显降低了时间复杂度。
技术领域
本发明涉及通信技术领域,更具体地,涉及一种基于最小堆的软件定义网络扩展方法。
背景技术
软件定义网络(Software Defined Network,SDN),是由Emulex提出的一种新型网络创新架构,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。
由于传统的网络设备(交换机、路由器)的固件是由设备制造商锁定和控制,所以SDN希望将网络控制与物理网络拓扑分离,从而摆脱硬件对网络架构的限制。这样企业便可以像升级、安装软件一样对网络架构进行修改,满足企业对整个网站架构进行调整、扩容或升级。而底层的交换机、路由器等硬件则无需替换,节省大量的成本的同时,网络架构迭代周期将大大缩短。
软件定义网络是最近几年网络研究领域的热点,它分离了网络的控制平面和数据平面,而控制平面是软件定义网络的大脑,其能力极大地影响着软件定义网络网络的可拓展性。目前针对软件定义网络可拓展性的研究已经非常火热,对应的解决方案也已经有不少。根据控制器数目的不同,解决方案可以分为如下两类:单控制器节点的性能拓展以及部署多控制器系统。根据控制器系统中控制器的种类异同可以将方案分为分布式控制器和东西向接口协议两种解决方案。但是并没有解决方案结合路由算法来优化存储结构,从而扩展网络。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的基于最小堆的软件定义网络扩展方法,在网络扩展中采用最小堆,利用最小堆的特点可灵活的向网络中添加节点或多个节点形成的堆,并且基于最小堆优化的路由算法明显降低了时间复杂度。
根据本发明的一个方面,提供一种软件定义网络扩展方法,包括以下步骤:
S1、获取网络拓扑结构,并将全网构造成一个或多个最小堆;
S2、将新加入的网络与最小堆合并至一个堆,实现网络的扩展。
作为优选的,所述步骤S1具体包括:
S11、将软件定义网络中的Floodlight作为控制器,Mininet作为网络模拟器构造网络;
S12、Floodlight与Mininet建立连接从得到网络的拓扑结构;
S13、建立一个空的最小堆,将拓扑结构的每个节点插入堆,构成初始的最小堆。
作为优选的,所述步骤S13中,每一个最小堆包括最小键指针,每一个节点包含父指针、左孩子指针和右孩子指针。
作为优选的,所述步骤S2具体包括:
利用最小堆的插入算法将新加入的网络节点与原有堆合并至一个堆,实现网络的扩展;
利用最小堆的合并算法将新加入的堆与原有堆合并至一个堆,实现网络的扩展。
作为优选的,所述步骤S2中,插入网络节点方法具体包括,将待插入的节点x的所有指针都初始为空,将x插入堆的根链表中,若堆的根节点为空或根节点的值大于x的值,则调整堆的结构,将插入节点作为堆的节点。
作为优选的,所述步骤S2中,合并新加入的堆的方法包括:利用最小堆的堆合并算法,将需合并的两个堆的两根表串联,并确定一个新的最小结点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611055837.1/2.html,转载请声明来源钻瓜专利网。