网络是数据中心的重要组成部分之一,庞大的数据中心拥有上万台的设备都需要通过网络设备才能连接起来,这至少需要上百台的网络设备规模。对这么多网络设备进行同时管理需要很多技巧,传统网络的管理模式已经越来越无法适应新网络的应用变化,高投入、低产出已经成为网络管理存在多年的顽疾,很难去除。数据中心意识到,网络低效管理已成为发展的绊脚石,越来越多的数据中心愿意在网络管理上进行新技术尝试,以便有所改变,这样的市场机会促使网管新技术层出不穷,就目前的技术积累来看,主要呈现出三种技术的演进方式:SNMP、NETCONF、OpenFlow,当然也包括像CMIS/CMIP等一些后来被淘汰的技术,下面就来详细谈谈这三种主流的网管对接技术。
SNMP
SNMP(Simple Network Management Protocol)简单网络管理协议是应用最为普遍,也是最古老的一种网管技术。一个网络管理系统是由一组网络管理的标准组成,包含被管代理、网络管理工作站、简单网络管理协议SNMP和网络管理信息库MIB,其中SNMP定义了网络管理站与被管代理间的通信方法,SNMP主要用于对网络资源的管理。通过SNMP协议,获取物理网络设备的各种资源信息,比如:设备状态、链路、告警和性能数据。SNMP分为公有MIB库和私有MIB库两大部分,公有MIB节点是所有网络设备都会遵守和实现的标准协议,私有MIB节点则是特定设备内部的自我实现,具有排它性,只有用对应设备的私有MIB才可以访问。SNMP开发于上世纪九十年代,经历了三个大的版本变化,不断在进行技术标准的完善。目前面向数据中心IP网络的管理软件绝大多数都以SNMP协议作为与被管对象通信的接口,是在数据中心里应用最为广泛的网管技术,也是最简单的一种网管技术。
NETCONF
SNMP虽好,但侧重的是网络监控的“监”,对数据中心网络的运行状态进行管理,如今的网络对网管有更高的要求,更加强调监控的“控”,将网络控制权从网络设备上分离出来,集中起来控制,这就是经常提到的设备管理和转发分离的技术。新型的网络管理协议NETCONF应运而生,NETCONF采用XML作为配置数据和协议消息内容的数据编码方式,采用基于TCP的SSHV2进行传送,以简单的远程过程调用方式实现操作和控制。NETCONF在2006年在IETF成为标准,在2011年又通过RFC6241、RFC6242更新了NETCONF标准。NETCONF协议主要用于对网络业务的配置和查询,通过NEFCONF协议可以向设备下发配置命令,比如:设备添加到Controller后,会通过NETCONF协议自动下发OpenFlow和sFlow协议的配置,用户在云管理平台或者Controller上进行的网络业务的配置和查询,通过NETCONF协议进行。XML可以表达复杂的、具有内在逻辑关系的、模型化的管理对象,大大提高了操作效率和对象标准化,除了XML,XSD、Xpath、SOAP、XSLT等都可以应用到NETCONF协议中。NETCONF由应用协议层、RPC层、操作层、内容层组成,仍在不断进行完善与发展,在一些云数据中心的管理平台上,已经陆续开始部署NETCONF技术,通过部署NETCONF可以实现网络的自动化管理。
OpenFlow
NETCONF协议可以说是SNMP的高级版,但也仅限于是一种配置协议,而OpenFlow就完全不同了。OpenFlow是一种交换技术,使用OpenFlow协议建立软件定义网络,可以将网络作为一个整体而不是无数的独立设备进行管理。OpenFlow是一种新型网络协议,起源于斯坦福大学的Clean Slate项目组。OpenFlow的思路很简单,网络设备维护一个或者若干个流表,并且数据流只按照这些流表进行转发。流表本身的生成、维护完全由外置的控制器来管理。OpenFlow是SDN中的重要协议,是控制面和转发面的通信通道,主要用于设备向Controller上报报文(网络路径探测中的Packet out报文),Controller处理完毕后,再向网络设备下发报文(网络路径探测中的packet in报文)。OpenFlow的出现一下子将数据中心网络带进了“智能化”时代, 成为了当前最热门的网管技术,从2009年发布OpenFlow 1.0版本之后,不断地进行技术更新,如今进行成为新建数据中心网络的必备技术之一,是未来网络管理的主要发展方向。OpenFlow网络由OpenFlow交换机、网络虚拟化层和控制器三部分组成,OpenFlow交换机进行数据层的转发,虚拟化层对网络设备进行虚拟化,控制器对网络进行集中控制,实现控制层的功能。OpenFlow是将网络的转发层与控制层完全分离,控制层集中到控制器,控制器通过OpenFlow协议下发流表到网络设备上,由网络设备完成数据转发。NETCONF协议通过一组可选性能适用于任何设备架构,开发人员可以创建额外“特性”,因此NETCONF设备可以包含专有功能。反观,OpenFlow拥有特定设备体系结构,OpenFlow设备必须以一个标准的架构建立,没有专有功能,以确保厂商能够开发依附OpenFlow标准的白盒交换机,这些商品设备一经投入使用将大大降低网络成本。
从SNMP到NETCONF,再到OpenFlow,网管技术越来越复杂,网管技术也变得越来越强大,这些新的网管技术可以满足数据中心云上管理的需要。当然,这三者也不是完全的替代关系,不少的数据中心依然可以采用既使用SNMP,也部署NETCONF的方式,用SNMP进行网络监控,用NETCONF做网络配置,甚至可以通过SNMP发现网络异常时,通过NETCONF进行配置回滚,自动修复网络故障。同样,即使在全OpenFlow的网络环境中,依然可以使用NETCONF进行一些配置管理,在相当长的一段时间里,三种技术各有各的长处,会长期并存,都不会很快消失。在一个数据中心里,也可能部署两种以上的网管技术,以便对网络进行更好的综合管理。做好数据中心的网管,可以大大提升整个数据中心的工作效率、管理层次与维护水平,对网络的安全高效运转提供保证。