CN106105145B - 用于操作沿客户端终端和至少一个服务器之间的传输路径布置的缓存器的方法、及相应的缓存器 - Google Patents

用于操作沿客户端终端和至少一个服务器之间的传输路径布置的缓存器的方法、及相应的缓存器 Download PDF

Info

Publication number
CN106105145B
CN106105145B CN201580015256.2A CN201580015256A CN106105145B CN 106105145 B CN106105145 B CN 106105145B CN 201580015256 A CN201580015256 A CN 201580015256A CN 106105145 B CN106105145 B CN 106105145B
Authority
CN
China
Prior art keywords
representation
cache
request
ongoing
client terminal
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.)
Active
Application number
CN201580015256.2A
Other languages
English (en)
Other versions
CN106105145A (zh
Inventor
斯蒂芬那·高亚彻
雷米·霍戴勒
查尔莱恩·泰彼
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.)
InterDigital CE Patent Holdings SAS
Original Assignee
交互数字Ce专利控股公司
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 交互数字Ce专利控股公司 filed Critical 交互数字Ce专利控股公司
Publication of CN106105145A publication Critical patent/CN106105145A/zh
Application granted granted Critical
Publication of CN106105145B publication Critical patent/CN106105145B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/80Responding to QoS
    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234345Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种包括缓存器(DANE)的网络设备,该缓存器(DANE)位于沿客户端终端(CT)和至少一个服务器(SE)之间的传输路径,并且被配置为从客户端终端(CT)接收针对以若干表示可用的多媒体内容的片段的请求,该缓存器包括:‑连接接口(1),其用于从第一客户端终端接收针对所述多媒体内容的给定片段的优选表示和至少一个替代表示的第一请求;‑匹配模块(5),其被配置为确定已被缓存器从服务器请求用于进一步的客户端终端的所述给定片段的至少一个正在进行的表示是否与第一请求的优选表示或替代表示相匹配。

Description

用于操作沿客户端终端和至少一个服务器之间的传输路径布 置的缓存器的方法、及相应的缓存器
技术领域
本发明一般地涉及(例如但不仅仅)经由HTTP(超文本传输协议)的自适应流技术领域,并且更具体地,涉及对沿客户端终端和远程服务器之间的传输路径布置的缓存器的行为的管理。
背景技术
本节旨在向读者介绍可能与在下面所描述和/或要求保护的本发明的各个方面有关的本领域的各个方面。相信本讨论对向读者提供背景信息以辅助更好的理解本发明的各个方面是有帮助的。因此,应理解的是,这些陈述将从这个角度被阅读,而不承认为现有技术。
经由HTTP的自适应流(还称为多比特率切换)正快速成为多媒体内容分发的主要技术。在已经被使用的HTTP自适应流协议中,最著名的是来自苹果公司的HTTP直播流(HLS)、来自微软的银光平滑流(SSS)、来自Adobe公司的Adobe动态流(ADS)以及由SA4组内的3GPP开发的经由HTTP的自适应流(DASH)。
当客户端终端希望播放自适应流中的视听内容(或A/V内容)时,其首先必须获得描述可如何获得此A/V内容的文件。这通常通过经由HTTP协议从URL(全球资源定位器)获得描述文件(所谓的清单(manifest))来完成,但还可通过其他方式(例如,广播、电子邮件、SMS等)来实现。清单主要地列出这类A/V内容(在比特率、分辨率或其他属性方面)的可用表示(还称为实例或版本);每个质量等级(比特率)一个表示。每个表示由(分离URL可访问的)持续时间相等的一系列片段(还称为块)组成,并具有一组被附接用于由客户端选择的描述要素。所述清单被提前生成并通过例如远程服务器被传递到客户端终端。
实际上,与A/V内容相对应的数据的流在具有不同质量的HTTP服务器上是可用的。最高质量与高比特率相关联;最低质量与低比特率相关联。这允许到可服从不同高度网络环境的许多不同终端的分布。
每个表示的整个数据流被划分为持续时间相等的片段,这使得客户端终端可在两个片段之间平滑地从一个质量等级切换至另一质量等级。因此,当播放时视频质量可变化但很少遭受中断(还称为冻结)。
在客户端侧,基于对传输路径的可用带宽的测量来选择片段。特别地,客户端终端通常请求与比特率编码相对应的片段的表示,并因此请求符合所测量带宽的质量。
当缓存器是沿着客户端终端和远程服务器之间的频繁出现的传输路径时,给定片段的一个表示可能已经被存储在上述缓存器中(假如另一客户端在之前已请求具有相同表示的相同片段,或假如内容传递网络(CDN)已经在缓存器中提供该片段)。因此,相比片段来自远程服务器的情况,对所述给定片段的HTTP请求的响应更快,并可避免重复传输,有效节省了网络资源。
通常HTTP缓存器被设计为通过努力确保被传递到任意客户端的内容将与直接来自服务器的内容是相同的,来透明地服务内容。
在传递HAS内容(例如,DASH内容)的情况下,给定时隙的所有视频表示对于最终用户是等同的(也就是他们对应于相同的音频和视频内容),但视频(也可能音频)质量是不同的。在DASH系统中,网络的技术限制不允许维护最好质量,因此使用各种质量等级的片段表示被认为是正常的。尽管DASH的初始目标是由客户端选择表示,当所要求的表示在所述缓存器中不可用时,高级缓存器(还称为智能缓存器)通过允许从缓存器返回替代表示来允许客户端放宽选择;如申请人提交的欧洲专利申请EP 13305908.9和EP 13305909.7中所描述的。
然而,当多个客户端同时命中缓存器并请求具有重叠表示的不同选择的同一资源(例如,转至同一程序)时,会出现问题。通过“同时”,应理解的是,请求以低于片段持续时间的间隔发生。这样的情况频繁地出现并对整个传递链是有害的。
实际上,已知缓存器(所谓的传统缓存器)的一般功能如下。在收到针对给定资源(称为X,X是URL)的请求(称为Ra)时,如果所请求的内容未被缓存(例如,之前被下载并存储用于将来再使用),则缓存器朝远程服务器发起请求,并且一旦缓存器开始从服务器接收响应,就开始向客户端转发响应。在针对同一资源(X)的第二请求(称为Rb)(在当前请求(Ra)结束之前)到达时,在响应内容与服务器的可选再验证步骤之后,将开始向第二客户端转发同一响应内容。在针对未被缓存且不同于X的另一资源(称为Y,Y是URL)的另一请求(称为Rc)到达时(例如,在发出请求用于DASH片段的情况下,X={rep4}和Y={rep6}指同一内容中的相同时间偏移),缓存器并行地处理请求和之前的请求,因为它们是无关的。
换句话说,针对同一资源(X)的已知缓存器序列请求(Ra、Rb),其以完全并行的方式来处理无关的请求(Rc相对于Ra、Rb)。这出于显著性能和带宽效率原因是非常可取的。
在发出上述请求(Ra、Rb、Rc)用于取回DASH片段的情况下,其中,优选表示连同可允许替代的列表被标识(如在欧洲专利申请EP 13305908.9和EP 13305909.7中所解释的),缓存器(智能缓存器)行为如下。如果X={优选=rep4,替代=[rep6、rep5]}且Y={优选=rep6,替代=[rep5、rep4],假设指同一内容中的相同时间偏移。通过考虑上述针对已知缓存器描述的场景,并通过假设没有优选和替代表示被缓存,则响应于请求(Ra、Rb)缓存器将已服务rep4,并且响应于(Rc)将已服务rep6。
然而,这样的行为产生下列两个问题:
-缓存器认为请求是无关的,是由于缓存器已忽略在请求之间创建潜在链路的替代列表;
-缓存器已从服务器下载两个表示,可能导致服务器和缓存器之间的路径上的拥塞。
此外,在住宅网络中,即使存在很少的设备,接入带宽的不足使得避免重复针对给定片段的请求是关键的。考虑接入网中的缓存器,大量的并发会话使得很可能将针对许多可能的替代来请求内容。如果缓存器未能最优地处理这些并发请求,则网络将会拥塞。
本发明克服了上述缺点的至少某些缺点。
总结
本发明涉及一种用于操作被配置为沿客户端终端和至少一个服务器之间的传输路径布置的缓存器的方法,所述缓存器被配置为从客户端终端接收针对以若干表示可用的多媒体内容的片段的请求,其显著之处在于该方法包括下列项:
-从第一客户端终端接收针对所述多媒体内容的给定片段的优选表示和至少一个替代表示的第一请求;
-确定已被所述缓存器从所述服务器请求用于进一步的客户端终端的所述给定片段的正在进行的(ongoing)表示,其与第一请求的优选表示或替代表示相匹配。
在符合本发明的实施例中,所述方法还可包括:
-确定与已被所述缓存器请求用于进一步的客户端终端的所述给定片段的匹配的正在进行的表示相关联的效用函数的值;
-当效用函数的值满足性能标准时,向第一客户端终端传输已被缓存器请求的所述匹配的正在进行的表示。
由于本发明,缓存器可意识到具有匹配的优选表示和/或替代表示的请求的相关性。可创建更多的机会来匹配请求并对其进行串行化,减少了服务器的流量的量。
此外,在(与第一请求的两个不同表示相匹配的)至少两个正在进行的表示已被所述缓存器请求用于进一步的客户端终端的情况下,当所述效用值满足性能标准时,可传输与最高效用值相关联的匹配的正在进行的表示。
此外,在(与第一请求的两个不同表示相匹配的)至少两个正在进行的表示已被所述缓存器请求用于进一步的客户端终端的情况下,当没有匹配的正在进行的表示具有满足所述性能标准的效用值时,第一请求的优选表示可由缓存器请求至服务器。
在另一实施例中,当效用函数的值超过零时可满足性能标准。
在进一步的实施例中,效用函数可取决于操作模式,操作模式属于包括至少下列项的一组模式:
-积极模式,其中,效用函数的值等于常数;
-快速模式,其中,效用函数取决于所述第一请求的优选表示从服务器的传递时间,以及已被所述缓存器请求的匹配的正在进行的表示的传递时间;
-质量模式,其中,效用函数取决于第一请求的优选表示的质量,以及已被所述缓存器请求的匹配的正在进行的表示的质量。
此外,可根据至少一个网络参数的(例如,在缓存器处)确定操作模式,或由第一客户端终端、进一步的网络设备、缓存器所有者或第三方选择操作模式。
在由第一客户端终端(例如,根据用户偏好)选择操作模式的情况下,可在所述第一请求中指示所选择的操作模式。
在另一方面,可通过所述第一请求的优选表示从服务器的传递时间和已被所述缓存器请求的匹配的正在进行的表示的传递时间之间的差异来定义快速模式的效用函数。
在进一步的方面,可通过优选表示的质量和已被所述缓存器请求的匹配的正在进行的质量之间的差异来定义质量模式的效用函数。
本发明还涉及包括缓存器的网络设备,该缓存器适用于位于沿客户端终端和至少一个服务器之间的传输路径,并且被配置为从客户端终端接收针对以若干表示可用的多媒体内容的片段的请求。所述缓存器包括下列项:
-连接接口,该连接接口用于从第一客户端终端接收针对所述多媒体内容的给定片段的优选表示和至少一个替代表示的第一请求;
-匹配模块,该匹配模块被配置为确定已被缓存器从服务器请求用于进一步的客户端终端的所述给定片段的至少一个正在进行的表示是否与第一请求的优选表示或替代表示相匹配。
此外,所述缓存器还可包括计算器,该计算器适用于确定与由所述匹配模块标识的给定片段的匹配的正在进行的表示相关联的效用函数的值。
此外,所述缓存器还可包括比较器,该比较器被配置为在若干正在进行的表示与第一请求的优选表示和替代表示相匹配的情况下,确定具有最高效用函数的值的已被所述智能缓存器请求的匹配的正在进行的表示。所述比较器还可被配置为检查所确定的匹配的正在进行的表示的效用函数的值是否满足性能标准。
此外,效用函数可取决于操作模式,操作模式属于包括至少下列项的一组模式:
-积极模式,其中,效用函数的值等于常数;
-快速模式,其中,效用函数取决于所述第一请求的优选表示从服务器(SE)的传递时间和已被所述缓存器(DANE)请求的匹配的正在进行的表示的传递时间;
-质量模式,其中,效用函数取决于第一请求的优选表示的质量和已被所述缓存器(DANE)请求的匹配的正在进行的表示的质量。
此外,所述第一请求可包括操作模式的指示。
本发明还涉及客户端终端,该客户端终端被配置用于接收由至少一个远程服务器提供的并被划分为片段的多媒体内容,每个片段以一个或多个表示是可用的。所述客户端终端包括被配置用于发送表示的请求的通信模块,该表示指示将由沿所述客户端终端与和一个服务器之间的通信路径布置的缓存器应用的所选择的操作模式。
此外,所述客户端可属于包括下列项的集:
-便携式媒体设备;
-移动电话;
-游戏设备;
-机顶盒;
-电视机;
-平板电脑;
-膝上型计算机;以及
-集成电路。
本发明还涉及用于通过客户端终端发送针对被划分为以一个或多个表示可用的片段的多媒体内容的片段的表示的请求的方法,所述多媒体内容由至少一个远程服务器提供。所述请求包括关于将由沿所述客户端终端和一个服务器之间的传输路径布置的缓存器应用的所选择的操作模式的指示。
本发明还涉及从通信网络可下载的和/或记录在由计算机可读的介质上的和/或处理器可执行的计算机程序产品,该计算机程序产品包括用于实现上述方法的步骤的程序代码指令。
此外,本发明还涉及包括记录在其上的计算机程序产品并能够由处理器运行的非暂态计算机可读介质,该非暂态计算机可读介质包括用于实现之前描述的方法的步骤的程序代码指令。
下面阐述了与公开的实施例在范围上相称的某些方面。应理解的是,仅为了向读者提供本发明可采用的某些形式的简要总结而呈现这些方面,并且这些方面不旨在限制本发明的范围。实际上,本发明可包含未在下面阐述的各种方面。
附图说明
参考附图,通过下列实施例和执行示例将绝非限制性地更好地理解和说明本发明。
图1是可实现本发明的客户端-服务器网络架构的示意性框图;
图2A是根据本发明的优选实施例的智能缓存器客户端的示例的框图;
图2B是根据本发明的优选实施例的客户端终端的示例的框图;
图3是根据优选实施例示出了用于操作图2A的智能缓存器的方法的流程图;
图4到图6分别针对积极模式、快速模式以及质量模式描绘了图3的方法的实现方式的三个说明性示例。
在图1、图2A和图2B中,所表示的框是不必与物理分离实体相对应的单纯的功能实体。也就是说,它们可以以软件、硬件的形式被开发、或实现在包括一个或多个处理器的一个或若干集成电路中。
尽可能地,相同的参考标号贯穿附图将被用于指代相同或相似的部分。
示例实施例
将理解的是,本发明的图和描述已被简化以示出与清楚地理解本发明相关的要素,且为了清楚的目的,消除了典型数字多媒体内容传递装置和系统中发现的许多其他要素。然而,由于这类要素在本领域中是熟知的,本文不提供对这类要素的详细讨论。本文公开的内容针对本领域技术人员已知的所有这些变化和修改。
根据优选实施例,本发明关于HTTP自适应流协议(或HAS)被描绘。自然地,本发明不被限制于这样的具体环境,并且当然可考虑和实现其他自适应流协议。
如图1描绘的,可实现本发明的、由一个或若干网络N(图中仅表示一个网络)支持的客户端-服务器网络架构包括:一个或若干客户端终端CT、一个或多个HTTP服务器SE、多个智能缓存器DANE以及一个或多个传统缓存器RNE。根据DASH,这样的服务器SE还称为媒体原点。例如,他们生成媒体呈现描述(或MPD),即所谓的清单。这是内容分布的来源:多媒体内容可来自某些外部实体并在媒体原点可被转换为HAS格式。
智能缓存器DANE是网络N中被配置为理解HAS内容被传递的缓存元件。使用MPEG-DASH术语,智能缓存器被视为DASH感知网络元件(DANE)。
传统缓存器RNE是网络N中不了解通过其传输的数据的类型、或至少不理解HAS各方面的缓存元件。在MPEG-DASH术语中,传统缓存器被视为常规网络元件(RNE)。
客户端终端CT希望从HTTP服务器SE中的一个获得多媒体内容。所述多媒体内容被划分为多个片段。假设多媒体内容在服务器SE以不同的表示是可用的。HTTP服务器SE能够根据客户端请求使用HTTP自适应流协议经由一个或多个TCP/IP连接将片段流到客户端终端CT。
在优选实施例中,客户端终端CT是便携式媒体设备、移动电话、平板电脑或膝上型计算机、电视机、机顶盒、游戏设备或集成电路。自然地,客户端终端CT可不包括完整的视频播放器,但仅包括一些子元件,例如,用于对视频内容进行解多路复用和解码并可依赖外部装置向最终用户显示解码内容的子元件。在这种情况下,客户端终端CT是具有HTTP自适应流(HAS)功能的视频解码器,例如,机顶盒。
如图2A所示,智能缓存器DANE包括下列项:
-一个或多个连接接口1(有线和/或无线);
-通信模块2,其包括协议栈以通过连接接口1通信。特别地,通信模块可包括因特网协议栈(著名的(noted)IP栈);
-存储模块3,例如,易失性存储器和/或永久性存储器,用于存储从一个或多个服务器SE接收的多媒体内容的片段以便将其传输至客户端终端CT、请求这些多媒体内容;
-一个或多个处理器4,用于执行存储在存储模块3中的应用和程序;
-内部总线B,连接本领域技术人员公知的用于执行一般住宅网关功能的各个模块、处理装置以及所有装置。
如图2B所示,客户端终端CT至少包括下列项:
-连接接口1A(有线和/或无线,例如,Wi-Fi、以太网、ADSL、电缆、移动和/或广播(例如,DVB、ATSC)接口);
-通信模块2A,其包含协议栈以与HTTP服务器SE通信。特别地,通信模块2A包括本领域公知的TCP/IP栈。当然,其可以是使得客户端终端CT能够与HTTP服务器SE通信的任意其他类型的网络和/或通信装置;
-自适应流模块3A,其从HTTP服务器SE接收HTTP流多媒体内容。
其以更好地匹配网络约束及其自身约束的比特率持续地选择片段;
-视频播放器4A,其适用于解码和渲染多媒体内容;
-一个或多个处理器5A,用于执行存储在客户端终端CT的非易失性存储器中的应用和程序;
-存储装置6A,用于在向视频播放器4A传输之前缓冲从HTTP服务器SE接收的片段,例如,易失性存储器;
-内部总线B1,连接本领域技术人员公知的用于执行一般客户端终端功能的各个模块和所有装置。
在下文中,假设给定客户端终端CT发送网络N上的第一请求以获得多媒体内容的给定片段。所述第一请求包括优选所请求的表示和一个或多个替代所请求的表示。例如,申请人提交的并通过参考结合于此的欧洲专利申请EP 13305909.7中描述了这种类型的请求,并且其中所述请求可使用一个“altlist”额外指令以列出替代表示。
根据优选实施例,智能缓存器DANE还包括下列项:
-匹配模块5,该匹配模块被配置为确定(在服务器SE已被智能缓存器DANE请求用于进一步的客户端终端CT的)给定片段的至少一个正在进行的表示是否与(由给定客户端终端CT发送的)第一请求的优选或替代表示相匹配。所述匹配的正在进行的表示可已被存储在智能缓存器DANE中或可当前正在下载。为了这个目的,匹配模块5可使用与第一请求中所请求的表示(请求URL、altlist扩展头部)相关联的URL(全球资源定位器);
-计算器6,该计算器适用于确定由匹配模块5标识的给定片段的匹配的正在进行的表示的效用函数U的值。如在下文所描述的,效用函数U可取决于与智能缓存器DANE或客户端终端CT相关联的操作模式;
-比较器7,该比较器适用于在若干正在进行的表示与第一请求的表示相匹配的情况下,确定具有最高效用函数U的值的已被所述智能缓存器请求的匹配的正在进行的表示。此外,所述比较器7还被配置为检查所确定的正在进行的表示的效用函数U的值是否满足性能标准。在说明性、但非限制性的示例中,当效用函数的值超过零(即,U>0)时满足性能标准。
此外,智能缓存器DANE还可包括带宽估计器8,该带宽估计器被配置为确定沿智能缓存器DANE和服务器SE之间的传输路径的带宽。为了这个目的,带宽估计器8可例如对路径上所接收的字节的数目进行计数。然后通过划分一段时间上所接收的字节数目来估计带宽。自然地,任何其他机制可用于估计这样的带宽。带宽估计器8可被集成在计算器6中。
根据优选实施例,效用函数U取决于与智能缓存器DANE或客户端终端CT相关联的操作模式。可由智能缓存器DANE的所有者来确定模式,或在一个变型中,根据一个或若干网络参数(例如,沿智能缓存器和给定服务器之间的路径的带宽)确定模式。在进一步的变型中,客户端终端可(例如,通过提供向请求的altlist头部提供额外信息)在其针对片段的请求中指示期望的操作模式;根据最终用户个人偏好或在支付允许改善的服务的订阅费之后。
智能缓存器DANE的操作模式可被存储在存储模块3(例如,随机存取存储器(RAM)、本地存储器(例如,硬盘或闪速存储器))中。
特别地,在积极模式、快速模式或质量模式中选择操作模式。明显地,模式的数目是非限制的,并且在不脱离本发明的情况下可不同于三个。
在积极模式中,效用函数U的值等于常数。在此操作模式中,智能缓存器DANE的期望效果是通过将第一请求的优选和替代表示与正在进行的表示匹配,以最大化缓存器命中率并将服务器到缓存器的流量减少至其绝对最小值。当这些表示中的任意表示当前正被下载时,然后在接收到匹配的正在进行的表示时第一请求将被调度以被服务。因此,只要可能,仅一个表示可有利地从服务器SE被下载。
在快速模式中,效用函数U取决于所述第一请求的优选表示从服务器SE的传递时间和已被智能缓存器DANE请求的匹配的正在进行的表示的传递时间。可通过将请求的字节数目除以估计的智能缓存器DANE和服务器SE之间的带宽来容易地计算传递时间。对于与匹配的正在进行的表示相关联的请求,可通过划分将要传送的剩余字节数目除以智能缓存器DANE和服务器SE之间的带宽来计算传递时间。特别地,通过第一请求的优选表示从服务器SE的传递时间和已被智能缓存器DANE请求的匹配的正在进行的表示的传递时间之间的差异来定义效用函数U。当选择快速模式时,计算器6能够计算给定片段的表示的预计到达时间。快速模式防止下载匹配的正在进行的表示持续比第一请求的优选表示的请求和下载更长的时间。因此,将通过额外的、较短的请求来支持长处理请求。然而,当与匹配的正在进行的表示相关联的大请求几乎结束时,智能缓存器DANE将等待其完成,而不是触发用于例如取回第一请求的优选表示的另一快速请求。
在质量模式中,效用函数U取决于优选表示的质量和已被所述缓存器请求的匹配的正在进行的表示的质量。更具体地,通过第一请求的优选表示的质量(例如,比特率)和所考虑的已被智能缓存器DANE请求的正在进行的表示的质量之间的差异来定义质量模式的效用函数U。质量模式依赖于质量,意味着仅当此正在进行的表示的质量高于或等于第一请求的优选表示的质量时,服务与客户端终端CT的第一请求的表示相匹配的正在进行的表示。
对于质量模式,智能缓存器DANE需要知道表示的相对质量。对于DASH内容,通常较高的比特率对应于较高的质量,但明显地,还可使用分离的信令方法(例如,添加到表示的元数据)。然后假设针对比较表示使用质量度量。
如图3所示,智能缓存器DANE被配置为选择多媒体内容的给定片段的表示,以根据其请求和所确定的操作模式向客户端终端CT传递。为了这个目的,智能缓存器DANE可实现下列机制M,包括:
-从第一客户端终端接收(步骤S1)针对多媒体内容的给定片段的优选和替代表示的第一请求;
-确定(步骤S2)(已在服务器SE被智能缓存器DANE请求用于进一步的客户端终端CT的)给定片段的至少一个正在进行的表示是否与第一请求的优选或替代表示相匹配;
-确定(步骤S3)给定片段的每个匹配的正在进行的表示(所述正在进行的表示已被所述缓存器请求)的效用函数的值。特别地:
■当已选择积极操作模式时,效用函数的值是常数(例如,U=1);
■当已选择快速操作模式时,效用函数定义如下:
U=deliverytime(preferred_rep)-deliverytime(matched_ongoing_rep)
■当已选择质量操作模式时,效用函数定义如下:
U=quality(matched_ongoing_rep)+ε-quality(preferred_rep)
其中,ε是用于在足够不同的质量之间进行区分的常数。当比较表示质量时,如果质量的差异(绝对值)低于ε,则表示被视为是等同质量的。
ε可选为等于零。
-选择(步骤S4)具有最高效用函数的值(满足性能标准)的匹配的正在进行的表示。特别地,对于积极模式,当存在若干匹配的正在进行的表示并且由于效用函数的值是常数,所选择的匹配的正在进行的表示与由偏好顺序(优选表示、第一替代、第二替代等)首先请求的表示中的一个表示相对应。在积极模式的进一步的变型中,所选择的匹配的正在进行的表示与具有最短传递时间的表示相对应;
-通过所述缓存器将已由缓存器请求(并可能当前正从服务器SE下载)的所选择的正在进行的表示传输(步骤S5)到第一客户端终端CT。当没有匹配的正在进行的表示具有满足性能标准的效用值(即,没有匹配的正在进行的表示已被选择)时,第一请求的优选表示因此由智能缓存器DANE请求(步骤S6)到服务器SE。
应理解的是,在不脱离本发明的情况下,可改变步骤S0到S6的顺序。
在符合优选实施例的积极模式的第一示例性但非限制性示例中,图4中示出的时序图表示由客户端终端CT 1、CT 2针对片段发送的请求(取rep4(Get rep4),替代[rep6、rep5](alt[rep6,rep5]),取rep6(Get rep6),替代[rep5、rep4])(alt[rep5,rep4])、由智能缓存器DANE针对正在进行的表示发送的请求(取rep4)、由服务器SE发送的响应(rep4)以及由缓存器DANE发送至客户端终端CT 1、CT 2的响应(rep4)。
应注意的是,在积极模式中,在不脱离本发明的情况下,可忽略和不计算或检查效用和性能参数。
特别地,(如前面提到的,假设与第一终端相对应的)客户端终端CT 2发送针对优选表示(rep6)和替代表示(rep5、rep4)的请求。还假设表示6(rep6)比表示4(rep4)具有更好的质量。
根据积极模式,响应于其第一请求,客户端终端CT 2接收替代表示“rep4”,这是由于当其请求到达智能缓存器DANE时,(响应于进一步的客户端终端CT 1的之前的请求)所述替代表示是在下载或被下载的过程中。
在符合优选实施例的快速模式的第二说明性但非限制性示例中,图5中示出的时序图描绘了在客户端终端CT 1、CT 2、智能缓存器DANE以及服务器SE之间交换的请求和响应。
特别地,客户端终端CT 2发送针对优选表示(rep2)和替代表示(rep4、rep3)的请求。存在与客户端终端CT 2的请求的替代表示相匹配的(已被智能缓存器DANE请求的)一个正在进行的表示(rep4)。
然而,被客户端终端CT 2请求的优选表示(rep2)的预期传递时间早于已被请求的匹配的正在进行的表示(rep4)的传递时间,这使得智能缓存器DANE将针对客户端终端CT 2请求所述优选表示(rep2)。
在符合优选实施例的质量模式的第三说明性但非限制性示例中,图6的时序图还示出了在客户端终端CT 1、CT 2、智能缓存器DANE以及服务器SE之间交换的请求和响应。
在此示例中,客户端终端CT 2发送针对优选表示(rep6)和替代表示(rep5、rep4)的请求。至于第一示例,假设表示6(rep6)比表示4(rep4)具有更好的质量。存在与客户端终端CT 2的请求的替代表示相匹配的(已被智能缓存器DANE请求的)一个正在进行的表示(rep4)。
假设确定(已被智能缓存器DANE请求用于客户端终端CT 1的)匹配的正在进行的表示rep4的质量低于优选表示6的质量,则智能缓存器DANE将针对客户端终端CT 2请求所述优选表示(rep6)。
因此,优选实施例在于考虑来自客户端终端CT的请求(总的来说包括优选表示及其替代)与已在进行中的操作相匹配,以便确定朝服务器SE发布另一请求的效用。当发现匹配时,智能缓存器DANE执行计算以确定是否将通过朝服务器SE发布新请求或在正在进行的请求之后进行序列化来处理请求(例如,用正在进行的请求的结果服务),以减少服务器的流量的量。
应注意的是,智能缓存器DANE可被集成在代理、网关或任意其他适当的网络装置中。
附图中的流程图和/或框图根据本发明的各个实施例示出了系统、方法和计算机程序产品的可能的实现方式的配置、操作和功能。在这方面,流程图或框图中的每个方框可表示代码的模块、片段、或一部分,该代码包括用于实现(一个或多个)指定逻辑功能的一个或多个可执行指令。还应注意的是,在某些替代实现方式中,方框中指出的功能可在图中指出的顺序之外发生。例如,实际上,根据有关的功能,被连续示出的两个方框可被实质上同时地执行、或方框有时可以以相反顺序被执行、或方框可以以替代的顺序被执行。还将注意的是,框图和/或流程图图示的每个方框、以及框图和/或流程图图示中方框的组合,可通过执行指定功能或动作的专用基于硬件的系统、或专用硬件和计算机指令的组合来实现。尽管未被明确地描述,本实施例可在任意组合或子组合中被采用。
如本领域技术人员将认识到的,本原理的各方面可被体现为系统、方法或计算机可读介质。因此,本原理的各方面可采取下列形式:完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)、或在本文可全部通常被称为“电路”、“模块”、或“系统”的结合软件和硬件各方面的实施例。此外,本原理的各方面可采取计算机可读存储介质的形式。可利用一个或多个计算机可读存储介质的任意组合。
计算机可读存储介质可采取计算机可读程序产品的形式,该计算机可读程序产品体现在(一个或多个)计算机可读介质中并具有体现在其上的由计算机可执行的计算机可读程序代码。如本文所使用的,计算机可读存储介质被认为是给予在其中存储信息的固有能力以及从中提供信息取回的固有能力的非暂态存储介质。例如,计算机可读存储介质可以是但不限于:电、磁、光、电磁、红外、或半导体系统、装置、或设备、或前述项的任意适当组合。将认识到的是,尽管提供了可应用本原理的计算机可读存储介质的更具体的示例,下列项仅是说明性的并且未详尽列出如已被本领域普通技术人员认识到的示例:便携式计算机软盘;硬盘;随机存取存储器(RAM);只读存储器(ROM);可擦除可编程只读存储器(EPROM或闪速存储器);便携式光盘只读存储器(CD-ROM);光存储设备;磁存储设备;或前述项的任意适当组合。

Claims (13)

1.一种用于操作被配置为沿客户端终端(CT)和至少一个服务器(SE)之间的传输路径布置的缓存器(DANE)的方法,所述缓存器(DANE)被配置为从客户端终端(CT)接收针对以若干表示可用的多媒体内容的片段的请求,特征在于所述方法包括:
-从第一客户端终端(CT)接收(S1)针对所述多媒体内容的给定片段的优选表示和至少一个替代表示的第一请求;
-确定(S2)已被所述缓存器从所述服务器(SE)请求用于进一步的客户端终端(CT)并当前正在被所述缓存器下载但尚未存储在所述缓存器处的所述给定片段的正在进行的表示,所述正在进行的表示与所述第一请求的优选表示或替代表示相匹配。
2.如权利要求1所述的方法,还包括:
-确定(S3)与已被所述缓存器(DANE)请求用于进一步的客户端终端(CT)的所述给定片段的匹配的正在进行的表示相关联的效用函数的值;
-当所述效用函数的值满足性能标准时,将已由所述缓存器(DANE)请求的所述匹配的正在进行的表示传输(S5)到所述第一客户端终端(CT)。
3.如权利要求2所述的方法,其中,在与所述第一请求的两个不同表示相匹配的至少两个正在进行的表示已被所述缓存器(DANE)请求用于进一步的客户端终端(CT)情况下,当所述效用函数的值满足所述性能标准时,传输与最高的所述效用函数的值相关联的所述匹配的正在进行的表示。
4.如权利要求2或3所述的方法,其中,在与所述第一请求的两个不同表示相匹配的至少两个正在进行的表示已被所述缓存器(DANE)请求用于进一步的客户端终端(CT)情况下,当没有所述匹配的正在进行的表示具有满足所述性能标准的效用函数的值时,所述第一请求的优选表示由所述缓存器(DANE)请求至所述服务器(SE)。
5.如权利要求2所述的方法,其中,当所述效用函数的值超过零时满足所述性能标准。
6.如权利要求2所述的方法,其中,所述效用函数取决于操作模式,所述操作模式属于包括至少下列项的一组模式:
-积极模式,其中,所述效用函数的值等于常数;
-快速模式,其中,所述效用函数取决于所述第一请求的优选表示从所述服务器(SE)的传递时间和已被所述缓存器(DANE)请求的匹配的正在进行的表示的传递时间;
-质量模式,其中,所述效用函数取决于所述第一请求的优选表示的质量和已被所述缓存器(DANE)请求的匹配的正在进行的表示的质量。
7.如权利要求6所述的方法,其中,根据至少一个网络参数确定所述操作模式。
8.如权利要求6所述的方法,其中,所述操作模式由所述第一客户端终端选择,并在所述第一请求中被指示。
9.一种包括缓存器的网络设备,所述缓存器适用于位于沿客户端终端(CT)和至少一个服务器(SE)之间的传输路径,所述缓存器被配置为从客户端终端(CT)接收针对以若干表示可用的多媒体内容的片段的请求,特征在于所述缓存器包括:
-连接接口(1),所述连接接口用于从第一客户端终端(CT)接收针对所述多媒体内容的给定片段的优选表示和至少一个替代表示的第一请求;
-匹配模块(5),所述匹配模块被配置为确定已被所述缓存器(DANE)从服务器(SE)请求用于进一步的客户端终端(CT)并当前正在被所述缓存器下载但尚未存储在所述缓存器处的所述给定片段的至少一个正在进行的表示是否与所述第一请求的优选表示或替代表示相匹配。
10.如权利要求9所述的网络设备,其中,所述缓存器还包括计算器(6),所述计算器适用于确定与由所述匹配模块(5)标识的给定片段的匹配的正在进行的表示相关联的效用函数的值。
11.如权利要求10所述的网络设备,其中,所述缓存器还包括比较器(7),所述比较器被配置为在若干正在进行的表示与所述第一请求的优选表示和替代表示相匹配的情况下,确定具有最高所述效用函数的值的已被所述缓存器(DANE)请求的所述匹配的正在进行的表示。
12.如权利要求11所述的网络设备,其中,所述比较器(7)还被配置为检查所确定的匹配的正在进行的表示的所述效用函数的值是否满足性能标准。
13.如权利要求11或12所述的网络设备,其中,所述效用函数取决于操作模式,所述操作模式属于包括至少下列项的一组模式:
-积极模式,其中,所述效用函数的值等于常数;
-快速模式,其中,所述效用函数取决于所述第一请求的优选表示从所述服务器(SE)的传递时间和已被所述缓存器(DANE)请求的匹配的正在进行的表示的传递时间;
-质量模式,其中,所述效用函数取决于所述第一请求的优选表示的质量和已被所述缓存器(DANE)请求的匹配的正在进行的表示的质量。
CN201580015256.2A 2014-03-20 2015-03-12 用于操作沿客户端终端和至少一个服务器之间的传输路径布置的缓存器的方法、及相应的缓存器 Active CN106105145B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP14305393.2A EP2922266A1 (en) 2014-03-20 2014-03-20 Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache.
EP14305393.2 2014-03-20
PCT/EP2015/055221 WO2015140050A1 (en) 2014-03-20 2015-03-12 Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache

Publications (2)

Publication Number Publication Date
CN106105145A CN106105145A (zh) 2016-11-09
CN106105145B true CN106105145B (zh) 2020-04-07

Family

ID=50439302

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580015256.2A Active CN106105145B (zh) 2014-03-20 2015-03-12 用于操作沿客户端终端和至少一个服务器之间的传输路径布置的缓存器的方法、及相应的缓存器

Country Status (7)

Country Link
US (1) US10856015B2 (zh)
EP (2) EP2922266A1 (zh)
JP (1) JP6542346B2 (zh)
KR (1) KR102356621B1 (zh)
CN (1) CN106105145B (zh)
TW (1) TW201537934A (zh)
WO (1) WO2015140050A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3311577B1 (en) * 2015-06-16 2020-05-27 Intel IP Corporation A dynamic adaptive streaming over hypertext transfer protocol (dash) assisting network element (dane) transcoding media content based on a set of metric and status messages received from the dash client and corresponding dash client device
EP3485646B1 (en) 2016-07-15 2022-09-07 Koninklijke KPN N.V. Streaming virtual reality video
US10893086B2 (en) * 2016-11-10 2021-01-12 Sony Corporation Node type based control of assistance for data streaming
EP3687176A1 (en) 2019-01-22 2020-07-29 InterDigital CE Patent Holdings A client and a method for managing, at the client, a streaming session of a multimedia content
WO2021009597A1 (en) 2019-07-12 2021-01-21 Carrier Corporation A system and a method for streaming videos by creating object urls at client
MX2023011302A (es) * 2021-04-08 2023-12-14 Interdigital Ce Patent Holdings Sas Ajuste fino de datos de video en una aplicación de streaming.

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7171469B2 (en) 2002-09-16 2007-01-30 Network Appliance, Inc. Apparatus and method for storing data in a proxy cache in a network
KR20070104566A (ko) 2005-01-24 2007-10-26 사이트릭스 시스템스, 인크. 네트워크에서 동적으로 발생된 객체들의 캐싱을 수행하는시스템 및 방법
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
EP2673935B1 (en) * 2011-02-11 2019-04-24 InterDigital Patent Holdings, Inc. Method and apparatus for distribution and reception of content
US8812621B2 (en) * 2011-05-03 2014-08-19 Cisco Technology, Inc. Reducing fetching load on cache servers in adaptive streaming
US8977704B2 (en) * 2011-12-29 2015-03-10 Nokia Corporation Method and apparatus for flexible caching of delivered media
EP2819368A1 (en) 2013-06-28 2014-12-31 Thomson Licensing Method for providing a content part of a multimedia content to a client terminal, corresponding cache
EP2819367A1 (en) 2013-06-28 2014-12-31 Thomson Licensing Method for retrieving, by a client terminal, a content part of a multimedia content
US9716668B2 (en) * 2013-12-31 2017-07-25 Echostar Technologies L.L.C. Aggregated adaptive bit rate streaming

Also Published As

Publication number Publication date
US20180176613A1 (en) 2018-06-21
TW201537934A (zh) 2015-10-01
KR20160134802A (ko) 2016-11-23
CN106105145A (zh) 2016-11-09
JP6542346B2 (ja) 2019-07-10
EP2922266A1 (en) 2015-09-23
EP3120519A1 (en) 2017-01-25
KR102356621B1 (ko) 2022-01-28
WO2015140050A1 (en) 2015-09-24
EP3120519B1 (en) 2021-05-05
JP2017514416A (ja) 2017-06-01
US10856015B2 (en) 2020-12-01

Similar Documents

Publication Publication Date Title
CN106105145B (zh) 用于操作沿客户端终端和至少一个服务器之间的传输路径布置的缓存器的方法、及相应的缓存器
US10116763B2 (en) Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache
CN106464738B (zh) 用于操作网络设备的方法及相应的网络设备
KR20150140230A (ko) 클라이언트 단말기들과 적어도 하나의 서버 사이의 송신 경로를 따라 배열된 캐시를 작동시키기 위한 방법, 및 대응하는 캐시
JP6538061B2 (ja) クライアント端末にマルチメディアコンテンツのコンテンツ部分を提供する方法及び対応するキャッシュ
EP2819368A1 (en) Method for providing a content part of a multimedia content to a client terminal, corresponding cache
CN105359485B (zh) 由客户终端获得多媒体内容的内容部分的方法
CN113037821B (zh) 操作高速缓存器的方法及相应高速缓存器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20190523

Address after: France

Applicant after: Interactive Digital CE Patent Holding Company

Address before: The French Yixilaimu Leo City

Applicant before: Thomson Licensing SA

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant