SDN 兴起
传统网络管理方式发展缓慢,往往通过命令行接口,进行手工配置,运营成本高,网络升级时间长,缺乏灵活性,对需求变化响应速度慢,而且容易发生错误。
2012年7月,SDN代表厂商Nicira被VMware以12.6亿美元收购,随后Google宣布成功在其全球10个IDC网络中部署SDN,这促使SDN引起业界的强烈关注。
SDN架构
软件定义网络(Software Defined Network, SDN ),是Emulex网络一种新型网络创新架构,是网络虚拟化的一种实现方式,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能。
SDN特点
- 控制与转发分离。转发平面由受控转发的设备组成,转发方式以及业务逻辑由运行在分离出去的控制面上的控制应用所控制。
- 控制平面与转发平面之间的开放接口。为控制平面提供开放可编程接口。控制应用只需要关注自身逻辑,而不需要关注底层更多的实现细节。
- 逻辑上的集中控制。逻辑上集中的控制平面可以控制多个转发面设备,也就是控制整个物理网络,因而可以获得全局的网络状态视图,并根据该全局网络状态视图实现对网络的优化控制。
SDN优势
- 硬件只关注转发和存储能力,与业务特性解耦,可以采用相对廉价的商用的架构来实现。
- 网络设备的种类及功能由软件配置而定,对网络的操作控制和运行由服务器作为网络操作系统(Network OS)来完成。
- 对业务响应相对更快,可以定制各种网络参数,如路由、安全、策略、QoS等,并实时配置到网络中,开通具体业务的时间将缩短。
OpenFlow
OpenFlow 是SDN 架构中控制平面和转发平面的标准通信接口。OpenFlow 允许网络设备与物理和虚拟的转发平面的直接访问和操作。基于OpenFlow 的SDN架构使IT能够应对今天的高带宽的、动态的应用。适应网络不断变化的业务需求,并显著降低运营和管理的复杂度。
OpenFlow 规范官方地址:https://www.opennetworking.org/sdn-resources/technical-library
- 可编程。加速创新,加速新功能和服务的开发。
- 集中化的智能。简化初始配置,优化性能,细粒度的策略管理。
- 抽象。包括软硬件的解耦,控制平面和转发平面的解耦,以及物理和逻辑配置的解耦。
OpenDaylight
OpenDaylight是一套以社区为主导的开源框架,旨在推动创新实施以及软件定义网络(简称SDN)透明化。面对SDN型网络,大家需要合适的工具帮助自己管理基础设施,这正是OpenDaylight的专长。作为项目核心,OpenDaylight拥有一套模块化、可插拔且极为灵活的控制器,这使其能够被部署在任何支持Java的平台之上。这款控制器中还包含一套模块合集,能够执行需要快速完成的网络任务。
- 性能和扩展性。支持集群模式,支持OpenStack HA,可以使工作负载方便的部署在DPDK加速的虚拟交换机。
- 易用性。整合功能,以及更加友好的UI。
- 抽象网络模型。 支持4种方法,NEMO, ALTO,GBP,NIC。
广泛的用例
Open vSwitch
Open vSwitch 使用Apache 2.0 license 的生产质量级的多层虚拟交换机。设计用来支持大规模的网络自动化,还支持标准的管理接口和协议。包括NetFlow, sFlow, IPFIX,RSPAN, CLI, LACP, 802.1ag。功能类似VMware 的DVS 和Cisco 的1000v。 支持多种虚拟化平台(Xen,KVM, Proxmox VE and VirtualBox)和交换机芯片。支持多种虚拟化管理平台( OpenStack,openQRM, OpenNebula and oVirt)。
完整的功能列表:
OVS 部署
这里演示CentOS 7.2 x86_64 平台下 OVS 2.5.0 版本的安装。
准备系统环境