基于 openflow 实现网络虚拟化

基于 openflow 实现网络虚拟化

ID:20454880

大小:964.50 KB

页数:11页

时间:2018-10-09

基于 openflow 实现网络虚拟化_第1页
基于 openflow 实现网络虚拟化_第2页
基于 openflow 实现网络虚拟化_第3页
基于 openflow 实现网络虚拟化_第4页
基于 openflow 实现网络虚拟化_第5页
资源描述:

《基于 openflow 实现网络虚拟化》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、www.sdnlab.com基于OpenFlow实现网络虚拟化虚拟化技术一直是云计算发展的重要推动因素。作为云计算的基础构架,桌面、存储和服务器的虚拟化都已经发展的如火如荼,而OpenFlow和SDN(SoftwareDefinedNetwork)的提出,使得同为基础架构的网络交换设备支持网络虚拟化多租户架构,将物理网络和逻辑网络有效分离,满足了云计算的服务特性,同时提升了网络资源的利用率。什么是OpenFlowOpenFlow是SoftwareDefindedNetwork的一种,由斯坦福大学的NickMcKeown教授在2008年4月AC

2、MCommunicationsReview上发表的一篇论文OpenFlow:enablinginnovationincampusnetworks转载文章请注明,转载自:SDN技术社区

3、SDN/Openflow社区

4、专注软件定义网络www.sdnlab.com里首先提出来的。它最初的出发点是用于网络研究人员实验其创新网络架构、协议,考虑到实际的网络创新思想需要在实际网络上才能更好地验证,而研究人员又无法修改在网的网络设备,故而提出了OpenFlow的控制转发分离架构,将控制逻辑从网络设备盒子中引出来,研究者可以通过一组定义明确的接口对网络设备进

5、行任意的编程从而实现新型的网络协议、拓扑架构而无需改动网络设备本身。图1.基于OpenFlow的网络交换设备网络交换设备,无论是交换机还是路由器,其核心信息都保存在FlowTable里面,这些FlowTable被用来实现诸如转发、防火墙、Qos、统计分析等各种功能。不同生产厂家的FlowTable有着不同的格式,OpenFlow定义了一套对这些FlowTable进行操作的可扩展的通用标准。如图1所示,一个OpenFlow的交换设备至少由下面三个部分组成:§FlowTable:FlowTable里面的每个条目都会与一个动作相关联,来告诉网络交换

6、设备来如何处理与这个条目相关联的dataFlow;转载文章请注明,转载自:SDN技术社区

7、SDN/Openflow社区

8、专注软件定义网络www.sdnlab.com§SecureChannel:用于连接网络交换设备和远程网络控制器,在控制器和网络交换设备之间互相发送命令和数据包;§OpenFlowProtocol:提供一个开放标准统一的接口,使得控制器和网络交换设备之间可以相互通信。这样通过OpenFlow协议,网络交换设备以外的控制器就可以对网络交换设备的FlowTable进行编程和管理。FlowTable对远程访问控制的支持,将FlowT

9、able的配置与管理从网络交换设备本身中剥离出来,也使得对整个网络中FlowTable进行集中控制与管理成为可能,从而将物理网络和逻辑网络的定义有效分离,如图2所示。而出于性能角度考虑和为了解决单点失效问题,OpenFlow协议还允许多个控制器同时对同一个OpenFlow交换设备进行配置与管理。图2.对整个网络的FlowTable进行集中控制转载文章请注明,转载自:SDN技术社区

10、SDN/Openflow社区

11、专注软件定义网络www.sdnlab.com多个控制器通过修改FlowTable定义不同的规则,对于不同的Flow采取不同的操作,将物

12、理网络有效地分割成互相独立的逻辑网络,从而实现网络的虚拟化。如图3所示,在同一个物理网络中,ControllerA定义FlowTable1用于租户A的网络应用,ControllerB定义FlowTable2用于租户B的网络应用,ControllerC定义FlowTable3用于租户C的网络应用,而红线所标明的部分代表交换设备对网络流量现有的正常处理。图3.物理网络被分割成不同的逻辑网络FlowTable和Pipeline匹配过程FlowTable转载文章请注明,转载自:SDN技术社区

13、SDN/Openflow社区

14、专注软件定义网络www.sd

15、nlab.com要弄清楚什么是FlowTable,得先明白什么是Flow,某种特定的网络流量都可以认为是一个Flow,譬如从某个特定的Mac地址或IP地址发出的TCP连接可以认为是一个Flow,譬如所有的UDP数据包,或者像Tunnels、VLANs都可以认为是一个Flow。通过将网络流量根据FlowTable划分为不同的数据流,这些数据流能被归于不同的组且相互隔离,从而能够分别按照需要来处理和控制。FlowTable中的每个条目由匹配字段、计数器和指令集组成(表1):●匹配字段:报文匹配的输入关键字;●计数器:用于对匹配报文的流量统计;●指

16、令:当有报文匹配时,指令会修改匹配报文的Action集合,或者修改Pipeline的处理流程,来决定报文如何转发;Pipeline匹配过程OpenFlowPipel

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。