CN104253749B - 一种基于软件定义网络架构的用户端分布式路径计算方法 - Google Patents

一种基于软件定义网络架构的用户端分布式路径计算方法 Download PDF

Info

Publication number
CN104253749B
CN104253749B CN201410479614.2A CN201410479614A CN104253749B CN 104253749 B CN104253749 B CN 104253749B CN 201410479614 A CN201410479614 A CN 201410479614A CN 104253749 B CN104253749 B CN 104253749B
Authority
CN
China
Prior art keywords
network
user
software
user terminal
controller
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.)
Active
Application number
CN201410479614.2A
Other languages
English (en)
Other versions
CN104253749A (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.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
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 South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201410479614.2A priority Critical patent/CN104253749B/zh
Publication of CN104253749A publication Critical patent/CN104253749A/zh
Application granted granted Critical
Publication of CN104253749B publication Critical patent/CN104253749B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开的一种基于软件定义网络架构的用户端分布式路径计算方法,包含以下步骤:用户通过控制器的北向接口,向网络控制器获取网络拓扑和链路代价信息,在此基础上进行路径计算,确定路由和流量分布,并向控制器提交路由请求;网络控制器负责更新网络拓扑和链路状态,并根据用户的路由选择向数据转发设备下发流表。本发明的方法,用户路径计算使得用户参与网络控制,实现网络资源使用的分布式优化;同时,控制器通过向用户提供网络拓扑信息,可以实现网络资源和功能对用户的虚拟化,达到网络资源的优化配置,集约使用。本发明使得用户获得了在网络安全范围内的极大的权利,提高了网络的透明度,让SDN架构服务于用户。

Description

一种基于软件定义网络架构的用户端分布式路径计算方法
技术领域
[0001] 本发明涉及软件定义网络、网络的控制和管理,以及网络路径计算等领域,特别涉 及一种基于软件定义网络架构的用户端分布式路径计算方法。
背景技术
[0002] 传统通信网络依赖0SI七层网络协议栈工作,网络的控制面分散在不同的设备中, 网络协议运行的透明度低。对于用户来说,应用程序如何使用网络协议栈、信息的安全性不 能直观掌握也无法控制;对于网络管理人员,网络如同黑匣子一样,难以控制网络中的流量 分布,不利于对网络设备的维护和优化;而对于网络运营商来说,每一次升级设备、更改运 营收费方式需要对所有的网络设备进行更新换代,更是极为不便。
[0003] 传统网络的缺陷诟病已久,弹性计算、虚拟网络技术、MPLS等的出现虽然在一定程 度上缓解了传统网络的缺点,但是却大大增加了网络的复杂度,给网络管理人员、研究人员 带来了巨大的压力,同时也增加了网络协议升级、修改的难度和成本。这使得传统网络越来 越庞大和趋于静态,与当今对动态网络的需求相逆。
[0004]当前网络发展的趋势是网络的控制面集中化,而且逐步向用户开放。软件定义网 络(software defined network,SDN)已经实现了网络控制面的集中化。近年,数据中心等 网络需求大户相继出现,他们有参与网络管理,降低网络运营成本的动力。本创新方案提供 一种在SDN控制器协调下,用户参与网络控制,具体为参与网络路径计算的机制。
发明内容
[0005]本发明的目的在于克服现有技术的缺点与不足,提供一种基于软件定义网络架构 的用户端分布式路径计算方法。
[0006]本发明的目的通过以下的技术方案实现:
[0007] 一种基于软件定义网络架构的用户端分布式路径计算方法,包括以下步骤:
[0008] (1)通过软件定义网络的北向接口,用户与网络控制器进行交互,向网络控制器请 求网络拓扑和链路代价信息;
[0009] (2)在软件定义网络架构下,网络控制器与网络交换/转发设备通过南向接口(如 0penFl〇w协议)进行通信,控制网络中数据的转发、获取网络的拓扑结构和链路的信息,包 括带宽、时延、流量等;
[0010] 网络控制器周期性的维护和更新网络拓扑和链路代价信息,并对网络资源和功能 进行管理,响应步骤⑴的用户请求;
[0011] (3)用户根据收到的网络拓扑和链路代价信息,计算满足自身需求的最优的路径 和流量分配,确定了自身业务流在网络中的转发路径和相应路径的流量;
[0012] (4)根据步骤(3)的计算结果,用户通过北向接口向网络控制器提交路由请求,所 述路由请求携带了步骤⑶的计算结果;
[0013]⑸网络控制器收到用户的路由请求后下发流表,所述流表即为步骤⑶的计算结 果;流表中包括源节点和目的节点等信息,实现数据包的匹配和转发;
[0014] (6)网络交换设备收到流表后写入设备中,数据包根据流表进行匹配,完成数据的 转发。
[0015]上述步骤⑴-⑹由用户的网络通信需求触发,并能够多次(如周期性)重复以进 行动态路径计算。
[0016] 步骤⑵所述网络控制器使用虚拟化(virtualization)技术或覆盖(overlay)技 术对网络资源和功能管理;同时调整链路代价信息。该动作能够影响步骤(3)的用户路径计 算结果,以达到网络资源的优化使用。
[0017]所述步骤⑶的路由决策和步骤⑷的路由请求由用户手动完成,或者由软件中间 件自动完成。
[0018]本发明与现有技术相比,具有如下优点和有益效果:
[0019] (1)用户参与网络控制与路径计算。传统网络将网络协议封装在硬件设备中,用户 无法了解网络运行的情况,也不能按照自己的需求选择合适的链路和设备。在SDN网络下, 网络管理功能上升至SDN控制器。用户可以通过REST API指令控制SDN中央控制器,令控制 器下发流表满足选路请求。据此,我们提出让用户参与网络控制与路径计算,改变了传统网 络对用户的局限性,大大提高了网络的透明度和用户的权力,使得网络从软件定义走向用 户定义。
[0020] 用户向SDN数据中心控制器提出业务请求,控制器分析请求后给出拓扑结构,由用 户选路后提交选路请求,控制器再下发流表到数据中心的网络设备。充分的体现SDN网络 中,应用程序和网元设备应实现紧耦合的交互,服务开通配置、分析和优化三个阶段应紧密 结合的特点,展示了网络可编程性的优越性。
[0021] (2)网络控制器实现网络(资源)虚拟化,达到网络资源的优化配置。本方案中,网 络的拓扑信息对用户的行为有至关重要的影响。出于安全或者网络资源优化的考虑,控制 器为用户提供基于实际物理承载网(underlay)的叠加(overlay)虚拟网络拓扑结构,实现 了网络资源的虚拟化和网络功能虚拟化,实现网络资源的优化配置。
[0022]用户端的路径计算还可以减轻控制器集中计算的压力,实现分布式计算,从而优 化网络的资源使用。
[0023] (3)技术与商业模式结合。传统网络分散的控制面很难提供灵活的网络运营模式。 当前的网络运营模式一般有两种:对网络使用时间或对网络流量收费,不能实现对网络资 源(包括带宽和链路)的使用实现更精细化运营收费。如根据跳数的不同采取不同的收费标 准,根据占用带宽的不同采用不同的收费。本方案中,对资源的使用费用可以体现在链路或 路径的代价中,通过控制器发布给用户,使得本技术方案与网络的运营模式紧密结合起来。 同时,升级、改变网络设备只需要修改、添加SDN控制的模块即可,大大减少了运营商的运行 和维护成本。
附图说明
[0024]图1为本发明所述的一种基于软件定义网络架构的用户端分布式路径计算方法的 流程图;
[0025]图2为图1所述方法在软件定义网络架构下,采用Floodlight Controller开源控 制器控制下的网络结构图;
[0026]图3为’臟施在F1(X)dlight G()ntr()ller_器下展示的示例巾數的拓扑 结构图。
具体实施方式
[0027]下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限 于此。
[0028] 如图丨,一种基于软件定义网络架构的用户端分布式路径计算方法,包括以下步 骤:
[0029] (1)通过软件定义网络的北向接口,用户与网络控制器进行交互,向网络控制器请 求网络拓扑和链路代价信息;
[0030] (2)在软件定义网络架构下,网络控制器与网络交换/转发设备通过南向接口(如 OpenHow协议)进行通信,控制网络中数据的转发、获取网络的拓扑结构和链路的信息,包 括带宽、时延、流量等;
[0031] 网络控制器周期性的维护和更新网络拓扑和链路代价信息,并对网络资源和功能 进行管理,响应步骤(1)的用户请求;
[0032] (3)用户根据收到的网络拓扑和链路代价信息,计算满足自身需求的最优的路径 和流量分配,确定了自身业务流在网络中的转发路径和相应路径的流量;
[0033] ⑷根据步骤(3)的计算结果,用户通过北向接口向网络控制器提交路由请求,所 述路由请求携带了步骤⑶的计算结果;
[0034] (5)网络控制器收到用户的路由请求后下发流表,所述流表即为步骤〇3)的计算结 果;流表中包括源节点和目的节点等信息,实现数据包的匹配和转发;
[0035] ⑹网络交换设备收到流表后写入设备中,数据包根据流表进行匹配,完成数据的 转发。
[0036]上述步骤(1)-(6)由用户的网络通信需求触发,并能够多次(如周期性)重复以进 行动态路径计算。
[0037] 步骤⑵所述网络控制器使用虚拟化(virtualization)技术或覆盖(overlay)技 术对网络资源和功能管理;同时调整链路代价信息。该动作能够影响步骤(3)的用户路径计 算结果,以达到网络资源的优化使用。
[0038]所述步骤⑶的路由决策和步骤⑷的路由请求由用户手动完成,或者由软件中间 件自动完成。
[0039] 下面以Floodlight Controller开源控制器与Mininet虚拟网络为实例对本发明 作进一步详细的描述,但本发明的实施方式不限于此。
[0040] 为实现Floodlight Controller开源控制器下的用户端分布式路径计算,首先要 在PC机器上安装F1 〇〇d 1 i gh t,作为软件定义网络架构的控制器。PC机器上VMwar e Workstation中运行带有Mininet的虚拟机,用来模拟出OpenFlow交换机,主机等自定义的 网络拓扑结构,结构如图2所示。
[0041] 具体实现步骤如下:
[0042] (1)在Mininet中新建一个网络拓扑图,输入的指令如下:
[0043] >>sudo mn- - controller = remote - - ip = 192.168.246.1 - - port = 6633- - custom/ home/openflow/mininet/custom/topo_tlink_411.py--topo topo411
[0044] 上述指令可以实现建立一个基于OpenFlow协议的Mininet拓扑结构,并由宿主机 进行远程控制,数据交换端口为6633。此拓扑结构由四台交换机31、82、33、84组成,一台主 机h5,一台服务器116组成。?1〇〇(1118111:具有可视化界面,可在1〇〇3111〇31::8080/11;[/ index.html界面中显不。在浏览器打开localhost:8080/ui/index.html获取当前拓扑结构 如图3所示。
[0045] (2)用户通过控制器北向接口 REST API指令向网络控制器Floodlight Controller请求网络拓扑和链路代价信息。此处需要使用的REST API指令是GET指令,如下 所示。
[0046] nodedict=nodes.get (data) ; testlist = links.get (data)
[0047] (3)通过GET指令获取到全网拓扑结构之后,网络控制器Floodlight Controller 通过内部的监听模块维护和更新网络拓扑和链路代价信息,并响应用户请求。用户可获取 的全网拓扑信息,包括网络中所有交换机及其id编号,以及链路的源目的节点id编号和项 目的交换机连接端口号等。
[0048] ⑷用户根据步骤(1)收到的网络拓扑和链路代价信息,计算满足自身需求的最优 的路径和流量分配。此处计算方法可以根据用户不同的需求进行改变。
[0049] (5)根据步骤⑷的计算结果,用户通过REST API指令向网络控制器提交路由请 求。此处需要使用的REST API指令是PUT指令,如下所示:
[0050] pusher. set (f lowl)
[0051]此处flowl代表流表项,流表项由用户选路结果决定。
[0052] (6)网络控制器Hoodlight Controller根据用户的路由请求调用转发模块下发 流表;
[0053]⑺网络交换设备根据流表转发用户数据。
[0054]上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的 限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化, 均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (9)

1. 一种基于软件定义网络架构的用户端分布式路径计算方法,其特征在于,包括以下 顺序的步骤: (1)用户向网络控制器请求网络拓扑和链路代价信息; ⑵网络控制器维护和更新网络拓扑和链路代价信息,并响应用户请求; (3) 用户根据步骤(2)收到的网络拓扑和链路代价信息,计算满足自身需求的最优的路 径和流量分配; (4) 根据步骤(3)的计算结果,用户向网络控制器提交路由请求,所述路由请求携带了 步骤⑶的计算结果; ⑸网络控制器根据用户的路由请求下发流表,所述流表即为步骤⑶的计算结果; (6)网络交换设备根据流表转发用户数据。
2. 根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:用户和网络控制器之间通过软件定义网络的北向接口进行交互。
3. 根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:步骤(2)中,所述的网络控制器可以与网络交换/转发设备进行通信,控制网络中数 据的转发、获取网络的拓扑结构和链路的信息,包括带宽、时延、流量。
4. 根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:步骤⑵中,所述的网络控制器对网络资源和功能虚拟化管理,并向用户在步骤(1) 中的请求返回虚拟化后的网络拓扑信息。
5.根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:步骤(2)中,所述的网络控制器通过调整链路而影响用户路径计算,达到网络资源 的优化使用。
6. 根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:步骤(3)中,所述的用户端路径计算确定了该用户业务流在网络中的转发路径和相 应路径的流量。
7. 根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:所述步骤(1) - (6)由用户的网络通信需求触发,并能够多次重复以进行动态路径计 算。
8. 根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:所述步骤(1)、(3)和⑷在用户端执行;所述步骤(2)和⑸在网络控制器中执行。
9. 根据权利要求1所述的基于软件定义网络架构的用户端分布式路径计算方法,其特 征在于:所述步骤(3)的路由决策和步骤(4)的路由请求由用户手动完成,或者由软件中间 件自动完成。
CN201410479614.2A 2014-09-18 2014-09-18 一种基于软件定义网络架构的用户端分布式路径计算方法 Active CN104253749B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410479614.2A CN104253749B (zh) 2014-09-18 2014-09-18 一种基于软件定义网络架构的用户端分布式路径计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410479614.2A CN104253749B (zh) 2014-09-18 2014-09-18 一种基于软件定义网络架构的用户端分布式路径计算方法

Publications (2)

Publication Number Publication Date
CN104253749A CN104253749A (zh) 2014-12-31
CN104253749B true CN104253749B (zh) 2018-04-13

Family

ID=52188306

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410479614.2A Active CN104253749B (zh) 2014-09-18 2014-09-18 一种基于软件定义网络架构的用户端分布式路径计算方法

Country Status (1)

Country Link
CN (1) CN104253749B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104994019B (zh) * 2015-05-12 2018-10-02 清华大学 一种用于sdn控制器的水平方向接口系统
CN105141512B (zh) * 2015-06-29 2018-01-16 清华大学 支持分组/电路混合交换网络的统一网络架构和控制方法
US9825850B2 (en) 2015-06-30 2017-11-21 Industrial Technology Research Institute Network controlling method and network controller
CN105024853A (zh) * 2015-07-01 2015-11-04 中国科学院信息工程研究所 基于谣言传播机制的sdn资源匹配和服务路径发现方法
CN105553842B (zh) * 2015-12-10 2019-04-09 华南理工大学 一种基于网络休眠的用户自主路由方法
CN106936857B (zh) * 2015-12-29 2020-05-19 中国电信股份有限公司 一种混合云的连接管理方法、sdn控制器及混合云系统
CN105450521B (zh) * 2015-12-31 2019-10-25 中国电子科技集团公司电子科学研究院 一种软件定义的多路径网络流实时动态优化方法
CN106559330B (zh) * 2016-01-22 2020-06-16 国网智能电网研究院 一种基于sdn的动态路径规划方法
CN107404507A (zh) * 2016-05-20 2017-11-28 中兴通讯股份有限公司 一种sdn资源的处理方法及装置
CN107493231A (zh) * 2016-06-12 2017-12-19 阿里巴巴集团控股有限公司 一种cdn的动态路由方法及装置
TWI623223B (zh) * 2016-08-02 2018-05-01 Chunghwa Telecom Co Ltd 支援多樣性架構元件之軟體定義網路控制器
CN106789648B (zh) * 2016-12-15 2019-09-03 南京邮电大学 基于内容存储与网络状况的软件定义网络路由决策方法
CN107579850B (zh) * 2017-09-05 2021-05-18 郑州云海信息技术有限公司 一种云数据中心基于sdn控制的有线无线混合组网方法
CN107483511A (zh) * 2017-10-10 2017-12-15 山东大学 一种基于软件定义网络SDN的流媒体QoE控制系统
CN108092888B (zh) * 2017-10-31 2021-06-08 华为技术有限公司 一种基于Overlay网络的传输方法、网关及传输系统
CN108377221A (zh) * 2017-11-02 2018-08-07 北京紫光恒越网络科技有限公司 调用路由算法的方法及装置
CN108200623B (zh) * 2017-12-29 2020-09-22 华南理工大学 一种基于遗传算法的集中式路径计算和节能方法
CN109995650A (zh) * 2018-01-03 2019-07-09 中兴通讯股份有限公司 基于sdn网络的多维约束下路径计算方法及装置
CN108401040B (zh) * 2018-03-01 2021-01-15 北京邮电大学 用于ndn的内容接收方法、内容发送方法、装置及系统
CN110213363B (zh) * 2019-05-30 2020-12-22 华南理工大学 基于软件定义网络的云资源动态分配系统及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8787154B1 (en) * 2011-12-29 2014-07-22 Juniper Networks, Inc. Multi-topology resource scheduling within a computer network

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332375B2 (en) * 2007-08-29 2012-12-11 Nirvanix, Inc. Method and system for moving requested files from one storage location to another
US9143557B2 (en) * 2012-06-27 2015-09-22 Juniper Networks, Inc. Feedback loop for service engineered paths
US8942226B2 (en) * 2012-10-05 2015-01-27 Ciena Corporation Software defined networking systems and methods via a path computation and control element
WO2014063110A1 (en) * 2012-10-19 2014-04-24 ZanttZ, Inc. Network infrastructure obfuscation
CN103051539B (zh) * 2012-12-14 2015-09-16 中兴通讯股份有限公司 一种基于dht的控制网络实现方法、系统和网络控制器
CN103746911B (zh) * 2014-01-20 2017-06-09 中国联合网络通信集团有限公司 一种sdn网络结构及其通信方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8787154B1 (en) * 2011-12-29 2014-07-22 Juniper Networks, Inc. Multi-topology resource scheduling within a computer network

Also Published As

Publication number Publication date
CN104253749A (zh) 2014-12-31

Similar Documents

Publication Publication Date Title
CN104253749B (zh) 一种基于软件定义网络架构的用户端分布式路径计算方法
CN104363159B (zh) 一种基于软件定义网络的开放虚拟网络构建系统和方法
CN103763367A (zh) 一种云计算数据中心分布式虚拟网络设计方法及系统
CN105406992B (zh) 一种面向sdn的业务需求转化和部署方法
CN106301911B (zh) 基于sdn的空间信息网络半实物集中式仿真平台及其实现方法
Rego et al. Software Defined Network-based control system for an efficient traffic management for emergency situations in smart cities
Secci et al. Linking virtual machine mobility to user mobility
CN105763570A (zh) 一种基于虚拟化技术的分布式实时网络仿真系统
CN105684365A (zh) 利用软件定义流映射和虚拟化的网络功能的网络控制
CN106685835B (zh) 一种在数据中心的计算节点间实现高速分布式路由的方法
CN104301129A (zh) 一种软件定义网络中的动态主机配置方法及系统
CN104301812A (zh) 一种光网络系统和网络功能虚拟化方法
CN105282043A (zh) 全局网络负载均衡系统、设备和方法
CN102307246A (zh) 基于云计算的虚拟机间安全通信保护系统及其方法
CN107135158A (zh) 一种多路径传输中最优路径选择方法
CN103414612A (zh) 一种基于opnet的通信网络实时仿真方法
TWI623223B (zh) 支援多樣性架構元件之軟體定義網路控制器
Heller et al. Ripcord: a modular platform for data center networking
Sotiriadis et al. Virtual machine cluster mobility in inter-cloud platforms
CN107846304A (zh) 一种混合云服务基础架构集中化管理的自动化引擎
CN108123818A (zh) 一种虚实网络灵活可扩展融合的仿真方法
CN106302204A (zh) 传输处理方法及装置
CN104753695A (zh) Sdn网络拓扑结构的发现及实时呈现系统及方法
CN104486290B (zh) 一种基于OpenFlow的流媒体云透明服务装置
CN104734987A (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