Service Chain——如何黏合网络资源池

一、 网络资源池

1. 什么是“网络资源池”?

传统模式下,服务器、网络和存储是基于物理设备连接的,因此,针对服务器、存储的网络策略基于物理端口进行部署,设备及其对应的策略是静态、固定的。

在虚拟化的基础架构中,服务器、网络、存储等都采用了虚拟化技术,形成了资源池的概念和形态,如图1所示。所谓资源池(Resource Pool),是一组可重用资源的集合,提供对外共享的资源服务,同时提供对于共享资源的管理机制,在集合(资源池)中的资源可回收再分配,如图1所示。

图 1 虚拟化技术构建资源池

计算虚拟资源的最小粒度是以虚拟机为分配单元,存储虚拟资源的最小粒度是以存储空间或者虚拟卷为分配单元。而网络虚拟化的情况则最复杂,虚拟网络资源的最小粒度仅仅依靠虚拟网络设备是不够的,还需要解决虚拟网络路径的分配问题,这就意味着网络虚拟化需要同时处理设备虚拟化和路径虚拟化,将计算资源、存储资源、用户连接在一起的同时保障路径的隔离、独立和连通性,这是一个艰巨的任务,如图2所示。

图 2 网络虚拟化

2. 网络模型抽象和映射

网络资源池化的根基是基础网络抽象,并完成抽象网络和物理网络的映射,即解决虚拟网络资源和物理资源的映射关系问题。

只有网络能够充分感知到计算资源池、存储资源池和用户访问的动态变化,才能进行动态响应,为新创建的计算资源、存储资源提供即时的网络接入,同时保障网络的路径连通性和网络策略的一致性,让用户能够即时的访问到计算、存储资源。

作为网络资源池的唯一控制点,SDN控制器控制了虚拟化网络,通过构建网络切片和网络节点虚拟化,自动为接入网络的计算资源、存储资源、用户提供接入策略、接入控制等服务,同时提供网络动态调整的能力,满足动态的网络容量规划要求。由于在基础架构层面实现网络、计算、存储、终端等资源相互联动的可行性很低,必须在虚拟控制层面打通,这就要求计算控制器、SDN控制器、存储控制器之间能够进行有机的融合,形成一个统一的融合控制层。

H3C SDN控制器——VCFC (Virtual Converged Framework Controller)通过Overlay技术将虚拟网络承载在数据中心传统物理网络之上,并通过SDN方式向用户提供虚拟网络的按需分配,允许用户像定义传统L2/L3网络那样定义自己的虚拟网络。在后续的数据中心融合控制层运行、交互过程中,VCFC通过Overlay技术将这些预先定义的虚拟网络按需的映射到物理网络,并自动分配网络资源。VCFC的虚拟网络抽象不但隐藏了底层物理网络部署的复杂性,而且能够更好的管理网络资源,最大程度减少了网络部署耗时和配置错误。

VCFC将虚拟网络元素组织为“资源池”,并控制了“网络资源池”的按需分配,进而实现虚拟网络和物理网络的Overlay映射,如表1所示。

元素名称

描述

Tenant

租户。

Network

虚拟的二层隔离网络,可以看作是一个虚拟的或逻辑的交换机。

Subnet

IP地址块,对应于三层子网。

Port

虚拟的或逻辑的交换机端口。

Router

跨越三层子网进行转发的逻辑实体。

Endpoint

通信端点。

Profile

网络服务策略。

表1 虚拟网络抽象模型:

3. 网络服务资源虚拟化和池化

网络除了基本连通性需求,还需提供安全、负载分担、监控、VPN等各种网络服务。对于云数据中心,既可以使用物理安全设备、物理LB设备等专业设备承载网络服务需求,也可以将vFW/vLB等NFV虚拟网元安装在通用服务器内承载上述网络服务。这些承载数据中心网络服务的设备统称为物理网络服务资源。

虚拟化后的计算和存储资源使用的是虚拟化的网络服务,这些虚拟化网络服务承载在物理网络服务资源之上。虚拟化后的计算和存储资源如何通过基础虚拟网络与网络服务建立关联关系?虚拟网络服务和物理网络服务设备的对应关系如何确定?

SDN控制器通过网络服务虚拟化技术,将承载层物理网络服务资源进行归一化的切片和抽象,建立虚拟网络服务节点。虚拟网络服务节点可以涵盖虚拟防火墙节点、虚拟LB节点、虚拟IPS节点等多种类型。一旦虚拟网络服务节点完成定义,SDN控制器会将这些虚拟资源和承载层网元自动映射,承载层网元被切片和隔离,形成多个独立的服务空间,承载上述虚拟网络服务节点的实际业务处理。

VCFC将异构的承载层网络服务设备进行抽象,形成为统一的虚拟网络服务节点,隐藏了底层物理网络服务设备的复杂性,可更好的管理网络服务资源。在网络服务抽象的基础上,VCFC控制了虚拟网络服务节点的按需分配, 结合数据中心融合控制层的运行和交互,这些抽象后的虚拟网络服务被按需的映射到物理网络,自动分配物理网络资源。

进一步,在VCFC的控制下,各种类型的虚拟网络服务资源被构建为资源池,例如防火墙资源池、LB资源池、网关资源池,如表2所示。这些资源池简化了虚拟网络的组建,虚拟化租户可以按需向资源池申请资源。

元素名称

描述

FWaaS

按需分配的虚拟防火墙

LBaaS

按需分配的虚拟负载均衡器

VPNaaS

按需分配的虚拟VPN

IPSaaS

按需分配的虚拟IPS

表2 抽象后的虚拟网络服务资源示例

网络资源池的承载层可以是物理网络设备,例如物理防火墙,也可以是安装在标准服务器上的NFV虚拟化网元集合。网络资源池的承载层通过堆叠、主备、负载分担等方式为上层资源池提供高可靠性、高性能支撑,上层虚拟化资源池不需要关注底层实现技术,只需要按照虚拟网络服务节点抽象模型向网络资源池按需动态申请和释放网络资源。

二、 服务链

1. 服务链的来源

数据报文在网络中传递时,需要经过各种各样的服务节点,才能保证网络能够按照设计要求,提供给用户安全、快速、稳定的网络服务。这些服务节点,包括熟知的防火墙、入侵检测、负载均衡等。通常网络流量需要按照业务逻辑所要求的既定顺序,穿过这些网络服务点,这就是服务链(Service Chain)。可见,服务链并不是一个新的概念。而随着SDN以及NFV的不断推进,服务链逐渐变得更加重要。

2. 网络资源池需要服务链

多种类型的网络服务资源在SDN控制器的控制下形成按需分配的资源池,在数据中心虚拟化环境中,计算资源和存储资源是以虚拟机和虚拟卷等细粒度为单位的,如何从网络资源池中为上述虚拟化通信分配网络服务资源?如何控制这些通信流量穿越已申请出的各种虚拟网络服务节点?

VCFC 通过Overlay技术将虚拟网络承载在传统物理网络之上,使用Overlay技术将网络接入点、网络服务资源池、网关节点进行按需连接。在虚拟机迁移过程中,VCFC控制Overlay路径随虚拟机迁移位置的变化而切换,始终保持网络接入节点和网络服务资源池的连通性,如图3所示。

图 3 网络资源池

在多租户数据中心,每个虚拟化网络切片(vNET)可能有不同的网络服务需求,例如,提供WEB服务的Server所在虚拟网络和外网之间的通信需要通过防火墙、IPS和LB,提供VPC服务的虚拟网络和外网的通信需要使用VPN加密。这些网络服务的需求是多样的,不同的租户可能要求不同的服务组合和服务序列,这些差异化的网络服务需求,需要借助服务链来实现,如图4所示。

图 4 虚拟层服务链

与传统物理网络中的服务链不同,虚拟网络的服务链,需要更多的考虑计算、存储资源虚拟化的特点,关联各种虚拟元素,并能通过适当手段将虚拟服务资源、虚拟流量路径映射到承载层的物理资源。

其中,虚拟元素的关联,主要是体现在逻辑抽象层次。包括:

  • 虚拟网络服务资源抽象:虚拟服务资源池、申请自资源池的虚拟服务节点;
  • 虚拟服务插入抽象:定义流量特征、根据源特征和目的特征构建服务插入点;
  • 服务链抽象:例如包含FW、LB、IPS的服务资源池序列。

通过上述抽象元素的定义,可以构建虚拟网络的服务链,将符合特定流量特征的流量送入预先定义的服务链,实现虚拟网络流量和多种类型网络服务资源池的有序关联,满足虚拟化数据中心网络对网络服务的差异化需求。

3. 虚拟层服务链到承载层的映射

虚拟层网络定义的服务链,如何映射到实际承载层网络和网络服务?

由于虚拟化服务链的服务对象是虚拟化后的计算和存储资源,随着虚拟机的迁移,计算和存储资源的物理位置可能发生变化。类似的,虚拟服务资源池也是承载在物理服务设备之上,对虚拟化层屏蔽了物理服务设备的实际位置,使用者从服务资源池中申请出的虚拟服务可能被任意的物理服务设备实现,且可能随着物理设备的扩容、倒换等场景发生物理生效变化。因此,虚拟层服务链在承载层的实现是物理位置无关的。在SDN控制器的控制下,使用Overlay技术将服务链映射和物理服务设备解耦,只要承载网IP可达,即可将虚拟层服务链映射到承载层服务设备的服务链。

图5 服务链的位置解耦

如图5所示,网络中部署了A和B两个服务链,虽然两个服务链完成的功能有所不同,但是可以使用相同的物理服务节点。数据报文进入服务链以后,就会按照服务链既定的顺序穿过各个服务节点。服务链的每一个节点,都知道当前服务链的下一个服务节点在哪里,并通过Overlay网络送达到下一个服务节点处理。在服务链的最后一个节点,也会根据数据报文最终的目的VTEP进行封装,完成报文的转发。

在相同的物理承载层网络中,不同的虚拟网络有不同的虚拟化服务链需求。VCFC作为整网的集中控制点,管理了虚拟化网络资源池、虚拟化网络切片、物理层承载网,通过Overlay技术为每个虚拟化网络构建专属的虚拟化服务链,并向上层管理系统提供抽象后的虚拟化元素供管理使用,如图6所示。

图 6 虚拟层服务链到承载层的映射

三、 结束语

在虚拟化数据中心环境中,计算资源、存储资源、网络资源的虚拟化为网络服务的提供提出了挑战。网络资源池按需分配的特点,满足了虚拟化网络环境的需要,为网络使用者提供了网络服务按需分配的可能。由网络资源池分配出的虚拟化网络服务,在服务链技术的协调下,可为虚拟网络的用户差异化的网络服务,满足虚拟化数据中心环境的网络需求。

原文发布于微信公众号 - SDNLAB(SDNLAB)

原文发表时间:2015-10-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏xingoo, 一个梦想做发明家的程序员

云计算学习1

1 云计算的兴起 IaaS 【infrastructure as a service】 基础架构即服务 Amazon AWS SaaS 【software as...

2979
来自专栏资深Tester

记线上bug分析

2093
来自专栏北京马哥教育

小白用Python | 十分钟Python玩微信教程

代码放在这里: wzyonggege/python-wechat-itchat 词云那里可以换成小黄人图片 ? ------------------------...

6187
来自专栏Android机动车

Android模块化开发方案

随着业务的不断发展壮大,移动端所承担的功能也越来越重,特别是代码几易其主之后开始变得杂乱无章,牵一发而动全局的事情时常发生。为了应对团队壮大之后的开发模式,我们...

1522
来自专栏IT大咖说

Metrics:让微服务运行更透明

摘要 让微服务运行状态清晰可见。 Metrics是什么 直译是“度量”,不同的领域定义有所区别,在微服务领域中的定义: “对微服务的某个指标给予一个可量化程度的...

49312
来自专栏林喜东的专栏

你的账号安全吗?

账号安全无小事,近些年持续不断爆出的安全事件,有很多低级错误其实都是拥有一个健壮的账号体系可以避免的;多次听闻后曾写一写账号安全相关的东西,但直...

2524
来自专栏DevOps时代的专栏

测试影响分析(TIA),让测试更快的技术

? 构建过程中,测试影响分析(TIA)是一种加快自动化测试的新式方法。它的 工作原理就是通过获得新的代码变动,分析这些代码的调用关系图来判断应该调 用那些自动...

27410
来自专栏IMWeb前端团队

FreeNG | 基于Angular4的前端UI框架

本文作者:IMWeb 郭明慧 原文出处:IMWeb社区 未经同意,禁止转载 FreeNG是一款完全响应式的前端UI框架,它采用了主流的左右两栏式布局,...

24710
来自专栏EAWorld

如何完美使用微服务

译者的话: 一直以来面向对象理念的布道者们都在期待一个大杀器来能使应用设计高内聚,低耦合,团队能协同开发,后期交付后可以快速部署,维护成本低。微服务其实就是他们...

36213
来自专栏黑白安全

谷歌云又瘫痪:因新功能 bug 被触发

由于谷歌云平台出现了问题,昨天多个热门在线服务遇到了停机或响应缓慢的现象。经谷歌确认,它的许多工具出现了问题,而Discord、Spotify和Snapchat...

972

扫码关注云+社区

领取腾讯云代金券