SDN起源于2006年斯坦福大学的Clean Slate研究课题。2009年,Mckeown教授正式提出了SDN概念。
为了解决传统网络发展滞后、运维成本高的问题,服务提供商开始探索新的网络架构,希望能够将控制面(操作系统和各种软件)与硬件解耦,实现底层操作系统、基础软件协议以及增值业务软件的开源自研,这就诞生了SDN技术。
SDN,软件定义网络(Software-defined Networking),本质是网络软件化, 是Emulex网络一种新型网络创新架构,是网络虚拟化的一种实现方式,支持动态可编程的网络配置,核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,具有成本低、集中管理、灵活调度等优点。
耦合是指两个或两个以上的体系或两种运动形式间通过相互作用而彼此影响以至联合起来的现象。 解耦就是用数学方法将两种运动分离开来处理问题,常用解耦方法就是忽略或简化对所研究问题影响较小的一种运动,只分析主要的运动。
网络软件化的定义是一种通过软件编程来设计、实现、部署、管理和维护网络设备和网络组件的总变革趋势。
网络虚拟化就是在一个物理网络上模拟出多个逻辑网络来。网络虚拟化的内容一般指虚拟专用网络 (VPN)。
OpenFlow是一种网络通信协议,应用于SDN架构中控制器和转发器之间的通信。软件定义网络SDN的一个核心思想就是“转发、控制分离”,要实现转、控分离,就需要在控制器与转发器之间建立一个通信接口标准,允许控制器直接访问和控制转发器的转发平面。OpenFlow引入了“流表”的概念,转发器通过流表来指导数据包的转发。控制器正是通过OpenFlow提供的接口在转发器上部署相应的流表,从而实现对转发平面的控制。
我们分别将用于控制的网络称为“控制面”,将用于数据包发送的网络称为“数据面”。