论云计算的服务质量,本文主要内容关键词为:服务质量论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
中图分类号:G250.7 文献标识码:A 文章编号:1003-6938(2012)04-0001-05
1 引言
云计算只有以服务的形式将其特征和优势展现出来,用户才可以感知其存在,这也是其自身价值得以实现的形式。云计算技术将其自身展现给用户的具体实现形式称为云计算服务(简称云服务)。云计算环境下,用户可通过链接的网络,根据自己的需要随时随地选择不同的服务内容和服务形式。然而,云服务并不是唯一的,也不总是免费的。对云服务提供商来说,为抢占云服务这个肥沃的领域,他们以不同的云服务内容和形式进行着激烈的竞争。Amazon、Google、Microsoft、IBM、Sun、HP和Salesforce等IT商均推出了不同的云服务,如托管虚拟服务器服务(Linux或Windows)、托管应用程序服务(CRM或Messaging报文发送)、托管数据服务等。对用户来说,琳琅满目的云服务可以满足用户随时按需使用的需求。但用户访问云服务会受到各种因素的制约,如用户需求以及必须支付的费用和自身有限的预算,用户会平衡成本支出与所获得的服务质量水平,选择性价最好的云服务及其提供商。提供商为保留现有的客户、吸引新客户,必须保证云计算的服务质量(Quality of Services,QoS),才能从云计算市场中获得收益。为此,提供商们将服务等级协议(Service Level Agreements,SLA)的思想引入云服务领域,制定各自的云SLA,以保证云服务的质量。如Microsoft Azure云平台服务制定了系列SLAs,从Storage、Compute、SQL、AppFabric和CDN等方面来明确服务双方的职责与义务;Amazon S3存储服务制定了Amazon S3 SLA,从功能、可靠性和价格等方面来明确其存储服务;Google Apps制定了Google Apps SLA,明确了Apps产品提供的服务等级及违例的情况。各种云SLA的实施,使云SLA成为目前云提供商们保证QoS的重要手段。据调查显示,注重服务质量、用SLA来保证服务质量的云计算企业中,Amazon、Google Apps和Microsoft Azure在美国的云计算市场渗透率分别为44%、28%和23%[1],吸引了较多的用户,在云计算市场中具有相对较强的竞争力。因此,提高云服务的质量有助于云服务提供商们获得用户的满意度,有助于加强用户和提供商间的长期合作关系,有助于提供商建立服务品牌的形象,获得市场份额。追求以用户的满意为目的的服务质量,是企业获得和保持竞争优势的关键因素。
2 云计算服务质量的定义
ISO(国际标准化组织)定义质量(Quality)是“一个实体特性的总和,这些特性影响其满足用户显性和隐性需求的能力”[2]。显然,这个定义是从用户的角度出发,衡量实体的特性满足用户需求的程度。其中,这些特性(Characteristics)应该是可观察的或可测量的。只有可观察或可测量的特性,才能被用户感知,才能衡量其实现的程度。特性在经过定义以后将成为衡量质量可量化的标准和参数。由于不同用户的知识水平、认识观念等不同,导致使用实体的方式和行为等具有差异性,因此,同一质量的实体经过用户使用后,给予用户的质量感知是具有差异性的。同理,将衡量质量的实体扩展到非实体的服务中,描述这些服务满足用户需求的能力,即服务质量(QoS)。ITU(国际电信联盟)定义QoS为“使用服务的总体效果,这些效果决定了一个用户对这项服务的满意程度”[3]。
本文根据ITU的QoS定义,将云计算的服务质量定义为“用户使用云计算服务的总体效果,这些效果决定了一个用户对该云计算服务的满意程度。”
云计算的服务质量包含着质量的一般性质,如从用户角度的质量差异性、可观察性、可测量性及具有显性和隐性的用户需求等。对用户来说,与其他非实体的服务一样,云服务的内容和形式多,用户选择服务及服务提供商的弹性大,动态变化快。导致某云服务的用户动态变化的原因是用户对云服务的满意度。而决定用户满意度的关键是用户对云计算服务质量的预期及其感知。当用户对云计算服务质量的感知达到或超出预期时,用户就感到满意,他们对该服务的忠诚度就越高,其动态变化的可能性就越小。反之,如果用户对这项服务感到不满意,他们必然会将服务的需求转向其他同类的服务,对该服务的忠诚度降低,用户动态变化的特征就明显。
用户形成云计算服务的需求和期望之后,选择提供商及相应服务时,会参考不同提供商的云服务能力以及他们的价格,尽量在需求、期望和成本支出间达到平衡。因此,对提供商来说,云计算的服务质量是他们从技术角度和客户满意度角度来衡量服务性能的一个重要手段。提供商能提供不同的服务质量以及最终实现的不同服务质量,意味着不同的服务种类及服务等级,有助于满足不同用户不同级别的服务需求。
对云服务提供商来说,其可以提供的服务质量以及其实际实现的服务质量会存在一定的差异性。导致这种差异性的原因包括云服务提供商观点的改变、地域的差异、季节的差异、规模的差异、管理能力的差异等。
因此,对云计算服务质量的理解,需包括用户方面需求的服务质量和感知的服务质量以及提供商方面地提供服务质量的能力和实现服务质量的能力。这四个方面也就是理解云计算服务质量的四个视角。
3 云计算服务质量的四个视角
结合用户、提供商以及服务前后的角度,即用户使用云服务的前后、提供商云服务的前后,可以得出云计算服务质量四个视角的关系(见图1)。
图1 QoS的四个视角[4]
其中,用户的QoS需求为用户使用云服务前的需求,用户感知的QoS是用户使用云服务后的感知;提供商提供的QoS是提供商提供云服务前的综合能力,提供商实现的QoS是提供商提供云服务后的实际能力。
3.1 用户需求的云计算服务质量
用户需求的云计算服务质量(QoS Requirements of user/customer,QoSR)是有关用户需要的云计算服务质量水平的表述,表明用户对某特殊服务的质量需求的程度,一般来说,用户不会关心服务提供和设计的细节问题,他们只关心他们使用服务的效果和质量。从用户的角度来看,QoS只与用户感知的效果有关,用户不会去关心服务内部影响效果的因素,更不会依赖服务的设计来定义自己的QoS需求。在描述对服务质量的需求时,用户的这些表述很可能是用非技术性、非专业的词语来表达的。能使用专业描述性术语来描述服务的用户很少,但他们的描述表达了他们对服务的需求,这些需求对提供商来说是极其重要的。提供商必须从用户的角度来考虑和设计服务的方方面面,作为提供服务的依据。他们根据自己所获得的用户对QoS需求的描述,划分用户需求的优先次序,并将需求转化成为相对独立的业务术语,创建一种可以被双方理解的共同语言,定义用户的QoS需求,并向用户作出保证QoS的承诺,其承诺的文档形式如SLA或其他合同的形式。
3.2 提供商提供的云计算服务质量
提供商提供的云计算服务质量(QoS Offered by provider,QoSO)是有关提供商计划向客户提供的质量水平的表述,是用于具体云服务有关的衡量参数的目标值或范围表述的、提供商计划实现并向用户提供的QoS水平。
QoSO描述了提供商期望提供给用户的质量水平,其质量水平可以用一些指定的QoS参数值来表示,记录在规定的文档中,如云计算的SLA就是用QoS参数值(可用性)来描述云服务QoSO的基本文档形式。每项服务都有自己的QoS参数集,不同服务的QoS参数集的元素不同,其目标值、范围或水平也有差异。正如前QoSR所述,用户对业务专业的、技术性的术语并不十分了解,如果QoSO一味使用提供商的业务术语来表述,用户就会很难理解和选择。为了使服务双方都能共同理解服务的内容、形式和预期的服务质量等,使服务能更好地开展下去,提供商应为QoS准备至少两种形式的QoSO。一种是给用户使用的QoSO,采用非技术性的、非专业的、能被用户所理解的语言;另一种是供提供商内部使用的QoSO,采用技术性的、专业性的术语,有利于准确地定义各项业务活动,便于服务的提供和实施。
QoSO可以被用在计划文档中,特别是那些衡量/评价系统,也可以用上面提到的SLA的基本形式来表述。如,从用户利益的角度出发,在SLA中描述“每年计划提供的基本云存储服务的可用性高达99.95%,任何情况下,一年内都不出现超过3次的中断服务,总时间不超过15分钟。”
3.3 提供商实现的云计算服务质量
提供商实现的云计算服务质量(QoS Delivered/achieved by provider,QoSD)是有关提供商实际上为客户实现的或提供的QoS水平的表述,是提供商实际交付给用户的服务所达到的质量水平。这里需要注意的是,用户和提供商均能影响所实现的QoS。对提供商来说,可能由于其技术水平或人员水平等因素,影响其所承诺的QoS,使实际交付给用户使用的QoS达不到或超出当初计划的水平。对用户来说,由于实际使用中的复杂因素的影响,使其实际消费的QoS水平低于或超过计划需求的QoS水平。
当然,与QoSO一样,QoSD也可用一些指定的参数及其数值来表示,这些参数就可以作为衡量实际实现的QoS标准。有了参数及其数值这些量化的指标,通过比较QoSO和QoSD,就可以知道所使用服务的实际性能情况,而这些性能情况可以作为某时期总结的基础,这样,不管是提供商还是用户,都可以根据前一时期的服务性能,制定下一阶段的QoS水平。如提供商可能会描述某一季度其“所达到的服务可用性为99.95%,服务中断了5次,其中一次持续了65分钟。”
3.4 用户感知的云计算服务质量
用户感知的云计算服务质量(QoS Experienced/perceived by user/customer,QoSE)是关于用户认为他们所体验到或感受到的质量水平的表述,是用户对服务质量水平的评价,通常用“满意度”这样的非技术性术语来表示。提供商通过QoSE来决定用户对服务质量的满意程度,从而调整自身的QoSO和QoSD。
获取用户的QoSE的方法有很多,如采用用户调查法,或直接从用户对服务的评分意见中获取。实际上,用户的评分意见即反映了用户对服务的评价等级,不同的评分表示了用户所体验或感受到的服务质量的水平。正如“体验”和“感受”这样的词所暗含的意思一样,影响QoSE的因素主要有两个方面。一方面是量的因素,即客观因素,是可量化的因素,是服务性能本身的体现,如服务的可用性、响应时间和可靠性等。另一方面是质的因素,是不可量化的因素,属于用户方面的主观因素,如用户预期、使用环境及条件、用户的心理、应用背景等[5]。因此,QoSE也被看做是受主观的质化因素影响后,用户所接受和理解的提供商QoSD。
3.5 四个视角的关系
云计算服务质量的四个视角是切实有效的服务质量管理的基础,将四个视角整合起来有利于促进云计算服务质量的衡量与评价。其中,用户的QoSR是服务的逻辑起点,在没有受到关注以前,它们是被孤立地对待的。一旦受到关注,它们则成为提供商QoSO的决定性依据。但提供商并不能一一提供用户所需的QoS,毕竟提供服务会受到其质量等级的成本、业务战略、业务基准等因素的影响。此外,用户的需求还决定了在监测系统确定衡量QoSD的参数。在服务交付使用的过程中,需要监测系统来衡量实际使用的服务及其质量水平,从而定期生成质量情况报告,作为衡量和评价QoS的文档依据。
3.6 四个视角的应用
云计算服务质量的四个视角在用户和提供商中作为他们选择/提供、评价/测量QoS的准则(见表1)。
云计算服务质量的四个视角均可以用相应的参数来表示。因此,用户或提供商应结合实际,考虑四个视角的相互关系,有选择地应用这些视角来评价和衡量云计算服务质量的水平。
4 云计算服务质量的保证
云计算服务的目标是满足用户随时可访问资源和服务的需求,按需向用户提供服务。但这并不是一件容易的事情。对提供商来说,云计算服务质量的技术保证问题仍然面临着巨大的挑战,如Amazon的EC2和S3近几年多次遭受服务中断的困扰;Google的App Engine、微软的Azure和Salesforce.com等,都出现过不同程度的故障,从而被迫中断服务。业界已经意识到云计算服务质量这一重要的主题,纷纷开展了研究。2008年10月,互联网数据中心(Internet Data Center,IDC)发布了关于云计算服务所面临的挑战的调查数据[6],Michael Armbrust等指出了云计算服务中存在的10大障碍[7],反映了人们对云计算服务的担忧,如云服务的性能、安全性和可用性等。因此,提供商必须在技术上实现构建强大的云服务平台,建立和管理托管基础设施、研究数据分布计算技术和高效的、可靠的、可扩展并自动支持异地随时按需存取的在线数据访问服务。
对用户来说,必须即时支付费用才能获得使用云计算服务的权利。因此,他们希望自己的付出能获得相应的回报,即获得相应的云计算服务质量的保证。为此,Amazon、Google、Microsoft等除了在技术上保证云计算服务的顺利提供和交付外,还将SLA引入云计算服务中,制定各自的云SLA,在用户使用云计算服务前,明确该服务所能提供的性能水平和质量等级,并控制和保证云计算服务的正常执行,有利于用户形成对服务质量合理的期望,有助于提高用户的满意度和忠诚度。
因此,要保证云计算服务质量,首先就要弄清楚不同实体从不同角度对云计算服务质量的要求,可沿用云服务质量的四个视角来审视服务质量。如在云计算环境中,用户将重要的数据资料存储在云端,对其安全和隐私的要求就高于以往任何一种服务。此外,用户要随时异地访问数据资料,对云服务可用性的要求也特别高,任何一次服务终端,即使是短暂的中断,将造成用户的无法工作,其损失将无可估量。
在了解了不同角度云计算服务质量的要求后,就需要从该角度来定义QoS的衡量依据。Amazon[9]、Google Apps[10]及Microsoft Windows Azure[11]的系列云计算服务,从用户的角度,均在SLA中把云计算服务的可用性作为衡量QoS最重要的依据,它是“服务或组件在一定的时间点或时间段内提供所需功能的能力”[8],被定义为:
Microsoft Windows Azure在此基础上将可用性分为两个等级,“<99.95%”和“<99%”,分别收取不同的服务费用。提供商们还向用户作出承诺,如果可用性未达到SLA中规定的等级,则根据严重性程度,在服务费用中给予用户相应的折扣。Amazon的S3在SLA中承诺“如果达不到99.9%的服务水平,那么Amazon将减免下个月10%的费用。如果可用性下降到99.0%以下,换算后相当于一个月内至少有将近7个小时无法服务,那么Amazon将减免25%的费用。”因此,如果一个用户存放了500G的数据,把500G数据放进S3并且在一个月内全部数据都使用10次的话,总共的费用大约是$1000。如果发生5小时的故障,那么该用户将得到$100的退款。如果故障时间从7个小时到一整个月的话,该用户将得到$250的补偿[12]。
5 结语
除了可用性,衡量云计算服务质量的其他依据还包括安全性、虚拟硬盘的大小、速度、响应时间、延迟、计算频次、CUP性能、灵活性、可扩展性、应用程序的周转时间、负荷能力、准确性及带宽等。但目前云计算服务提供商所提供的SLA中,尚未详细、具体到这些方面。此外,还需要对云计算服务质量进行相应的管理,以保证其适应技术进步和用户需求的变化,如政策管理、资源管理、CRM和SLA管理等,尤其是采用SLA的形式,使用户能消除对遥远“云端”的忧虑,实实在在地感受到客观的云计算服务质量的性能和参数,并获得相应的保证。这无疑能让他们树立起对云服务的兴趣和信心,吸引他们使用相关的云服务。而目前云服务提供商制定的云SLA,与成熟的电信SLA相比,内容显得简单、粗糙,不能反映用户真实的云计算服务质量的需求,且其质量的衡量和监测体系尚未完善,这些都是本文后续研究的重点问题。