郑 冰,李 华
内蒙古大学 计算机学院,呼和浩特 010021
SDN(software defined networking)为云计算解决方案提供网络可编程能力和更强的网络管理控制能力,学术界和业界给出了各种基于SDN的云网融合方案[1]。SDN的云网平台(以下简称“云网平台”)是SDN支撑的云计算平台(SDN-enabled cloud computing platform)[2],指基于SDN 思想,面向云网一体的软硬件网络资源的统一管理、操作和运营的系统,可以屏蔽云环境下网络底层异构的物理硬件、设备等基础设施,将其抽象为支撑上层业务的网络能力并可以为用户提供自助的网络服务。云网平台是支撑云网协同工作的实体,保证云网平台的服务质量(quality of service,QoS),对于支撑上层业务正常运行和满足用户需求至关重要。
云网逐渐进入深度融合阶段[1]。从范围上看,云网融合最初在云平台内部实现,但随着云间网络通信需求的增加,出现了SD-WAN[1]。从应用场景看,出现了5G网络、分布式云边缘架构下的物联网、信息中心网络等应用场景[2-3]。从支撑的上层业务看,对实时性要求较高的语音和实时视频业务出现爆发式的增长。基于云网平台也推出了如云专线、云联网等云网产品[3]。这些变化拓展了服务质量评价的维度。基于SDN的云网平台是内部有丰富功能组件的复杂系统,对其进行服务质量评价涉及到云计算与SDN 的相关技术,是一项具有挑战性的任务。
虽然信息技术(information technology,IT)服务、云服务、网络服务和通用软件的质量评价已有大量的质量模型,并有权威的质量模型框架,例如,SQuaRE(software product quality requirements and evaluation,软件产品质量需求与评价)系列标准中的IT服务质量模型[4]。但是,由于SDN 技术具有明显的开放性和IT 化特征[5],云网平台提供的服务既具有传统IT 服务的特征,还具有云服务和网络服务的特征,现有的质量模型不足以满足对云网平台服务质量进行定量分析评价的需求,导致模型的可操作性较差。
以IT 服务质量模型为指导,结合云环境下SDN 的架构和特点,提出特定于云网平台的服务质量模型,并且只考虑与网络功能相关的服务质量部分,可以量化评价云网平台的服务质量。本文主要贡献如下:
(1)为基于SDN 云网平台的服务提出了一种有针对性的服务质量模型QM-SDNCCP。该模型考虑了云网平台服务具有的通用云服务和软件化的特点,从服务提供者和用户两个视角出发,对云网平台服务质量模型的设计进行了需求分析,获得了服务质量模型两个层次的分类维度。
(2)给出了QM-SDNCCP模型中质量特性和子特性的结构设计和描述,并给出具体度量元的分类计算方法,可用于描述并量化评价云网平台的服务质量。对QM-SDNCCP特性和子特性的设计进行了信度分析,表明所设计的服务质量模型的可靠性和一致性符合一般质量模型设计要求。
服务质量是服务与要求有关的固有特性,在质量评价过程中,只有进行多个维度的评价才能满足用户的多方面需求[4]。现有质量模型为建立云网平台服务质量模型提供了多个维度的参考。国际上已有一些常见的具有抽象概括性的质量模型,对于软件质量模型,有经典的McCall[6]、Boehm[7]质量模型和Dromey[8]质量模型,国际标准SQuaRE 系列标准[9]中的ISO/IEC 9126-2001 和ISO/IEC 25010-2011 也分别给出了软件质量模型和使用模型;对于服务质量模型,最早的服务质量评价体系SERVQUAL[10]基于用户视角给出企业服务质量的五个维度,包括有形性、可靠性、响应性、可保证和共情性,后被引入信息技术和云计算领域;在ISO/IEC 25011-2017[4]中给出的IT服务质量模型将IT服务质量属性分类为适宜性、易用性、安全性、可靠性、有形性、响应性、适应性和可维护性;国际电信联盟给出了通信网络服务质量相关参数的分类和概念模型[11],该模型只考虑网络服务性能的质量模型,可以作为度量元的设计参考。我国国家标准给出的细化指标体系在质量评价中具有直接可操作性:GB/T 33850-2017[12]定义了五个信息技术服务质量特性,安全性、可靠性、响应性、有形性和友好性;GB/T 37738-2019[13]给出了云服务质量评价指标,包含安全性、可用性、可靠性、响应性、满意度和可保障性。由于关注点不同,每个质量模型所包含的质量特性和子特性都有所不同。以上的国际、国家标准按照时间发展具有一定的继承演化性。
在具有一定通用性的质量模型中,例如SQuaRE,并不针对具体对象的质量提供定量度量或定性度量。而在通用标准的指导下,包括电子政务[14]、金融[15]、军事[16]以及航天[17]等特定行业领域需求,都有相应的定制质量模型。其中,GB/T 34077.1-2017 针对我国基于云计算的电子政务公共平台提出的质量模型包括的质量特性有:准确性、有效性、响应性、安全性、可靠性和友好性。同样,针对云网平台进行具体的服务质量特性等要素的分析和选择时,也需要考虑其自身特有的领域性,例如云服务特征、SDN技术特征等,但是针对云网平台服务质量模型的研究却非常有限,需要尽快开展。
在云网平台服务质量模型设计过程中需要考虑云网平台的服务质量特性、子特性和具体的度量元,相关的研究主要分为两个方面:一是与SDN 网络服务质量特性相关的研究,有针对SDN 数据平面设备和控制器进行性能和功能特性的基准测试研究[18-20];有对SDN控制器利用相关度量元进行可靠性、安全性和可扩展性的研究[21-22];也有测试仪表厂商提供专业的评测方案,覆盖SDN南向协议、编排层、以及虚拟化软件等评价对象,其中有可供参考的具体的度量元[23]。二是与云服务质量特性相关的研究,有针对云环境下多种云服务的基准评测[24]、隔离性研究[25],还有云环境下通用服务质量模型的研究[26-29]。随着基于SDN的云计算网络[2]等的研究发展,云网进入深度融合阶段,网络作为服务成为趋势[1]。相应地,出现了与云网平台服务质量相关的模型和评价方案,有机构给出了宏观的评价指标,如云计算开源产业联盟的云网融合发展白皮书[30]等。但是现有的研究主要关注的是云网平台服务质量的部分特性,并且主要是反映技术层面的指标,并没有从提供服务的角度考虑服务提供者和用户共同关注的质量特性。
综上,通用质量模型无法满足对云网平台服务质量有针对性的质量评价,现有相关研究也少有从服务质量特性的角度去度量云网平台服务质量。在云网深度融合的背景下,随着技术和需求不断发展,有必要给出针对性的云网平台服务质量模型,可以帮助服务提供者和用户确定它的整体服务质量,实现对云网平台的服务质量进行持续评价。
首先,为了明确设计的视角,在识别和确定云网平台服务的质量特性时,必须考虑到服务质量模型的目标使用者的需求。建立服务质量模型的最终目标是为使用者给出可供应用、判断和决策的信息,不同类型的使用者对云网平台有不同的服务质量需求。从服务的角度看,云网平台服务质量模型的目标使用者包括服务提供者、用户和第三方评测机构。对于服务提供者,需要评价和改进所提供服务的质量,提高用户满意度并获得尽可能多的收益。对于用户,需要找到符合需求的服务提供者、确定可接受的服务标准,并对所接受服务的质量做出评价。服务提供者和用户是云网平台服务质量模型的主要利益相关使用者,在质量模型的设计中应综合考虑二者利益。第三方评测机构主要是接受委托对云网平台服务质量进行评价。使用者对于服务质量模型的使用涉及云网平台生命周期中的多个阶段,包括技术选型、验收、运维和服务使用等阶段。
将云网平台看做灰盒进行分析,即,虽然不考虑源代码级别的白盒,但是也并不将其完全视作整体对外提供服务的黑盒,而是综合考虑云网平台架构中的逻辑实体、由逻辑实体构成的平面之间的交互以及对外提供的服务,由此引入云网环境下SDN 技术带来的影响和能力提升。基于SDN 云网平台的实现主要分为两种方式:一是云管理平台实现的原生SDN网络能力,为提高相对薄弱的网络资源管理能力,云管理平台本身提供了一些基于SDN 技术的网络资源调度和管理功能,部分实现了网络控制与底层转发设备的解耦;二是引入第三方SDN 控制器的云网平台,基于相对成熟的独立SDN控制器解决方案提升云管理平台的网络功能,支持扩展L2~L7层的网络服务,这也是目前较为普遍采用的一种方式[2],其架构如图1所示。
为使问题聚焦,只考虑SDN网络管理相关的部分,并省略部分细节。考虑主流的基于OpenFlow 模型的SDN 架构,OpenFlow 将网络中数据包的公共属性抽象为“流”(flow),最核心的数据结构是流表(flow table),是对流进行相应操作的动作的集合,如转发、丢弃等。为明确云网平台架构内部的逻辑功能和存在的跨逻辑平面的交互,需要从以下两个角度对图1进行分析:
从分析逻辑功能的角度,云网平台架构中包含的逻辑实体有:云管理平台、SDN 控制器、支持SDN 的交换机(以下简称交换机,是SDN 网络中典型的网络设备)和主机。云管理平台主要负责其管控域内云资源的管理和任务调度等。SDN控制器负责网络资源的管理,例如安装了流表的交换机、网络链路,是SDN网络中的控制逻辑实体。交换机负责流表的安装维护以及执行处理特定流的动作等。通过SDN控制器下发不同控制策略到交换机的流表,不同的流可以匹配到不同的流表中,执行不同的动作。另外,用户可以在SDN控制器平台上开发自定义的流管理等多种应用程序,即SDN App。通过部署在SDN 控制器平台上的各类应用程序,例如网络功能服务链应用程序,SDN控制器与云管理平台协同,可以增强云环境下的网络管理能力。主机是云网平台的被管对象,其中也包括用户发起服务请求的终端。
(1)从分析逻辑平面之间功能交互的角度,云网平台架构按层次划分为:资源管理平面、网络管理平面和数据平面,其中网络管理平面又细分为控制平面和应用平面。SDN改变了传统云环境下承载网络的功能结构,将部分网络功能从数据平面抽取到控制平面和应用平面,通过这些逻辑平面之间的交互(通过南北向、东西向APIs)使控制平面具有集中管理和扩展能力,提高了网络服务的可用性,但交互过程也增加了云网平台内部的通信量,引入通信延迟和安全风险。
2.3.1 SDN对云网环境下服务质量的影响
首先,需要考虑SDN和云计算的本质特征:
(1)SDN 的关键技术特征主要包括[5],控制平面与转发平面分离、转发平面抽象、开放的可编程接口和控制平面集中化的网络控制管理等。
(2)NIST(美国国家标准与技术研究院)在NIST SP 800-146中定义了云计算的五个基本特征[24]:按需自助服务、快速可伸缩性、可度量的服务、无处不在的网络访问和资源池化。
其次,需要关注由SDN 引入的服务质量影响。通过2.2 节的架构分析,SDN 将部分属于底层设备管理的功能抽象到控制平面,需要考虑网络功能结构改变对服务质量的影响,主要是控制平面和数据平面分离所带来的影响:
(1)SDN控制平面的处理能力和数据平面的转发能力是否能够有效支撑服务[19-20,23]。
(2)作为网络管理控制的中心,SDN 控制平面是否能够在出现故障的情况下,提供相应机制保障服务的可靠运行[21-22]。而对于功能简化的数据平面,同样需要提供保障用户数据可靠转发的机制。
2.3.2 SDN提供的云网平台服务能力
对于SDN 提供的云网平台服务能力,参考国际电信联盟标准[11],考虑技术实现中SDN提供的技术支撑以及服务提供阶段对需求的满足,给出分析视角如图2所示。
本文总结的具体SDN提供云网平台服务能力包括七个方面。结合图2,服务能力的每个方面都分别从三个角度阐述,包括,云网环境下的网络需求、SDN提供的云网平台服务能力支撑、对服务提供者和用户需求的满足。具体如下:
(1)细粒度的定制化的感知测量。
可度量的服务是云计算的重要特征之一[28]。云网环境下需要实现更简单及精确的网络测量,提升对于网络带宽或流量度量的精确度,并可以针对不同类型的服务提供定制化的感知测量。
SDN自身提供了细粒度的流量信息统计功能,可以对每包、每端口、每流表、每队列和每计量表进行统计[5]。
服务提供者可以按每流或流量汇总等不同粒度收集统计信息,获取多样的网络测量数据,满足用户对于准确度量服务的需求。
(2)网络流量的细粒度的动态调度调优。
云环境下的网络流量具有高吞吐量、低时延和变化频繁的特点[3]。为了支撑上层业务的正常运行,云网平台需要具有动态调整网络流量的能力,即,及时感知流量负载的变化和出现的网络拥塞,弹性地实现网络资源的配置与回收[31],自动化地调整路由策略。例如,对于网络直播类的业务,在直播时,短期内会涌入大量的用户流量,需要增加带宽资源,在直播后,需要及时释放带宽资源。
SDN可以实现基于流的网络资源解析(L1~L4层),根据上层业务当前状况以及趋势预测,通过控制器动态下发策略,实现对全局网络资源的优化,完成流量的自我调优,结合备份机制,可以降低网络拥塞发生的概率。更进一步地,可以实现网络资源和主机的联合优化[30]。
对于服务提供者,可以增强服务的及时响应性,使网络带宽利用率保持在合理的范围内,在保证服务质量的同时,实现节能环保、降低运营成本的目的。对于用户,可以获得良好的体验并节省开销。
(3)按需求分配网络资源。
云计算具有按需使用资源的特性[29]。云环境中部署的应用类型丰富,用户对网络相关服务的需求多样且多变,需要为不同用户或不同应用提供有区分的服务。
SDN转发决策是基于流的,同一个流中的所有数据包在转发设备上都接收相同的服务策略。利用SDN技术对数据流进行分类,实现基于每流的带宽保证,将资源预留、队列管理和分组调度等策略相结合,在动态负载均衡基础上,为特定类型的用户或应用提供专用带宽,实现有区分的、不同优先级的带宽QoS保证,并支持网络的动态可配置[5]。
对于服务提供者,可以为用户提供更丰富的网络服务选择,例如,多种可选QoS策略,实现QoS策略自动管理。用户按需使用网络服务,并拥有对网络进行配置的自主性,拥有调整QoS策略和进行路由定制的能力等。
(4)网络资源的统一管理。
在统一的资源平台上实现用户的自服务,是云计算的特征之一[24]。云网平台下,需要屏蔽底层供应商设备的差异,提供网络资源的统一管理能力。
在虚拟化技术的基础上,利用SDN 控制平面集中化的网络控制管理特征,可以实现网络的统一管理[25]。控制平面可以下发不同粒度级别的用户策略。服务提供者将业务网络模型编排为网络实例组合,SDN控制平面通过北向接口接收编排信息,通过南向接口下发给数据平面的网络设备,可以进一步实现自动化统一管理[3]。
对于服务提供者,可以实现云网业务服务的一体化开通和运营,用户可以自助下单开通服务,提升服务提供和使用的自动化程度、降低管理的复杂度和成本。
(5)网络资源隔离。
在云网环境下,使用共享资源池的方式为用户提供服务,会带来一些的风险,如用户访问未分配的网络资源、其他用户的网络资源和相关数据/控制信息[25]。为保证用户网络资源和信息的安全需要进行网络资源隔离,至少包括网络资源相关的可达性隔离和带宽隔离。
SDN 中通过流表操作,以流为粒度,从L1 到L4 都可以进行数据流过滤,实现不同用户和业务间流量的可达性隔离[25]。通过计量表进行限速操作可以实现带宽隔离。对流表信息隔离需要引入存储和数据库相关的安全措施。
对于服务提供者和用户,网络资源隔离都是必要的,可以保障服务的安全性。
(6)网络资源可视化。
云网环境下的云服务具有无形性的特点[26],不便于用户管理网络资源,也降低了用户对云网平台服务的接受度。由此提出了网络资源可视化、网络拓扑动态检测及实时更新等可视化需求。
SDN 控制平面提供了管控域内底层网络的全局视图信息,在此基础上,可以为网络资源负载均衡、网络故障定位及快速恢复等功能提供便利[22]。
服务提供者为用户提供有形的网络服务,提高云网平台网络服务的可接受程度,用户根据可视化的网络抽象视图获得服务有形性,便捷地管理网络设备和网络数据流。
(7)网络组件的软件化和网络功能定制。
云计算的按需自助服务从另一角度可以理解为用户在服务提供者提供的平台上按需自定义扩展功能。一定程度上,可以将云网平台提供的服务看作PaaS 服务,用户可以利用平台提供的开放API接口进行二次开发,实现定制的网络功能扩展。
云网平台中的SDN网络组件具有软件化特征[5],网络的正常运行很大程度依赖于运行在通用服务器上的软件。网络组件的软件化为解除厂商绑定、实现用户按需自定义网络功能提供可能。基于SDN的云网平台为用户提供开放的API接口,实现一定程度的网络可编程性,且SDN 技术中的网络编程具备一定通用软件编程特征[2,5]。
用户通过服务提供者提供的API 接口进行二次开发,实现定制的网络功能,例如自定义的网络分析程序,并部署在云网平台上,也可以更改和删除定制的网络功能。
上述云网平台服务质量影响因素分别从不同角度反映了服务提供者和用户所关注的云网平台服务质量模型的建立需求,下面进行服务质量模型设计。
服务质量模型是一组依据需求定义的特性及特性间的关系,实现对质量需求的抽象描述。需要给出结构设计从而明确特性之间的关系[27]。依据经典的McCall模型[6]和SQuaRE系列模型[9]的设计,遵循独立性、针对性、可度量性、简明性和可比性的设计原则,建立具有多层次结构的服务质量模型。其中,层次结构设计如图3所示。
图3中,质量特性是高层次抽象层,具有一般性;每个特性由若干子特性构成,子特性是对质量特性的解释,更具体地体现云网平台特征;子特性又包含若干可以直接量化比较的度量元,便于实施度量。度量元是指在层次结构底层度量所约定的服务需求和最终提供的服务的符合程度[10],其数值需要通过从云网平台采集具体的评测数据进行计算获取。评测数据分为客观的测量/采集数据和主观的专家评估量化数据。
在整体多层次结构的基础上,质量模型结构又分为两部分,质量特性的树状结构和度量元的网状结构,按照独立性原则,每个层次的特性、子特性以及具体度量元的设计应尽力减少相互之间的关联性,从不同角度反映云网平台服务质量,因此,主体的质量模型特性的组成采用树型结构,如图3(a)。在对于度量元的初步筛选过程中发现,不同度量元的评测数据之间存在交集,即,不同度量元可能拥有一个或多个相同评测数据来源。因此,度量元到具体评测数据的部分是不完全连接的网状结构,如图3(b)。例如,从SDN网络转发设备获取的“网络带宽利用率”的测量统计数据,可以作为衡量“出口链路带宽利用合理性”和“网络资源配置和回收有效性”两个度量元的评测数据来源。
按照针对性原则,重点关注从云网平台服务质量影响因素到质量特性、子特性和度量元的映射[8]。为实现质量模型和评价对象的绑定映射,按照构建顺序,层次质量模型的建立方法有三种[8]:一是自顶向下,首先确定顶层质量特性,自顶向下将质量特性分解,从质量特性到云网平台质量影响因素建立联系,例如McCall 模型和ISO/IEC 25010;二是自底向上,自云网平台的质量影响因素到质量特性的映射。通过聚类或因子分析的方式,确定必须满足的重要影响因素,以及这些因素所影响的顶层质量特性,例如质量屋(house of quality,HOQ)指标选择方法[32];三是前两者的结合,采用自底向上/自顶向下(bottom-up/top-down)的方式进行质量特性的反复迭代识别,例如Dromey质量模型[8]。通过对各层次指标的初步筛选和专家意见,Dromey 质量模型采用的自底向上/自顶向下的方式更适合于构建云网平台服务质量模型,质量模型各层次指标需要反复迭代确认,实现服务质量影响因素到质量特性的映射。
采用自底向上/自顶向下的构建顺序,通过德尔菲法(也称为专家咨询法)和频率分析法确认质量特性。频率分析法是指,在选取指标的过程当中,以现有权威标准和学术研究中给出的质量特性为数据样本进行频率统计分析。该方法根据现有模型的规模(数量)和定义覆盖范围(质量)来评估所建议的质量模型的结构特征,为云网平台质量模型的合理性提供支撑[33]。计算方法为f=f(k)/s,其中,f为频率,f(k)为第k项指标出现的次数,s为样本的总数。本文给出了统计结果数据(https://github.com/zh-b210/qm),照质量模型适用对象不同分为三类,包括:软件质量模型(D1)、IT 和云服务质量模型(D2)以及Web服务质量模型(D3)。云网平台服务基于信息技术和互联网提供,与IT服务、云服务和传统Web服务都有相似,可借鉴相关研究成果。
各质量特性之间的可靠性和一致性在第4 章通过信度分析进行验证。以上方法能够确保云网平台服务质量特征与质量特性之间建立明确的联系。
3.2.1 参考质量模型和质量特性分类规则
如果按照自底向上/自顶向下的构建方法实现从云网平台服务质量影响因素(2.3节)到顶层质量特性的映射,还需要确定顶层质量特性的分类方式。
对于服务质量模型的质量特性进行分类的方式主要有三种[27]:基于权威质量模型依从性分类、根据服务质量依赖性分类和根据相关应用场景分类。由于云网平台所提供服务的应用场景多变,难以依据场景进行类别划分,因此质量特性的分类设计只好将前两种方式相结合如下:
首先,考虑到SDN 的IT 化特征和云计算的服务特征,云网平台提供的服务质量既依赖于IT基础设施、网络和软件等有形产品的质量,又依赖于服务本身独有的特征[10],主要参考的权威质量模型出自SQuaRE 系列标准[9]:ISO/IEC 25011 给出的IT 服务质量模型为主要参考模型,并从ISO/IEC 25010的软件产品质量模型和使用质量模型中筛选出未被覆盖的特性作为补充。服务质量是产品质量和使用质量的延伸[9],强调的重点有所不同,ISO/IEC 25011 结合了经典服务质量评价体系SERVQUAL的特性,以服务质量为中心,对参考模型中质量特性与质量子特性进行继承、裁剪和更改。
其次,给出定制质量特性的分类规则,进一步确保定制的质量特性能够覆盖云网平台的服务质量影响因素和模型使用者的需求,考虑2.1 节给出的主要利益相关使用者,即,服务提供者和用户。确定质量特性时需要参照规则如下[27]:
(1)对云网平台服务质量有直接贡献的特性:从云网平台作为整体提供服务的角度,通过云网平台提供和呈现的可度量服务,反映整体服务质量对主要利益相关使用者直接贡献的特性。规则(1)重点与服务质量相关。
(2)用户体验相关特性:从接受服务的角度,用户关注体验。云网环境下,用户需要获得符合约定性能的准确、有效的服务,达到获得良好用户体验的目的,反映云网平台相关产品在特定场景下,对于用户使用服务的需求的满足性。规则(2)重点与服务在特定条件下的使用质量和提供服务过程中的交互体验相关。
(3)服务提供者运营成本相关特性:从提供服务的角度,服务提供者关注收益(转化为运营成本)。云网环境下,服务提供者需要通过云网平台为用户提供服务,达到节约运营成本并增加收入的目的。规则(3)重点与服务在特定条件下的使用质量和提供服务中的资源利用效率相关。
(4)云网平台软件产品质量相关特性:与规则(1)不同,这一规则强调云网平台所蕴含的软件产品本身所提供的功能对使用者需求的满足程度,例如“准确性”这一子特性。从软件产品本身的质量看,这部分是专门与产品质量相关的特性。规则(4)重点与软件产品质量相关。
图4 给出所参考质量模型依赖关系和相关分类规则。
这里并不强调分类规则的不可重叠性,某些质量特性存在与多个分类规则相关的情形,例如可靠性。这在现有的质量模型构建研究中也较为常见[9,27,33]。
3.2.2 质量特性的选择
从云网平台服务质量的影响因素到质量特性,采用自底向上/自顶向下反复迭代的方法,依据权威标准和分类规则,选取7 个服务质量特性,包括:准确性、有效性、响应性、可靠性、安全性、有形性和友好性。分类规则和质量特性的相关性如表1所示。
对于表1,需要说明两点:
表1 云网平台服务质量特性的分类规则和相关性Table 1 Classification rules of SDN-enabled cloud computing platform service quality characteristics
(1)质量特性的调整。与ISO/IEC 25011 相比,做出的调整是将“适宜性”替换为ISO/IEC 25010 中的产品质量模型中的“功能性”的子特性“准确性”和使用质量模型中的“有效性”,其中“准确性”更能反映云网平台服务相关的产品本身的质量和最终对于用户体验的影响。“有效性”是服务提供者按照约定为用户提供服务是否可用和可用的水平,直接影响到服务质量,也影响用户体验和服务提供者的运营成本。服务提供者对于用户网络管理控制请求的及时有效的响应是SDN技术的重要体现,也与用户使用体验和服务提供者的运营成本相关,因此作为一个质量特性提出。“易用性”替换为GB/T 33850-2017 中的“友好性”[12],体现云网平台服务所具有的服务提供者和用户交互的特点,是服务提供者设身处地为用户着想和对用户给予特别关注的能力。相比于传统网络,强调云网环境下SDN 所提供的更多的用户自主性,可定制、更多维度的分析和二次开发能力。在删除了“适应性”和“可维护性”,频率分析的调研结果中表明,在一级质量特性的选择中,本文给出的统计数据中,虽然D1中“可维护性”的选择频率较高,但是与云网平台服务更相近的D2和D3中,“可维护性”出现的频率分别是0和36%,并且这两个特性与“友好性”在内涵上有重叠[13,24],因此删除。
(2)质量特性与分类规则相关关系的解释。由于本文质量模型是基于经典模型进行的定制,顶层质量特性均从现有经典质量模型中选择,其内涵已经相对成熟和稳定,可以认为和分类规则之间的相关性关系也是确定的。因此,依据权威模型中质量特性的内涵和现有研究的分析结果给出相关关系,如表1所示。通过频率分析的统计结果进行进一步的验证,例如,在D3中100.00%和82.98%的服务质量模型均选择“可靠性”和“安全性”作为质量特性,可以确认和服务质量的相关关系。在D2中60%选择了“响应性”作为质量特性。
3.2.3 服务质量模型QM-SDNCCP
结合需求分析结果,在7 个服务质量特性的基础上,按照可度量性的原则分解出25 个子特性。在质量子特性的具体设计中参考了与SQuaRE 系列标准有演化关系的两个国家标准[13,15],对部分子特性进行了调整。按照图3(a)的结构设计,图5给出了适用于云网平台的服务质量模型QM-SDNCCP(quality model for SDN-enabled cloud computing pltaform)。为便于问题阐述,给出符号表示和形式化说明。
限于篇幅,省略常见子特性和度量元的解释[6-9],仅给出与2.2节给出的需求相关的、特定于云网平台服务质量的部分子特性的度量元的详细描述以及度量元类型,如表2所示。其中度量元类型的解释将在3.3节给出。
表2 子特性的度量元分解(部分)Table 2 Metrics decomposition of sub-characteristics(part)
完整的质量模型设计需要给出可操作性的度量元的计算方法[27,34]。一般通过差值[34]和比值[13-14,35]两种方式进行符合程度的比较。按照简明性和可比性的设计原则,这里采用更普遍的比值方式。比值方式的好处是可以同时将取值进行无量纲的归一化处理,将原始数据归一化到[0,1]之间,便于计算具有可比性的综合服务质量评价结果。这种方法尤其适用于云网环境下一段时间内流量带宽等有峰值的情形和相对重要程度的衡量。另外,为了获得直接可比性,将比值结果均转换为正向度量元,即度量元取值越大对服务质量的提升越有积极作用。
在通过比值计算度量元的时候,需要根据质量模型的特点确定度量元类型。Manuel[36]的度量元类型被广泛采用,包括,存在型(P)、比率型(R)、层级型(L)和时间型(T),等。根据对云网平台特征的分析和自底向上/自顶向下的迭代指标确认过程中的经验总结,删减了不适合的度量元类型。例如,如果采用比值方式度量符合程度,那么表示时间间隔的时间型就可以转化为比率型,控制平面的成功“响应时间”就转换为“请求处理的及时性”(∈子特性f(2)4)。
以下给出QM-SDNCCP 模型采用的三种度量元类型:
(1)存在型(P),度量元所描述的需求在具体实现中是否满足。为保持形式统一,仍采用等式,度量元ρ的计算方法如公式(1)所示:
其中,ρ∈{0,1},对于sp的取值,存在两种情况,通过评价者赋分值,需求在具体实现中满足赋1 分,需求在具体实现中没有满足赋0分。
例如,度量元“路由定制能力”(∈子特性f(2)3),如果评估对象具有路由定制能力sp=1,则最终取值ρ=1,不具有路由定制能力sp=0,则ρ=0。
(2)比率型(R),数值比率,度量元所描述的需求在服务实现中的计数或具体测量的数值与约定(或相关标准规定)的计数或数值的比值。按照评测数据的类型分为以下几种情况:
①计数类,表示通过简单计数获得的数据,细分为正向计数类和负向计数类。正向计数类表示进行比值运算后获得的度量元数值和原始值的大小变化趋势一致数据。度量元计算方法如公式(2)所示:其中,rp∈[0,1],ns表示约定(或相关标准规定)的计数标准值,n是需求在具体实现中实际被满足的计数值。
例如,假设约定可视的网络资源数ns=5,评估对象实际可视的网络资源数n=4,则度量元“网络资源可视性”,rp=0.8。
逆向计数类,即对数据进行比值运算后获得的度量元数值随着原始值的增大而减小。度量元计算方法如公式(3)所示,参数的解释与公式(2)类似,不再赘述。
数值类表示在一段时间间隔(t~t+Δt)内采集获得的实数类型的评测数据(例如,响应时间),同样有正向数值类和逆向数值类。度量元计算方法如公式(4)和(5)所示:
其中,α∈[0,1],对于sl的取值,通过评价者赋分值。需求在具体实现中全部满足赋5 分,较大部分满足时赋3分,部分满足时赋1分,完全没有满足赋0分。相比于存在型,层级型度量元的评分制引入了更强的主观性,但是这种情况目前无法避免[36],可以通过后续在综合评价计算中引入AHP等方法进行改进[27]。
例如,度量元“统一管理能力”(∈子特性f(2)2),如果评估对象完全实现统一管理需求,则sl=5,α=1;较大部分实现统一管理需求,则sl=3,α=0.6;部分满足需求,则sl=1,α=0.2;如果完全不满足统一管理需求sl=0,α=0。
由图3(b)可知,云网平台质量模型的度量元采用网状结构设计,是通过对有交集的评测数据进行计算获得。从评价对象获取的评测数据,利用以上分类的计算方法进行运算可以算出度量元数值,之后通过综合评价获得最终评价结果。在综合评价方法的选择上,很多标准和研究提出的质量模型都给出了参考方法,例如分级加权平均方法[12-14]、模糊综合评价法[17]等,不再赘述。
服务质量模型QM-SDNCCP具有多层次结构,用于对云网平台进行服务质量评价的多指标体系。为了确保通过QM-SDNCCP获得的评价结果可靠且一致,需要对其主要组成部分的指标体系进行信度分析。信度分析是一种测度指标体系是否具有一定可靠性和一致性的有效分析方法[30,36],用于衡量质量模型评价结果的稳定性。具备高信度的指标体系,内部结构良好,各指标之间独立,并且指标关系一致。QM-SDNCCP主体是由质量特性和子特性两个层次构成,需要对二者进行信度分析。具体步骤如下:
(1)样本数据采集。邀请云网领域的专家和用户对所提出的服务质量特性和子特性进行评分,其中用户的类型分为数据中心网络运维人员和有云网平台开发测试经验的人员。通过专家和用户的个人经验判断,按照服务质量影响的重要程度,分别对7个质量特性和25个子特性进行打分。通过李克特式5点量表法[17]收集专家和用户的主观评分,最终共搜集59份评分数据,打分表如表3所示。
表3 服务质量评价影响打分表Table 3 Scoring scale for impact of service quality evaluation
(2)计算信度系数。信度系数是表明信度大小的统计量,一般通过对信度系数的计算进行信度分析,最常使用的是Cronbach’s Alpha信度系数[17],计算方法如公式(7)所示:
其中,N为用于测量信度的特性/子特性的数目,σ2Yi为第i个特性/子特性得分的方差,σ2X为总得分的方差。Alpha 越大,则说明利用指标体系进行评价所获得的结果越可靠;反之,则说明专家和用户虽然使用相同的指标体系,但所得评价数据之间差异较大,指标体系不具有可靠性。
利用统计软件SPSS20.0 对步骤(1)所获得的服务质量评价影响打分数据进行信度分析,结果如表4所示。
表4 可靠性统计量Table 4 Reliability statistics
(3)对信度系数的计算结果进行分析讨论。通常情况下,当Alpha∈(0.7, ]1 表明该指标体系具有极高信度,当Alpha∈[ ]0.35,0.7 ,表明该指标体系具有一般信度,而当Alpha∈[0,0 .35 ),表明该指标体系具有极低信度。从表4 的结果可以看到,质量模型的7 个特性都具有极高信度。同时,考虑到特性的划分主要依据相关权威标准,在IT 服务质量和云服务质量评价等领域中有多年的应用,并且表1中给出了详细的分类规则,因此,认为QM-SDNCCP 特性的可靠性和一致性满足要求。25个子特性更具有云网平台服务特征的针对性,是通过需求分析获得,不可避免地引入了更多主观性,其信度分析结果更有参考价值。表4 的信度分析结果表明QM-SDNCCP子特性的设计具有极高的信度,可靠性和一致性满足要求。
目前,SDN技术在云计算环境下的应用范围逐渐变广,需要对云网平台提供服务的质量进行系统的评价。本文在给出云网平台服务质量模型设计需求分析的基础上,对权威服务质量模型SQuaRE 进行了裁剪和定制,提出了云网平台服务质量模型QM-SDNCCP,并给出了度量元的计算方法,达到描述并量化评价云网平台服务质量的目的。对服务质量模型QM-SDNCCP 进行了信度分析,表明QM-SDNCCP模型的特性和子特性的设计具有可靠性和一致性。QM-SDNCCP 可以应用在技术选型、验收、运维和服务使用阶段,为服务提供者和用户提供云网平台服务选择和质量改进的参考。
本文只给出一个多方面需求覆盖的服务质量模型,由于篇幅所限,没有对服务质量模型中特性、子特性的描述以及具体度量元给出更加细化的分析,例如针对弹性、隔离性等服务提供者和用户都重点关注的度量。另外,虽然出现了诸如Kubernetes这类所谓容器云管理平台[3],但是基于SDN的云网平台所支持的服务能力并没有本质变化。未来,服务质量模型QM-SDNCCP也将根据技术的发展和应用场景的丰富做出相应的调整。
致谢:感谢内蒙古大学计算机学院的云计算与服务软件内蒙古自治区工程实验室、内蒙古自治区社会计算与数据处理重点实验室和内蒙古纪检监察大数据实验室提供的实验环境支持。