CN106105149A - 用于速率控制从缓存流送内容的方法和装置 - Google Patents

用于速率控制从缓存流送内容的方法和装置 Download PDF

Info

Publication number
CN106105149A
CN106105149A CN201580016013.0A CN201580016013A CN106105149A CN 106105149 A CN106105149 A CN 106105149A CN 201580016013 A CN201580016013 A CN 201580016013A CN 106105149 A CN106105149 A CN 106105149A
Authority
CN
China
Prior art keywords
content
time
streaming
self adaptation
cache node
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.)
Pending
Application number
CN201580016013.0A
Other languages
English (en)
Inventor
查理斯·摩尔曼
比尔·卡洛·威斯蒂格
大卫·R·奥兰
阿首克·纳芮阿南
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN106105149A publication Critical patent/CN106105149A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Abstract

在一个实施例中,方法包括在位于内容源与自适应流客户端之间的数据路径上的缓存节点处测量从所述内容源获取内容的时间;以及基于所测量的获取所述内容的时间来对从所述缓存节点向所述自适应流客户端流送所述内容进行速率限制。本文还公开了装置和逻辑。

Description

用于速率控制从缓存流送内容的方法和装置
技术领域
本公开一般地涉及通信网络,更具体地,涉及从缓存流送内容。
背景技术
网络缓存被用来将频繁地访问的信息保留在接近于信息的请求者的位置。Web缓存被广泛地用来减少网络拥挤和提升整体性能。
附图说明
图1示出了在其中可以实现本文所描述的实施例的网络的示例。
图2描绘了在实现本文所描述的实施例中有用的网络设备的示例。
图3是示出根据一个实施例的用于从缓存流送内容的过程的概述的流程图。
相应的参考字符在一系列附图中指示相应的部分。
具体实施方式
概述
在一个实施例中,方法一般地包括:在位于内容源与自适应流客户端之间的数据路径上的缓存节点处测量从内容源获取内容的时间,以及基于所测量的获取内容的时间来对从缓存节点向自适应流客户端流送内容进行速率限制。
在一个实施例中,装置一般地包括:处理器,该处理器用于在被配置为在内容源与自适应流客户端之间的数据路径中进行操作的缓存节点处测量从内容源获取内容的时间,以及基于所测量的获取内容的时间来对向自适应流客户端流送内容进行速率限制。装置还包括存储器,该存储器用于存储获取内容的时间。
示例实施例
提出下面的描述以使得本领域的普通技术人员能够实施并且使用实施例。具体实施例和应用的描述仅作为示例被提供,并且各种变型对本领域的这些技术人员将是显而易见的。在不偏离实施例的范围的情况下,本文所描述的一般原理可以被应用于其他应用。因此,实施例不限于所示出的这些,而是被赋予与本文所描述的原理和特征一致的广泛范围。为了简洁起见,未对与实施例相关的技术领域所公知的技术材料的细节进行详细描述。
在自适应流中(也被称为自适应比特率(ABR)流、动态流、或实时流),源视频被编码,以便相同内容能够以若干不同速率进行流送。内容流一般由大量内容块(例如,内容片、片段、分段、或内容的完整示例的其他适当的再分)构成。自适应流客户端(例如,ABR视频客户端)可以使用web范例(例如,通过TCP(传输控制协议)/IP(因特网协议)传输进行操作的HTTP(超文本传输协议))来访问存储在服务器上的块,并且做出关于自适应流客户端将从服务器请求任意给定内容的哪一具体表示(例如,视频编码速率)的决定。该决定可以是基于各种参数或观测值的,包括例如当前带宽(例如,基于所监测的传递速率)。在给定的观看体验期间,ABR视频客户端可以在可用带宽增加时升档至更高的编码率以获得更好的质量,或在可用带宽减少时降档至更低的编码率。
自适应流客户端可以依赖于各种参数来做出速率自适应决定从而升档、降档、或保持在当前比特率。传统的web缓存在缓存命中(cache-hit)相比于缓存未命中(cache-miss)引入不同网络性能时可能引起客户端速率自适应算法的问题。问题可以包括,例如,当客户端请求未被缓存的内容时速率变化振荡和自适应至不能被支持的水平的不正确稳态速率。
本文所描述的实施例优化自适应流内容(例如,ABR视频)的缓存节点,以便客户端端点在缓存命中上本地缓存速率的网络性能与和缓存未命中上本地缓存速率的网络性能接近达相同。因此,因为由于缓存状态使得性能中存在差异,所以缓存节点不会使得客户端不正确地将速率自适应至不可持续的比特率。客户端可以在恒定网络性能情况下升档至最高的可持续速率,而不是升档至不可持续速率。在一个实施例中,诸如网络延迟或最大比特率之类的性能特征在缓存摄取上被测量,或最大比特率被确定为最高速率本地缓存的资源的上限。该信息被存储,并且被与具体视频资源(内容)或内容源(例如,CDN(内容分发网络)服务器)或上游缓存相关联。网络信息在缓存出口上被用来调整流送内容的速度,使得自适应流客户端在缓存命中上获得与在缓存未命中上相同的网络吞吐量。例如,当与基于网络的缓存或基于家庭网关的缓存一起使用时,实施例可以被用来提升客户端速率自适应。
现在参考附图,首先是图1,图1示出了在其中可以实现本文所描述的实施例的网络的示例。为了简洁起见,仅示出了通信系统中的少量节点。网络包括位于自适应流客户端(例如,端点、请求发起者、内容接收者、ABR视频客户端)10与内容源(例如,服务器、端点、CDN节点)14之间的数据路径上的一个或多个缓存节点12和13。在图1所示的示例中,缓存节点12包括缓存存储装置和网络性能模块(例如,代码、逻辑、或其他机制)18,该缓存存储装置用于存储接收到的内容(数据),该网络性能模块18可操作用于测量并且存储缓存节点与内容源(例如,上游缓存节点13与源14)之间的网络性能特征。
在一个实施例中,通信系统包括自适应流视频系统,该自适应流视频系统利用多速率视频编码和IP传输协议组(例如,HTTP/TCP/IP或其他等同协议)来在变化的网络条件下将高质量流视频传递至多个并发用户。
在图1所示出的示例中,自适应流客户端10通过网络16中的缓存节点12(或缓存节点12和13)与内容源14进行通信。网络16可以包括一个或多个网络(例如,局域网、城域网、广域网、企业网、互联网、内联网、无线接入网络、公共交换网络、或任意其他网络或它们的组合)。自适应流客户端10与源14之间的数据路径15、17、和19可以包括任意数量或类型的中间节点(例如,路由器、交换机、网关、或其他网络设备),该任意数量或类型的中间节点促进端点(客户端,源)之间的数据传送。例如,在路径15、17、和19上可能存在任意数量的非缓存中间节点。同样,也可能存在任意数量的缓存节点或端点。例如,每个缓存节点可以位于任意数量的端点之间的任意数量的通信路径之内。因此,缓存节点12可以被用来存储从任意数量的源14接收到的数据、或存储由任意数量的客户端10请求的数据。
端点10和14可以作为源节点或接收者(目的地)节点进行操作,并且可以被配置为通过网络16发起或终止通信。端点可以包括被配置用于接收、发送、或收发数据(内容)的任意网络设备或设备的组合。
内容源14被配置有一组内容,该组内容能够被提供至一个或多个内容接收者10。内容可以包括可以在网络16中传播的任意适当的信息。例如,内容可以包括视频、图像、图形、文本、web页面、音频、或其他数据或它们的组合。从内容源14发送的内容可以根据任意格式被加密、压缩或编码。可以存在向任意数量的客户端10提供内容的任意数量的内容源14。
例如,内容源14可以是服务器(例如,源服务器)或服务器群组,该服务器或服务器群组在本地存储数据,或通过其他网络、卫星、电缆、或任意其他通信设备或系统从其他服务器或媒体源获得内容。内容源14可以位于可操作以获取和流送媒体的CDN中。内容传递网络可以包括,例如,用于将内容传递至数字电视和机顶盒的流应用,和用于将内容传递至诸如个人计算机、移动电话、和手持设备之类的IP设备的互联网流应用。
客户端10可以是可操作以从内容源14请求和接收内容的任意网络设备。客户端10可以与想要在通信系统中接收内容的设备、客户、或终端用户相关联。客户端10可以是有线的或无线的,并且可以包括例如台式计算机、膝上型计算机、蜂窝电话、智能电话、个人数字助理(PDA)、平板电脑、多媒体设备、机顶终端(盒)、具有通信能力的电视、或可操作以在通信系统内发起和/或响应视频交换、音频交换、媒体交换、或数据交换的任意其他设备。客户端10还可以是力图代表另一实体或元件(例如,程序、数据库、或其他组件)进行通信的设备。
缓存节点12可以存储或缓存在另一设备(例如,内容源14)处被编码或被分段的内容。缓存节点12可以包括,例如,路由器、交换机、网关、代理、服务器、或其他网络设备。已经存储有所请求的数据的缓存节点(例如,缓存节点13)可以被称为内容源,同时数据被缓存在该节点处。缓存节点12在被客户端设备10请求时,以用不同比特率进行编码的块的形式来发送编码流。在一个示例中,缓存节点12被配置来在内容传递系统中使用,并且可操作以获取和流送数据。
在一个实施例中,缓存节点12包括网络性能模块18,该网络性能模块18可操作以测量并存储缓存节点12与上游内容源(例如,缓存节点13或内容源14)之间的网络性能特征。如下面进一步描述的,性能特征可以包括从内容源(例如,缓存节点13、内容源14)获取内容的时间(例如,块提取时间、最大比特率)。性能特征与由端点10或具体内容源(例如,上游缓存节点13、内容源14、或代理)请求的具体视频资源(内容)相关联。网络性能特征可以被用来调整流视频的传输速度,以便ABR客户端10在缓存命中上测量到的网络延迟或比特率与在缓存未命中上测量到的相同,下面将进行详细描述。
实施例也可以在直通式交换(其中缓存节点12在提取内容时将数据直接转发至客户端10,而不是首先完整地提取和存储内容)中被使用。
在图1所示的示例中,仅有一个缓存节点包括网络性能模块18,然而,任意数量的缓存节点可以包括网络性能模块。
应当理解的是,图1所示出的和本文所描述的网络仅是示例,并且在不偏离实施例的范围的情况下,实施例可以在具有不同网络拓扑或网络设备、或使用不同网络协议的网络中被实现。例如,实施例在本文中是在具有被实施为视频的内容的计算机网络环境的情景下进行描述的。应当理解的是,代替视频或除了视频以外的其他内容(例如,音频、数据、图形、图像等等)也被认为落入实施例的范围之内。此外,自适应流系统的某些实施例在本文中是在使用HTTP/TCP/IP的环境中的自适应流的情景下进行描述的。应当理解的是,其他网络分发多媒体(例如,视频、图形、音频、或数据)也可以从自适应流系统和方法中获益,并且被认为落入实施例的范围之内。例如,可以使用诸如HTTPS(超文本传输协议安全)或SPDY(SPeeDY)之类的其他应用协议来替代HTTP,或可以使用诸如SCTP(流控制传输协议)、DCCP(数据报拥塞控制协议)、或MPTCP(多路径TCP)之类的其他传输来替代TCP。
图2示出了可以被用来实现本文所描述的实施例的网络设备20(例如,缓存节点)的示例。在一个实施例中,网络设备20是可以以硬件、软件、或它们的组合来实现的可编程机器。网络设备20包括一个或多个处理器22、存储器24、网络接口26、和网络性能模块18。
存储器24可以是易失性存储器或非易失性存储器,其存储由处理器22执行和使用的各种应用、操作系统、模块、和数据。存储器24包括缓存存储装置25。存储器24还可以包括网络性能模块18(例如,用于确定获取时间的逻辑、和用于存储获取时间/对象(资源/源)的表格)。
逻辑可以被编码在一个或多个有形介质中,以供处理器22来执行。例如,处理器22可以执行存储在诸如存储器24之类的计算机可读介质中的代码。计算机可读介质可以是,例如,电子的(例如,RAM(随机存取存储器)、ROM(只读存储器)、EPROM(可擦除可编程只读存储器))、磁的、光的(例如,CD、DVD)、电磁的、半导体技术的、或任意其它适当的介质。在一个实例中,计算机可读介质包括非暂态计算机可读介质。网络设备20可以包括任意数量的处理器22。
网络接口26可以包括用于接收数据或发送数据至其他设备的任意数量的接口。接口26可以包括例如,用于连接至计算机或网络的以太网接口。
应当理解的是,图2中所示出的和上面所描述的网络设备20仅是示例,并且可以使用不同配置的网络设备。例如,网络设备20还可以包括可操作以促进本文所描述的能力的硬件、软件、算法、处理器、设备、组件、或元件的任意适当的组合。
图3是示出根据一个实施例的用于从缓存流送内容(例如,视频)的过程的流程图。在步骤30处,位于内容源与自适应流客户端10之间的数据路径上的缓存节点12接收对内容的请求。如上所述,内容源可以是服务器(例如,CDN节点14)、或被置于源与缓存节点之间并且缓存了内容的另一缓存节点(例如,缓存节点13)或代理(图1)。如果内容没有被存储在缓存节点12处,则缓存节点12从内容源请求内容。在缓存摄取上,缓存节点12测量从内容源获取内容的时间(步骤32)(图3)。获取内容的时间标识缓存节点12与内容源之间的网络性能特征,并且可以包括例如,缓存节点12获取内容的往返延迟时间、或发送内容的最大比特率。
缓存节点12存储性能特征,并且将该信息与一个或多个对象(例如,视频资源(内容)或从相同源接收到的内容)(步骤34)相关联。缓存节点12以受到获取内容的时间限制的速率将内容流送至客户端10(步骤36)。不管缓存节点12是缓存命中(内容已经被存储在缓存节点中)还是缓存未命中(内容没有被存储在缓存节点中),节点用在步骤34处存储的相同延迟或比特率来流送内容(例如,HTTP块、ABR片段),从而接近在步骤32处测量到的相同网络性能。因此,客户端10在缓存命中的网络性能与缓存未命中上的接近相同,其防止客户端由于基于缓存状态的性能差异不正确地将速率自适应至不可持续的比特率。
应当理解的是,图3所示出的和上面所描述的过程仅是示例,并且在不偏离实施例的范围的情况下,步骤可以被添加、移除、组合、或修改。例如,如果针对相同内容、类似内容、或具有相同源的内容的获取内容的时间已经被存储在缓存节点处,则不需要确定获取内容的时间。虽然这可以被用来刷新测量从而避免测量的超时或在不同的速率以指数的方式被平均。例如,获取内容的时间可以基于缓存摄取(当对象被添加至缓存时)被确定。因此,在从自适应流客户端接收到对内容的请求之前,内容(以及测量的获取时间)可以被传递并且被存储在缓存节点处。
同样,当测量获取时间时,对象被添加至缓存不是必要的。例如,测量可以被存储以供从源提取一块类似内容时或从相同上游服务器提取时的后续使用。例如,这可以在低流行度的内容片段(例如,目标广告)被提取(但是不应当被缓存)并且随后播出缓存的或部分缓存的受欢迎内容时被使用。广告提取时间的测量可以被潜在地用来指导缓存内容的播出速率,因为该测量相比于从更早提取的受欢迎内容获得的测量可以是较新的,并且在受欢迎内容的片段出现缓存未命中时该测量可以是性能的更好的预测变量。
在一个实施例中,通过滤波算法来处理提取时间测量(当将对象添加至缓存时)从而产生客户端针对未缓存对象将经历的提取时间的一个或多个预测值。下面描述了滤波器和估计过程的示例。应当理解的是,这仅是示例,并且可以使用其他过程。
在一个实施例中,提取的对象被映射至期望表现出类似提取时间的对象的等价类。等价类可以基于任意数量的条件。例如,等价类可以基于对象的名称的匹配前缀(例如,完整资源URI(统一资源标识符)的名称或一组资源的内容前缀)。在另一示例中,等价类可以基于从相同源服务器(例如,图1中的源14)或从相同上游代理节点或缓存节点13提取的一组对象。在另一示例中,等价类可以基于归一化提取时间,该归一化提取时间基于提取目录对象(例如,描述一组类似对象的清单)。应当理解的是,这些仅是示例,并且其他条件可以被用来定义对象的等价类。
一旦这些测量被过滤并且预测提取时间被计算,则预测的效用在不被刷新的情况下将随时间衰减。一旦预测衰减,它将不再被用来对提取进行速率限制。预测中的衰减也可以基于由管理控制元件设置的、使已知或怀疑是错误的预测无效的阈值。
在图3所示出的和上面所描述的过程中,缓存节点12与上游内容源14(或下一个上游缓存节点13)之间的网络性能特征被确定。下面描述了可以被用来测量从内容源获取内容所花费的时间的方法的示例。应当理解的是,这些仅是示例,并且在不偏离实施例的范围的情况下,其他方法可以被用来测量网络性能特征。
在一个实施例中,获取时间是通过在缓存节点12处的缓存摄取上测量获取HTTP块(ABR片段)的时间而被指定的。
在一个实施例中,配设的最大下行比特率被确定,并且被作为上限。
在一个实施例中,如果缓存通过诸如多播IP或QAM(正交调幅调制)之类的先进方法被充满,则当已经使用通过HTTP的单播ABR时将被测量的估计的“等价”HTTP的往返延迟或最大比特率可以被确定。在这种情况下,来自相同源的其他替代内容的往返和/或延迟的实际测量可以被用于该估计。
在一个实施例中,当前缓存至缓存节点上的内容的最大比特率可以被确定。如果客户端当前正在以比本地存储的最大速率低的比特率进行提取,则可以使用与内容相关联的比特率而不是使用与当前速率相关联的比特率。这允许客户端检测出期望进行升档。
在一个实施例中,除了向客户端或下一跳下游缓存提供ABR片段,缓存节点12还可以提供关于限制缓存的响应时间的详细信息。该信息可以包括,例如,限制是否是源于缓存节点上行的网络容量、使用下一跳上游缓存的限制、由于源流送器的限制、或缓存的自身容量的限制。该信息可以通过多个缓存节点被串联递归向客户端。
在一个或多个实施例中,如果所测量的到达很慢,则下限被应用,而不是对以显著低于块的本地速率的速率来播出的缓存块进行速率限制。在一个示例中,下限是所测量的缓存到达速率或块的本地速率的最大值。
虽然根据所示出的实施例描述了方法和装置,但是本领域的普通技术人员将很容易地认识到在不偏离实施例的范围的情况下可以做出改变。因此,值得注意的是,上述描述所包含的以及附图中所示出的主题应当被认为是说明性的并且不具有限制意义。

Claims (20)

1.一种方法,包括:
在位于内容源与自适应流客户端之间的数据路径上的缓存节点处测量从所述内容源获取内容的时间;以及
基于所测量的获取所述内容的时间来对从所述缓存节点向所述自适应流客户端流送所述内容进行速率限制。
2.如权利要求1所述的方法,还包括:将所述获取所述内容的时间与一个或多个对象相关联。
3.如权利要求2所述的方法,其中,所述一个或多个对象包括相关联的内容。
4.如权利要求2所述的方法,其中,所述一个或多个对象包括所述内容和从所述内容源获取的其他内容。
5.如权利要求1所述的方法,其中,对流送所述内容进行速率限制包括限制在缓存命中情况下流送内容的比特率。
6.如权利要求1所述的方法,其中,对流送所述内容进行速率限制包括利用接近于所述获取所述内容的时间的延迟来流送所述内容。
7.如权利要求1所述的方法,其中,所述内容源包括置于所述缓存节点与内容分发网络源之间的另一缓存节点。
8.如权利要求1所述的方法,其中,所述获取所述内容的时间包括针对缓存未命中所测量的获取所述内容的往返时间。
9.如权利要求1所述的方法,其中,所述获取所述内容的时间包括最大比特率。
10.如权利要求1所述的方法,还包括:指定配设的最大下行比特率,并且基于所述配设的最大下行比特率设置速率的上限。
11.如权利要求1所述的方法,其中,测量所述获取所述内容的时间包括基于内容的单播传递估计获取时间。
12.如权利要求1所述的方法,其中,所述自适应流客户端以比限制速率更低的比特率请求所述内容。
13.如权利要求1所述的方法,还包括:将标识所述缓存节点的响应时间的限制因素的信息发送至所述自适应流客户端。
14.一种装置,包括:
处理器,所述处理器用于在被配置为在内容源与自适应流客户端之间的数据路径上操作的缓存节点处测量从所述内容源获取内容的时间;以及基于所测量的获取所述内容的时间来对向所述自适应流客户端流送所述内容进行速率限制;以及
存储器,所述存储器用于存储所述获取所述内容的时间。
15.如权利要求14所述的装置,其中,所述处理器还被配置为将所述获取所述内容的时间与一个或多个对象相关联。
16.如权利要求14所述的装置,其中,对流送所述内容进行速率限制包括限制在缓存命中情况下流送内容的比特率。
17.如权利要求14所述的装置,其中,对流送所述内容进行速率限制包括利用接近于所述获取所述内容的时间的延迟来流送所述内容。
18.如权利要求14所述的装置,其中,所述获取所述内容的时间包括针对缓存未命中所测量的获取所述内容的往返时间。
19.如权利要求14所述的装置,其中,所述处理器还被配置为可操作以将标识所述缓存节点的响应时间的限制因素的信息发送至所述自适应流客户端。
20.一种被编码在一个或多个非暂态计算机可读介质上以供执行的逻辑,并且当所述逻辑被执行时可操作以:
在位于内容源与自适应流客户端之间的数据路径上的缓存节点处测量从所述内容源获取内容的时间;以及
基于所测量的获取所述内容的时间来对向所述自适应流客户端流送所述内容进行速率限制。
CN201580016013.0A 2014-03-24 2015-03-03 用于速率控制从缓存流送内容的方法和装置 Pending CN106105149A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/223,272 US20150271072A1 (en) 2014-03-24 2014-03-24 Method and apparatus for rate controlled content streaming from cache
US14/223,272 2014-03-24
PCT/US2015/018494 WO2015148071A1 (en) 2014-03-24 2015-03-03 Method and apparatus for rate controlled content streaming from cache

Publications (1)

Publication Number Publication Date
CN106105149A true CN106105149A (zh) 2016-11-09

Family

ID=52727400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580016013.0A Pending CN106105149A (zh) 2014-03-24 2015-03-03 用于速率控制从缓存流送内容的方法和装置

Country Status (4)

Country Link
US (1) US20150271072A1 (zh)
EP (1) EP3123698A1 (zh)
CN (1) CN106105149A (zh)
WO (1) WO2015148071A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150271226A1 (en) * 2014-03-18 2015-09-24 Qualcomm Incorporated Transport accelerator implementing a multiple interface architecture
US10306284B2 (en) * 2015-12-07 2019-05-28 Net Insight Intellectual Property Ab ABR adjustment for live OTT
KR102399082B1 (ko) 2016-03-04 2022-05-17 삼성전자주식회사 적응적 스트리밍 서비스에서 데이터 버퍼링 방법 및 장치
US20180205802A1 (en) * 2017-01-13 2018-07-19 Cisco Technology, Inc. Cache Aware Streaming
US11240283B2 (en) * 2017-08-14 2022-02-01 British Telecommunications Public Limited Company Methods and apparatus for the encoding of audio and/or video data
US10891228B2 (en) * 2018-02-12 2021-01-12 International Business Machines Corporation Cache line states identifying memory cache
CN111225209B (zh) * 2018-11-23 2022-04-12 北京字节跳动网络技术有限公司 视频数据推流方法、装置、终端及存储介质
US11483365B2 (en) 2019-01-31 2022-10-25 British Telecommunications Public Limited Company Methods and apparatus for the encoding of audio and/or video data
WO2021049744A1 (ko) * 2019-09-09 2021-03-18 경상대학교산학협력단 수신단 캐싱을 활용한 적응형 비디오 스트리밍 시스템
US20230275977A1 (en) * 2022-02-28 2023-08-31 Comcast Cable Communications, Llc Methods, systems, and apparatuses for signaling server-associated delays in content delivery

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1620656A (zh) * 2001-11-14 2005-05-25 阿尔卡斯特公司 内容传递流的服务质量控制
US20110040893A1 (en) * 2009-08-14 2011-02-17 Broadcom Corporation Distributed Internet caching via multiple node caching management
US20120265856A1 (en) * 2011-04-18 2012-10-18 Cisco Technology, Inc. System and method for data streaming in a computer network
US20130097309A1 (en) * 2010-05-04 2013-04-18 Azuki Systems, Inc. Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572645A (en) * 1994-03-01 1996-11-05 International Business Machines Corporation Buffer management policy for an on-demand video server
US5544327A (en) * 1994-03-01 1996-08-06 International Business Machines Corporation Load balancing in video-on-demand servers by allocating buffer to streams with successively larger buffer requirements until the buffer requirements of a stream can not be satisfied
US5809523A (en) * 1996-03-28 1998-09-15 Sun Microsystems, Inc. System and method for determining relative cache performance in a computer system
US6385715B1 (en) * 1996-11-13 2002-05-07 Intel Corporation Multi-threading for a processor utilizing a replay queue
US6167438A (en) * 1997-05-22 2000-12-26 Trustees Of Boston University Method and system for distributed caching, prefetching and replication
US20020138640A1 (en) * 1998-07-22 2002-09-26 Uri Raz Apparatus and method for improving the delivery of software applications and associated data in web-based systems
US6832253B1 (en) * 1999-04-01 2004-12-14 Cisco Technologies, Inc. Proximity as an aid to caching and secondary serving of data
US7565450B2 (en) * 2000-03-16 2009-07-21 Adara Networks Inc. System and method for using a mapping between client addresses and addresses of caches to support content delivery
US7725596B2 (en) * 2000-04-28 2010-05-25 Adara Networks, Inc. System and method for resolving network layer anycast addresses to network layer unicast addresses
US7343422B2 (en) * 2000-04-28 2008-03-11 Adara Networks, Inc. System and method for using uniform resource locators to map application layer content names to network layer anycast addresses
US7908337B2 (en) * 2000-04-28 2011-03-15 Adara Networks, Inc. System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content
US7577754B2 (en) * 2000-04-28 2009-08-18 Adara Networks, Inc. System and method for controlling access to content carried in a caching architecture
US6879998B1 (en) * 2000-06-01 2005-04-12 Aerocast.Com, Inc. Viewer object proxy
ATE381191T1 (de) * 2000-10-26 2007-12-15 Prismedia Networks Inc Verfahren und system zur verwaltung von verteilten inhalten und entsprechenden metadaten
US7062567B2 (en) * 2000-11-06 2006-06-13 Endeavors Technology, Inc. Intelligent network streaming and execution system for conventionally coded applications
US6934942B1 (en) * 2001-08-24 2005-08-23 Microsoft Corporation System and method for using data address sequences of a program in a software development tool
US6907501B2 (en) * 2002-01-25 2005-06-14 Ntt Docomo Inc. System for management of cacheable streaming content in a packet based communication network with mobile hosts
US8650266B2 (en) * 2002-03-26 2014-02-11 At&T Intellectual Property Ii, L.P. Cache validation using smart source selection in a data network
US7076544B2 (en) * 2002-04-08 2006-07-11 Microsoft Corporation Caching techniques for streaming media
US7114173B2 (en) * 2002-05-03 2006-09-26 Aol Time Warner Interactive Video Group, Inc. Technique for synchronizing deliveries of information and entertainment in a communications network
US7725557B2 (en) * 2002-06-24 2010-05-25 Microsoft Corporation Client-side caching of streaming media content
US20040098463A1 (en) * 2002-11-19 2004-05-20 Bo Shen Transcoding-enabled caching proxy and method thereof
US7711797B1 (en) * 2006-07-31 2010-05-04 Juniper Networks, Inc. Optimizing batch size for prefetching data over wide area networks
US20080209053A1 (en) * 2007-02-28 2008-08-28 Microsoft Corporation HTTP-Based Peer-to-Peer Framework
US8561116B2 (en) * 2007-09-26 2013-10-15 Charles A. Hasek Methods and apparatus for content caching in a video network
US7792111B2 (en) * 2008-04-23 2010-09-07 Cisco Technology, Inc. Point-to-multipoint for multicast and unicast forwarding
US8819651B2 (en) * 2008-07-22 2014-08-26 International Business Machines Corporation Efficient software cache accessing with handle reuse
US20100030963A1 (en) * 2008-08-04 2010-02-04 Sandisk Il Ltd. Managing storage of cached content
WO2010017308A1 (en) * 2008-08-06 2010-02-11 Movik Networks Content caching in the radio access network (ran)
EP2704402B1 (en) * 2009-06-03 2015-08-12 Telefonaktiebolaget L M Ericsson (publ) Method and node for distributing electronic content in a content distribution network
EP2443574A4 (en) * 2009-06-19 2014-05-07 Blekko Inc EVOLVING CLUSTER DATABASE
US8000259B2 (en) * 2009-09-04 2011-08-16 Viasat, Inc. Distributed cache—adaptive multicast architecture for bandwidth reduction
EP2486491A4 (en) * 2009-10-06 2013-10-23 Unwired Planet Llc MANAGING NETWORK TRAFFIC BY EDITING A MANIFEST FILE AND / OR USING A INTERMEDIATE FLOW CONTROL
EP2514171A1 (en) * 2009-12-14 2012-10-24 Telefonaktiebolaget L M Ericsson (PUBL) Dynamic cache selection method and system
US20120102136A1 (en) * 2010-10-21 2012-04-26 Lancaster University Data caching system
US8874845B2 (en) * 2012-04-10 2014-10-28 Cisco Technology, Inc. Cache storage optimization in a cache network
US9306994B2 (en) * 2012-06-06 2016-04-05 Cisco Technology, Inc. Stabilization of adaptive streaming video clients through rate limiting
US9491220B2 (en) * 2012-07-13 2016-11-08 Infosys Limited Systems and methods for adapting mobile multimedia content delivery service
US9712408B2 (en) * 2014-03-17 2017-07-18 Telefonaktiebolaget L M Ericsson (Publ) Bandwidth management in a content distribution network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1620656A (zh) * 2001-11-14 2005-05-25 阿尔卡斯特公司 内容传递流的服务质量控制
US20110040893A1 (en) * 2009-08-14 2011-02-17 Broadcom Corporation Distributed Internet caching via multiple node caching management
US20130097309A1 (en) * 2010-05-04 2013-04-18 Azuki Systems, Inc. Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction
US20120265856A1 (en) * 2011-04-18 2012-10-18 Cisco Technology, Inc. System and method for data streaming in a computer network

Also Published As

Publication number Publication date
WO2015148071A1 (en) 2015-10-01
US20150271072A1 (en) 2015-09-24
EP3123698A1 (en) 2017-02-01

Similar Documents

Publication Publication Date Title
CN106105149A (zh) 用于速率控制从缓存流送内容的方法和装置
US10264093B2 (en) Systems and methods for partial video caching
KR102462384B1 (ko) 디지털 콘텐츠의 적응적 가상 방송을 위한 방법 및 시스템
CN104350755B (zh) 通过速率限制的自适应流视频客户端的稳定的方法和装置
JP6272451B2 (ja) コンテンツ配信ネットワークにおいて分散型コンテンツ・キャッシングを実現する方法および装置
US9838459B2 (en) Enhancing dash-like content streaming for content-centric networks
Thomas et al. Enhancing MPEG DASH performance via server and network assistance
CN104780199A (zh) 在客户端下载多媒体内容即将到来的分段的方法及终端
Ma et al. A survey of schemes for Internet-based video delivery
EP2920708A1 (en) Caching and streaming of digital media content
US20140365613A1 (en) Defragmentation of adaptive streaming segment files in a content delivery network
Darabkh et al. Efficient PFD-based networking and buffering models for improving video quality over congested links
WO2016041914A1 (en) Method, computer program product and server for streaming media content from a server to a client
Darabkh et al. Improving UDP performance using intermediate QoD‐aware hop system for wired/wireless multimedia communication systems
KR102356621B1 (ko) 클라이언트 단말기들과 적어도 하나의 서버 사이의 전송 경로를 따라 배열된 캐시를 동작시키기 위한 방법, 및 대응하는 캐시
CN105981400A (zh) 配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法
JP2016526355A (ja) Hasコンテンツ配信システムに使用するためのノードおよび方法
Rückert et al. Quality adaptation in P2P video streaming based on objective QoE metrics
Gouta et al. HTTP adaptive streaming in mobile networks: Characteristics and caching opportunities
Bouten et al. A multicast-enabled delivery framework for QoE assurance of over-the-top services in multimedia access networks
Xiang et al. Dynamic rate adaptation for adaptive video streaming in wireless networks
CN104871502B (zh) 用于动态优化多用户无线多媒体传输的强健的基于内容的解决方案
Asioli et al. A game theoretic approach to minimum-delay scalable video transmission over P2P
KR102237900B1 (ko) 클라이언트 단말에 의해 멀티미디어 콘텐츠의 콘텐츠 부분을 검색하기 위한 방법
Bokani Location-Based adaptation for DASH in vehicular environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20161109

RJ01 Rejection of invention patent application after publication