具体实施方式
现在将详细地参考按照在本文公开的实施例的示例性实施例,在附图中图示出了其示例。只要可能,将贯穿附图使用相同的附图标记来指代相同的或类似的部分。
网络中的网络拥塞或过载状况往往在时间和空间两者中受到局限,并且在任何给定时间仅仅影响小集合的用户。这可能由通信系统的拓扑所引起。在诸如图1中示出的系统之类的示例性蜂窝式通信系统中,系统能够具有树状拓扑,其中路由器或网关是树的根并且移动通信基站是叶子。在包括全球移动通信系统(GSM)、采用宽带码分多址(W-CDMA)无线电接入技术的通用移动电信系统(UMTS)CDMA2000、全球微波接入互操作性(WiMAX)和长期演进(LTE)的蜂窝技术间,该树状拓扑是类似的。在无线网络的树状结构中,网络过载状况的影响取决于过载状况发生在的网络中的聚合的级别。例如,在基站级别的过载状况仅仅影响连接到该基站的那些用户。因此,在一些实施例中,自适应业务管理识别发生过载状况的聚合级别并且然后在仅仅受载状况影响的那些用户内整体地应用业务管理技术。
作为本申请的主题的自适应业务管理是能够基于监视对用户或订户的体验质量(QoE)有影响的关键指标来有选择地应用诸如web和视频优化之类的业务管理技术的方法。订户能够是预订无线或蜂窝网络服务的移动终端用户。尽管在这里订户指的是移动终端用户,但对订户的将来引用也能够指的是由订户所使用的终端。
图1是示例性网络系统的框图。示例性系统100能够是通过网络传送数据分组的任何类型的系统。例如,示例性系统100能够包括在有线或无线网络上向终端(在图1中未示出的终端)传送数据分组的一个或多个网络。示例性系统100能够具有例如GSM网络、采用宽带码分多址(W-CDMA)无线电接入技术的UMTS网络、CDMA2000网络和WiMax网络的网络体系结构。
示例性系统100尤其能够包括一个或多个网络101、102、103(A-D),一个或多个控制器104(A-D),一个或多个服务节点105(A-B),一个或多个基站106(A-D)-109(A-D),路由器110,网关120和一个或多个自适应业务管理器130(A-C)。在高级别,示例性系统100的网络拓扑能够具有树状拓扑,其中网关120是树的根节点并且基站106-109是叶子。
路由器110是能够在网络之间转发数据分组、创建覆盖互联网络的设备。路由器110能够被连接到来自不同的网络的两个或更多数据线。当数据分组进入所述线路之一上时,路由器110能够确定数据分组的最终目的地并且将分组引导到其行程上的下一网络。换句话说,路由器110能够执行“业务引导”功能。在图1中示出的示例性实施例中,路由器110与网络102和网关120进行通信。路由器110将业务从网络102引导到网关120,并且反之亦然。
网络101能够是无线电网络、广域网(WAN)、局域网(LAN)或适合于诸如因特网通信之类的分组类型通信的无线网络的任何组合。例如,在一个示例性实施例中,网络101能够是通用分组无线电服务(GPRS)核心网络,其在GSM和W-CDMA网络中提供移动性管理、会话管理和网际协议分组服务的传送。示例性网络101尤其能够包括网关120和一个或多个服务节点105(A-B)。
网关120是将在一种类型的网络中提供的格式化数据转换为另一种类型的网络所需要的特定格式的设备。网关120例如可以是服务器、路由器、防火墙服务器、主机,或代理服务器。网关120具有将从路由器110接收到的信号转换为网络101能够理解的信号的能力,并且反之亦然。网关120可以能够仅仅处理网页、图像、音频、视频和T.120传输或者其任何组合,并且能够进行全双工媒体转换。作为示例性实施例,网关120能够是支持GPRS网络和外部分组交换网络(像因特网和X.25网络)之间的交互工作的网关GPRS支持节点(GGSN)。
服务节点105是从网关120向其地理服务区域内的对应的网络103递送数据分组以及反之亦然的设备。服务节点105能够是服务器、路由器、防火墙服务器、主机,或代理服务器。服务节点105也能够具有包括如下的功能:分组路由和传递、移动性管理(附着/分离和位置管理)、逻辑链路管理、网络接入调解和认证,以及收费功能。作为示例性实施例,服务节点105能够是服务GPRS支持节点(SGSN)。SGSN能够具有位置寄存器,其存储向该SGSN登记的所有GPRS用户的位置信息,例如,当前小区、当前访问者位置(VLR)和例如国际移动用户识别(IMSI)的用户简档,以及分组数据网络中所使用的地址。
网络102能够包括适合于分组类型通信的广域网(WAN)、局域网(LAN)或无线网络的任何组合。在一些示例性实施例中,网络102例如能够是因特网和X.25网络。网络102能够在有或者没有路由器110的情况下与网络101传递数据分组。
网络103能够包括GSM或UMTS网络或者适合于分组类型通信的任何其他无线网络内的任何无线电收发信机网络。在一些示例性实施例中,取决于被利用的基础的传送技术,无线电接入网络(RAN)或网络103的回程区域能够具有环拓扑。在一些实施例中,网络103能够是GSM系统中的RAN或者UMTS系统的回程区域。示例性网络103尤其能够包括基站106-109(例如,基本收发信机站(BTS)或节点B)和一个或多个控制器104(A-C)(例如,基站控制器(BSC)或无线电网络控制器(RNC))。移动终端(未示出在图1中)与具有无线电收发信机设备的BTS/节点B 106-109进行通信。BTS/节点B 106-109与BSC/RNC 104(A-C)进行通信,BSC/RNC 104(A-C)负责在用户从一个小区移动到另一个时进行无线电信道的分配和切换。BSC/RNC
104(A-C)进而与服务节点105通信,服务节点105管理用户的移动性以及提供诸如调解对网络的接入和收费之类的其他功能。
如图1中所示,自适应业务管理器130能够被部署在通信系统100内的一个或多个位置,包括网络101和103内的各个位置。在一些实施例中,自适应业务管理器130能够位于网关120、位于控制器104、位于一个或多个基站106-109,或者任何其他适当的位置。自适应业务管理器130能够是独立网络元件或能够被集成到诸如网关120、控制器104和基站106-109之类的现存网络元件中。自适应业务管理器130能够连续地监视通信系统100的若干参数。所述参数能够用于生成业务管理规则。基于所监视的参数来动态地生成并且实时地改变业务管理规则。在实时地生成规则之后,规则被应用于由自适应业务管理器130处理的数据业务。
图2是图示出示例性自适应业务管理器的实施例的框图。自适应业务管理器130尤其能够包括业务管理规则引擎202、QoE预测器204、网络性能监视器206、用户体验监视器208、应用检测器210以及业务处理和策略执行单元220。自适应业务管理器能够具有一个或多个处理器和用于存储程序指令的至少一个存储器。(一个或多个)处理器能够是能够执行特定指令集的单个或多个微处理器、现场可编程门阵列(FPGA)或数字信号处理器(DSP)。计算机可读的指令能够被存储在诸如软磁盘、硬盘、CD-ROM(紧致磁盘只读存储器),和MO(磁光)、DVD-ROM(数字通用磁盘-只读存储器)、DVD RAM(数字通用磁盘-随机存取存储器)或半导体存储器之类的可触知的非暂时型计算机可读介质上。替换地,方法能够被实施在硬件组件或硬件和软件的组合(诸如像ASIC、专用计算机或通用计算机)中。
自适应业务管理器130能够获取用于处理的外部数据201。外部数据201能够包括网络探针、远程认证拨入用户服务(RADIUS)、策略收费和规则功能(PCRF),和订户简档存储库(SPR)。自适应业务管理器130也能够直接地或间接地与一个或多个终端(例如,终端210)和因特网230进行通信。
业务处理和策略执行(TPPE)220是自适应业务管理器130的处理堆栈中的下部堆栈。TPPE 220接收能够包括视频和/或web数据的内容数据,并且向自适应业务管理器130中的其他组件和/或模块提供内容数据。稍后能够用于计算QoE分数的该内容数据能够被存储在在自适应业务管理器130本地或者与之远离的数据库(未示出)中。TPPE 220负责在移动终端210和因特网230之间路由业务。TPPE 220也实施业务管理技术,包括阻挡、速率限制、无损和有损数据压缩,以及其他业务优化技术。TPPE 220能够是软件程序和/或硬件设备。
网络性能监视器206连续地监视由TPPE 220路由的数据业务并且提供实时网络性能测量。网络性能测量尤其包括分组往返时间(RTT)、分组重传速率和带宽。在一些实施例中,连续监视包括周期性地监视数字化的分组类型的数据业务。网络性能监视器206监视由网络性能计数器计数的多个历史时段内的数据业务。在一些实施例中,对于每个订户分别地维持网络性能计数器。在一些实施例中,例如,网络性能监视器206在60秒、120秒、180秒、240秒和300秒监视五个历史时段内的数据业务。在其他的实施例中,也能够使用历史时段的其他选择。网络性能监视器206能够是软件程序和/或硬件设备。
用户体验监视器208计算和存储用户体验度量。在一些实施例中,能够在多个历史时段对于每个订户计算和存储体验度量。该用户体验度量尤其包括视频重放平滑指数、视频客户端网络延迟指数、标准化页面单位时间和任何其他用户体验度量。在一些实施例中,用户体验度量还包括由于自适应比特率管理而使先前传送的视频的比特率被降低的时间量。在U.S.专利号7,987,285和7,991,904中进一步描述了自适应比特率管理的实施例,该专利通过引用被合并于本文。在一些实施例中,例如,用户体验监视器208在60秒、120秒、180秒、240秒和300秒计算和存储五个历史时段内的用户体验度量。在一些其他的实施例中,也能够使用历史时段的其他选择。用户体验监视器208能够是软件程序和/或硬件设备。
应用检测器210检验由TPPE 220在终端210和因特网230之间路由的数据业务,并且识别与每个流相关联的应用或类别。应用检测器210能够识别特定流是否包括诸如图像或文本的网页内容或者流是否包括视频数据。应用检测器210也能够基于BitTorrent或其他类似的文件共享协议来将特定流识别为对等业务。应用检测器210能够是软件程序和/或硬件设备。
QoE预测器204预测预期的QoE分数,诸如预期的视频和web QoE分数。QoE分数能够是数值、等级(例如A、B、C,等等)或指数,等等。基于与视频剪辑的播放相关联的若干参数的历史测量来获取预期的视频QoE分数,如以下进一步解释的。基于与渲染web页面相关联的若干参数的历史测量来获取预期的web
QoE分数,如以下进一步解释的。在一些实施例中,能够在任何给定时间对于每个订户预测QoE分数。QoE预测器204部分地基于从网络性能监视器206和用户体验监视器208接收到的输入来生成QoE分数。QoE预测器204能够从网络性能监视器206获取低级别的网络性能测量。QoE预测器204也能够从用户体验监视器208获取与例如订户过去的视频和web浏览的体验相关联的较高级别的用户体验度量。由QoE预测器204基于实时网络性能测量、用户体验度量和其他性能指标来生成预期的QoE分数。QoE预测器204能够是软件程序和/或硬件设备。
在一些实施例中,QoE预测器204不限于网络性能测量和用户体验度量输入。在一些实施例中,输入数据能够包括可以在自适应业务管理器130本地性获取的一个或多个测量。每个测量数据也能够取决于测量的性质而采取许多不同的值。例如,也能够使用分组往返时间测量来进行QoE预测。分组往返时间能够被映射到诸如0至t1、t1至t2、t2至t3等等的离散范围。随后,能够根据映射方案将分组往返时间量化到不同的值。类似地,其它测量也能够用于QoE预测并且也被映射到它们的对应的离散范围。用于每个测量的离散范围能够基于历史数据,并且能够以任何期望方式被设计。
在用于QoE预测的所有测量被映射并且每个测量被量化之后,能够创建使测量的组合与QoE分数相关的有限尺度的预测查找表。该查找表能够被存储在在自适应业务管理器130本地或远离自适应业务管理器130的数据库(未示出)上。能够通过对流经自适应业务管理器的业务的实时统计分析来预先配置或动态地填充具有测量范围和QoE分数的初始预测查找表。例如,自适应业务管理器130中的预先配置的预测查找表值能够基于对来自通信系统100的业务数据的离线统计分析。替换地,预测查找表能够从预先配置的值开始,并且然后在自适应业务管理器130对实况订户业务进行处理时随时间被动态地更新。
在一些示例性实施例中,QoE预测可以进一步基于业务中的用例(use
case)的类型。用例例如能够包括观看视频剪辑和网址浏览。因此,能够实施针对视频观看和网址浏览的单独的QoE预测。那些本领域技术人员容易地理解,QoE预测也可以基于任何其他用例。
在视频观看用例的一示例中,一个QoE测量包括在视频剪辑的播放期间停顿是否发生。当视频的比特率大于在移动客户端和视频服务器之间可用的带宽时,视频停顿发生。在一些实施例中,能够根据视频停顿来指派视频QoE分数。例如,如果视频停顿发生,则可以对视频QoE分数指派“0”;并且如果没有视频停顿发生,则可以对视频QoE分数指派“1”。也能够以许多其他方式定义视频QoE分数指派。例如,视频QoE分数能够基于停顿时间相对于视频的播放时间的实际量,并且这将导致在“0”和“1”之间的值。除视频停顿之外,视频QoE分数的计算能够基于其它测量类型。例如,也能够使用诸如比特率、帧尺寸和帧速率之类的测量来计算总体视频QoE分数。
在一些实施例中,基于两个参数——即视频重放平滑指数和视频客户端网络延迟指数的历史测量来计算视频QoE分数。视频重放平滑指数是标准化计数器并且测量停顿相对于媒体的播放时间发生的时间量。举例来说,用于视频事务的视频重放平滑指数被定义为媒体时间与媒体时间和停顿时间的和之比,也就是说,视频重放平滑指数=(媒体时间)/((媒体时间+停顿时间))。基于视频处理时间和媒体播放时间的关系来计算停顿时间。视频处理时间是处理视频剪辑所耗费的实际的挂钟时间。举例来说,如果媒体播放时间大于或等于视频处理时间,则停顿时间被指派值“0”。如果媒体播放时间小于视频处理时间,则停顿时间等于处理时间和媒体时间之间的差(也就是说,停顿时间=处理时间-媒体时间)。视频重放平滑指数可以介于0和1之间的范围中;其中较大的值指示较好的体验,并且满分1意指没有视频停顿发生。在一些实施例中,能够在60秒、120秒、180秒、240秒和300秒的五个历史时段的情况下分别地对于每个活动订户跟踪视频重放平滑指数。历史时段指的是从当前时间往回追溯的时间历程的量。例如,在60秒的历史时段的情况下的视频重放平滑指数是使用相对于当前时间在最后的60秒内结束的视频剪辑所计算的指数的平均值。
当向终端210发送视频数据时,在自适应业务管理器130测量视频客户端网络延迟指数。基于客户端延迟时间和媒体播放时间来计算视频客户端网络延迟指数。举例来说,视频客户端网络延迟指数被定义为客户端延迟时间和媒体时间的比,即,视频客户端网络延迟指数=(客户端延迟时间)/(媒体时间)。以上公式中的客户端延迟时间等于由于网络拥塞或任何其他过载状况而阻止自适应业务管理器130向终端发送视频数据的时间量。类似于视频重放平滑指数,能够例如在60秒、120秒、180秒、240秒和300秒的五个历史时段的情况下分别地对于每个订户跟踪视频客户端网络延迟指数。在由订户观看的每个视频剪辑的结尾计算视频客户端网络延迟指数。如果存在多个在给定历史时段期间结束的视频剪辑,那么在所有视频剪辑上的平均可以用作与该历史时段相对应的视频客户端网络延迟指数。
在一些实施例中,在跟踪了与五个历史时间段相对应的五个视频重放平滑指数值和五个视频客户端网络延迟指数值之后,获取了总共十个测量来用于视频QoE预测。在这些实施例中,通过指派两个可能的离散的值之一来进一步量化视频重放平滑指数值和视频客户端网络延迟指数值中的每一个。例如,视频重放平滑指数可以被量化为小于1或等于1;而视频客户端网络延迟指数可以被量化为小于或等于2%或大于2%。然而,那些本领域技术人员容易地理解,可以对所述指数指派任何其他类型的量化。例如,多于两个的离散的值可以用于视频重放平滑指数值和视频客户端网络延迟指数值。取决于量化的类型,视频重放平滑指数能够被指派三个不同的值,诸如“0”、“1/2”,和“1”;并且视频客户端网络延迟指数能够被指派三个不同的值,诸如“0%-2%”、“2%-10%”,和“>10%”。
在能够生成用于五个历史时段的两个离散的值被获取的实施例中,十个测量可用于QoE预测并且每个测量仅能够属于两个可能范围,如上所述。测定值的组合的总数并且因此预测查找表的尺寸被计算为1024(两个指数具有十个测量值,每个给出210=1024)。能够随意地增加或者减小预测查找表的尺寸。例如,能够通过将表条目限制为针对视频重放平滑指数值和视频客户端网络延迟指数值两者从相同的历史时段所测量的指数值来减小预测表的尺寸。结果,例如,具有60秒的历史时段的视频重放平滑指数与具有120秒的历史时段的视频客户端网络延迟指数的组合将不被存储在预测查找表中。或者,也将不对具有120秒的历史时段的视频重放平滑指数与具有180秒的历史时段的视频客户端网络延迟指数的组合进行存储。使用该方法,能够将预测查找表的尺寸减小到20。对于在最近的300秒内没有历史可用于订户的情况,能够将一个附加的条目添加到该表。另一方面,能够例如对测量采取更精确的量化或者采取更多类型的测量来增加表的尺寸。
在以下的表1中示出与以上示例性实施例相对应的示例性视频QoE预测查找表。
表1 示例性视频QoE预测查找表
在表1中示出的示例性视频QoE预测查找表中,前面三列是对于预测查找表的输入测量,并且最后的列是输出的预测的视频QoE分数。表中的第一列对应于对输入变量进行测量的历史时间段。第二和第三列分别地对应于视频重放平滑指数和视频客户端网络延迟指数的测量值的范围。表的最后的列中示出的预测查找表的输出是用于输入测量的每个组合的预期的视频QoE分数。例如,参考表1中的第一行,当在最后60秒中的所测量的视频重放平滑指数小于1时,值VQoE(60,1)是预期的视频QoE分数,并且最后60秒中的所测量的视频客户端网络延迟指数大于2%。
那些本领域技术人员将理解,表1的最后的列中示出的预期的视频QoE分数的实测值将取决于各种因素,诸如通信系统、无线网络的特性,由订户使用的设备的类型,等等。自适应业务管理器130能够具有用于预期的视频QoE分数的预先配置的初始值,并且能够如同其处理实况订户业务那样动态地调整这些值。表1中的最后的行对应于在跨度为例如300秒的最大时间段的最近的时间间隔中没有历史数据可用于订户的情况。当历史数据可用时,视频重放平滑指数指示在订户观看视频剪辑时是否遇到视频停顿,并且视频客户端网络延迟指数指示在向终端发送视频数据时是否在自适应业务管理器130观察到任何客户端延迟。因此,基于视频重放平滑指数和视频客户端网络延迟指数所计算的预期的视频QoE分数能够预测在订户在任何给定时间观看视频剪辑的情况下订户将具有平滑或无停顿重放的可能性或概率。
在网址浏览的用例中,Web QoE分数测量当用户通过互联网浏览web页面时的用户的体验质量。Web QoE的决定因素之一是加载用于浏览的web页面所耗费的时间。但是加载web页面所花费的时间取决于页面的复杂度。web页面由提供用于页面的布局的框架的标记内容以及诸如图像的嵌入对象组成。自适应业务管理器130基于在观察时间间隔上求平均的标准化页面单位时间来计算用于订户的Web QoE分数。标准化页面单位时间与加载具有固定数量的对象的典型的web页面所花费的时间相关。在同时提交的通过引用合并于此的、命名为“Measuring
Web Browsing Quality of Experience in Real-Time at an Intermediate Network Node(在中间网络节点实时地测量web浏览体验质量)”的、U.S.非临时申请No. ___(代理人案卷编号09266.0041 -
00000)中详细描述了用于测量web浏览QoE的示例性方法。
在一些实施例中,如果标准化页面单位时间大于或等于阈值,则将web QoE分数预测为“0”。相比之下,如果标准化页面单位时间小于阈值,则将web
QoE分数预测为“1”。阈值确定web浏览的用户体验是好还是坏,并且能够被配置为将要在自适应业务管理器130中使用的任何期望值。那些本领域技术人员容易地理解,web
QoE分数可以不限于0和1。而是,web QoE分数能够是任何值,并且能够代替使用单个阈值而通过用于标准化页面单位时间的多个范围来定义。类似于视频重放平滑指数和视频客户端网络延迟指数,在一些实施例中,能够在60秒、120秒、180秒、240秒和300秒的五个历史时段的情况下分别地对于每个订户测量标准化页面单位时间。
在一些实施例中,能够将用于每个订户的标准化页面单位时间值量化到六个等级或组中,以便控制预测查找表的尺寸。表2示出用于标准化页面单位时间的示例性六等级量化。然而,那些本领域技术人员容易地理解,量化等级不局限于六个,而是能够是期望的任何数量的等级。
量化等级 |
标准化页面单位时间范围(秒) |
等级1 |
0 ≤ t < 8 |
等级
2 |
8 ≤ t < 10 |
等级
3 |
10 ≤ t < 12 |
等级4 |
12 ≤ t < 15 |
等级5 |
15 ≤ t < 20 |
等级
6 |
t ≥ 20 |
表2用于标准化页面单位时间的示例性量化等级
在标准化页面单位时间被量化并且历史时段被定义之后,能够创建web QoE预测查找表。在表3中示出具有五个历史时间和用于标准化页面单位时间值的六个量化等级的示例性web
QoE预测查找表。类似于在表1中,在该示例性实施例中,在表3中的最后的行表示在最近的300秒中对于订户不存在可用的历史数据的情况。
历史时间(秒) |
标准化页面单位时间 |
预期的web QoE分数 |
60 |
0 ≤ t < 8 |
WQoE(60,1) |
60 |
8 ≤ t < 10 |
WQoE(60,2) |
60 |
10 ≤ t < 12 |
WQoE(60,3) |
60 |
12 ≤ t < 15 |
WQoE(60,4) |
60 |
15 ≤ t < 20 |
WQoE(60,5) |
60 |
t ≥ 20 |
WQoE(60,6) |
120 |
0 ≤ t < 8 |
WQoE(120,1) |
120 |
8 ≤ t < 10 |
WQoE(120,2) |
120 |
10 ≤ t < 12 |
WQoE(120,3) |
120 |
12 ≤ t < 15 |
WQoE(120,4) |
120 |
15 ≤ t < 20 |
WQoE(120,5) |
120 |
t ≥ 20 |
WQoE(120,6) |
180 |
0 ≤ t < 8 |
WQoE(180,1) |
180 |
8 ≤ t < 10 |
WQoE(180,2) |
180 |
10 ≤ t < 12 |
WQoE(180,3) |
180 |
12 ≤ t < 15 |
WQoE(180,4) |
180 |
15 ≤ t < 20 |
WQoE(180,5) |
180 |
t ≥ 20 |
WQoE(180,6) |
240 |
0 ≤ t < 8 |
WQoE(240,1) |
240 |
8 ≤ t < 10 |
WQoE(240,2) |
240 |
10 ≤ t < 12 |
WQoE(240,3) |
240 |
12 ≤ t < 15 |
WQoE(240,4) |
240 |
15 ≤ t < 20 |
WQoE(240,5) |
240 |
t ≥ 20 |
WQoE(240,6) |
300 |
0 ≤ t < 8 |
WQoE(300,1) |
300 |
8 ≤ t < 10 |
WQoE(300,2) |
300 |
10 ≤ t < 12 |
WQoE(300,3) |
300 |
12 ≤ t < 15 |
WQoE(300,4) |
300 |
15 ≤ t < 20 |
WQoE(300,5) |
300 |
t ≥ 20 |
WQoE(300,6) |
300 |
N/A |
WQoE(没有历史 ) |
表3:示例性web
QoE预测查找表
表3的最后的列中的值是用于历史时间和标准化页面单位时间值的每个组合的预期的web
QoE分数。例如,WQoE(60,1)是当在最近的60秒中测量的标准化页面单位时间在0和8秒之间时的预期的QoE分数。用于历史时间和标准化页面单位时间的不同的组合的预期的web
QoE分数的这些实际值能够取决于若干参数,诸如通信系统、无线网络的特性、和由最终用户使用的设备的类型。在一些实施例中,自适应业务管理器130能够为诸如膝上计算机、智能电话、平板机、电子书阅读器、手持设备和其他移动设备的不同的设备类别维持单独的web
QoE预测查找表。
业务管理规则引擎(TMRE)202能够对包括由QoE预测器204提供的QoE分数的来自不相干的源的数据进行处理。TMRE
202能够以整体方式处理外部数据201以及在自适应业务管理器130内部本地生成的数据。TMRE 202能够生成能够使针对所有订户的用户体验最大化并且与由无线运营商设定的策略一致的动态业务管理规则。能够在自适应业务管理器130本地地收集或计算TMRE 202所处理的一些数据。TMRE 202也能够使用从通信系统100中的其他实体所获取的外部数据201。TMRE 202能够处理的一些示例性数据类型尤其包括历史的每个订户的QoE分数、网络性能度量、网络探针、RADIUS、PCRF、SPR和应用检测器结果。
在一些实施例中,在自适应业务管理器130本地地测量网络性能度量。由网络性能监视器206来提供网络性能度量,并且网络性能度量尤其可以包括分组往返时间(RTT)、分组重传速率和带宽。在一些实施例中,为每个订户计算这些网络性能度量。
可以检测应用类型并将其用作对TMRE 202的输入。在一些实施例中,应用检测器210检验来自所有订户的数据分组,并且检测由每个订户使用的特定应用。向TMRE 202传递由每个订户使用的应用的标识,TMRE 202能够生成用于每个订户的应用特定业务管理规则。因此,自适应业务管理器具有管理用于每个订户的业务乃至订户的特定应用的能力。
在一些实施例中,TMRE 202也可以将网络探针作为数据201的一种示例性类型来处理。网络探针是由第三方的出售者开发的并且典型地部署在无线网络的RAN分段中的外部节点。网络探针被动地监视无线网络中的信令和数据业务,并且能够在订户从一个位置移动到另一个时检测订户的位置的改变。网络探针也能够向自适应业务管理器130发送用户位置信息以及网络负载信息两者。
在一些实施例中,TMRE 202也能够将来自远程认证拨入用户服务RADIUS、PCRF和SPR的数据作为数据201的其他示例性类型来处理。自适应业务管理器130能够从无线营运商的网络中的RADIUS、PCRF和SPR访问诸如速率计划的各种订户属性。取决于服务器的类型,能够从服务器向自适应业务管理器130推送外部数据201,或者由自适应业务管理器130从服务器拉取外部数据201。在一些示例性实施例中,例如通过RADIUS馈送,能够提供订户的位置信息。
在一些实施例中,TMRE 202能够对来自如上所述的一个或多个源或任何其他源的数据进行处理。TMRE
202生成将由TPPE 220消费的动态业务管理规则。
在一些实施例中,QoE预测器204能够预测QoE分数,所述QoE分数对于每个活动订户在任何给定时间指示单个订户将具有好的还是坏的体验质量(QoE)。在这些实施例中,自适应业务管理器130中的QoE预测器204计算和存储每个订户的QoE分数。基于所预测的QoE分数,TMRE 202动态地更新业务管理规则,以尝试使针对所有活动订户而言用于每个订户的总体QoE分数最大化。能够基于对由每个用例——例如视频观看或网址浏览所使用的应用的了解来计算QoE分数。能够实时地向TMRE 202传递来自最近的过去的每个订户的QoE分数。
图3是与图2中示出的QoE预测器相对应的示例性小区级别历史测量数据库生成的功能图。小区级别数据库(例如数据库304)能够被维持在基站级别(例如,图1中的基站106-109)或如果基站被扇区化则被维持在每个基站内的扇区级别。扇区化的基站(例如,六扇区基站)能够使每个扇区由用于单独方向的不同天线来服务。在一些示例性实施例中,当经由例如网络探针或RADIUS馈送使订户位置数据301为可用的时,自适应业务管理器130能够维持用于每个小区位置的小区历史测量数据库304。小区历史测量数据库304例如能够位于如图2中所示的QoE预测器204内。数据库304也能够被集成到用户体验监视器208中。
存储在数据库304中的历史测量能够包括与视频剪辑的播放相关联的参数(诸如视频重放平滑指数和视频客户端网络延迟指数)的测量。存储在数据库304中的历史测量也能够包括与web页面的渲染相关联的参数(诸如标准化页面单位时间)的测量。基于由用户体验监视器208提供的用户体验度量的监视和由网络性能监视器206进行的网络性能参数的监视来实时地更新小区历史测量数据库304。
用户体验监视器208计算和存储用户体验度量。该用户体验度量尤其包括视频重放平滑指数、视频客户端网络延迟指数、标准化页面单位时间和任何其他用户体验度量。网络性能监视器206连续地监视由图2中示出的TPPE 220路由的数据业务并且提供实时网络性能测量。网络性能测量尤其包括分组往返时间(RTT)、分组重传速率和带宽。
对于每个订户,历史测量和位置相关器302使位置数据301与将由用户体验监视器208计算的用户体验度量和由网络性能监视器206提供的网络性能参数包括在内的参数的历史测量相关。经相关的历史测量被存储在小区历史测量数据库304中。经相关的历史测量的小区级别聚合能够用于实施高级业务管理技术。
图4是表示自适应业务管理的示例性方法的流程图。参考图4,本领域普通技术人员将容易地理解,能够改变所图示出的过程来删除步骤或另外包括附加的步骤。在初始步骤400之后,自适应业务管理器获取(402)数据来用于处理。数据能够是本地性或外部地获取的包括web浏览业务和视频流送业务的通信系统中的任何分组类型通信。
在获取数据之后,自适应业务管理器(例如,自适应业务管理器130)确定(403)所获取的数据是否包括视频数据。如果自适应业务管理器确定在业务中存在视频数据,则其进一步确定(404)是否需要进行视频优化。在一些实施例中,例如,当预期的视频QoE分数降到低于预先配置的阈值时,则需要进行视频优化。能够设置预先配置的阈值,使得当预期的视频QoE分数降到低于它时,存在用户可能经历视频停顿的概率。如果自适应业务管理器确定不需要进行视频优化——例如,因为预期的视频QoE分数高于或等于所配置的阈值,则其绕过(406)视频优化并且返回到步骤402以获取附加的数据来进行处理。但是如果预期的视频QoE分数降到低于预先配置的阈值,则自适应业务管理器然后对视频数据进行优化(408)。视频优化能够包括在自适应业务管理器中支持的任何技术,诸如降低帧速率、图像质量和帧分辩率。
另一方面,如果自适应业务管理器从所获取的数据确定不存在视频数据,则其进一步确定(410)图像数据是否存在。如果存在例如来自web浏览业务中的图像数据,则自适应业务管理器然后确定(412)是否需要进行诸如图像压缩的图像优化。在一些实施例中,例如,当预期的web QoE分数降到低于所配置的阈值时,则需要进行图像优化。如果自适应业务管理器确定不需要进行图像优化——例如,因为预期的web
QoE分数高于或等于所配置的阈值,则其绕过(414)图像优化并且返回到步骤402以获取附加的数据来进行处理。但是如果预期的web
QoE分数降到低于预先配置的阈值,则自适应业务管理器然后对图像数据进行优化(416)。图像优化技术能够包括在自适应业务管理器中支持的任何技术,诸如与初始时相比以较低的质量水平对图像进行代码转换。
本领域普通技术人员将容易地理解,能够在通信系统内的任何层级实施自适应业务管理的该示例性方法。进一步理解的是,如果在订户级别应用自适应业务管理,则能够分别地对每个订户进行处理,并且一个订户的体验质量对任何其他订户的体验质量没有影响。本领域普通技术人员也将容易地理解,尽管图4中示出的示例性流程图分别地对视频和web浏览(图像)进行处置,但自适应业务管理器能够被配置为共同地考察预期的web和视频QoE分数,并且在预期的QoE分数中的任何一个低于所配置的阈值时激活用于订户的web和视频优化。
图5是表示用于预测所预期的视频QoE分数的示例性方法的流程图。参考图5,本领域普通技术人员将容易地理解,能够改变所图示出的过程来删除步骤或另外包括附加的步骤。在初始步骤500之后,自适应业务管理器(例如,自适应管理器130)设置(502)历史时间等于预先配置的时间段T1(其能够是任何期望的时间段)。例如,该时间段能够用于60秒(类似于表1下的60秒输入)。
自适应业务管理器然后确定(504)在时间段T1内历史数据是否是可用的。如果数据被确定为是可用的,自适应业务管理器通过检索与该历史时间段T1相对应的视频重放平滑指数的历史测量来进一步确定(506)视频重放平滑指数。视频重放平滑指数是标准化计数器并且测量停顿相对于媒体播放时间发生的时间量。接下来,自适应业务管理器通过检索与该历史时间段T1相对应的视频客户端网络延迟的历史测量来确定(508)视频客户端网络延迟指数。视频客户端网络延迟指数测量相对于媒体播放时间的、由于网络拥塞或任何其他过载状况而阻止自适应业务管理器向终端发送视频数据的时间量。在确定两个指数之后,自适应业务管理器通过例如从预测查找表中对其进行检索来获取(510)预期的视频QoE分数。在一些实施例中,也能够使用考虑用户体验度量的算法来计算预期的视频QoE分数。在提供步骤510之后,方法能够继续到结束518。用于预测预期的视频QoE分数的在图5中描述的方法能够是图4中的步骤404的示例性实施例。
另一方面,如果自适应业务管理器确定(504)在时间段T1内不存在可用的历史数据,则其将历史时间增加(512)时间段T2。例如,该时间段能够用于120秒(类似于表1下的120秒输入)。在一些实施例中,时间段T1和时间段T2可能或可能不是相同的。例如,时间段T1能够是60秒,而时间段T2能够用于30秒。
在已经增加历史时间之后,自适应业务管理器确定(514)历史时间是否超过预定义的最大时间段Tmax。如果时间段小于或等于Tmax,自适应业务管理器重复从步骤504起的过程。但是如果时间段大于Tmax,则自适应业务管理器将预期的视频QoE分数设置(516)为“没有历史”,并且能够继续到结束518。当在最大时间段Tmax内没有历史测量是可用的时,预期的视频QoE分数被设置为“没有历史”。在一些实施例中,如果预期的视频QoE分数被设置为“没有历史”,自适应业务管理器(例如,自适应业务管理器130)能够从其他源获取预期的QoE分数,诸如预存的备份QoE分数。本领域普通技术人员将容易地理解,能够在通信系统内的任何层级实施自适应业务管理的该示例性方法。进一步理解的是,如果在订户级别应用自适应业务管理,则能够分别地对每个订户进行处理,并且一个订户的QoE对任何其他订户的QoE没有影响。
图6是表示用于预测所预期的Web QoE分数的示例性方法的流程图。参考图6,本领域普通技术人员将容易地理解,能够改变所图示出的过程来删除步骤或另外包括附加的步骤。在初始步骤600之后,自适应业务管理器(例如,自适应管理器130)设置(602)历史时间等于预先配置的时间段T1(其能够是任何期望的时间段)。例如,该时间段能够用于60秒(类似于表3下的60秒输入)。自适应业务管理器然后确定(604)在时间段T1内历史数据是否是可用的。如果数据被确定为是可用的,自适应业务管理器通过检索与历史时间段T1相对应的标准化页面单位时间的历史测量来确定(606)标准化页面单位时间。标准化页面单位时间是与加载具有固定数量的对象的典型的web页面所花费的时间相关的测量。在确定标准化页面单位时间之后,自适应业务管理器通过例如从预测查找表中对其进行检索来获取(608)预期的web QoE分数。在提供步骤608之后,方法能够继续到结束618。用于预测预期的web QoE分数的在图6中描述的方法能够是图4中的步骤412的示例性实施例。
另一方面,如果自适应业务管理器确定(604)在时间段T1内不存在可用的历史数据,则其将历史时间增加(610)时间段T2。例如,该时间段能够用于120秒(类似于表3下的120秒输入)。在一些实施例中,时间段T1和时间段T2可能或可能不是相同的。例如,时间段T1能够是60秒,而时间段T2能够用于30秒。在已经增加该历史时间之后,自适应业务管理器确定(612)历史时间是否超过预定义的最大时间段Tmax。如果增加的时间段小于或等于Tmax,自适应业务管理器重复从步骤604起的处理。但是如果增加的时间段大于Tmax,则自适应业务管理器将预期的视频QoE分数设置为“没有历史”,并且能够继续到结束618。当在最大时间段Tmax内没有历史测量是可用的时,预期的web
QoE分数被设置为“没有历史”。在一些实施例中,如果预期的视频QoE分数被设置为“没有历史”,则自适应业务管理器(例如,自适应业务管理器130)能够从其他源(诸如从存储备份QoE分数的数据库(例如小区级别数据库304))获取预期的QoE分数。本领域普通技术人员将容易地理解,能够在通信系统内的任何层级实施自适应业务管理的该示例性方法。进一步理解的是,如果在订户级别应用自适应业务管理,则能够分别地对每个订户进行处理,并且一个订户的QoE对任何其他订户的QoE没有影响。
图7是表示小区级别自适应业务管理的示例性方法的流程图。参考图7,本领域普通技术人员将容易地理解,能够改变所图示出的过程来删除步骤或另外包括附加的步骤。在该示例性方法中,当没有历史用户体验数据可用于订户时,或如果预期的订户QoE分数不满足预先配置的阈值条件,小区级别历史数据能够被用作备份,以便触发业务优化。小区级别历史数据能够包括存储在数据库(例如,图3中示出的数据库304)中的小区级别历史测量。存储在数据库304中的历史测量能够包括与视频剪辑的播放相关联的参数(诸如视频重放平滑指数和视频客户端网络延迟指数)的测量。存储在数据库304中的历史测量也能够包括与web页面的渲染相关联的参数(诸如标准化页面单位时间)的测量。
当预期的订户QoE分数不满足预先配置的阈值条件时,自适应业务管理器(例如,自适应业务管理器130)将不触发业务优化。然而,在一些实施例中,当没有满足阈值条件时,可能仍然希望运行优化或可能希望使用从其他源(诸如从作为备份的小区级别历史测量706)计算的预期的QoE分数。
在初始步骤700之后,自适应业务管理器继续到获取(702)订户业务。订户业务能够包括任何类型的订户的数据,包括视频剪辑和web页面。在小区级别,例如,订户业务可能来自移动终端。在其他级别,诸如在网关(例如,网关120)或控制器(例如,控制器104)级别,订户业务可能来自移动终端但是通过通信系统的其他部分(诸如从基站(例如,基站106-109))被路由。
在获取订户业务之后,自适应业务管理器确定(703)在给定时间段内历史数据是否是可用的。历史数据能够包括诸如与视频剪辑的播放相关联的视频重放平滑指数和视频客户端网络延迟指数以及与web页面的渲染相关联的标准化页面单位时间之类的若干参数的历史测量。该历史数据能够对应于在表1和/或3中如上所示的不同的时间段。
如果历史数据被确定为是可用的,则自适应业务管理器获取(704)预期的订户QoE分数。订户QoE分数可以是以下中的任何一项:视频QoE分数、web QoE分数或在订户级别的其他类型的QoE分数。基于诸如视频重放平滑指数和视频客户端网络延迟指数之类的播放视频剪辑的若干参数的历史测量来获取视频QoE分数。基于诸如标准化页面单位时间之类的渲染web页面的若干参数的历史测量来获取web
QoE分数。自适应业务管理器然后确定(705)预期的订户QoE分数是否满足阈值条件。例如,阈值条件能够是被预先配置到任何期望值的阈值,诸如基于历史测量或过去体验的值。也能够动态地配置阈值条件。例如,自适应业务管理器能够检查用于最近的时间段(例如,3小时)的标准化页面单位时间、挑选出最坏的标准化页面单位时间中的预定义的百分比(例如10%)并且相应地配置阈值条件。取决于阈值条件的配置,如果阈值条件被满足,自适应业务管理器然后优化(708)订户业务。例如,如果预期的订户QoE降到低于预先配置的阈值,则自适应业务管理器然后对订户业务进行优化(708)。如果期望,也能够将阈值条件配置为使得当预期的订户QoE大于预先配置的阈值时触发优化。
但是,如果在确定步骤703确定历史数据不是可用的或者如果在步骤705预期的订户QoE分数不满足预先配置的阈值条件,则自适应业务管理器从数据库(例如,图3中示出的数据库304)获得(706)小区级别历史测量并且基于所检索的历史测量来获取(706)预期的小区QoE分数。小区QoE分数是在小区级别(例如,在基站或节点B级别)聚合的订户QoE分数。在一些实施例中,当检索小区历史测量时,能够类似于在步骤510和步骤608中那样来获取预期小区小区QoE分数。例如,能够通过使用预定义的查找表来获取预期的小区QoE分数。当由于诸如不能够获取历史数据之类的理由订户QoE分数是不可用的时,预期的小区QoE分数能够被用作备份。在此情况下,小区QoE分数能够用于提供针对订户QoE分数的近似分数,以用于确定优化的目的。
在一些实施例中,即使预期的订户QoE不满足阈值条件,也可能希望在继续到优化订户业务之前获取预期的小区QoE分数,或者,可能希望不管预期的订户QoE分数和阈值条件之间的关系而继续到优化订户业务。
在获取预期的小区QoE之后,自适应业务管理器然后继续到步骤707来确定预期的小区QoE分数是否满足预先配置的阈值条件并且相应地优化(708)订户业务。类似地,阈值条件能够例如是能够被预先配置到任何期望值的阈值,诸如基于历史测量或过去体验的值。取决于阈值条件的设置,如果阈值条件被满足,自适应业务管理器然后优化(708)订户业务。例如,如果预期的小区QoE降到低于预先配置的阈值,则自适应业务管理器然后对订户业务进行优化(708)。如果期望,也能够将阈值条件设置为使得当预期的小区QoE大于预先设置的阈值时触发优化。
另一方面,如果小区级别分数不满足阈值条件,自适应业务管理器(例如,自适应业务管理器130)能够回到步骤702来获取附加的订户业务。本领域普通技术人员将容易地理解,能够在通信系统内的任何层级实施自适应业务管理的该示例性方法。进一步理解的是,能够分别地对每个订户进行处理并且一个订户的体验质量对任何其他订户的体验质量没有影响。
本领域普通技术人员也将容易地理解,更高级的业务管理规则能够被实施在自适应业务管理器中以考虑订户的简档和由订户使用的应用的标识。例如,能够向订户简档和应用ID的组合指派优先级指数,并且能够首先对最低优先级业务应用业务优化。如果总体订户体验没有改善,则对来自下一优先级等级的业务进行优化,并且能够重复该过程直到总体用户体验分数处于期望限制内。
在本文公开的方法可以被实施为计算机程序产品,即可触知地体现在信息载体中(例如在机器可读存储设备中或在传播的信号中)的计算机程序,用于由例如可编程处理器、一个计算机或多个计算机等的数据处理装置来执行或者用于控制该数据处理装置的操作。能够以包括编译的语言或解释的语言的任何形式的编程语言来编写计算机程序,并且计算机程序能够被部署为任何形式,包括部署为独立程序或部署为模块、组件、子程序或适合于在计算环境中使用的其他单元。计算机程序能够被部署为在一个站点上或者分布在多个站点上的一个计算机上或多个计算机上执行并且通过通信网络来互连。
在先前的说明书中,已经参考特定示例性实施例描述了主题。然而,将明显的是,可以在不背离如在所附权利要求中阐述的本发明的较宽的精神和范围的情况下进行各种修改和改变。因此说明书和附图将被认为是说明性的而不是限制性的。根据对说明书的考虑和对在本文公开的实施例的实践,其他实施例可以对那些本领域技术人员是明显的。