在线计费系统综合性能评估体系研究
2013-09-29张金娟徐歆壹
张金娟,陈 娜,胡 虹,徐歆壹
(中国电信股份有限公司广东研究院 广州 510630)
1 概述
OCS[1](online charging system,在线计费系统)是 3GPP(TS32.296)于2003年制定的。随着移动互联网应用内容的日益丰富,业务种类的进一步完善,用户的需求越来越个性化。传统的计费系统采用后付费或者准实时计费方式。用户在完成使用业务和对计费详单的处理之间存在时间差,存在较大的欠费风险。3GPP在关注后台各类型新业务支撑方案的基础上,提出OCS的参考架构。在线计费系统提供实时计费模式,即业务使用之前,网元进行OCS消息鉴权,通过计费系统对账户、余额以及对应的资费信息进行批价处理。网元获得对应的使用量后,用户可以使用对应的业务。
随着我国电信业重组的完成,电信市场进入一个全新的全业务运营竞争格局,国内OCS也迎来快速发展时期。以中国电信为例,其OCS经过了技术研发阶段、试点阶段、部分商用阶段,2009年开始步入现网部署阶段[2]。然而日益剧增的互联网应用,对计费模式和计费处理过程提出了更加复杂的要求,如实时快速的响应、准确无误的计费、区分不同应用的内容计费、支持灵活多变的资费配置、不间断运营等,这些都对OCS的功能和性能提出了更高的要求。在运营商进行OCS部署之前以及在部署上线后的运行过程中,都需要对OCS的性能进行选型、评估、优化等,因此制定一套全面可行的性能评估方案和完备的性能评估体系,对OCS的综合性能进行全面评价,是OCS实现高效运营的必备前提。
本文通过在实际评估工作中的研究和探索,设计出了一套可供全面检测的OCS性能评估方案,提供了各种主要性能指标参考值的估算方法;同时对不同测试场景的测试目的进行分析,得出每种测试场景所关注的评估因子,并据此提出了不同测试场景下的性能指标评估算法,形成了一套完整的性能指标评估体系。在工程招标中往往要对不同供应商的系统进行选型对比,本文选择中国电信股份有限公司(以下简称中国电信)在某省的OCS选型性能评估工程为例,对提出的综合性能评估体系进行验证。
2 OCS性能评估方案
2.1 性能评估需求
一般而言,用户对IT系统的性能需求主要集中在并发处理能力、资源利用率、运行稳定性等方面[3],性能评估测试首先必须根据用户需求确定评估指标和相应的测试场景。在线计费系统是一个业务复杂、应用场景多的系统,相比其他离线业务处理系统,除常规IT系统具备的性能需求之外,OCS对计费处理的时效性和准确性有着更高的要求。结合运营商对计费类系统的性能需求,对OCS的业务特点进行分析,不难得出,对OCS进行性能评估主要关注表1所列内容。
运营商在制定IT系统技术规范时,会根据实际运营中的业务容量制定对某系统的性能指标要求,在测试执行和结果评估过程中,应实际运营的需求及服务器硬件配置,为上述指标制定参考值,如业界常用的CPU使用率预期值一般要求在系统达到最大处理能力时不得少于80%,否则认为系统设计没有最大程度地利用资源;对于OCS而言,其事务处理错误率要求一般定义为≤0.01‰。
表1 OCS综合性能评估需求
在上述指标中,并发处理能力参考值的制定最复杂,需要结合各种因子进行估算。由于目前各运营商都开展多种融合业务,因此要求OCS处理的话务类型应包含话音类、短信类和数据类业务,也即OCS的业务模型由话音类、短信类和数据类业务组成。设某省OCS承载用户数为M,每秒最大并发处理能力应大于等于3大类业务忙时每秒建立的呼叫次数(CAPS)的总和。CAPS定义为:
式(1)中,忙时呼叫量(BHCA)的国际单位是 Erl(爱尔兰,次/小时),由此可推导出OCS话音业务每秒的呼叫次数为:
话音业务忙时话务平均数可从OCS的日常运营统计数据中提取得出。
同理可推导出OCS点对点短信类业务每秒的呼叫次数为:
数据业务分为事件类数据业务和会话类数据业务,其种类繁多,会话计费的主要业务类型包括:Internet上网业务、WAP业务(pull浏览)、流媒体业务(事件计费)及其他业务;基于事件计费的主要业务类型包括:应用短信、WAP(短信方式 push)、流媒体(事件计费)彩信、彩铃、定位、KJava及其他业务。因此数据类的CAPS指标参考值为各类数据业务的求和:
式(2)~式(4)求和即为OCS最大并发处理总数的预期值:
2.2 业务场景设计
为了获取表1所述的性能表现,充分验证OCS的各方面性能,在性能测试执行过程中,需要设计合理的测试场景,并利用测试工具模拟不同场景下的业务请求,对被测系统施压,运行完毕之后根据一定的评估算法对OCS的整体性能进行分析。根据OCS在实际生产中的需求,可选取以下常见的、有代表性的业务场景作为其性能测试场景。
(1)极限测试
极限测试是在较短时间内,通过虚拟一定数量的用户,向被测系统并行发起各类业务请求,在这一过程中不断增加并发请求数,直至观察到被测系统单位时间内的并发处理数不再增加。在极限测试中可获取OCS的平均事务响应时间、最大事务响应时间、最小事务响应时间、最大并发处理数、服务器主机资源(CPU、内存)利用率、事务处理的成功率等性能指标。
(2)过载测试
在节假日期间,OCS的话务量剧增,OCS将会有短时间内处在超负荷的运行状态,因此过载测试是验证系统顽健性必不可少的一个环节。过载测试是在极限测试的基础上,继续增加并发请求数,直至并发请求数达到极限测试的120%,并保持在该压力下运行一段时间。通过过载测试可获取OCS在高负荷运行下的稳定性和顽健性。
(3)疲劳测试
过载测试的并发请求数以极限测试的80%向被测系统发起请求,并且在一段较长时间内保持该压力持续运行,根据用户需求,施压时间可为8~72 h。通过疲劳测试,可考察系统长时间无故障运行的稳定性,验证系统能否承受长时间运行,保证业务成功率以及执行效率。
(4)水平扩展能力
近年来,由于系统承载用户数剧增,OCS的扩容和性能提升亟待实施,水平扩展能力测试通过增加服务器进行横向扩展,测试OCS在不同数量机器集群情况下并发处理数(TPS)的增长情况,以验证其水平扩展是否呈线性增长。
2.3 性能测试部署框架
确定了测试场景,在测试执行之前,需要部署性能测试架构,按照一定的业务比例,模拟出不同的测试场景,以获取用户所关心的性能指标。通过分析测试执行的各个环节,OCS的性能测试部署需要话务模拟器、外围系统模拟器、监控平台和结果收集平台协作完成,其框架设计如图1所示。
话务模拟器按照一定的比例模拟用户使用不同的业务(包括话音、短信、数据类等),向OCS发起请求,并接收OCS的响应;外围系统模拟器是OCS完成一笔话务处理所关联到的其他业务系统,如余额管理系统、资料管理系统等,外围模拟器根据OCS发起的不同业务请求返回应答;监控平台对测试过程中各系统的状态进行实时监控,测试人员根据监控结果、控制测试的启停和动态调整话务模拟器向OCS发送请求的速率、并发数等,以达到测试场景预期的并发压力;结果收集平台收集用户所关心的各项性能评估指标,并形成相应的分析报表,供后续评估和比对。
图1 OCS综合性能评估测试部署框架
3 性能指标评估体系
为了有效验证不同供应商的OCS性能,需要制定合理的、切实可行的测试评估方法,通过评估结果界定参测OCS是否达标,并对参测系统进行有效排名。常规的性能结果评估方法一般是在获取了最大并发处理数、响应时间和资源利用率等评估因子的结果之后,根据客户对系统的需求值取一个预期结果值,将各指标值与预期结果进行比较,评定某个系统的性能优劣。
然而在实际的选型测试中,通常需要设计多种业务场景来验证系统在不同状态下的性能表现,而根据各种测试场景测试目的的不同,其关注的性能表现因素也不同。单一的评价模式既没有考虑到系统在不同应用场景中对性能评估因子的需求变化,也没有考虑到在同一应用场景中不同性能评估因子对系统性能的影响程度,对于业务复杂、应用场景多、对性能具有高要求的系统(如OCS),单一的评价方法无法体现系统综合性能的优势和瓶颈,因而无法全面有效地验证不同供应商的系统性能。本文对不同业务场景的测试目的进行分析,从而得出每类场景关注的性能评估因子,并根据实际运营需求或经验值为不同评估因子给出评估分数分段建议取值,从而形成一套综合指标评估体系,应用本评估体系可全面地评估OCS的综合性能,有效地对不同供应商的OCS进行横向评比工作。
3.1 极限测试
极限测试需要采用负载测试工具进行,通过虚拟一定数量的用户,向OCS并行发起各类业务请求。根据极限测试的定义[3],可知极限测试的目的是探测系统极限的处理能力以及系统达到极限时的各种性能表现。
其中,对于系统极限的处理能力,可由测试得到的CAPS体现,它反映了OCS在单位时间内的并发处理能力。设为整个场景运行时间(或某段时间内)的平均值(各指标的平均值一般取平稳运行后20 min的区间进行计算,下同)性能评估需求分析中估算所得的对OCS最大并发处理能力的预期值越接近预期值,则越符合用户的需求,设该项评估分值满分为1分(下同),因此该项评估分值
对于达到极限时的各种性能表现,可由以下3个指标来体现。
·事务处理的错误率E:不同的业务系统的容错程度不同,因此对错误率的要求各有不同(中国电信计费类业务系统规定错误率Er低于0.01‰),错误率越小越好,因此该项评估分值
上述4项评估因子全面体现了用户所关心的“系统极限的处理能力”以及“系统达到极限时的各种性能表现”,因此极限测试场景的评估结果应由上述4个指标的得分加权得出。不同用户对于各项指标的关注程度有所不同,可为每项指标设置权重系数 (设k1、k2、k3、k4为权重系数,下同),由此可推导出极限测试场景性能表现评估算法计算式如下:
3.2 过载测试
过载测试是在极限测试的基础上,虚拟一定的用户数,按极限测试并发请求数的120%向OCS发起请求,其目的是考核OCS在短时间超负荷情况下的稳定度和顽健性。因此,过载测试结果评估算法主要关注在达到120%的并发压力之后,稳定运行20 min,这个区间内响应时间的波动情况以及事务处理的错误率。由于只关注此两项评估因子,因此只需将式(6)略做调整,即可推导出过载测试场景的评估算法计算式如下:
3.3 疲劳测试
由疲劳测试的定义可知,该场景的测试目的是有效检验OCS的续航能力。因此,在疲劳测试中,不再关注某一指标的瞬间值,而应关注整个运行过程中各种指标的变化,这些变化包括:并发处理能力的衰减性与波动性、响应时间的波动性、资源使用率的波动性以及长时间运行过程中的处理错误率等关键的考核因素。假设疲劳测试持续t h,下面对这些因子逐一进行分析。
并发处理能力衰减性V1:在t h内,每小时进行数据采样,可获取每小时OCS的并发处理能力CAPSi,如果CAPSi+1≥CAPSi,则说明并发处理能力上升;如果CAPSi+1 并发处理能力峰谷差V2:峰谷差值越小,则说明长时间运行并发处理能力的波动性越小,因此该项的评估分值 上述5项因子,综合体现了长时间运行过程中系统的性能变化,因此,疲劳测试场景的评估结果应由上述5个因子的得分加权得出,由此可推导出疲劳测试场景的评估算法计算式如下: 随着业务发展和承载用户数的增加,OCS亟需进行性能优化,增加集群服务器个数,对服务器进行横向扩展是系统性能提升的必备手段之一。扩展性良好的系统,其并发处理能力应在水平扩展之后具有明显的提升,同时,对于集群中服务器的资源使用,必须做到均衡利用,以避免单点瘫痪造成的系统运行间断。因此,以单机服务器扩展为双机服务器为例,服务器资源扩展测试的评估算法应体现出上述两点原则。 ·扩展后处理能力提升:CAPSe为扩展后测得的最大并发处理数,CAPSs为扩展前的值,则处理能力提升的比例为 ·扩展后资源均衡利用:可由两台服务器的资源使用率差值的绝对值体现,差值越小,说明对扩展后的资源利用越均衡,则越能避免单点瘫痪现象,因此该项得分为1-|R2-R1|。 上述因子能够综合体现被测的OCS是否能对扩展的资源进行充分和合理的利用,因此水平扩展测试的性能指标评估算法应由其加权得出,具体如下: 为获取不同场景评估算法中各项评估因子的统计结果,可设计相应的测试程序或使用通用的性能测试软件和监控工具(如 LoadRunner、TeamQuest等)进行自动统计,在测试结束后将统计结果代入式(6)~式(10)中进行计算,得出不同参测系统在各个测试场景下的评估分数,根据各项评估因子的得分和总分,即可对不同供应商参测系统的性能表现进行横行的综合对比。 中国电信OCS通过实时计费协议与SCP、CCG与ISMP等网络设备相连,通过在线计费协议对基本话音业务、基本数据承载业务、增值业务等进行在线计费控制。在线计费系统中统一实现了各种业务的交叉捆绑计费与优惠,从而实现了多业务多网络融合的在线计费。下面以中国电信某省OCS选型测试工程为例,验证本文提出的综合性能评估体系。 某省电信公司拟对供应商A和B的OCS进行选型比对,该省承载的移动用户数为100万,根据OCS所承载的计费业务类型,OCS性能评估的业务模型应包含话音、点对点短信、会话类分组数据业务及事件类分组数据业务。由现网运营的统计数据可获取4类业务的忙时平均话务数统计值,根据式(2)~式(5)进行计算,可得出对该省不同业务的话务数需求的总数,见表2。 表2 OCS综合性能评估业务模型及话务量需求 OCS的选型评估注重不同承建厂商系统之间的横向比对,为了获取各厂商OCS的综合性能,共设计极限运行、过载运行、8 h疲劳运行、应用服务器双机水平扩展4个测试场景进行测试。根据表2的计算结果及2.1节的分析结果可知,对OCS的最大处理能力要求应不小于1 071。同时根据该省实际运营的需求,对资源使用率和错误率的预期值进行定义,见表3。 表3 某省OCS性能指标预期值 按表2所列的4类业务组合设计本次测试的业务模型,利用测试软件LoadRunner模拟极限运行、过载运行、8 h疲劳运行、应用服务器双机水平扩展4个测试场景,使用监控工具TeamQuest监控系统的资源使用率,对式(6)~式(10)中涉及的各项评估因子的统计值进行自动记录。 测试结束后,从测试软件和监控工具中提取出各项评估因子的统计值,结合表5定义的预期值进行计算(动态系数k取均值,即假设该省对每种场景各项评估因子的关注度均等),可得出本次选型测试的评估分数,见表4~表7。 由上述4种场景的综合性能评估结果,可对供应商A和B的OCS的性能优劣得出表8所列的评估结论。 在极限及过载运行状态下稳定性较差,响应时间波动较大,同时个别业务的错误率较高,在节假日的繁忙时期可能出现系统响应超时从而影响业务运营。 表4 极限运行测试结果及评估得分 表5 过载运行测试结果及评估得分 表6 疲劳运行测试结果及评估得分 表7 水平资源扩展测试结果及评估得分 表8 供应商A和B综合性能优劣对比 由表8可见,依据本文提出的综合性能评估方法,A供应商和B供应商的系统各有优劣,而传统的评估模式仅关注并发处理能力、响应时间或者资源利用率等单项指标的离散结果,容易得出A优于B的片面定论,失去了性能评估的全面性和客观性。通过本文提出的综合性能评估方法,能够发现系统的优缺点,同时,运营单位可以根据自身需求调整不同评估因子的权重,进行供应商选型,选择符合本省实际业务需求的OCS。结合本方法中不同场景的具体结果,还可以定位到系统的瓶颈,为选型确定之后的调优上线等工作提供指导。 本文通过对OCS的性能评估需求分析,设计了一套可供全面检测的性能评估方案,提供了各种主要性能指标参考值的估算方法;同时针对不同的测试场景,提出了不同的性能指标评估算法,形成了一套完整的性能指标评估体系。本方法已成功应用于中国电信OCS选型测试中,经过实际的工程验证,本文所提出的评估方案和指标评估体系,能够全面地评估OCS的综合性能,有效地指导OCS的性能评估和选型对比。本文提出的评估算法也具备一定的通用性,根据不同系统对各项指标的需求对评估算法进行适当调整,可应用于其他IT系统性能评估,在实际生产中,本方法已多次应用于中国电信计费业务网关系统、中国电信合作伙伴结算系统等多个系统的选型测试。同时,利用本评估方法能够初步定位OCS的性能瓶颈,为性能调优提供一定的参考价值。 1 3GPP TS 32.296-2009.The 3rd Generation Partnership Project,Online Charging System (OCS):Application and Interfaces,2009 2 王超.从OCS的发展探讨下一代计费系统的特点.电信科学,2011(10A) 3 于涌.软件性能测试与Loadrunner实战.北京:人民邮电出版社,2008 4 浅谈中国电信OCS的引入.资源决策网,2007 5 陈能技,郭柏雅.性能测试诊断分析与优化.北京:电子工业出版社,20123.4 服务器资源扩展测试
4 OCS综合性能评估实例
4.1 性能评估方案设计
4.2 综合性能评估结果
5 结束语