WO2018228234A1 - 视频缓存方法及视频缓存装置 - Google Patents

视频缓存方法及视频缓存装置 Download PDF

Info

Publication number
WO2018228234A1
WO2018228234A1 PCT/CN2018/089821 CN2018089821W WO2018228234A1 WO 2018228234 A1 WO2018228234 A1 WO 2018228234A1 CN 2018089821 W CN2018089821 W CN 2018089821W WO 2018228234 A1 WO2018228234 A1 WO 2018228234A1
Authority
WO
WIPO (PCT)
Prior art keywords
video
resource
video resource
user
request
Prior art date
Application number
PCT/CN2018/089821
Other languages
English (en)
French (fr)
Inventor
孙俊
丁向军
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to RU2019143702A priority Critical patent/RU2738447C1/ru
Publication of WO2018228234A1 publication Critical patent/WO2018228234A1/zh

Links

Images

Classifications

    • 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
    • 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
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Definitions

  • the present disclosure relates to the field of network communication technologies, and in particular, to a video buffering method and a video buffering device.
  • each operator In order to reduce the operator's outgoing traffic to save the inter-network settlement fee, each operator generally has its own cache system.
  • an important network element is the video cache server subsystem.
  • the video cache server subsystem includes at least one video cache server.
  • the user's video request (video resource download request or video resource play request) will arrive at the operator's local domain name system (LDNS), and the operator's LDNS will be the user.
  • the video request is distributed to the video cache server.
  • LDNS local domain name system
  • the Internet content provider adds an anti-theft chain function to the Uniform Resource Locator (URL) of the video resource, so that even if the user requests to play the same video resource every time, the video request is in the video request.
  • the URL will also be different.
  • a video caching method including: after receiving a video request initiated by a user, extracting a part of the video request for identifying a URL of a video resource; a part of the URL, determining whether the video resource requested by the user has been cached; if it is determined that the video resource requested by the user has not been cached, acquiring the complete video resource from the Internet content provider server according to the video request And buffering the obtained complete video resource.
  • a video buffering apparatus including: an information extracting module, configured to: after receiving a video request initiated by a user, extract a portion of the video request for identifying a URL of a video resource; a cache determining module, configured to determine, according to a part of the URL used to identify the video resource, whether the video resource requested by the user has been cached, and the resource obtaining module is configured to: when determining that the video resource requested by the user has not been cached, Acquiring the complete video resource from the Internet content provider server according to the video request, and buffering the obtained complete video resource.
  • a computer readable storage medium having stored thereon a program, the computer executing a video caching method of an embodiment of the present disclosure when the program is executed by a computer.
  • FIG. 1 is a flow chart of a video caching method of an embodiment of the present disclosure
  • FIG. 2 is a block diagram of a video buffering device of an embodiment of the present disclosure
  • FIG. 3 is a schematic diagram of a networking architecture of a high speed video buffer system according to an embodiment of the present disclosure
  • FIG. 4 is a schematic diagram of a service processing flow of a video cache server according to an embodiment of the present disclosure.
  • Embodiments of the present disclosure provide a video caching method that can be run in an operator's video caching server.
  • 1 is a flowchart of a video buffering method of an embodiment of the present disclosure. As shown in FIG. 1, the video buffering method includes the following steps S101 to S103.
  • step S101 after receiving the video request initiated by the user, extracting a portion of the video request for identifying a URL of the video resource.
  • the video request includes a URL that includes a portion for identifying the video asset and a portion for implementing the anti-theft chain function.
  • the portion used to identify the video resource is unchanged for the same video resource, for example, may include the name of the video resource requested by the user.
  • the part that implements the anti-theft chain function is variable even for the same video resource.
  • a portion for identifying a URL of the video resource is extracted from the video request according to a pre-stored rule implementing anti-theft chain function, that is, a change rule for a URL of the same video resource.
  • the extracted part of the URL for identifying the video resource may be used as a key of the video resource requested by the user, and compared with a keyword such as a locally cached video resource, if local If a keyword matching the keyword of the video resource requested by the user exists in the keyword of the cached video resource, the video resource requested by the user is already cached locally, if the keyword of the locally cached video resource does not exist.
  • the keyword matching the keyword of the video resource requested by the user indicates that the video resource requested by the user has not been cached locally.
  • the complete video resource is obtained from the Internet content provider server according to the video request, and the obtained complete video resource is cached. .
  • the complete video resource is obtained from the Internet content provider server and cached regardless of the drag parameters in the video request.
  • the drag parameter refers to a parameter that can indicate a portion of the video resource, and may include, for example, a start position parameter and an end position parameter.
  • the cached corresponding video resource (eg, may be a segment) may be provided to the user according to the drag parameter in the video request.
  • the video caching method further includes: if it is determined that the video resource requested by the user is already cached locally, acquiring a drag parameter in the video request, and acquiring a local cache according to the drag parameter Corresponding to the video resource and transmitting it to the user.
  • a complete video resource is obtained from an internet content provider server in accordance with a first video request for the same video resource.
  • the video request is the first video request for the corresponding video resource.
  • the corresponding complete parameter is obtained from the Internet content provider server according to the video request, regardless of the drag parameter in the video request.
  • the video resource
  • the source station ie, the Internet content provider server
  • the video cache server can directly obtain the corresponding cached video resource according to the drag parameter in the received video request, so that the video resource can be quickly provided to the user.
  • the corresponding video resource may be acquired from the Internet content provider server according to the drag parameter in the video request (for example, Can be a fragment) and pass it through to the user.
  • An embodiment of the present disclosure also provides a computer readable storage medium having stored thereon a computer program that, when executed by a computer, causes the computer to execute the video caching method of the above embodiment.
  • the computer storage medium may include, for example, a read only memory (ROM) / a random access memory (RAM), a magnetic disk, an optical disk, a USB flash drive, or the like.
  • An embodiment of the present disclosure further provides a video buffering device, which may be included in or coupled to a video buffer server of an operator.
  • 2 is a block diagram of a video buffering device of an embodiment of the present disclosure. As shown in FIG. 2, the video buffer device may include: an information extraction module 21, a cache determination module 22, and a resource acquisition module 23.
  • the information extraction module 21 is configured to extract a portion of the video request for identifying a URL of the video resource after receiving the user-initiated video request.
  • the cache determination module 22 is configured to determine whether the video resource requested by the user has been cached based on the extracted portion of the URL used to identify the video resource.
  • the resource obtaining module 23 is configured to, when determining that the video resource requested by the user has not been cached, acquire the complete video resource from the Internet content provider server according to the video request, and cache the obtained complete video resource.
  • the workflow of the video buffering device includes: after the video buffering server receives the video request initiated by the user, the information extracting module 21 is based on the pre-stored rules for implementing the anti-theft chain function (ie, the rules for changing the URL of the same video resource). Extracting, from the video request, a portion for identifying a URL of the video resource; the cache determining module 22 uses the extracted portion of the URL for identifying the video resource as a keyword of the video resource requested by the user, and is as local as The keyword of the cached video resource is compared. If there is a keyword matching the keyword of the video resource requested by the user in the keyword of the locally cached video resource, the video resource requested by the user is locally cached if local.
  • the video resource requested by the user is not cached locally; if it is determined that the video resource requested by the user has been cached locally, the resource is The obtaining module 23 acquires the drag parameter in the video request, and according to the drag The parameter obtains the corresponding cached video resource and transmits it to the user. If it is determined that the video resource requested by the user has not been cached locally, the resource obtaining module 23 does not consider the drag parameter in the video request, but The Internet content provider server obtains the corresponding complete video resource and caches it locally.
  • the cached corresponding video resource may be provided to the user according to the drag parameter in the video request (for example, Can be a fragment).
  • the resource obtaining module 23 may determine whether the received video request is the first video request for the corresponding video resource, if the video request is for Corresponding to the first video request of the video resource, the resource obtaining module 23 obtains the corresponding complete video resource from the Internet content provider server without considering the drag parameter in the video request, and caches the video resource. local. If the video request is not the first video request for the corresponding video resource, the resource obtaining module 23 acquires the corresponding video resource from the Internet content provider server according to the drag parameter in the video request (for example, Is a fragment) and transparently transmits it to the user.
  • the drag parameter in the video request for example, Is a fragment
  • the first video request for the same video resource refers to the first video request received for the same video resource in chronological order, which may be used to request a start time point (eg, 0 seconds).
  • the request to start playing the video resource may also be a request to request to start playing the video resource from an intermediate point in time.
  • the complete video resource is obtained and cached according to the first video request for the video resource without considering the drag parameter, thereby saving network resources. And can increase the speed of providing video resources to users.
  • the corresponding video resource may be obtained from the Internet content provider server according to the drag parameter in the video request (eg, It is a fragment) and transparently transmitted to the user, which can improve the service speed of the user and avoid repeated acquisition of video resources.
  • the drag parameter in the video request eg, It is a fragment
  • the video buffering is implemented by intelligently analyzing and performing corresponding processing on the change rule of the URL in the video request.
  • Embodiments of the present disclosure also provide a video buffering device that includes a processor and a memory.
  • the memory is coupled to the processor, and the memory stores a program for execution by the processor.
  • the processor is configured to, when executing a program stored on the memory, perform processing of extracting a uniform resource locator (URL) for identifying a video resource in the video request after receiving a user initiated video request And determining, according to the extracted part of the URL for identifying the video resource, whether the video resource requested by the user has been cached locally; if it is determined that the video resource requested by the user has not been cached locally, providing the content from the Internet according to the video request.
  • the quotient server obtains the corresponding complete video resource, and locally caches the obtained complete video resource.
  • URL uniform resource locator
  • FIG. 3 is a schematic diagram of a networking architecture of a high speed video buffer system according to an embodiment of the present disclosure.
  • the high speed video caching system includes a video caching server that includes or is coupled to a video caching device of an embodiment of the present disclosure.
  • the user sends a video request sent by the client to the local local DNS (LDNS) server through the network, and the LDNS server redirects the URL in the video request to the hardware load balancer through the network.
  • the hardware load balancer distributes the video request to each video cache server, and the video cache server determines whether the video resource corresponding to the video request has been cached. If the video resource has been cached, the video cache server directly obtains the cached corresponding video resource. Providing it to the user; if the video resource has not been cached, the video cache server initiates a video request to the Internet content provider server, caches the video resource obtained from the Internet content provider to the local video cache server, and then provides the video to the user The corresponding video resource that is cached.
  • the video cache server initiates a video request to the Internet content provider server, caches the video resource obtained from the Internet content provider to the local video cache server, and then provides the video to the user The corresponding video resource that is cached.
  • the video cache server extracts a part of the URL for identifying the video resource from the received video request according to the anti-theft chain function of the video content provider by different Internet content providers, as a keyword of the video resource.
  • the httpwatch tool can be used to find and extract portions of the URL used to identify the video asset.
  • the video request generally carries a drag parameter such as a start point, an end point or a range
  • the drag parameter of the video request is generally in the parameter part of the URL or the message header of the video request.
  • the video cache server does not consider the drag parameter in the first video request for the same video resource, acquires the corresponding entire video resource from the Internet content provider server, and caches it locally. In this way, after receiving the video request for the video resource by the user, the video cache server can directly obtain the corresponding video resource of the local cache according to the drag parameter in the video request of the user, and provide the video resource to the video cache. user.
  • FIG. 4 is a schematic diagram of a service processing flow of a video cache server according to an embodiment of the present disclosure.
  • the video caching server includes or is coupled to a video caching device of an embodiment of the present disclosure.
  • the processing flow of the video buffer server includes the following steps S4001 to S4008.
  • the user initiates a video request through the terminal device.
  • the video request may include a URL including a portion for identifying a video resource and a portion of the anti-theft chain function.
  • the portion for identifying a video resource includes, for example, the name of a video resource requested by the user.
  • the rules of the Internet content provider's anti-theft chain function for the video resource i.e., the change rule for the URL of the same video resource
  • the rules of the Internet content provider's anti-theft chain function for the video resource i.e., the change rule for the URL of the same video resource
  • step S4003 when the video cache server receives the video request of the user, it determines a change rule for the URL of the corresponding video resource.
  • the video cache server extracts a portion of the video request of the user for identifying the URL of the video resource as a keyword of the video resource requested by the user according to the determined change rule of the URL.
  • the video cache server determines, according to the keyword of the video resource requested by the user, whether the corresponding video resource has been cached locally. If the corresponding video resource has been cached, the process flow proceeds to step S4006, if not yet. If the corresponding video resource is cached, the process flow proceeds to step S4007.
  • the video cache server obtains a locally cached corresponding video resource (eg, may be a segment) and provides it to the user according to the portion of the user's video request for identifying the URL of the video resource and the drag parameter.
  • a locally cached corresponding video resource eg, may be a segment
  • the video cache server determines whether the video request of the user is the first video request for the corresponding video resource, and if the video request of the user is the first video request for the corresponding video resource, the processing flow proceeds to Step S4008, if the video request of the user is not the first video request for the corresponding video resource, the process flow proceeds to step S4009.
  • the video cache server requests the corresponding entire video resource from the Internet content provider server without considering the drag parameter in the video request, and caches the obtained corresponding entire video resource locally.
  • the video cache server carries the drag parameter in the video request of the user, requests the corresponding content (for example, a segment) from the Internet content provider server, and transparently transmits the corresponding video resource to the user.
  • the video caching server is capable of intelligently analyzing a change rule of a URL in a video request and performing corresponding processing to cache a corresponding video resource.
  • the video cache server can directly obtain the corresponding video resource of the local cache and provide it to the user, and does not need to re-out the network to obtain the corresponding video resource from the Internet content provider server, thereby improving the service. Speed, while also reducing the operator's outgoing traffic.
  • “Local” in the embodiments of the present disclosure refers to a memory of a video buffer device, a video cache server, or a high speed video buffer system of an embodiment of the present disclosure that can be accessed (eg, high speed access) without going out of the network, the memory being Integrated in a video buffer device, a video cache server, or a high speed video buffer system of an embodiment of the present disclosure, or the memory may be coupled to a video buffer device, a video cache server, or a high speed video buffer system of an embodiment of the present disclosure.
  • Pick up the memory of a video buffer device, a video cache server, or a high speed video buffer system of an embodiment of the present disclosure.
  • Coupling in the embodiments of the present disclosure refers to a connection between devices that can access each other (for example, high-speed access) without leaving the network.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请提供了视频缓存方法、视频缓存装置及计算机可读存储介质。所述视频缓存方法包括:在接收到用户发起的视频请求后,提取所述视频请求中的用于标识视频资源的URL的部分;根据用于标识视频资源的URL的部分,确定是否已缓存了用户请求的视频资源;若确定还未缓存用户请求的视频资源,则根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源,并对获取的完整的所述视频资源进行缓存。

Description

视频缓存方法及视频缓存装置 技术领域
本公开涉及网络通讯技术领域,特别涉及视频缓存方法及视频缓存装置。
背景技术
为降低运营商出网流量以节省网间结算费用,目前各个运营商一般都有自己的高速缓冲存储器(cache)系统,在高速缓冲存储器系统中有一个重要的网元是视频缓存服务器子系统。所述视频缓存服务器子系统包括至少一个视频缓存服务器。
当用户要播放互联网上的视频资源时,用户的视频请求(视频资源下载请求或视频资源播放请求)会到达运营商的本地域名系统(Local Domain Name System,LDNS),运营商的LDNS会将用户的视频请求分发至视频缓存服务器。
互联网内容提供商为了防止视频资源被劫持,会在视频资源的统一资源定位符(Uniform Resource Locator,URL)上添加防盗链功能,这样即使用户每次请求播放相同的视频资源,其视频请求中的URL也会不一样。
公开内容
根据本公开的实施例,提供了一种视频缓存方法,包括:在接收到用户发起的视频请求后,提取所述视频请求中的用于标识视频资源的URL的部分;根据用于标识视频资源的URL的部分,确定是否已缓存了用户请求的所述视频资源;若确定还未缓存用户请求的所述视频资源,则根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源,并对获取的完整的所述视频资源进行缓存。
根据本公开的实施例,提供了一种视频缓存装置,包括:信息 提取模块,配置为在接收到用户发起的视频请求后,提取所述视频请求中的用于标识视频资源的URL的部分;缓存确定模块,配置为根据用于标识视频资源的URL的部分,确定是否已缓存了用户请求的所述视频资源;资源获取模块,配置为在确定还未缓存用户请求的所述视频资源时,根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源,并对获取的完整的视频资源进行缓存。
根据本公开的实施例,提供了一种计算机可读存储介质,其上存储有程序,所述程序被计算机执行时,所述计算机执行本公开的实施例的视频缓存方法。
附图说明
图1是本公开的实施例的视频缓存方法的流程图;
图2是本公开的实施例的视频缓存装置的框图;
图3是本公开的实施例的高速视频缓存系统的组网架构示意图;
图4是本公开的实施例的视频缓存服务器的业务处理流程的示意图。
具体实施方式
以下结合附图对本公开的具体实施例进行详细说明,应当理解,以下所说明的具体实施例仅用于说明和解释本公开的技术方案,并不用于限定本公开的技术方案。
本公开的实施例提供一种视频缓存方法,所述视频缓存方法可运行于运营商的视频缓存服务器中。图1是本公开的实施例的视频缓存方法的流程图,如图1所示,所述视频缓存方法包括如下步骤S101至S103。
在步骤S101处,在接收到用户发起的视频请求后,提取所述视频请求中的用于标识视频资源的URL的部分。
可以理解的是,视频请求包含URL,所述URL包括用于标识视频资源的部分和实现防盗链功能的部分。用于标识视频资源的部分针对同一视频资源是保持不变的,例如可包括用户请求的视频资源的名称。 实现防盗链功能的部分即使针对同一视频资源也是可变的。
在步骤S101处,根据预存的实现防盗链功能的规则,即,针对同一视频资源的URL的变化规则,从所述视频请求中提取用于标识视频资源的URL的部分。
在步骤S102处,根据所提取的用于标识视频资源的URL的部分,确定是否已缓存所述用户请求的视频资源。具体地说,可以将所提取的用于标识视频资源的URL的部分作为用户请求的视频资源的关键字(key),并将其与如本地已缓存的视频资源的关键字进行对比,若本地已缓存的视频资源的关键字中存在与用户请求的视频资源的关键字匹配的关键字,则说明本地已缓存了用户请求的的视频资源,若本地已缓存的视频资源的关键字中不存在与用户请求的视频资源的关键字匹配的关键字,则说明本地还未缓存用户请求的视频资源。
在步骤S103处,若确定还未缓存所述用户请求的视频资源,则根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源,并对获取的完整的所述视频资源进行缓存。具体地说,不考虑所述视频请求中的拖拽参数,来从所述互联网内容提供商服务器获取完整的所述视频资源,并对其进行缓存。这里,拖拽参数是指可以指示视频资源的部分的参数,例如可包括起始位置参数和结束位置参数。
例如,在对从所述互联网内容提供商服务器获取完整的所述视频资源进行缓存后,可以根据视频请求中的拖拽参数,向用户提供缓存的对应的视频资源(例如,可以为片段)。
在一些实施方式中,所述视频缓存方法还包括:若确定本地已缓存了所述用户请求的视频资源,则获取所述视频请求中的拖拽参数,根据所述拖拽参数获取本地缓存的对应视频资源,并将其传送给所述用户。
在一些实施方式中,在步骤S103处,根据针对同一视频资源的第一个视频请求从互联网内容提供商服务器获取完整的视频资源。
具体地说,若确定本地还未缓存用户请求的视频资源,则进一步判断所述视频请求是否是针对对应视频资源的第一个视频请求。
若判断所述视频请求是针对对应视频资源的第一个视频请求, 则不考虑所述视频请求中的拖拽参数,根据所述视频请求,从所述互联网内容提供商服务器获取对应的完整的所述视频资源。
也就是说,在一些实施方式中,若确定本地还未缓存用户请求的视频资源,不考虑针对对应视频资源的第一个视频请求里的拖拽参数,从源站(即互联网内容提供商服务器)获取与该视频请求对应的完整的视频资源并将其缓存到本地。这样,后续用户请求该视频资源时,视频缓存服务器即可直接根据接收到的视频请求中的拖拽参数获取本地缓存的对应视频资源,从而能够快速向用户提供视频资源。当接收到的所述视频请求不是针对对应视频资源的第一个视频请求时,则可根据所述视频请求中的拖拽参数,从所述互联网内容提供商服务器获取对应的视频资源(例如,可以为片段),并将其透传给用户。
本领域技术人员应当理解,可以通过程序指令相关的硬件来实现上述实施例的视频缓存方法中的全部或部分步骤,所述程序可以存储于计算机可读取存储介质中,该程序在执行时,使得相关的硬件执行上述实施例的视频缓存方法中的全部或部分步骤。
本公开的实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被计算机执行时,使得所述计算机执行上述实施例的视频缓存方法。所述计算机存储介质例如可以包括只读存储器(ROM)/随机存取存储器(RAM)、磁碟、光盘、U盘等。
本公开的实施例还提供了一种视频缓存装置,所述视频缓存装置可包含于或耦接至运营商的视频缓存服务器。图2是本公开的实施例的视频缓存装置的框图。如图2所示,所述视频缓存装置可以包括:信息提取模块21、缓存确定模块22和资源获取模块23。
信息提取模块21配置为在接收到用户发起视频请求后,提取所述视频请求中的用于标识视频资源的URL的部分。
缓存确定模块22配置为根据所提取的用于标识视频资源的URL的部分,确定是否已缓存了用户请求的视频资源。
资源获取模块23配置为在确定还未缓存用户请求的视频资源时,根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源,并对获取的完整的视频资源进行缓存。
所述视频缓存装置的工作流程包括:在视频缓存服务器接收到用户发起的视频请求后,信息提取模块21根据预存的实现防盗链功能的规则(即,针对同一视频资源的URL的变化规则),从所述视频请求中提取用于标识视频资源的URL的部分;缓存确定模块22将所提取的用于标识视频资源的URL的部分作为用户请求的视频资源的关键字,并将其与如本地已缓存的视频资源的关键字进行对比,如果本地已缓存的视频资源的关键字中存在与用户请求的视频资源的关键字匹配的关键字,说明本地已缓存了用户请求的视频资源,如果本地已缓存的视频资源的关键字中不存在与用户请求的视频资源的关键字匹配的关键字,则说明本地还未缓存用户请求的视频资源;如果确定本地已缓存了用户请求的视频资源,资源获取模块23获取所述视频请求中的拖拽参数,并根据所述拖拽参数获取本地缓存的对应视频资源,并将其传送给所述用户,如果确定本地还未缓存所述用户请求的视频资源,资源获取模块23不考虑所述视频请求中的拖拽参数,而从所述互联网内容提供商服务器获取对应的完整的视频资源,并将其缓存到本地。
例如,在资源获取模块23将从所述互联网内容提供商服务器获取完整的所述视频资源缓存到本地后,可以根据视频请求中的拖拽参数,向用户提供缓存的对应的视频资源(例如,可以为片段)。
在一些实施方式中,如果确定本地还未缓存用户请求的视频资源,资源获取模块23可以判断所接收到的视频请求是否是针对对应视频资源的第一个视频请求,若所述视频请求是针对对应视频资源的第一个视频请求,则资源获取模块23不考虑所述视频请求中的拖拽参数,从所述互联网内容提供商服务器获取对应的完整的所述视频资源,并将其缓存到本地。若所述视频请求不是针对对应视频资源的第一个视频请求,则资源获取模块23根据所述视频请求中的拖拽参数,从所述互联网内容提供商服务器获取对应的视频资源(例如,可以为片段)并将其透传给所述用户。
应当理解的是,针对同一视频资源的第一个视频请求是指按照时间顺序收到的针对同一视频资源的第一个视频请求,其可能是用于 请求从起始时间点(如0秒)开始播放该视频资源的请求,也可能是用于请求从中间时间点开始播放该视频资源的请求。
需要说明的是,当确定本地还未缓存用户请求的视频资源时,只根据针对该视频资源的第一个视频请求不考虑拖拽参数而获取完整的视频资源并对其进行缓存不仅节省网络资源,而且可以提高向用户提供视频资源的速度。
例如,若在从互联网内容提供商服务器获取完整的视频资源期间接收到针对该视频资源的视频请求,可以根据视频请求中的拖拽参数从互联网内容提供商服务器获取对应的视频资源(例如,可以为片段),并将其透传给用户,这样能够提升对用户的服务速度,并且可以避免对视频资源的重复获取。
根据本公开的实施例所提供的视频缓存方法及视频缓存装置,通过对视频请求中的URL的变化规则进行智能分析并进行相应的处理,来实现视频缓存。
本公开的实施例还提供一种视频缓存装置,其包括处理器和存储器。
所述存储器与所述处理器耦接,所述存储器上存储有供所述处理器执行的程序。
所述处理器配置为在执行所述存储器上存储的程序时执行以下处理:在接收到用户发起视频请求后,提取所述视频请求中的用于标识视频资源的统一资源定位符(URL)的部分;根据所提取的用于标识视频资源的URL的部分,确定本地是否已缓存了用户请求的视频资源;若确定本地还未缓存用户请求的视频资源,则根据所述视频请求从互联网内容提供商服务器获取对应的完整的所述视频资源,并对获取的完整的所述视频资源进行本地缓存。
图3是本公开的实施例的高速视频缓存系统的组网架构示意图。所述高速视频缓存系统包括视频缓存服务器,所述视频缓存服务器包括本公开的实施例的视频缓存装置或者与本公开的实施例的视频缓存装置耦接。
如图3所示,用户经客户端发送的视频请求通过网络到达局方 本地域名系统(Local DNS,LDNS)服务器,LDNS服务器通过网络将所述视频请求中的URL重定向到硬件负载均衡器,硬件负载均衡器将视频请求分发到各个视频缓存服务器,视频缓存服务器判断是否已经缓存了该视频请求对应的视频资源,如果已经缓存了该视频资源,视频缓存服务器就直接获取缓存的对应视频资源并将其提供给用户;如果还没有缓存该视频资源,视频缓存服务器就向互联网内容提供商服务器发起视频请求,将从互联网内容提供商获取的视频资源缓存到本地的视频缓存服务器,然后向用户提供缓存的对应的视频资源。
具体地说,视频缓存服务器根据不同互联网内容提供商对视频资源的防盗链功能,从所接收到的视频请求中提取用于标识视频资源的URL的部分,作为视频资源的关键字。例如,可以利用httpwatch工具找出并提取用于标识视频资源的URL的部分。
可以理解的是,视频请求一般会携带起始点(start)、结束点(end)或范围(range)等拖拽参数,视频请求的拖拽参数一般在URL的参数部分或者视频请求的消息头中。当用户请求视频资源时,视频缓存服务器不考虑针对同一个视频资源的第一个视频请求里的拖拽参数,从互联网内容提供商服务器获取对应的整个的视频资源,并将其缓存到本地。这样,视频缓存服务器在后续接收到用户的针对该视频资源的视频请求后,就可以直接根据所述用户的视频请求中的拖拽参数,获取本地缓存的对应的视频资源,并将其提供给用户。
图4是本公开的实施例的视频缓存服务器的业务处理流程的示意图。所述视频缓存服务器包括本公开的实施例的视频缓存装置或者与本公开的实施例的视频缓存装置耦接。如图4所示,所述视频缓存服务器的处理流程包括以下步骤S4001至S4008。
在步骤S4001处,用户通过终端设备发起视频请求。如上所述,所述视频请求中可以包含URL,所述URL包括用于标识视频资源的部分和防盗链功能的部分。所述用于标识视频资源的部分例如包括用户请求的视频资源的名称。
在步骤S4002处,在视频缓存服务器预存互联网内容提供商对视频资源的防盗链功能的规则(即,针对同一视频资源的URL的变化 规则)。
在步骤S4003处,视频缓存服务器接收到用户的视频请求时,确定针对对应视频资源的URL的变化规则。
在步骤S4004处,视频缓存服务器根据确定的URL的变化规则,提取用户的视频请求中的用于标识视频资源的URL的部分,作为用户请求的视频资源的关键字。
在步骤S4005处,视频缓存服务器根据用户请求的视频资源的关键字判断本地是否已经缓存了对应的视频资源,如果已经缓存了对应的视频资源,则所述处理流程进行至步骤S4006,如果还没有缓存对应的视频资源,则所述处理流程进行至步骤S4007。
在步骤S4006处,视频缓存服务器根据用户的视频请求中的用于识别视频资源的URL的部分及拖拽参数,获取本地缓存的对应视频资源(例如,可以为片段)并将其提供给用户。
在步骤S4007处,视频缓存服务器判断用户的视频请求是否为针对对应视频资源的第一个视频请求,如果用户的视频请求是针对对应视频资源的第一个视频请求,则所述处理流程进行至步骤S4008,如果用户的视频请求不是针对对应视频资源的第一个视频请求,则所述处理流程进行至步骤S4009。
在步骤S4008处,视频缓存服务器不考虑视频请求中的拖拽参数而向互联网内容提供商服务器请求对应的整个的视频资源,并将获取的对应的整个的视频资源缓存在本地。
在步骤S4009处,视频缓存服务器携带用户的视频请求中的拖拽参数,向互联网内容提供商服务器请求对应的视频资源(例如,可为片段),并将对应的视频资源透传给户。
根据本公开的实施例的视频缓存服务器能够对视频请求中的URL的变化规则进行智能分析并进行相应的处理,来缓存对应的视频资源。当用户再次请求相同的视频资源时,视频缓存服务器可以直接获取本地缓存的对应的视频资源并将其提供给用户,不需要再次出网从互联网内容提供商服务器获取对应的视频资源,提升了服务速度,同时也降低了运营商出网流量。
本公开的实施例中的“本地”是指本公开的实施例的视频缓存装置、视频缓存服务器、或高速视频缓存系统无需出网即可访问(例如,高速访问)的存储器,所述存储器可集成在本公开的实施例的视频缓存装置、视频缓存服务器、或高速视频缓存系统中,或者,所述存储器可与本公开的实施例的视频缓存装置、视频缓存服务器、或高速视频缓存系统耦接。
本公开的实施例中的“耦接”是指设备之间无需出网即可互相访问(例如,高速访问)的连接。
尽管上文对本公开的实施例进行了详细说明,但是本公开的技术方案不限于此,本领域技术人员可以根据本公开的原理进行各种修改和变型。按照本公开的原理所作的修改和变型都应当视为落入本公开的保护范围。

Claims (13)

  1. 一种视频缓存方法,包括:
    在接收到用户发起的视频请求后,提取所述视频请求中的用于标识视频资源的统一资源定位符的部分;
    根据用于标识视频资源的统一资源定位符的部分,确定是否已缓存了用户请求的所述视频资源;以及
    在确定还未缓存用户请求的所述视频资源的情况下,则根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源,并对获取的完整的所述视频资源进行缓存。
  2. 根据权利要求1所述的方法,其中,提取所述视频请求中的用于标识视频资源的统一资源定位符的部分包括:
    根据预存的针对同一视频资源的统一资源定位符的变化规则,从所述视频请求中提取用于标识视频资源的统一资源定位符的部分。
  3. 根据权利要求1所述的方法,其中,根据用于标识视频资源的统一资源定位符的部分,确定是否已缓存了用户请求的所述视频资源包括:
    将用于标识视频资源的统一资源定位符的部分作为用户请求的视频资源的关键字;以及
    将用户请求的视频资源的关键字与已缓存的视频资源的关键字进行对比,以确定是否已缓存了用户请求的所述视频资源。
  4. 根据权利要求1所述的方法,其中,根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源包括:
    不考虑所述视频请求中的拖拽参数,而从所述互联网内容提供商服务器获取完整的所述视频资源。
  5. 根据权利要求1所述的方法,其中,根据所述视频请求从互 联网内容提供商服务器获取完整的所述视频资源包括:
    仅根据针对同一视频资源的第一个视频请求,从所述互联网内容提供商服务器获取完整的所述视频资源。
  6. 根据权利要求1至5中任一项所述的方法,还包括:
    在确定本地已缓存了用户请求的视频资源的情况下,则获取所述视频请求中的拖拽参数,并根据所述视频请求中的拖拽参数获取缓存的对应的视频资源,并将其传送给用户。
  7. 一种视频缓存装置,包括:
    信息提取模块,配置为在接收到用户发起的视频请求后,提取所述视频请求中的用于标识视频资源的统一资源定位符的部分;
    缓存确定模块,配置为根据用于标识视频资源的统一资源定位符的部分,确定是否已缓存了用户请求的所述视频资源;以及
    资源获取模块,配置为在确定未缓存用户请求的所述视频资源的情况下,根据所述视频请求从互联网内容提供商服务器获取完整的所述视频资源,并对获取的完整的视频资源进行缓存。
  8. 根据权利要求7所述的装置,其中,所述信息提取模块配置为根据预存的针对同一视频资源的统一资源定位符的变化规则,从所述视频请求中提取用于标识视频资源的统一资源定位符的部分。
  9. 根据权利要求7所述的装置,其中,所述缓存确定模块配置为将用于标识视频资源的统一资源定位符的部分作为用户请求的视频资源的关键字,并将用户请求的视频资源的关键字与已缓存的视频资源的关键字进行对比,以确定是否已缓存了用户请求的所述视频资源。
  10. 根据权利要求7所述的装置,其中,所述资源获取模块配置为在确定未缓存用户请求的所述视频资源的情况下,不考虑所述视 频请求中的拖拽参数,而从所述互联网内容提供商服务器获取完整的所述视频资源。
  11. 根据权利要求7所述的装置,其中,所述资源获取模块配置为在确定未缓存用户请求的所述视频资源的情况下,仅根据针对同一视频资源的第一个视频请求,从所述互联网内容提供商服务器获取完整的所述视频资源。
  12. 根据权利要求7至11中任一项所述的装置,其中,所述资源获取模块还配置为在已缓存了用户请求的视频资源的情况下,获取所述视频请求中的拖拽参数,并根据所述视频请求中的拖拽参数获取缓存的对应的视频资源,并将其传送给用户。
  13. 一种计算机可读存储介质,其上存储有程序,所述程序被计算机执行时,所述计算机执行根据权利要求1至6中的任一项所述的视频缓存方法。
PCT/CN2018/089821 2017-06-14 2018-06-04 视频缓存方法及视频缓存装置 WO2018228234A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2019143702A RU2738447C1 (ru) 2017-06-14 2018-06-04 Способ кэширования видео и устройство кэширования видео

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710446356.1A CN109089175B (zh) 2017-06-14 2017-06-14 一种视频缓存加速的方法及装置
CN201710446356.1 2017-06-14

Publications (1)

Publication Number Publication Date
WO2018228234A1 true WO2018228234A1 (zh) 2018-12-20

Family

ID=64658974

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/089821 WO2018228234A1 (zh) 2017-06-14 2018-06-04 视频缓存方法及视频缓存装置

Country Status (3)

Country Link
CN (1) CN109089175B (zh)
RU (1) RU2738447C1 (zh)
WO (1) WO2018228234A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113163226A (zh) * 2021-03-26 2021-07-23 维沃移动通信有限公司 媒体文件的播放方法、装置、电子设备、服务器和介质
CN116033187A (zh) * 2023-01-05 2023-04-28 北京奇艺世纪科技有限公司 一种视频处理系统、方法、装置、电子设备及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112423146B (zh) * 2019-08-21 2023-10-03 亦非云互联网技术(上海)有限公司 播放数据的获取推送方法、系统、介质、服务端、播放终端
CN112738148B (zh) * 2019-10-28 2024-05-14 中兴通讯股份有限公司 缓存内容的批量删除方法、装置、设备和可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103379381A (zh) * 2012-04-17 2013-10-30 中兴通讯股份有限公司 基于wap网关的视频播放方法、wap网关及系统
US20160337426A1 (en) * 2015-05-14 2016-11-17 Hola Networks Ltd. System and Method for Streaming Content from Multiple Servers
CN106550263A (zh) * 2015-09-16 2017-03-29 深圳市腾讯计算机系统有限公司 媒体播放方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2599295A1 (en) * 2010-07-30 2013-06-05 ByteMobile, Inc. Systems and methods for video cache indexing
CN102111685B (zh) * 2011-02-24 2012-07-25 深信服网络科技(深圳)有限公司 一种网络视频加载的加速方法、设备及系统
CN102882939B (zh) * 2012-09-10 2015-07-22 北京蓝汛通信技术有限责任公司 负载均衡方法、设备及泛域名加速访问系统
CN104641655A (zh) * 2013-04-07 2015-05-20 华为技术有限公司 一种终端缓存的方法、终端及服务器
CN104243412B (zh) * 2013-06-15 2019-03-05 深圳市振华微电子有限公司 网络数据处理终端及在其中处理网络数据的方法
CN104426718B (zh) * 2013-09-10 2018-04-13 方正宽带网络服务股份有限公司 数据监听服务器、缓存服务器和重定向下载方法
CN106686033A (zh) * 2015-11-10 2017-05-17 中兴通讯股份有限公司 一种缓存和服务内容的方法、装置和系统
CN105610909B (zh) * 2015-12-21 2019-01-18 北京大学 一种基于云-端协同的移动浏览器资源加载优化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103379381A (zh) * 2012-04-17 2013-10-30 中兴通讯股份有限公司 基于wap网关的视频播放方法、wap网关及系统
US20160337426A1 (en) * 2015-05-14 2016-11-17 Hola Networks Ltd. System and Method for Streaming Content from Multiple Servers
CN106550263A (zh) * 2015-09-16 2017-03-29 深圳市腾讯计算机系统有限公司 媒体播放方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113163226A (zh) * 2021-03-26 2021-07-23 维沃移动通信有限公司 媒体文件的播放方法、装置、电子设备、服务器和介质
CN116033187A (zh) * 2023-01-05 2023-04-28 北京奇艺世纪科技有限公司 一种视频处理系统、方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN109089175B (zh) 2022-04-22
RU2738447C1 (ru) 2020-12-14
CN109089175A (zh) 2018-12-25

Similar Documents

Publication Publication Date Title
US9888089B2 (en) Client side cache management
WO2018228234A1 (zh) 视频缓存方法及视频缓存装置
EP3175365B1 (en) Web redirection for content filtering
US8763136B2 (en) Privacy enhanced browser
US8886828B2 (en) Selective use of anonymous proxies
WO2017190641A1 (zh) 拦截爬虫的方法、装置、服务器终端以及计算机可读介质
US20140366117A1 (en) Method and system of managing a captive portal with a router
RU2630380C2 (ru) Система и способ пуша (push) рекламы, основанные на домашнем шлюзе
US7987243B2 (en) Method for media discovery
WO2017025052A1 (zh) 资源缓存方法及装置
WO2020228038A1 (zh) 域名处理方法、装置、电子设备以及存储介质
US8914542B1 (en) Content caching
US20180302489A1 (en) Architecture for proactively providing bundled content items to client devices
WO2017020597A1 (zh) 一种资源缓存方法及装置
US9516519B2 (en) Methods and systems of internet protocol optimization for cellular data networks
CN113453062B (zh) 视频元数据的获取、处理方法及装置、系统、电子设备
US10098174B2 (en) Maintaining continuous sessions in cellular data networks
CN111200652A (zh) 应用识别方法、应用识别装置和计算设备
JP2005267435A (ja) キャッシュ処理プログラムおよびキャッシュ処理装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18817077

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18817077

Country of ref document: EP

Kind code of ref document: A1