针对通信会话的服务策略的系统和方法与流程

文档序号:18738233发布日期:2019-09-21 01:27阅读:184来源:国知局
针对通信会话的服务策略的系统和方法与流程



背景技术:

现代通信系统具有包括各种通信模态(modality)与不同的服务的集成的一批能力。例如,即时消息传送、语音/视频通信、数据/应用共享、白板、以及可以与订阅者的存在和可用性信息相结合的其它形式的通信。这样的系统可以给订阅者提供经增强的能力,例如,针对各种状态分类、备用联系人、日历信息、以及可比较特征而向呼叫者提供指令。此外,使用户能够在创建和修改各种类型的文档和内容时进行分享和协作的协作系统可以与提供不同种类的通信和协作能力的多模态通信系统集成。这样的经集成的系统有时是指统一通信和协作(UC&C)系统。

尽管UC&C系统在通信中提供了增加的灵活性,但是其同样呈现了多个实现挑战。例如,UC&C系统通常支持经由单个连接的多个通信模态,例如,聚合在单个接口上的语音、视频、和数据。因此,在实现针对不同的模态的服务质量策略时出现了挑战。此外,UC&C通常经由可以装载在移动设备(例如,平板计算机、智能电话、膝上型计算机等)上的软件来实现。因此,用于管理UC&C通信业务的技术通常必须是流动的和动态的以适应变化的连接场景。



技术实现要素:

提供了该发明内容以用简化的形式介绍了进一步在下文的具体实施方式中所描述的概念的选择。该发明内容不旨在标识所要求保护的主题的关键特征或本质特征,也不旨在用于帮助确定所要求保护的主题的范围。

描述了用于针对通信会话的服务策略的技术。根据各种实施例,服务策略规定了用于处理(handling)通信会话的各种规则和/或过程。例如,服务策略可以基于通信会话的各种属性来规定待应用至通信会话的服务优先级指定。服务策略还可以针对不同的通信会话而规定带宽分配,例如基于通信会话的服务优先级、被包括在通信会话中的媒体的类型等。在本文中所讨论的技术提供了多种通信场景中的对服务策略的自动化和动态的管理,例如,经由服务策略的每会话定制。在至少一些实施例中,可以采用技术以补救可能在通信会话期间发生的问题,例如,经由带宽重新分配、路由路径的动态重新映射等。

附图说明

参考附图描述了具体实施方式。在图中,附图标记的最左边的数字标识了该附图标记第一次出现所在的图。在描述和图中的不同的实例中使用的相同的附图标记可以指代相似或相同的项。

图1是可操作以采用在本文中所讨论的技术的示例实现中的环境的示图。

图2示出了根据一个或多个实施例的示例实现场景。

图3示出了根据一个或多个实施例的示例实现场景。

图4示出了根据一个或多个实施例的示例实现场景。

图5示出了根据一个或多个实施例的示例实现场景。

图6是描述了根据一个或多个实施例的方法中的步骤的流程图。

图7是描述了根据一个或多个实施例的方法中的步骤的流程图。

图8是描述了根据一个或多个实施例的方法中的步骤的流程图。

图9是描述了根据一个或多个实施例的方法中的步骤的流程图。

图10示出了如参考图1所描述的示例系统和计算设备,其被配置以实现在本文中所描述的技术的实施例。

具体实施方式

概述

描述了用于针对通信会话的服务策略的技术。在至少一些实施例中,通信会话是指网络中的不同节点之间的通信数据的交换。通信会话的示例包括互联网协议语音电话(VoIP)呼叫、视频呼叫、文本消息传送、文件传输、和/或其组合。在至少一些实施例中,通信会话表示统一通信和协作(UC&C)会话。

根据各种实施例,服务策略规定了用于处理通信会话的各种规则和/或过程。例如,服务策略可以基于通信会话的各种属性来规定待应用至通信会话的服务优先级指定。通常而言,服务优先级指定是指可以被分配至不同类型的数据的不同的优先级。服务优先级指定的示例包括服务等级(CoS)指定、服务质量(QoS)指定等。例如,被标记有高服务优先级的通信数据可以被给予比被标记有低服务优先级的通信数据在网络资源的访问(例如,带宽)方面的更高优先级的待遇。

服务策略还可以规定针对不同的通信会话的带宽分配,例如,基于通信会话的服务优先级、被包括在通信会话中的媒体的类型等。因此,可以采用服务策略以管理通信会话中的数据流的多种不同的方面。

在本文中所讨论的技术提供了在多种通信场景中对服务策略的自动化的和动态的管理。例如,考虑在通信网络中发起VoIP呼叫的示例实现场景。通信网络的各种组件(例如,路由器、交换机等)可以被预先配置有应用于由组件处理的通信数据的一组初始化服务策略。初始化策略可以例如规定通信数据将被初始地标记有特定的服务优先级,而不管被包括在通信数据中的媒体的类型或者预先存在的针对通信数据的服务优先级指定。从而,VoIP呼叫的媒体数据初始地被标记有特定的服务优先级,并且因此基于该特定的服务优先级而被处理。

继续示例场景,VoIP呼叫被确定为将被赋予较高的服务优先级。质量管理功能可以例如确定在VoIP呼叫中的一个或多个参与设备被认证以接收较高的服务优先级,并且/或者确定被包括在VoIP呼叫数据中的数据类型被赋予了较高的服务优先级。从而,针对VoIP呼叫来生成经更新的服务策略,其规定该VoIP呼叫的数据将被标记有较高的服务优先级。将经更新的服务策略传播至要在处理VoIP呼叫数据时使用的通信网络的各种组件。在至少一些实施例中,将经更新的服务策略与VoIP呼叫数据中分离地(例如,带外地)发送。经更新的服务策略例如覆盖关于处理特定的VoIP呼叫的初始化服务策略中的一些或全部。

如在下文中所更加详细地描述的,经更新的服务策略可以例如经由在呼叫会话中所涉及的客户端设备的标识符而被捆绑于特定的VoIP呼叫。因此,经更新的服务策略可以被应用至该VoIP呼叫的数据,但不被应用至不同的通信会话的数据。因此,在本文中所讨论的技术提供了服务策略的每会话定制。这防止未经授权的(例如,未经认证的)数据流被标记有其没有被赋予的服务优先级。

在至少一些实施例中,可以采用在本文中所讨论的技术来补救可能在通信会话期间发生的问题。这样的问题的示例包括分组丢失、抖动、分组延迟等。例如,技术可以使能够为通信会话分配额外的带宽。另外地或者可替代地,技术可以重新映射通信会话的路由路径以避开(例如,绕过)导致问题的特定的网络组件。

在以下的讨论中,首先描述了可操作以采用在本文中所描述的技术的示例环境。接着,名为“示例实现场景”的部分描述了根据一个或多个实施例的一些示例实现场景。在此之后,名为“示例过程”的部分描述了根据一个或多个实施例的示例过程。最后,名为“示例系统和设备”的部分描述了根据一个或多个实施例的可操作以采用在本文中所讨论的技术的示例系统和设备。

在已经呈现了根据一个或多个实施例的示例实现的概述之后,现在考虑在其中可以采用示例实现的示例环境。

示例环境

图1是示例实现中的环境100的示图,该示例实现可操作以采用针对在本文中所描述的用于针对通信会话的服务策略的技术。环境100包括通信网络102,该通信网络102代表对数据进行交换、处理、和/或路由以支持不同形式的通信的不同的经连接的组件。例如,网络102支持语音数据、视频数据、内容数据等的发送和接收。在至少一些实施例中,网络102表示支持统一通信和协作(UC&C)的网络。

连接至网络102的是客户终端104,其代表经由网络102进行通信的末端用户设备。客户终端104可以用多种方式被配置,例如,传统计算机(例如,台式个人计算机、膝上型计算机等)、移动站、娱乐家电、智能电话、上网本、游戏控制器、手持式设备(例如,平板计算机)等。

客户终端104包括通信应用106,其代表用于支持经由客户终端104的不同形式的通信的功能。通信应用106的示例包括语音通信应用(例如,VoIP客户端)、视频通信应用、消息传送应用、内容分享应用、及其组合。通信应用106例如使得不同的通信模态能够被组合以提供多种通信场景。在至少一个些实施例中,通信应用106表示被安装在客户终端104上的应用。另外地或可替代地,通信应用106可以被实现为例如经由网络浏览器、网络应用等被访问的远程应用。

环境100还包括通信服务108,其代表用于执行对客户终端104和/或连接至网络102的其它实体之间的通信的管理的各种任务的服务。通信服务108可以例如管理客户终端104之间的通信会话的发起、调节、和终止。通信服务108的示例包括VoIP服务、在线会议服务、UC&C服务等。通信服务108可以被实现为或者被连接至与公共交换电话网络(“PSTN”)进行通信的专用分组交换机(PBX),以支持客户终端104之间的语音通信。在至少一些实施例中,客户终端104被配置以经由通信应用106与通信服务108接合,从而支持不同的客户终端104之间的通信。在下文中讨论了通信服务108的进一步的功能和实现。

进一步示出的是代表用于执行针对网络102的不同的与通信相关的任务的功能的通信组件110。通信组件110的示例包括服务器、路由器、网络交换机、网元(NE)等。通信组件110可以例如从客户终端104中接收通信、处理通信、并且将通信路由至合适的位置。因此,通信组件110表示用于将通信路由至网络102的不同的节点的硬件和逻辑基础设施。

环境100还包括质量管理器112,其代表用于控制针对网络102中的通信的各种与质量相关的服务策略的功能。质量管理器112可以例如将服务策略配置并且传播至不同的通信组件110和/或网络102的其它实体。质量管理器112还被配置以动态地更新服务策略,并且将经更新的服务策略传播至通信组件110。质量管理器112还可以支持网络102和/或其它网络内的通信路径的动态的配置和重新配置,例如,以适应在网络连接方面的改变。

根据一个或多个实施例,质量管理器112包括连通性和对网络102的路由信息进行访问的逻辑。例如,质量管理器112可以访问网络102的内部网关协议(IGP)和/或生成树交换拓扑。这使得质量管理器112能够标识网络102内的不同的数据路由路径,例如,在客户终端104和通信组件110之间的数据路由路径。质量管理器112还可以对网络102的各种组件之间的通信路径进行映射和重新映射,例如,以优化和/或修复网络102中的通信会话。

与通信组件110和网络102的其它节点接合的能力使得质量管理器112能够对网络102和/或其它经连接的网络内的通信的服务策略进行配置和重新配置。通常而言,服务策略使得属性能够针对网络102内的通信而被规定,例如,经由业务整形、分组优先级化、应用分级等。在下文中概括地描述了关于质量管理器112和服务策略的进一步的细节。

在已经描述了在其中可以操作在本文中所描述的技术的示例环境之后,现在考虑根据一个或多个实施例的通信会话的服务策略的一些示例实现场景。

示例实现场景

以下的部分描述了根据一个或多个实施例的针对通信会话的服务策略的示例实现场景。

图2示出了用于将服务策略传播至不同的网络实体(通常在200处)的示例实现场景。场景200包括上文中所介绍的质量管理器112。

进一步关于场景200,质量管理器112生成服务策略202,并且将服务策略传播至通信组件110。服务策略202可以例如被推送(push)至通信组件110或者由通信组件110来拉(pull)。在至少一些实施例中,服务策略202表示当发起通信会话时被应用至通信会话的数据的初始化服务策略。

根据各种实施例,服务策略202规定不同类型的通信数据将如何由通信组件110来处理。服务策略202例如规定待应用至不同类型的数据的不同等级的服务、针对不同类型和等级的数据的不同的带宽分配等。在至少一些实施例中,服务策略202规定了当穿过网络102中的跳(例如,通信组件110中的每一个个体)时要针对数据分组而应用的策略和优先级。仅仅出于示例的目的呈现了被列出为服务策略202的一部分的策略,并且可以根据所公开的实施例来规定没有被明确地列出的多种其它策略。

可以由服务策略202和/或其它服务策略应用至通信数据的服务优先级的示例包括:

(1)等级选择器3(CS3)。在至少一些实施例中,这指的是最高服务优先级。

(2)加速转发(EF)。该等级通常专用于低损耗、低延迟的业务,例如,语音数据、视频数据等。在至少一些实施例中,EF是高服务优先级。

(3)确保转发(AF)。该等级通常提供分组传递的保证,只要分组业务不超过具体的速率。在至少一些实施例中,AF不提供针对EF分组而规定的延迟属性,并且/或者低于EF和CS3的服务优先级。

(4)最大努力(BE)。该等级通常不保证数据传递或者不提供例如关于分组丢失、分组延迟等的具体服务优先级。BE分组的QoS通常取决于网络的特定的部分中的分组业务负载,并且通常被优先级化在CS3、EF、和AF分组之后。

仅仅出于示例的目的呈现了这些服务优先级,并且实施例可以采用其它等级指定符和服务的等级,而不脱离所公开的实施例的精神和范围。

在该特定的实现中,服务策略202规定通信初始化信号要被标记为高服务优先级,例如,CS3。通常而言,通信初始化信号是指作为对在两个或多个客户端设备(例如,上文中所介绍的客户终端104中的两个或更多个)之间发起通信的请求的一部分而被包括的数据。

服务策略202还规定媒体数据要被标记为较低服务优先级,例如,BE服务优先级。通常而言,媒体数据是指作为通信的一部分所包括的内容,例如,语音数据、内容数据等。例如,通信发起信号可以用于在设备之间发起通信会话。在建立通信会话之后,媒体数据可以作为通信会话的一部分而被交换。

带宽分配(BW)也由服务策略202规定。在该示例中,服务策略202根据特定的服务优先级来规定待分配以用于对数据进行路由的离散的带宽百分比。带宽值例如规定待由输出链路调度器使用以用于对来自通信组件110的数据进行路由的带宽的特定百分比。仅仅出于示例的目的提供了这些带宽分配,并且可以采用多种其它分配量、单位等。

因此,通信组件110被配置具有服务策略202,并且可以使用服务策略202来处理各种类型的通信数据。在至少一些实施例中,场景200表示由质量管理器112进行的通信组件110的初始设置。

图3示出了用于发起通信会话(总体上在300处)的示例实现场景。场景300包括经由网络关联的客户终端302和客户终端304。客户终端302、304代表例如在上文中所介绍的客户终端104的实现。场景300还包括表示在上文中所介绍的通信组件110的实现的通信组件306和通信组件308。通信组件306、308被配置有例如上文参考图2所讨论的服务策略310。服务策略310例如表示在通信会话的发起时被应用的初始化服务策略。

进一步关于场景300,客户终端302生成了表示对发起与客户终端304的通信会话的请求的通信发起信号312。例如,客户终端302的通信应用(例如,通信应用106的实例)可以发起请求。信号312包括关于所请求的通信会话的信息,例如客户终端302的地址(例如,IP地址)、客户终端304的地址、所请求的通信会话的类型(例如,所涉及的媒体的类型和/或媒体的多个类型)等。

信号312由通信组件306接收,并且通信组件306将服务策略310中的一个或多个应用至信号312。例如,通信组件306用高服务优先级(例如,在上文中所引用的CS3)来标记信号312以生成经标记的信号314。将经标记的信号314中的分组报头用高服务优先级的服务优先级指定符进行标记。

继续场景300,将经标记的信号314从通信组件306路由至通信服务316,通信服务316表示在上文中所介绍的通信服务108的实现。通信服务316在经标记的信号314中标识客户终端304,并且经由通信组件308将经标记的信号路由至客户终端304。通信组件308确保经标记的信号被标记有高服务优先级,并且因此根据较高服务优先级而将经标记的信号314路由至客户终端304。例如,通信组件308基于服务策略310将带宽分配至经标记的信号314,其中服务策略310规定了针对高服务优先级的带宽分配。

基于经标记的信号314,经由通信媒体流318的交换而在客户终端302和客户终端304之间发起通信会话。媒体流318代表包括一个或多个类型的媒体数据(例如,音频(例如,语音数据)、视频、和/或其它类型的内容)的数据分组的序列。

基于服务策略310,将媒体流318标记为BE服务优先级。在至少一些实施例中,如果媒体流318未被标记或者已经被标记(例如,由客户终端302)具有不同于BE的特定的服务优先级,则由通信组件306和/或通信组件308将媒体流标记或重新标记为BE。因此,当在客户终端302和客户终端304之间对媒体流318进行路由时,将与BE服务优先级有关的服务策略310的带宽分配和/或其它数据路由策略应用至媒体流318。

在至少一些实施例中,通信组件306和/或通信组件308将媒体流318标记为BE而不检查媒体流318的内容。因此,媒体流318可以由通信组件标记有特定的服务优先级,而通信组件不知道媒体流318中的媒体内容的类型和/或性质。例如,媒体流318的数据分组的报头可以简单地将媒体流标识为包括内容,例如区别于信号数据。媒体流318可以例如被加密。因此,通信组件可以将媒体流318标记有特定的服务优先级而不解密和/或破译其内容。

进一步关于场景300,通信服务316向质量管理器322提供通知320,通知320指示已经在客户终端302、304之间发起通信会话。在至少一些实施例中,通知320与经标记的信号314和媒体流318分离(例如,在带外)。

通知320包括通信会话的属性,例如,通信会话的日期/时间戳、通信会话的标识符、媒体流318的媒体类型或多个媒体类型等。在至少一些实施例中,通信会话的标识符包括描述通信会话的属性的5-元组信息。5-元组信息包括例如客户终端302的地址(例如,源地址)、客户终端304的地址(例如,目标地址)、在客户终端302上用于进行通信会话所使用的端口(例如,源端口)、在客户终端304上用于进行通信会话所使用的端口(例如,目标端口)、以及用于进行通信会话所使用的传输协议,例如,传输控制协议(TCP)。

通知320还可以包括客户终端302和/或客户终端304被认证的指示,例如,客户终端(例如,与特定的客户终端相关联的用户)被认证以经由通信服务316发起和/或参与通信会话。

基于通知320,质量管理器322生成针对在客户终端302和客户终端304之间的通信(例如,针对媒体流318)的经更新的服务策略324。经更新的服务策略324包括通信会话的标识符326(例如,上文中所提及的5-元组)和媒体流318的新的服务优先级指定符328。经更新的服务策略324可以包括其它经更新的策略,例如,针对不同的服务优先级的经更新的带宽分配、针对媒体流318的经更新的路由信息(例如,经更新的路由路径)等。

在至少一些实施例中,基于媒体流318的媒体类型来确定服务优先级指定符328。例如,语音数据(例如,作为VoIP呼叫的一部分)和直播视频数据可以被指定有高服务优先级,例如,EF。其它类型的数据(例如,内容数据、文件等)可以被标记有较低的(例如,中级)服务优先级,例如,AF。因此,不同类型和/或模态的媒体可以被指定有不同的服务优先级。

根据一个或多个实施例,在本文中所讨论的服务策略可以基于各种考虑来规定不同的服务优先级(例如,用户优先级、模态优先级、设备优先级等)。例如,涉及高优先级用户的通信会话可以被指定有比较低优先级用户的通信会话更高的服务优先级。因此,可以基于多种不同的考虑来规定通信会话数据的服务优先级。

图4示出了用于对服务策略进行重新映射(总体上在400处)的示例实现场景。在至少一些实施例中,场景400代表在上文中所讨论的场景300的继续。

在场景400中,质量管理器322对当在客户终端302、304之间传输媒体流318时所涉及的各种通信组件(例如,通信组件306、308)进行标识。如在上文中所讨论的,质量管理器322能够访问在通信会话中所涉及的特定的网络的拓扑结构,并且因此能够对在网络内的各种事务中所涉及的组件进行标识。

质量管理器322将经更新的服务策略324推送至通信组件306、308,并推送至在处理媒体流318时所涉及的其它组件。例如,质量管理器322将经更新的服务策略324推送至在媒体流318的路由中所涉及的输入交换机。可替代地或另外地,经更新的服务策略可以由一个或多个组件从质量管理器322来拉。根据一个或多个实施例,将经更新的服务策略324被推送至与媒体流318和/或客户终端302、304之间的其它通信分离的(例如,带外的)各种组件。

因此,通信组件306、308被配置有经更新的服务策略324。例如,用经更新的服务策略324来替换和/或重新配置服务策略310。

基于经更新的服务策略324,通信组件306和/或通信组件308基于标识符326(例如,5-元组)来对媒体流318进行标识,并且用服务优先级指定符328来重新标记媒体流318以生成经标记的媒体流402。将媒体流318例如从BE重新标记成更高的服务优先级(例如,AF、EF等)以生成经标记的媒体流402。经标记的媒体流402是由通信组件306、308基于服务优先级指定符328来路由和/或处理的。例如,基于服务优先级指定符328将带宽分配至经标记的媒体流402。

如在上文中所提及的,经更新的服务策略324可以包括针对不同的服务优先级的经更新的带宽分配。因此,通信组件306、308可以将经更新的带宽分配应用至经标记的媒体流402和通过通信组件的其它媒体流。

在至少一些实施例中,当客户终端302、304之间的通信会话完成时,将经更新的服务策略324从通信组件306、308中移除。例如,可以将结束对话事件发送至通信组件306、308,这指示通信会话和因此经标记的媒体流402终止。作为响应,通信组件306、308可以删除经更新的服务策略324。另外地或可替代地,也可以实现老化功能以使得如果在过了具体的时间段之后没有检测到客户终端302、304之间的通信业务,则删除经更新的服务策略324。因此,如果结束对话事件丢失,则对老化功能进行调用可以仍然使得经更新的服务策略324能够被删除。

从而,场景400示出了服务策略可以动态地更新并传播至各种网络实体,并且媒体流可以被标记或者重新标记(例如,动态地并且实时地)有不同的服务优先级指定。

在至少一些实施例中,可以采用在本文中所讨论的技术以处理可能在通信会话期间发生的问题。例如,考虑以下内容。

图5示出了用于处理(通常在500处)可能在通信会话期间发生的问题的示例实现场景。在至少一些实施例中,场景500表示在上文中所讨论的场景400的继续。

在场景500中,通信服务316接收关于经标记的媒体流402中的问题的通知502。通知502例如指示关于经标记的媒体流402的一个或多个问题,例如,丢分组、过度抖动(excess litter)和/或分组延迟等。可以由任何合适的实体(例如,通信组件306、308,客户终端302、304中的一个,和/或在通信会话中所涉及的其它实体)将通知502发送至通信服务316。

响应于接收到通知502,通信服务316经由通知504将问题通知给质量管理器322。例如,通知504可以包括对问题(例如,丢分组、过度抖动和/或分组延迟等)进行标识的坏会话(Bad Session)通知。响应于接收到通知504,质量管理器322确定问题发生和/或发起的位置或多个位置。如在上文中所讨论的,质量管理器322知道经标记的媒体流402的路由路径,并且因此可以确保在路由路径中所涉及的不同的组件的设置和性能属性(例如,分组输入和输出率)。

进一步关于场景500,质量管理器322确定问题在通信组件308处发生。质量管理器322例如确定由通信组件308丢掉分组、过度分组抖动和/或分组延迟在通信组件308处发生、和/或其它与媒体流相关的问题。

在该特定的示例场景中,质量管理器322确定针对经标记的媒体流402所分配的带宽的量是不足的。因此,质量管理器322确定处理问题的一种和多种方式。例如,质量管理器322向通信组件308发出通知506,通知506指导通信组件308增加其针对经标记的媒体流402的带宽分配。通知506例如指导通信组件308增加其对针对经标记的媒体流402指定的服务优先级的带宽分配。增加带宽分配增加了通信组件308的分组吞吐量,并且因此可以减少或消除关于经标记的媒体流402的问题。

在至少一些实施例中,通知506可以包括针对通信组件308的服务策略的更新或替换。通知506可以例如包括对针对经标记的媒体流402指定的服务优先级而分配额外的带宽的带宽重新分配。

作为对通信组件308的通知506的替代或者增加,质量管理器322可以重新配置经标记的媒体流402的路由路径。例如,质量管理器322可以对可用于对客户终端302、304之间的经标记的媒体流402进行路由的一个或多个其它通信组件进行标识。例如,其它通信组件可以比通信组件308具有更多的带宽可用性。因此,质量管理器322可以将经重新配置的路由路径向外推送至合适的通信组件,所述合适的通信组件可以接着根据经重新配置的路由路径而对经标记的媒体流402进行路由。在至少一些实施例中,经重新配置的路由路径可以绕过通信组件308,并且因此避免可能由通信组件308引出的流问题。

在讨论了一些示例实现场景之后,现在考虑根据一个或多个实施例的一些示例过程的讨论。

示例过程

以下的讨论描述了根据一个或多个实施例的针对通信会话的服务策略的一些示例过程。可以在图1的环境100、图10的系统1000、和/或任何其它合适的环境中采用示例过程。在至少一些实施例中,针对各种过程所描述的步骤可以自动地实现并且不依赖用户交互。

图6是描述了根据一个或多个实施的方法中的步骤的流程图。该方法描述了根据一个或多个实施例的用于以用于处理通信会话数据的服务策略来启发(enlighten)各种网络组件的示例方式。

步骤600对用于传播通信会话的属性的通知事件进行配置。通知事件可以例如使用应用程序接口(API)而被配置,该应用程序接口可以被利用以配置会话信息并将会话信息传送至在通信会话中所涉及的各种网络组件。例如,API可以对对话事件和会话事件进行标识,其中针对该对话事件和会话事件可以标识出通信会话的属性。考虑可以例如经由由API所生成的通知事件而传输的以下的事件和属性:

对话事件-这些事件适用于通信会话的各种部分,例如,通信会话的开始、更新、和结束。对话事件可以包括以下的示例属性中的一个或多个。

(1)时间戳:可以利用该属性来规定通信会话的开始的时间戳、在通信会话期间发生的更新的时间戳、以及通信会话的结束(例如,终止)的时间戳。

(2)源IP地址:可以利用该属性来规定作为在通信会话期间的媒体的源的设备(例如,发起通信会话的设备)的IP地址。

(3)目标IP地址:可以利用该属性来规定用于将媒体作为通信会话的一部分来接收的设备的IP地址。

(4)传输类型:可以利用该属性来规定通信会话的传输类型或者传输类型的组合。传输类型的示例包括传输控制协议(TCP)、用户数据报协议(UDP)等。

(5)源端口:可以利用该属性来规定源设备(例如,在上文中所提及的由源IP地址所标识的源设备)处的端口的标识符。

(6)目标端口:可以利用该属性来规定目标设备(例如,在上文中所提及的由目标IP地址所标识的目标设备)处的端口的标识符。

(7)媒体类型:可以利用该属性来规定作为通信会话的一部分而待被传输和/或正在被传输的媒体类型和/或多个媒体类型。如在本文中其它地方所讨论的,通信会话可以涉及多种不同类型的媒体。因此,可以采用媒体类型属性来标识通信会话中的媒体类型,例如,以用于应用在本文中所讨论的服务策略。

(8)带宽估计:可以利用该属性来规定待被分配以用于进行通信会话的所估计的带宽。所估计的带宽可以例如基于各种因素,例如,与用户相关联的权限等级、在通信会话中所包括的媒体的类型和/或多个类型等。

(9)至:可以利用该属性来对待向其发送通信会话中的媒体的用户进行标识。

(10)从:可以利用该属性来对从其来发出通信会话和媒体的用户进行标识。

(11)错误代码:可以利用该属性来规定可以作为通信会话的一部分而发生的成对的各种错误代码。例如,错误可以包括在发起通信会话期间发生的错误、在通信会话期间发生的错误、当通信会话被终止时发生的错误等。

会话问题事件-当通信会话经历错误、性能降低等时,可以生成并且应用这些事件。会话问题事件可以包括在上文中参考对话事件所讨论的属性中的一个或多个,并且还可以包括以下属性中的一个或多个。

(1)平均意见得分(MOS)降低:可以利用该属性来规定通信会话的MOS。该属性可以例如用于指示通信会话的整体质量已经降低。

(2)抖动到达间隔时间:可以利用该属性来规定通信会话的抖动值。该属性可以例如用于指示抖动值或多个抖动值已经增加,例如,已经超过了具体的抖动值阈值。

(3)分组丢失率:可以利用该属性来规定通信会话的分组丢失率。该属性可以例如用于指示分组丢失率已经增加,例如,已经超过了具体的分组丢失率值阈值。

(4)往返延迟(RTD):可以利用该属性来规定通信会话中的分组的RTD值。例如,该属性可以用于指示分组的RTD值已经增加,例如,已经超过了具体的RTD值阈值。

(5)隐蔽比率:可以利用该属性来规定在开始通信会话之后所观察到的隐蔽时间比说话时间的积累比率。该属性可以例如用于规定隐蔽率已经增加,例如,已经超过了具体的隐蔽比率值阈值。

步骤602将通知事件传播至在通信会话中所涉及的网络组件。质量管理器112可以例如利用在上文中所讨论的各种属性来配置通知事件,例如,以用于传送对话事件和/或会话问题事件。通知事件可以例如包括服务策略的各种属性的属性值,并且可以用于传播在本文中所讨论的服务策略。质量管理器112可以将通知事件传播至网络组件110以使得网络组件110能够将相关联的服务策略应用至通信会话。在至少一些实施例中,可以采用在上文中所描述的过程以将服务策略传播至各种网络组件,和/或针对可能在通信会话期间发生的问题而发起补救性过程。

根据各种实施例,通知事件可以被配置以将不同类型的服务策略传播(例如,经由在上文中所讨论的API)至网络组件。例如,考虑以下的示例过程。

步骤700针对通信网络内的通信的发起而生成初始化服务策略。初始化服务策略可以例如针对具体类型的通信数据来规定默认的服务优先级指定。如在上文中所讨论的,初始化服务策略可以规定用于发起通信会话的信号要被标记有高(例如,优选)服务优先级。初始化服务策略还可以规定媒体数据要被标记或者被重新标记为较低的服务优先级(例如,BE服务优先级)。更进一步,初始化服务策略可以规定针对通信网络中的数据的不同的服务优先级的带宽分配。初始化服务策略可以对针对通信网络中的数据的没有在本文中具体地讨论的规则和行为进行规定。

步骤702将初始化服务策略传播至通信网络的组件。例如,参考在上文中所讨论的环境100,质量管理器112可以将初始化服务策略传播至通信组件110。根据各种实施例,这使得利用初始化服务策略来配置组件,使得组件可以将初始化策略应用至通信数据。

步骤704接收通信会话在通信网络中被发起的通知。通知例如包括通信会话的属性,例如,在会话中所涉及的客户端设备的标识符、所涉及的媒体的类型等。作为示例,考虑在上文中参考图3所讨论的通知320。通知320包括可以用于对具体的通信会话进行标识的5-元组信息,例如,以将该通信会话与其它通信会话进行区分。在至少一些实施例中,通知包括通信会话在通信网络内被授权了的指示,例如,该通信会话来自经认证的用户。通知可以例如包括安全密钥、散列值、认证因素和/或机制,这指示该通知来自被授权以发出这样的通知的经认证的源。

步骤706生成针对通信会话的经更新的服务策略。经更新的服务策略例如规定了针对通信会话的数据的新的服务优先级指定。例如,经更新的服务策略规定通信会话的媒体数据要被标记有较高的服务优先级,例如,EF。经更新的服务策略可以包括其它类型的信息,例如,经更新的带宽分配、经更新的路由路径等。例如,经更新的服务策略可以包括针对不同的服务优先级、不同的媒体类型等的不同的带宽分配。

如在上文中所提及的,经更新的服务策略可以特定于通信会话。例如,经更新的服务策略包括通信会话的标识符,例如,会话的5-元组信息。因此,在至少一些实施例中,经更新的服务策略要被应用至该通信会话而不被应用至其它通信会话。

步骤708对在通信会话的路由路径中所包括的组件进行标识。在上文中所讨论的质量管理器可以例如对组成路由路径的各种组件(例如,路由器、交换机等)进行标识。

步骤710将经更新的服务策略传播至在路由路径中所包括的组件。质量管理器例如将经更新的服务策略发送至被标识为在路由路径中的组件。如在上文中所提及的,可以将服务策略从通信会话中分离地发送至各种组件,例如,作为带外数据传输。组件可以基于经更新的服务策略而被重新配置,并且可以将经更新的服务策略应用至通信会话。例如,经更新的服务策略可以替换和/或覆盖初始化服务策略中的一些或全部,并且因此可以代替初始化服务策略中的至少一些而被应用。

根据各种实施例,当通信会话终止和/或过期时,移除通信会话的服务策略。例如,考虑以下的示例过程。

图8是描述了根据一个或多个实施例的方法中的步骤的流程图。步骤800确定通信会话终止。例如,可以接收指示通信会话已经被关闭的会话终止事件。可替代地或另外地,可以接收通信会话已经老化(例如,在具体的一段时间内,在通信会话中已经没有通信数据被交换)的通知。

步骤802从通信会话中所涉及的组件中移除通信会话的服务策略。组件可以例如被通知通信会话已经终止并且通信会话的任何服务策略都要被移除。可替代地或另外地,可以调用老化功能,其规定由于在具体的一段时间内在通信会话中已经没有数据分组被交换,因此通信会话的服务策略将被移除。

因此,在本文中所讨论的技术使得服务策略能够在每会话的基础上被动态地生成和更新。此外,在特定的通信会话结束和/或过期之后,移除针对该通信会话的服务策略。

在至少一些实施例中,可以采用在本文中所讨论的技术来补救可能在通信会话期间发生的问题。例如,考虑以下的示例过程。

图9是描述了根据一个或多个实施例的方法中的步骤的流程图。步骤900接收通信会话中的问题的指示。在上文中所讨论的质量管理器可以例如接收媒体数据流的问题(例如,丢分组、过度抖动和/或分组延迟等)的指示。

步骤902标识作为问题的源的网络组件。例如,质量管理器确定特定的通信组件处的分组吞吐量是不足的,例如,特定组件处的分组输入率显著地高于分组输出率,使得在该组件处分组被丢掉、在该组件处发生过度抖动和/或延迟等。

质量管理器还可以确定网络组件的一个或多个设置正在引起问题。例如,通信会话的带宽分配可能不足以处理通过组件的数据业务。如在上文中所提及的,带宽分配可以指的是针对通信会话的特定的服务优先级、针对通信会话的媒体类型或多个媒体类型等的带宽分配。

步骤904发起针对问题的补救性过程。质量管理器可以例如通知网络组件针对通信会话的带宽分配是不足的。作为响应,网络组件可以将额外的带宽分配至通信会话。例如,网络组件可以将额外的带宽分配至针对通信会话指定的服务优先级和/或针对与通信会话相关联的媒体类型或多个媒体类型而分配。

可替代地或另外地,质量管理器可以重新映射通信会话的路由路径。例如,质量管理器可以生成绕过了作为问题的源的网络组件的路由路径。质量管理器可以将经重新映射的路由路径传播至在通信会话中所涉及的一个或多个实体,例如,经由通信会话进行通信的客户终端、发起和/或调解通信会话的通信服务、在对通信会话进行路由时所涉及的中间网络组件等。因此,可以应用经重新映射的路由路径使得通信会话避开作为问题的源的网络组件。

在已经讨论了一些示例过程之后,现在考虑根据一个或多个实施例的示例系统和设备的讨论。

示例系统和设备

图10在1000处一般性地示出了示例系统,其包括代表可以实现在本文中所描述的各种技术的一个或多个计算系统和/或设备的示例计算设备1002。例如,在上文中参考图1所讨论的客户终端104可以被实施为计算设备1002。计算设备1002可以是例如服务提供商的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统、和/或任何其它合适的计算设备或计算系统。

如图所示的示例计算设备1002包括彼此通信地耦合的处理系统1004、一个或多个计算机可读介质1006、以及一个或多个输入/输出(I/O)接口1008。尽管未示出,计算设备1002还可以包括将各种组件彼此耦合的系统总线或其它数据和命令传输系统。系统总线可以包括不同的总线结构中的任何一个或组合,所述不同的总线结构例如存储器总线或存储器控制器、外围总线、通用串行总线、和/或使用多种总线架构中的任何一种的处理器或本地总线。还可以构想多种其它示例,例如,控制和数据线。

处理系统1004代表用于使用硬件来执行一个或多个操作的功能。从而,处理系统1004被示出为包括可以被配置为处理器、功能块等的硬件元件1010。这可以包括以硬件来作为专用集成电路或者使用一个或多个半导体形成的其它逻辑设备的实现。硬件元件1010不由形成其的材料或者其中所采用的处理机制来限制。例如,处理器可以由半导体和/或晶体管(例如,电子集成电路(IC))构成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。

计算机可读介质1006被示出为包括存储器/存储设备1012。存储器/存储设备1012表示与一个或多个计算机可读介质相关联的存储器/存储设备容量。存储器/存储设备1012可以包括易失性介质(例如,随机存取存储器(RAM))和/或非易失性介质(例如,只读存储器(ROM)、闪速存储器、光盘、磁盘等)。存储器/存储设备1012可以包括固定的介质(例如,RAM、ROM、固定的硬盘驱动器等)以及可移动介质(例如,闪速存储器、可移动硬盘驱动器、光盘等)。计算机可读介质1006可以以如在下文中所进一步描述的多种其它的方式来配置。

输入/输出接口1008代表用于允许用户向计算设备1002输入命令和信息,并且还允许利用各种输入/输出设备向用户和/或其它组件或设备呈现该信息的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音识别和/或话音输入)、扫描仪、触摸功能(例如,被配置以对物理接触进行检测的电容或其它传感器)、相机(例如,可以采用可见或非可见波长(例如,红外频率)来检测运动不包含作为手势的触摸的)等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网络卡、触觉反应设备等。因此,计算设备1002可以用如在下文中所进一步描述的多种方式被配置以支持用户交互。

可以在本文中在软件、硬件元件、或程序模块的一般性的上下文中描述各种技术。通常而言,这样的技术包括执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、元件、组件、数据结构等。如在本文中所使用的术语“模块”、“功能”、和“组件”通常表示软件、固件、硬件、或其组合。在本文中所描述的技术的特征是不依赖平台的,意思是可以在具有多种处理器的多种商业计算平台上实现这些技术。

所描述的模块和技术的实现可以存储在一些形式的计算机可读介质上或者跨一些形式的计算机可读介质传输。计算机可读介质可以包括可以由计算设备1002访问的多种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。

“计算机可读存储介质”可以指的是与仅仅是信号传输、载波、或信号本身相反的支持信息的永久存储的介质和/或设备。因此,计算机可读存储介质不包括信号本身。计算机可读存储介质包括以适合于存储信息(例如,计算机可读指令、数据结构、程序模块、逻辑元件/电路、或其它数据)的方法或技术实现的硬件,例如易失性和非易失性、可移动和不可移动介质和/或存储设备。计算机可读存储介质的示例可以包括但不限于,RAM、ROM、EEPROM、闪速存储器、或者其它存储器技术、CD-ROM、数字通用盘(DVD)或其它光存储、硬盘、盒式磁带、磁带、磁盘存储或其它磁存储设备、或者其它存储设备、有形的介质、或者适合于存储期望的信息并且可以由计算机访问的制品。

“计算机可读信号介质”可以指的是被配置以将指令传输(例如,经由网络)至计算机设备1002的硬件的信号承载介质。信号介质通常可以实施计算机可读指令、数据结构、程序模块、或经调制的数据信号中的其它数据,例如,载波、数据信号、或其它传输机制。信号介质还包括任何信息传递介质。术语“经调制的数据信号”意指将其特征中的一个或多个以将信息编码在信号中的方式来设置或改变的信号。作为示例而非限制,通信介质包括有线介质(例如,有线网络或直接连接)和无线介质(例如,声学、射频(RF)、红外、和其它无线介质)。

如前所述,硬件元件1010和计算机可读介质1006代表以硬件形式实现的指令、模块、可编程设备逻辑和/或固定的设备逻辑,其可以在一些实施例中被采用以实现在本文中所描述的技术中的至少一些方面。硬件元件可以包括集成电路或片上系统的组件、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑设备(CPLD)、以及硅或其它硬件设备中的其它实现。在该上下文中,硬件元件可以运行为执行由指令、模块、和/或逻辑所定义的程序任务的处理设备,所述指令、模块和/或逻辑由被使用以存储指令以用于执行的硬件元件以及硬件设备(例如,之前所描述的计算机可读存储介质)来实施。

也可以采用上述的组合来实现在本文中所描述的各种技术和模块。从而,软件、硬件、或程序模块和其它程序模块可以被实现为在某种形式的计算机可读存储介质上实施和/或由一个或多个硬件元件1010实施的一个或多个指令和/或逻辑。计算设备1002可以被配置以实现对应于软件和/或硬件模块的特定的指令和/或功能。从而,可以由计算设备1002作为软件执行的模块的实现可以至少部分地以硬件(例如,通过对处理系统的计算机可读存储介质和/或硬件元件1010的使用)来完成。指令和/或功能可以由制品(例如,一个或多个计算设备1002和/或处理系统1004)执行/操作以实现在本文中所描述的技术、模块、和示例。

如在图10中进一步示出的,当在个人计算机(PC)、电视设备、和/或移动设备上运行应用时,示例系统1000支持针对无缝的用户体验的普遍的环境。对于当在使用应用程序、玩可视游戏、观看视频等的过程中从一个设备转移到下一个时的普通的用户体验而言,服务和应用在所有三种环境中大体相似地运行。

在示例系统1000中,多个设备通过中央计算设备被互连。中央计算设备可以对于多个设备来说是本地的或者可以远程于多个设备。在一个实施例中,中央计算设备可以是通过网络、互联网、或其它数据通信链路连接至多个设备的一个或多个服务器计算机的云。

在一个实施例中,该互连架构支持待跨多个设备而被传递以向多个设备的用户提供共同和无缝的体验的功能。多个设备中的每个都可以具有不同的物理要求和能力,并且中央计算设备使用平台以使能够将既针对该设备定制并且还对所有设备共同的体验传递至设备。在一个实施例中,创建了一类目标设备,并且针对一般类型的设备来定制体验。可以由设备的物理特征、使用类型、或者其它共同的特性来定义设备的类。

在各种实现中,计算设备1002可以假设多种不同的配置,例如,以供计算机1014、移动1016、以及电视1018使用。这些配置中的每个都包括可以具有一般不同结构和能力的设备,并且因此计算设备1002可以根据不同的设备类中的一个或多个而被配置。例如,计算设备1002可以被实现为设备的计算机1014类,该类包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等。

计算设备1002还可以被实现为设备的移动1016类,该类包括移动设备,例如,移动电话、便携式音乐播放机、便携式游戏设备、平板计算机、多屏幕计算机等。计算设备1002还可以被实现为设备的电视1018类,其包括具有或连接至随意查看环境中的通常较大的屏幕的设备的。这些设备包括电视、机顶盒、游戏控制器等。

在本文中所描述的技术可以由计算设备1002的这些各种配置支持,并且不限于在本文中所描述的技术的具体的示例。例如,参考通信服务108和/或质量管理器112所讨论的功能可以全部或部分地通过对分布式系统的使用(例如,如在下文中所描述的通过经由平台1022的“云”1020)而被实现。

云1020包括和/或代表资源1024的平台1022。平台1022提取了云1020的硬件(例如,服务器)和软件资源的基础功能。资源1024可以包括当在远程于计算设备1002的服务器上执行计算机处理时可以被使用的应用和/或数据。资源1024还可以包括通过互联网和/或通过订阅者网络(例如,蜂窝或Wi-Fi网络)提供的服务。

平台1022可以提取资源和功能以将计算设备1002与其它计算设备进行连接。平台1022还可以用来提取资源的放缩,以对针对经由平台1022所实现的资源1024的所遇到的需求而提供对应的放缩等级。从而,在经互连的设备实施例中,在本文中所描述的功能的实现可以遍布系统1000而分布。例如,功能可以被部分地在计算设备1002上被实现,以及经由提取云1020的功能的平台1022而被实现。

在本文中所讨论的是可以被实现以执行在本文中所讨论的技术的多个方法。可以以硬件、固件、或者软件或其组合来实现方法的方面。方法被示出为规定了由一个或多个设备所执行的操作的一组步骤,并且非必须限于由相应的方框所示出的用于执行操作的顺序。此外,结合特定的方法所示出的操作可以与根据一个或多个实现的不同的方法的操作相结合和/或相互交换。方法的方面可以经由在上文中参考环境100所讨论的各种实体之间的交互而被实现。

结论

描述了针对通信会话的服务策略的技术。尽管用特定于结构特征和/或方法论行为的语言描述了实施例,但应当理解的是,在所附权利要求中所限定的实施例非必须限于所描述的具体的特征或行为。相反,具体的特征和行为是作为实现所要求保护的实施例的示例形式而被公开的。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1