OpenFlow是一种新型网络协议,源于斯坦福大学的CleanSlate项目组。OpenFlow明确提出的出发点是由于研究人员无法转变现有网络设备展开创意网络架构和协议的研究和实验,而这些新的网络创意思想才是必须在实际的网络上才能更佳地检验。斯坦福大学因此明确提出了掌控发送分离出来架构,将掌控逻辑从网络设备中分离出来,转交中央控制器集中统一掌控,构建网络业务的灵活性部署,并且他们设计了OpenFlow协议作为控制器与交换机通讯的标准接口。近年OpenFlow早已引发了网络设备商和网络管理员的普遍注目,用于OpenFlow协议构建软件定义网络,可以把网络作为一个整体而不是许多独立国家集中的设备来集中于展开管理,大大提高了网络可用性和网络管理效率。
OpenFlow的思路很非常简单,网络设备确保一个或者若干个流表,并且数据流只按照这些流表展开发送。流表本身的分解、确保几乎由外置的控制器来管理。流表项并非特指普通的IP五元组,而是由一些关键字和继续执行动作构成的灵活性规则,并且每个关键字字段都是可以通配的。
在实际应用于中,网络管理人员可以通过配备流表项中明确的给定关键字来要求用于何种粒度的流发送规则。例如,如果只必须根据目的IP展开路由,那么印发流表项时,关键字只给定目的IP字段,其它关键字全通配上,而动作中只必须一个出有端口才可构建常规的IP路由发送。
自2009年底公布第一个月版本v1.0以来,OpenFlow协议早已经历了1.1、1.2、1.3以及近期公布的1.4等版本的演变过程。同时,2012年OpenFlow管理和配备协议也公布了第一个版本(OF-CONFIG1.01.1),用作因应OpenFlow协议展开自动化的网络部署。图1得出了OpenFlow协议各个版本的演变过程和主要变化,目前用于和反对最少的是OpenFlow1.0和OpenFlow1.3版本,图2说明了这两个版本的主要变化。
图1:OpenFlow协议版本演变图OpenFlow协议是叙述控制器和交换机之间交互信息的南向接口标准。OpenFlow协议反对三类消息类型:Controller-to-Switch,Asynchronous和Symmetric,每一种类型都有多个子类型,控制器和交换机之间通过这三类消息展开相连创建,流表印发和信息互相交换,构建对网络中所有OpenFlow交换机的掌控。图2:OpenFlow1.0到1.3版本演变的主要结构变化下面非常简单讲解一下OpenFlow协议中1.0到1.4版本的主要变化过程。OpenFlow1.0协议登录每个OpenFlow交换机中都不存在一张流表,用作数据包查询、处置和发送,并且不能同一台控制器展开通信,流表的确保也是通过控制器印发适当的OpenFlow消息来构建。
流表由多个流表项构成,而每个流表项就是一个发送规则。流表项由给定字段、计数器和动作构成。其中给定字段是东流表项的标识,OpenFlow1.0反对12个给定字段;计数器用作流表项的给定和发送包在统计资料;动作命令对给定流表项的数据包应当继续执行的动作,如发送到另一端口,弃置或送来控制器处置,甚至可以改动数据包字段发送。
但OpenFlow1.0只反对IPv4。OpenFlow1.0版本的优势是它可以与现有的商业互相交换芯片相容,通过在传统交换机上升级固件就可以反对OpenFlow1.0版本,既便利OpenFlow的推展用于也有效地维护了用户的投资,因此OpenFlow1.0是目前用于和反对最普遍的协议版本。自OpenFlow1.1版本开始反对多级流表,将东流表格给定过程分解成多个步骤,构成流水线处理方式,这样可以有效地和灵活性利用硬件内部固有的多表格特性,同时把数据包处置流程分解成到有所不同的流表中也防止了单流表格过度收缩问题。
除此之外OpenFlow1.1中还减少了对于VLAN和MPLS标签的处置,并且减少了Group表格,通过在有所不同流表项动作中提到完全相同的组表构建对数据包继续执行完全相同的动作,修改了流表的确保。OpenFlow1.1版本是OpenFlow协议版本发展的一个分水岭,它和OpenFlow1.0版本开始不相容,但先前版本依然还是在此基础上发展。为了更佳反对协议的可扩展性,OpenFlow1.2版本发展为印发规则的给定字段仍然通过相同长度的结构来定义,而是使用了TLV结构定义给定字段,称作OXM(OpenFlowExtensibleMatch),这样用户就可以灵活性的印发自己的给定字段,减少了更好关键字给定字段的同时也节省了流表空间。
同时,OpenFlow1.2规定可以用于多台控制器和同一台交换机展开相连减少可靠性,并且多控制器可以通过发送到消息来转换自己的角色。还有最重要的一点是自OpenFlow1.2版本开始反对IPv6。
经过1.1和1.2版本的演进累积,2012年4月公布的OpenFlow1.3版本沦为长年反对的平稳版本。OpenFlow1.3流表反对的给定关键字早已减少到40个,不足以符合现有网络应用的必须。
OpenFlow1.3主要还减少了Meter表格,用作掌控关联流表的数据包的传输速率,但掌控方式目前还比较非常简单。OpenFlow1.3还改良了版本协商过程,容许交换机和控制器根据自己的能力协商反对的OpenFlow协议版本。同时,相连创建也减少了辅助相连提升交换机的处置效率和构建应用于的并行性。
其它还有IPv6拓展头和Table-miss表项的反对。2013年近期公布的OpenFlow1.4版本依然是基于1.3版本的特征改良版本,数据发送层面没过于大变化,主要是减少了一种流表实时机制,多个流表可以分享完全相同的给定字段,但可以定义有所不同的动作;另外又减少了Bundle消息,保证控制器下发一组原始消息或同时向多个交换机印发消息的状态一致性。其它还反对光口属性叙述,多控制器涉及的流表监控等特征。
OpenFlow协议的发展演变仍然都环绕着两个方面,一方面是掌控面强化,让系统功能更加非常丰富更加灵活性;另一方面是发送层面的强化,可以给定更好的关键字,继续执行更好的动作。每一个先前版本的OpenFlow协议都在前一版本的基础上展开了某种程度的改良,但自OpenFlow1.1版本开始和之前版本不相容,OpenFlow协议官方确保的组织ONF为了确保产业界有一个平稳发展的平台,把OpenFlow1.0和1.3版本作为长年反对的平稳版本,一段时间内先前版本发展要维持和平稳版本的相容。
图3:OpenFlow1.0测试规范简要DCN在2011年就开始OpenFlow交换机的研发,全线互相交换产品反对OpenFlow1.0和1.3协议,并因应国内多家高校,科研机构和互联网公司展开了OpenFlow科研和商用网络的部署,是目前国内享有最多实际案例的设备厂商,在行业内正处于领先地位。2013年11月对外开放网络基金会ONF月发售OpenFlow1.0协议一致性证书业务,为网络设备商获取了证明其产品完全符合OpenFlow标准规范的机会,该测试涵括二层和三层互相交换功能的10个方面,共计200来个测试项。DCN公司凭借近几年在OpenFlow研发的技术累积,其数据中心交换机CS6500于2014年4月成功通过ONF的规范测试,沦为国内首家通过OpenFlow1.0一致性证书的设备厂商。
今后DCN将持续研发创意,大力因应用户实践中SDN,引导网络设备市场的新变革。
本文来源:米乐m6体育在线登录入口-www.telaestheticist.com