CN107113325A - 用于选择性传输加速器操作的系统和方法 - Google Patents

用于选择性传输加速器操作的系统和方法 Download PDF

Info

Publication number
CN107113325A
CN107113325A CN201580041259.3A CN201580041259A CN107113325A CN 107113325 A CN107113325 A CN 107113325A CN 201580041259 A CN201580041259 A CN 201580041259A CN 107113325 A CN107113325 A CN 107113325A
Authority
CN
China
Prior art keywords
function
logic units
content
request
content server
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
CN201580041259.3A
Other languages
English (en)
Inventor
P·K·维特哈拉德夫尤尼
Y·毛
P·普尔卡亚斯塔
F·乌卢皮纳尔
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN107113325A publication Critical patent/CN107113325A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本文公开了适于提供选择性传输加速器操作的系统和方法。在根据实施例的操作中,基于特定的标准,选择性绕开或者不绕开传输加速器操作的一个或多个功能。传输加速器控制逻辑单元可以获得一个或多个加速选择属性,以及基于所述一个或多个加速选择属性,选择性地调用客户端设备的传输加速器逻辑单元的第一功能来从内容服务器获得内容,或者绕开客户端设备的传输加速器逻辑单元第一功能来从内容服务器获得内容。第一功能可以包括:将用户代理的针对内容的请求细分成多个块请求,以从内容服务器请求内容的块,从而向客户端设备提供对内容的加速递送。

Description

用于选择性传输加速器操作的系统和方法
背景技术
越来越多的内容正在可用的通信网络上传送。通常,这种内容包括众多类型的数据,例如,其包括音频数据、视频数据、图像数据等等。视频内容(特别是高分辨率视频内容)通常包括相对大的数据文件或其它数据集合。因此,正在消费这样的内容的终端用户设备或其它客户端设备上的用户代理(UA)通常请求和接收包括所期望视频内容的内容片段序列。例如,UA可以包括在用户设备上执行的客户端应用或过程,其用于请求数据(其通常是多媒体数据),以及接收所请求的数据以进行进一步处理并可能地在该用户设备上进行显示。
今天,许多类型的应用依赖于HTTP来实现前述的内容递送。在许多这样的应用中,对于用户使用该应用的体验来说,HTTP传输的性能是关键的。例如,实时流式传输具有妨碍视频流式传输客户端的性能的若干约束。有两个约束特别突出。第一,媒体片段随着时间而变得一个接一个地可用。这种约束阻止客户端连续地下载大部分的数据,其转而影响下载速率估计的准确性。由于大部分流式传输客户端按照“请求-下载-估计”的循环进行工作,因此当下载估计不准确时,它一般执行的并不完美。第二,当观看实时事件流式传输时,用户通常并不想承受与实际的实时事件时间线相比的较长延迟。这样的行为阻止了流式传输客户端构建较大的缓冲区,其转而可能造成更多的再缓冲。
如果流式传输客户端在传输控制协议(TCP)上工作(例如,如同大部分动态自适应HTTP流式传输(DASH)客户端的做法),前述的严格实时事件时间线与典型的TCP行为相矛盾,当存在缺失的分组或者重新排序的分组时,TCP行为将减速。内置的TCP拥塞控制机制在实时流式传输期间,加重了再缓冲效应,而实时事件的观看者更可能愿意跳过再缓冲,并跳到最新的事件时间线。
相同的问题也存在于基于HTTP的文件下载,在该情况下,存在着完成下载的截止期限,否则将招致惩罚。例如,如果用户尝试访问一个网页、一幅图片或者使用基于web的应用,则较大的下载延时可能导致用户转身离开该网页或该基于web的应用。
点播流式传输也承受类似的约束。例如,在点播流式传输中,客户端设备希望尽可能快速地以正确的顺序来接收该点播流,以便向用户提供回放。对点播内容进行流式传输的性能受到缺失的和重新排序的分组、再缓冲等等的影响。
已开发了用于使用传输加速器的实施方式来提供关于内容递送的加速的各种技术。例如,这样的传输加速器实施方式可以操作用于提供对数据的高速缓冲、对数据请求和/或对数据请求的响应的处理等等,以尽力促进数据向客户端设备的加快递送。虽然提供了在一些或者甚至许多情况下,数据向客户端设备的加速递送,但许多传输加速器实施方式在一些情形下仍然导致非期望的操作。例如,传输加速器的操作可能导致增加的网络拥塞、与通信协议或者其一部分的不兼容等等。
发明内容
在本公开内容的一个方面,一种方法包括:由传输加速器(TA)控制逻辑单元获得一个或多个加速选择属性,其中,所述一个或多个加速选择属性包括以下各项中的至少一项:用户代理的针对来自内容服务器的内容的请求的属性,或者内容服务器的属性。实施例的该方法还包括:基于由客户端设备的TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用客户端设备的传输加速器(TA)逻辑单元的第一功能来从内容服务器获得内容,或者绕开客户端设备的TA逻辑单元的第一功能来从内容服务器获得内容,其中,客户端设备的TA逻辑单元的第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从内容服务器请求内容的块,从而向客户端设备提供对该内容的加速递送。
在本公开内容的另外方面,一种装置包括:用于由传输加速器(TA)控制逻辑单元获得一个或多个加速选择属性的单元,其中,所述一个或多个加速选择属性包括以下各项中的至少一项:用户代理的针对来自内容服务器的内容的请求的属性,或者内容服务器的属性。实施例的该装置还包括:用于基于由客户端设备的TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用客户端设备的传输加速器(TA)逻辑单元的第一功能来从内容服务器获得内容,或者绕开客户端设备的TA逻辑单元的第一功能来从内容服务器获得内容的单元,其中,客户端设备的TA逻辑单元的第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从内容服务器请求内容的块,从而向客户端设备提供对该内容的加速递送。
在本公开内容的另外方面,一种计算机程序产品具有其上记录有程序代码的计算机可读介质。该程序代码包括:用于由传输加速器(TA)控制逻辑单元获得一个或多个加速选择属性的程序代码,其中,所述一个或多个加速选择属性包括以下各项中的至少一项:用户代理的针对来自内容服务器的内容的请求的属性,或者内容服务器的属性。实施例的该程序代码还包括:用于基于由客户端设备的TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用客户端设备的传输加速器(TA)逻辑单元的第一功能来从内容服务器获得内容,或者绕开客户端设备的TA逻辑单元的第一功能来从内容服务器获得内容的程序代码,其中,客户端设备的TA逻辑单元的第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从内容服务器请求内容的块,从而向客户端设备提供对该内容的加速递送。
在本公开内容的另外方面,一种装置包括至少一个处理器和耦合到所述处理器的存储器。所述处理器被配置为:由传输加速器(TA)控制逻辑单元获得一个或多个加速选择属性,其中,所述一个或多个加速选择属性包括以下各项中的至少一项:用户代理的针对来自内容服务器的内容的请求的属性,或者内容服务器的属性。实施例的所述处理器还被配置为:基于由客户端设备的TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用客户端设备的传输加速器(TA)逻辑单元的第一功能来从内容服务器获得内容,或者绕开客户端设备的TA逻辑单元的第一功能来从内容服务器获得内容,其中,客户端设备的TA逻辑单元的第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从内容服务器请求内容的块,从而向客户端设备提供对该内容的加速递送。
附图说明
图1A示出了根据本公开内容的实施例的适于选择性传输加速器操作的系统。
图1B示出了根据本公开内容的实施例的其中传输加速器适于提供多端口操作的配置。
图2A示出了根据本公开内容的实施例的一种高层流程图,该流程图示出了用于提供选择性传输加速器操作的传输加速器控制逻辑单元的操作。
图2B示出了根据本公开内容的实施例的一种高层流程图,该流程图示出了用于选择性地调用传输加速器逻辑单元的功能的操作。
具体实施方式
本文所使用的“示例性”一词意指“用作示例、实例或说明”。本文中描述为“示例性”的任何方面不应被解释为比其它方面更优选或更具优势。
在本说明书中,术语“应用”还可以包括具有可执行内容的文件,例如:目标代码、脚本、字节代码、标记语言文件和补丁。此外,本文所引用的“应用”还可以包括:在本质上不可执行的文件,例如,可能需要被打开的文档或者需要被存取的其它数据文件。
如本说明书中所使用的,术语“内容”可以包括具有视频、音频、视频和音频的组合的数据,或者具有一个或多个质量水平的其它数据,所述质量水平根据比特速率、分辨率或其它因素来确定。内容还可以包括可执行内容,例如:目标代码、脚本、字节代码、标记语言文件和补丁。此外,“内容”还可以包括:在本质上不可执行的文件,例如,可能需要被打开的文档或者需要被存取的其它数据文件。
如本说明书中所使用的,术语“片段”指代可以由用户设备请求和/或在用户设备处接收的内容的一个或多个部分。
如本说明书中所使用的,术语“流式传输内容”指代可以根据一个或多个标准,从服务器设备发送并在用户设备处接收的内容,所述一个或多个标准实现内容的实时传送或者在一时间段上的内容的传送。流式传输内容标准的示例包括支持解交织的(或多个)信道的标准,以及不支持解交织的(或多个)信道的标准。
如本说明书中所使用的,术语“组件”、“数据库”、“模块”和“系统”等等旨在指代与计算机相关的实体,无论其是硬件、固件、硬件和软件的结合、软件或运行中的软件。例如,组件可以是但不限于是:在处理器上运行的过程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。通过说明的方式,在计算设备上运行的应用和该计算设备二者都可以是组件。一个或多个组件可以存在于过程和/或执行的线程内,并且组件可以位于一个计算机上和/或分布在两个或更多个计算机之间。此外,这些组件可以从在其上具有存储的各种数据结构的各种计算机可读介质执行。这些组件可以例如根据具有一个或多个数据分组的信号(例如,来自一个组件的数据,该组件与本地系统、分布式系统中的另一个组件进行交互和/或通过信号跨越诸如互联网之类的网络与其它系统进行交互),通过本地和/或远程过程来进行通信。
如本文中所使用的,术语“用户装备”、“用户设备”和“客户端设备”包括能够从web服务器请求和接收内容,以及向web服务器发送信息的设备。这样的设备可以是静止设备或移动设备。术语“用户装备”、“用户设备”和“客户端设备”可以互换地使用。
如本文中所使用的,术语“用户”指代在用户设备或客户端设备上接收内容,以及向网站发送信息的个体。
图1A和图1B示出了根据本文的构思,适于在通信网络上提供内容(例如,其可以包括音频数据、视频数据、图像数据、文件数据等等)的传送的系统100的实施例(图1A的实施例是系统100A,而图1B的实施例是100B)。因此,客户端设备110被示出为经由网络150与服务器130进行通信,从而根据本公开内容的构思,服务器130可以向客户端设备110传送数据库140中存储的各种内容。应当领会的是,虽然在图1A和图1B中仅表示了单个客户端设备和单个服务器和数据库,但系统100可以包括多个任意或所有这样的设备。例如,服务器130可以包括服务器群中的一个服务器,其中,多个服务器可以被集中地布置和/或以分布式配置来布置,以服务高层级的内容传送需求。替代地,例如当内容中的一些或全部位于数据库140(高速缓冲)中时,可以将服务器130并置在与传输加速器120相同的设备上(例如,直接通过I/O元件113,而不是通过网络150来连接到传输加速器120),其中,数据库140也并置在该设备上,并通过服务器130来提供给传输加速器120。同样,用户可以拥有多个客户端设备和/或多个用户可以各自拥有一个或多个客户端设备,这些客户端设备中的任意一个或者全部都适于根据本文的构思进行内容传送。
客户端设备110可以包括可操作为经由网络150来接收内容的传送的各种配置的设备。例如,客户端设备110可以包括有线设备、无线设备、个人计算设备、平板电脑或平板计算设备、便携式蜂窝电话、具备WiFi能力的设备、具备蓝牙能力的设备、电视、具有显示器的一副眼镜、一副增强现实眼镜、或者连接到网络150的任何其它通信、计算或接口设备,其中,网络150可以使用任何可用的方法或架构与服务器130进行通信。客户端设备110被称为“客户端设备”,这是由于其可以充当或者连接到充当服务器130的客户端的设备。
所示出的实施例的客户端设备110包括多个功能块,这里示出为包括处理器111、存储器112和输入/输出(I/O)元件113。虽然为了简单起见,在图1A和图1B中的表示里没有示出,但客户端设备110可以包括另外的功能块,例如,用户接口、射频(RF)模块、照相机、传感器阵列、显示器、视频播放器、浏览器等等,通过根据本文的构思的操作可以使用其中的一些或全部。可以通过一个或多个总线(例如,总线114),来操作性连接前述的功能块。总线114可以包括逻辑连接和物理连接,以允许所连接的元件、模块和组件进行通信和互操作。
存储器112可以是任何类型的易失性存储器或非易失性存储器,并且在一个实施例中,其可以包括闪存。存储器112可以永久地安装在客户端设备110中,或者可以是移动存储元件(例如,移动存储卡)。虽然将存储器112示为单个元件,但其可以包括多个分立存储器和/或存储器类型。
存储器112可以存储或者包括各种计算机可读代码区段,例如,可以形成应用、操作系统、文件、电子文档、内容等等。例如,所示出的实施例的存储器112包括用于规定传输加速器(TA)120、传输加速器(TA)控制125和UA 129的计算机可读代码区段,当所述计算机可读代码区段被处理器(例如,处理器111)执行时,提供可如本文所描述的那样进行操作的逻辑电路。存储器112存储的代码区段除提供前述的TA 120、TA控制125和UA 129之外,还可以提供应用。例如,存储器112可以存储诸如浏览器之类的应用,其用于根据本文的实施例从服务器130存取内容。这样的浏览器可以是web浏览器,例如,用于存取和观看web内容,以及用于经由网络150,通过连接151和152,经由超文本传输协议(HTTP)与服务器130进行通信的HTTP web浏览器(如果服务器130是web服务器的话)。举例而言,可以经由网络150,通过连接151和152,从客户端设备110中的浏览器向服务器130发送HTTP请求。可以经由网络150,通过连接152和151,从服务器130向客户端设备110中的浏览器发送HTTP响应。
UA129可操作为从服务器(例如,服务器130)请求和/或接收内容。例如,UA 129可以包括客户端应用或过程(例如,浏览器、DASH客户端、HTTP实时流式传输(HLS)客户端等等),其用于请求数据(例如,多媒体数据),以及接收所请求的数据以进行进一步处理并可能地在客户端设备110的显示器上进行显示。例如,客户端设备110可以执行包括UA 129的代码以回放媒体,例如,独立的媒体回放应用或者被配置为在互联网浏览器中运行的基于浏览器的媒体播放器。在根据实施例的操作中,UA 129决定在流式传输内容会话期间的各个时间点,要请求传送内容文件的哪些片段或者片段序列。例如,UA 129的DASH客户端配置可以进行操作以例如基于最近下载状况,决定在每一个时间点,从内容的哪个表示(例如,高分辨率表示、中等分辨率表示、低分辨率表示等等)中请求哪个片段。同样,UA 129的web浏览器配置可以进行操作以请求web网页或者其一部分等等。一般情况下,UA使用HTTP请求来请求这样的片段。
TA 120适于根据本文的构思,来提供所期望内容的片段或者片段序列(例如,如在提供视频流式传输、文件下载、基于web的应用、通用web网页等等时可以使用的前述的内容片段)的增强型递送。例如,TA 120可以进行操作以将UA 129所进行的内容的请求细分成多个块请求,以从服务器130控制性地请求内容的块,从而向客户端设备110提供对内容的加速递送。实施例的TA 120适于允许只支持标准接口(例如,实现标准化TCP传输协议的HTTP1.1接口)的通用或传统UA(即,没有被预先设计为与TA进行交互的UA)进行片段请求,以便仍然受益于使用执行那些请求的TA。另外地或替代地,实施例的TA 120提供了增强型接口,以便有助于向被设计为利用该增强型接口的功能的UA提供另外的益处。实施例的TA 120适于根据现有的内容传送协议来执行片段请求,例如通过在实现标准化TCP传输协议的HTTP接口上使用TCP,从而允许通用或传统内容服务器(即,没有被预先设计为与TA进行交互的内容服务器)对这些请求进行服务,同时向UA和客户端设备提供片段的增强型递送。
在提供前述的增强型片段递送功能时,本文的实施例的TA 120包括如本文所描述的架构组件和协议。例如,图1A中所示出的实施例的TA 120A包括请求管理器(RM)121和连接管理器(CM)122,这二者进行协作来提供各种增强型片段传送功能。RM 121可以进行操作以对来自UA 129的片段请求进行接收和响应,以对请求的片段进行细分以提供多个相应的更小的数据请求(本文称为“块请求”,其中,所请求的数据包括一个“块”),以及将块请求指引到CM 122。因此,CM 122可以与RM 121进行对接以接收块请求,通过网络150来发送这些请求,接收针对它们的块请求的响应,以及将这些响应传递回RM 121,其中,UA 129所请求的片段根据由RM 121接收的块来解析并被提供给UA 129。实施例的CM 122的功能进行操作以决定何时请求RM 121所执行的块请求的数据。
除了形成应用、操作系统、文件、电子文档、内容等等的前述代码区段之外,存储器112还可以包括或者提供客户端设备110的功能模块所使用的各种寄存器、缓冲区和存储单元。例如,存储器112可以包括播放缓冲区,例如,可以提供用于对数据片段进行卷绕(spool)的先入/先出(FIFO)存储器,以便从服务器130进行流式传输并由客户端设备110进行回放。
实施例的处理器111可以是能够执行指令,以控制客户端设备110的操作和功能的任何通用或专用处理器。虽然将处理器111示出为单个元件,但处理器111可以包括多个处理器或者分布式处理架构。
I/O元件113可以包括和/或耦合到各种输入/输出组件。例如,I/O元件113可以包括和/或耦合到显示器、扬声器、麦克风、键盘、定点设备、触摸屏、用户接口控制元件、以及允许用户提供输入命令和从客户端设备110接收输出的任何其它设备或系统。任何或者所有这样的组件都可以用于提供客户端设备110的用户接口。另外地或替代地,I/O元件113可以包括和/或耦合到磁盘控制器、网络接口卡(NIC)、射频(RF)收发机、以及有助于客户端设备110的输入和/或输出功能的任何其它设备或系统。
在进行操作以存取和播放流式传输内容时,客户端设备110使用链路151和152,经由网络150与服务器130进行通信以获得内容数据(例如,作为前述的片段),其中,当该内容数据被渲染时,提供该内容的回放。因此,UA 129可以包括由处理器111执行以在客户端设备110中建立内容回放环境的内容播放器应用。当发起特定的内容文件的回放时,UA 129可以与服务器130的内容递送平台进行通信,以获得内容标识符(例如,一个或多个列表、清单、配置文件、或者用于标识所期望内容的媒体区段或片段、以及它们的时间边界的其它标识符)。UA 129的流式传输内容逻辑单元使用关于这些媒体区段和它们的定时的信息,来控制对用于内容回放的片段的请求。
图1B示出了实现多个接口架构的客户端设备110的实施例,例如,可以用于提供针对一个或多个通信会话的同时多端口通信支持、关于通信会话的通信端口恢复等等。因此,图1B中所示出的实施例的客户端设备110的TA 120B包括RM 121和连接管理器(CM)122a-122d,它们进行协作以提供各种增强型片段递送功能。相应地,在图1B中,将I/O元件113示出为包括可操作为促进数据通信的多个接口,它们被示出为接口161a-161d。RM 121可以同样适于以多个不同的CM配置进行操作,和/或同时地与一个以上的CM进行对接,例如,从CM122a-122d中的两个或更多个CM请求相同片段或者片段序列的数据块。例如,每一个这样的CM可以支持不同的网络接口(例如,第一CM可以具有到设备上高速缓冲的本地接口,第二CM可以使用到3G网络接口的HTTP/TCP连接,第三CM可以使用到4G/LTE网络接口的HTTP/TCP连接,第四CM可以使用到WiFi网络接口的HTTP/TCP连接等等)。相应地,I/O元件113的接口可以包括可根据多种通信协议进行操作的各种配置。例如,接口161a-161d可以分别提供到3G网络、4G/LTE网络、不同的4G/LTE网络和WiFi通信的接口,其中,例如,TA 120使用诸如HTTP/TCP、HTTP/xTCP或者使用用户数据报协议(UDP)构建的协议之类的传输协议来通过这些接口传送数据。每一个这样的接口可操作为提供一个或多个通信端口,以便例如经由相关联的通信链路(例如,所示出的用于将I/O元件113的接口与网络150的组件进行链接的链路151a-151d)来实现通信会话。
应当领会的是,根据本文的实施例所使用的接口的数量和配置并不限于图1A和图1B中所示出的接口的数量和配置。例如,可以根据传输加速器的实施例,来使用更少或者更多的接口。此外,一个或多个这样的接口可以通过不同于所示出的网络链路(例如,链路151a-151d)的网络链路,和/或与不同于网络组件(例如,服务器130)的设备,来提供数据通信。
服务器130包括可操作为向客户端设备供应所期望内容的一个或多个系统。例如,服务器130可以包括:可操作为经由网络150,将内容流式传输到各个客户端设备的标准HTTP web服务器。服务器130可以包括内容递送平台,后者包括可以向用户设备110递送内容的任何系统或方法。可以将内容存储在与服务器130进行通信的一个或多个数据库(例如,所示出的实施例的数据库140)中。数据库140可以被存储在服务器130上,或者可以被存储在通信耦合到服务器130的一个或多个服务器上。数据库140的内容可以包括各种形式的数据,例如,视频、音频、流式传输文本、以及服务器130可以在一时间段上向客户端设备110传送的任何其它内容(例如,实时网络广播内容和存储的媒体内容)。
数据库140可以包括多个不同的源或者内容文件和/或任何特定内容的多个不同的表示(例如,高分辨率表示、中等分辨率表示、低分辨率表示等等)。例如,内容文件141可以包括高分辨率表示,以及因此的特定多媒体编辑的高比特速率表示(当传送时),而内容文件142可以包括低分辨率表示,以及因此的相同特定多媒体编辑的低比特速率表示(当传送时)。另外地或替代地,任何特定内容的不同表示都可以包括前向纠错(FEC)表示(例如,包括内容数据的冗余编码的表示),例如可以通过内容文件143来提供。根据本文的实施例,统一资源定位符(URL)、统一资源标识符(URI)和/或统一资源名称(URN)全部都与这些内容文件相关联,因此可以使用这样的URL、URI和/或URN(或许具有诸如字节范围之类的其它信息)来识别和存取请求的数据。
网络150可以是无线网络、有线网络、广域网(WAN)、局域网(LAN)、或者适合于传送如本文所描述的内容的任何其它网络。在一个实施例中,网络150可以包括至少互联网的部分。客户端设备110可以通过双向连接(例如,通过网络连接151来表示)来连接到网络150。替代地,客户端设备110可以经由单向连接(例如,由具备多媒体广播多媒体系统(MBMS)能力的网络来提供的单向连接)来连接(例如,连接151、152并且网络150可以包括MBMS网络,以及服务器130可以包括广播多播服务中心(BS-MC)服务器)。该连接可以是有线连接,或者可以是无线连接。在一个实施例中,连接151可以是无线连接,例如,蜂窝4G连接、无线保真度(WiFi)连接、蓝牙连接或者另一种无线连接。服务器130可以通过例如由网络连接152表示的双向连接,来连接到网络150。服务器130可以通过单向连接来连接到网络150(例如,使用如在3GPP TS.26.346或ATSC 3.0网络中所描述的协议和服务的MBMS网络)。该连接可以是有线连接或者可以是无线连接。
图1A和图1B中所示出的实施例的客户端设备110包括:可操作为提供所期望内容的片段或片段序列的增强型递送的TA 120。例如,如上文所论述的,所示出的实施例的TA120包括RM和CM功能,在许多情形下,这二者进行协作来提供可操作为促进数据向客户端设备的加快递送的各种增强型片段递送功能。然而,TA 120所提供的传输加速功能并不能在所有情形下,都产生期望的操作(例如,不能产生数据向客户端设备的加快递送,或者甚至造成增加的网络拥塞等等)。因此,本文的实施例适于提供选择性传输加速器操作,据此,基于特定的标准,选择性地绕开或者不绕开传输加速器操作的一个或多个功能。
应当领会的是,虽然图1A和图1B的视图示出了绕开特定传输加速器功能的数据路径,但根据实施例的操作可以提供其中向传输加速功能块提供数据的一些实施方式,但该传输加速功能是被放弃的(例如,参见下面的关于“不进行分块”标志的论述)因此根据本文的构思是“绕开的”。然而,另外地或替代地,根据本文的构思的实施例可以提供一些实施方式,在这些实施方式中,将数据选择性地提供或者不提供给这样的传输加速功能,因此物理地绕开该传输加速功能。
根据前述内容,图1A和图1B中所示出的实施例包括TA控制125,根据本文的构思,TA控制125适于提供关于通信会话的选择性传输加速器操作。如上所述,TA控制125可以被实现为计算机可读代码区段,例如,可以被存储在存储器112中,当所述计算机可读代码区段被处理器(例如,处理器111)执行时,提供可以进行如本文所描述的操作的逻辑电路。TA控制125可以包括可操作为提供如本文所描述的操作的所必需功能的一个或多个功能块,例如,所示出的实施例的分析/控制逻辑单元126和路由块127。路由块127可以包括可在分析/控制逻辑单元126的控制之下进行操作的物理切换电路和/或逻辑数据路径重定向电路,以提供如本文所描述的对请求的路由。应当领会的是,虽然示出成布置在客户端设备110内,但实施例可以采用TA控制功能的不同配置。例如,可以将TA控制125的一些部分布置在客户端设备110之外(例如,分析/控制逻辑单元126布置在服务器130和/或与客户端设备110进行通信的另一个基于处理器的系统处),而将另一部分布置在客户端设备110处(例如,路由块127布置在客户端设备110处)。同样,TA控制125或者其一部分可以布置在客户端设备110内,不同于所示出的实施例中所示出的。例如,TA控制125或者其一些部分(例如,分析/控制126和/或路由块127)可以布置在实施例的TA 120内。
实施例的TA控制125进行操作以区分将要提供传输加速的消息和将不提供传输加速的消息,从而提供选择性传输加速器操作。例如,如上文所论述的,TA 120可以进行操作以将片段请求细分成块请求(例如,将HTTP请求拆分成更小的请求,以便在适宜的时间发送给服务器),以促进传输加速。然而,这样的更小的块请求的使用可能不能在所有情形下都提供期望的操作。将请求拆分成更小的请求并供应那些更小的请求的操作具有与之相关联的开销。在一些情况下,例如,在存储被请求的内容的文件本身较小的情况下,增加的开销可能导致没有对数据的传输进行加速。类似地,当在这些请求之间存在特定的依赖关系时(例如,当存在成为预期被稍后下载的内容的先决条件的小型文件时),用于进行这些细分的请求的操作可能会对关于这种相互依赖的内容的请求进行分割,使得在依赖关系图中丢失关键时间,并且由于尝试的加速而造成更慢速地对该内容进行重组(例如,对所获得的网页进行渲染)。再举一个示例,可以使用字节范围请求来进行块请求,而服务器可能不支持字节范围请求(例如,忽略该请求中的不支持的字节范围信息,并响应于每一个块请求返回整个文件)。这样的情形可能导致增加的网络拥塞,同时还不能提供传输加速。
因此,TA控制125的逻辑单元可以进行操作以分析用于指示加速有效性的各种属性和/可以或根据其来确定加速有效性的各种属性(本文将这样的属性称为加速选择属性),以及使用这样的加速选择属性来提供对关于特定消息的传输加速的选择性控制。例如,分析/控制逻辑单元126可以获得一个或多个加速选择属性,以及确定是否将由TA 120关于特定的消息或者通信会话来提供传输加速。其后,分析/控制逻辑单元126可以向路由块127提供信令,以使得基于前述的确定,针对该消息或者通信会话的请求被提供给TA120,以进行传输加速操作或者绕开TA 120。
应当领会的是,绕开由实施例的TA控制125提供的传输加速操作可以不是完全绕开TA 120,而是可以进行操作以绕开其传输加速功能。例如,实施例可以进行操作以继续调用TA 120的选择功能(例如,图1B中示出的TA 120B的多接口支持),同时绕开传输加速器的传输加速功能。此外,绕开由实施例的TA控制125提供的传输加速操作可能并不导致用于实际绕开TA 120的请求,而是导致与不调用加速相关联的操作(或者特定的操作)。例如,确定将不提供传输加速的请求可以具有与之相关联的传输加速绕开信令,以使TA 120的适当功能放弃加速操作(例如,可以在该请求的报头内设置诸如“不进行分块”标志之类的标志,或者与请求相关联地提供该标志(例如,作为咨询参数),从而使得RM 121不提供分块的片段请求),从而如传输加速绕开信令所指示的,调用或者不调用传输加速。
图2A的流程图示出了流200,其示出了根据本文的实施例的用于提供选择性传输加速器操作的TA控制125的操作。在所示出的实施例的方框201处,TA控制125的逻辑单元获得一个或多个加速选择属性,以用于对TA 120的一个或多个功能的选择性绕开。在根据实施例的操作中,TA控制125的逻辑单元可以从请求(例如,片段和/或块请求)自身获得一个或多个加速选择属性,和/或通过操作来发现或探测这样的加速选择属性。这些加速选择属性可以包括:用户代理的针对来自内容服务器的内容的请求的属性,内容服务器的属性等等。
在通过请求获得一个或多个加速选择属性时,TA控制125的逻辑单元可以进行操作以分析请求的各个方面、关于请求所使用的通信协议、请求内的数据等等,以识别关于加速选择属性的信息。例如,TA控制逻辑单元可以进行操作以分析诸如URI、用户代理字段、字节范围或内容长度字段等等的信息,从而识别在识别加速选择属性时有用的信息。在根据实施例的操作中,TA控制逻辑单元可以对请求进行分析,以确定该请求的协议类型(例如,HTTPS、HTTP1.0、HTTP2.0等等)、与该请求相关联的通信会话的性质(例如,spdy_enabled、qulc_enabled、upstream_proxy_configured等等)、正进行的请求的类型(例如,HTTP GET、PUT、POST、TRACE、OPTIONS等等)、该请求内的报头信息(例如,存在具有多个范围的字节范围报头、存在授权报头等等)、请求的文件后缀信息(例如,.mpd、.m3u8、.htm、.html等等)、用户代理信息(例如,已知与传输加速相兼容的用户代理、已知与传输加速不兼容的用户代理等等)、URI信息(例如,URI后缀信息(比如,/videoplayback、.ismv、.isma、/playback/start、/playback/position、.3g2、.3gp、.3gp2、.3gpp、3gpp2、.m4、.m4e、.m4u、.mp4、.mp4v、.mpeg4、.dash、.ts、.jpg和.pdf)、URI表达信息(例如,视频、音频、.ism、质量水平、片段、/youku/和/sohu/等等)等等。在根据实施例的操作中,可以利用特殊值来填充用户代理字段,以便识别可加速的业务。
在通过操作来发现或探测这样的加速选择属性以获得一个或多个加速选择属性时,TA控制125的逻辑单元可以进行操作以便索取可以通过其来确定一个或多个加速选择属性的信息。例如,在对传输加速操作的支持对于内容服务器而言是未知的情况下,TA控制逻辑单元可以进行操作以发出探测请求,从而可以对针对该探测请求的响应进行分析,以确定一个或多个加速选择属性(例如,该内容服务器对传输加速操作的适合性)。前述内容的一种示例性实施方式可以包括:以块请求的形式来发出探测请求,该块请求指定用户代理所请求的片段的一个子块的字节范围。在内容服务器不支持字节范围请求的情况下,所述响应可以包括大于所请求的字节范围的数据块(例如,整个的文件或者片段)。TA控制逻辑单元可以在了解探测请求的情况下,对该响应进行分析,以确定这里的加速选择属性。
在获得了一个或多个加速选择属性之后,根据所示出的实施例的流200的操作进行至方框202处,其中,TA控制125的逻辑单元基于由该TA控制逻辑单元获得的一个或多个加速选择属性,对TA 120的功能的选择性调用进行控制(例如,选择性调用传输加速操作)。在TA控制逻辑单元的控制之下的TA 120的功能的调用可以进行操作以使传输加速器的逻辑单元使用前述的功能从内容服务器获得内容,或者使传输加速器的逻辑单元在绕开前述的功能的情况下,从内容服务器获得内容。例如,TA 120(具体而言,其RM 121)可以进行操作以便将用户代理的针对内容的请求细分成多个块请求,以从内容服务器请求该内容的块,从而向客户端设备提供对该内容的加速递送。可以基于加速选择属性,在TA控制逻辑单元的控制之下,选择性地调用这种用于传输加速的请求“分块化”功能(例如,绕开或不绕开,比如通过控制性地绕开TA 120的RM 121和/或其它逻辑单元)。
在TA控制逻辑单元的控制之下的、TA 120的功能的选择性调用,虽然可以进行操作以绕开TA 120的第一功能(例如,传输加速功能,比如前述的请求分块化操作),但仍然可以进行操作以使用TA 120的其它功能。例如,图1B中所示出的TA 120B至少提供多端口功能的形式的第二功能(例如,通过CM 122a-122d的操作来提供),其中,不管传输加速功能形式的第一功能(例如,通过RM 121的操作来提供)是否被绕开,都可以使用该第二功能。
根据实施例,TA控制逻辑单元为了确定是否要调用传输加速器的功能而进行的对加速选择属性的分析可以采用一些通用规则和/或假定。例如,可以建立某种规则,使得特定的协议类型(例如,HTTPS、HTTP1.0和HTTP2.0)将不会被加速,例如,这是由于它们使用隧道化或者其它特征。类似地,可以建立某种规则,使得只考虑对特定类型的请求(例如,HTTPGET请求)进行加速,而其它类型的请求(例如,PUT,POST,TRACE,OPTIONS等等)将绕开传输加速功能。再举一个示例,可以建立某种规则,据此,对与请求(例如,GET请求)相关联的网络会话的属性(例如,标志“spdy_enabled”、“quic_enabled”、“upstream_proxy_configured”等等)进行分析,以确定是否存在特定的属性,并因此确定是否要绕开传输加速器功能(例如,如果配置了上游代理,则要绕开GET请求)。
在提供传输加速器功能的选择性调用时,本文的实施例通过应用一个或多个排除列表和一个或多个包括列表二者,来实现基于分级规则的分析。例如,分析/控制126的实施例包括:在实现基于规则的分析时使用的排除列表126a(例如,标识被绕开的GET消息)和包括列表126b(例如,标识获得加速的GET消息)。如通过下面图2B的论述所更容易理解的,实施例进行操作以首先实现排除规则集(例如,向请求所对应的加速选择属性应用排除列表126a),以及如果没有发现要应用于该请求的排除规则,则实现包括规则集(例如,向请求所对应的加速选择属性应用包括列表126b),据此,仅当加速选择属性不满足排任何除规则,但满足至少一个包括规则时,才针对请求来调用传输加速功能。
另外,分析/控制126的实施例还包括:在实现基于规则的分析时使用的探测列表126c(例如,标识与传输加速操作不兼容的内容服务器,例如,其不支持字节范围请求)。根据实施例对于这样的探测列表的使用有助于动态地适配基于规则的分析。
下面的表格提供排除列表的一个示例(例如,排除列表126a),如根据本文的实施例所可以使用的。该示例性表格标识:请求的具体协议类型、与请求相关联的通信会话的性质、正进行的请求的类型、请求内的报头信息、以及请求的文件后缀信息,这些项如果与请求相关联地存在,则将从传输加速操作中排除该请求(例如,传输加速功能将被绕开)。
下面的表格提供包括列表的一个示例(例如,包括列表126b),如根据本文的实施例所可以使用的。该示例性表格标识:特定的用户代理信息、URI信息和URI表达信息,这些项如果与请求相关联地存在,则该请求将被包括在传输加速操作中(例如,传输加速功能不被绕开)。
在根据实施例的操作中,在URI的“路径”部分中,从右到左,对文件扩展进行搜索(例如,可以使用后缀匹配)。例如,URI“http://192.168.47.178/content/android/Surf.Video/Surf_4min_10sSeg/qsurf_1538-1.3gp”中的文件扩展是“.3gp”。这样的后缀匹配在识别具有依赖关系的对内容的请求时特别有用,在该情况下,存在成为预期被稍后下载的内容的先决条件的小型文件,因此其能用于防止传输加速操作对具有这种相互依赖的内容的请求进行分割。
可以通过多种技术,来确定排除列表和/或包括列表中的具体项。例如,对于先验地知道不兼容或者不适合于传输加速操作的某些资源(例如,根据后缀、路径或者区域的内容文件,通过识别信息的用户代理,通过识别信息或路径的内容服务器等等),可以生成一些条目。另外地或替代地,可以对内容传送进行监测(例如,监测传输加速器操作、网络拥塞、用户代理操作、用户体验度量等等),以经验主义地确定针对传输加速操作的兼容性或适合性。此外,可以随时间来学习用于排除列表和/或包括列表中的条目的资源,例如基于对请求的响应。例如,TA控制125的学习逻辑单元可以进行操作以便例如基于对字节范围请求的支持/不支持、导致受禁止的响应或者范围不可满足的响应的请求等等,利用关于特定的内容服务器和/或其它资源的信息,来填充排除列表和/或包括列表中的任意一个或二者。TA控制125的学习逻辑单元的实施例可以进行操作以分析如内容服务器所提供的响应码(或许结合监测操作来对请求进行服务),学习哪些响应码用于指示针对传输加速操作的内容服务器兼容性或适合性。
图2B的流程图示出了根据方框202的实施例的TA控制125的操作,其用于使用排除列表和包括列表,基于加速选择属性来提供传输加速器逻辑单元的功能的选择性调用。在所示出的实施例的方框221处,向加速选择属性中的一个或多个属性应用排除列表(例如,排除列表126a)。在根据实施例的操作中,在一列接一列(例如,从左到右)的基础上,应用排除列表(例如,如可以包括上面所示出的排除列表表格),以分级地实现排除规则。可以根据实施例,来使用排除规则的这样的分级应用,以实现操作的便利性。例如,与属性匹配相比,字符串搜索通常是更慢的,和/或使用更多的计算资源,因此,可以在任何字符串匹配之前,执行诸如“spdy_enabled”之类的属性搜索,以提供改进的性能和/或减少资源使用,在该情况下,根据实施例,在应用排除规则时较早地发现匹配。在方框222处,确定是否满足排除规则中的任何一个排除规则(例如,加速选择属性与排除列表中的条目相匹配)。
如果满足排除条件中的任何一个排除条件,则根据所示出的实施例的处理进行至方框226处,其中,传输加速功能被绕开。例如,TA控制126的逻辑单元可以进行操作以控制路由块127使得请求绕开TA 120的传输加速功能。
然而,如果排除条件中的任何一项都不满足,则根据所示出的实施例的处理进行至方框223处。在所示出的实施例的方框223处,向加速选择属性中的一个或多个属性应用包括列表(例如,包括列表126b)。在根据实施例的操作中,在一列接一列(例如,从左到右)的基础上,应用包括列表(例如,如可以包括上面所示出的包括列表表格),以分级地实现包括规则。如同前述排除规则的应用,可以根据实施例,来使用包括规则的这样的分级应用,以实现操作的便利性。在方框222处,确定是否满足包括规则中的任何一个包括规则(例如,加速选择属性与包括列表中的条目相匹配)。
如果不满足包括条件中的任何一个包括条件,则根据所示出的实施例的处理进行至方框226处,其中,传输加速功能被绕开。例如,TA控制126的逻辑单元可以进行操作以控制路由块127使得请求绕开TA 120的传输加速功能。
然而,如果满足包括条件中的任何一个包括条件,则根据所示出的实施例的处理进行至方框225处。在所示出的实施例的方框225处,关于该请求,实现传输加速功能。例如,TA控制126的逻辑单元可以进行操作以控制路由块127使得该请求被提供给TA 120的传输加速功能。
响应于除前述排除列表和包括列表分析之外的确定或者替代该分析的确定,根据本发明的实施例的操作可以提供传输加速功能的选择性实现。例如,在知道内容服务器不支持传输加速操作(例如,其不支持字节范围请求,此时,使用请求分块化来进行传输加速)的情况下,根据实施例,应当关于寻址到该内容服务器的请求,绕开传输加速功能。然而,内容服务器的能力并不是始终已知的或者先验可知的。使该问题变得进一步复杂的情形是:内容服务器针对某些资源,支持传输加速操作(例如,字节范围请求),而针对其它资源,却不支持。例如,用于指示对传输加速的支持的一些条件可能在一个资源一个资源的基础上发生变化,而其它情形则是服务器性质。
因此,实施例可以实现一种或多种技术,以确定对传输加速操作的内容服务器支持。例如,可以将这样的技术实现为前述的排除列表分析(例如,方框221和222)的一部分,前述的包括列表分析(例如,方框223和224)的一部分,和/或另外的或替代的分析(例如,在确定内容服务器支持传输加速的方框221之前提供的过程框,据此,如果不支持传输加速,则处理进行至方框226,或者如果内容服务器支持传输加速,则处理进行至方框221)的一部分。本文将参照内容服务器支持字节范围请求来描述示例性实施例,以提供特定的示例,该特定的示例帮助理解本文的构思。然而,应当领会的是,在确定传输加速兼容性时,可以对另外的或替代的内容服务器操作方面进行分析。例如,实施例可以关于请求不被支持,针对特定的状态码(例如,403(禁止)或者416(范围不可满足))或者用于指示传输加速操作的其它参数,分析对一个或多个请求的响应。
特定的服务器可能不提供针对一些资源(例如,.jpg文件)的传输加速支持(例如,前述的字节范围请求支持),而该特定的服务器支持针对其它资源(例如,视频文件)的传输加速支持。因此,可以关于通过特定的服务器可获得的各种资源,来确定关于对传输加速操作的支持,例如,字节范围请求的支持。
可以以多种方式来提供用于处理不支持字节范围的内容服务器的操作。例如,实施例可以实现探测列表技术,其用于确定内容服务器不支持传输加速操作,以及提供本文的传输加速操作的选择性实现。根据实施例的探测列表技术的实施方式可以使用响应分析技术,其用于确定内容服务器不支持传输加速操作,以及提供本文的传输加速操作的选择性实现。
在实现根据实施例的探测列表技术时,如果确定请求处于排除列表中(例如,与该请求相关联的服务器和/或资源被包括在排除列表中),则绕开传输加速操作。例如,根据实施例,首先在排除列表(例如,排除列表126a)中查找{服务器、资源}元组。在该示例中,如果该元组已经处于排除列表中,则TA控制126可以提供控制(例如,信号路由块127),以针对相对应的请求,绕开传输加速操作。然而,如果确定该请求不处于排除列表中(例如,如果在排除列表中没有发现该元组),则在探测列表中查找请求,以确定该请求是否已经在探测列表中表示。例如,该探测列表可以包含:未知是否针对其提供传输加速的支持的内容服务器和/或资源的列表(例如,前述的示例中的是否提供对字节范围请求的支持)。
根据实施例,假定该请求还没有在探测列表中表示,则将该请求的一个或多个方面(例如,服务器、资源等等)添加到探测列表中,其后,可以实现响应分析技术,以确定内容服务器支持或不支持传输加速操作。例如,可以将请求划分成一些块,并且所获得的块请求中的一个或多个块请求被发送给内容服务器。在根据实施例的操作中,可以将针对探测列表上的服务器的请求划分成一些块(例如,通过TA控制126的控制之下的RM121的操作),并且在TA控制126的控制之下,所获得的块请求中的一个或多个块请求被发送给内容服务器。该请求的发送可以包括“探测”请求,据此,对内容服务器进行探测,以确定对传输加速操作的支持。例如,当不知道{服务器、资源/URI}元组是否能够进行字节范围支持时,实施例进行操作以进行1个子请求(例如,探测请求),随后,基于响应(例如,使用响应报头)来确定后续操作。
如果对块请求的响应指示内容服务器不支持字节范围请求,并因此不支持该示例的传输加速,则可以在TA控制126的控制之下,放弃另外的块请求,这有利于实现绕开分块化(传输加速)操作的内容请求,可能地可以丢弃对该块请求的响应,其中,在传输加速操作之外,块请求是无用的)。然而,如果对块请求的响应指示内容服务器支持字节范围请求,并因此支持该示例的传输加速,则可以根据传输加速操作,发起(或者继续)传输加速器功能来进行另外的块请求。
在根据前述内容的操作中,在内容服务器不支持字节范围请求的情况下,第一响应可以包括关于用于指示不支持传输加速的条件的信息。例如,第一响应可以包括:用于指示不支持字节范围请求的特定信息,例如,特定的状态码(例如,状态码200,非206)、具有特定值的字段(例如,接受范围字段没有被设置为“字节”,存在内容范围字段但与所请求的字节范围不同,存在内容长度字段但大于所请求的字节范围)等等。类似地,第一响应可以不包括:用于指示不支持字节范围请求的信息,例如,特定的字段(例如,内容范围字段、服务器只支持HTTP 1.0以及不存在内容长度字段)等等。因此,TA控制126的逻辑单元可以分析对该请求的响应,以确定内容服务器的传输加速操作支持。
在确定内容服务器不支持传输加速操作的情况下(例如,当前述的示例性条件中的任何一个条件失败时),根据实施例的操作进行操作以将该内容服务器动态地添加到排除列表中(例如,向排除列表添加{服务器、资源}元组(例如,(主机名、文件_扩展)元组),所述排除列表例如排除列表126a或者TA控制126可存取的另一个排除列表(例如,通过下面的动态排除列表表格所表示的)。其后,可以基于这些内容服务器在排除列表中的包含,针对这样的内容服务器,来进行传输加速功能的选择性实现,如上所述。
由于用于指示对传输加速的支持的条件可能在一个资源一个资源的基础上发生变化,因此,实施例可以进行操作以临时地将确定不支持传输加速操作的特定内容服务器包括在排除列表中。例如,当根据上述内容,动态地将内容服务器添加到排除列表中时,实施例还可以在排除列表中备注用于该条目的时间戳或者定时器值,如上面的动态排除列表表格中所示。在根据实施例的操作中,在特定的元组位于排除列表的时间期间,针对该内容服务器的请求将不被加速(即,传输加速功能将被绕开)。然而,一旦排除列表定时器到期,则针对该内容服务器的请求可以被加速(例如,取决于针对向其所应用的传输加速控制分析)。
在实现前述技术时,实施例提供请求分派器(例如,RM 121和/或CM 122)与TA控制逻辑单元(例如,TA控制126)之间的接口,以便传输它们之间的信息,例如,没通过传输加速支持分析的条件、咨询参数等等。例如,这样的接口可以至少将以下信息从请求分派器携带到TA控制逻辑单元:主机名;资源(例如,URI、文件_扩展);以及失败的条件ID。在相反方向(例如,TA控制逻辑单元到请求分派器),该接口可以携带一个或多个咨询参数,例如,用于提供探测请求的初始数量的子请求、传输加速绕开控制信令等等。
例如,在初始不知道请求的内容的大小的情况下,RM 121可能不具有足够的信息,来确定为了创建块请求而将该请求划分到的一个或多个子请求(块请求)(是否提供传输加速操作或者探测)。因此,TA控制逻辑单元126可以提供用于将请求细分成的子请求的初始数量,作为经由前述的接口进行传输的咨询参数。在下面的咨询参数表格中,提供用于特定的文件类型的示例性初始子请求数量(例如,如文件扩展匹配所识别的)。
在知道请求大小(例如,填充了字节范围字段)的情况下,可以将用于子请求的初始数量的咨询参数设置为空值或者其它惰性值(例如,-1),以便允许分块逻辑单元(例如,RM 121的逻辑单元)根据普通协议来细分该请求。然而,如果请求大小是不知的,则根据实施例,可以根据上面的咨询参数表格来设置咨询参数。例如,如果该请求是针对通过GET来提取的*.jpg文件的,则用于对该请求进行细分的咨询参数可以是1。如果该请求是针对*.mp4文件的,则该请求是针对视频文件的,并且用于对该请求进行细分的咨询参数可以是4。
应当领会的是,根据实施例,前述表格中的示例性咨询参数包括将被发送给请求分派器的“不进行分块”标志。例如,确定针对其将不提供传输加速的请求可以设置“不进行分块”标志以提供传输加速绕开信令,从而使TA 120的适当功能放弃加速操作。根据实施例,在“不进行分块”标志被设置成“1”的情况下,根本不对相关联的请求进行分块,从而在不进行分块的情况下,请求整个文件。因此,实施例可以使用“不进行分块”标志或者类似的咨询参数,作为排除列表的替代,和/或作为提供关于传输加速器的控制以便绕开传输加速功能的方式(或许同时提供传输加速器的其它功能)。
作为前述内容的实施方式的示例,当下载大小未知的pdf文件时,将“不进行分块”标志设置为“0”,同时将num_sub-requests(子请求数量)设置为“1”。因此,可以使用TA 120的逻辑单元来根据传输加速器普通操作(其用作探测请求)进行初始请求。如果利用对子请求的响应,所请求的文件的大小是已知的,则剩余的字节可以由TA 120的逻辑单元计算,并且根据传输加速操作,这些请求的其余部分将随时间被发出。然而,当下载jpg/mpd/m3u8文件时,“不进行分块”标志被设置为1。因此,TA 120的逻辑单元进行操作以进行针对整个文件的GET请求,而不实现传输加速分块操作。一旦知道了大小(例如,如可以根据响应中的信息来确定),则可以推断块的总数量,并且TA 120的逻辑单元可以发出新鲜的子请求。
根据实施例使用的各种表格和列表(例如,排除列表、包括列表、探测列表、咨询参数、定时器值等等)的内容是完全可配置的。例如,可以决定,原始用于绕开传输加速功能的消息将被替代地路由通过传输加速器框架,以便接收提供的其它功能的益处(例如,不调用第一传输加速器功能(例如,传输加速),但调用第二传输加速器功能(例如,多端口支持或者特定端口的使用等等)。因此,可以对前述咨询参数表格进行更新,以关联被设置为“1”的“不进行分块”标志,以用于相应的元组向传输加速器逻辑单元提供控制,从而有助于选择性地不调用传输加速操作,同时调用传输加速器的其它操作(例如,当前在传输加速器中使用的Zapped TCP连接(当连接不响应时,其提供端口恢复)也可以用于非加速的请求)。再举一个示例,参照查看GET请求以将它们路由到传输加速器或者绕开传输加速器来描述了示例性实施例,实施例可以进行操作以解析对GET消息的响应(例如,mpd或m3u8文件),从而确定关于流的信息,以及使用该信息进行加速决定,例如,通过排除列表、包括列表等等的相应扩展。
与前述内容一致,随着收集到关于特定内容服务器、资源等等对传输加速的适合性的另外信息,可以对根据实施例使用的排除列表和包括列表进行扩展。在根据实施例的操作中,传输加速器控制逻辑单元(例如,TA控制126的逻辑单元)可以例如不时地(比如,每隔几秒、每隔几分钟、每天、在发生某个事件时等等)存取数据库(例如,集中式服务器收集关于内容服务器操作的度量),以重新装载或者更新排除列表、包括列表、代理列表、咨询参数列表等等。

Claims (42)

1.一种方法,包括:
由传输加速器(TA)控制逻辑单元获得包括以下各项中的至少一项的一个或多个加速选择属性:
用户代理的针对来自内容服务器的内容的请求的属性;或者
所述内容服务器的属性;以及
基于由客户端设备的所述TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用所述客户端设备的传输加速器(TA)逻辑单元的第一功能来从所述内容服务器获得所述内容,或者绕开所述客户端设备的所述TA逻辑单元的所述第一功能来从所述内容服务器获得所述内容,所述客户端设备的所述TA逻辑单元的所述第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从所述内容服务器请求所述内容的块,从而向所述客户端设备提供对所述内容的加速递送。
2.根据权利要求1所述的方法,其中,选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能包括:绕开所述TA逻辑单元的所述第一功能;并且所述方法还包括:
当绕开所述TA逻辑单元的所述第一功能时,调用所述客户端设备的所述TA逻辑单元的第二功能。
3.根据权利要求2所述的方法,其中,所述TA逻辑单元的所述第二功能经由在所述客户端设备和所述内容服务器之间建立的多个连接,提供对所述内容的通信。
4.根据权利要求2所述的方法,其中,所述TA逻辑单元的所述第二功能关于所述客户端设备和所述内容服务器之间的对所述内容的通信,提供端口恢复。
5.根据权利要求1所述的方法,其中,选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能包括:
对数据进行路由,以绕开所述TA逻辑单元中的提供所述TA逻辑单元的所述第一功能的功能块。
6.根据权利要求1所述的方法,其中,选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能包括:
对所述TA逻辑单元中的提供所述TA逻辑单元的所述第一功能的功能块进行控制,以关于至少一个针对内容的请求,放弃提供所述第一功能。
7.根据权利要求6所述的方法,其中,对所述TA逻辑单元的功能块进行控制包括:
由所述TA控制逻辑单元提供不对所述至少一个针对内容的请求进行分块的咨询参数。
8.根据权利要求1所述的方法,其中,所述用户代理的请求的所述属性包括以下各项中的至少一项:
正从所述内容服务器请求的数据的统一资源标识符(URI);
正从所述内容服务器请求的数据的文件扩展;或者
关于进行所述请求的所述用户代理的信息。
9.根据权利要求1所述的方法,其中,所述内容服务器的所述属性包括以下各项中的至少一项:
所述内容服务器的字节范围请求支持;
所述内容服务器禁止的请求;
所述内容服务器不可满足的请求范围;或者
所述服务器提供的、被确定用于指示针对传输加速操作的内容服务器适合性的响应码。
10.根据权利要求1所述的方法,其中,选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能包括:
确定所述一个或多个加速选择属性是否满足排除列表的一个或多个标准;以及
响应于确定所述一个或多个加速选择属性满足所述排除列表的所述一个或多个标准,绕开所述TA逻辑单元的所述第一功能。
11.根据权利要求1所述的方法,其中,选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能包括:
确定所述一个或多个加速选择属性是否满足排除列表的一个或多个标准;以及
响应于确定所述一个或多个加速选择属性不满足排除列表的所述一个或多个标准:
确定所述一个或多个加速选择属性是否满足包括列表的一个或多个标准;以及
响应于确定所述一个或多个加速选择属性满足所述包括列表的一个或多个标准,调用所述TA逻辑单元的所述第一功能。
12.根据权利要求11所述的方法,还包括:
使用学习逻辑单元来填充所述排除列表或者所述包括列表中的至少一个,所述学习逻辑单元识别用于指示传输加速操作支持的操作。
13.根据权利要求12所述的方法,其中,所述用于指示传输加速操作支持的操作包括以下各项中的至少一项:支持字节范围请求、不支持字节范围请求、导致受禁止的响应的请求、或者导致范围不可满足响应的请求。
14.根据权利要求1所述的方法,其中,所述内容服务器的所述属性是响应于由所述客户端设备进行的请求,根据来自所述内容服务器的响应来推导的。
15.根据权利要求14所述的方法,其中,选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能包括:
确定所述内容服务器是否被包括在探测列表上;以及
响应于确定所述内容服务器被包括在所述探测列表上,控制所述TA逻辑单元以将所述请求作为探测请求,从而确定所述内容服务器对所述TA逻辑单元的所述第一功能的操作的适合性。
16.根据权利要求15所述的方法,其中,选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能包括:
基于对所述请求的所述响应,确定所述内容服务器是否适合于所述TA逻辑单元的所述第一功能的操作;以及
响应于确定所述内容服务器不适合于所述TA逻辑单元的所述第一功能的操作,将所述内容服务器添加到排除列表中,以关于所述客户端设备和所述内容服务器之间的对所述内容的通信,绕开所述TA逻辑单元的所述第一功能。
17.一种装置,包括:
用于传输加速器(TA)控制逻辑单元获得包括以下各项中的至少一项的一个或多个加速选择属性的单元:
用户代理的针对来自内容服务器的内容的请求的属性;或者
所述内容服务器的属性;以及
用于基于由客户端设备的所述TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用所述客户端设备的传输加速器(TA)逻辑单元的第一功能来从所述内容服务器获得所述内容,或者绕开所述客户端设备的所述TA逻辑单元的所述第一功能来从所述内容服务器获得所述内容的单元,所述客户端设备的所述TA逻辑单元的所述第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从所述内容服务器请求所述内容的块,从而向所述客户端设备提供对所述内容的加速递送。
18.根据权利要求17所述的装置,其中,所述用于选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的单元包括:用于绕开所述TA逻辑单元的所述第一功能的单元;并且所述装置还包括:
用于当绕开所述TA逻辑单元的所述第一功能时,调用所述客户端设备的所述TA逻辑单元的第二功能的单元。
19.根据权利要求18所述的装置,其中,所述TA逻辑单元的所述第二功能经由在所述客户端设备和所述内容服务器之间建立的多个连接,提供对所述内容的通信。
20.根据权利要求18所述的装置,其中,所述TA逻辑单元的所述第二功能关于所述客户端设备和所述内容服务器之间的对所述内容的通信,提供端口恢复。
21.根据权利要求17所述的装置,其中,所述用于选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的单元包括:
用于对数据进行路由,以绕开所述TA逻辑单元中的提供所述TA逻辑单元的所述第一功能的功能块的单元。
22.根据权利要求17所述的装置,其中,所述用于选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的单元包括:
用于对所述TA逻辑单元中的提供所述TA逻辑单元的所述第一功能的功能块进行控制,以关于至少一个针对内容的请求,放弃提供所述第一功能的单元。
23.根据权利要求22所述的装置,其中,所述用于对所述TA逻辑单元的功能块进行控制的单元包括:
用于由所述TA控制逻辑单元提供不对所述至少一个针对内容的请求进行分块的咨询参数的单元。
24.根据权利要求17所述的装置,其中,所述用户代理的请求的所述属性包括以下各项中的至少一项:
正从所述内容服务器请求的数据的统一资源标识符(URI);
正从所述内容服务器请求的数据的文件扩展;或者
关于进行所述请求的所述用户代理的信息。
25.根据权利要求17所述的装置,其中,所述内容服务器的所述属性包括以下各项中的至少一项:
所述内容服务器的字节范围请求支持;
所述内容服务器禁止的请求;
所述内容服务器不可满足的请求范围;或者
所述服务器提供的、被确定用于指示针对传输加速操作的内容服务器适合性的响应码。
26.根据权利要求17所述的装置,其中,所述用于选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的单元包括:
用于确定所述一个或多个加速选择属性是否满足排除列表的一个或多个标准的单元;以及
用于响应于确定所述一个或多个加速选择属性满足所述排除列表的所述一个或多个标准,绕开所述TA逻辑单元的所述第一功能的单元。
27.根据权利要求17所述的装置,其中,所述用于选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的单元包括:
用于确定所述一个或多个加速选择属性是否满足排除列表的一个或多个标准的单元;以及
用于响应于确定所述一个或多个加速选择属性不满足排除列表的所述一个或多个标准,确定所述一个或多个加速选择属性是否满足包括列表的一个或多个标准的单元;以及
用于响应于确定所述一个或多个加速选择属性满足所述包括列表的一个或多个标准,调用所述TA逻辑单元的所述第一功能的单元。
28.根据权利要求27所述的装置,还包括:
用于使用学习逻辑单元来填充所述排除列表或者所述包括列表中的至少一个的单元,所述学习逻辑单元识别用于指示传输加速操作支持的操作。
29.根据权利要求27所述的装置,其中,所述用于选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的单元包括:
用于确定所述内容服务器是否被包括在探测列表上的单元;以及
用于响应于确定所述内容服务器被包括在所述探测列表上,控制所述TA逻辑单元以将所述请求作为探测请求,从而确定所述内容服务器对所述TA逻辑单元的所述第一功能的操作的适合性的单元。
30.根据权利要求19所述的装置,其中,所述用于选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的单元包括:
用于基于对所述请求的响应,确定所述内容服务器是否适合于所述TA逻辑单元的所述第一功能的操作的单元;以及
用于响应于确定所述内容服务器不适合于所述TA逻辑单元的所述第一功能的操作,将所述内容服务器添加到排除列表中,以关于所述客户端设备和所述内容服务器之间的对所述内容的通信,绕开所述TA逻辑单元的所述第一功能的单元。
31.一种计算机程序产品,包括:
其上记录有程序代码的计算机可读介质,所述程序代码包括:
用于由传输加速器(TA)控制逻辑单元获得包括以下各项中的至少一项的一个或多个加速选择属性的程序代码:
用户代理的针对来自内容服务器的内容的请求的属性;或者
所述内容服务器的属性;以及
用于基于由客户端设备的所述TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用所述客户端设备的传输加速器(TA)逻辑单元的第一功能来从所述内容服务器获得所述内容,或者绕开所述客户端设备的所述TA逻辑单元的所述第一功能来从所述内容服务器获得所述内容的程序代码,所述客户端设备的所述TA逻辑单元的所述第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从所述内容服务器请求所述内容的块,从而向所述客户端设备提供对所述内容的加速递送。
32.根据权利要求31所述的计算机程序产品,还包括:
用于当绕开所述TA逻辑单元的所述第一功能时,调用所述客户端设备的所述TA逻辑单元的第二功能的程序代码。
33.根据权利要求31所述的计算机程序产品,其中,所述用于选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的程序代码包括:
用于对数据进行路由,以绕开所述TA逻辑单元中的提供所述TA逻辑单元的所述第一功能的程序代码。
34.根据权利要求31所述的计算机程序产品,其中,所述用于选择性地调用TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的程序代码包括:
用于对所述TA逻辑单元中的提供所述TA逻辑单元的所述第一功能的功能块进行控制,以关于至少一个针对内容的请求,放弃提供所述第一功能的程序代码。
35.根据权利要求34所述的计算机程序产品,其中,所述用于对所述TA逻辑单元的功能块进行控制的程序代码包括:
用于由所述TA控制逻辑单元提供不对所述至少一个针对内容的请求进行分块的咨询参数的程序代码。
36.根据权利要求31所述的计算机程序产品,其中,所述用于选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的程序代码包括:
用于确定所述一个或多个加速选择属性是否满足排除列表的一个或多个标准的程序代码;以及
用于响应于确定所述一个或多个加速选择属性不满足排除列表的所述一个或多个标准,确定所述一个或多个加速选择属性是否满足包括列表的一个或多个标准的程序代码;以及
用于响应于确定所述一个或多个加速选择属性满足所述包括列表的一个或多个标准,调用所述TA逻辑单元的所述第一功能的程序代码。
37.根据权利要求36所述的计算机程序产品,还包括:
用于使用学习逻辑单元来填充所述排除列表或者所述包括列表中的至少一个的程序代码,所述学习逻辑单元识别用于指示传输加速操作支持的操作。
38.根据权利要求31所述的计算机程序产品,其中,所述用于选择性地调用所述TA逻辑单元的所述第一功能或者绕开所述TA逻辑单元的所述第一功能的程序代码包括:
用于确定所述内容服务器是否被包括在探测列表上的程序代码;以及
用于响应于确定所述内容服务器被包括在所述探测列表上,控制所述TA逻辑单元以将所述请求作为探测请求,从而确定所述内容服务器对所述TA逻辑单元的所述第一功能的操作的适合性的程序代码。
39.一种被配置用于无线通信的装置,所述装置包括:
至少一个处理器;以及
耦合到所述至少一个处理器的存储器,
其中,所述至少一个处理器被配置为:
由传输加速器(TA)控制逻辑单元获得一个或多个加速选择属性,其中,所述一个或多个加速选择属性包括以下各项中的至少一项:
用户代理的针对来自内容服务器的内容的请求的属性;或者
所述内容服务器的属性;以及
基于由客户端设备的所述TA控制逻辑单元获得的所述一个或多个加速选择属性,选择性地调用所述客户端设备的传输加速器(TA)逻辑单元的第一功能来从所述内容服务器获得所述内容,或者绕开所述客户端设备的所述TA逻辑单元的所述第一功能来从所述内容服务器获得所述内容,所述客户端设备的所述TA逻辑单元的所述第一功能包括:将所述用户代理的针对内容的请求细分成多个块请求,以从所述内容服务器请求所述内容的块,从而向所述客户端设备提供对所述内容的加速递送。
40.根据权利要求39所述的装置,其中,所述至少一个处理器被配置为:
确定所述一个或多个加速选择属性是否满足排除列表的一个或多个标准;以及
响应于确定所述一个或多个加速选择属性满足所述排除列表的所述一个或多个标准,绕开所述TA逻辑单元的所述第一功能。
41.根据权利要求39所述的装置,其中,所述至少一个处理器被配置为:
确定所述一个或多个加速选择属性是否满足排除列表的一个或多个标准;以及
响应于确定所述一个或多个加速选择属性不满足排除列表的所述一个或多个标准,确定所述一个或多个加速选择属性是否满足包括列表的一个或多个标准;以及
响应于确定所述一个或多个加速选择属性满足所述包括列表的一个或多个标准,调用所述TA逻辑单元的所述第一功能。
42.根据权利要求39所述的装置,其中,所述至少一个处理器被配置为:
确定所述内容服务器是否被包括在探测列表上;以及
响应于确定所述内容服务器被包括在所述探测列表上,控制所述TA逻辑单元以将所述请求作为探测请求,从而确定所述内容服务器对所述TA逻辑单元的所述第一功能的操作的适合性。
CN201580041259.3A 2014-07-30 2015-07-07 用于选择性传输加速器操作的系统和方法 Pending CN107113325A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/446,821 2014-07-30
US14/446,821 US20160036883A1 (en) 2014-07-30 2014-07-30 Systems and methods for selective transport accelerator operation
PCT/US2015/039339 WO2016018572A1 (en) 2014-07-30 2015-07-07 Systems and methods for selective transport accelerator operation

Publications (1)

Publication Number Publication Date
CN107113325A true CN107113325A (zh) 2017-08-29

Family

ID=53682860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580041259.3A Pending CN107113325A (zh) 2014-07-30 2015-07-07 用于选择性传输加速器操作的系统和方法

Country Status (4)

Country Link
US (1) US20160036883A1 (zh)
EP (1) EP3175599A1 (zh)
CN (1) CN107113325A (zh)
WO (1) WO2016018572A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109450991A (zh) * 2018-10-19 2019-03-08 网宿科技股份有限公司 基于移动应用的数据传输加速方法、相关设备和加速系统
CN110505253A (zh) * 2018-05-16 2019-11-26 杭州海康威视系统技术有限公司 一种请求网页信息的方法、装置及存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117278537A (zh) * 2015-02-11 2023-12-22 Vid拓展公司 用于dash中的一般化http头的系统和方法
US10142262B2 (en) * 2016-05-31 2018-11-27 Anchorfree Inc. System and method for improving an aggregated throughput of simultaneous connections
WO2019005054A1 (en) * 2017-06-29 2019-01-03 Intel Corporation DESIGN, DISCOVERY AND REUSE OF MODULAR ACCELERATOR FUNCTION UNIT (AFU)
CN111858016A (zh) 2019-04-29 2020-10-30 阿里巴巴集团控股有限公司 计算作业处理方法、系统、移动设备及加速设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237561A (zh) * 2008-01-09 2008-08-06 北京捷报互动科技有限公司 网络视频加速系统及控制方法
CN103098035A (zh) * 2010-08-31 2013-05-08 日本电气株式会社 存储系统
US20130227081A1 (en) * 2012-02-27 2013-08-29 Qualcomm Incorporated Dash client and receiver with request cancellation capabilities
WO2013163648A2 (en) * 2012-04-27 2013-10-31 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043500B2 (en) * 2001-04-25 2006-05-09 Board Of Regents, The University Of Texas Syxtem Subtractive clustering for use in analysis of data
US9420441B2 (en) * 2010-07-07 2016-08-16 Futurewei Technologies, Inc. System and method for content and application acceleration in a wireless communications system
US11025962B2 (en) * 2011-02-28 2021-06-01 Adobe Inc. System and method for low-latency content streaming

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237561A (zh) * 2008-01-09 2008-08-06 北京捷报互动科技有限公司 网络视频加速系统及控制方法
CN103098035A (zh) * 2010-08-31 2013-05-08 日本电气株式会社 存储系统
US20130227081A1 (en) * 2012-02-27 2013-08-29 Qualcomm Incorporated Dash client and receiver with request cancellation capabilities
WO2013163648A2 (en) * 2012-04-27 2013-10-31 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof
US20140143375A1 (en) * 2012-04-27 2014-05-22 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110505253A (zh) * 2018-05-16 2019-11-26 杭州海康威视系统技术有限公司 一种请求网页信息的方法、装置及存储介质
CN109450991A (zh) * 2018-10-19 2019-03-08 网宿科技股份有限公司 基于移动应用的数据传输加速方法、相关设备和加速系统

Also Published As

Publication number Publication date
EP3175599A1 (en) 2017-06-07
WO2016018572A1 (en) 2016-02-04
US20160036883A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
CN107113325A (zh) 用于选择性传输加速器操作的系统和方法
US9060207B2 (en) Adaptive video streaming over a content delivery network
CN107079009B (zh) 用于在传输层中以信号形式发送请求加速的系统和方法
US8510375B2 (en) Apparatus and methods for time mapping media segments in streaming media files
US9066115B1 (en) Structuring dynamic advertisement breaks in video manifest files
US9917872B2 (en) Method and apparatus for performing adaptive streaming on media contents
CN102577309A (zh) 用于动态媒体文件流送的系统、方法和装置
US10003999B2 (en) HTTP-based buffer status updating method and device, and buffer status processor
US9356985B2 (en) Streaming video to cellular phones
CN104796439B (zh) 网页推送方法、客户端、服务器及系统
US10880024B2 (en) Reception device, transmission device, and data processing method
KR101313592B1 (ko) 스트리밍 재생 방법 및 이를 이용한 컴퓨팅 장치
CN105657460B (zh) 流媒体播放方法、装置和移动终端
CN113453062B (zh) 视频元数据的获取、处理方法及装置、系统、电子设备
CN115514684B (zh) 音频卡顿评估的方法及装置
Jimenez Perez Data-Driven QoE Modeling for Real-Time Video Streaming and Web Browsing Services in Cellular Networks
JP7387209B2 (ja) Http上の動的適応ストリーミングのための方法および装置
US20230334114A1 (en) Artificial intelligence-based personalized content creation workflow
Georgara et al. Cache-Aware Adaptive Video Streaming in 5G Networks
Li et al. Research on the Key Technologies of Mobile Learning System
CN113364728A (zh) 媒体内容接收方法、装置、存储介质和计算机设备
CN117354781A (zh) 业务数据包的处理方法、装置、介质及电子设备
CN106412624A (zh) 一种下载流媒体数据的方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170829