JP2015170323A - Distribution device and distribution method - Google Patents

Distribution device and distribution method Download PDF

Info

Publication number
JP2015170323A
JP2015170323A JP2014046948A JP2014046948A JP2015170323A JP 2015170323 A JP2015170323 A JP 2015170323A JP 2014046948 A JP2014046948 A JP 2014046948A JP 2014046948 A JP2014046948 A JP 2014046948A JP 2015170323 A JP2015170323 A JP 2015170323A
Authority
JP
Japan
Prior art keywords
content
file
chunk
distribution
unit
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
JP2014046948A
Other languages
Japanese (ja)
Inventor
弘晃 福井
Hiroaki Fukui
弘晃 福井
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2014046948A priority Critical patent/JP2015170323A/en
Publication of JP2015170323A publication Critical patent/JP2015170323A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a distribution device and a distribution method capable of efficiently distributing and performing caching of the content requested from a client.SOLUTION: A distribution device of an embodiment comprises: a storage part; a distribution part; and a file acquisition part. The storage part stores a manifest file in which a list of chunk files formed by dividing a file of content is described, and some chunk files from the beginning of the content. The distribution part performs processing for receiving a distribution request of content from a client terminal and reading the manifest file of the requested content from the storage part to distribute it, and processing for receiving a distribution request of the chunk file of the content from the client terminal and reading the requested chunk file from the storage part to distribute it. The file acquisition part acquires the chunk file which is not stored in the storage part from the storage device to store it in the storage part, before receiving the distribution request of the chunk file of the content from the client terminal.

Description

本発明の実施形態は、配信装置、及び配信方法に関する。   Embodiments described herein relate generally to a distribution device and a distribution method.

映像素材や音声素材などのコンテンツを配信するコンテンツ配信サービスの需要が高まっている。中でも、TCP/IP(Transmission Control Protocol/Internet Protocol)をベースとしたベストエフォート型のネットワーキング技術を基盤インフラとしたフィールドでの配信需要が伸びている。このフィールドでコンテンツ配信サービスを提供するシステムでは、クライアントにコンテンツ配信を行う配信装置を配信ネットワークのエッジ側に多数配置する。これらの配信装置は、管理運用コスト(ランニングコスト)やストレージデバイスの価格などの問題から、配信対象の全てのコンテンツを配置・格納していないことがある。配信装置は、クライアントから要求されたコンテンツを格納していないときには、バックエンド側に配置された中央ストレージ装置へアクセスする。配信装置は、要求されたコンテンツをアクセスした中央ストレージ装置から取得し、キャッシングを行った後、クライアントへコンテンツを配信する。そのため、配信装置がクライアントから要求を受けてからコンテンツを配信するまでに時間を要してしまう場合があった。   The demand for content distribution services that distribute content such as video and audio materials is increasing. In particular, there is a growing demand for distribution in the field based on the best-effort networking technology based on TCP / IP (Transmission Control Protocol / Internet Protocol). In a system that provides a content distribution service in this field, a large number of distribution apparatuses that distribute contents to clients are arranged on the edge side of the distribution network. These distribution apparatuses may not arrange and store all contents to be distributed due to problems such as management operation costs (running costs) and storage device prices. When the distribution apparatus does not store the content requested by the client, the distribution apparatus accesses the central storage apparatus arranged on the back end side. The distribution device acquires the requested content from the accessed central storage device, performs caching, and then distributes the content to the client. For this reason, it may take time until the distribution apparatus distributes the content after receiving the request from the client.

特開2008−204055号公報JP 2008-204055 A

本発明が解決しようとする課題は、クライアントから要求されたコンテンツの配信とキャッシュを効率的に行う配信装置、及び配信方法を提供することである。   The problem to be solved by the present invention is to provide a distribution apparatus and a distribution method for efficiently distributing and caching contents requested by a client.

実施形態の配信装置は、格納部と、配信部と、ファイル取得部とを持つ。格納部は、コンテンツのファイルを分割したチャンクファイルのリストが記述されたマニフェストファイルとコンテンツの先頭から一部のチャンクファイルとを格納する。配信部は、クライアント端末からコンテンツの配信要求を受信し、受信した配信要求により要求されたコンテンツのマニフェストファイルを格納部から読み出して配信する処理と、コンテンツのチャンクファイルの配信要求をクライアント端末から受信し、受信した配信要求により要求されたチャンクファイルを格納部から読み出して配信する処理とを行う。ファイル取得部は、要求されたコンテンツのチャンクファイルのうち格納部に格納されていないチャンクファイルを、クライアント端末からコンテンツのチャンクファイルの配信要求を受信する前にストレージ装置から取得して格納部に格納する。   The distribution apparatus according to the embodiment includes a storage unit, a distribution unit, and a file acquisition unit. The storage unit stores a manifest file in which a list of chunk files obtained by dividing the content file and a part of the chunk files from the top of the content are stored. The distribution unit receives the content distribution request from the client terminal, reads out the content manifest file requested by the received distribution request from the storage unit, and distributes the content chunk file distribution request from the client terminal. Then, the chunk file requested by the received distribution request is read from the storage unit and distributed. The file acquisition unit acquires a chunk file that is not stored in the storage unit among the requested content chunk files from the storage device before receiving the content chunk file distribution request from the client terminal, and stores it in the storage unit To do.

第1の実施形態のコンテンツ配信システムの全体構成図。1 is an overall configuration diagram of a content distribution system according to a first embodiment. 第1の実施形態のコンテンツ配信システムにおけるコンテンツ配信の流れを示すシーケンス図。The sequence diagram which shows the flow of the content delivery in the content delivery system of 1st Embodiment. 第1の実施形態の配信装置の構成を示す機能ブロック図。The functional block diagram which shows the structure of the delivery apparatus of 1st Embodiment. 第1の実施形態に用いられるマニフェストファイルを示す図。The figure which shows the manifest file used for 1st Embodiment. 第1の実施形態の配信装置の格納部に格納されているチャンクファイルのURIを示す図。The figure which shows URI of the chunk file stored in the storage part of the delivery apparatus of 1st Embodiment. 第2の実施形態の配信装置の構成を示す機能ブロック図。The functional block diagram which shows the structure of the delivery apparatus of 2nd Embodiment. 第2の実施形態に用いられるマニフェストファイルを示す図。The figure which shows the manifest file used for 2nd Embodiment. 第2の実施形態の広告コンテンツを構成するチャンクファイル群を示す図。The figure which shows the chunk file group which comprises the advertising content of 2nd Embodiment. 第2の実施形態の書き換え後のマニフェストファイルを示す図。The figure which shows the manifest file after rewriting of 2nd Embodiment. 第4の実施形態に用いられるマニフェストファイルを示す図。The figure which shows the manifest file used for 4th Embodiment. 第4の実施形態に用いられるマニフェストファイルを示す図。The figure which shows the manifest file used for 4th Embodiment. 第4の実施形態に用いられるマニフェストファイルを示す図。The figure which shows the manifest file used for 4th Embodiment. 従来のコンテンツ配信システムにおけるコンテンツのキャッシングの流れを示すシーケンス図。The sequence diagram which shows the flow of the caching of the content in the conventional content delivery system. 従来のコンテンツ配信システムにおけるキャッシュが完了するまでの処理待ちを示す図。The figure which shows the process waiting until the cache in the conventional content delivery system is completed. 従来のコンテンツ配信システムのキャッシュが存在していない状況におけるコンテンツ配信の流れを示す図。The figure which shows the flow of the content delivery in the condition where the cache of the conventional content delivery system does not exist.

以下、実施形態の配信装置、及び配信方法を、図面を参照して説明する。   Hereinafter, a distribution device and a distribution method of an embodiment will be described with reference to the drawings.

(第1の実施形態)
図1は、本実施形態のコンテンツ配信システムの全体構成図である。同図に示すコンテンツ配信システムは、配信装置1、ストレージ装置3、及びクライアント端末5を備えて構成される。同図においては、配信装置1を複数台示しているが、コンテンツ配信システムは、配信装置1を1台のみ備えてもよい。また、同図においては、ストレージ装置3を1台のみ示しているが、コンテンツ配信システムは、複数台のストレージ装置3を備えてもよい。配信装置1とストレージ装置3は、IPネットワーク8を介して接続される。IPネットワーク8は、専用線などを用いた私設網(私設網は仮想私設網を含む)であってもよく、インターネット網のような公衆網であってもよい。配信装置1と複数のエンドユーザのクライアント端末5とは、IP(Internet Protocol)ネットワーク9を介して接続される。IPネットワーク9は、インターネット網などの公衆網であるが、私設網であってもよい。クライアント端末5は、有線または無線によりIPネットワーク9にアクセスする。コンテンツ配信システムが複数台の配信装置1を備える場合、IPネットワーク9のユーザ側のエッジにロードバランサ7が設けられる。以下では、配信対象のコンテンツが映像コンテンツである場合を例に説明するが、コンテンツは、音声データなど他の種類のコンテンツでもよい。
(First embodiment)
FIG. 1 is an overall configuration diagram of a content distribution system according to the present embodiment. The content distribution system shown in the figure includes a distribution device 1, a storage device 3, and a client terminal 5. Although a plurality of distribution apparatuses 1 are shown in the figure, the content distribution system may include only one distribution apparatus 1. In addition, in the figure, only one storage device 3 is shown, but the content distribution system may include a plurality of storage devices 3. The distribution device 1 and the storage device 3 are connected via the IP network 8. The IP network 8 may be a private network (a private network includes a virtual private network) using a dedicated line or the like, or may be a public network such as the Internet network. The distribution apparatus 1 and a plurality of end user client terminals 5 are connected via an IP (Internet Protocol) network 9. The IP network 9 is a public network such as the Internet network, but may be a private network. The client terminal 5 accesses the IP network 9 by wire or wireless. When the content distribution system includes a plurality of distribution apparatuses 1, the load balancer 7 is provided at the user side edge of the IP network 9. Hereinafter, a case where the content to be distributed is video content will be described as an example, but the content may be other types of content such as audio data.

ストレージ装置3は、コンテンツを蓄積するバックエンド側のオリジンサーバである。ストレージ装置3は、1台または複数台で、コンテンツ配信サービスによる配信対象の全てのコンテンツを格納する。配信装置1は、エッジ側のサーバであり、クライアント端末5へコンテンツをストリーミング配信する。配信装置1は、コンテンツ配信サービスによる配信対象コンテンツのうち一部のコンテンツを格納している。クライアント端末5は、コンテンツを再生する装置である。クライアント端末5は、例えば、パーソナルコンピュータ(PC)、IPテレビジョン受信機(IPTV)、STB(セット・トップ・ボックス)、スマートフォン、タブレット端末などである。エンドユーザは、コンテンツの視聴者である。ロードバランサ7は、クライアント端末5から配信装置1へのアクセスを分散させる。   The storage device 3 is an origin server on the back end side that stores content. One or a plurality of storage devices 3 store all contents to be distributed by the content distribution service. The distribution device 1 is a server on the edge side, and distributes content to the client terminal 5 by streaming. The distribution apparatus 1 stores a part of content to be distributed by the content distribution service. The client terminal 5 is a device that reproduces content. The client terminal 5 is, for example, a personal computer (PC), an IP television receiver (IPTV), an STB (set top box), a smartphone, a tablet terminal, or the like. An end user is a viewer of content. The load balancer 7 distributes access from the client terminal 5 to the distribution apparatus 1.

図1に示すコンテンツ配信システムは、TCP/IPをベースとしたベストエフォート型のネットワーキング技術を基盤インフラとしている。ロードバランサ7は、回線の高速化・安定化(冗長化)などの施策として設けられる。ロードバランサ7は、各配信装置1や配信I/F(インタフェース)単位での負荷を分散する。負荷分散を目的としたロードバランサ7は、クライアント端末5から各配信装置1への接続数(トラフィック数)を管理する。しかし、ロードバランサ7は、どのようなコンテンツが各配信装置1に配置され、格納されているのかは管理していない。よって、負荷を分散することを目的としてロードバランサ7が再割り当てした宛先の配信装置1は、エンドユーザが期待していたコンテンツを配置・格納していない場合もある。その度に、配信装置1は、バックエンド側に配置されたストレージ装置3へアクセスしてコンテンツを取得し、キャッシングする。各配信装置1が全てのコンテンツを格納することによりこのような課題は解決するが、管理運用コスト(ランニングコスト)やストレージデバイスの価格などから、この施策は現実的ではない。   The content distribution system shown in FIG. 1 is based on the best-effort networking technology based on TCP / IP. The load balancer 7 is provided as a measure for speeding up and stabilizing the line (redundancy). The load balancer 7 distributes the load in units of each distribution device 1 and distribution I / F (interface). The load balancer 7 for load distribution manages the number of connections (number of traffic) from the client terminal 5 to each distribution device 1. However, the load balancer 7 does not manage what content is arranged and stored in each distribution device 1. Therefore, the destination distribution device 1 reassigned by the load balancer 7 for the purpose of distributing the load may not arrange or store the content expected by the end user. Each time, the distribution apparatus 1 accesses the storage apparatus 3 arranged on the back end side to acquire content and performs caching. Although each distribution apparatus 1 stores all the contents, such a problem is solved, but this measure is not realistic due to management operation costs (running costs), storage device prices, and the like.

コンテンツが配置・格納されている可能性が高い配信装置1にクライアント端末5からの配信要求をリダイレクトした場合、ロードバランサ7による負荷分散に意味や価値がなくなってしまう。また、いずれにしろ、配信装置1は、1回はキャッシュをするために、コンテンツが配置・格納されているストレージ装置3へのアクセスが必要となる。これらのことから、実運用上、または実運用における現実的な装置の配置解が、図1に示す構成である。つまり、IPネットワーク9(配信ネットワーク)のエッジ側に、クライアント端末5に対してコンテンツを配信する廉価的な配信装置1を多数配置する。IPネットワーク9の中心側及びバックエンド側には、コンテンツの蓄積及び確保を主目的として、配信装置1に対してコンテンツを配信するストレージ装置3を少数配置する。そしてロードバランサ7により、クライアント端末5から配信装置1へのアクセスの負荷分散を行う。   When the distribution request from the client terminal 5 is redirected to the distribution apparatus 1 where there is a high possibility that the content is arranged / stored, the load balancing by the load balancer 7 has no meaning or value. In any case, the distribution device 1 needs to access the storage device 3 in which the content is arranged and stored in order to cache once. From these facts, a practical device arrangement solution in actual operation or in actual operation is the configuration shown in FIG. That is, many inexpensive distribution apparatuses 1 that distribute contents to the client terminal 5 are arranged on the edge side of the IP network 9 (distribution network). A small number of storage apparatuses 3 that distribute contents to the distribution apparatus 1 are arranged on the center side and back end side of the IP network 9 for the purpose of storing and securing the contents. Then, the load balancer 7 distributes the load of access from the client terminal 5 to the distribution device 1.

一般的にVOD(Video On Demand)における映像配信の方法は、以下の2つに大別される。1つは、RTSP(Real Time Streaming Protocol)/RTP(Real-Time Transport Protocol)のスキームによる配信方法である。この配信方法は、クライアント端末5から配信装置1に対する素材(コンテンツ)の配信要求から始まる。もう1つは、HTTP(Hypertext Transfer Protocol)のスキームによる配信方法である。この配信方法は、クライアント端末5から配信装置1に対する素材(コンテンツ)のマニフェストファイル(「プレイリスト」ともいうが、以下では「マニフェストファイル」と記載する。)の配信要求から始まる。
前者はIPTV(Internet Protocol TeleVision)フォーラムを代表格とした規格化が存在してはいるが、全世界的に見ると規模は小さい。一方、後者はOTT(Over-The-Top)である。OTTは、パブリック且つスタンダードな規格が定められているわけではない。しかし、OTTは、デファクトとして浸透しつつあり、世界規模は大きい。本実施形態では、OTTを対象とする。
Generally, video distribution methods in VOD (Video On Demand) are roughly classified into the following two. One is a delivery method based on a scheme of RTSP (Real Time Streaming Protocol) / RTP (Real-Time Transport Protocol). This distribution method starts with a material (content) distribution request from the client terminal 5 to the distribution apparatus 1. The other is a delivery method based on an HTTP (Hypertext Transfer Protocol) scheme. This distribution method starts from a distribution request for a material (content) manifest file (also referred to as “playlist”, hereinafter referred to as “manifest file”) from the client terminal 5 to the distribution apparatus 1.
Although the former has a standardization representative of the IPTV (Internet Protocol TeleVision) forum, the scale is small when viewed worldwide. On the other hand, the latter is OTT (Over-The-Top). OTT does not have a public standard. However, OTT is spreading as a de facto and has a large global scale. In the present embodiment, OTT is targeted.

ここで、本実施形態の配信装置の技術的な特徴を明確にするために、従来のコンテンツ配信システムについて説明する。
図13は、従来のコンテンツ配信システムにおけるコンテンツのキャッシングの流れを示すシーケンス図である。従来のコンテンツ配信システムは、図1に示す本実施形態の配信装置1に代えて、配信装置91を有する。配信装置91は、プロキシキャッサーバである。配信装置91は、ストレージ装置3が蓄積しているコンテンツのうち一部を蓄積していてもよく、コンテンツを蓄積していなくともよい。同図では、2台のクライアント端末5をそれぞれ、クライアント端末5−1、クライアント端末5−2と記載している。
Here, in order to clarify the technical features of the distribution apparatus of the present embodiment, a conventional content distribution system will be described.
FIG. 13 is a sequence diagram showing a flow of content caching in a conventional content distribution system. A conventional content distribution system has a distribution device 91 instead of the distribution device 1 of the present embodiment shown in FIG. The distribution device 91 is a proxy cache server. The distribution device 91 may store a part of the content stored in the storage device 3 or may not store the content. In the figure, the two client terminals 5 are described as a client terminal 5-1 and a client terminal 5-2, respectively.

クライアント端末5−1は、コンテンツ(例えば、映像コンテンツA)の配信要求であるHTTPのGET要求を、IPネットワーク9を介して配信装置91に送信する(ステップS805)。配信装置91は、GET要求により配信が要求されたコンテンツをキャッシュしていないと判断した場合(ステップS810)、キャッシュを実施するために、配信が要求されたコンテンツのGET要求をストレージ装置3へ送信する(ステップS815)。ストレージ装置3は、GET要求への応答として、配信が要求されたコンテンツを配信装置91へ配信する(ステップS820)。配信装置91は、ストレージ装置3から受信したコンテンツをキャッシュする(ステップS825)。配信装置91は、GET要求への応答として、キャッシュしたコンテンツをクライアント端末5−1へ配信する(ステップS830)。   The client terminal 5-1 transmits an HTTP GET request, which is a content distribution request (for example, video content A), to the distribution device 91 via the IP network 9 (step S805). When the distribution apparatus 91 determines that the content requested for distribution by the GET request is not cached (step S810), the distribution apparatus 91 transmits a GET request for the content requested for distribution to the storage apparatus 3 in order to perform caching. (Step S815). As a response to the GET request, the storage apparatus 3 distributes the content requested for distribution to the distribution apparatus 91 (step S820). The distribution device 91 caches the content received from the storage device 3 (step S825). The distribution device 91 distributes the cached content to the client terminal 5-1 as a response to the GET request (step S830).

クライアント端末5−2は、コンテンツ(例えば、映像コンテンツA)の配信要求であるGET要求を、IPネットワーク9を介して配信装置91に送信する(ステップS835)。配信装置91は、GET要求により配信が要求されたコンテンツをキャッシュしていると判断する(ステップS840)。配信装置91は、バックエンド側にコンテンツを要求することなく、キャッシュしているコンテンツをクライアント端末5−2に配信する(ステップS845)。   The client terminal 5-2 transmits a GET request, which is a content distribution request (for example, video content A), to the distribution device 91 via the IP network 9 (step S835). The distribution apparatus 91 determines that the content requested to be distributed by the GET request is cached (step S840). The distribution device 91 distributes the cached content to the client terminal 5-2 without requesting the content to the back end side (step S845).

図14は、従来のコンテンツ配信システムにおけるキャッシュが完了するまでの処理待ちを示す図である。同図において、図13に示す処理と同一の処理には、同一の符号を付している。
配信装置91は、クライアント端末5−1からGET要求を受信する(ステップS805)。配信装置91は、GET要求により配信が要求されたコンテンツをキャッシュしていないと判断した場合(ステップS810)、図13のステップS815からステップS830の処理を行い、クライアント端末5−1にコンテンツを配信する。配信装置91は、クライアント端末5−1から受信したGET要求の処理中に、別のクライアント端末5−2からGET要求を受信した場合(ステップS812)、その要求を実行できない場合がある。
FIG. 14 is a diagram illustrating processing waiting until the cache is completed in the conventional content distribution system. In the figure, the same processes as those shown in FIG. 13 are denoted by the same reference numerals.
The distribution apparatus 91 receives a GET request from the client terminal 5-1 (step S805). When the distribution apparatus 91 determines that the content requested for distribution by the GET request is not cached (step S810), the distribution apparatus 91 performs the processing from step S815 to step S830 in FIG. 13 to distribute the content to the client terminal 5-1. To do. When the distribution apparatus 91 receives a GET request from another client terminal 5-2 during processing of the GET request received from the client terminal 5-1, the distribution apparatus 91 may not be able to execute the request (step S812).

その一例としては、クライアント端末5−2から要求されたコンテンツが、クライアント端末5−1から要求されたコンテンツと同一であり、且つ、要求を受けた時点で配信装置1がそのコンテンツを蓄積・格納していない事による「待ち」に他ならない。もちろん、「待ち時間」という点では、先に要求を行ったクライアント端末5−1に対する「待ち時間」よりも、後から要求を行ったクライアント端末5−2に対する「待ち時間」の方が短いことが見込まれる。これは、先に行われたクライアント端末5−1からの要求によって、配信装置1にコンテンツがキャッシュされることによる。ただしこれは、クライアント端末5−1に対する「待ち時間」の改善には繋がらない。   As an example, the content requested from the client terminal 5-2 is the same as the content requested from the client terminal 5-1, and the distribution apparatus 1 stores and stores the content when the request is received. It is nothing but “waiting” for not doing. Of course, in terms of “waiting time”, the “waiting time” for the client terminal 5-2 that made the request later is shorter than the “waiting time” for the client terminal 5-1 that made the request earlier. Is expected. This is because the content is cached in the distribution device 1 in response to the request from the client terminal 5-1 made earlier. However, this does not lead to an improvement in “waiting time” for the client terminal 5-1.

図15は、キャッシュが存在していない状況における従来のコンテンツ配信システムのコンテンツ配信の流れを示す図である。同図では、HTTPによるVOD配信を示している。コンテンツは、マニフェストファイルと、映像コンテンツの動画ファイルを分割した一連のチャンクファイルとからなる。マニフェストファイルには、チャンクファイルのリストや、それらチャンクファイルの保存場所の情報が含まれる。保存場所の情報には、例えば、URL(Universal Resource Locator)やURI(Universal Resource Identifier)が用いられる。   FIG. 15 is a diagram showing a flow of content distribution of a conventional content distribution system in a situation where no cache exists. In the figure, VOD delivery by HTTP is shown. The content includes a manifest file and a series of chunk files obtained by dividing a moving image file of video content. The manifest file includes a list of chunk files and information on the storage location of the chunk files. For example, a URL (Universal Resource Locator) or a URI (Universal Resource Identifier) is used as the storage location information.

クライアント端末5は、映像コンテンツのマニフェストファイルのGET要求を、IPネットワーク9を介して配信装置91に送信する(ステップS905)。配信装置91は、GET要求により配信が要求されたマニフェストファイルをキャッシュしていないと判断した場合(ステップS910)、配信が要求されたマニフェストファイルのGET要求をストレージ装置3へ送信する(ステップS915)。ストレージ装置3は、GET要求への応答として、配信が要求されたマニフェストファイルを配信装置91へ配信する(ステップS920)。配信装置91は、ストレージ装置3から受信したマニフェストファイルをキャッシュする(ステップS925)。配信装置1は、GET要求への応答として、キャッシュしたマニフェストファイルをクライアント端末5−1へ配信する(ステップS930)。   The client terminal 5 transmits a GET request for the manifest file of the video content to the distribution apparatus 91 via the IP network 9 (step S905). If the distribution apparatus 91 determines that the manifest file requested for distribution is not cached by the GET request (step S910), the distribution apparatus 91 transmits a GET request for the manifest file requested for distribution to the storage apparatus 3 (step S915). . As a response to the GET request, the storage apparatus 3 distributes the manifest file requested for distribution to the distribution apparatus 91 (step S920). The distribution device 91 caches the manifest file received from the storage device 3 (step S925). The distribution apparatus 1 distributes the cached manifest file to the client terminal 5-1 as a response to the GET request (step S930).

クライアント端末5は、マニフェストファイルを解釈してチャンクファイルを識別する(ステップS935)。クライアント端末5は、マニフェストファイルに記述された先頭のチャンクファイルのGET要求を、IPネットワーク9を介して配信装置91に送信する(ステップS940)。配信装置91は、GET要求により配信が要求されたチャンクファイルをキャッシュしていないと判断した場合(ステップS945)、配信が要求されたチャンクファイルのGET要求をストレージ装置3へ送信する(ステップS950)。   The client terminal 5 interprets the manifest file and identifies the chunk file (step S935). The client terminal 5 transmits a GET request for the first chunk file described in the manifest file to the distribution apparatus 91 via the IP network 9 (step S940). When the distribution apparatus 91 determines that the chunk file requested for distribution is not cached by the GET request (step S945), the distribution apparatus 91 transmits a GET request for the chunk file requested for distribution to the storage apparatus 3 (step S950). .

上記のように、HTTPのスキームは、クライアント端末5が素材(コンテンツ)のマニフェストファイルの配信要求を送信することから始まる。そして、このHTTPのスキームによれば、配信装置91が自装置に該当コンテンツが存在していないことを認識する処理は、まずマニフェストファイルが存在していないことの認知から始まる。   As described above, the HTTP scheme starts when the client terminal 5 transmits a distribution request for a material (content) manifest file. Then, according to this HTTP scheme, the process of recognizing that the distribution apparatus 91 does not have the corresponding content starts with recognition that the manifest file does not exist.

図13、図14に示す従来のコンテンツデータのキャッシングの流れは、図1に示す本実施形態のコンテンツ配信システムにおいても同様である。本実施形態のコンテンツ配信システムは、この流れにおいて、通信の効率を向上し、素早いレスポンスとキャッシュを行う。   The conventional flow of content data caching shown in FIGS. 13 and 14 is the same in the content distribution system of the present embodiment shown in FIG. In this flow, the content distribution system of the present embodiment improves communication efficiency and performs quick response and caching.

なお、上述したように、マニフェストファイルには、映像素材の動画ファイルであるチャンクファイルのリストや各チャンクファイルの保存場所の情報が含まれる。このマニフェストファイルをうまく利用したものとして、コンテンツの要求を受けた配信装置にそのコンテンツ(素材)が存在していないときの回避伝達策である「リダイレクト」方法がある。しかし、この「リダイレクト」方法を用いることはロードバランサ7による負荷分散を無意味なものとしてしまう。そのため、本実施形態では、リダイレクト方法を用いない。   As described above, the manifest file includes a list of chunk files that are video files of video materials and information on the storage location of each chunk file. As a method of successfully using this manifest file, there is a “redirect” method that is an avoidance transmission measure when the content (material) does not exist in the distribution apparatus that has received the request for the content. However, using this “redirect” method makes load balancing by the load balancer 7 meaningless. Therefore, in this embodiment, the redirection method is not used.

図2は、本実施形態のコンテンツ配信システムにおけるコンテンツ配信の流れを示すシーケンス図である。
ストレージ装置3は、映像コンテンツA、B、及びCのそれぞれについて、マニフェストファイルおよび映像素材の全てのチャンクファイルを完全な形で格納している。映像コンテンツCの全チャンクファイルは、チャンクファイルC1からチャンクファイルC10までである。一方、配信装置1は、映像コンテンツCのマニフェストファイルCmと、番組本編の先頭からの一部のチャンクファイルC1−C3を格納(キャッシュ)している。
FIG. 2 is a sequence diagram showing a flow of content distribution in the content distribution system of the present embodiment.
The storage device 3 stores the manifest file and all chunk files of the video material in a complete form for each of the video contents A, B, and C. All chunk files of the video content C are from the chunk file C1 to the chunk file C10. On the other hand, the distribution apparatus 1 stores (caches) the manifest file Cm of the video content C and a part of the chunk files C1-C3 from the head of the program main part.

クライアント端末5は、映像コンテンツCのマニフェストファイルCmのGET要求を、IPネットワーク9を介して配信装置1に送信する(ステップS105)。配信装置1は、GET要求により配信が要求されたマニフェストファイルCmを保持しているか否かを判断する(ステップS110)。配信装置1は、マニフェストファイルCmを保持しているため、映像コンテンツCを保持していると判断する。配信装置1は、自装置に保持している映像コンテンツCのチャンクファイル数を認識する(ステップS115)。配信装置1は、ステップS105において受信したGET要求により配信が要求されたマニフェストファイルCmをクライアント端末5へ配信する(ステップS120)。さらに、配信装置1は、ステップS105のGET要求を受信してからキャッシュロック時間経過後、ステップS115において自装置に保持していないと判断した4つめ以降のチャンクファイルC4からチャンクファイルC10を順次、ストレージ装置3に要求する。つまり、配信装置1は、チャンクファイルC4のGET要求をストレージ装置3へ送信する(ステップS125)。ストレージ装置3は、GET要求への応答として、配信が要求されたチャンクファイルC4を配信装置1へ配信する(ステップS130)。配信装置1は、ストレージ装置3から受信したチャンクファイルC4をキャッシュする(ステップS135)。その後、配信装置1は、チャンクファイルC5、C6、…、C10について順に、ステップS125からステップS135と同様の処理を繰り返す(ステップS140からステップS150)。   The client terminal 5 transmits a GET request for the manifest file Cm of the video content C to the distribution apparatus 1 via the IP network 9 (step S105). The distribution apparatus 1 determines whether or not the manifest file Cm requested to be distributed by the GET request is held (step S110). Since the distribution apparatus 1 holds the manifest file Cm, the distribution apparatus 1 determines that the video content C is held. The distribution apparatus 1 recognizes the number of chunk files of the video content C held in its own apparatus (step S115). The distribution apparatus 1 distributes the manifest file Cm requested for distribution by the GET request received in step S105 to the client terminal 5 (step S120). Furthermore, the distribution device 1 sequentially receives the chunk files C10 from the fourth and subsequent chunk files C4 that are determined not to be held in the own device in step S115 after the cache lock time has elapsed after receiving the GET request in step S105. Requests to the storage device 3. That is, the distribution apparatus 1 transmits a GET request for the chunk file C4 to the storage apparatus 3 (step S125). As a response to the GET request, the storage apparatus 3 distributes the chunk file C4 requested for distribution to the distribution apparatus 1 (step S130). The distribution device 1 caches the chunk file C4 received from the storage device 3 (step S135). Thereafter, the distribution apparatus 1 repeats the same processing as in Step S125 to Step S135 in order for the chunk files C5, C6,..., C10 (Step S140 to Step S150).

一方、クライアント端末5は、ステップS120において配信装置1から受信したマニフェストファイルCmを解釈してチャンクファイルを識別する(ステップS155)。クライアント端末5は、マニフェストファイルCmのチャンクファイルリストに記述されている順にチャンクファイルを要求する。従ってまず、クライアント端末5は、チャンクファイルC1のGET要求を、IPネットワーク9を介して配信装置1に送信する(ステップS160)。配信装置1は、GET要求により配信が要求されたチャンクファイルC1をクライアント端末5に配信する(ステップS165)。その後、クライアント端末5は、チャンクファイルC2、C3、…、C10について順に、ステップS160からステップS165と同様の処理を繰り返す(ステップS170からステップS195)。なお、クライアント端末5は、再生中のチャンクファイルが終了する前に、次のチャンクファイルがデコード済みとなっているような任意のタイミングでチャンクファイルを要求する。チャンクファイルC1からチャンクファイルC3は、ステップS105においてクライアント端末5からマニフェストファイルCmのGET要求を受信する前に配信装置1が蓄積していたファイルである。チャンクファイルC4からチャンクファイルC10は、マニフェストファイルCmのGET要求を受信した後に配信装置1がストレージ装置3から読み出してキャッシュしたファイルである。   On the other hand, the client terminal 5 identifies the chunk file by interpreting the manifest file Cm received from the distribution apparatus 1 in step S120 (step S155). The client terminal 5 requests the chunk files in the order described in the chunk file list of the manifest file Cm. Therefore, first, the client terminal 5 transmits a GET request for the chunk file C1 to the distribution apparatus 1 via the IP network 9 (step S160). The distribution apparatus 1 distributes the chunk file C1 requested for distribution by the GET request to the client terminal 5 (step S165). Thereafter, the client terminal 5 repeats the same processing as that in steps S160 to S165 for the chunk files C2, C3,..., C10 in order (step S170 to step S195). Note that the client terminal 5 requests a chunk file at an arbitrary timing such that the next chunk file is already decoded before the chunk file being played back ends. The chunk file C1 to the chunk file C3 are files stored in the distribution apparatus 1 before receiving the GET request for the manifest file Cm from the client terminal 5 in step S105. The chunk file C4 to the chunk file C10 are files that the distribution device 1 has read from the storage device 3 and cached after receiving the GET request for the manifest file Cm.

上記手順により、配信装置1は、まずマニフェストファイルと先頭から所定数のチャンクファイルをクライアント端末5へ配信する。配信装置1は、この配信の間に、自装置が格納していない残りのチャンクファイルを、クライアント端末5から配信要求を受ける前にストレージ装置3から取得してキャッシュする。配信装置1は、クライアント端末5からチャンクファイルの配信要求を受けると、キャッシュしていたチャンクファイルを配信する。よって、配信装置1は、クライアント端末5から要求されたコンテンツの配信とキャッシュを効率的に行うことができる。   According to the above procedure, the distribution apparatus 1 first distributes the manifest file and a predetermined number of chunk files from the top to the client terminal 5. The distribution device 1 acquires and caches the remaining chunk files that are not stored in the distribution device 1 from the storage device 3 before receiving a distribution request from the client terminal 5 during the distribution. When receiving the chunk file distribution request from the client terminal 5, the distribution apparatus 1 distributes the cached chunk file. Therefore, the distribution apparatus 1 can efficiently distribute and cache the content requested from the client terminal 5.

図3は、配信装置1の構成を示す機能ブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。同図に示すように、配信装置1は、格納部11−1、格納部11−2、エッジ側送受信部12、キャッシュロック部13、コンテンツ存在認識部14、チャンクファイル数認識部15、バックエンド側送受信部16、及びコンテンツ蓄積トリガー部17を備えて構成される。   FIG. 3 is a functional block diagram showing the configuration of the distribution apparatus 1, and shows only functional blocks related to the present embodiment. As shown in the figure, the distribution apparatus 1 includes a storage unit 11-1, a storage unit 11-2, an edge-side transmission / reception unit 12, a cache lock unit 13, a content presence recognition unit 14, a chunk file number recognition unit 15, a back end. A side transmission / reception unit 16 and a content accumulation trigger unit 17 are provided.

格納部11−1は、コンテンツの蓄積及び格納を主目的とするストレージデバイスである。格納部11−1は、例えば、SSD(Solid State Drive)の記憶領域である。格納部11−1は、マニフェストファイルと全チャンクファイルとからなるコンテンツを格納する。なお、初期状態において、格納部11−1は、コンテンツを蓄積していなくともよい。
格納部11−2は、コンテンツのマニフェストファイルと、そのコンテンツの先頭から数個分のチャンクファイル(コンテンツの本編全部ではない)を格納する。格納部11−2は、例えば、SDRAM(Synchronous Dynamic Random Access Memory:シンクロナスランダムアクセスメモリ)のようなメモリデバイスの格納領域である。なお、初期状態において、格納部11−2は、配信対象のコンテンツ全てあるいは一部のコンテンツについて、マニフェストファイルと先頭から数個分のチャンクファイルを格納している。
The storage unit 11-1 is a storage device whose main purpose is to store and store content. The storage unit 11-1 is, for example, an SSD (Solid State Drive) storage area. The storage unit 11-1 stores content including a manifest file and all chunk files. In the initial state, the storage unit 11-1 does not have to accumulate content.
The storage unit 11-2 stores a content manifest file and several chunk files (not the entire main content) from the beginning of the content. The storage unit 11-2 is a storage area of a memory device such as an SDRAM (Synchronous Dynamic Random Access Memory). In the initial state, the storage unit 11-2 stores a manifest file and several chunk files from the beginning for all or part of the content to be distributed.

格納部11−1と格納部11−2は、論理的に記憶領域が分かれていることを表している。そのため、識別可能であれば、格納部11−1と格納部11−2が、物理的には同じ記憶装置であっても構わない。例えば、格納部11−1と格納部11−2を、SDRAMの別の記憶領域としてもよい。格納部11−1がSSDのようなストレージデバイスの格納領域であり、格納部11−2がSDRAMのようなメモリデバイスの格納領域であるという例は、単に「格納部11−2の処理速度」>>「格納部11−1の処理速度」を考慮したものである。   The storage unit 11-1 and the storage unit 11-2 indicate that the storage areas are logically separated. Therefore, the storage unit 11-1 and the storage unit 11-2 may be physically the same storage device as long as they can be identified. For example, the storage unit 11-1 and the storage unit 11-2 may be different storage areas of the SDRAM. An example in which the storage unit 11-1 is a storage area of a storage device such as an SSD and the storage unit 11-2 is a storage area of a memory device such as an SDRAM is simply “processing speed of the storage unit 11-2”. >> "Processing speed of storage unit 11-1" is taken into consideration.

エッジ側送受信部12は、IPネットワーク9を介してクライアント端末5との間のデータを送受信するためのインタフェースである。バックエンド側送受信部16は、ストレージ装置3との間のデータを送受信するためのインタフェースである。   The edge side transmission / reception unit 12 is an interface for transmitting / receiving data to / from the client terminal 5 via the IP network 9. The back-end side transmission / reception unit 16 is an interface for transmitting / receiving data to / from the storage apparatus 3.

キャッシュロック部13は、コンテンツ配信要求の集約化、及び、コンテンツ配信要求の時間バッファリングを行う。コンテンツ存在認識部14は、自装置に、クライアント端末5から配信が要求されたコンテンツを構成するデータが存在しているか否かを認識する。チャンクファイル数認識部15は、クライアント端末5から配信が要求されたコンテンツのチャンクファイルを先頭から何番目まで自装置が保持しているかを認識する。コンテンツ蓄積トリガー部17は、所定のトリガーが発生した場合に、一時的にしろ格納部11−2が保持していたコンテンツのマニフェストファイル及び全チャンクファイルを読み出して、格納部11−1に蓄積する。   The cache lock unit 13 performs aggregation of content distribution requests and time buffering of content distribution requests. The content presence recognition unit 14 recognizes whether or not the data constituting the content requested to be distributed from the client terminal 5 exists in the own device. The chunk file number recognition unit 15 recognizes how many chunk files of the content requested for distribution from the client terminal 5 are held by the own device. When a predetermined trigger occurs, the content accumulation trigger unit 17 temporarily reads the content manifest file and all chunk files held in the storage unit 11-2 and stores them in the storage unit 11-1. .

続いて、配信装置1の処理を詳細に説明する。
図3に示すように、配信装置1の格納部11−1は、映像コンテンツAと映像コンテンツBを構成する全てのデータを記憶している。つまり、格納部11−1は、映像コンテンツA、Bのそれぞれを、マニフェストファイルおよび映像素材の全てのチャンクファイルが揃った完全な形で格納している。一方、格納部11−2は、映像コンテンツCのマニフェストファイルと先頭から数個分のチャンクファイルのデータのみを格納している。つまり、映像コンテンツCの本編全部を構成するチャンクファイルが格納部11−2に格納されているものではない。
Subsequently, processing of the distribution apparatus 1 will be described in detail.
As illustrated in FIG. 3, the storage unit 11-1 of the distribution device 1 stores all data constituting the video content A and the video content B. That is, the storage unit 11-1 stores each of the video contents A and B in a complete form in which the manifest file and all chunk files of the video material are arranged. On the other hand, the storage unit 11-2 stores only the manifest file of the video content C and the data of several chunk files from the top. That is, the chunk file constituting the entire main part of the video content C is not stored in the storage unit 11-2.

このような形態・状態・状況は、実運用においては大いに考えられる。具体的なイメージを想起させるための一例をあげる。映像コンテンツAや映像コンテンツBは人気コンテンツであり、常にエンドユーザから視聴要求が行われるようなコンテンツである。運用上、このようなコンテンツが全ての配信装置1に格納されている事は、配信サービスを行っている事業者に期待される。そのため、配信装置1は、順次、コンテンツを人気順に、可能な限り格納していく。その一方で、人気の度合いが未知数である新規配給コンテンツや、ニッチ向けあるいはマニア向けのコンテンツを配信装置1に格納しておくか否かについては、配信装置1が単体で蓄積可能なストレージ領域の容量や残量に依存する。本実施形態では、このようなコンテンツを全般的に映像コンテンツCと同義と位置付けている。このようにコンテンツを構成する全てのデータ(マニフェストファイルおよび映像素材の全てのチャンクファイル)が揃っていない状態は、配信装置1の一般的な状況である。配信装置1は、通常の処理手順に従い、バックエンド側のストレージ装置3に対して、データ取得のためのアクセス処理を行う。   Such forms, states, and situations are highly conceivable in actual operation. Here is an example to remind you of a specific image. Video content A and video content B are popular content, and are content that is always requested to be viewed by end users. In operation, such a content is stored in all of the distribution apparatuses 1 and is expected from the business operator who provides the distribution service. Therefore, the distribution apparatus 1 sequentially stores contents in order of popularity as much as possible. On the other hand, whether or not new distribution contents whose popularity is unknown or contents for niche or mania are stored in the distribution apparatus 1 depends on the storage area that the distribution apparatus 1 can store alone. Depends on capacity and remaining capacity. In the present embodiment, such content is generally regarded as synonymous with video content C. A state in which all data (manifest file and all chunk files of video material) constituting the content is not complete is a general situation of the distribution apparatus 1. The distribution apparatus 1 performs access processing for data acquisition with respect to the storage apparatus 3 on the back end side according to a normal processing procedure.

配信装置1は、以下に示す処理1〜処理5を実行する。
まず、配信装置1は、マニフェストファイルの配信要求受信処理を行う(処理1)。
配信装置1のエッジ側送受信部12は、クライアント端末5からコンテンツの配信要求を受信する。クライアント端末5は、必ず一番初めにマニフェストファイルを要求し、最初には、映像素材のチャンクファイルをダイレクトに指定した要求を行わない。仮にそのような事がありうる場合の施策や対策としては、以下がある。すなわち、エッジ側送受信部12は、クライアント端末5から要求されたメッセージにマニフェストファイルのファイル拡張子の記述があるか否を判断する。マニフェストファイル以外の拡張子の記述があった場合、さらに、エッジ側送受信部12は、予め設定された拡張子がフィルタ(例えば、チャンクファイルの拡張子)とマッチしているか否かを判断する。このように、チャンクファイルをダイレクトに指定した要求の回避は、比較的容易に可能である。
The distribution apparatus 1 executes processing 1 to processing 5 shown below.
First, the distribution apparatus 1 performs a manifest file distribution request reception process (process 1).
The edge-side transmitting / receiving unit 12 of the distribution apparatus 1 receives a content distribution request from the client terminal 5. The client terminal 5 always requests the manifest file first, and does not make a request for directly specifying the chunk file of the video material first. There are the following measures and measures when such a case is possible. That is, the edge-side transmitting / receiving unit 12 determines whether the message requested from the client terminal 5 includes a description of the file extension of the manifest file. When there is a description of an extension other than the manifest file, the edge-side transmitting / receiving unit 12 further determines whether or not a preset extension matches a filter (for example, an extension of a chunk file). In this way, it is relatively easy to avoid a request that directly specifies a chunk file.

処理1に続いて、配信装置1は、キャッシュロック処理を行う(処理2)。
キャッシュロック部13は、処理1において要求されたマニフェストファイルに対応するコンテンツを自装置が蓄積しているか否かについては一旦保留とし、クライアント端末5からコンテンツの配信要求があったと判断する。キャッシュロック部13は、配信が要求されたコンテンツの情報を、自身が記憶するテーブルに保持し、コンテンツ存在認識部14を稼働させる。テーブルに登録する情報には、例えば、要求されたマニフェストファイルのファイル名などを用いることができる。テーブルにコンテンツの情報が登録されている間、配信装置1は、そのコンテンツのチャンクファイルの配信要求をストレージ装置3へ送信しない。
Subsequent to the process 1, the distribution apparatus 1 performs a cache lock process (process 2).
The cache lock unit 13 temporarily holds whether the content corresponding to the manifest file requested in the process 1 is stored, and determines that a content distribution request has been received from the client terminal 5. The cache lock unit 13 holds information on the content requested to be distributed in a table stored in the cache lock unit 13 and operates the content presence recognition unit 14. For example, the file name of the requested manifest file can be used as information registered in the table. While the content information is registered in the table, the distribution device 1 does not transmit a distribution request for the chunk file of the content to the storage device 3.

処理2に続いて、配信装置1は、コンテンツの存在確認処理を行う(処理3)。
コンテンツ存在認識部14は、キャッシュロック部13から起動されると、大きく以下の2つの認識処理を行う。1つめの認識処理(認識処理A)は、格納部11−1と格納部11−2に、クライアント端末5から要求されたコンテンツが格納されているか否かを認識する処理である。2つめの認識処理(認識処理B)は、格納部11−2にクライアント端末5から要求されたコンテンツが格納されている場合、先頭から何番目までのチャンクファイルのデータを保持しているかを認識する処理である。
Subsequent to the process 2, the distribution apparatus 1 performs a content existence confirmation process (process 3).
When activated from the cache lock unit 13, the content presence recognition unit 14 performs the following two recognition processes. The first recognition process (recognition process A) is a process for recognizing whether or not the content requested from the client terminal 5 is stored in the storage unit 11-1 and the storage unit 11-2. The second recognition process (recognition process B) recognizes the number of chunk file data from the beginning when the content requested from the client terminal 5 is stored in the storage unit 11-2. It is processing to do.

コンテンツ存在認識部14が認識処理Aを行う場合の探索の順序は、「格納部11−1⇒格納部11−2」であってもよく、「格納部11−2⇒格納部11−1」であってもよく、特に制約はない。ここでは説明を簡略化するために、「格納部11−1⇒格納部11−2」の順番であるとする。   The search order when the content presence recognition unit 14 performs the recognition process A may be “storage unit 11-1 → storage unit 11-2” or “storage unit 11-2 → storage unit 11-1”. There is no particular limitation. Here, in order to simplify the description, it is assumed that the order is “storage unit 11-1 → storage unit 11-2”.

また更に、格納部11−2以外に、コンテンツのマニフェストファイルと先頭から数個分のチャンクファイルのデータのみを格納している格納部11−3、格納部11−4、…が存在しても、コンテンツ存在認識部14が探索を行う領域として登録されてさえいれば構わない。例えば、「格納部11−1⇒格納部11−2⇒格納部11−3⇒…⇒格納部11−K」を行う場合、認識処理Aの詳細は以下の探索処理A−1から探索処理A−Kとなる。   In addition to the storage unit 11-2, there may be a storage unit 11-3, storage unit 11-4,... That stores only the content manifest file and the data of several chunk files from the beginning. As long as the content presence recognition unit 14 is registered as an area to be searched, it does not matter. For example, when “storage unit 11-1 → storage unit 11-2 → storage unit 11-3 →... → storage unit 11-K” is performed, the details of the recognition process A are changed from the following search process A-1 to search process A. -K.

探索処理A−1において、コンテンツ存在認識部14は、格納部11−1を探索する。格納部11−1にコンテンツが存在する場合、コンテンツ存在認識部14は、通常の配信処理を実行する。格納部11−1にコンテンツが存在しない場合、コンテンツ存在認識部14は、次の探索ステップ(探索処理A−2)に移行する。   In the search process A-1, the content presence recognition unit 14 searches the storage unit 11-1. When content is present in the storage unit 11-1, the content presence recognition unit 14 executes normal distribution processing. When no content exists in the storage unit 11-1, the content presence recognition unit 14 proceeds to the next search step (search process A-2).

探索処理A−2において、コンテンツ存在認識部14は、格納部11−2を探索する。格納部11−2にコンテンツが存在する場合、コンテンツ存在認識部14は、クライアント端末5への配信処理を実行しつつ、バックエンド側ではキャッシュ取得準備を進める。格納部11−2にコンテンツが存在しない場合、コンテンツ存在認識部14は、次の探索ステップ(探索処理A−3)に移行する。   In the search process A-2, the content presence recognition unit 14 searches the storage unit 11-2. When content exists in the storage unit 11-2, the content presence recognition unit 14 proceeds with cache acquisition preparation on the back end side while executing distribution processing to the client terminal 5. If there is no content in the storage unit 11-2, the content presence recognition unit 14 proceeds to the next search step (search process A-3).

探索処理A−3において、コンテンツ存在認識部14は、格納部11−3を探索する。格納部11−3にコンテンツが存在する場合、コンテンツ存在認識部14は、クライアント端末5への配信処理を実行しつつ、バックエンド側ではキャッシュ取得準備を進める。格納部11−3にコンテンツが存在しない場合、コンテンツ存在認識部14は、次の探索ステップに移行する。   In the search process A-3, the content presence recognition unit 14 searches the storage unit 11-3. When content exists in the storage unit 11-3, the content presence recognition unit 14 proceeds with cache acquisition preparation on the back end side while executing distribution processing to the client terminal 5. If no content exists in the storage unit 11-3, the content presence recognition unit 14 proceeds to the next search step.

探索処理A−4から探索処理A−(K−1)において、コンテンツ存在認識部14は、格納部11−4から格納部11−(K−1)のそれぞれについて上記の探索処理A−2、A−3と同様の処理を行う。   In the search process A-4 to the search process A- (K-1), the content presence recognition unit 14 performs the above-described search process A-2, storage unit 11-4 to storage unit 11- (K-1), respectively. Processing similar to A-3 is performed.

探索処理A−Kにおいて、コンテンツ存在認識部14は、格納部11−Kを探索する。格納部11−Kにコンテンツが存在する場合、コンテンツ存在認識部14は、クライアント端末5への配信処理を実行しつつ、バックエンド側ではキャッシュ取得準備を進める。最後の探索領域である格納部11−Kの走査・探索でもコンテンツが存在しなかった場合、コンテンツ存在認識部14は、従来技術と同様のバックエンド側に対するキャッシュ取得処理を行い、ストレージ装置3にデータ取得のアクセス処理を実行する。   In the search process AK, the content presence recognition unit 14 searches the storage unit 11-K. When there is content in the storage unit 11 -K, the content presence recognition unit 14 proceeds with cache acquisition preparation on the back end side while executing distribution processing to the client terminal 5. If no content exists even in the scanning / searching of the storage unit 11-K that is the last search area, the content presence recognition unit 14 performs a cache acquisition process on the back end side as in the conventional technique, and Execute data acquisition access processing.

例えば、処理1においてクライアント端末5から映像コンテンツAが要求された場合、探索処理A−1においてコンテンツ存在認識部14は、要求されたコンテンツが格納部11−1に存在すると判断し、通常の配信処理を行う。つまり、エッジ側送受信部12は、要求された映像コンテンツAのマニフェストファイルを格納部11−1から読み出し、クライアント端末5に送信する。そして、バックグラウンドでキャッシュロック部13は、映像コンテンツAの情報をテーブルからクリアする。その後、エッジ側送受信部12は、クライアント端末5から映像コンテンツAのチャンクファイルの配信要求を受信すると、要求されたチャンクファイルを格納部11−1から読み出して配信する。   For example, when the video content A is requested from the client terminal 5 in the process 1, the content presence recognizing unit 14 determines in the search process A-1 that the requested content exists in the storage unit 11-1, and normal distribution is performed. Process. That is, the edge-side transmission / reception unit 12 reads the requested manifest file of the video content A from the storage unit 11-1 and transmits it to the client terminal 5. Then, in the background, the cache lock unit 13 clears the information of the video content A from the table. After that, when receiving the delivery request for the chunk file of the video content A from the client terminal 5, the edge side transmission / reception unit 12 reads the requested chunk file from the storage unit 11-1 and delivers it.

探索処理A−k(kは2からKのいずれか)において「格納部11−kにコンテンツが存在する場合」に、コンテンツ存在認識部14が、「配信処理を実行しつつ、バックエンド側ではキャッシュ取得準備を進める」処理は同じである。この処理は、コンテンツ存在認識部14のサブブロックであるチャンクファイル数認識部15が実行する。   In the search process Ak (where k is any one of 2 to K), the content presence recognition unit 14 determines that “the distribution end is being executed while the back end side executes the distribution process. The process of “preparing cache acquisition” is the same. This processing is executed by the chunk file number recognition unit 15 which is a sub-block of the content presence recognition unit 14.

なお、キャッシュロック部13が、処理2の前に、要求されたコンテンツのエントリが既にコンテンツ存在認識部14のテーブルに存在するか否か、また、エントリが存在していた場合に、キャッシュ行為の実行中であるか否かを検索する処理を加えてもよい。これにより、無駄・無用に、配信装置1がバックエンド側に対してデータ取得のアクセス処理を実行しないように抑制する事が可能になる。   Note that the cache lock unit 13 determines whether or not the requested content entry already exists in the table of the content presence recognition unit 14 before processing 2, and if the entry exists, You may add the process which searches whether it is performing. As a result, it is possible to prevent the distribution apparatus 1 from performing the data acquisition access process on the back-end side unnecessarily.

処理3において、コンテンツ存在認識部14が、要求されたコンテンツは格納部11−1に存在していないと判断した場合、配信装置1のバックエンド側送受信部16は、バックエンドへの配信要求処理を行う(処理4)。なお、配信装置1が格納部11−1から格納部11−Kを備える場合は、以下の説明において、格納部11−2を、格納部11−k(kは2からKのいずれか)とすればよい。   In the process 3, when the content presence recognition unit 14 determines that the requested content does not exist in the storage unit 11-1, the back-end side transmission / reception unit 16 of the distribution device 1 performs a distribution request process to the back end. (Process 4). When the distribution apparatus 1 includes the storage unit 11-1 to the storage unit 11-K, in the following description, the storage unit 11-2 is referred to as the storage unit 11-k (k is any of 2 to K). do it.

処理3において、コンテンツ存在認識部14が、要求されたコンテンツは格納部11−1、11−2のいずれにも存在していないと判断した場合、配信装置1は、従来技術と同様にバックエンド側に対してデータ取得のアクセス処理を行う。つまり、バックエンド側送受信部16は、要求されたマニフェストファイルの配信要求をストレージ装置3へ送信する。そして、バックグラウンドでキャッシュロック部13は、配信が要求されたコンテンツの情報を保持しているテーブルの内容を更新する。つまり、キャッシュロック部13は、キャッシュが必要なコンテンツであることを記録として登録するため、キャッシュ行為の実行中であることを示す情報をテーブルに保持する。バックエンド側送受信部16は、ストレージ装置3から配信されたマニフェストファイルを格納部11−2にキャッシュ(格納)する。エッジ側送受信部12は、キャッシュしたマニフェストファイルを格納部11−2から読み出してクライアント端末5に送信する。その後、エッジ側送受信部12がクライアント端末5からチャンクファイルの配信要求を受信すると、バックエンド側送受信部16は、要求されたチャンクファイルをストレージ装置3から取得して格納部11−2にキャッシュする。エッジ側送受信部12は、キャッシュされたチャンクファイルを格納部11−2から読み出してクライアント端末5に送信する。   In the process 3, when the content presence recognition unit 14 determines that the requested content does not exist in any of the storage units 11-1 and 11-2, the distribution apparatus 1 uses the back end in the same manner as in the related art. Access processing for data acquisition. That is, the back-end side transmission / reception unit 16 transmits the requested manifest file distribution request to the storage apparatus 3. Then, in the background, the cache lock unit 13 updates the contents of the table holding the information on the content requested to be distributed. That is, the cache lock unit 13 stores information indicating that the cache action is being executed in the table in order to register as a record that the content needs to be cached. The back-end side transmission / reception unit 16 caches (stores) the manifest file distributed from the storage device 3 in the storage unit 11-2. The edge side transmission / reception unit 12 reads the cached manifest file from the storage unit 11-2 and transmits it to the client terminal 5. Thereafter, when the edge-side transmitting / receiving unit 12 receives a chunk file delivery request from the client terminal 5, the back-end side transmitting / receiving unit 16 acquires the requested chunk file from the storage device 3 and caches it in the storage unit 11-2. . The edge side transmission / reception unit 12 reads the cached chunk file from the storage unit 11-2 and transmits it to the client terminal 5.

一方、処理3において、コンテンツ存在認識部14が、要求されたコンテンツは格納部11−2に存在すると判断した場合、配信装置1は、配信処理を実行しつつ、バックエンド側ではキャッシュ取得準備を進める。具体的には、チャンクファイル数認識部15は、該当コンテンツの先頭から何番目までのチャンクファイルのデータを格納部11−2が保持しているのかを認識する。チャンクファイル数認識部15は、格納部11−2が保持していないチャンクファイルのキャッシュ取得処理を実行するようバックエンド側送受信部16に指示する。例として、要求された映像コンテンツCのマニフェストファイル、及びチャンクファイルとして、図4に示すマニフェストファイルと、図5に示すURIのチャンクファイルが格納部11−2に存在している場合を説明する。   On the other hand, when the content presence recognition unit 14 determines in step 3 that the requested content exists in the storage unit 11-2, the distribution device 1 executes the distribution processing and prepares for cache acquisition on the back end side. Proceed. Specifically, the chunk file number recognition unit 15 recognizes the number of chunk file data from the top of the corresponding content to which the storage unit 11-2 holds. The chunk file number recognition unit 15 instructs the back-end side transmission / reception unit 16 to execute the cache acquisition processing of the chunk file that is not held by the storage unit 11-2. As an example, a case will be described in which the manifest file shown in FIG. 4 and the URI chunk file shown in FIG. 5 exist in the storage unit 11-2 as the requested manifest file and chunk file of the video content C.

図4は、マニフェストファイルの一例を示す図である。マニフェストファイルには、チャンクファイルリストやチャンクファイルの保存場所の情報が含まれる。チャンクファイルリストは、映像素材の動画ファイルであるチャンクファイルの一連リストである。チャンクファイルの保存場所は、例えば、URIにより示される。さらに、マニフェストファイルには、その他拡張情報としてコンテンツの番組尺長やタイトルなどが記述される。「EXT-X-TARGETDURATION:10」は、10秒毎のチャンクファイルに分割されていることを示す。また、「#EXTINF:10」は、チャンクファイルが10秒の動画のファイルであることを示す。このように、マニフェストファイルは、動画ファイルそのものでは無い。   FIG. 4 is a diagram illustrating an example of a manifest file. The manifest file includes a chunk file list and information on the storage location of the chunk file. The chunk file list is a series of chunk files that are video files of video material. The storage location of the chunk file is indicated by a URI, for example. Further, the program file length, title, etc. of the content are described in the manifest file as other extended information. “EXT-X-TARGETDURATION: 10” indicates that the file is divided into chunk files every 10 seconds. “#EXTINF: 10” indicates that the chunk file is a 10-second moving image file. Thus, the manifest file is not a moving image file itself.

図5は、格納部11−2が格納しているチャンクファイルのURIを示す図である。図4に示すマニフェストファイルには、該当コンテンツを構成するチャンクファイルが、chunk-1.tsからchunk-6.tsであることが記述されている。チャンクファイル数認識部15は、図5に示すチャンクファイルのURIから、格納部11−2に存在しているチャンクファイルが、先頭から2番目までのchunk-1.tsとchunk-2.tsであることを認識する。さらに、チャンクファイル数認識部15は、配信装置1にはchunk-3.tsから最後のchunk-6.tsまでのチャンクファイルが不足している事を認識する。バックエンド側送受信部16は、コンテンツ存在認識部14が不足していると認識したchunk-3.tsから最後のchunk-6.tsまでのチャンクファイルをストレージ装置3から取得する処理を行う。バックエンド側送受信部16は、この取得処理をバッファアンダーランが発生しない程度の処理速度で実行すればよい。バックエンド側送受信部16は、既に自装置に保持しているマニフェストファイルや、先頭から2番目までのチャンクファイルchunk-1.ts、chunk-2.tsの取得処理を改めて行う必要はない。   FIG. 5 is a diagram showing the URI of the chunk file stored in the storage unit 11-2. The manifest file shown in FIG. 4 describes that the chunk files constituting the corresponding content are chunk-1.ts to chunk-6.ts. From the chunk file URI shown in FIG. 5, the chunk file number recognizing unit 15 includes chunk-1.ts and chunk-2.ts from the top to the second chunk file existing in the storage unit 11-2. Recognize that there is. Furthermore, the chunk file number recognizing unit 15 recognizes that the distribution device 1 lacks chunk files from chunk-3.ts to the last chunk-6.ts. The back-end side transmission / reception unit 16 performs a process of acquiring from the storage device 3 chunk files from chunk-3.ts recognized as insufficient by the content presence recognition unit 14 to the last chunk-6.ts. The back-end side transmitting / receiving unit 16 may perform this acquisition process at a processing speed that does not cause a buffer underrun. The back-end side transmission / reception unit 16 does not need to perform the acquisition process of the manifest file already held in the own device or the chunk files chunk-1.ts and chunk-2.ts from the top to the second.

ここで、一つのマニフェストファイルとN個のチャンクファイルから構成されるコンテンツがあるとする。コンテンツを構成する全要素N個のチャンクファイルの内、先頭からn番目までのチャンクファイルが配信装置1の格納部11−2に格納されていたとする。このn個は、全要素N個に対して、1<n<<Nの関係が保たれているとし、各チャンクファイルは平均してS秒程度のエンコーディングデータであるとする。各チャンクファイルの取得処理をバッファアンダーランが発生しない程度の処理速度で実行するとは、S秒以内にストレージ装置3にコンテンツを要求し、取得するまでの処理を完了するように調整する事である。配信装置1に先頭からn番目までのチャンクファイルが格納されている場合、配信装置1は、n×S秒の映像尺分(エンコーディング時間の合計)のデータを保持している事になる。そこで、キャッシュロック部13は、要求されたコンテンツの情報をテーブルに保持しておく時間を、n×S秒間よりも短い時間とする。コンテンツの情報がテーブルに保持されている時間は、該当コンテンツの要求に対するロック時間である。バックエンド側送受信部16は、テーブルにコンテンツの情報が保持されている間は、該当コンテンツの配信要求を他のクライアント端末5から受信しても、ストレージ装置3からの当該コンテンツのチャンクファイルの取得を行わない。なお、信頼性・安全性を鑑み、実運用としては、ロック時間を(n−1)×S秒以下の時間としてもよい。   Here, it is assumed that there is content composed of one manifest file and N chunk files. It is assumed that among the N chunk files of all elements constituting the content, the first to nth chunk files are stored in the storage unit 11-2 of the distribution apparatus 1. It is assumed that the relation of 1 <n << N is maintained for all N elements, and each chunk file is encoded data of about S seconds on average. To execute the acquisition processing of each chunk file at a processing speed that does not cause buffer underrun is to request content from the storage device 3 within S seconds and adjust so that the processing until acquisition is completed. . When the first to n-th chunk files are stored in the distribution apparatus 1, the distribution apparatus 1 holds data of video length (total encoding time) of n × S seconds. Therefore, the cache lock unit 13 sets the time for holding the requested content information in the table to be shorter than n × S seconds. The time during which the content information is held in the table is the lock time for the request for the content. While the content information is held in the table, the back-end side transmission / reception unit 16 obtains the chunk file of the content from the storage device 3 even if the distribution request for the content is received from another client terminal 5 Do not do. In view of reliability and safety, the lock time may be (n−1) × S seconds or less as an actual operation.

エッジ側送受信部12は、マニフェストファイルを配信した後、クライアント端末5からチャンクファイルの配信要求を受信し、マニフェストファイルの配信要求の受信時に既に保持していたチャンクファイルを格納部11−2から読み出して配信している。その処理のバックエンドで、ロック時間の経過後、バックエンド側送受信部16は、テーブルに登録されているコンテンツに不足しているチャンクファイルの取得要求をストレージ装置3に送信する。バックエンド側送受信部16は、要求したチャンクファイルをストレージ装置3から取得して格納部11−2にキャッシュする。エッジ側送受信部12は、マニフェストファイルの配信要求の受信時に既に保持していたチャンクファイルを全て配信した後、さらに、クライアント端末5からチャンクファイルの配信要求を受信する。エッジ側送受信部12は、マニフェストファイルの配信要求を受信した後にキャッシュしたチャンクファイルを格納部11−2から読み出してクライアント端末5に送信する。   The edge-side transmitting / receiving unit 12 receives the chunk file distribution request from the client terminal 5 after distributing the manifest file, and reads the chunk file already held when the manifest file distribution request is received from the storage unit 11-2. It is delivered. In the back end of the processing, after the lock time has elapsed, the back end side transmission / reception unit 16 transmits an acquisition request for the chunk file lacking in the content registered in the table to the storage device 3. The back-end side transmission / reception unit 16 acquires the requested chunk file from the storage device 3 and caches it in the storage unit 11-2. The edge transmitting / receiving unit 12 distributes all the chunk files already held at the time of receiving the manifest file distribution request, and then receives the chunk file distribution request from the client terminal 5. After receiving the manifest file distribution request, the edge-side transmitting / receiving unit 12 reads the cached chunk file from the storage unit 11-2 and transmits it to the client terminal 5.

ロック時間(n×S秒未満)を時間的なプールと捉えると、このロック時間の間に異なるクライアント端末5から受信した同一コンテンツの配信要求数Rの全ては、バックエンド側のストレージ装置3に対しての1本の配信要求に集約する事ができる。つまり、配信装置1は、テーブルに登録されているコンテンツに対して複数のクライアント端末5からマニフェストファイルの配信要求を受信しても、不足しているチャンクファイルをストレージ装置3に要求する一連の処理を複数回実行することはない。内部処理において比較的前段部であるキャッシュロック部13において早期に要求を集約しておくことは、配信装置1における全体的な処理負荷を抑制する効果も期待できる。   If the lock time (less than n × S seconds) is regarded as a temporal pool, all of the same content distribution request numbers R received from different client terminals 5 during this lock time are stored in the storage device 3 on the back end side. In contrast, it can be aggregated into one distribution request. That is, even if the distribution apparatus 1 receives a manifest file distribution request from a plurality of client terminals 5 for the content registered in the table, a series of processes for requesting the storage apparatus 3 for an insufficient chunk file. Is not executed multiple times. Aggregating requests at an early stage in the cache lock unit 13 which is a relatively preceding stage in the internal processing can also be expected to have an effect of suppressing the overall processing load in the distribution apparatus 1.

その一方で、逆の考え方にも通じる。それは「要求の予測(事前キャッシュ)」になるということである。本実施形態で対象としているHTTPによるVOD映像配信では、クライアント端末5は、まず一番初めにマニフェストファイルを要求し、そのマニフェストファイルに列挙されたチャンクファイル(URI)を順次要求する。一般的に考えて「マニフェストファイルの要求」=「映像視聴の要求」に繋がる。引いては、コンテンツの最後のN番目のチャンクファイルまで要求されることが容易に想像できる。この事から、クライアント端末5から、格納部11−2に存在しているマニフェストファイルが要求された時点で、近い未来(n+1)番目から最後のN番目までのチャンクファイルも要求される事も当然ながら容易に想像できる。   On the other hand, it leads to the opposite way of thinking. That is “request prediction (pre-cache)”. In the HTTP VOD video distribution targeted in this embodiment, the client terminal 5 first requests a manifest file, and sequentially requests chunk files (URIs) listed in the manifest file. In general, this leads to “manifest file request” = “video viewing request”. It can be easily imagined that the last Nth chunk file of the content is required. From this, when the manifest file existing in the storage unit 11-2 is requested from the client terminal 5, the chunk files from the near future (n + 1) th to the last Nth are also naturally requested. I can imagine it easily.

そこで、本実施形態の可変形態としては以下が考えられる。つまり、バックエンド側送受信部16は、クライアント端末5から格納部11−2に存在しているn番目のマニフェストファイルが要求された時点で、その時点ではまだ保持していない(n+1)番目以降のチャンクファイルの要求をバックエンド側に対して順次実行する。   Therefore, the following may be considered as variable forms of the present embodiment. That is, when the n-th manifest file existing in the storage unit 11-2 is requested by the client terminal 5 from the client terminal 5, the back-end side transmission / reception unit 16 does not yet hold the (n + 1) th and subsequent files. Sequentially execute chunk file requests to the backend side.

以上の処理1から処理4が、配信装置1におけるコンテンツ配信処理である。
さらに、配信装置1は、キャッシュデータの保存処理を行う(処理5)。
コンテンツ蓄積トリガー部17は、所定のトリガーが発生した場合に、格納部11−2に保持していたコンテンツのキャッシュデータを格納部11−1へ移行して、蓄積・保存する。例えば、トリガーは、コンテンツの配信要求数、キャッシュ数、経過時間のうち1以上の情報を用いて検出される。コンテンツの配信要求数、及び経過時間は、キャッシュロック部13から通知される。また、キャッシュ数は、これからストレージ装置3から取得してキャッシュすべき、あるいは、ストレージ装置3から取得して現在キャッシュしているチャンクファイルの数であり、チャンクファイル数認識部15から通知される。
Processing 1 to processing 4 described above is content distribution processing in the distribution device 1.
Furthermore, the distribution apparatus 1 performs a cache data storage process (process 5).
When a predetermined trigger occurs, the content accumulation trigger unit 17 moves the content cache data held in the storage unit 11-2 to the storage unit 11-1, and stores and saves it. For example, the trigger is detected using one or more pieces of information among the number of content distribution requests, the number of caches, and the elapsed time. The number of content distribution requests and the elapsed time are notified from the cache lock unit 13. The number of caches is the number of chunk files to be acquired from the storage apparatus 3 and cached, or is acquired from the storage apparatus 3 and currently cached, and is notified from the chunk file number recognition unit 15.

具体的な例として、コンテンツ蓄積トリガー部17は、コンテンツが最初にリクエストされてから現在までの経過時間におけるリクエスト数から単位時間当たりのリクエスト数を算出し、算出結果が所定以上である場合を、そのコンテンツを移行するトリガーとする。また、コンテンツ蓄積トリガー部17は、最後にコンテンツがリクエストされてから現在までの経過時間が所定以上である場合を、そのコンテンツを移行するトリガーとする。また、あるいは、コンテンツ蓄積トリガー部17は、これからキャッシュすべきキャッシュ数、または、現在キャッシュしているキャッシュ数が所定以上である場合、現在キャッシュしているコンテンツを移行するトリガーとする。
コンテンツ蓄積トリガー部17は、格納部11−2から格納部11−1へのコンテンツのキャッシュデータの移行を完了すると、移行が完了したコンテンツのキャッシュデータを格納部11−2から破棄、あるいは、削除する。
As a specific example, the content accumulation trigger unit 17 calculates the number of requests per unit time from the number of requests in the elapsed time from when the content is first requested to the present, and when the calculation result is equal to or greater than a predetermined value, Trigger the content migration. In addition, the content accumulation trigger unit 17 sets a trigger for shifting the content when the elapsed time from the last request for the content to the present is a predetermined time or more. Alternatively, if the number of caches to be cached or the number of caches currently cached is greater than or equal to a predetermined value, the content accumulation trigger unit 17 is set as a trigger for shifting the currently cached contents.
When the migration of content cache data from the storage unit 11-2 to the storage unit 11-1 is completed, the content accumulation trigger unit 17 discards or deletes the cache data of the content that has been migrated from the storage unit 11-2. To do.

なお、コンテンツ蓄積トリガー部17は、格納部11−2にコンテンツのマニフェストファイルと先頭から所定数分のチャンクファイルをそのまま格納しておき、格納部11−1に残りのチャンクファイルを移行して格納するようにしてもよい。   The content accumulation trigger unit 17 stores the content manifest file and a predetermined number of chunk files from the beginning in the storage unit 11-2, and migrates and stores the remaining chunk files in the storage unit 11-1. You may make it do.

本実施形態によれば、配信装置1は、クライアント端末5からコンテンツの配信要求を受信すると、保持しているマニュフェストファイル及びチャンクファイルの配信処理を実行する。配信装置1は、この配信処理を実行しつつ、バックエンド側では不足しているチャンクファイルをストレージ装置3から取得し、キャッシュする。よって、配信装置1は、効率的に配信対象のコンテンツのチャンクファイルを取得してキャッシングし、クライアント端末5に配信することができる。また、配信装置1は、複数のクライアント端末5から受信した同一コンテンツの配信要求を、ストレージ装置3に対する1本の配信要求に集約する事ができる。   According to the present embodiment, when the distribution apparatus 1 receives a content distribution request from the client terminal 5, the distribution apparatus 1 executes distribution processing of the held manifest file and chunk file. The distribution apparatus 1 acquires the chunk file that is insufficient on the back end side from the storage apparatus 3 and caches it while executing this distribution process. Therefore, the distribution apparatus 1 can efficiently acquire and cache the chunk file of the content to be distributed and distribute it to the client terminal 5. Further, the distribution device 1 can aggregate the distribution requests for the same content received from the plurality of client terminals 5 into one distribution request for the storage device 3.

(第2の実施形態)
本実施形態では、配信装置が配信するコンテンツに広告を挿入する。本実施形態のコンテンツ配信は、VODを主とする。本実施形態は、ライブ配信とは異なり、例えばハッシュ値を元にチャンクファイルの一意同一性を求めるような事が無く、その構成を当該装置で無視(内部的に加工処理)してもよいマニフェストファイルに適用される。本実施形態のコンテンツ配信システムは、図1に示す第1の実施形態のコンテンツ配信システムの配信装置1に代えて、図6に示す配信装置1aを備えて構成される。
(Second Embodiment)
In this embodiment, an advertisement is inserted into the content distributed by the distribution device. The content distribution of this embodiment is mainly VOD. Unlike the live distribution, this embodiment does not require, for example, the uniqueness of the chunk file based on the hash value, and the structure may be ignored (internally processed) by the device. Applied to the file. The content distribution system of the present embodiment is configured to include a distribution device 1a shown in FIG. 6 instead of the distribution device 1 of the content distribution system of the first embodiment shown in FIG.

図6は、本実施形態の配信装置1aの構成を示す図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。同図において、図3に示す第1の実施形態による配信装置1と同一の部分には同一の符号を付し、その説明を省略する。同図に示すように、配信装置1aは、格納部11−1、格納部11−2、エッジ側送受信部12、キャッシュロック部13、コンテンツ存在認識部14、チャンクファイル数認識部15、バックエンド側送受信部16、コンテンツ蓄積トリガー部17、及び一時書換部18を備えて構成される。   FIG. 6 is a diagram illustrating the configuration of the distribution apparatus 1a according to the present embodiment, in which only functional blocks related to the present embodiment are extracted and illustrated. In this figure, the same parts as those in the distribution apparatus 1 according to the first embodiment shown in FIG. As shown in the figure, the distribution apparatus 1a includes a storage unit 11-1, a storage unit 11-2, an edge side transmission / reception unit 12, a cache lock unit 13, a content presence recognition unit 14, a chunk file number recognition unit 15, a back end. A side transmission / reception unit 16, a content accumulation trigger unit 17, and a temporary rewriting unit 18 are provided.

配信装置1aと配信装置1とは、格納部11−2内に格納しているデータが異なっている。配信装置1aの格納部11−2には、本編のコンテンツ(本実施形態では以降、「本編コンテンツ」と称する。)を構成する一部のファイルと、本編コンテンツとは別の広告コンテンツが格納されている。配信装置1aの格納部11−2が格納している本編コンテンツは、マニフェストファイルのみの構成であり、チャンクファイルを保持していないという点で第1の実施形態と異なる。広告コンテンツは、チャンクファイルのみの構成であり、マニフェストファイルを保持していないという点で第1の実施形態とは異なる新たな形態である。
一時書換部18は、格納部11−2に格納されているマニフェストファイルに対し、チャンクファイルリストの先頭に、広告コンテンツのチャンクファイルの情報を書き込む。
The distribution device 1a and the distribution device 1 are different in data stored in the storage unit 11-2. The storage unit 11-2 of the distribution device 1a stores a part of files constituting the main content (hereinafter referred to as “main content” in the present embodiment) and advertising content different from the main content. ing. The main content stored in the storage unit 11-2 of the distribution device 1a is configured only with a manifest file, and is different from the first embodiment in that no chunk file is held. The advertisement content is a new form different from the first embodiment in that it has only a chunk file and does not hold a manifest file.
The temporary rewriting unit 18 writes the chunk file information of the advertisement content at the head of the chunk file list with respect to the manifest file stored in the storage unit 11-2.

本実施形態の配信装置1aは、本編コンテンツを構成するチャンクファイルをバックエンド側から取得するまでの時間稼ぎとして、広告コンテンツを配信する。第1の実施形態の場合には少なからず本編コンテンツの一部のチャンクファイルが必要になり、そのコンテンツ種類が増えれば増えるほど配信装置1に格納しておく領域の増加が必要となる。本実施形態では、格納部11−2に記憶するファイルは、複数種類のマニフェストファイルと、ひとつの広告コンテンツを構成するチャンクファイルのみで済む。よって、副次的な効果として、配信装置1aの格納領域の増加を抑制しつつ、広告配信によるスポンサー・収入源確保やエンドユーザ向けへの促販につながることが考えられる。なお、本実施形態は、第1の実施形態にように、格納部11−2に先頭から所定数のチャンクファイルを格納している場合にも適用可能である。   The distribution apparatus 1a according to the present embodiment distributes the advertising content as earning time until the chunk file constituting the main content is acquired from the back end side. In the case of the first embodiment, not only a few chunk files of the main content are required, but as the content types increase, the area to be stored in the distribution apparatus 1 needs to be increased. In the present embodiment, the files stored in the storage unit 11-2 need only be a plurality of types of manifest files and a chunk file that constitutes one advertisement content. Therefore, as a secondary effect, it is conceivable that, while suppressing an increase in the storage area of the distribution device 1a, it is possible to secure sponsors / revenue sources and promote sales to end users through advertisement distribution. Note that this embodiment can also be applied to a case where a predetermined number of chunk files are stored in the storage unit 11-2 from the top as in the first embodiment.

図7は、本編コンテンツCのマニフェストファイルを示す図である。同図に示すように、マニフェストファイルには、4つのチャンクファイルのURIが記述されている。
図8は、広告コンテンツを構成するチャンクファイル群を示す図である。同図に示すように、広告コンテンツは、「commercial-chunk-1.ts」、「commercial-chunk-2.ts」の2つのチャンクファイルである。
一時書換部18は、エッジ側送受信部12がクライアント端末5から本編コンテンツCのマニフェストファイル要求を受信したことをトリガーとして、格納部11−2から本編コンテンツCのマニフェストファイルを取り込む。一時書換部18は、本編コンテンツCのマニフェストファイルの取り込み時に、広告コンテンツを構成するチャンクファイル群の情報を合わせて取り込む。
FIG. 7 is a diagram showing a manifest file of the main content C. As shown in the figure, the URI of four chunk files is described in the manifest file.
FIG. 8 is a diagram showing a chunk file group constituting the advertising content. As shown in the figure, the advertising content is two chunk files of “commercial-chunk-1.ts” and “commercial-chunk-2.ts”.
The temporary rewriting unit 18 takes in the manifest file of the main content C from the storage unit 11-2, triggered by the fact that the edge side transmission / reception unit 12 has received the manifest file request of the main content C from the client terminal 5. The temporary rewriting unit 18 takes in the information of the chunk file group constituting the advertising content together when the manifest file of the main content C is taken in.

図9は、書き換え後のマニフェストファイルを示す図である。同図に示すように、一時書換部18は、本編コンテンツCのマニフェストファイルに、広告コンテンツを構成するチャンクファイル群をマージする。具体的には、一時書換部18は、本編コンテンツCのマニフェストファイルの先頭のチャンクファイルの情報の前に、広告コンテンツを構成する2つのチャンクファイルのURIを挿入する。エッジ側送受信部12は、一時書換部18が書き換えたマニフェストファイルを、クライアント端末5への応答として送信する。   FIG. 9 is a diagram showing the manifest file after rewriting. As shown in the figure, the temporary rewriting unit 18 merges the chunk file group constituting the advertising content into the manifest file of the main content C. Specifically, the temporary rewriting unit 18 inserts the URIs of the two chunk files constituting the advertising content before the information of the first chunk file of the manifest file of the main content C. The edge-side transmitting / receiving unit 12 transmits the manifest file rewritten by the temporary rewriting unit 18 as a response to the client terminal 5.

書き換えが行われた本編コンテンツCのマニフェストファイルを受信したクライアント端末5は、チャンクファイルリストを解析する。クライアント端末5は、配信装置1aに対して、リストの先頭の「http://hoge.com/contents/commercial-chunk-1.ts」のチャンクファイルから順に配信を要求する。その間に、配信装置1aのチャンクファイル数認識部15は、その時点では自装置にまだ保持していないチャンクファイル(chunk-1.tsからchunk-4.ts)の要求及び取得をバックエンド側のストレージ装置3に対して順次実行する。本実施形態では、配信装置1aは、「commercial-chunk-1.ts」や「commercial-chunk-2.ts」の配信を完了する前までに、「chunk-1.ts」以降の本編を構成するチャンクファイルの取得を完了しておけばよい。よって、「commercial-chunk-1.ts」や「commercial-chunk-2.ts」の分だけ、配信装置1aに時間的な猶予が与えられる。   The client terminal 5 that has received the rewritten main content C manifest file analyzes the chunk file list. The client terminal 5 requests the distribution apparatus 1a for distribution in order from the chunk file of “http://hoge.com/contents/commercial-chunk-1.ts” at the top of the list. In the meantime, the chunk file number recognition unit 15 of the distribution device 1a makes a request and acquisition of a chunk file (chunk-1.ts to chunk-4.ts) not yet held in the own device at that time on the back end side. The storage device 3 is sequentially executed. In this embodiment, the distribution apparatus 1a configures the main part after “chunk-1.ts” before the distribution of “commercial-chunk-1.ts” and “commercial-chunk-2.ts” is completed. You only need to complete the acquisition of the chunk file to be processed. Therefore, the distribution apparatus 1a is given a grace period for “commercial-chunk-1.ts” and “commercial-chunk-2.ts”.

なお、本実施形態では、一時書換部18は、マニフェストファイルの配信時に広告コンテンツを構成するチャンクファイル群を挿入しているが、この処理を予め行ってもよい。つまり、一時書換部18は、格納部11−2に格納されているマニフェストファイルに、広告コンテンツを構成するチャンクファイル群を予め挿入しておく。
また、本実施形態のバリエーションや延長として、ランダムに選択した広告を配信してもよい。例えば、格納部11−2に「広告映像コンテンツA」、「広告映像コンテンツB」、「広告映像コンテンツC」、…のように複数種類の広告コンテンツを格納しておく。一時書換部18は、「広告映像コンテンツA」、「広告映像コンテンツB」、「広告映像コンテンツC」、…を選択し、選択した広告コンテンツのチャンクファイル群をマニフェストファイルに挿入する。なお、広告コンテンツの選択は、無作為(ランダム)であってもよく、予め収集しておいた配信要求元のエンドユーザの属性や嗜好の情報に応じて選択してもよい。
In the present embodiment, the temporary rewriting unit 18 inserts a chunk file group constituting the advertising content when the manifest file is distributed, but this processing may be performed in advance. That is, the temporary rewriting unit 18 inserts in advance a chunk file group that constitutes the advertisement content in the manifest file stored in the storage unit 11-2.
Further, as a variation or extension of this embodiment, a randomly selected advertisement may be distributed. For example, a plurality of types of advertising content such as “advertising video content A”, “advertising video content B”, “advertising video content C”,... Are stored in the storage unit 11-2. The temporary rewriting unit 18 selects “advertisement video content A”, “advertisement video content B”, “advertisement video content C”,..., And inserts a chunk file group of the selected advertisement content into the manifest file. The selection of the advertisement content may be random (random), or may be selected according to the attribute and preference information of the distribution request source end user collected in advance.

また、第1の実施形態と第2の実施形態を組み合わせてもよい。例えば、配信要求の頻度が少ないコンテンツについては、格納部11−2にマニフェストファイルのみを格納し、チャンクファイルを格納しないようにする。   Further, the first embodiment and the second embodiment may be combined. For example, for content with a low frequency of distribution requests, only the manifest file is stored in the storage unit 11-2, and the chunk file is not stored.

第1の実施形態において配信装置1は、初期状態として、格納部11−2に全てのコンテンツについてマニフェストファイルと先頭から数個分のチャンクファイルのデータのみを格納してもよい。本実施形態は、配信装置1aの格納部11−2にそのようなデータを記憶しておくための容量が不足している場合に適用できる。   In the first embodiment, as an initial state, the distribution apparatus 1 may store only a manifest file and data of several chunk files from the beginning for all contents in the storage unit 11-2. This embodiment can be applied to a case where the capacity for storing such data in the storage unit 11-2 of the distribution apparatus 1a is insufficient.

(第3の実施形態)
本実施形態は、上述した第1及び第2の実施形態の拡張形態である。本実施形態では、配信装置1、1aは、事前にストレージ装置3宛てのIPパケットをフレーム化しておく。本実施形態の配信装置1、1aのバックエンド側送受信部16は、例えば、TOE(TCP/IP Offload Engine)を備える。
第1及び第2の実施形態によれば、配信装置1、1aは、コンテンツの視聴要求(マニフェストファイルの配信要求)をクライアント端末5から受信すると、要求されたコンテンツが格納部11−2に格納されているか否かを判断する。配信装置1、1aは、要求されたコンテンツが格納部11−2に格納されていると判断した場合、バックエンド側のストレージ装置3に対して、キャッシュすべきチャンクファイルの取得処理を順次実行する。このとき、配信装置1、1aのバックエンド側送受信部16は、バックエンド側のストレージ装置3へ接続するための情報をセットしたIPパケットフレームを、事前に準備しておくことが十分可能である。ストレージ装置3へ接続するための情報は、具体的にはdestination IP addressやdestination port numberである。
これにより、コンテンツ存在認識部14の判定結果がストレージ装置3にアクセスするトリガーとなった場合、バックエンド側送受信部16は、いち早く且つ、シームレスにストレージ装置3にコンテンツの取得要求を送信することが可能となる。
(Third embodiment)
This embodiment is an expanded form of the first and second embodiments described above. In this embodiment, the distribution apparatuses 1 and 1a frame IP packets addressed to the storage apparatus 3 in advance. The back-end side transmission / reception unit 16 of the distribution apparatuses 1 and 1a of the present embodiment includes, for example, a TOE (TCP / IP Offload Engine).
According to the first and second embodiments, when the distribution device 1 or 1a receives a content viewing request (manifest file distribution request) from the client terminal 5, the requested content is stored in the storage unit 11-2. It is judged whether it is done. When the distribution apparatuses 1 and 1a determine that the requested content is stored in the storage unit 11-2, the distribution apparatuses 1 and 1a sequentially execute processing for acquiring a chunk file to be cached with respect to the storage apparatus 3 on the back end side. . At this time, the back-end side transmission / reception unit 16 of the distribution devices 1 and 1a can sufficiently prepare an IP packet frame in which information for connecting to the storage device 3 on the back-end side is set in advance. . The information for connecting to the storage apparatus 3 is specifically a destination IP address and a destination port number.
Thereby, when the determination result of the content presence recognition unit 14 becomes a trigger for accessing the storage apparatus 3, the back-end side transmission / reception unit 16 can transmit a content acquisition request to the storage apparatus 3 quickly and seamlessly. It becomes possible.

(第4の実施形態)
本実施形態は、上述した第1から第3の実施形態の拡張形態である。本実施形態において配信装置1、1aは、マルチビットレートコンテンツ対策を実行する。
上述した実施形態において対象としているHTTPによる映像コンテンツの配信方式・手順では、先に記したようにパブリック且つスタンダードな規格が定められているわけではないが、デファクトとして浸透しつつある。上述した実施形態では、マニフェストファイルに一連のチャンクファイルのリストが記載されている事を前提としているが、これをマルチビットレートコンテンツに適応する事が考えられる。
(Fourth embodiment)
This embodiment is an expanded form of the first to third embodiments described above. In the present embodiment, the distribution apparatuses 1 and 1a execute multi-bit rate content countermeasures.
In the video content delivery method / procedure of HTTP targeted in the above-described embodiment, public and standard standards are not defined as described above, but are spreading as a de facto. In the above-described embodiment, it is assumed that a list of chunk files is described in the manifest file. However, it is possible to apply this to multi-bit rate content.

つまり、エンドユーザは、コンテンツ(プログラムの内容)に興味を持って選択し、配信を要求している。そのため、いずれ同一コンテンツで高精細なビットレートのものや、逆に処理能力が低いポータブル端末において粗い画質にて視聴するための低ビットレートのものが視聴されることも予測される。それらのビットレートのチャンクファイルも、配信装置1、1aが事前にチャンクファイルをキャッシュしておくためのトリガーとする事が出来る。以下では、第1の実施形態の配信装置1を例に、上記実施形態との差分を説明する。   That is, the end user makes an interest in the content (program content) and requests distribution. For this reason, it is expected that the same content with a high-definition bit rate or a low bit rate for viewing with coarse image quality on a portable terminal with low processing capability will be viewed. These bit rate chunk files can also be used as a trigger for the distribution apparatuses 1 and 1a to cache the chunk file in advance. Below, the difference with the said embodiment is demonstrated for the example of the delivery apparatus 1 of 1st Embodiment.

例えば、内容が同一であり、ビットレートがB1、B2、B3と異なるコンテンツのマニフェストファイルが格納部11−2に配置されていたとする。
図10、図11、図12はそれぞれ、ビットレートがB1、B2、B3の同一のコンテンツのマニフェストファイルを示す図である。
図10が示すビットレートB1用のマニフェストファイルB1-manifestのチャンクファイルリストには、チャンクファイル「B1-chunk-1.ts」、「B1-chunk-2.ts」、「B1-chunk-3.ts」、…が記述されている。図11が示すビットレートB2用のマニフェストファイルB2-manifestのチャンクファイルリストには、チャンクファイル「B2-chunk-1.ts」、「B2-chunk-2.ts」、「B2-chunk-3.ts」、…が記述されている。図12が示すビットレートB3用のマニフェストファイルB3-manifestのチャンクファイルリストには、チャンクファイル「B3-chunk-1.ts」、「B3-chunk-2.ts」、「B3-chunk-3.ts」、…が記述されている。さらに、格納部11−2には、マニフェストファイルB1-manifest、B2-manifest、及びB3-manifestが、異なるビットレートの同一コンテンツのマニフェストファイルであることを示す情報が格納されている。
また、格納部11−2には、チャンクファイル「B1-chunk-1.ts」、「B2-chunk-1.ts」、「B3-chunk-1.ts」が格納されているとする。
For example, it is assumed that a manifest file having the same content and a different bit rate from B1, B2, and B3 is arranged in the storage unit 11-2.
10, FIG. 11, and FIG. 12 are diagrams showing manifest files of the same content with bit rates B1, B2, and B3, respectively.
The chunk file list of the manifest file B1-manifest for the bit rate B1 shown in FIG. 10 includes the chunk files “B1-chunk-1.ts”, “B1-chunk-2.ts”, “B1-chunk-3. "ts", ... are described. The chunk file list of the manifest file B2-manifest for the bit rate B2 shown in FIG. 11 includes the chunk files “B2-chunk-1.ts”, “B2-chunk-2.ts”, “B2-chunk-3. "ts", ... are described. The chunk file list of the manifest file B3-manifest for the bit rate B3 shown in FIG. 12 includes the chunk files “B3-chunk-1.ts”, “B3-chunk-2.ts”, “B3-chunk-3. "ts", ... are described. Further, the storage unit 11-2 stores information indicating that the manifest files B1-manifest, B2-manifest, and B3-manifest are manifest files of the same content with different bit rates.
Further, it is assumed that the chunk files “B1-chunk-1.ts”, “B2-chunk-1.ts”, and “B3-chunk-1.ts” are stored in the storage unit 11-2.

クライアント端末5が、ビットレートB2のマニフェストファイルB2-manifestを要求する。チャンクファイル数認識部15は、マニフェストファイルB2-manifestに記述されているチャンクファイルのリストのうち、チャンクファイル「B2-chunk-2.ts」、「B2-chunk-3.ts」が不足していることを認識する。さらに、チャンクファイル数認識部15は、格納部11−2に格納されている情報から、マニフェストファイルB1-manifest、B3-manifestが、マニフェストファイルB2-manifestと異なるビットレートの同一コンテンツのマニフェストファイルであると認識する。チャンクファイル数認識部15は、マニフェストファイルB1-manifestに記述されているチャンクファイルのリストのうち、チャンクファイル「B1-chunk-2.ts」、「B1-chunk-3.ts」が不足していることを認識する。また、チャンクファイル数認識部15は、マニフェストファイルB3-manifestに記述されているチャンクファイルのリストのうち、チャンクファイル「B3-chunk-2.ts」、「B3-chunk-3.ts」が不足していることを認識する。   The client terminal 5 requests a manifest file B2-manifest with a bit rate B2. The chunk file number recognition unit 15 lacks the chunk files “B2-chunk-2.ts” and “B2-chunk-3.ts” from the list of chunk files described in the manifest file B2-manifest. Recognize that Further, the chunk file number recognition unit 15 determines that the manifest files B1-manifest and B3-manifest are manifest files having the same content at different bit rates from the manifest file B2-manifest, from the information stored in the storage unit 11-2. Recognize that there is. The chunk file number recognition unit 15 is missing the chunk files “B1-chunk-2.ts” and “B1-chunk-3.ts” from the list of chunk files described in the manifest file B1-manifest. Recognize that Further, the chunk file number recognition unit 15 lacks the chunk files “B3-chunk-2.ts” and “B3-chunk-3.ts” in the list of chunk files described in the manifest file B3-manifest. Recognize that

バックエンド側送受信部16は、チャンクファイル数認識部15が不足していると認識したチャンクファイルをキャッシュするために、バックエンド側のストレージ装置3に対して、これらのチャンクファイルの取得処理を順次実行する。具体的には、バックエンド側送受信部16は、ビットレートB2用のチャンクファイル「B2-chunk-2.ts」、「B2-chunk-3.ts」をキャッシュするために、バックエンド側のストレージ装置3に対して、これらのチャンクファイルの取得処理を順次実行する。これに併せて、バックエンド側送受信部16は、ビットレートB1用のマニフェストファイルB1-manifestやビットレートB3用のマニフェストファイルB3-manifestに記述されている不足のチャンクファイルの取得処理を行う。つまり、バックエンド側送受信部16は、ビットレートB1用のチャンクファイル「B1-chunk-2.ts」、「B1-chunk-3.ts」、及び、ビットレートB3用のチャンクファイル「B3-chunk-2.ts」、「B3-chunk-3.ts」の取得処理をストレージ装置3に対して行う。   The back-end side transmission / reception unit 16 sequentially performs the chunk file acquisition processing on the back-end side storage apparatus 3 in order to cache the chunk files that the chunk file number recognition unit 15 recognizes as insufficient. Run. Specifically, the back-end side transmission / reception unit 16 stores the storage on the back-end side in order to cache the chunk files “B2-chunk-2.ts” and “B2-chunk-3.ts” for the bit rate B2. These chunk file acquisition processes are sequentially executed on the device 3. At the same time, the back-end side transmission / reception unit 16 performs acquisition processing of the missing chunk file described in the manifest file B1-manifest for the bit rate B1 and the manifest file B3-manifest for the bit rate B3. That is, the back-end side transmission / reception unit 16 uses the chunk files “B1-chunk-2.ts” and “B1-chunk-3.ts” for the bit rate B1, and the chunk file “B3-chunk for the bit rate B3. -2.ts "and" B3-chunk-3.ts "are acquired for the storage apparatus 3.

以上説明した実施形態の配信装置1、1aの一部または全ての機能部を、ソフトウェア機能部により実現してもよく、専用のハードウェアにより実現してもよい。配信装置1、1aの一部または全ての機能部をソフトウェア機能部により実現する場合、その機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。   Part or all of the functional units of the distribution apparatuses 1 and 1a according to the embodiments described above may be realized by software functional units or may be realized by dedicated hardware. When a part or all of the functional units of the distribution device 1, 1a are realized by a software functional unit, a program for realizing the function is recorded on a computer-readable recording medium, and the program recorded on the recording medium May be realized by causing a computer system to read and execute the program. Here, the “computer system” includes an OS and hardware such as peripheral devices. The “computer-readable recording medium” refers to a storage device such as a portable medium such as a magneto-optical disk, ROM, or CD-ROM, or a hard disk built in a computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory inside a computer system serving as a server or a client in that case may be included and a program held for a certain period of time. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.

以上説明した少なくともひとつの実施形態によれば、格納部11−2、及びバックエンド側送受信部16を持つことにより、バックエンド側から効率的に配信対象のコンテンツのチャンクファイルをストレージ装置3から読み出してキャッシングし、クライアント端末5に配信することができる。
また、以上説明した少なくともひとつの実施形態によれば、キャッシュロック部13を持つことにより、複数のクライアント端末5から受信した同一コンテンツの配信要求を、ストレージ装置3に対する1本の配信要求に集約する事ができる。
According to at least one embodiment described above, the storage unit 11-2 and the back-end side transmission / reception unit 16 are provided so that the chunk file of the content to be distributed can be efficiently read from the storage device 3 from the back-end side. And can be distributed to the client terminal 5.
Further, according to at least one embodiment described above, by having the cache lock unit 13, the distribution request for the same content received from the plurality of client terminals 5 is consolidated into one distribution request for the storage device 3. I can do things.

本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。   Although several embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and gist of the invention, and are also included in the invention described in the claims and the equivalents thereof.

1…配信装置、1a…配信装置、3…ストレージ装置、5…クライアント端末、7…ロードバランサ、8…IPネットワーク、9…IPネットワーク、11−1…格納部(コンテンツ蓄積部)、11−2…格納部、12…エッジ側送受信部(配信部)、13…キャッシュロック部、14…コンテンツ存在認識部、15…チャンクファイル数認識部、16…バックエンド側送受信部(ファイル取得部)、17…コンテンツ蓄積トリガー部、18…一時書換部 DESCRIPTION OF SYMBOLS 1 ... Distribution apparatus, 1a ... Distribution apparatus, 3 ... Storage apparatus, 5 ... Client terminal, 7 ... Load balancer, 8 ... IP network, 9 ... IP network, 11-1 ... Storage part (content storage part), 11-2 ... Storage unit, 12 ... Edge side transmission / reception unit (distribution unit), 13 ... Cache lock unit, 14 ... Content existence recognition unit, 15 ... Chunk file number recognition unit, 16 ... Back end side transmission / reception unit (file acquisition unit), 17 ... content accumulation trigger part, 18 ... temporary rewriting part

Claims (6)

コンテンツのファイルを分割したチャンクファイルのリストが記述されたマニフェストファイルと前記コンテンツの先頭から一部のチャンクファイルとを格納する格納部と、
クライアント端末からコンテンツの配信要求を受信し、受信した前記配信要求により要求された前記コンテンツのマニフェストファイルを前記格納部から読み出して配信する処理と、前記コンテンツのチャンクファイルの配信要求を前記クライアント端末から受信し、受信した前記配信要求により要求された前記チャンクファイルを前記格納部から読み出して配信する処理とを行う配信部と、
要求された前記コンテンツのチャンクファイルのうち前記格納部に格納されていないチャンクファイルを、前記クライアント端末から前記コンテンツのチャンクファイルの配信要求を受信する前にストレージ装置から取得して前記格納部に格納するファイル取得部と、
を備える配信装置。
A storage unit for storing a manifest file in which a list of chunk files obtained by dividing a content file and a part of the chunk file from the top of the content are stored;
Processing for receiving a content distribution request from a client terminal, reading out the content manifest file requested by the received distribution request from the storage unit, and distributing the content chunk file distribution request from the client terminal A delivery unit that receives and processes the chunk file requested by the received delivery request to be read from the storage unit and delivered;
Of the requested chunk file of the content, a chunk file that is not stored in the storage unit is acquired from the storage device and received in the storage unit before receiving a delivery request for the chunk file of the content from the client terminal. A file acquisition unit to perform,
A distribution device comprising:
前記配信要求により要求された前記コンテンツのマニフェストファイルとチャンクファイルとが前記格納部に格納されているかを認識するコンテンツ存在認識部をさらに備え、
前記ファイル取得部は、前記配信要求により要求された前記コンテンツのマニフェストファイルと一部のチャンクファイルとが前記格納部に格納されていることを前記コンテンツ存在認識部が認識した場合に、前記コンテンツのチャンクファイルのうち前記格納部に格納されていないチャンクファイルを、前記クライアント端末から前記コンテンツのチャンクファイルの配信要求を受信する前にストレージ装置から取得して前記格納部に格納する請求項1に記載の配信装置。
A content presence recognizing unit that recognizes whether the manifest file and the chunk file of the content requested by the distribution request are stored in the storage unit;
The file acquisition unit, when the content presence recognition unit recognizes that the manifest file and a part of the chunk file of the content requested by the distribution request are stored in the storage unit, The chunk file that is not stored in the storage unit among the chunk files is acquired from the storage device and received in the storage unit before receiving the delivery request for the chunk file of the content from the client terminal. Delivery device.
前記配信部が前記クライアント端末からコンテンツの配信要求を受信した場合に、前記格納部に格納されている前記コンテンツの一部のチャンクファイルのエンコーディング時間の合計よりも短い間、前記コンテンツのキャッシュをロックするキャッシュロック部をさらに備え、
前記ファイル取得部は、前記キャッシュロック部により前記コンテンツのキャッシュがロックされている間、前記ストレージ装置からの前記コンテンツのチャンクファイルの取得を行わない請求項1または請求項2に記載の配信装置。
When the distribution unit receives a content distribution request from the client terminal, the content cache is locked for a period shorter than the total encoding time of the chunk files of the content stored in the storage unit. A cache lock unit that
The distribution device according to claim 1, wherein the file acquisition unit does not acquire a chunk file of the content from the storage device while the cache of the content is locked by the cache lock unit.
前記格納部は、コンテンツのマニフェストファイルと、他のコンテンツのチャンクファイルとを格納し、
前記配信要求により要求された前記コンテンツのマニフェストファイルに記述されているチャンクファイルのリストに対して、前記格納部に記憶されている前記他のコンテンツのチャンクファイルの情報を前記リストの先頭に設定する一時書換部をさらに備え、
前記配信部は、前記一時書換部が書き換えた前記マニフェストファイルを前記クライアント端末へ配信する請求項1から請求項3のいずれか1項に記載の配信装置。
The storage unit stores a content manifest file and other content chunk files,
For the chunk file list described in the content manifest file requested by the distribution request, information on the chunk file of the other content stored in the storage unit is set at the head of the list. A temporary rewriting unit,
4. The distribution device according to claim 1, wherein the distribution unit distributes the manifest file rewritten by the temporary rewriting unit to the client terminal. 5.
コンテンツのマニフェストファイルと前記コンテンツの全てのチャンクファイルとを格納するコンテンツ蓄積部と、
前記コンテンツの配信要求数と前記コンテンツの配信要求からの経過時間と前記ストレージ装置から取得すべきあるいは取得済みのチャンクファイルの数とのうち1以上に基づく所定のトリガーの発生を検出した場合に、前記格納部に格納されている前記コンテンツのマニフェストファイル及び前記コンテンツのチャンクファイルを前記コンテンツ蓄積部に移行して格納するコンテンツ蓄積トリガー部とをさらに備える請求項1から請求項4のいずれか1項に記載の配信装置。
A content storage unit for storing a content manifest file and all the chunk files of the content;
When the occurrence of a predetermined trigger based on one or more of the number of content distribution requests, the elapsed time from the content distribution request, and the number of chunk files to be acquired or acquired from the storage device is detected, The content accumulation trigger part which transfers the manifest file of the said content stored in the said storage part, and the said chunk file of the content to the said content storage part, and further stores it is any one of Claims 1-4. The delivery device described in 1.
配信装置が実行する配信方法であって、
配信部が、クライアント端末からコンテンツの配信要求を受信し、コンテンツのファイルを分割したチャンクファイルのリストが記述されたマニフェストファイルと前記コンテンツの先頭から一部のチャンクファイルとを格納する格納部から、受信した前記配信要求により要求された前記コンテンツのマニフェストファイルを読み出して配信する処理と、前記コンテンツのチャンクファイルの配信要求を前記クライアント端末から受信し、受信した前記配信要求により要求された前記チャンクファイルを前記格納部から読み出して配信する処理とを行う配信過程と、
ファイル取得部が、要求された前記コンテンツのチャンクファイルのうち前記格納部に格納されていないチャンクファイルを、前記クライアント端末から前記コンテンツのチャンクファイルの配信要求を受信する前にストレージ装置から取得して前記格納部に格納するファイル取得過程と、
を有する配信方法。
A distribution method executed by a distribution device,
The distribution unit receives a content distribution request from the client terminal, and stores a manifest file in which a list of chunk files obtained by dividing the content file and a part of chunk files from the top of the content are stored. Processing for reading and distributing the manifest file of the content requested by the received distribution request, and receiving the distribution request for the chunk file of the content from the client terminal, and the chunk file requested by the received distribution request A process of performing a process of reading out from the storage unit and distributing,
The file acquisition unit acquires a chunk file that is not stored in the storage unit among the requested chunk files of the content from the storage device before receiving a delivery request for the content chunk file from the client terminal. A file acquisition process to be stored in the storage unit;
Having a delivery method.
JP2014046948A 2014-03-10 2014-03-10 Distribution device and distribution method Pending JP2015170323A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014046948A JP2015170323A (en) 2014-03-10 2014-03-10 Distribution device and distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014046948A JP2015170323A (en) 2014-03-10 2014-03-10 Distribution device and distribution method

Publications (1)

Publication Number Publication Date
JP2015170323A true JP2015170323A (en) 2015-09-28

Family

ID=54202947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014046948A Pending JP2015170323A (en) 2014-03-10 2014-03-10 Distribution device and distribution method

Country Status (1)

Country Link
JP (1) JP2015170323A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020024606A (en) * 2018-08-08 2020-02-13 Kddi株式会社 Transfer device for content distribution network
WO2020100821A1 (en) * 2018-11-12 2020-05-22 日本電信電話株式会社 System control device, system control method, and program
JP2020123776A (en) * 2019-01-29 2020-08-13 Kddi株式会社 Transfer device for content distribution network
JP2021175025A (en) * 2020-04-21 2021-11-01 株式会社東芝 Server device, information processing method, and program
JP2023033600A (en) * 2019-07-10 2023-03-10 日本電信電話株式会社 Content distribution system, unicast multicast conversion device, content distribution method, and content distribution program

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11212359B2 (en) 2018-08-08 2021-12-28 Kddi Corporation Transfer apparatus for content distribution network
CN112154425B (en) * 2018-08-08 2024-03-08 凯迪迪爱通信技术有限公司 Delivery device for a content delivery network
JP2020024606A (en) * 2018-08-08 2020-02-13 Kddi株式会社 Transfer device for content distribution network
JP7022030B2 (en) 2018-08-08 2022-02-17 Kddi株式会社 Content delivery network transporter
CN112154425A (en) * 2018-08-08 2020-12-29 凯迪迪爱通信技术有限公司 Transmission device for content distribution network
US11463745B2 (en) 2018-11-12 2022-10-04 Nippon Telegraph And Telephone Corporation System control apparatus, system control method and program
JP2020080460A (en) * 2018-11-12 2020-05-28 日本電信電話株式会社 System control apparatus, system control method, and program
WO2020100821A1 (en) * 2018-11-12 2020-05-22 日本電信電話株式会社 System control device, system control method, and program
JP2020123776A (en) * 2019-01-29 2020-08-13 Kddi株式会社 Transfer device for content distribution network
JP7028811B2 (en) 2019-01-29 2022-03-02 Kddi株式会社 Content delivery network transporter
JP2023033600A (en) * 2019-07-10 2023-03-10 日本電信電話株式会社 Content distribution system, unicast multicast conversion device, content distribution method, and content distribution program
JP7473025B2 (en) 2019-07-10 2024-04-23 日本電信電話株式会社 Content distribution system, unicast-multicast conversion device, content distribution method, and content distribution program
JP2021175025A (en) * 2020-04-21 2021-11-01 株式会社東芝 Server device, information processing method, and program
JP7419151B2 (en) 2020-04-21 2024-01-22 株式会社東芝 Server device, information processing method and program

Similar Documents

Publication Publication Date Title
JP6258432B2 (en) Controlled streaming for segmented content
US9532114B2 (en) Optimizing caches for media streaming
US20210067578A1 (en) Streaming media segments
TWI623226B (en) Directory limit based system and method for storing media segments
US10904168B2 (en) System and method for providing digital media content with a conversational messaging environment
CN104581374B (en) A kind of method, node and server for obtaining section file and generating sub- m3u8 files
WO2012071998A1 (en) Method and client for downloading media file in content distribution network
EP2493191B1 (en) Method, device and system for realizing hierarchically requesting content in http streaming system
US20140074961A1 (en) Efficiently Delivering Time-Shifted Media Content via Content Delivery Networks (CDNs)
CN103813185B (en) A kind of method that segment programs are quickly distributed, server and client
WO2015000936A1 (en) Streaming of segmented content
WO2019128800A1 (en) Content service implementation method and device, and content delivery network node
KR20040098119A (en) Http-based video streaming apparatus and method for a mobile communication system
US9356985B2 (en) Streaming video to cellular phones
JP2015170323A (en) Distribution device and distribution method
CN107124668B (en) Streaming transmission device and method, streaming transmission service system, and recording medium
WO2015192683A1 (en) Content distribution method, device and system based on adaptive streaming technology
JP2011082977A (en) P2p network system and data transmitting and receiving method therefor
KR102356621B1 (en) Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache
US10609105B2 (en) System and method for streaming music on mobile devices
WO2014048198A1 (en) Multi-speed playing method, device and system
US10019448B2 (en) Methods and systems for providing file data for media files
WO2020078388A1 (en) Streaming media data transmission method, device, and apparatus, and computer storage medium
KR102196504B1 (en) Apparatus and method for providing contents
AU2015101273A4 (en) A computer implemented system and method for transferring multimedia content