CN105531968B - 基于网络的自适应速率限制方法及装置 - Google Patents
基于网络的自适应速率限制方法及装置 Download PDFInfo
- Publication number
- CN105531968B CN105531968B CN201480049984.0A CN201480049984A CN105531968B CN 105531968 B CN105531968 B CN 105531968B CN 201480049984 A CN201480049984 A CN 201480049984A CN 105531968 B CN105531968 B CN 105531968B
- Authority
- CN
- China
- Prior art keywords
- session
- bandwidth
- rate
- downstream
- given
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000003044 adaptive effect Effects 0.000 title claims description 64
- 238000000034 method Methods 0.000 title claims description 37
- 230000005540 biological transmission Effects 0.000 claims description 49
- 238000005259 measurement Methods 0.000 claims description 17
- 238000007493 shaping process Methods 0.000 claims description 10
- 238000012935 Averaging Methods 0.000 claims description 6
- 238000012546 transfer Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 230000006978 adaptation Effects 0.000 description 35
- 230000006870 function Effects 0.000 description 23
- 230000008859 change Effects 0.000 description 8
- 238000011144 upstream manufacturing Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 7
- 238000005315 distribution function Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000006116 polymerization reaction Methods 0.000 description 4
- 230000011664 signaling Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/752—Media network packet handling adapting media to network capabilities
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
装置可以包括会话速率限制计算器和速率限制器。会话速率限制计算器可以被配置为基于给定会话的状态信息和下游瓶颈链路的状态信息来计算多个活跃流式传输媒体会话中的给定会话的会话速率限制,其中该装置将多个活跃流式传输媒体会话馈入该下游瓶颈链路。速率限制器可以被配置为基于经计算的会话速率限制来控制给定会话的下游流量,并且被配置为提供给定会话的相应的经速率限制的下游流量。
Description
技术领域
本公开涉及网络通信,并且更具体地,涉及速率限制。
背景技术
自适应比特率流式传输(streaming)是在通过计算机网络向一个或多个客户端流式传输多媒体中使用的技术,例如该技术可以根据传输协议 (例如,超文本传输协议(HTTP))来提供。自适应流式传输一般是通过根据相应客户端的带宽和能力来调整视频流的速率而进行操作的。客户端可以根据可用的资源在具有不同编码比特率的流式传输之间进行相应地切换。当多个自适应流式传输客户端在瓶颈链路处互相竞争带宽时,每个客户端可能很难估计自己的带宽份额。由于在一个或多个客户端处差的自适应决定,这可能导致可令用户分心的不稳定性和/或频繁的比特流改变。
附图说明
图1示出了自适应速率限制系统的示例。
图2示出了自适应速率限制系统的另一示例。
图3示出了将自适应速率限制流量与高速数据流量相组合的系统的示例。
图4示出了被配置为实现自适应速率限制的网络系统的示例。
图5示出了用于执行自适应速率限制的方法的示例。
具体实施方式
概述
本公开总体涉及网络通信,并且更具体地,涉及基于网络的自适应速率限制。
作为示例,方法可以包括将权重分配至多个自适应流式传输媒体会话中的给定流式传输会话,该多个自适应流式传输会话被提供给馈入瓶颈链路的网络节点。给定流式传输会话的速率限制可以基于所分配的权重和用于通过瓶颈链路向多个自适应流式传输媒体会话提供流式传输媒体流量的有效目标带宽来计算。给定流式传输会话的下游速率可以被根据所计算的速率限制来调整。
作为另一示例,装置可以包括会话速率限制计算器和速率限制器。会话速率限制计算器可以被配置为基于给定会话的状态信息和下游瓶颈链路的状态信息来计算多个活跃流式传输媒体会话中的给定会话的会话速率限制,其中该装置将多个活跃流式传输媒体会话馈入该下游瓶颈链路。速率限制器可以被配置为基于所计算的会话速率限制来控制给定会话的下游流量,并且针对给定会话提供相应的经速率限制的下游流量。
作为又一示例,系统可以包括存储器,该存储器存储会话数据和瓶颈数据。会话数据可以包括多个自适应流式传输媒体会话中的每一个的状态信息,瓶颈数据包括瓶颈链路的控制参数和状态信息,其中多个自适应流式传输媒体会话被通过该瓶颈链路向下游提供。控制系统可以包括会话速率限制计算器,该会话速率限制计算器被配置为计算多个自适应流式传输媒体会话中的给定会话的会话速率限制,该会话速率限制基于瓶颈链路的控制参数和状态信息而变化。会话速率限制器可以被配置为控制给定会话的比特率,该给定会话是通过瓶颈链路基于会话速率限制以提供给定会话的相应经速率限制的下游流量来向下游提供的。相比于被用来更新瓶颈链路的控制参数和状态信息中的至少一个的时间尺度,对给定会话的比特率的控制可在不同时间尺度上执行。
示例实施例
图1描绘了可以实现网络流量(例如,通过网络被传输并且馈入这样的网络中的瓶颈链路的网络流量)的速率限制的系统10的示例。如本文中所使用的,因此,瓶颈链路指网络中的点或位置,一个或多个数据流通过该点或位置进行传递用于向一个或多个客户端通信流式传输媒体。一旦客户端都升档至足够高的比特率,瓶颈链路上流动的下游流量可足以驱使瓶颈链路进入拥塞。
作为示例,因此,基于网络的自适应速率限制可以在网络节点(例如,路由器或交换机)12上实现,该网络节点12充当承载下游方向(例如,从网络到客户端)中的许多自适应流式传输会话的流量的瓶颈链路的入口。多个数据流的流量在本文中也被称为会话。节点12被配置为提供一个或多个这样的会话的经速率限制的相应下游流量。此外,如本文中所使用的,给定会话可以对应于一个或多个协议连接,例如根据传输控制协议(TCP)。作为进一步的示例,本文所公开的示例中的每一个可以对应于超文本传输协议(HTTP)通信协议,例如本文所公开的示例中的每一个针对流式传输媒体可以通过TCP来通信(例如,根据HTTP/TCP来通信)。在另一示例中,每个会话的请求和响应可以根据SPDY协议来通信 (例如,根据HTTP/SPDY/TCP来通信)。在又一示例中,快速UDP互联网连接(QUIC)可以被用作用于传输会话的传输层网络协议(例如,根据HTTP/SPDY/QUIC来通信)。也可以利用其他协议。在一些示例中,会话可以包括用于从内容传送网络向一个或多个相应的下游客户端传送流式传输视频的HTTP自适应流式传输(HAS)会话。
如本文所公开的,系统10通过调整每个活跃会话的每会话比特率限制来实现基于每个会话的自适应速率限制,从而促进并且使得自适应会话客户端能够做出稳定的速率选择并且提升整体用户体验。如本文所使用的,速率限制可以包括流量监管、流量整形(shaping)、或它们的组合。监管和整形可以被应用至任意网络协议。
在图1的示例中,系统10包括流量监测器14,该流量监测器14被配置为监测网络流量并且接收相关参数。流量监测器14可以提供网络的软件配置信息,例如包括瓶颈链路状态信息16以及每会话状态信息18。例如,瓶颈链路状态信息16可以包括指示由节点12在下游方向上驱使的瓶颈链路的目标带宽的值。瓶颈链路状态信息16还可以包括活跃的下游会话的聚合权重值的指示。因此,瓶颈链路状态信息16可以包括关于瓶颈链路的状态的信息以及与网络流量相关联的聚合信息(包括关于相应会话的聚合信息)。
会话状态信息18可以针对多个会话中的每一个会话被提供。这可以包括活跃会话以及非活跃会话。在其他示例中,非活跃会话的数据可以被移除。作为示例,对于每个会话,会话状态信息18可以包括会话标识符、分配至会话的权重值、以及其他相关会话信息(例如,指示会话是活跃或非活跃的状态值、对应于会话的通过下游瓶颈链路发送的最后分组的时间戳)。
如本文所公开的,瓶颈链路状态信息和会话状态信息可以由流量监测器基于监测通过这样的链路的流量来提供。除了流量监测器14的活跃网络流量监测功能,流量监测器可以包括控制器(未示出),该控制器被配置为接收软件配置参数,例如包括目标带宽和分配至相应会话的权重值的指示。因此,流量监测器14可以包括一个或多个计算器,该一个或多个计算器基于它接收到的配置信息来计算其他流量相关的参数。例如,由于每个会话的状态信息18可以包括相应的会话权重值,因此瓶颈链路状态信息16中的总权重值可以从被分配给多个活跃会话中的每一个活跃会话的单独状态信息中得出。流量监测器14还可以做出会话是否是活跃的确定。
会话速率限制计算器20被配置为基于瓶颈链路状态信息16和给定会话的会话状态信息18来计算多个活跃流式传输媒体会话中的给定会话的会话速率限制。会话速率限制器22被配置为基于由计算器20计算的速率限制来提供经速率限制的下游会话流量。可以根据不同速率限制技术来实现会话速率限制器22,例如速率限制技术可以包括流量监管、流量整形、或整形功能和监管功能的组合。如本文所公开的,取决于用于针对多个活跃流式传输媒体会话中的每一个实现相应的速率限制的会话数量,可以分别存在任意数量的速率会话计算器20和会话速率限制器22。每个会话的经速率限制的下游流量可以被聚合并且被提供至用于通过瓶颈链路进行发送的传输队列。应当理解和明白的是,速率限制系统10可以在给定节点 12之内被实现为硬件、存储在非暂态计算机可读介质中的可执行指令、或硬件与可执行指令的组合。自适应速率限制方法因此可以减轻失速 (stall)、提升视频质量、并且提升流式传输视频媒体的稳定性。
图2描绘了可以在通过通信网络的瓶颈链路来馈入数据的节点处被实现的速率限制系统50的示例。速率限制系统50被配置为根据给定传输协议来接收下游会话流量,并且向用于馈入多个下游客户端的瓶颈链路提供相应的经速率限制的下游流量。速率限制系统50当被应用于对如下下游流量进行速率限制时具有特别效用,所述下游流量被提供至多个HTTP自适应流式传输(HAS)客户端作为相应流式传输媒体会话。在这样的示例中,HAS客户端可以通过针对所请求的流式传输媒体在不同编码方式之间切换来竞争可用带宽。如本文所公开的,自适应速率限制系统50可以基于与每个活跃流式传输会话相关联的状态信息和与瓶颈链路52相关联的状态信息,来动态地计算各个流式传输会话的速率限制。系统50可以转而根据所计算的各个相应会话的速率限制来调整各个相应活跃流式传输会话的下游比特率。
在图2的示例中,系统50包括控制系统54,该控制系统54被配置为控制在调整速率限制中利用的速率限制参数。系统50还可以包括存储器 56,该存储器56可以存储多个会话60中的每一个会话的会话数据58(在会话1到会话N处所指示的,其中N是正整数)。控制系统54可以执行相应的功能(例如,计算器和控制回路),该相应的功能可以被利用来更新各个相应会话60的会话数据。控制系统54还可以包括被配置为确定瓶颈数据62的功能和方法。
各个相应会话的会话数据可以包括与各个相应会话的标识和操作相关联的参数。例如,这样的会话数据可以包括会话标识符(ID)、会话权重值、会话速率限制r[i](其中i表示给定会话)、以及可以在实现系统50 的速率限制中被利用的其他会话状态信息。控制系统54可以被实现为包括一个或多个处理核心、算术逻辑单元、或可以访问和执行相应指令(例如,从存储器)从而控制和处理用于执行系统50的会话速率限制的会话相关数据的其他设备。
控制系统54可以包括流量监测器64,该流量监测器64被配置为监测被提供至实现了系统50的节点的聚合下游流量。流量监测器64可以包括被配置为接收网络参数的控制器65,该网络参数可以由控制系统利用以实现速率限制。例如,网络参数可以包括对所有下游会话是可用的目标带宽、以及每个活跃会话的相应权重值、以及可以由网络的其他部分建立的其他参数。
此外,流量监视器64可以包括分组分类器66,该分组分类器66可以被用来监测分组报头并且确定给定分组属于哪个会话。例如,分组分类器可以被编程以检测给定连接的源地址、给定连接的目的地地址、或与接收到的下游流量相关联的相应端口信息。
流量监测器64还可以包括被配置为确定给定会话是否活跃的非活跃连接检测器68。在一些示例中,非活跃连接检测器可以作为后台进程周期性地运行,从而检测非活跃会话和活跃会话并且相应地更新相应会话数据 58。作为示例,如果最后传输的时间加上预定的超时常数超过当前时间戳值,则可以确定存在非活跃连接。超时常数可以被设置为控制活跃连接在它被认为是非活跃之前必须保持空闲的时间的值。例如,当前时间戳值可以由定时控制功能70来维护。会话活跃状态(针对给定连接是活跃的或是非活跃的)可以作为给定会话60的会话数据58的一部分来存储。
如本文所使用的,给定会话可以包括一个或多个连接,例如TCP连接。因此,流量监测器64可以被配置为将多个相关的TCP连接分组到单一会话,例如基于TCP连接的目的地地址。例如,在目的地地址对应于单一家庭或家庭之内的单一管理的机顶盒的情况下,对应于多个TCP连接的数据分组可以被分组到单一下游会话。将被利用的下游分组中的特定报头参数可以取决于由下游客户端正在利用的特定接入网技术。在上述两种情况中的任一种情况下,自适应速率限制系统50可以被实现为在不采用深度分组检查的情况下动态地计算给定会话的速率限制值。
控制系统54还包括权重分配功能72,该权重分配功能72被配置为分配权重值w[i],该权重值w[i]可以作为每个会话60的会话数据58中的每会话权重值来存储。例如,每个会话的权重值可以是指示将被分配至各个相应会话的与其他活跃会话相比的相对带宽份额的正实数。权重值可以针对每个会话是预定的固定值,或它可以作为变量值被计算。例如,为了向所有会话提供相等份额的带宽,所有会话权重值可以被设置为相同值(例如,1.0)。或者,可以通过针对不同会话设置不等权重值来实现不等份额的带宽。权重分配功能72可以基于来自上游设备(例如,电缆中心局) 的数据或基于从下游客户端提供的信息来分配权重。
例如,不同的每会话权重值w[i]可以根据服务级别协议被设置,例如为了实现多个不同级别的服务(例如,金级具有比银级更高的权重,银级具有比铜级服务更高的权重)。服务的级别针对订户可以是固定的,或它可以根据流式传输媒体的请求进行改变。作为另一示例,由给定自适应发起的针对流式传输媒体的请求可以指定服务级别(例如,最小分辨率),可以基于播放器或设备的能力、或响应于手动指定期望的分辨率的用户输入来自动地指定服务级别。
在一些示例中,权重分配功能72可以包括计算器74,该计算器74被配置为计算每个会话的权重值,例如基于可以共同地被用来确定每会话权重值的多个不同参数来计算。例如,在给定会话包括多个会话(例如, TCP连接)的情形下,权重值还可以取决于连接的数量和类型。
作为又一示例,下游客户端可以采用信令来向上游通信数据,基于此,权重分配功能72可以确定各个相应会话的相应权重。信令可以与针对流式传输媒体的请求一起同时地被提供,或它可以在流式传输期间动态地被提供,例如从而实现流式传输期间的附加速率限制调整。
计算器74还可以计算当前活跃媒体会话的聚合权重,该聚合权重可以作为瓶颈数据62的一部分被存储为瓶颈数据62中的总活跃权重76。此外,响应于检测非活跃会话(例如,通过非活跃连接检测器68),计算器 74可以通过从瓶颈链路的当前总活跃权重值减去非活跃会话的权重值来更新总活跃权重值76。以这种方式,速率限制可以被动态地调整以仅考虑当前活跃的那些会话(例如,由流量监测器64来确定的那些会话)。
瓶颈数据62还可以包括目标带宽(B_target)值78,该目标带宽 (B_target)值78对应于由网络节点经由瓶颈链路52馈入的会话的预期目标带宽。瓶颈链路的目标带宽78可以是由控制系统54接收的并且存储在瓶颈数据62中的经配置的参数。例如,目标带宽78可以是已知的先验,或它可以被作为输入参数(例如,软件配置的数据)来提供,例如,通过路由器或在驻留有速率限制系统50的节点处操作的其他设备来确定。目标带宽78取决于系统50的实现方式可以是固定的或可变的。带宽78可以小于或等于瓶颈链路52处的可用带宽。
会话速率限制计算器82可以基于给定会话60的会话数据和瓶颈数据 62来计算会话速率限制。例如,会话速率限制计算器82可以基于被分配至给定会话的权重w[i]和有效目标带宽(B_target_effective)79来计算会话速率限制。有效目标带宽(B_target_effective)79可以是变量,该变量被确定以控制针对每个活跃会话实际上被允许的带宽量。作为进一步的示例,速率限制r[i]可以被表示为如下:
r[i]=B_target_effective w[i]/total_active_weight 等式1
其中:total_active_weight是所有活跃会话的所有权重值w[i]的总和。
系统50还包括会话速率限制器83,该会话速率限制器被配置为实现对下游会话流量的速率限制。经速率限制的下游会话流量可以与其他经速率限制的会话流量一起被提供至瓶颈链路52。会话速率限制器83可以被配置为实现流量监管和流量整形或任意类似的技术(例如,带宽预留算法或调度算法)中的一个或多个技术。例如,会话速率限制器83可以实现基于速率限制r[i]来实现令牌桶算法从而符合下游流量的比特率。虽然图2 的示例示出了给定速率限制计算器82和与给定会话相关联的会话速率限制器83,但是系统50可以包括任意数量的速率限制计算器和会话速率限制器以提供各个相应会话的相应经速率限制的下游会话流量。此外,虽然速率限制器83被示出为处于图2的示例中的控制系统54的外部,但是在其他示例中,每个会话的速率限制器可以被实现为控制系统的一部分(例如,单独的硬件和/或软件)。
在一些示例中,速率限制器83可以被配置为根据实际带宽利用率、基于控制一个或多个控制参数(例如,包括等式1中的 B_targe_effective)来改变速率限制r[i]。因此,控制系统54可以包括被配置为计算瓶颈链路的B_target_effective 79的带宽目标控制器(B目标控制器)84。例如,带宽目标控制器84可以调整B_target_effective,从而使得瓶颈链路的经测量的吞吐量接近针对该瓶颈链路建立的目标带宽(例如,B_target)78。如上所述,目标带宽78可以是建立期望由所有活跃会话使用的总带宽的输入参数。
例如,因为一些客户端不具有呈现高分辨率内容所要求的屏幕分辨率或CPU功率,所以这些客户端可能不使用它们的全部带宽份额。可替代地或此外,一些客户端可能正在观看较高编码速率不可用的内容(例如,SD 内容相对于HD内容)。大多数现有流式传输媒体播发器在它们尝试使用比它们估计的可用带宽小的带宽的情况下是“保守”的。这样做是为了避免升档至更高速率,升档至更高速率在网络吞吐量略有下降的情况下将不可持续。在客户端可能未充分利用可用带宽的情况下,带宽目标控制器84 允许可以使用更多带宽的客户端(例如,HD客户端)要求获得(claim) 其他客户端(例如,SD客户端)没有正在利用的额外带宽(例如,该额外带宽“留在表中”)。
带宽目标控制器84可以包括针对带宽测量数据80执行时间平均的时间平均滤波器86,例如带宽测量数据80可以被存储在瓶颈数据中。例如,实现系统50的节点可以被配置为在瓶颈链路52处测量带宽,并且提供带宽的相应度量。定时控制功能70可以控制时间平均滤波器86,从而使得由滤波器86平均的带宽测量的时间窗口长于相应流会话的片段大小。这可以帮助确保由带宽目标控制器84使用的带宽测量80足以滤除当相应的客户端处于稳定的操作状态时倾向于发生的自适应比特率流量的开/ 关模式。
带宽目标控制器84还可以包括带宽目标调整控制88,该带宽目标调整控制88被配置为动态地调整有效目标带宽(例如,来自等式1的 B_targe_effective从而允许下游自适应比特率流式传输客户端以稳定的方式运行。带宽目标调整控制88可以基于所建立的目标带宽B_target 78 和时间平均带宽测量80来调整B_target_effective 79,其中时间平均带宽测量80对应于针对瓶颈链路52上的所有活跃媒体会话测量的聚合带宽的移动平均。在一些示例中,例如,带宽目标控制器84可以将经调整的有效目标带宽设置为大于或等于预定目标带宽(B_target)参数78。由于带宽时间平均带宽测量将随着时间改变,因而带宽目标控制器84的带宽目标调整控制88可以实现闭环反馈控制,其中有效目标带宽(例如,来自等式1的B_target_effective)被调整从而使得时间平均的带宽测量80尽可能保持接近所建立的目标带宽B_target 78。例如,带宽目标控制器84可以实现其闭环反馈控制以根据各种不同的控制范例(例如,包括比例控制、比例积分(PI)控制、比例-积分-微分(PID)控制、积分控制(I)、或和式增加积式减小(AIMD)控制)中的任一个来调整目标带宽。
在一些示例中,例如在B目标控制器84被配置为适应时间带宽利用率的情况下,权重分配功能72可以被配置为将一定程度的随机化添加至被分配至每个客户端的权重值。通过稍微随机化权重值,速率限制计算器 82将向经计算的速率限制注入一些随机性。因此,每个会话将接收稍微不同份额的目标带宽,甚至是在会话被提供至实现相同或基本上类似的自适应流式传输算法的客户端的情况下。因此,随机化可以通过减轻相等配置的客户端可能以其他方式共同升档或降档的情况来增加稳定性。
作为示例,被分配至每个会话的权重值w[i]可以由作为乘数项J(i,t)的抖动函数来修改,其中i是会话的索引,t是时间。因此,权重分配功能 72可以采用计算器74来用随机化的权重函数w’(i,t)计算每个会话(或所选择的会话的子集)的带宽份额,w’(i,t)可以替代针对各个会话的等式1 的会话权重值w[i]。随机化的权重函数的示例可以是如下:
w′(i,t)=J(i,t)*w[i] 等式2
在针对这个目的选择抖动函数J(i,t)时,下列情况可以被维持:
1.对于任意固定值t和允许i随着所有客户端变化,J(i,t)具有接近1.0 的均值并且分布在大约1.0的范围,该范围足以防止客户端中的升档和降档决定的同步;
2.对于固定的i和变化的t,J(i,t)仅随着时间缓慢地变化(比片段时间更慢);以及
3.对于固定的i和变化的t,经过很长一段时间被平均的J(i,t)接近于 1.0。
第一种情况可以减轻其他类似客户端之间的同步。第二种情况可以帮助确保客户端自适应算法(其将低通滤波器有效地应用至经测量的带宽) 有足够的时间在缓慢变化的可用带宽改变之前来调整到该缓慢变化的可用带宽。最后一种情况可以帮助确保通过足够长的一段时间,每个会话接收与它被分配的会话权重值w[i]相当的平均分额的带宽。
可以是J(i,t)的合适选择的一个示例抖动函数可以被表示为如下:
J(i,t)=1+A*sin(p[i]+2*π*t/Z) 等式3
其中:
A是抖动效应的幅度。例如,0<A<0.5;
Z是每个客户端的抖动效应的周期。例如,Z>120秒;
p[i]是可以被随机选作给定客户端i的相位的常数。例如, 0<=p[i]<2*π。
J(i,t)函数的许多其他示例公式可以被实现以对上面所描述的方法产生类似的结果。
如上所述,定时控制功能70被配置为以促进下游自适应流式传输客户端(例如,HAS客户端)的操作的方式来控制调整和测量值。例如,带宽目标调整控制88可以减小有效目标带宽以在与给定媒体会话的片段大小相当的或小于给定媒体会话的片段大小的时间尺度上发生。如果瓶颈链路52的时间平均的经测量的带宽小于相应的目标带宽,则带宽目标调整控制88可以增加在计算多个流式传输会话中的每一个的速率限制r[i] 中使用的有效目标带宽79。有效目标带宽的增加可以被控制(例如,由带宽目标调整控制88)在至少等于或大于给定流会话的片段大小的时间尺度上发生。
应当理解和认识到的是,片段大小可以取决于传输协议和由每个客户端实现的自适应流式传输功能而变化。作为示例,片段时间通常在大约两秒到大约十秒间变化。即使对有效目标带宽值79的调整可以针对与片段大小相关的时间尺度上发生,会话速率限制器83可以按照更快的尺度来动态地执行速率限制,例如,大约小于或等于给定TCP连接的往返时间 (例如,大约100毫秒)。这帮助确保每个自适应比特率客户端的吞吐量保持对由会话速率限制计算器82计算的相应会话速率限制r[i]的精确估计。因此,自适应比特率客户端可以选择接近于其经计算的会话速率限制 r[i]的编码速率。速率计算器和速率限制器20和22针对确定经测量的带宽、增加目标带宽、减少目标带宽、和执行经计算的速率限制中的至少一些还可以采用不同的时间尺度。不同的时间尺度可以被选择以减轻不同流式传输会话的比特率自适应功能之间的竞争。
图3描绘了系统100的示例,其中系统100被配置为将共同馈入瓶颈链路102的经自适应速率限制的流量与高速数据流量相组合。系统100可以被设想为网络的节点,并且可以被在给定网络的多个节点处实现。在一些示例中,节点可以是网络系统中相应的边缘节点。
在图3的示例中,系统100包括自适应速率限制系统104。自适应速率限制系统104可以被配置为通过自适应地速率限制如在106所示出的一个或多个流式传输媒体会话(例如,HAS会话)进行操作,例如本文所公开的(参见,例如,图1、2、和5)。因此,针对关于自适应速率限制系统104的附加细节可以参考图1、图2和/或图5。简而言之,每个自适应流式传输会话106被提供至单独的会话速率限制器(SRL)108。每个自适应流式传输会话106可以包括一个或多个相关联的TCP连接。控制系统 109被配置为动态地设置各个相应会话速率限制器的比特率限制r[i],从而提供相应的速率限制的会话数据110。例如,控制系统109可以接收输入数据(例如,软件配置的参数),例如可以包括目标带宽和会话权重,这些被用于设置速率限制。总的来说,自适应速率限制系统104操作以使得自适应流式传输会话的总吞吐量接近目标带宽。如所提到的,目标带宽可以是固定的或可变的(例如,有效目标带宽可以基于带宽的时间平均度量被调整,例如关于图2所公开的)。每个会话速率限制器108可以将它的经速率限制的会话数据110提供至单一的共享的队列114。在一些示例中,队列114可以被分配有保证带宽(例如,接近或超过带宽目标的承诺信息速率(CIR))。这个保证带宽确保当每个会话由它相应的速率限制器108单独地进行速率限制时,它将不与队列基础设施(对应于队列114 和队列调度器120)之内的其他会话竞争。
系统100还包括接收高速数据(HSD)流量118的一个或多个队列 116,该高速数据流量118可以包括任意类型的数据流量。队列调度器120 被连接以从队列114接收聚合速率限制的会话流量并且从HSD队列116接收HSD流量。因此,调度器120向瓶颈链路102提供数据流量,该数据流量可以包括速率限制的聚合会话数据和HSD流量。例如,在已经满足自适应流式传输流量的队列114的保证带宽的前提下,每个队列116可以将流量馈入瓶颈链路102。每当不超过带宽目标(例如,基于图2的带宽测量80)或每当队列114是空的时,这可以发生。当带宽目标和队列114的保证带宽被故意设置为低于瓶颈链路102的带宽容量从而确保队列116总能向链路102馈入一定水平的流量时,这也可以发生。
作为示例,保证带宽可以是CIR=B_target。虽然通常针对HSD没有预留带宽,但是HSD队列116可以被配置为与HAS流量的队列114相比要求获得相对高份额的可用超额带宽(例如,设置为高超额信息速率 (EIR)值)。例如,EIR值取决于瓶颈链路102在给定时刻的可用带宽,来允许超过CIR的爆发数据。在没有可用的HAS数据被发送的情况下,调度器120可以被配置为朝着保持瓶颈链路充满HSD数据的方向来工作。其他调度方案也可以被使用(例如,由服务提供商设置),例如根据可以是固定的或随着时间变化的下游用户要求。
图4描绘了被配置为实现自适应速率限制的网络系统150的示例。网络系统150可以被实现为各种网络中的任一个,例如本示例中的电缆接入网系统。在图4的示例中,网络系统150包括对应于边缘路由器的节点,该边缘路由器被示出为电缆调制解调终端系统(CMTS)152。CMTS 152 可以通过网络154被连接至多个订户(例如,每个订户包括用户驻地设备 (CPE))156。CMTS 152可以被配置为向订户156提供诸如电缆互联网、互联网协议语音(VOIP)、和其他媒体服务之类的网络服务。例如, CMTS 152可以被配置为根据电缆数据服务接口规范(DOCSIS)网络标准中的一个进行操作。
在一些示例中,网络154可以被实现为混合光纤同轴(HFC)电缆接入网。CMTS 152还可以被配置为将订户156连接至上游广域网158(例如,公共互联网、公共交换电话网、或专用内联网)以用于提供相应的网络服务。在一些示例中,网络服务可以包括流式传输媒体,例如被提供至在订户156处操作的一个或多个HAS客户端的会话。因此,CMTS可以作为网络系统150中的多个网络服务订户156的服务流引擎来进行操作。 CMTS 152还可以被耦合至各种附加网络组件和资源(未示出),例如策略服务器、配设系统、和/或其他服务提供商组件,它们可以驻留在上游网络158中。
CMTS 152可以包括分别用于相对于订户156向下游和向上游传输信号的正向路径电子装置160和反向路径电子装置162。因此,反向路径 162可以接收由每个订户156放置在网络154上的信号,并且控制它们到上游网络158的进一步传输。正向路径160可以控制在下游方向中被提供至每个订户的信号(例如,使用TCP)。
在图4的示例中,正向路径160包括自适应速率限制系统164、发送器166和控制器控制引擎168。自适应速率限制系统164可以被配置为自适应地对一个或多个流式传输媒体会话(例如,HAS会话)进行速率限制,例如根据本文所公开的方法中的任一个(例如,参见图1、2、和5) 进行。简要地说,自适应流式传输流量通过上游网络(例如,从服务提供商)进入CMTS 152。给定流式传输会话的流量(其可以包括一个或多个 TCP连接)被分组在一起并且被提供至相应的自适应速率限制的会话 170。每个会话170被配置为计算每个会话的比特率限制,并且基于所计算的速率限制来执行速率限制从而向输出系统(例如,用于序列化会话数据的缓冲区或输出队列)172提供相应的经速率限制的会话数据。发送器 166可以向链路(例如,瓶颈链路)174发送经速率限制的会话数据以向下游分发至订户156。
如本文所公开的,每个会话170可以包括会话速率限制计算器(例如,图1的计算器20或图2的计算器82),以基于给定会话的状态信息和下游瓶颈链路174(流式传输媒体会话被提供至该下游瓶颈链路174) 的状态信息来计算多个活跃流式传输媒体会话中的给定会话的会话速率限制。会话170还包括速率限制器(例如,图1的速率限制器22或图2的速率限制器83),该会话速率限制器基于所计算的会话速率限制值r[i]来控制给定会话的下游流量,并且提供给定会话的相应的经速率限制的下游流量。速率限制计算和相关的控制可以在不同于由速率限制器实施的对速率限制的调整的时间尺度上进行操作。此外,状态信息可以被用来基于下游链路带宽的时间平均的测量(例如,由CMTS 152执行)来动态地调整链路174的有效目标带宽。自适应速率限制系统164可以执行其他功能来控制速率限制,例如本文所公开的(参见,例如,图1、图2、和图5)。
正向路径控制引擎168可以被配置为控制正向路径的操作,例如可以包括设置自适应速率限制系统164的操作参数。操作参数可以包括自适应速率限制系统164的带宽目标、每个流式传输媒体会话的权重参数、和用于实现相应控制功能的时间尺度。例如,操作参数可以响应于从中心局 (例如,通过授权的管理员)接收到的控制指令而被设置。此外或可替代地,操作参数可以基于在相应的订户156处做出的请求而被设置。
作为又一的示例,在下游方向通过CMTS 152发送的每个分组可以被分配至服务流(SF)。SF表示经受共同服务质量(QoS)处理的被发送至单个电缆调制解调器(CM)的分组的聚合。应用于服务流中的分组的 QoS处理可以包括速率限制(例如,流量监管和/或流量整形)并且包括将分组分配至输出队列。分组到SF的映射可以是基于将所选择的字段(例如,源IP地址、源端口、目的地IP地址、目的地端口中的一个或多个) 与匹配滤波器列表(例如,通过分组分类器66)进行匹配,其中第一匹配确定服务流分配。
在给定HAS会话被分配它自己的服务流的情况下,作为可能的情况,例如,当HAS客户端处于管理的机顶盒设备上时,服务流分配可以直接映射至由自适应速率限制系统164使用的附加每会话状态数据(例如,图2的会话数据58)。此外,由于CMTS中的服务流可以被配置为经过速率限制器(例如,流量监管),因此这样的速率限制还映射至正常的 CMTS操作。
如上所述,自适应速率限制系统164或CMTS(例如,或其他边缘路由器)152的其他功能可以被配置用于总活跃权重的全局跟踪以及将r[i]值用作每个会话的速率。自适应速率限制系统164可以被实现为硬件、可执行指令(例如,软件、微代码、或固件)、或硬件和可执行指令的组合。在速率限制操作以可执行指令来实现的平台中,自适应速率限制可以被实现为在处理核心上执行的指令。例如,控制引擎168可以将非活跃连接的检测作为后台进程来执行。在速率限制在硬件中被实现的平台中,有可能通过周期性地更新控制平面中的每个单独的速率限制器上的速率限制来实现自适应速率限制(例如,监管或整形)。
在图4的示例中,订户156可以包括CPE,例如包括网关180和提供家庭网络的设备。网关180可以被配置为与一个或多个客户端182(被示出为客户端1到客户端P,其中P是表示相应家庭网络184中的客户端数量的正整数)进行通信。在一些示例中,给定订户156的每个客户端182 可以对应于CPE。如本文所公开的,每个客户端182还可以被配置为针对采用经选择的编码比特率的流式传输多媒体(例如,MPEG视频)实现 http自适应比特率流式传输功能186。因此,在给定家庭网络之内,多个自适应流式传输客户端182可以同时存在,因此在由网关180在下游方向中馈入客户端182的相应瓶颈链路194处竞争带宽。每个客户端182可以在网络184中通过物理连接(例如,导电连接或光纤)和/或通过无线连接 (例如,根据一个或多个IEEE 802.11x或其他无线标准)被连接。网关 180还可以包括调制解调器(例如,电缆调制解调器)186和网关控制器 187。网关控制器187可以被配置为控制网关的操作,包括正向路径通信和反向路径通信两者以及设置操作的参数。
为了帮助提高用户体验的稳定性和质量,网关180可以包括自适应速率限制系统188。自适应速率限制系统188可以包括相应的会话速率限制器190。每个会话速率限制器190被配置为动态地设置每个会话的比特率限制,从而将相应的经速率限制的会话数据提供至输出系统192。输出系统192可以使来自会话速率限制器108的会话数据排队并且将经速率限制的会话数据向下游发送至家庭瓶颈链路194以供每个相应的自适应比特率流式传输客户端182使用。自适应速率限制系统188和各个相应会话的单独会话速率限制器可以被配置为根据本文所公开的方法(例如,参见图 1、图2、和图5)进行操作。
为了促进在单个家庭网络184中活跃的多个流式传输媒体会话(例如,HAS会话)的各个会话速率限制,网关180可以包括监测器(例如,图2的监测器64),该监测器被配置为识别每个单独的HAS会话并且通过其相应的SRL 190传递每个会话。例如,在管理的网关的情况下,,这个会话识别信息可以作为管理的网络的控制面的正常功能的一部分自动地被提供。
虽然图4的示例网络系统150示出了两个自适应速率限制系统164和 188,但是在这样的网络中可以存在任意数量的更多或更少的这样的自适应速率限制系统。此外,虽然边缘路由器被公开为CMTS 152并且网络系统150被公开在电缆接入系统的上下文中,但是边缘路由器152和网络系统150在其他示例中可以根据其他接入技术被实现。因此,自适应速率限制系统164和188同样适用于其他类型的网络。
鉴于前面所描述的结构和功能特征,参考图5将能够更好地理解执行基于网络的自适应速率限制的方法。虽然为了简化说明的目的图5的方法被示出和被描述为连续执行,但是应当理解和明白的是,因为一些方面根据本发明可以以不同的顺序发生和/或与来自本文所示出的和所描述的其他方面同时发生,所以本发明不受所示出的顺序限制。此外,根据本发明的一个方面,不是所有示出的特征都被要求用于实现方法。方法或方法的部分可以被实现为硬件、可执行指令(例如,存储在非暂态存储介质中)、或硬件和可执行指令的组合。
图5示出了用于执行自适应速率限制(例如,针对被提供至一个或多个自适应比特率流式传输客户端的自适应流式传输媒体流量(例如,HAS 媒体流量))的方法200的示例。如本文所公开的,方法200可以在提供到网络的瓶颈链路的入口的节点处被执行。方法在202处开始,其中给定会话的权重被设置。权重可以基于从上游节点(例如,根据服务协议设置服务级别的中心局)接收到的管理信息和/或基于从下游客户端接收到的信息而被分配(例如,通过图2的权重分配功能)至给定会话。例如,下游 HAS客户端(例如,图4的客户端182)可以通过信令消息来提供指令以针对给定TCP连接请求特定级别的服务。
在204处,可以确定瓶颈链路状态信息。例如,瓶颈状态信息可以包括瓶颈链路的聚合权重(例如,由图2的权重计算器74确定),例如,该聚合权重对应于每个活跃会话的会话权重(在202处设置的)的总和。瓶颈状态信息还可以包括瓶颈链路的有效带宽目标(例如,由图2的带宽目标控制器84确定)。如本文所公开的,有效带宽目标可以是固定的 (例如,针对瓶颈链路保持恒定而不管会话的数量),或它可以是变化的,例如由下游会话客户端利用的带宽函数(例如,由图2的滤波器86 确定的时间平均的带宽测量)。有效带宽目标可以被设置为小于或等于瓶颈链路处的可用带宽的值(例如,B_target)。
在206处,可以(例如,通过图2的权重计算器74)确定聚合权重。这个参数可以被认为是瓶颈状态信息的一部分,由此在204处被确定。 206处的确定可以(例如,基于由图2的非活跃连接检测器68提供的会话活跃状态信息)被约束为仅包括活跃会话。因此,由于会话状态信息随时间改变,因而产生的聚合带宽值也将相应地改变。相应的带宽利用率也可以随时间改变,这转而可以使得对被用来设置各个相应会话的会话速率限制的有效目标带宽产生调整。
在208处,针对给定流式传输会话(例如,通过图1的会话速率限制计算器20或图2的会话速率限制计算器82)计算会话速率限制。可以针对给定流式传输会话基于相对会话权重(例如,来自206的会话权重/聚合权重)和在204处确定的目标带宽来计算会话速率限制。如本文所公开的 (例如,参见等式1),可以针对多个活跃流式传输媒体会话中的每一个来确定会话速率限制。
在210处,可以基于经计算的会话速率限制来调整(例如,由图2的会话速率限制器83调高或调低)相应的流式传输会话的相应比特率。210 处的调整可以对应于速率限制,该速率限制可以被实现为针对给定流式传输会话的流量监管或流量整形中的一个或多个。例如,会话速率限制可以通过使用令牌桶算法来调整速率从而控制给定流式传输会话的下游流量流。
在212处,每个会话的相应的经速率限制的数据可以通过瓶颈链路被提供(例如,包括多个活跃自适应比特率流式传输会话中的每一个的数据)。在一些示例中,经速率限制的自适应比特率流式传输会话还可以与高速数据流量相混合,例如针对图3所公开的。如果确定速率限制产生未被流式传输会话使用的剩余可用带宽,则该剩余额外带宽可以被分配给高速数据流量。
此外,如本文所公开的,相比于适用于执行经计算的速率限制(210 处)的时间尺度,方法200针对带宽测量、调整目标带宽中的一个或多个 (206处)可以采用不同时间尺度。例如,目标带宽可以在超过时间窗口 (带宽测量的平均在该时间窗口中被执行)的间隔被调整。此外,目标带宽的减少可以在与给定媒体会话的片段大小相当的或小于给定媒体会话的片段大小的时间尺度上发生,而目标带宽的增加可以在大约等于或大于给定媒体会话的片段大小的时间尺度上发生。不同时间尺度可以被控制以实现速率限制,该速率限制提升正在接收不同流式传输会话的潜在地竞争的自适应流式传输客户端(例如,HAS客户端)之间的稳定性。
基于上述情况,应当理解,自适应速率限制方法可以减轻失速、提升视频质量、以及提升流式传输视频媒体的稳定性。本文所公开的方法还可以与现有速率限制器机制(例如,包括流量监管令牌桶算法、流量整形令牌桶算法)一起利用。这样的现有流量控制可以在不要求修改自适应比特率流式传输客户端或与自适应比特率流式传输客户端进行通信的情况下被利用。因此,本文所公开的基于网络的速率限制方法普遍适用于第三方自适应比特率流式传输客户端。
上面已经描述的是示例。当然,不可能描述组件或方法的每一个可想到的组合,但是本领域的技术人员将认识到许多其他组合和排列是可能的。因此,本发明旨在包含落入本申请(包括附加的权利要求)的范围之内的所有这样的改变、修改、和变化。
在本公开或权利要求描述“一”、“一个”、“第一”、或“另一个”元件或它的等价物的情况下,应当理解为,包括一个或多于一个这样的元件,既不要求也不排除两个或更多个这样的元件。如本文所使用的,术语“包括”意味着包括但不限于,术语“包含”意味着包括但不限于。术语“基于”意味着至少部分基于。
Claims (15)
1.一种方法,包括:
将权重分配至多个自适应流式传输媒体会话中的给定流式传输会话,其中所述多个自适应流式传输媒体会话被提供给馈入下游瓶颈链路的网络节点;
基于对所述下游瓶颈链路的带宽的时间平均的测量来控制有效目标带宽,所述有效目标带宽是控制针对每个活跃会话实际上被允许的带宽量的变量;
基于所分配的权重并且基于用于通过所述下游瓶颈链路向所述多个自适应流式传输媒体会话提供流式传输媒体流量的所述有效目标带宽来计算所述给定流式传输会话的速率限制,其中计算所述给定流式传输会话的速率限制还包括:
根据所述经分配的权重相对于被确定为是活跃的所述多个自适应流式传输媒体会话的聚合权重值的函数来计算所述给定流式传输会话的相对权重;以及
将所述相对权重与所述有效目标带宽相乘,从而提供所述给定流式传输会话的速率限制;以及
根据所计算的速率限制来调整所述给定流式传输会话的下游速率。
2.如权利要求1所述的方法,还包括相对于所述多个自适应流式传输媒体会话中的至少一个其他的流式传输会话的权重值,随机化被分配至所述给定流式传输会话的权重。
3.如权利要求1所述的方法,其中,调整所述下游速率包括对所述给定流式传输会话的流量监管或流量整形中的至少一个。
4.如权利要求3所述的方法,其中,所述调制还包括使用令牌桶来控制所述给定流式传输会话的下游流量流。
5.如权利要求1所述的方法,其中,所述平均是在超过用于由自适应流式传输客户端处理媒体片段的时间的时间窗口中执行的,所述自适应流式传输客户端接收所述给定流式传输会话的至少一部分。
6.如权利要求5所述的方法,还包括在超过对所述经测量的带宽执行平均的所述时间窗口的间隔中调整所述有效目标带宽。
7.如权利要求5所述的方法,其中,如果所述下游瓶颈链路的经测量的带宽超过所述下游瓶颈链路的预定目标带宽,则所述方法包括减少所述多个自适应流式传输媒体会话的有效目标带宽。
8.如权利要求5所述的方法,其中,如果所述下游瓶颈链路的经测量的带宽小于所述下游瓶颈链路的预定目标带宽,则增加所述多个自适应流式传输媒体会话的有效目标带宽,
所述增加被控制以在大约等于或大于所述给定流式传输会话的片段大小的时间尺度上发生。
9.如权利要求1所述的方法,还包括根据针对所述多个自适应流式传输媒体会话中的每一个所计算的相应速率限制来执行对所述多个自适应流式传输媒体会话中的每一个的速率限制,从而提供相应的经速率限制的流式传输会话;以及
将所述相应的经速率限制的流式传输会话作为经速率限制的流式传输流量通过所述下游瓶颈链路向下游提供至被配置为接收所述流式传输会话的多个自适应流式传输客户端。
10.如权利要求9所述的方法,还包括将所述经速率限制的流式传输流量与通过所述下游瓶颈链路被提供至所述多个自适应流式传输客户端的其他高速数据流量相混合。
11.如权利要求10所述的方法,还包括:
响应于确定该速率限制产生未被所述多个自适应流式传输媒体会话使用的剩余可用带宽,将所述剩余可用带宽分配给所述其他高速数据流量。
12.一种装置,包括:
权重分配组件,所述权重分配组件被配置为将权重值分配至多个自适应流式传输媒体会话中的给定流式传输会话,其中所述多个自适应流式传输媒体会话被提供给馈入下游瓶颈链路的网络节点
控制系统,所述控制系统被配置为基于对所述下游瓶颈链路的带宽的时间平均的测量来控制有效目标带宽,所述有效目标带宽是控制针对每个活跃会话实际上被允许的带宽量的变量;
会话速率限制计算器,所述会话速率限制计算器被配置为通过以下操作来计算所述多个自适应流式传输媒体会话中的给定会话的会话速率限制:
根据所述经分配的权重相对于被确定为是活跃的所述多个自适应流式传输媒体会话的聚合权重值的函数来计算所述给定流式传输会话的相对权重;以及
将所述相对权重与所述有效目标带宽相乘,从而提供所述给定流式传输会话的速率限制;以及
速率限制器,所述速率限制器被配置为基于计算的会话速率限制来控制所述给定会话的下游流量,并且提供所述给定会话的相应的经速率限制的下游流量。
13.如权利要求12所述的装置,其中,所述控制系统还包括带宽调整控制,所述带宽调整控制被配置为:
如果所述下游瓶颈链路的经测量的带宽超过所述下游瓶颈链路的预定目标带宽,则减少所述多个自适应流式传输媒体会话的有效目标带宽。
如果所述下游瓶颈链路的经测量的带宽小于所述下游瓶颈链路的预定目标带宽,则增加所述多个自适应流式传输媒体会话的有效目标带宽。
14.如权利要求12所述的装置,还包括流量监测器,所述流量监测器被配置为识别多个相关的传输控制协议连接的流式传输数据分组,并且对所述多个相关的传输控制协议连接的流式传输数据分组进行分组从而提供所述给定会话。
15.如权利要求12所述的装置,
其中,所述会话速率限制计算器还包括用来计算所述多个自适应流式传输媒体会话中的每一个的相应会话速率限制的多个速率限制计算器;
其中所述速率限制器还包括多个速率限制器,所述多个速率限制器基于针对所述多个自适应流式传输媒体会话中的每个相应的自适应流式传输媒体会话所计算的相应速率限制来调整所述多个自适应流式传输媒体会话中的每一个的会话比特率,并且提供相应的经速率限制的流式传输会话;以及
所述相应的经速率限制的流式传输会话被作为经速率限制的流式传输流量通过下游瓶颈链路来提供至被配置为接收所述流式传输会话的多个自适应流式传输客户端。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/024,210 US9521177B2 (en) | 2013-09-11 | 2013-09-11 | Network-based adaptive rate limiting |
US14/024,210 | 2013-09-11 | ||
PCT/US2014/051084 WO2015038277A1 (en) | 2013-09-11 | 2014-08-14 | Network-based adaptive rate limiting |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105531968A CN105531968A (zh) | 2016-04-27 |
CN105531968B true CN105531968B (zh) | 2019-05-10 |
Family
ID=51429405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480049984.0A Expired - Fee Related CN105531968B (zh) | 2013-09-11 | 2014-08-14 | 基于网络的自适应速率限制方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9521177B2 (zh) |
EP (1) | EP3044918B1 (zh) |
CN (1) | CN105531968B (zh) |
WO (1) | WO2015038277A1 (zh) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10212049B2 (en) | 2013-03-14 | 2019-02-19 | Time Warner Cable Enterprises Llc | Apparatus and methods for managing service delivery telemetry |
US10171607B2 (en) * | 2014-03-28 | 2019-01-01 | Time Warner Cable Enterprises Llc | Apparatus and methods for managing quality of experience during the delivery of content |
US9654483B1 (en) * | 2014-12-23 | 2017-05-16 | Amazon Technologies, Inc. | Network communication rate limiter |
JP6485865B2 (ja) | 2015-05-15 | 2019-03-20 | 日本電気株式会社 | 配信制御装置、中継装置、配信システム、配信制御方法、及びプログラム |
CN105099936B (zh) * | 2015-08-31 | 2018-10-12 | 联想(北京)有限公司 | 一种网络资源配置方法、设备和网络系统 |
US9794985B1 (en) * | 2015-09-30 | 2017-10-17 | The Directv Group, Inc. | Method and system for applying quality of service policies to communication signals communicated to non-deep packet inspection devices |
TWI587676B (zh) * | 2015-10-21 | 2017-06-11 | 瑞昱半導體股份有限公司 | 傳輸裝置及其傳輸方法 |
CN107196877B (zh) * | 2016-03-14 | 2021-07-20 | 华为技术有限公司 | 网络流量控制的方法及其网络设备 |
CN108432194B (zh) * | 2016-04-28 | 2022-02-25 | 华为技术有限公司 | 一种拥塞处理的方法、主机及系统 |
US10523451B2 (en) * | 2016-07-07 | 2019-12-31 | Telefonaktiebolaget Lm Ericsson (Publ) | System, apparatus, and method providing data cap avoidance |
US9888278B2 (en) * | 2016-07-07 | 2018-02-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Bandwidth and ABR video QoE management based on OTT video providers and devices |
US10404541B2 (en) * | 2016-07-07 | 2019-09-03 | Ericsson Ab | Smart data cap avoidance with personalized predictions based on linear regression or historical usage alpha-generation patterns |
US10104413B2 (en) | 2016-07-07 | 2018-10-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Bandwidth and ABR video QoE management based on OTT video providers and devices |
US10986152B2 (en) * | 2016-12-29 | 2021-04-20 | Arris Enterprises Llc | Method for dynamically managing content delivery |
US11190973B2 (en) * | 2017-03-06 | 2021-11-30 | Intel Corporation | Technologies for link-bandwidth-aware routing |
US10819651B2 (en) | 2017-03-08 | 2020-10-27 | Arris Enterprises Llc | Excess bitrate distribution based on quality gain |
US10362080B2 (en) | 2017-04-25 | 2019-07-23 | At&T Intellectual Property I, L.P. | Methods, systems, and devices for video streaming adaptation using control theoretic approach |
US10652166B2 (en) * | 2017-06-27 | 2020-05-12 | Cisco Technology, Inc. | Non-real time adaptive bitrate recording scheduler |
CN107342848B (zh) * | 2017-08-24 | 2020-05-01 | 杭州联吉技术有限公司 | 一种自适应码流传输方法、装置及设备 |
US10922091B2 (en) * | 2017-08-29 | 2021-02-16 | Hitachi, Ltd. | Distributed realtime edge-core analytics with feedback |
CN107635144A (zh) * | 2017-10-25 | 2018-01-26 | 暴风集团股份有限公司 | 服务器输出流量限速方法、装置、服务器及dns系统 |
EP3791619B1 (en) | 2018-05-09 | 2022-08-03 | Telefonaktiebolaget LM Ericsson (publ) | Core network node, user equipment and methods in a packet communications network |
EP3794802A4 (en) * | 2018-06-06 | 2021-05-19 | Huawei Technologies Co., Ltd. | SYSTEM AND PROCEDURES FOR CONTROLLING ADMINISTRATIVE OPERATIONS AND SHARED STORAGE SPACE FOR A CLOUD COMPUTING CLOUD COMPUTING |
US10728180B2 (en) | 2018-08-21 | 2020-07-28 | At&T Intellectual Property I, L.P. | Apparatus, storage medium and method for adaptive bitrate streaming adaptation of variable bitrate encodings |
CN109067665B (zh) * | 2018-09-25 | 2022-01-11 | 华为技术有限公司 | 拥塞控制方法和网络设备 |
CN111835682B (zh) * | 2019-04-19 | 2021-05-11 | 上海哔哩哔哩科技有限公司 | 连接控制方法、系统、设备及计算机可读存储介质 |
WO2020229905A1 (en) * | 2019-05-14 | 2020-11-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Multi-timescale packet marker |
CN110266619B (zh) * | 2019-07-03 | 2021-06-04 | 电子科技大学 | 一种反射通信传输系统的用户活跃度检测方法 |
US11301362B1 (en) * | 2019-11-27 | 2022-04-12 | Amazon Technologies, Inc. | Control system for distributed load generation |
US11652722B2 (en) * | 2020-06-19 | 2023-05-16 | Apple Inc. | High frequency probing for network bandwidth estimation using video data in real-time video conference |
CN112188239B (zh) * | 2020-09-30 | 2022-12-20 | 中国联合网络通信集团有限公司 | 音视频流传输方法、媒体服务器及无线接入网络实体 |
CN112787950B (zh) * | 2021-01-28 | 2022-07-12 | 西安交通大学 | 一种公平网络流量管控方法及装置 |
US20220368747A1 (en) * | 2021-05-11 | 2022-11-17 | Siden, Inc. | Method And System For Delivering Real-Time Content Using Broadcasting And Unicasting |
US11706104B2 (en) * | 2021-06-15 | 2023-07-18 | Cisco Technology, Inc. | Inferring quality of experience (QoE) based on choice of QoE inference model |
US12204933B2 (en) * | 2021-07-30 | 2025-01-21 | Stripe, Inc. | Asynchronous statistic-based rate limiting in distributed system |
CN115834482A (zh) * | 2021-09-14 | 2023-03-21 | 中兴通讯股份有限公司 | 视频流的处理方法、装置、服务器和存储介质 |
CN114285849A (zh) * | 2021-12-21 | 2022-04-05 | 中国电信股份有限公司 | 限流状态的调整方法和装置、存储介质及电子装置 |
US20230216835A1 (en) * | 2021-12-30 | 2023-07-06 | Content Square SAS | Masking private information while streaming a live session |
CN115022684B (zh) * | 2022-05-27 | 2023-08-04 | 西安交通大学 | 一种quic协议下基于深度强化学习的视频流自适应传输方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102498715A (zh) * | 2009-05-19 | 2012-06-13 | 宝美瑞思网络有限公司 | 带宽回收用受管理自适应比特率的方法、装置及计算机可读介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7453801B2 (en) | 2001-11-08 | 2008-11-18 | Qualcomm Incorporated | Admission control and resource allocation in a communication system supporting application flows having quality of service requirements |
US7477653B2 (en) | 2004-12-10 | 2009-01-13 | Microsoft Corporation | Accelerated channel change in rate-limited environments |
US7665113B1 (en) | 2007-05-24 | 2010-02-16 | TrueSentry, Inc. | Rate adaptive video transmission and synchronization system |
US8350971B2 (en) | 2007-10-23 | 2013-01-08 | Sling Media, Inc. | Systems and methods for controlling media devices |
US7995476B2 (en) | 2008-12-04 | 2011-08-09 | Microsoft Corporation | Bandwidth allocation algorithm for peer-to-peer packet scheduling |
WO2011125041A2 (en) | 2010-04-08 | 2011-10-13 | Vasona Networks | Managing streaming bandwidth for multiple clients |
WO2011139305A1 (en) | 2010-05-04 | 2011-11-10 | Azuki Systems, Inc. | Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction |
US20120124179A1 (en) | 2010-11-12 | 2012-05-17 | Realnetworks, Inc. | Traffic management in adaptive streaming protocols |
US8611217B2 (en) * | 2011-02-25 | 2013-12-17 | Verizon Patent And Licensing Inc. | Subscriber/service differentiation in advanced wireless networks |
US20130003543A1 (en) * | 2011-06-30 | 2013-01-03 | Avistar Communications Corporation | NEXT-GENERATION BANDWIDTH MANAGEMENT CONTROL SYSTEMS FOR MULTIPLE-SERVICE CALLS, SESSIONS, PACKET-LEVEL PROCESSES, AND QoS PARAMETERS - PART 1: STRUCTURAL AND FUNCTIONAL ARCHITECTURES |
-
2013
- 2013-09-11 US US14/024,210 patent/US9521177B2/en active Active
-
2014
- 2014-08-14 EP EP14758050.0A patent/EP3044918B1/en active Active
- 2014-08-14 WO PCT/US2014/051084 patent/WO2015038277A1/en active Application Filing
- 2014-08-14 CN CN201480049984.0A patent/CN105531968B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102498715A (zh) * | 2009-05-19 | 2012-06-13 | 宝美瑞思网络有限公司 | 带宽回收用受管理自适应比特率的方法、装置及计算机可读介质 |
Non-Patent Citations (1)
Title |
---|
Shaping HTTP adaptive streams for a better user experience;Remi HOUDAILLE et al.;《Proceeding MMSys 12 Proceedings of the 3rd Multimedia Systems Conference》;20120224;摘要,第1节第一段,第2.2节 |
Also Published As
Publication number | Publication date |
---|---|
CN105531968A (zh) | 2016-04-27 |
US20150074285A1 (en) | 2015-03-12 |
US9521177B2 (en) | 2016-12-13 |
EP3044918A1 (en) | 2016-07-20 |
EP3044918B1 (en) | 2017-10-18 |
WO2015038277A1 (en) | 2015-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105531968B (zh) | 基于网络的自适应速率限制方法及装置 | |
CN105340234B (zh) | 在电缆Wi-Fi网络上用于多屏幕视频应用的自适应资源管理 | |
EP2997707B1 (en) | Enhancing performance of rapid channel changes and other playback positioning changes in adaptive streaming | |
US20170187641A1 (en) | Scheduler, sender, receiver, network node and methods thereof | |
CN102498696B (zh) | 数据网络的使用监管 | |
EP3103220A1 (en) | System and method for dynamic effective rate estimation for real-time video traffic | |
JP2015521434A (ja) | 優先順位マーキングを用いる適応ストリーミングアウェアネットワークノード、クライアント及び方法 | |
Kalan et al. | Design of a layer-based video streaming system over software-defined networks | |
Lee et al. | Enhanced TFRC for high quality video streaming over high bandwidth delay product networks | |
Yaqoob et al. | A priority-aware dash-based multi-view video streaming scheme over multiple channels | |
Kalan et al. | Implementation of sand architecture using sdn | |
Héder et al. | Dynamic and adaptive QoE management for OTT application sessions in LTE | |
EP2388978B1 (en) | Methods and devices for determining network link load | |
Lusilao Zodi et al. | A Unicast rate-based protocol for video streaming applications over the internet | |
Hemmati | New bandwidth allocation methods to provide quality-of-experience fairness for video streaming services | |
Bai et al. | Dynamic end-to-end QoS support for video over the Internet | |
Martin et al. | Managing fairness and application performance with active queue management in docsis-based cable networks | |
Biernacki | Server side solutions for web-based video | |
Ravindran et al. | Virtualized End-to-End Management Functions for Aggregated Control of Video Traffic Flows | |
Xie et al. | URCP: Universal Rate Control Protocol for Real-Time Communication Applications | |
Arif et al. | The relationship of TFRC congestion control to video rate control optimization | |
Sahin et al. | VSP-MANAGED DISTRIBUTED COLLABORATIVE VIDEO SERVICES | |
Nguyen et al. | Bandwidth management for multiple HTTP streaming clients |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190510 |
|
CF01 | Termination of patent right due to non-payment of annual fee |