网络革命:软件定义网络与网络虚拟化(1)


虽然现在SDN或网络虚拟化还没有达到预期的高度,但对于IT从业者来说,拥抱这些技术永远都不算早,目前以太网在每一个数据中心中扮演者举足轻重的角色,但SDN厂商们正在摩拳擦掌准备迎接下一场网络革命。

网络行业整装待发,亟待改变

目前,以太网已经在每一个数据中心中扮演者举足轻重的角色,它将每一家公司连接到互联网之上。网络世界每一个重大改变都需要大量时间,虽然大众对于标准和新技术的接受能力在提高,新技术的普及也需要花费超过十年时间。 企业在发展过程中需要应对不断增长的对缩减预算的需求,企业员工需要自动化的IT基础设施来简化操作流程,而网络世界的声音主要集中在如何从传统以太网向软件定于网络与网络虚拟化的新架构迁移。既然网络世界已经被Cisco统治多年,现在的问题是:这些新技术对传统网络的影响力有多大?客户是否有足够的意愿更换厂商去采用这些新技术么?

Ethernet Fabrics(以太光网络),作为生成树协议架构网络的替代品,其具有可扩展、高带宽的架构,而SDN与其说是一个产品,不如说是一种架构。Juniper和Arista这些年在其产品线中提供了一些可编程特性。首先我们来看一下SDN是如何与传统网络架构的区别(接下来的两部分通过 Joe Onisick的图表和描述诠释了 具体区别)

传统网络架构

在传统网络架构图中,最重要的一点是控制层与数据层分离。每一层都有不同的任务,层与层在一起提供了整个数据的转发、路由功能。这里,控制层负责了设备的配置和数据流程序化选路。当你管理一台交换机时,你实际上是在和交换机的控制层打交道。像路由表、生成树协议这些东西都是由控制层计算出来的。这些表的构建来源于如BPDU(网桥协议数据单元,用于运行STP的交换机之间交换信息的消息真)、Hello包等消息帧的传递,根据这些消息帧,交换机来决定可用的转发路径。一旦这些数据包的转发路径确定,这些路径信息将向下发送至数据层,通常存储于硬件之上。数据层面通常选用最新的由控制层面传输过来的路径信息进行消息转发。这种模式在传统上来讲是十分高效的,硬件的决策过程是非常快速的,整体的延迟可控并且控制层面可以处理繁重的配置需求。

这种方法是没有任何问题的,我们关注的是可扩展性。为了证明可扩展性的问题,我们以服务质量(QoS)为例。QoS允许根据帧中的特征,根据调度需求,优先转发特定数据帧。这从某种程度上减轻了特定流量在网络拥堵时所带来的数据传输延迟。举个例子,对延迟敏感的语音和视频流量通常被定为高优先级转发以保证用户体验。流量优先级通常是基于数据帧中的服务等级(CoS)或区分服务代码点(DSCP)标签来决定的。这些帧必须在数据帧进入网络时被统一确定,随之相对应的规则也必须在网络中设定一致,这种需求在传统多层交换网络中会变得很笨拙,因为每一台设备都需要有相同的配置信息。

为了说明当前网络管理上的挑战,我们想想看,在网络中的每个设备节点的每个端口上,管理员都需要单独配置,这样的工作非常耗时,易出错且笨拙。

此外,在数据恰当分类和路由的网络中还存在着挑战。例如,现在我们有两种完全不同的数据流量,一种是iSCSI流量,一种是语音流量。iSCSI作为存储流量,通常数据包都是全尺寸大小的,甚至有时会出现巨型数据帧;而语音流量则通常是以一个个的小型的数据包传输的。此外,两种流量还有不同的传输需求:语音流量对延迟非常敏感,这是为了保证语音的通信质量,而iSCSI则对延迟低敏感,但是需要更多带宽。传统网络中几乎没有任何工具能够区分这两种流量并且根据流量类型不同选择不同数据通路以满足两种流量的特定需求。这些问题都是SDN希望去解决的。

SDN中的三大元素

● 管理数据帧、包转发和应用策略的能力

● 动态应用策略和管理网络的能力

● 可编程能力

注意:为了实现SDN,网络架构不需要必须开放,标准化,与其他网络可交互等特性。一个合适的SDN可以仅满足定义和需求即可。

一个SDN架构必须有能力大规模编程操作数据帧或数据包流量。通常,SDN中的硬件通常被设计为汇聚的(设备有能力承载所有数据类型,包括一些希望存在的存储流量)、大型的、低延迟的数据传输管道,通常这些硬件被叫做fabric。SDN架构本身将从网络层视角,提供网络和网络流的集中管理能力。

这种架构是由将控制与数据层设备分离,并为控制层提供可编程接口这种方式实现的。数据层设备由控制层接受转发规则,并将规则应用在ASIC硬件之上。这些ASIC可以是传统ASIC,也可以是根据功能和性能需求自定义的转发芯片。下图诠释了这些元素之间的关系:

在图中,SDN控制器提供控制层功能,数据层则有物理交换设备提供。这些设备可以是新的也可以是装载特定固件的现存设备,这取决于特定供应商和物理架构模型。图中架构一个最主要的优势在于,对于控制层面,全局的可见性更大。除了每一个数据层设备依赖于其他邻居设备获取网络拓扑情况,一个单独的控制层将具有全网的连接状态。这种架构提供了对全网的路由,安全和QoS等配置,但同时也需要可编程特性。另外一个主要的特点在于集中控制,集中控制器获取实时应用数据流更加容易,并且可以集中针对数据进行决策。

图中仅仅展示了SDN架构的一小部分,其主要关注在物理架构与服务器位置。此外,这种架构可以将虚拟机环境整合进SDN网络中。这样,无论物理还是虚拟设备都可以统一进行控制策略管理,这种整合可以通过虚拟机管理器中可被SDN控制器管理的虚拟以太网桥来实现。下图具体说明了这种解决方案的逻辑架构。


相关内容