APP下载

可扩展网络服务模型的服务扩展能力分析

2019-06-11吉祖勤沈军丁德林崔效玮

通信学报 2019年5期
关键词:可扩展性网络服务报文

吉祖勤,沈军,丁德林,崔效玮

(1. 东南大学计算机科学与工程学院,江苏 南京 211189;2. 东南大学计算机网络和信息集成教育部重点实验室,江苏 南京 211189;3. 盐城师范学院信息科学与工程学院,江苏 盐城 224002)

1 引言

随着网络技术的不断发展和各种新型应用的大量涌现,网络服务的需求及形态不断增加,网络服务模型实现服务可扩展的能力呈现出不足[1-2]。网络的服务可扩展能力是指在网络性能不明显下降的前提下,网络提供新服务功能的能力。虽然传统网络的集成服务模型与区分服务模型通过添加协议补丁等方法实现了一定程度上的服务可扩展,但随着添加的新协议越来越多,这种方法的缺陷也越来越明显,主要体现在以下方面:首先,新协议的开发和部署往往都需要很长的周期;其次,协议补丁的添加使网络系统变得越发庞大复杂;此外,新协议实现的服务功能与已有服务之间往往存在一定的功能冗余性,从而影响网络系统的实际执行性能,降低网络系统的处理效率。

为打破传统网络的僵化问题,实现网络的适应性,众多的研究机构开始围绕如何改进网络体系结构展开研究,以解决服务可扩展性问题。在此基础上,出现了一些具有代表性的研究成果。RBA(role-based architecture)[3]打破传统的层次化结构思想,以角色作为通信的实体,这种设计思想能够避免传统网络模型层次间功能的冗余,但没有给出组织和管理角色功能的具体方法,因而服务可扩展性难以较好实现。SILO(services integration, control and optimization for the future Internet)[4]也是非层次体系结构,服务筒仓可以按需、自动地被创建,用于自适应控制以及以优化行为为目的的交互机制被内置到框架中。但服务筒仓的偏序关系界定困难,服务筒仓的定制添加难以实现,因此服务可扩展性较弱。RNA(recursive network architecture)[5-6]提出了协议可以在层之间复用的思想,并提出了元协议的概念,即元协议部署在协议栈中,层数可以动态变化,旨在消除传统网络的冗余服务,但是动态栈难于实现,从而服务可扩展性较弱。在服务元网络体系结构(SUNA, service unit network architecture)[7-8]中,服务元之间相互独立,没有服务功能的交叉,有效地避免了功能的冗余性。但各类服务元间粒度不一致,且粒度较大,难以较好地实现服务扩展。SDN(software defined network)架构[9]主要包含数据平面、控制平面和应用平面三层,每两层之间通过统一的接口进行通信(如OpenFlow[10])。SDN提出的背景使对SDN的研究与应用多局限在网络层以下,上层网络应用的差异性使 SDN暂无统一的北向接口标准,并且OpenFlow作为SDN普遍使用的南向接口规范,其协议规则并不成熟,版本仍在更新[11],这些问题严重影响了基于 SDN的网络服务可扩展性。可扩展网络服务模型(ENSM, extensible network service model)[12-13]打破了传统网络层次协议机制,显式地给出服务模型。ENSM以原子服务组合的形式避免了传统网络中协议逐层封装所产生的功能冗余,以定制原子服务和原子服务组合的形式提高了网络服务可扩展性,从根本上解决了服务扩展这一网络核心问题,具有很好的服务扩展能力。

文献[13]虽然分析论证了ENSM具有服务可扩展性(即能够实现动态、按需和优性能的扩展服务),但是没有对其服务扩展能力的程度进行分析评价。ENSM旨在提供良好的服务扩展能力,为了验证ENSM模型思想的有效性,本文深入地分析了衡量ENSM的服务扩展能力。此处,本文还介绍了ENSM的基本原理,对ENSM的服务扩展能力进行了定性分析;使用网络服务扩展能力分析方法对ENSM的服务扩展能力的进行了定量分析;由定性分析和定量分析结果可知,ENSM具有很好的服务扩展能力。

2 ENSM简介

本文对传统网络的各层网络协议功能进行拆分、归纳和抽象,得出一个初始的功能粒度很小的原子服务集合和原子服务间的关系集合(如原子服务间的依赖关系、交互关系等),这2个集合随着应用需求的增加而不断变大。基于原子服务集合和原子服务间的关系集合这2个集合,ENSM实现了服务的动态、按需扩展,即动态按需地向原子服务集合中添加新定制的原子服务、动态按需地选择所需原子服务并进行服务组合。因此,ENSM以原子服务组合的形式避免了传统网络中协议逐层封装所产生的功能冗余,以定制原子服务和原子服务组合的形式提高了网络服务的可扩展性。

ENSM位于网络应用之下、网络硬件设施之上,包括 4个功能模块(服务组合管理模块、用户需求解析模块、服务执行控制引擎、原子服务管理模块)和 2个服务库(原子服务库和常用服务实例库)。ENSM的工作原理如图1所示,具体工作过程如下:1) 在使用ENSM前,管理用户将原子服务库和常用服务实例库部署到网络节点,并更新服务信息;2) 业务用户根据自身的个性网络服务化需求从网络服务层提交服务请求;3) 需求解析模块将用户需求解析表达后发送到服务组合管理模块;4) 服务组合管理模块根据需求解析结果,先从常用服务实例库查找组合方案,若没有找到方案,再从原子服务库中选择出相应的原子服务(若原子服务库中没有所需原子服务,则由原子服务管理模块按需定制原子服务并添加到原子服务库中),并生成服务组合方案,原子服务库和服务实例库在被访问调用的过程中从网络硬件设施读取参数信息,最后将组合方案发送至服务执行控制引擎;5) 服务执行控制引擎接收到组合方案和生成服务实例的请求,根据组合方案生成满足用户需求的服务实例并发送给网络服务层。

图1 ENSM的工作原理

3 ENSM服务扩展能力定性分析

在ENSM中,本文将基于协议数量决定网络服务能力的一维策略方法拓展为基于原子服务集合和定制、组合机制共同决定网络服务能力的二维策略方法,这样有利于灵活、可控地对网络服务进行扩展。基于 ENSM 的服务提供与扩展机制可以对ENSM的服务扩展能力进行定性分析。

传统网络与ENSM提供服务的模式对比如图2所示,图中虚线表示存在逻辑关系,实线表示存在信息交互。传统网络通过一层或几层协议来提供服务,一般一个协议只能提供一种网络服务,m个协议只能提供m种网络服务,且在进行服务扩展时需要开发部署网络协议。因此,协议数目与提供服务的种类基本以 1:1的趋势增长。而ENSM则是通过定制原子服务和服务组合来提供服务,ENSM能够提供服务的种类是由原子服务个数和原子服务间的组合关系决定的。在 ENSM中,原子服务的功能粒度远小于传统网络的协议功能粒度,定制一个原子服务即是提供了一种服务,而一组原子服务使用不同组合方式即可提供多种不同的服务。因此,原子服务的数目与提供服务的种类以m:n(n≥m)的趋势增长。由此可知,随着模型中原子服务数量以及原子服务间组合关系的增加,可扩展网络服务模型的服务扩展能力将远超传统网络。

图2 传统网络与ENSM提供服务的模式对比

ENSM的工作机理可形式化表示为

其中,xServ表示可扩展网络服务模型,AS表示服务模型中的原子服务集合,SR表示原子服务间的组合运算集合[13]。本质上,任何一个网络服务都是 xServ的一个实例,SR就是该服务实例的应用控制逻辑。由式(1)可知,ENSM中服务的提供与扩展基于2个因素,即AS和SR;基于同一个原子服务集合 AS,使用不同的组合运算集合 SR,可以提供多种不同的服务;向一个原子服务集合AS中按需定制、添加原子服务,并使用所需组合运算集合 SR,可以实现网络服务的按需动态扩展。因此,ENSM能够较好地实现服务的扩展。

通过对 ENSM 的服务扩展定性分析可知,ENSM能够灵活地实现按需定制服务与组合服务,具有很好的服务扩展能力。

4 ENSM服务扩展能力定量分析

网络的服务可扩展性研究实质上是基于服务以及服务之间关系对网络提供服务能力的探究。文献[14-15]把握住这一实质关系,在此基础上提出了网络的服务可扩展性的分析方法。本文使用文献[14-15]提出的网络服务扩展能力分析方法来定量分析ENSM的服务扩展能力。

4.1 网络服务扩展能力分析方法简介

文献[14-15]提出的网络服务扩展能力分析方法由描述模型和服务评价模型两部分组成。网络的服务可扩展性的分析步骤如图3所示,具体介绍如下:1) 待评价网络的服务扩展实例使用描述模型,来抽象服务扩展实例中服务及服务间的关系,并设置动态扩展规则;2) 对网络服务扩展实例的描述使用服务评价模型选择评价指标并确定评价策略;3)经计算与分析得出评价结果。

图3 网络的服务可扩展性的分析步骤

4.1.1 描述模型

描述模型用于抽象网络中服务扩展实例服务、服务间关系以及服务扩展时的扩展规则。用S={A,c}来描述服务,其中,A表示服务的性能属性向量,c表示按服务功能分类的服务类型。本文中,J表示服务扩展实例的扩展规则;f表示服务到服务的映射关系,描述模型中服务映射关系有多种,最基本的有依赖关系、交互关系等。依赖关系是指服务扩展实例中服务间的一方对另一方性能、功能方面的依赖,其中,R={<c1,c2>,r⇀,v}表示服务间的依赖关系;<c1,c2>表示发生依赖关系的2个服务种类必须符合的约束条件;r⇀表示依赖关系规则向量,用于对依赖关系进行逻辑描述;v表示依赖关系代价,即发生依赖关系时在某性能上的代价。交互关系是指服务扩展实例中服务间具有功能方面的交互,用服务集合E={S1,S2,…,Sm}表示服务间的交互关系。

S_set(t)表示t时刻的服务集合,J(t)表示t时刻的服务扩展实例的扩展规则集合,f(t)表示t时刻服务到服务的映射关系集合,则t时刻的描述模型可以表示为M(t)={S_set(t),f(t),J(t),t}。

4.1.2 服务评价模型

由于网络中服务扩展实例可能存在多个益害性不同的评价指标,因此将网络的服务扩展能力细分为性能特征维持能力(Keep_ability)和性能特征演进能力(Evo_ability)。假设在初始状态下,原服务为T,评价指标数量为i,第i个评价指标为Fi(t)。经过j次动态变化,T变成T′,Fi(t)变成Fi′(t)。diff表示动态变化的平均变化系数,如式(2)所示。

其中,αi表示第i个评价指标的权值,n表示变化的次数。

当网络的某些性能随着网络中服务扩展实例的服务扩展而降低时(无论是有害指标的增大还是有益指标值的减小),需要计算的是网络的性能特征维持能力。性能特征维持能力计算值始终小于或等于1,其值越接近1则表示性能特征维持得越好,计算式如式(3)所示。

当网络的某些性能随着网络中服务扩展实例的服务扩展而得到优化时(无论是有害指标的减小还是有益指标的增大),需要计算的是网络的性能特征演进能力。性能特征演进能力计算值始终大于或等于 1,其值越大则表示演进能力越好,计算式如式(4)所示。

4.2 服务扩展实例的定量分析

从理论和网络实际应用2个角度对ENSM的服务扩展进行举例,并对其服务扩展能力进行定量分析。

4.2.1 理论角度服务扩展实例的定量分析

从理论角度选用包含了ENSM服务组合基本流程的服务扩展实例作为分析实例,扩展前后服务的SPN(stochastic petri net)模型[16]分别如图4和图5所示,使用SPN的P/T系统中的时间变迁ti(1≤i≤9)表示原子服务,使用SPN的P/T系统中的库所在位置Pi(1≤i≤9)表示服务执行所处的状态。假设在图 5所示的扩展后的服务实例中,位置P6处的选择概率为在位置P9处的循环概率为各服务的执行速率为λ={λ1=14,λ2=7,λ3=4,λ4=8,λ5=28,λ6=42},变迁速率单位为bit/s。

图4 扩展前服务的SPN模型

图5 扩展后服务的SPN模型

1) 服务扩展实例的抽象与描述

使用文献[14-15]方法中的描述模型对该服务扩展实例进行描述和抽象。实例中服务间最基本的映射关系有依赖关系和交互关系。依赖关系R是指原子服务间存在着行为约束即传输依赖;交互关系Er是指原子服务间存在资源交互。由此,建立网络描述如下。

其中,服务S的属性向量A中,throughput表示该实例网络的吞吐量,response time表示该实例网络的响应时间;服务类型c有 2种,即原子服务 Si和组合服务Sci;在依赖关系R中,Sx与Sy表示2个不同的原子服务,Sx.c表示原子服务Sx的类型,Sy.c表示服务Sy的类型,代价v表示服务间一次交互所需付出的传输时间代价。

在该实例中,执行每个原子服务时吞吐量和响应时间不会变化,影响整个实例网络变化的是新原子服务加入导致的网络吞吐量和响应时间的变化。所以在设定动态变化规则时,主要考虑服务扩展的方式,扩展规则J设定如下。

规则r1:扩展两次,每次扩展中增加2个服务,且服务类型是原子服务。

规则r2:增加原子服务时,服务的扩展流程有顺序、选择、并列和循环。

2) 服务扩展的计算与分析

使用文献[14-15]方法中的服务评价模型对该服务扩展实例的服务扩展能力进行计算与分析。在该实例中,服务组合后吞吐量增加是有益指标,因此对其进行特征演化分析;组合后响应时间增加,是有害指标,因此对其进行特征维持分析。假设组合时权值

根据文献[16]中性能等价化简分析,响应时间组合运算后可得用式(3)对该实例的响应时间进行特征维持能力分析。由于选择的评价指标只有一个(即响应时间),因此服务组合时评价指标权值根据式(2)可知

代入式(3),可得

由上述计算可知,随着原子服务数量的增加,特征维持能力的计算值小于1且越来越接近1,即该实例在服务扩展中具有较好的特征维持能力。

根据文献[16]中性能等价化简分析和式(5)可得,吞吐量

其中,R(t,s)表示变迁的标记流速,W(t,s)表示变迁t到状态s的权值,U(t)表示变迁利用率,λ表示变迁速率。

用式(4)对该实例的吞吐量进行演化能力分析,由于选择的评价指标只有一个(即吞吐量),因此服务组合时评价指标权值根据式(2)可知

代入式(4),可得

由上述计算可知,随着原子服务数量的增加,特征演化能力的计算值大于1且越来越远离1,即该实例在服务扩展中具有较好的特征演化能力。

4.2.2 网络应用角度服务扩展实例的定量分析

从网络实际应用角度,选用数据传输服务扩展作为分析实例。图6是带有窗口流控功能数据传输服务的 SHLPN(stochastic high-level petri net)模型[16],涉及的原子服务类别有系统类、报文类、安全类等。用位置表示执行状态,变迁表示原子服务,符号说明如下:A为数据缓冲器,B为报文缓冲器,C为报文处理缓冲器,D为报文输出缓冲器,E为报文发送接口,F为报文检验缓冲器,G为报文接受缓冲器,H为报文重组缓冲器,I为应答报文缓冲器,J为应答报文处理缓冲器,K为窗口计数器,L为应答报文接受接口,M 为应答报文检验缓冲器, S为发送序号产生器,R为接收序号产生器,T1为构造报文,T2为报文加校验和,T3为报文分片,T4为发送报文,T6为检验报文校验和,T7为错误报文处理,T8为接受报文,T9为分片报文的重组,T10为产生应答报文,T11为应答报文加校验和,T12为发送应答报文,T13为检验应答报文的校验和,T14为接受应答报文。

图6 数据传输服务

增加位置Q(重发队列)、N(错误报文接受缓冲器)、O(错误报文应答缓冲器),增加变迁T5(重发报文)、T15(错误报文应答的产生)和T16(错误报文应答加校验和)后,数据传输服务被扩展成带有错误重传功能的数据传输服务,其SHLPN模型如图7所示。

图7 带有错误重传功能的数据传输服务

随机 Petri网仿真的工具有 SPNP(stochastic petri net package)[17]、GreatSPN1.5、UltraSAN2.0、DSPNexpress1.3等。SPNP是C语言的一个扩充,附加了 SPN模型的描述和性能参数测试函数,一些重要的SPN模型特性都可以在SPNP中规定和应用。由于SPNP功能强大、使用方便,因此本文选用SPNP作为仿真工具。设定在2个服务的SHLPN模型中,发送窗口的大小用w表示,传输的错误率为 0.05。ENSM 数据传输服务实例模型中的控制报文长度为128 bit,数据报文长度为1 024 bit,一共传输60个数据报文。图 6服务实例模型中设定变迁速率为{λ1=100.0,λ2=100.0,λ3=100.0,λ4=9.0,λ6=100.0,λ7=5.0,λ8=95.0,λ9=100.0,λ10=100.0,λ11=100.0,λ12=100.0,λ13=100.0,λ14=100.0}。图7中新增的原子服务变迁速率为{λ5= 100.0,λ15=100.0,λ16=100.0}。变迁速率单位为bit/s。

使用文献[14-15]提出的网络服务扩展能力分析方法对该服务扩展实例进行抽象描述和计算分析。该服务扩展实例的抽象描述与4.2.1节中阐述的“理论角度服务扩展实例”的抽象描述类似。该实例的服务扩展规则J设定如下。

规则r1:扩展两次,第一次扩展中增加1个原子服务,第二次扩展中增加2个原子服务。

规则r2:增加原子服务时,服务的扩展流程有顺序和选择。

只实现了一次服务于扩展操作,即一次性新增2个原子服务。新增原子服务时会导致网络的吞吐量和响应时间发生变化。在该实例中,服务组合后吞吐量变大是有益指标,因此对其进行特征演化分析;组合后响应时间变大,是有害指标,因此对其进行特征维持分析。假设组合时权值

根据仿真实验可得,增加原子服务之前响应时间为13.685 s,第一次扩展增加T5这个原子服务后的响应时间为13.714 s,第二次扩展增加T15和T16这2个原子服务后的响应时间为13.925 s。使用式(3)对该实例的响应时间进行特征维持能力分析。由于选择的评价指标只有一个(即响应时间),因此服务组合时评价指标权值根据式(2)可知

代入式(3),可得

由上述计算可知,随着原子服务的数量的增加,特征维持能力的计算值小于1且越来越接近1,即该实例在服务扩展中具有较好的特征维持能力。

根据仿真实验可得,增加原子服务之前吞吐量为4.384 kbit/s,第一次扩展增加T5这个原子服务后的吞吐量为4.390 kbit/s,第二次扩展增加T15和T16这2个原子服务后的吞吐量为4.401 kbit/s。使用式(4)对该实例的吞吐量进行演化能力分析。由于选择的评价指标只有一个(即吞吐量),因此服务组合时评价指标权值根据式(2)可知

代入式(4),可得

由上述计算可知,随着原子服务的数量的增加,特征演化能力的计算值大于1且越来越远离1,即该实例在服务扩展中具有较好的特征演化能力。

通过对ENSM中2种服务扩展实例的服务扩展能力定量分析可知,ENSM能够根据需求灵活定制或组合出某一服务功能,实现服务功能种类的增加;ENSM在实现服务扩展时具有较好的性能特征维持能力和性能特征演化能力,具有很好的服务扩展能力。

综上所述,ENSM可以按需定制、添加原子服务,并且能够根据应用需求进行服务组合操作,进而实现网络服务的按需动态优性能地扩展;随着ENSM中原子服务数量上的增加以及原子服务间组合关系的增多,ENSM服务扩展所实现服务的功能不断增加,其服务扩展能力将远超传统网络;ENSM在实现服务扩展时具有交互的性能特征维持能力与演化能力,具有很好的服务扩展能力。

5 结束语

在传统网络体系结构中,提供服务是通过开发、部署和运作网络协议的方式来实现的。随着计算机网络的迅速发展,各种新型网络技术和用户应用需求层出不穷[18],传统网络体系结构在服务的定制和扩展能力上的问题也随之逐渐突显,协议的针对性开发部署、协议之间过多的功能性冗余、过高的协议开发部署成本等都制约着服务定制的能力。如何实现提供稳定网络服务并具备良好的服务定制和扩展能力一直是计算机网络研究的热点之一。

本文提出了ENSM,ENSM是对未来网络提供服务方式和能力的一种探索;介绍了ENSM的基本原理,对ENSM的服务扩展能力进行了定性分析;使用网络服务可扩展能力分析方法对 ENSM 的服务扩展能力进行了定量分析。由定性分析和定量分析可知,ENSM具有很好的服务扩展能力。

ENSM可按需动态部署,能很好地实现服务可扩展的特性,从而能够提供递归的服务能力。为了以后更好地设计、实现与推广使用ENSM,还需要更多的理论分析与论证工作作为坚实地基。下一步的研究工作将对 ENSM 的服务组合运算和 ENSM的性质等进行理论分析与论证。

猜你喜欢

可扩展性网络服务报文
基于J1939 协议多包报文的时序研究及应用
网络服务合同的法律问题研究
基于网络服务者在侵权法中的应用分析
低轨星座短报文通信中的扩频信号二维快捕优化与实现
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
恩智浦推出全新i.MX 8X 处理器,为工业应用带来更高的安全性、可靠性和可扩展性
电力监控软件的可扩展性设计
基于微软技术的高可扩展性中小企业系统解决方案研究
一种基于MapReduce的频繁项集挖掘算法