软件定义网络(Software Defined Network,SDN)是由美国斯坦福大学CLean State课题研究组提出的一种新型网络创新架构,是网络虚拟化的一种实现方式。其核心技术OpenFlow通过将网络设备的控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能,为核心网络及应用的创新提供了良好的平台。 中文名 软件定义网络 外文名 Software Defined Network 简 称 SDN 应用领域 计算机 类 别 Open SDN;;APISDN;堆叠SDNOpenFlow,一种网上通信协议,属于数据链路层,能够控制网上交换器或路由器的转发平面(forwarding plane),借此改变网上数据包所走的网上路径。OpenFlow能够启动远程的控制器,经由网上交换器,决定网上数据包要由何种路径通过网络交换机。这个协议的发明者,将它当成软件定义网上(Software-defined networking)的启动器。OpenFlow协议支持三种信息类型:Controller-to-Switch,Asynchronous和Symmetric,OpenFlow网络由OpenFlowswitch(OpenFlow交换机)、FlowVisor(网络虚拟化层)和Controller(控制器)三部分组成。OpenFlow交换机进行数据层的转发;FlowVisor对网络进行虚拟化;Controller对网络进行集中控制,实现控制层的功能。OpenFlow交换机是整个OpenFlow网络的核心部件,主要管理数据层的转发。OpenFlowSwitch拥有一个FlowTable(流表),它只按照流表进行转发,FlowTable的生成、维护和下发由外置的Controller来实现。这里的FlowTable并非是指IP五元组(IP源地址、IP目的地址、协议号、源端口、目的端口),OpenFlow1.0规范定义了包括输入端口、MAC源地址、MAC目的地址、以太网类型、VLANID、IP源地址、IP目的地址、IP端口、TCP源端口、TCP目的端口在内的10个关键字(十元组)。