欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 基于预测视频编码率分配无线电接入网络资源独创技术42898字

基于预测视频编码率分配无线电接入网络资源

2020-11-20 02:10:56

基于预测视频编码率分配无线电接入网络资源

  背景技术

  在近年中,无线和其他网络一直在为来自智能手机和其他设备的日益增长的业务提供服务。这种业务的增长部分包括双向视频(例如,会话视频)和对迟延敏感(latency-sensitive)的其他多媒体数据流。至今,为这种对迟延敏感的业务分配足够的网络资源的技术通常是无效的或难以实现的。

  发明内容

  以下概述不旨在标识本公开的要害或关键元素,也不旨在描绘本公开的范围。以下概述仅仅以简化的形式呈现了本公开的一些概念,作为对以下描述的序言。

  本文描述了用于改善这种对迟延敏感的业务的服务质量的方法、装置和系统。许多不同的应用可能会生成会话视频和其他对迟延敏感的业务。无线无线电接入网络(RAN)通常以与对迟延不敏感的业务相同的方式(例如,使用尽力交付(best effort delivery))处理会话视频业务。因为这种会话视频业务通常是加密的,所以RAN可能不知道业务是会话视频还是某种其他类型的业务,并且因此可能不能最优地为会话视频业务分配资源,以便改善对该业务的服务质量。如果没有允许生成会话视频业务(或其他这种对迟延敏感的业务)的特定应用通知RAN该业务是对迟延敏感的某种信令机制的话,RAN可能无法区分对迟延敏感的业务和其他业务。采用在会话视频应用和RAN之间进行通信的信令标准将是困难的,这是由于这种应用的很大数量,由不同的RAN使用不同的技术,以及其他因素。

  在用户设备上执行的会话视频应用通常设置了编码率,所述编码率基于在会话视频通话中针对先分组的端到端延迟来确定数据吞吐量。第一用户设备向第二用户设备发送出分组,并且反之亦然,并且当第二用户设备接收分组时,它将在周期间隔上向第一用户设备发送出接收器报告,并且反之亦然。对不同应用的周期性可能是变化的,并且可能没有被标准化。例如,当第一用户设备接收到这些报告时,它将决定针对后续时间间隔的编码率。如果报告的端到端延迟高,则用户设备上的会话视频应用可以降低其编码率,以便避免由于网络拥塞而造成丢失分组。如果报告的端到端延迟低,则用户设备上的会话视频应用可以提升其编码率,以便提供更好质量的视频。

  由于迭代调整过程和报告的周期性,编码率可能会随着时间的推移而被逐渐调整。由于缺乏信令机制,RAN可能不知道即将来临的编码率变化,这可能阻止它采取任何抢先行动来确保更好的服务质量以供调整后的视频业务。

  本文描述的方法、装置和系统允许RAN推断关于会话视频业务的信息,而无需要求允许与会话视频应用进行通信的信令机制。本文描述的方法、装置和系统允许RAN设备检测会话视频业务,收集关于会话视频业务以及其他网络条件的信息,预测与会话视频业务相关联的延迟,预测由生成会话视频业务的应用将使用的可能编码率,并基于可能编码率和其他网络条件向会话视频业务分配资源。

  附图说明

  本公开伴随有附图,在所述附图中相似的附图标记指示相似的元件,并且在所述附图中:

  图1示出了包括经由无线无线电接入网络和其他网络连接的用户设备的网络环境。

  图2a和2b示出了连接到各种接入网络的用户设备之间的数据流。

  图3示出了到用户设备的连接和无线电接入网络的组件。

  图4a、4b和4c示出了如本文所述的用于计算预测的示例模型。

  图5示出了用于分配网络资源的方法。

  图6示出了在示例多媒体数据通话期间资源分配的示例。

  具体实施方式

  在下面的描述中,对附图做出了参考,所述附图形成了描述的一部分。应当理解的是,在不脱离本公开的范围的情况下,可以做出结构和功能上的修改。

  图1示出了包括经由无线无线电接入网络和其他网络连接的用户设备的网络环境。用户设备可以经由一个或多个接入网络150连接到其他用户设备,所述接入网络150又可以经由一个或多个核心和/或外部网络110与彼此连接。因此,用户设备可以建立多媒体数据流(例如,双向视频通话),在一些情况下,可以通过一个或多个无线电接入网络来路由所述多媒体数据流。

  如所示的,用户设备140可以包括智能手机(例如,140a-c)和/或个人计算机(例如,140d)和/或任何其他类型的用户设备。例如,用户设备可以包括平板电脑、台式计算机、膝上型计算机、游戏设备、虚拟现实(VR)耳机、其他移动设备或其他用户设备。

  多媒体数据流可以包括与来自会话视频应用(例如,SKYPE、FACETIME等)的数据业务相关联的双向视频数据流或对迟延敏感的其他类型的多媒体数据流。这种对迟延敏感的多媒体数据流还包括双向音频(例如,音频聊天)、双向VR视频、单向音频/视频/VR以及其他这种多媒体数据流。

  多媒体数据流可以是双向数据流(例如,用户设备140a和用户设备140b之间的会话视频)和/或可以涉及多个用户设备(例如,涉及用户设备140a、用户设备140b和用户设备140c的视频会议)。涉及多个用户设备的这种数据流可以涉及每对用户设备之间的多个双向数据流(例如,用户设备140a和用户设备140b之间的第一双向数据流,以及用户设备140b和用户设备140c之间的第二双向数据流,以及用户设备140a和用户设备140c之间的第三双向数据流),或者可以涉及每个用户设备和中央服务器之间的双向数据流。如本文所述的双向数据流因此可以出现在用户设备和其他端点(例如,服务器)之间。

  无线电接入网络(RAN)150可以包括多个接入点130,其被配置为与用户设备140无线通信。接入点可以包括基站和/或节点,其能够根据无线标准(例如3G、4G、5G或其他这样的无线标准)与用户设备140进行无线通信。接入点130的这种节点可以提供调度器功能、业务管理功能和其他RAN资源管理功能。

  RAN 150还可以包括用于提供RAN功能的网络设备120。这种网络设备120可以实现用于控制接入点130与用户设备140进行通信的无线电网络控制器功能。附加地或备选地,网络设备120可以包括云RAN功能(例如,在云环境中管理的接入点130的功能)。在一些实施例中,网络设备120的一些或所有功能可以由接入点130的节点和/或基站来实现。

  如图1中所示,某个用户设备可以经由可能不是无线电接入网络的其他接入网络150d连接。尽管下面描述的概念通常是针对无线电接入网络来描述的,但是应该理解,本文描述的原理可以用于任何类型的接入网络。

  图2a示出了用户设备210a和用户设备210b之间的示例双向数据流,所述用户设备可以是根据图1的用户设备140的示例。这种数据流可以是例如会话视频通话,在其中用户设备210a向用户设备210b传送视频,并且用户设备210b向用户设备210a传送视频。用户设备210a、210b可以执行提供双向视频的视频应用215(例如,SKYPE、FACETIME等)。在所示示例中,应用215的两个实例可以向彼此发送信令消息,以建立和拆卸(tear down)视频通话,针对视频编码和/或编码率进行通信,指示延迟或其他传送问题等。许多这样的双向视频应用在端点之间进行协商,以便基于延迟、带宽、损失的业务和其他网络问题来建立视频编码率。视频应用之间的信令消息通常是加密的,并且因此可能是被RAN或其他接入网络中的设备所不能使用的。

  双向数据流可以穿过第一无线电接入网络220a和第二无线电接入网络220b,所述无线电接入网络可以是图1的无线电接入网络150的示例。双向数据流也可以穿过一个或多个核心和/或外部网络(例如,网络110)。由于变化的技术(例如,RAN中的一个可以是3G网络的一部分,而另一个RAN可以是4G网络的一部分)、在RAN处变化的业务水平、针对用户设备和RAN之间的无线连接的变化的信号强度以及其他因素,RAN中的一个或两个可以在数据流通话期间的各种时间上充当针对双向数据流的带宽和/或迟延瓶颈。

  第一设备210a可以通过经由第一RAN 220a的上行链路传送视频来向第二用户设备210b传送数据(例如,视频)。第一RAN 220a然后可以(例如,经由未示出的一个或多个核心和/或外部网络)向第二RAN 220b传送视频。第二RAN 220b然后可以经由下行链路向用户设备210b传送视频。类似地,第二用户设备210b可以通过经由第二RAN 220b的上行链路传送视频来向第一用户设备210a传送数据(例如,视频)。第二RAN 220b然后可以(例如,经由未示出的一个或多个核心和/或外部网络)向第一RAN 220a传送视频。第一RAN 220a然后可以经由下行链路向用户设备210a传送视频。因为特定RAN的上行链路和下行链路可能经历变化的业务和拥塞水平以及信号问题等其他问题,所以在一个方向上的业务的可用带宽和端到端(e2e)延迟可能不同于在另一个方向上的可用带宽和e2e延迟。

  图2b示出了用户设备210a和用户设备210b之间的第二示例双向数据流,所述用户设备可以是图1的用户设备140的示例。在该示例中,双向数据流可以在用户设备210a和用户设备210b处具有端点,但是第二用户设备210b可以连接到其他接入网络,所述接入网络可以是图1的另一接入网络150d的示例。这种其他接入网络可以包括电缆接入网络、光纤接入网络或某种其他类型的接入网络,并且可以包括一个或多个有线或无线连接(例如,Wi-Fi接入点)。

  在一些实施例中,双向数据流的两个用户设备210可以经由其他接入网络(例如,非RAN接入网络)连接。在一些实施例中,多于两个的用户设备210可以是多于两个的用户设备(例如,三方视频会议)之间的数据流的端点。在一些实施例中,双向或其他多媒体数据流可以出现在用户设备和服务器或其他非用户设备之间。

  图3示出了RAN 320的资源分配控制器330的进一步细节,所述RAN可以是图1的RAN150的示例。资源分配控制器330可以由RAN接入点(例如,接入点130)的节点和/或基站实现,和/或可以由如图1所示的网络设备(例如,网络设备120)实现。RAN 320a可以经由由RAN提供的无线网络连接到用户设备310a(其可以是用户设备140、210的示例)。因此,RAN 320a可以经由上行链路数据流从用户设备310a接收数据,并且经由下行链路数据流向用户设备310a传送数据。RAN 320a还可以经由中间网络350向用户设备310b双向发送数据和从用户设备310b双向接收数据。中间网络可以包括核心和/或外部网络(例如,网络110)和/或接入网络(例如,RAN 220或其他接入网络220c)。

  资源分配控制器330可以管理针对用户设备310a的RAN资源,以改善双向数据流的服务质量。因为资源分配控制器330管理针对RAN 320a的资源,所以它可以管理针对图3的第一和第四数据流的资源。第二和第三数据流涉及资源分配控制器330可能无法对其控制的其他中间网络350。因此,资源分配控制器可以管理RAN资源,以防止RAN 320a在双向数据流的任一方向上成为瓶颈。

  资源分配控制器330可以包括一个或多个处理器331和一个或多个存储器332。(一个或多个)存储器可以存储指令332a,当所述指令332a被(一个或多个)处理器331执行时,使得资源分配控制器330执行本文描述的功能。例如,指令332a可以使资源分配控制器330执行图5的方法,如下文进一步描述的。

  资源分配控制器可以基于上行链路数据流和/或下行链路数据流的预测的未来编码率(和/或预测的未来吞吐量)来为关于用户设备310a的上行链路(例如,第一数据流)和下行链路(例如,第四数据流)分配资源。为了预测未来的编码率,资源分配控制器可以使用一个或多个延迟模型332b来确定与RAN和与中间网络两者相关联(例如,与第一和第二数据流相关联)的上行链路延迟,并确定与RAN和与中间网络两者相关联(例如,与第三和第四数据流相关联)的下行链路延迟。然后,RAN可以为双向数据流的两个方向计算端到端延迟(例如,通过将与第一和第二数据流相关联的延迟相加以确定针对一个方向的端到端延迟,并将与第三和第四数据流相关联的延迟相加以确定针对另一个方向的端到端延迟)。

  在确定针对双向数据流的两个方向的端到端延迟之后,资源分配控制器330可以使用一个或多个速率模型332c来基于对应的端到端延迟预测在每个方向上传送的多媒体数据的未来编码率。例如,使用第一端到端延迟,资源分配控制器330可以使用速率模型332c中的一个来计算从用户设备310a发送到用户设备310b的视频的预测编码率。资源分配控制器330还可以使用相同或不同的速率模型332c来计算从用户设备310b发送到用户设备310a的视频的预测编码率。

  基于预测的编码率,资源分配控制器330可以分配足够的RAN资源,以便避免限制双向数据流。资源分配控制器因此可以传送指令(例如,经由通信接口333传送到与用户设备310a相关联的RAN 320a的节点)以适当地分配资源。下面参考图5更详细地描述了基于预测的延迟和编码率来分配资源的方法。

  图4A示出了用于预测上行链路数据流的延迟的第一示例模型410a。模型410a可以是用于预测延迟的延迟模型332b中的一个。模型410a可以被训练成基于多个输入特征来预测第一延迟(例如,与通过RAN 320a的数据流相关联的端到端延迟的一部分)和第二延迟(例如,与通过RAN外的中间网络350的数据流相关联的端到端延迟的剩余部分)。输入特征可以包括与上行链路数据流相关的网络条件信息,诸如针对上行链路方向的拥塞信息、针对上行链路信道的信道条件信息以及针对上行链路数据流的吞吐量信息。其他示例特征可以包括关于针对任何回程链路(例如,核心和/或外部网络110)的吞吐量和/或迟延的任何信息。

  上行链路拥塞信息可以指示RAN上行链路有多拥塞,其可能倾向于预测双向数据流中的延迟。上行链路拥塞信息输入可以以各种方式确定。在4G/LTE上下文中,拥塞信息可以根据物理资源块(PRB)的可用数量来指示。因此,例如,上行链路网络拥塞的简单度量可以是可用于上行链路业务的PRB的数量和/或百分比。另一种拥塞度量可以包括在美国专利No.9,794,825中描述的针对活动承载的PRB/秒的平均数量,所述专利通过引用以其整体结合于本文中。另一个拥塞度量可以是连接到RAN的接入点的所有用户的平均来回延迟。这些度量中的一些或全部可以用作对模型410a的一个或多个输入。在一些实施例(例如,对于非4G/LTE网络)中,拥塞信息可以根据除PRB之外的其他类型的网络资源来度量。

  上行链路信道条件信息指示到用户设备的无线上行链路连接的质量,其可能倾向于指示由于丢失分组等造成的延迟。上行链路信道条件信息可以以各种方式来确定。接收信号强度指示(RSSI)、参考信号接收功率(RSRP)、信号干扰加噪声比(SINR)和/或其他类型的噪声比可以用作用于与用户设备310a连接的信道上的条件的指示。其他度量包括分配给每个承载的PRB的平均数量和/或每PRB的比特数。这些度量中的一些或全部可以用作对模型410a的一个或多个输入。

  上行链路吞吐量信息可以指示与用户设备310a在上行链路方向上相关联的当前吞吐量(例如,以比特每秒为单位),如在最近的时间段(例如,过去数十或数百毫秒或秒)上测量的吞吐量。

  模型410a可以被训练成预测与RAN上行链路相关联的第一延迟和与通过各种中间网络的数据流的剩余部分相关联的第二延迟两者。为了训练模型410a,训练数据集可以从在RAN和在通过RAN提供双向数据流的用户设备两者处收集的数据中生成。例如,为了生成针对模型410a的训练数据集,操作者可以将测试用户设备无线连接到RAN。然后,操作者可以利用测试用户设备作为一个端点来建立双向数据流(例如,通过执行视频应用215并建立会话视频通话)。然后,RAN可以记录上行链路拥塞信息、上行链路信道条件信息、吞吐量信息以及用于向模型410a提供输入特征的任何其他信息。同时,测试用户设备可以记录端到端延迟(例如,如由从在测试用户设备上执行的视频应用215中,和/或从在双向数据流的另一端点的用户设备上执行的视频应用215接收的信令消息中收集和生成的数据所指示的)。此外,测试设备和/或RAN可以通过配置测试设备和/或RAN来提供度量这种延迟的信令,来记录与RAN上行链路相关联的第一延迟。从端到端延迟数据和与RAN上行链路相关联的第一延迟数据中,可以生成与通过各种中间数据网络的数据流的剩余部分相关联的第二延迟数据(例如,通过从端到端延迟中减去第一延迟)。在其他示例中,代替输出第一和第二延迟,模型410a可以被训练为输出单个(例如,端到端)延迟。

  操作者然后可以关联和编译所记录的数据,以形成训练数据集。第一和第二延迟数据可以被设置为目标变量,并且输入数据可以被用作输入特征。可以使用各种机器学习和/或统计技术(例如梯度下降、反向传播等)来训练模型以开发经训练的模型。训练过程可以调整分配给每层的节点的权重,以便将输入特征映射到目标输出。训练过程可以相对于与输入特征相关联的时间,将输入特征映射到与稍后时间(例如,数十或数百毫秒之后)相关联的延迟度量,使得模型被训练成基于输入特征预测未来延迟(例如,未来数十或数百毫秒)。

  尽管图4a示出了简单的神经网络,但是也可以使用其他变化和/或类型的模型。例如,尽管图4a示出了具有五个节点的单个隐藏层,但是在其他示例中,可以使用附加隐藏层。例如,深度神经网络可能使用大量的隐藏层。附加地或备选地,各种数量的节点可以用于不同的隐藏层。附加地或备选地,如上所述,模型410a可以使用少于或多于所示的四个输入。

  在一些实施例中,替代计算针对输入的特定特征,一些或所有的输入可以是原始的或轻微处理的数据。例如,代替计算网络拥塞信息,可以向模型410a提供由网络调度器使用的原始或轻微处理(例如,重新格式化)的业务馈送和/或数据结构作为(一个或多个)输入。深度神经网络和其他深度学习技术可能特别适合于基于这种类型的更复杂的输入数据做出预测。

  图4B示出了用于预测下行链路数据流的延迟的第二示例模型410b。模型410b可以是用于预测延迟的延迟模型332b中的一个。模型410b可以被训练成基于多个输入特征来预测第三延迟(例如,与通过RAN外的中间网络350的数据流相关联的端到端延迟的一部分)和第四延迟(例如,与通过RAN 320a的数据流相关联的端到端延迟的一部分)。输入特征可以包括与下行链路数据流相关的网络条件信息,诸如针对下行链路方向的拥塞信息、针对下行链路信道的信道条件信息、针对下行链路数据流的吞吐量信息以及如上针对模型410a所讨论的其他示例输入特征。与下行链路数据流相关的拥塞信息、信道条件信息和吞吐量信息可以如上面针对模型410a所讨论的那样来确定。

  针对模型410b的训练数据集可以被编译,并且模型410b被训练,类似于上面讨论的模型410a。类似地,示例模型410b可以变化以包括不同数量的层和/或节点,或者使用除神经网络之外的不同模型,诸如其他机器学习模型。附加地或备选地,模型410b可以是深度神经网络。附加地或备选地,模型410b可以接收变化数量的输入和/或可以接收原始的或轻微处理的(例如,重新格式化的)数据作为输入,所述数据诸如原始的或轻微处理的业务馈送和/或由网络调度器使用的数据结构。

  图4C示出了第三示例模型420。模型420可以是用于基于延迟预测编码率的速率模型332c中的一个。模型420可以被训练成基于多个输入特征来预测针对第一用户设备(例如,在双向数据流的一端的用户设备310a)的编码率和针对第二用户设备(例如,在双向数据流的另一端的用户设备310b)的编码率。这些输入特征可以包括针对双向数据流的第一方向的端到端延迟、针对双向数据流的第二方向的端到端延迟、应用信息和其他示例输入特征。这类其他示例输入特征可以包括针对与RAN进行通信的其他用户设备的端到端延迟。

  端到端延迟可能影响由用于建立双向数据流的应用(例如,视频应用215)选择的编码率。例如,视频应用在遇到一定量的延迟时,可能倾向于降低编码率,以便防止可能导致视频暂断(hiccup)和其他此类质量问题的分组丢失或延迟。端到端延迟可以从延迟模型332b、410的输出以算术方式导出。例如,第一和第二延迟可以被加在一起以产生针对第一方向的第一端到端延迟。类似地,第三和第四延迟可以被加在一起以产生针对第二方向的第二端到端延迟。

  应用信息可以指示确定特定应用(例如,SKYPE、FACETIME、WECHAT等)或应用的类型(例如,应用使用什么视频协议和/或标准)。应用信息可以提供关于预测编码率的信息。例如,一些应用可以在遇到某些延迟时快速降低编码率和/或在没有延迟时快速提高编码率,而其他应用可以在相同条件下更缓慢地降低或提高编码率。

  模型420可以被训练成预测与第一用户设备相关联的第一编码率和与第二用户设备相关联的第二编码率。为了训练模型420,训练数据集可以从在RAN和在通过RAN提供双向数据流的用户设备处收集的数据中生成。例如,为了生成针对模型420的训练数据集,操作者可以将测试用户设备无线连接到RAN。然后,操作者可以利用测试用户设备作为一个端点来建立双向数据流(例如,通过执行视频应用215并建立会话视频通话)。然后,测试用户设备可以记录两个方向上的端到端延迟(例如,如由从在测试用户设备上执行的视频应用215中,和/或从在双向数据流的另一端的用户设备上执行的视频应用215接收的信令消息中收集和生成的数据所指示的)。另外,测试设备可以记录诸如应用或应用类型的应用信息。同时,测试用户设备可以记录针对测试用户设备和在双向数据流的另一端的用户设备两者的编码率(例如,如由从在测试用户设备上执行的视频应用215中,和/或从在双向数据流的另一端的用户设备上执行的视频应用215接收的信令消息中收集和生成的数据所指示的)。在一些实施例中,用于训练模型420的训练数据可以与用于训练模型410a、410b的训练数据同时收集(例如,使用由相同测试用户设备建立的相同双向数据流)。因此,用于训练模型420的训练数据集可以是用于训练模型410a、410b的相同训练数据集(例如,作为包含针对多个模型的相关训练信息的单个数据集)。

  为了训练模型420,针对两个端点的编码率可以被设置为目标变量,并且第一和第二延迟数据、应用信息和任何其他特征可以被用作输入特征。可以使用各种机器学习和/或统计技术(例如,梯度下降、反向传播等)来训练模型以开发经训练的模型。训练过程可以调整分配给每层的节点的权重,以便将输入特征映射到目标输出。训练过程可以相对于与输入特征相关联的时间,将输入特征映射到与稍后时间(例如,数十或数百毫秒之后)相关联的编码率,使得模型被训练成基于输入特征预测未来编码率(例如,未来数十或数百毫秒)。

  在一些实施例中,代替使用输出针对第一用户设备和第二用户设备两者的编码率的单个模型420,可以训练一个模型332c来预测针对一个用户设备(例如,无线连接到RAN320a的用户设备310a)的编码率,并且可以训练第二模型332c来预测针对另一个用户设备(例如,经由中间网络350连接到RAN 320a的用户设备310b)的编码率。因此,模型332c可以各自接收单个端到端延迟输入。用于预测无线连接到RAN的用户设备的编码率的模型332c可以接收与相对于RAN的上行链路方向上的业务相关联的端到端延迟(例如,通过添加第一和第二延迟计算的端到端延迟)作为输入特征。用于预测经由中间网络连接到RAN的用户设备的编码率的模型332c可以将与相对于RAN的下行链路方向上的业务相关联的端到端延迟(例如,通过添加第三和第四延迟计算的端到端延迟)作为输入特征。

  在一些实施例中,除了或作为使用机器学习技术、神经网络等的备选,可以训练和使用统计模型,诸如回归模型。在一些实施例中,可以使用查找表来代替使用一个或多个模型332b、332c。例如,作为用于预测编码率的(一个或多个)模型420、332c的备选,可以使用包含基于端到端延迟的预测编码率的一个或多个查找表。这种查找表可以包含针对不同应用的不同数据,使得编码率预测可以是应用特定的。

  图5示出了基于预测的编码率将RAN资源分配给双向数据流(例如,会话视频)的方法。图5的方法可以由资源分配控制器330来执行,所述资源分配控制器330可以由RAN接入点130的节点和/或基站和/或由RAN网络设备120来实现。

  过程可以在步骤501开始。过程可以在设备进入在线时开始,并且可以连续地或周期性地执行(例如,连续地或周期性地在循环中执行),和/或可以在资源分配控制器330检测到新的数据流时开始。在步骤502,资源分配控制器330可以测试数据流,以确定它是否包含对迟延敏感的双向数据流。如所示的,资源分配控制器330可以确定业务是否特定地与会话视频相关联。资源分配控制器330可以基于承载计量的统计向量和对应于统计向量的标签映射上的定位点来确定应用类型(例如,应用类型是会话视频还是某种其他对迟延敏感的数据流),如在美国专利No.9,780,997中所述的,所述专利通过引用以其整体结合于本文中。如果资源分配控制器330确定应用类型不是会话视频(和/或某种其他类型的对迟延敏感的多媒体数据流),则它可以返回并在相同的数据流和/或另一个数据流上重复测试。资源分配控制器330可以在等待一段时间之后(例如,在延迟步骤之后,未示出)再次执行步骤502(例如,在相同的数据流或另一个数据流上),以便节省计算资源。如果资源分配控制器330确定数据流是会话视频(和/或某种其他类型的对迟延敏感的多媒体数据流),则它前进到步骤503。

  在一些实施例中,除了使用统计向量来确定应用类型之外,或者作为使用统计向量来确定应用类型的备选,资源分配控制器330可以使用被训练来识别应用和/或应用类型的应用模型332d。模型332d可以将业务流作为输入,并且基于业务来预测生成业务的应用或应用类型。附加地或备选地,模型332d可以将从业务流导出的统计和/或其他信息作为输入。模型332d可以是使用训练数据集训练的深度神经网络,所述训练数据集包括示例业务流和/或从业务流导出的信息(例如,统计)作为输入以及哪个应用和/或应用类型生成对应的业务流作为目标变量的指示。这种模型可以使用上述任何技术来训练,包括机器学习和/或统计建模技术(例如,神经网络、深度学习、回归模型等)。

  在步骤503,资源分配控制器330可以为RAN收集网络条件信息。资源分配控制器330因此可以收集用于为延迟模型332b(例如,模型410a、410b)生成输入特征的数据。这种网络条件信息可以包括上行链路和/或下行链路拥塞信息、上行链路和/或下行链路信道条件信息、上行链路和/或下行链路吞吐量信息以及用于输入到延迟模型332b(例如,模型410a、410b)的任何其他网络条件特征中的一个或多个。资源分配控制器330可以通过从RAN的其他组件请求信息(例如,通过经由通信接口333向这些组件传送一个或多个请求),从RAN的这些组件(例如,从接入点130的节点和/或基站和/或网络设备120)收集这样的信息,和/或可以连续地、周期性地或以某个其他间隔接收这样的信息。附加地或备选地,资源分配控制器330可以自身生成和/或计算这样的网络条件信息(例如,基于由资源分配控制器330先前获得的和/或存储的其他信息)。

  在步骤504,资源分配控制器330可以处理网络条件信息,以生成针对(一个或多个)延迟模型332b(例如,模型410a、410b)的输入特征。这种处理可以涉及将数据的格式归一化、相关化、结构化或以其他方式修改为适合输入到(一个或多个)延迟模型332b(例如,模型410a、410b)的格式。延迟模型特征可以包括上面讨论的任何输入特征。

  在步骤505,资源分配控制器330可以使用一个或多个延迟模型332b来预测延迟(例如,分别相关联于经由RAN同第一用户设备的上行链路连接、同第二用户设备的上行链路连接、经由RAN同第一用户设备的下行链路连接以及同第二用户设备的下行链路连接的第一到第四延迟)。资源分配控制器330因此可以将延迟模型特征输入到延迟模型332b,以便生成预测延迟。基于输入特征,预测的延迟可以指示在不久的将来(例如,在接下来的数十或数百毫秒内)的延迟。

  在步骤506,资源分配控制器330可以为双向数据流的两个方向计算端到端延迟。资源分配控制器330可以例如添加第一和第二延迟以产生第一端到端延迟,并且添加第三和第四延迟以产生第二端到端延迟。在其他示例中,(一个或多个)延迟模型332b可以预测端到端延迟,并且因此步骤506可能不是必需的。

  在步骤507,资源分配控制器330可以确定与双向数据流相关联的应用。在一些实施例中,如上所述,用于检测会话视频的过程(例如,步骤502)可以指示应用。在这种情况下,资源分配控制器330可以查找和/或检索先前确定的应用。在一些实施例中,如上所述,资源分配控制器330可以使用应用模型332d来确定应用。因此,如果资源分配控制器330使用应用模型332d在先前确定了应用,则资源分配控制器330可以检索应用确定,和/或在步骤507使用应用模型332d来基于业务流和/或从业务流导出的信息(例如,统计或其他计量)确定应用。

  在步骤508,资源分配控制器330可以使用(一个或多个)模型332c预测针对双向数据流的编码率。因此,资源分配控制器330可以为(一个或多个)模型332c提供端到端延迟、应用信息和/或任何其他输入特征,以便预测编码率。在一些实施例中,代替(一个或多个)模型332c,资源分配控制器330可以使用一个或多个查找表来基于端到端延迟预测编码率。在这样的实施例中,资源分配控制器330可以使用包含(一个或多个)端到端延迟的一个或多个查询来查找编码率信息。在一些实施例中,可以为各种应用和/或应用类型提供多个查找表。因此,资源分配控制器330可以在一个或多个查找表查询中提供所确定的应用和/或应用类型。资源分配控制器330因此可以确定针对双向数据流的一个或两个用户设备的预测编码率。

  在步骤509,资源分配控制器330可以基于预测的编码率、RAN上的当前资源分配和/或与第一用户设备310a和RAN之间的(一个或多个)无线连接相关联的(一个或多个)当前上行链路和下行链路延迟来分配RAN资源。

  在一些情况下,为分配RAN资源,资源分配控制器330可以基于预测的(一个或多个)编码率来计算上行链路吞吐量和/或下行链路吞吐量。然后,RAN可以确保向无线连接到RAN的用户设备310a分配有足够的资源,以便适应所确定的吞吐量。如果分配给用户设备310a的资源不足,则RAN可以增加分配给用户设备310a的资源(例如,通过向用户设备310a分配更多的PRB)。在一些情况下,RAN可以将分配给与对迟延敏感的数据流(例如,会话视频数据流)不相关联的其他设备(例如,无线连接到RAN的其他用户设备)的资源(例如,PRB)重新分配给用户设备310。

  在一些情况下,资源分配控制器330可以基于预测的编码率来确定分配给用户设备310a的资源过多。如果RAN有空闲资源(例如,如果无线连接到RAN的其他用户设备不需要用于对迟延敏感的业务的附加资源),则它可以留下分配给用户设备的额外资源,以防双向数据流的编码率随后增加。如果其他用户设备需要资源(例如,如果资源分配控制器330通过针对第二双向数据流并行执行图5的过程,或者从通过与第二双向数据流相关的图5的过程的循环的先前迭代中确定第二双向数据流具有分配不足的资源),则资源分配控制器330可以将额外资源(例如,PRB)从用户设备310分配给其他用户设备。

  在一些情况下,资源分配控制器330可以基于与第一用户设备310a和RAN之间的(一个或多个)无线连接相关联的(一个或多个)当前上行链路和下行链路延迟来确定即使当双向数据流具有不足的资源时,RAN也不是瓶颈。因此,在一些情况下,即使当双向数据流具有不足的资源时,资源分配控制器330也可以使参加对迟延敏感的双向数据流的用户设备310a去优先级化(例如,支持也需要附加资源的另一个用户设备),因为资源分配控制器330确定RAN不是对业务的瓶颈(例如,因为中间网络350正在延迟业务)。因此,在一些情况下,资源分配控制器330可以确定分配附加资源将不会改善对双向数据流的服务质量,因为资源分配控制器330可能无法对其控制的中间网络350正在阻止更好的服务质量。

  图6示出了在示例多媒体数据通话期间的资源分配的示例。所示的示例从步骤601a、601b开始,其中两个用户设备A、B(其可以是用户设备140、210、310的示例)建立通话。例如,在用户设备A和用户设备B两者上执行的视频应用可以协商、执行握手操作,并且以其他方式相互发信号以发起会话视频通话。通话可能是加密的,这意味着RAN-A的设备可能不能观察到业务的类型、什么信号正被交换,或者以其他方式直接从业务中提取信息。

  在步骤602,RAN的设备(例如,资源分配控制器330)可以执行图5的过程的步骤503-509(例如,在图5的过程的步骤502中确定发起的通话是会话视频通话之后)。因此,资源分配控制器330可以基于用户设备A和用户设备B两者的预测编码率来分配足够的资源。

  在步骤603,在重复循环通过图5的过程之后,资源分配控制器330可以确定新的预测编码率(例如,针对用户设备A,如所示的,或针对用户设备A和/或用户设备B中的任一个或两个)。由于网络条件信息上的变化(例如,信道上行链路和/或下行链路拥塞、上行链路和/或下行链路信道质量、上行链路和/或下行链路吞吐量上的变化等),预测的编码率可能随时间变化。由于其他用户设备加入和/或离开RAN和/或使用变化量的业务带宽,由于用户设备A和/或B的移动导致双向数据流的两端上的信道条件变化,由于在用户设备A或用户设备B处的编码上的变化,或由于其他原因,这种预测的编码率随时间变化可能发生。响应于确定新的预测编码率,资源分配控制器330可以将资源重新分配给到用户设备A的RAN连接的上行链路和/或下行链路。

  在一些情况下,如由图6所示的,重新分配资源可以防止用户设备A和/或用户设备B不得不调整编码率。因此,即使资源分配控制器为用户设备A和/或用户设备B中的至少一个预测了新的编码率,用户设备A和/或用户设备B实际上可能不会改变它们的编码率。例如,如果资源分配控制器330在步骤603预测针对用户设备A的编码率相比在步骤602预测的针对用户设备A的编码率更低,则资源分配控制器可以通过增加用于与用户设备A的上行链路连接的资源来响应,使得用户设备A不需要降低其编码率。因此,预测编码率变化了,并且提前调整资源实际上可能会阻止编码率变化的必要性。

  在其他情况下,可能会发生预测的编码率变化。例如,在步骤604,资源分配控制器330可以预测针对用户设备A的新编码率,并且在步骤605,用户设备A可以独立地调整其编码率。在这些情况下,资源分配控制器330可以通过提前调整资源分配来为新编码率做准备。例如,当新编码率高于先前的编码率时,资源分配控制器330可以在业务增加之前准备好处理来自较高速率的数据流的增加的业务。

  类似地,资源分配控制器330可以预测针对用户设备B的编码率变化,如在步骤607所示的,并且适当地调整资源分配。在某些情况下,通过这种重新分配可以避免编码率变化。在其他情况下(例如,如所示的),用户设备B可以独立地调整其编码率。

  在某个点上,用户设备A和/或用户设备B中的一个或两个可以终止通话。在所示的示例中,用户设备B可以在步骤609终止通话。稍后,在步骤610中,资源分配控制器330可以确定数据流已经终止,并且解除分配先前分配给数据流的资源。

  因此,如由图6的示例所示的,资源分配控制器330能够优化资源分配,以改善对迟延敏感的双向数据流的服务质量,而无需要求往返于用户设备A和/或用户设备B和/或在用户设备A和B上执行的视频应用的信令。

  本公开的一个或多个方面可以被存储为由一个或多个计算机或其他设备执行的计算机可用数据和/或计算机可执行指令,诸如被存储在一个或多个程序模块中。程序模块包括例程、程序、对象、组件、数据结构等,其在由计算机或其他数据处理设备中的处理器执行时执行特定的任务或实现特定的抽象数据类型。计算机可执行指令可以存储在一个或多个计算机可读介质上,所述介质诸如硬盘、光盘、可移动存储介质、固态存储器、RAM和/或其他类型的介质。程序模块的功能可以根据需要进行组合或分布。附加地或备选地,功能可以全部或部分地在固件或硬件等价物中来实现,所述固件或硬件等价物诸如集成电路、现场可编程门阵列(FPGA)、专用集成电路(ASIC)和/或其他类型的硬件和/或固件。特定的数据结构可以被用于实现本文公开的一个或多个操作,并且这种数据结构被设想在本文描述的计算机可执行指令和计算机可用数据的范围内。

  本领域技术人员可以对所公开的方法、装置和系统进行修改,特别是按照前述教导进行修改。本文公开的特征可以单独使用,或者与其他特征组合或次组合使用。任何上述系统、装置和方法或其部分可以与其他描述的系统、装置和方法或其部分组合。附图中所示的步骤可以以不同于所述的顺序来执行,并且一个或多个步骤可以是可选的。还将理解和明白的是,在不脱离本公开的真实精神和范围的情况下,可以做出修改。

《基于预测视频编码率分配无线电接入网络资源.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)