JP5096293B2 - コンテンツ配信支援システムと方法およびプログラム - Google Patents

コンテンツ配信支援システムと方法およびプログラム Download PDF

Info

Publication number
JP5096293B2
JP5096293B2 JP2008284358A JP2008284358A JP5096293B2 JP 5096293 B2 JP5096293 B2 JP 5096293B2 JP 2008284358 A JP2008284358 A JP 2008284358A JP 2008284358 A JP2008284358 A JP 2008284358A JP 5096293 B2 JP5096293 B2 JP 5096293B2
Authority
JP
Japan
Prior art keywords
content
information
network
user
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008284358A
Other languages
English (en)
Other versions
JP2010113460A (ja
Inventor
達哉 森
亮一 川原
憲昭 上山
薫明 原田
治久 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2008284358A priority Critical patent/JP5096293B2/ja
Publication of JP2010113460A publication Critical patent/JP2010113460A/ja
Application granted granted Critical
Publication of JP5096293B2 publication Critical patent/JP5096293B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、ネットワークにおけるコンテンツの配信技術に係り、特に、効率的なコンテンツ配信を支援するのに好適な技術に関するものである。
インターネット等においては、超高精細映像等のリッチコンテンツが流通するようになり、ネットワークでのコンテンツの効率的な配信に必要となる技術が検討、開発されてきた。
従来の、例えば、特許文献1に記載されているCDN(Content Delivery Network)と呼ばれる技術は、ネットワーク上に複数のサーバを設け、各サーバにおいて、コンテンツの複製を地理的に分散して保持し、クライアントからの要求に対しては最も近くの複製をダウンロードするよう指示する技術であり、この技術によって、コンテンツ配信源にかかる負荷を減ずることができばかりでなく、ダウンロード先を戦略的に選択することによってダウンロードに要する時間や、無駄なトラフィックを減ずることができ、コンテンツ配信の効率化を図ることができるというメリットがある。
しかしながら、一般に、CDNは、ISP(Internet Service Provider)が運用するものではないため、きめ細かい制御を、より柔軟に行うことができないという問題がある。
例えば、あるネットワークが広い地域をカバーしている場合、一般に、CDN業者が設置するキャッシュサーバは、全ての地域をカバーするわけではないので、配信元サーバとクライアント(コンテンツ配信要求元)との距離が長い場合がある。
同様に、CDN提供者は、一般に、ISP内でのネットワークリソース状況を直接的に把握する手段をもたないため、混雑している回線や、できればなるべく利用したくない回線を経由しなければいけないケースも存在する。
また、CDNは、全世界にまたがるロケーションに、コンテンツ配信用のサーバを設置するモデルであるため、メディアサイズと流通量が増大するにつれてコスト高となり、また、スケーラビリティに欠けるという問題がある。
ネットワークを流通するコンテンツのサイズ(容量)は年々巨大になっているため、上述した制御の柔軟性とスケーラビリティの問題がますます重要になってきている。
特開2003−167810号公報
解決しようとする問題点は、従来の技術では、(1)配信元サーバとクライアントの距離が長い場合がある点と、(2)混雑している回線や、できればなるべく利用したくない回線を経由しなければいけないケースも存在する点と、(3)メディアサイズと流通量が増大するにつれて、コンテンツ配信用のサーバの設置コストが高くなり、スケーラビリティに欠けるという点である。
本発明の目的は、これら従来技術の課題を解決し、ネットワークにおける、超高精細映像等の巨大サイズのリッチコンテンツの流通を効率化することである。
上記目的を達成するため、本発明では、キャッシュサーバとエンド端末の双方をコンテンツ配信源として利用し、新たに設けたコーディネータの処理により両者を適切に協調させることで、より柔軟できめ細かい制御を可能として、スケーラビリティに優れたコンテンツ配信を実現する。具体的には、ネットワークにおけるコンテンツの配信処理制御を行う装置として、コンテンツの複製を記憶装置に蓄積し、ユーザ端末が要求するコンテンツを読み出してユーザ端末に送信するキャッシュサーバ装置と、ユーザ端末であり、受信したコンテンツを記憶装置に蓄積して、他のユーザ端末が要求するコンテンツを読み出して他のユーザ端末に送信するエンド端末と、ユーザ端末からのコンテンツ配信の要求を受け付け、このユーザ端末が要求するコンテンツを蓄積したキャッシュサーバ装置とエンド端末を特定し、特定したキャッシュサーバ装置とエンド端末からコンテンツの送信元を選択し、送信元として選択したキャッシュサーバ装置もしくはエンド端末へのアクセス情報を、当該コンテンツの要求元ユーザ端末に通知するコーディネータ装置とを設け、通知を受けたユーザ端末は、通知されたキャッシュサーバ装置もしくはエンド端末のいずれか1つを選択して、当該コンテンツの送信を要求する。
本発明によれば、コンテンツ配信を、より柔軟で、かつ、きめ細かく制御することが可能であり、スケーラビリティにすぐれたコンテンツ配信を行うことが可能となる。
以下、図を用いて本発明を実施するための最良の形態例を説明する。図1は、本発明に係るコンテンツ配信支援システムを設けたネットワークの構成例を示すブロック図であり、図2は、図1における本発明に係るコーディネータの構成例を示すブロック図、図3は、本発明に係るコンテンツ配信支援システムの構成例を示すブロック図、図4は、図2におけるコーディネータの第1の処理動作例を示すフローチャート、図5は、図2におけるコーディネータの第2の処理動作例を示すフローチャート、図6は、図2におけるユーザテーブルの構成例を示す説明図、図7は、図2におけるユーザリソーステーブルの構成例を示す説明図、図8は、図2におけるユーザポリシーテーブルの構成例を示す説明図、図9は、図2におけるコンテンツテーブルの構成例を示す説明図、図10は、図2におけるネットワークリソーステーブルの構成例を示す説明図、図11は、図2におけるネットワーク情報テーブルの構成例を示す説明図、図12は、図2におけるネットワークポリシーテーブルの構成例を示す説明図、図13は、図2におけるパス情報テーブルの構成例を示す説明図である。
図1において、11はコンテンツ配信源としてのサーバコンピュータ装置でありネットワーク10に配置され、このネットワーク10と図示していないルータ等のネットワーク装置により接続されたネットワーク12内に、本発明に係るコンテンツ配信支援システムを構成するキャッシュサーバ13とコーディネータ14およびエンド端末A15,B16が配置された構成となっている。
これら本発明に係るコンテンツ配信支援システムを構成するキャッシュサーバ13とコーディネータ14およびエンド端末A15,B16のそれぞれは、CPU(Central Processing Unit)や主メモリ、表示装置、入力装置、外部記憶装置を具備したコンピュータ構成からなり、光ディスク駆動装置等を介してCD−ROM等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みCPUで処理することにより、各処理部の機能を実行する。
例えば、図2に示すように、コーディネータ14は、プログラムされたコンピュータ処理を実行する機能として、ネットワーク計測データ収集部14a、ポリシー入力部14b、ユーザ通信部14c、キャッシュサーバ通信部14d、ネットワークリソース管理部14e、ネットワーク情報管理部14f、ネットワークポリシー管理部14g、ユーザ管理部14h、ユーザリソース管理部14i、ユーザポリシー管理部14j、コンテンツ管理部14k、データベース管理部(図中「DB管理部」と記載)14m、ノード選択部14nを具備している。
また、データベース管理部14mは、記憶装置内に、ネットワークリソーステーブル(図中「ネットワークリソースTBL」と記載)14m1、ネットワーク情報テーブル(図中「ネットワーク情報TBL」と記載)14m2、パス情報テーブル(図中「パス情報TBL」と記載)14m3、ネットワークポリシーテーブル(図中「ネットワークポリシーTBL」と記載)14m4、ユーザテーブル(図中「ユーザTBL」と記載)14m5、ユーザリソーステーブル(図中「ユーザリソースTBL」と記載)14m6、ユーザポリシーテーブル(図中「ユーザポリシーTBL」と記載)14m7、コンテンツテーブル(図中「コンテンツTBL」と記載)14m8を有し、それぞれの情報を記憶管理している。
このような、データベース管理部14mで管理する情報は、図3に示すように、コーディネータ33fが、ネットワークエリア(1)31に属する各エンド端末31a〜31cやネットワークエリア(2)32に属する各エンド端末32a,32bから、あるいは、ネットワーク33に設けられたネットワーク装置としてのルータ33a〜33dから収集する。
以下、このような構成からなる本発明に係るコンテンツ配信支援システムに係る第1〜第7の技術について説明する。まず、第1の技術は、キャッシュサーバ13とエンド端末A15,B16をコンテンツ配信源11として適応的に選択して利用するものである。
キャッシュサーバ13は、システムを利用するユーザから要求のあったコンテンツを2度目以降の要求に備えて蓄積するコンピュータ装置であり、エンド端末A15,B16は、システムを利用するユーザが利用する端末(ユーザ端末)である。
エンド端末A15,B16を含む図示していない多数のユーザ端末(エンド端末)のリソースを配信源として活用することにより、コンテンツ配信に伴う配信源装置(11)への負荷の集中を削減するとともに、適切なエンド端末を選択することによってネットワークの負荷集中回避や、ネットワークポリシーに応じた効率的なコンテンツ配信が可能となる。
さらに、あるコンテンツを保持するエンド端末が少ない場合は、キャッシュサーバ13にコンテンツ配信を実施させることにより、コンテンツ取得の可用性を向上することができる。
コンテンツ配信源としてのキャッシュサーバ13およびエンド端末A15,B16を適応的に選択する機能は、コーディネータ14によって実現される。コーディネータ14は、上述したように、プログラムされてコンピュータ処理機能として、以下のような12の基本機能を有する。
ユーザ管理部14h、ユーザリソース管理部14i、ユーザポリシー管理部14j、ネットワークリソース管理部14e、ネットワークポリシー管理部14g、コンテンツ管理部14k、ノード選択部14n、ネットワーク計測データ収集部14a、ポリシー入力部14b、ユーザ通信部14c、キャッシュサーバ通信部14d、データベース管理部14m。
ユーザ管理部14hは、ユーザ自身およびユーザが利用するエンド端末(A15,B16)の情報を収集してデータベース管理14mを介してユーザテーブル14m5に記憶して管理する。
ユーザリソース管理部14iは、ユーザが利用するエンド端末(A15,B16)のリソース使用状況を収集してデータベース管理14mを介してユーザリソーステーブル14m6に記憶して管理する。
ユーザポリシー管理部14jは、ユーザがシステムの利用に当たって任意に指定が可能なポリシー(例えば最大同時アップロード数など)を収集してデータベース管理14mを介してユーザポリシーテーブル14m7に記憶して管理する。
ネットワークリソース管理部14eは、ルータやスイッチ等のネットワーク装置が出力するネットワークリソース利用状況に関するデータを収集してデータベース管理14mを介してネットワークリソーステーブル14m1に記憶して管理する。
ネットワーク情報管理部14fは、ルータ等のネットワーク装置が出力するルーティングプロトコルのメッセージ、あるいはマニュアル(人手)で指定が可能なネットワークの経路情報やトポロジ情報を収集してデータベース管理14mを介してネットワーク情報テーブル14m5やパス情報テーブル14m3に記憶して管理する。
ネットワークポリシー管理部14gは、ある回線への負荷集中を明示的に避ける等のネットワークの管理ポリシーを収集してデータベース管理14mを介してネットワークポリシーテーブル14m4に記憶して管理する。
コンテンツ管理部14kは、あるコンテンツが現在どのキャッシュサーバ(13)もしくはエンド端末(A15,B16)において保持され利用が可能であるかの情報を収集してデータベース管理14mを介してユーザテーブル14m8に記憶して管理する。
ノード選択部14nは、エンド端末A15,B16等から新たなコンテンツの取得要求を受けた際、前述の各管理部(14e〜14k)で管理される情報を参照することによって、効率的なリソース割り当てを実現するようにキャッシュサーバ13もしくはエンド端末A15,B16を選択する。
尚、ネットワーク計測データ収集部14aは、ネットワークリソース管理部14e、ネットワーク情報管理部14f、ネットワークポリシー管理部14gの各々がルータ等の外部ネットワーク装置から収集したデータを受信する。
また、ポリシー入力部14bは、ネットワークポリシー管理部14gおよびユーザポリシー管理部14jに対して外部からポリシーを入力できる機能を提供する。
また、ユーザ通信部14cは、ユーザ管理部14h、ユーザリソース管理部14i、ユーザポリシー管理部14j、コンテンツ管理部14kに対して、ユーザやコンテンツに関する情報をエンド端末(A15,B16)から送受信・更新する機能と、ノード選択部14nによって選択されたノードをユーザ端末に通知する機能を提供する。
また、キャッシュサーバ通信部14dは、キャッシュサーバ13からコンテンツに関する情報を送受信する機能、およびキャッシュサーバ13に対してデータを取得するよう通知を行う機能を提供する。
データベース管理部14mは、前述の各管理部(14e〜14k)において管理するデータテーブルをデータベースとして一元的に管理する機能を提供する。
本システムを利用するユーザは、ユーザ端末、例えばエンド端末(A15,B16)を介して、コンテンツの要求を、コーディネータ14に対して送信し、コーディネータ14は、ノード選択部14nの出力を利用して、要求元のユーザが操作するユーザ端末(エンド端末A15,B16)に対して適切な1つ以上のダウンロード先の端末(他のエンド端末もしくはキャッシュサーバ13)を通知し、ユーザは、通知された1つ以上のダウンロード先端末のいずれか1つ、もしくは、キャッシュサーバ13を利用して、所望のコンテンツをダウンロードする。
尚、ユーザは、通知された2以上のダウンロード先端末を利用することによって、指定のコンテンツを分割ダウンロードすることでも良い。
また、ユーザは、利用するユーザ端末(エンド端末A15,B16)により、通知された端末からのダウンロードを失敗した際には、その旨をコーディネータ14に通知し、再度、ノード選択要求を行い、コーディネータ14からの新たなコンテンツ配信元(ノード)の通知を受ける。
第2の技術では、ユーザがシステムを初めて利用する際、もしくは利用終了後に再び利用を開始する際に、ユーザ端末からコーディネータ14に対して送信する具体的な情報を規定する。
ユーザ端末が送信する情報には、ユーザアカウント、外部アクセス情報、ユーザリソース情報、ユーザポリシー情報、コンテンツ情報がある。
ユーザアカウントとは、システムを利用するユーザを一意に識別が可能な識別子であり、外部アクセス情報とは、ユーザ端末アドレスや外部アクセス用ポート番号、NAT越えの可否、利用可能なNAT越えの手段等、他の端末から該当端末にアクセスするために必要となる情報である。
また、ユーザリソース情報とは、エンド端末A15,B16のCPUクロック数と使用率、メモリ量と使用率、および、エンド端末A15,B16が外部ネットワークに接続されたFTTHないしはADSL等の回線種別と、エンド端末A15,B16が現在使用中のネットワーク帯域を移動平均等の技術によって逐次更新した値である。
また、ユーザポリシー情報とは、最大コンテンツダウンロード・アップロード可能数や最大ダウンロード・アップロード転送レート等の、ユーザが指定可能なポリシー(方針)に関する情報である。
そして、コンテンツ情報とは、エンド端末A15,B16が保持するコンテンツのファイル名のリストもしくはファイル名を固定長のハッシュダイジェストの形式にしたリストである。
尚、ユーザリソース情報は、初回の送信以降も、任意に設定が可能な周期が到来する毎に情報を送信することが可能であり、ユーザポリシー情報は、ユーザがポリシーを変更した際にコーディネータ14に再送信することが可能であり、コンテンツ情報は、エンド端末A15,B16が新たに配信可能なコンテンツを取得した後に、コーディネータ14に再送信することが可能である。
第1の技術で示した機能と第2の技術で規定された情報、および情報を記録するデータベース管理部14mで管理する各テーブル(図6〜図13)との関係は以下の通りである。
ユーザアカウントおよび外部アクセス情報は,ユーザ管理部14hが、データベース管理部14mを介してユーザテーブル14m5に記録管理する。その詳細を図6のユーザテーブル61に示す。
ユーザリソース情報は、ユーザリソース管理部14iが、データベース管理部14mを介してユーザリソーステーブル14m6に記録して管理する。その詳細を図7のユーザリソーステーブル71に示す。
ユーザポリシー情報は、ユーザポリシー管理部14jが、データベース管理部14mを介してユーザポリシーテーブル14m7に記録して管理する。その詳細を図8のユーザポリシーテーブル81に示す。
コンテンツ情報は、コンテンツ管理部14kが、コンテンツ毎の情報に変換し、データベース管理部14mを介して、コンテンツテーブル14m8に記録して管理する。その詳細を図9のコンテンツテーブル91に示す。
本例の第3の技術では、ネットワークリソース管理部14eで管理するデータと、その管理技術の具体例を規定する。
すなわち、ネットワークリソース管理部14eは、ルータ等のネットワーク装置が計測して出力する回線毎およびトラヒック方向毎のパケットカウントやバイトカウント、パケットロス等のデータを予め定めることの可能な周期が到来する毎に収集し、例えば、5分間あるいは1時間等の任意の長さに指定が可能な異なる粒度での計測値、および、それぞれの粒度での指数重み付き移動平均等の統計値として、データベース管理部14mを介して、ネットワークリソーステーブル14mlに記録・更新する。その詳細を図10のネットワークリソーステーブル101に示す。
本例の第4の技術では、ネットワーク情報管理部14fが管理するデータおよびその管理技術の具体例を規定する。
すなわち、ネットワーク情報管理部14fでは、エンド端末A15,B16を含む各エンド端末が、地域あるいはルーティングプロトコル上のドメイン等、どのネットワークエリアに属するかといった情報を、データベース管理部14mを介して、ネットワーク情報テーブル14m2に記録して管理する。その詳細を図11のネットワーク管理テーブル111に示す。
また、ネットワーク情報管理部14fは、ルータ等のネットワーク装置から出力されるルーティングプロトコルメッセージを収集し、得られた情報に基づいて作成した経路に関する情報と、予め指定が可能なネットワークトポロジ情報を用いて、ネットワーク上の任意の2点間のエリアとそのパス上に存在する回線の集合を対応付けた情報を生成し、データベース管理部14mを介して、パス情報テーブル14m3に記録して管理する。その詳細を図13のパス情報テーブル131に示す。
本例の第5の技術では、ネットワークポリシー管理部14gが管理するデータおよびその管理技術の具体例を規定する。
すなわち、ネットワークポリシー管理部14gは、ある特定の回線の集合に対する負荷集中を予め回避する、あるいは、特定の回線集合の利用を奨励するようなネットワークのリソース利用に関するポリシーを、データベース管理部14mを介して、ネットワークポリシーテーブル14m4に記録して管理する。その詳細は図12のネットワークポリシーテーブル121に示す。
本例の第6の技術においては、ノード選択部14nが、コンテンツの要求に対し、いかにしてダウンロード先のノードを選択するかの具体例を規定する。
まず、ノード選択部14nは、新規に、或るコンテンツYを要求したユーザXに対して、第2の技術で説明したユーザテーブル14m5を参照し、ユーザXに対応するエンド端末Eを同定する。次に、ノード選択部14nは、コンテンツテーブル14m8(図9のコンテンツテーブル91)を参照し、コンテンツYを保持しているユーザアカウントのリストを作成する。
そして、このリストに含まれるユーザアカウントを探索キーとして、ユーザテーブル14m5(図6のユーザテーブル61)を参照し、外部アクセス(NAT越え)が可能なユーザアカウントのみを抽出し、リストLUとして保持する。
尚、この際、該当するユーザアカウントがない場合、もしくは、リストLUに含まれるユーザアカウントの数が予め指定が可能な閾値よりも少ない場合には、キャッシュサーバ13を選択し、選択処理を完了する。
また、リストLUに含まれるユーザアカウント数が閾値よりも大きい場合は、リストLUに含まれるユーザアカウントを探索キーとして、ユーザポリシーテーブル14m7(図8のユーザポリシーテーブル81)を参照し、最大コンテンツ数が「0」のものを削除する。
もし、全てのユーザアカウントが削除された場合は、キャッシュサーバ13を選択し、選択処理を完了する。
さらに、リストLUのユーザアカウントを探索キーに用いてユーザテーブル14m5を参照することによって該当するエンド端末のリストLEを得た場合には、このリストLEに含まれる全てのエンド端末を探索キーとして用いて、ネットワーク情報テーブル14m2(図11のネットワーク情報テーブル111)を参照して、コンテンツを要求しているエンド端末Eのエリアと、該当するエンド端末e∈LEのエリアをそれぞれ取得する。
このようにして得られた各々のエンド端末ペアのエリアを探索キーとして用いて、パス情報テーブル14m3(図13のパス情報テーブル131)を参照することにより、エンド端末Eとエンド端末e∈LEとを接続する通信回線のリストLLを取得する。
取得した回線リストLLを探索キーに用いてネットワークリソーステーブル14ml(図10のネットワークリソーステーブル101)を参照し、エンド端末ペア間に存在する回線のリソース状況を取得する。
コーディネータ14は、上述の処理で得たリストLUを探索キーとして用いて、各テーブルを参照し、ユーザポリシーの各値、および対応する回線群に対するネットワークポリシー、ネットワークリソースの各値を取得し、取得したそれぞれの値を重み付きで考慮することによって、例えば、端末間のネットワークリソース状況が最も良く、かつ、ユーザリソースも十分な量がある等の所望の基準を最も良く満たしている上位N(Nは1以上の整数)個のノードを選択し、要求元のユーザX(端末)に通知する。
本例の第7の技術においては、キャッシュサーバ13の容量を超えないようにするために、アクセス頻度の低いコンテンツをキャッシュサーバ13から削除し、削除した旨をコーディネータ14に通知する。
この際、コンテンツを削除するタイミングやルールは、コンテンツのアクセス頻度の低い順、もしくは、最終アクセス時刻から現在時刻までの時間差、あるいは、無作為抽出など、任意に指定することが可能である。
以下に、図1を用いて、上述した実施例の説明を行う。図1において、元(オリジナル)のデータは、コンテンツ配信源11として外部ネットワーク10に存在し、内部ネットワーク12には、キャッシュサーバ13、コーディネータ14、エンド端末A15,B16が配置されている。
本例においては、P2P技術を用いて、ユーザが利用するユーザ端末が、エンド端末A15,B16として新たなコンテンツの配信元となる。
システムを利用するユーザ端末は、上述の第2の技術に従い、ユーザアカウント、外部アクセス情報、ユーザリソース情報、ユーザポリシー情報、コンテンツ情報を、コーディネータ14に送信し、コーディネータ14は、これらの情報を、データベース管理部14mにおいて、図6〜図9に示す各テーブル(ユーザテーブル61,ユーザリソーステーブル71,ユーザポリシーテーブル81,コンテンツテーブル91)に記憶して管理する。
以下、図1におけるエンド端末A15,B16がコンテンツを取得する際の流れの一例を説明する。
エンド端末A15を利用するユーザからのコンテンツの要求をコーディネータ14に送信する(ステップS101)。
コーディネータ14は、図6に詳細を示すユーザテーブル61を参照し、ユーザのエンド端末A15のアドレスを取得する。
また、コーディネータ14は、ユーザが要求しているコンテンツIDを、図9に詳細を示すコンテンツテーブル91の内容と比較する。
キャッシュサーバ13とエンド端末B16が共に、エンド端末A15のユーザから要求されたコンテンツを保持していない場合、コーディネータ14は、キャッシュサーバ13に、当該コンテンツを、元のコンテンツ配信源11から取得してエンド端末A15に転送するように指示をする(ステップS102)。
この際、コーディネータ14は、キャッシュサーバ13がエンド端末A15と通信が出来るように、エンド端末A15のアドレスを通知する。
コーディネータ14からの上述の指示を受けたキャッシュサーバ13は、コンテンツ配信源11に対して当該コンテンツの要求を行い(ステップS103)、取得する(ステップS104)。
キャッシュサーバ13は、取得したコンテンツデータを自身にキャッシュしつつ、エンド端末A15にも転送する(ステップS104)。
当該コンテンツデータの転送を受けたエンド端末A15は、ダウンロードの成否をコーディネータ13に通知する(ステップS105)。
ここで、別のエンド端末B16が、コンテンツの要求をコーディネータ13に通知すると(ステップS106)、コーディネータ13は、図9に詳細を示すコンテンツテーブル91を参照し、エンド端末A15およびキャッシュサーバ13ならびに別のエンド端末が、要求されたコンテンツを保持しているか否かを判別する。
この際、コーディネータ13は、上述の第6の技術で説明したように、図6〜図9の各テーブル(61,71,81,91)に記録された情報を基に、要求されたコンテンツを提供するノード(キャッシュサーバ13、エンド端末A15等)を選択する。
ここでは、コーディネータ13が、エンド端末A15を選択したものとする。尚、この際の選択技術の具体例は後述する。
コーディネータ13は、選択したエンド端末A15に対し、エンド端末B16に、当該コンテンツデータを転送するように通知し(ステップS107)、通知を受けたエンド端末A15は、エンド端末B16に、要求されたコンテンツデータを転送する(ステップS108)。
そして、エンド端末B16は、エンド端末A15からの当該コンテンツデータのダウンロードの成否をコーディネータ13に通知する(ステップS109)。
以下、図4,図5を用いて、図2に示す構成のコーディネータ14が、どの様にして、コンテンツの提供元となるノード(キャッシュサーバ13、エンド端末A15,B16等)を選択するかを説明する。
図4は、ユーザXからコンテンツYに関する要求(図1のS101およびS106に相当)を受けたコーディネータ14が、ユーザXに通知するノードの集合を選択する処理手順の一例を図示したものである。
コーディネータ14は、まず、ユーザXからコンテンツYの配信要求を受信すると(ステップS401)、図6に詳細を示すユーザテーブル61を参照し、ユーザXが登録したエンド端末(ユーザ端末)のアドレスを得る(ステップS402)。このアドレスは、後に、ダウンロード先の候補となるエンド端末を選択する際に必要となる。
次に、コーディネータ14は、図9に詳細を示すコンテンツテーブル91を参照し、コンテンツYを保持しているユーザのリストLUを取得する(ステップS403)。このリストLUの要素数が予め定められた閾値(ここでは「1」)よりも小さい場合は(ステップS404)、キャッシュサーバを選択し(ステップS411)、処理は終了となるが、閾値よりも大きい場合は、図6に詳細を示すユーザテーブル61を参照し、外部アクセスが不可能なものをリストLUから除外する(ステップS405)。
その処理の後、リストLUの要素数の予め定められた閾値(「1」)との比較を行い(ステップS406)、閾値以上であれば、図8に詳細を示すユーザポリシーテーブル81を参照して、最大アップロード数が予め定められた閾値(ここでは「1」)以下(すなわち「0」)のものを除去し(ステップS407)、さらに、リストLUの要素数に関する閾値(「1」)に対するチェックを実施する(ステップS408)。
残ったリストLUに含まれるユーザに関して、図6に詳細を示すユーザテーブル61を参照し、対応するエンド端末のリストLEを取得する(ステップS409)。
以下、リストLEから、候補となるエンド端末を選択する処理(ステップS410)を行うが、このステップS410における処理は、図5を用いて説明する。
図5に示すように、コーディネータ14は、まず、図4における処理で取得した(ステップS501)リストLEにおけるエンド端末の各々に対して、図11に詳細を示すネットワーク情報テーブル111を参照し、各々のエンド端末が所属するエリア(ネットワークエリア)の情報を取得する(ステップS502)。
次に、図13に詳細を示すパス情報テーブルを参照して、コンテンツ要求元のエンド端末EのエリアEAと、取得したリストLEに登録されている各エンド端末のエリアと間のパス情報を取得し、パスリストLPを生成する(ステップS503)。
パスリストLPに含まれる通信回線に対して、図10に詳細を示すネットワークリソーステーブル101を参照して、回線使用率が、予め定められた閾値α以上あるいはパケットロス率が予め定められた閾値ε以上の回線が存在するか否かを調べ、そのような通信回線が存在する場合、該当する通信回線を含むパスをパスリストLPから削除する(ステップS504)。
パスリストLPに登録されているパスに対応するエンド端末の数(リストLEの要素数)を調べ、その数が、予め定められた閾値ω以下で(ステップS505)、かつ、予め定められた閾値(「1」)以下(すなわち0)であれば(ステップS510)、キャッシュサーバ13を選択して(ステップS511)処理を終了する。
また、パスリストLPに登録されているパスに対応するエンド端末の数(リストLEの要素数)が、予め定められた閾値ω以下であっても(ステップS505)、予め定められた閾値(「1」)以上であれば(ステップS510)、パスリストLPに対尾するエンド端末をリストLEから取得し、当該エンド端末に対応するユーザをユーザのリストLUから選択して処理を終了する(ステップS512)。
また、パスリストLPに登録されているパスに対応するエンド端末の数が「ω」以上であった場合には(ステップS505)、図12に詳細を示すネットワークポリシーテーブル121を参照し、パスリストLPに属するパス上の通信回線で、優先度が、予め定められた閾値ξ以下のものを含むパスをLPから削除する(ステップS506)。
そして、パスリストLPに所属するパスに対応するエンド端末のリストLEの要素数(エンド端末の数)の閾値ωとのチェックを行い、この閾値ωとのチェックの結果、エンド端末数がω以下であった場合(ステップS507)、上述のステップS510,S511,S512の処理を行って処理を終了する。
また、ステップS507において、閾値ωとのチェックの結果、エンド端末数がω以上であった場合には、パスリストLPに属するパス上の通信回線に対して、図10に詳細を示すネットワークリソーステーブルを参照し、パスに対する最大回線使用率(パス上の回線のうち、最大の使用率をもつ回線の使用率)を算出し、使用率が小さい順にパスリストLPをソートする(ステップS508)。
そして、ソートしたパスリストLPに対して対応するエンド端末を、エンド端末のリストLEを参照して抽出し、それらのエンド端末に対応するユーザを、ユーザのリストLUを参照して抽出し、抽出したユーザうち、上位T(<ω)までを残し、さらに、このT個のユーザに対して、図7に詳細を示すユーザリソーステーブル14m6を参照して、CPU使用率が低い順にソートし、上位β(<T)個のユーザが使用するホスト(エンド端末)を選択して(ステップS509)処理を終了する。
そして、ノード選択部14nは、このようにして選択したβ個のエンド端末(A15,B16,31a〜31c,32a,32b)から、さらに、送信元候補として1つのエンド端末を選択し、あるいは、キャッシュサーバ(13,33e)を選択し、ユーザ通信部14cもしくはキャッシュサーバ通信部14dを介して、選択したエンド端末もしくはキャッシュサーバに対して、当該コンテンツの要求元ユーザ端末への送信を指示する。指示を受けたエンド端末もしくはキャッシュサーバは、指示に従って、当該コンテンツを要求元ユーザ端末に対して送信する。
あるいは、ノード選択部14nは、このようにして選択したβ個のエンド端末(A15,B16,31a〜31c,32a,32b)およびキャッシュサーバ(13,33e)へのアクセス情報(アドレス等)を、ユーザ通信部14cおよびキャッシュサーバ通信部14dを介して、当該コンテンツの要求元ユーザ端末に通知する。この通知を受けた、コンテンツの要求元ユーザ端末は、通知されたβ個のエンド端末もしくはキャッシュサーバから1つを選択して、当該コンテンツの配信を要求する。
以上、図1〜図13を用いて説明したように、本例では、インターネット等のネットワークにおけるコンテンツの配信処理制御を行うシステムとして、コンテンツの複製を記憶装置に蓄積して、ユーザ端末が要求するコンテンツを読み出してユーザ端末に送信するキャッシュサーバ13,33eと、ユーザ端末であり、受信したコンテンツを記憶装置に蓄積して、他のユーザ端末が要求するコンテンツを読み出して他のユーザ端末に送信するエンド端末A15,B16,31a〜31c,32a,32bと、ユーザ端末からのコンテンツ配信の要求を受け付け、このユーザ端末が要求するコンテンツを蓄積したキャッシュサーバとエンド端末を検出し、検出したキャッシュサーバとエンド端末から、各エンド端末に関して予め定められた第1の条件および各エンド端末間のネットワークに関して予め定められた第2の条件に従って、1以上のエンド端末もしくはキャッシュサーバ装置をコンテンツの送信元候補として特定するコーディネータ14,33fとを設けた構成とする。
コーディネータ14,33fは、送信元候補として選択した1以上のエンド端末の1つもしくはキャッシュサーバに対して、当該コンテンツの要求元ユーザ端末への送信を指示するノード選択部14nを有し、このようなコーディネータ14,33fからの指示を受けたエンド端末もしくはキャッシュサーバは、当該コンテンツを要求元のユーザ端末に送信する。
あるいは、コーディネータ14,33fは、ノード選択部14nにより、送信元候補として選択した1以上のエンド端末もしくはキャッシュサーバへのアクセス情報を当該コンテンツの要求元ユーザ端末に通知し、この通知を受けたコンテンツの要求元ユーザ端末は、通知された1以上のエンド端末もしくはキャッシュサーバから1つを選択して、当該コンテンツの配信を要求する。
尚、コーディネータ14,33fは、予め定められた第1の条件を記憶管理するためのプログラムされたコンピュータ処理を実行する機能として、各エンド端末から、各エンド端末のアドレス情報と当該エンド端末へのアクセス可否の制御に用いるアクセス制御情報を含むユーザ情報を収集し、データベース管理部14mを介してユーザテーブル14m5,61に記憶し管理するユーザ管理部14hと、各エンド端末から、各エンド端末におけるリソース利用状況を示すリソース情報を収集し、データベース管理部14mを介してユーザリソーステーブル14m6,71に記憶して管理するユーザリソース管理部14iと、各エンド端末から、各エンド端末におけるアップロード時およびダウンロード時のそれぞれの最大数情報と最大転送レート情報を含むユーザポリシー情報を収集し、データベース管理部14mを介してユーザポリシーテーブル14m7,81に記憶して管理するユーザポリシー管理部14jと、各エンド端末から、各エンド端末が保持する各コンテンツの識別情報を収集し、各コンテンツの識別情報と当該コンテンツを保持するエンド端末の識別情報とを対応付けた情報を生成し、データベース管理部14mを介してコンテンツテーブル14m8,91に記憶して管理するコンテンツ管理部14kとを具備し、ノード選択部14nは、コンテンツ管理部14kが記憶管理する対応付け情報(コンテンツテーブル14m8,91)を参照して、ユーザ端末から要求されたコンテンツを保持するエンド端末を検出する第1の機能と、この第1の機能で検出したエンド端末から、ユーザ管理部14hが記憶管理するアクセス制御情報(ユーザテーブル14m5,61)を参照して、コンテンツ要求元のユーザ端末からのアクセスが可能なエンド端末を抽出する第2の機能と、この第2の機能で抽出したエンド端末から、ユーザポリシー管理部14jが記憶管理するユーザポリシー情報(ユーザポリシーテーブル14m7,81)を参照して、最大アップロード数が予め定められた値以上のエンド端末を特定する第3の機能と、この第3の機能で特定したエンド端末から、ユーザリソース管理部14iが記憶管理するリソース情報(ユーザリソーステーブル14m6,71)を参照して、リソース使用状況の良好なものから順に予め定められた数のエンド端末を抽出し、抽出したエンド端末を、ユーザ端末から要求されたコンテンツの送信元として選択する第4の機能とを有する。
また、コーディネータ14,33fは、予め定められた第2の条件を記憶管理するためのプログラムされたコンピュータ処理を実行する機能として、ルータ33a〜33dを含む各外部ネットワーク装置から、各外部ネットワーク装置が管理している通信経路情報と各通信経路を構成する各通信回線のトラヒック情報および各通信回線に対して予め定められた優先度情報を収集するネットワーク計測データ収集部14aと、このネットワーク計測データ収集部14aが収集した各通信経路情報を、データベース管理部14mを介して記憶装置(ネットワーク情報テーブル14m2,111、パス情報テーブル14m3,131)に記憶し管理するネットワーク情報管理部14fと、ネットワーク計測データ収集部14aが収集した各通信回線のトラヒック情報を、データベース管理部14mを介して記憶装置(ネットワークリソーステーブル14m1,101)に記憶し管理するネットワークリソース管理14eと、ネットワーク計測データ収集部14aが収集した各通信回線の優先度情報を、データベース管理部14mを介して記憶装置(ネットワークポリシーテーブル14m4,121)に記憶し管理するネットワークポリシー管理部14gと、を具備し、ノード選択部14nは、ネットワーク情報管理部14fが記憶管理する通信経路情報(ネットワーク情報テーブル14m2,111、パス情報テーブル14m3,131)を参照して、第3の機能で選択した各エンド端末と当該コンテンツの要求元のユーザ端末間の通信経路を特定する第5の機能と、この第5の機能で特定した通信経路を構成する各通信回線の通信品質を、ネットワークリソース管理部14eが記憶管理する各通信回線のトラヒック情報(ネットワークリソーステーブル14m1,101)を参照して取得し、取得した通信品質が予め定められた閾値以上の通信回線を抽出する第6の機能と、この第6の機能で抽出した通信回線から、ネットワークポリシー管理部14gが記憶管理する各通信回線の優先度情報(ネットワークポリシーテーブル14m4,121)を参照して、予め定められた閾値以上の優先度の通信回線を抽出する第7の機能と、この第7の機能で抽出した通信回線からなる通信経路の通信品質を、ネットワークリソース管理部14eが記憶管理する各通信回線のトラヒック情報(ネットワークリソーステーブル14m1,101)を参照して取得し、取得した通信品質の良い順に予め定められた数の通信経路を選択する第8の機能と、を有し、第4の機能は、第8の機能が選択した通信経路で接続されるエンド端末から、リソース使用状況の良好な順に予め定められた数のエンド端末を抽出して、ユーザ端末から要求されたコンテンツの送信元として選択する。
尚、ユーザ管理部14hがユーザテーブル14m5,61において記憶管理するアクセス制御情報は、NAT越えの可否情報を含み、ノード選択部14nは、第2の機能により、NAT越えの可否情報を参照して、コンテンツ要求元のユーザ端末からのアクセスが可能なエンド端末を抽出する。
また、ユーザリソース管理部14iがユーザリソーステーブル14m6,71において記憶管理するリソース情報は、各々予め定められた周期毎に更新される、当該エンド端末のCPUクロック数と使用率、メモリ量と使用率、および、FTTHを含む回線種別、使用中のネットワークの帯域情報を含み、ノード選択部14nは、第4の機能により、エンド端末のCPUクロック数と使用率、メモリ量と使用率、および、FTTHを含む回線種別、使用中のネットワークの帯域情報を参照して、リソース使用状況の良好なものから順に予め定められた数のエンド端末を抽出する。
また、コンテンツ管理部14kがコンテンツテーブル14m8,91において記憶管理するコンテンツ情報は、各エンド端末が新たな配信コンテンツを記憶するたびに当該エンド端末から収集され、かつ、当該コンテンツの特定に用いるコンテンツIDを含み、このコンテンツIDは、当該コンテンツのファイル名を固定長のハッシュダイジェストで表記され、この固定長のハッシュダイジェストで表示されるコンテンツIDに対応付けて当該コンテンツを保持するエンド端末を記憶管理し、ノード選択部14nは、第1の機能により、固定長のハッシュダイジェストで表示されるコンテンツIDを検索キーに用いてコンテンツ管理部14kが記憶管理する情報(コンテンツテーブル14m8,91)を参照する。
また、ネットワークリソース管理部14eがネットワークリソーステーブル14m1,101において記憶管理する各通信回線のトラヒック情報は、各外部ネットワーク機器が予め定めた周期毎に計測する、各通信回線のトラヒック方向毎のパケットの通過量情報と破棄量情報を含み、ノード選択部14nは、第6の機能により、ネットワークリソース管理部14eがネットワークリソーステーブル14m1,101において記憶管理する各通信回線におけるパケットの通過量情報と破棄量情報を参照して当該通信回線の通信品質を取得する。
また、ネットワークポリシー管理部14gがネットワークポリシーテーブル14m4,121において記憶管理する各通信回線の優先度情報は、当該通信回線へのアクセスの集中を回避させる、もしくは、当該通信回線の利用を奨励させるための情報であり、ノード選択部14nは、第7の機能により、通信回線へのアクセスの集中を回避するようもしくは奨励される通信回線を利用するように通信回線を抽出する。
さらに、ネットワーク情報管理部14fが記憶管理する通信経路情報は、各エンド端末が属するネットワークエリアを示すネットワーク情報(ネットワーク情報テーブル14m2,111)と、各ネットワークエリア間の経路を構成する通信回線を示すパス情報(パス情報テーブル14m3,131)とからなり、ノード選択部14nは、第5の機能により、ネットワーク情報(ネットワーク情報テーブル14m2,111)を参照して第3の機能が選択した各エンド端末とコンテンツ要求元のユーザ端末のそれぞれのネットワークエリアを取得し、パス情報(パス情報テーブル14m3,131)を参照して、取得したネットワークエリア間の経路を構成する通信回線を特定する。
また、ノード選択部14nは、第1の機能が検出したエンド端末の数、第2の機能が抽出したエンド端末の数、第3の機能が特定したエンド端末の数、第6の機能が抽出した通信回線の数、第7の機能が抽出した通信回線の数のいずれかが、それぞれに対して予め定められた閾値以下であれば、キャッシュサーバ13,33eを、ユーザ端末から要求されたコンテンツの送信元として選択する。
また、キャッシュサーバ13,33eは、プログラムされたコンピュータ処理を実行する機能として、記憶装置に蓄積したコンテンツの複製を、予め定められた条件に従って消去する機能と、この機能によりコンテンツの複製を消去したことをコーディネータ14,33fに通知する機能とを有する。
このように、本例では、キャッシュサーバ13,33eとエンド端末A15,B16,31a〜31c,32a,32bの双方をコンテンツ配信源として利用し、コーディネータ14,33fの処理により両者を適切に協調させてコンテンツ配信を行うことで、インターネット等におけるネットワーク上でのコンテンツ配信を、より柔軟で、かつ、きめ細かく制御することが可能となり、スケーラビリティにすぐれたコンテンツ配信を行うことが可能となる。
尚、本発明は、図1〜図13を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、P2P技術を用いてエンド端末から他のエンド端末に対してコンテンツを配信可能な構成としているが、エンド端末に、Webサーバとして動作する機能を設けて、各エンド端末間でのコンテンツの配信を可能とする構成でも良い。本例の技術によれば、コーディネータ14,33fにおいて、各エンド端末のリソース使用状況や、各エンド端末間のネットワーク・トラヒック状況や各エンド端末の位置情報(エリア)などを利用して、コンテンツ配信元を選択することや、アップロードを実施した回数を管理することによってアップロード量に応じたインセンティブを計算することも可能となる。
また、本例のコンピュータ構成例に関しても、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、FD(Flexible Disk)等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
本発明に係るコンテンツ配信支援システムを設けたネットワークの構成例を示すブロック図である。 図1における本発明に係るコーディネータの構成例を示すブロック図である。 本発明に係るコンテンツ配信支援システムの構成例を示すブロック図である。 図2におけるコーディネータの第1の処理動作例を示すフローチャートである。 図2におけるコーディネータの第2の処理動作例を示すフローチャートである。 図2におけるユーザテーブルの構成例を示す説明図である。 図2におけるユーザリソーステーブルの構成例を示す説明図である。 図2におけるユーザポリシーテーブルの構成例を示す説明図である。 図2におけるコンテンツテーブルの構成例を示す説明図である。 図2におけるネットワークリソーステーブルの構成例を示す説明図である。 図2におけるネットワーク情報テーブルの構成例を示す説明図である。 図2におけるネットワークポリシーテーブルの構成例を示す説明図である。 図2におけるパス情報テーブルの構成例を示す説明図である。
符号の説明
10:ネットワーク、11,コンテンツ配信源(コンピュータ装置)、12:ネットワーク、13:キャッシュサーバ、14:コーディネータ、:14aネットワーク計測データ収集部、14b:ポリシー入力部、14c:ユーザ通信部、14d:キャッシュサーバ通信部、14e:ネットワークリソース管理部、14f:ネットワーク情報管理部、14g:ネットワークポリシー管理部、14h:ユーザ管理部、14i:ユーザリソース管理部、14j:ユーザポリシー管理部、14k:コンテンツ管理部、14m:データベース管理部(DB管理部)、14n:ノード選択部、14m1,101:ネットワークリソーステーブル(ネットワークリソースTBL)、14m2,111:ネットワーク情報テーブル(ネットワーク情報TBL)、14m3,131:パス情報テーブル(パス情報TBL)、14m4,121:ネットワークポリシーテーブル(ネットワークポリシーTBL)、14m5,61:ユーザテーブル(ユーザTBL)、14m6,71:ユーザリソーステーブル(ユーザリソースTBL)、14m7,81:ユーザポリシーテーブル(ユーザポリシーTBL)、14m8,91:コンテンツテーブル(コンテンツTBL)、15:エンド端末A、16:エンド端末B、31:ネットワークエリア(1)、31a〜31c:エンド端末、32:ネットワークエリア(2)、32a:エンド端末、32b:エンド端末、33:ネットワーク、33a〜33d:ルータ(ネットワーク装置)、33e:キャッシュサーバ、33f:コーディネータ。

Claims (9)

  1. ネットワークにおけるコンテンツの配信処理制御を行うコンテンツ配信支援システムであって、
    コンテンツの複製を記憶装置に蓄積して、ユーザ端末が要求するコンテンツを読み出して該ユーザ端末に送信するキャッシュサーバ装置と、
    上記ユーザ端末であり、受信したコンテンツを記憶装置に蓄積して、他のユーザ端末が要求するコンテンツを読み出して該他のユーザ端末に送信するエンド端末と、
    上記ユーザ端末からのコンテンツ配信の要求を受け付け、該ユーザ端末が要求するコンテンツを蓄積した上記キャッシュサーバ装置と上記エンド端末を検出し、検出したキャッシュサーバ装置とエンド端末から、各エンド端末に関して予め定められた第1の条件および各エンド端末間のネットワークに関して予め定められた第2の条件に従って、1以上の上記エンド端末もしくは上記キャッシュサーバ装置を上記コンテンツの送信元候補として選択するノード選択手段を備えたコーディネータ装置と
    を有し、
    上記コーディネータ装置は、
    上記予め定められた第1の条件を記憶管理する手段として、
    各エンド端末から、各エンド端末のアドレス情報と当該エンド端末へのアクセス可否の制御に用いるアクセス制御情報を含むユーザ情報を収集して記憶装置に記憶し管理するユーザ管理手段と、
    各エンド端末から、各エンド端末におけるリソース利用状況を示すリソース情報を収集して記憶装置に記憶し管理するユーザリソース管理手段と、
    各エンド端末から、各エンド端末におけるアップロード時およびダウンロード時のそれぞれの最大数情報と最大転送レート情報を含むユーザポリシー情報を収集して記憶装置に記憶し管理するユーザポリシー管理手段と、
    各エンド端末から、各エンド端末が保持する各コンテンツの識別情報を収集し、各コンテンツの識別情報と当該コンテンツを保持するエンド端末の識別情報とを対応付けた情報を生成して記憶装置に記憶し管理するコンテンツ管理手段と、を具備すると共に、
    上記予め定められた第2の条件を記憶管理する手段として、
    ルータを含む各外部ネットワーク装置から、各外部ネットワーク装置が管理している通信経路情報と各通信経路を構成する各通信回線のトラヒック情報および各通信回線に対して予め定められた優先度情報を収集するネットワーク情報収集手段と、
    該ネットワーク情報収集手段が収集した各通信経路情報を記憶装置に記憶し管理するネットワーク情報管理手段と、
    上記ネットワーク情報収集手段が収集した各通信回線のトラヒック情報を記憶装置に記憶し管理するネットワークリソース管理手段と、
    上記ネットワーク情報収集手段が収集した各通信回線の優先度情報を記憶装置に記憶し管理するネットワークポリシー管理手段と、を具備し、
    上記ノード選択手段は、
    上記コンテンツ管理手段が記憶管理する対応付け情報を参照して、ユーザ端末から要求されたコンテンツを保持するエンド端末を検出する第1の手段と、
    該第1の手段で検出したエンド端末から、上記ユーザ管理手段が記憶管理するアクセス制御情報を参照して、コンテンツ要求元のユーザ端末からのアクセスが可能なエンド端末を抽出する第2の手段と、
    該第2の手段で抽出したエンド端末から、上記ユーザポリシー管理手段が記憶管理するユーザポリシー情報を参照して、最大アップロード数が予め定められた値以上のエンド端末を特定する第3の手段と、
    該第3の手段で特定したエンド端末から、上記ユーザリソース管理手段が記憶管理するリソース情報を参照して、リソース使用状況の良好なものから順に予め定められた数のエンド端末を抽出し、該抽出したエンド端末を、上記ユーザ端末から要求されたコンテンツの送信元として選択する第4の手段と、を有すると共に、
    上記ネットワーク情報管理手段が記憶管理する通信経路情報を参照して、上記第3の手段で選択した各エンド端末と当該コンテンツの要求元のユーザ端末間の通信経路を特定する第5の手段と、
    該第5の手段で特定した通信経路を構成する各通信回線の通信品質を、上記ネットワークリソース管理手段が記憶管理する各通信回線のトラヒック情報を参照して取得し、取得した通信品質が予め定められた閾値以上の通信回線を抽出する第6の手段と、
    該第6の手段で抽出した通信回線から、上記ネットワークポリシー管理手段が記憶管理する各通信回線の優先度情報を参照して、予め定められた閾値以上の優先度の通信回線を抽出する第7の手段と、
    該第7の手段で抽出した通信回線からなる通信経路の通信品質を、上記ネットワークリソース管理手段が記憶管理する各通信回線のトラヒック情報を参照して取得し、取得した通信品質の良い順に予め定められた数の通信経路を選択する第8の手段と、
    を有し、
    上記第4の手段は、上記第8の手段が選択した通信経路で接続されるエンド端末から、リソース使用状況の良好な順に予め定められた数のエンド端末を抽出して、上記ユーザ端末から要求されたコンテンツの送信元として選択する
    ことを特徴とするコンテンツ配信支援システム。
  2. 請求項1に記載のコンテンツ配信支援システムであって、
    上記ノード選択手段は、上記送信元候補として選択した1以上の上記エンド端末の1つもしくは上記キャッシュサーバ装置に対して、当該コンテンツの要求元ユーザ端末への送信を指示する手段を有し、
    上記ノード選択手段からの指示を受けた上記エンド端末もしくは上記キャッシュサーバ装置は、当該コンテンツを上記要求元のユーザ端末に送信する
    ことを特徴とするコンテンツ配信支援システム。
  3. 請求項1に記載のコンテンツ配信支援システムであって、
    上記ノード選択手段は、
    上記送信元候補として選択した1以上の上記エンド端末もしくは上記キャッシュサーバ装置へのアクセス情報を当該コンテンツの要求元ユーザ端末に通知する手段を有し、
    上記コンテンツの要求元ユーザ端末は、上記ノード選択手段から送信元候補として通知された1以上の上記エンド端末もしくは上記キャッシュサーバ装置から1つを選択して、当該コンテンツの配信を要求する
    ことを特徴とするコンテンツ配信支援システム。
  4. 請求項1から請求項3のいずれか1項に記載のコンテンツ配信支援システムであって、
    上記ユーザ管理手段が記憶管理するアクセス制御情報は、NAT越えの可否情報を含み、上記ノード選択手段は、上記第2の手段により、上記NAT越えの可否情報を参照して、コンテンツ要求元のユーザ端末からのアクセスが可能なエンド端末を抽出し、
    上記ユーザリソース管理手段が記憶管理するリソース情報は、各々予め定められた周期毎に更新される、当該エンド端末のCPUクロック数と使用率、メモリ量と使用率、および、FTTHを含む回線種別、使用中のネットワークの帯域情報を含み、上記ノード選択手段は、上記第4の手段により、上記エンド端末のCPUクロック数と使用率、メモリ量と使用率、および、FTTHを含む回線種別、使用中のネットワークの帯域情報を参照して、リソース使用状況の良好なものから順に予め定められた数のエンド端末を抽出し、
    上記コンテンツ管理手段が記憶管理するコンテンツ情報は、各エンド端末が新たな配信コンテンツを記憶するたびに当該エンド端末から収集され、かつ、当該コンテンツの特定に用いるコンテンツIDを含み、該コンテンツIDは、当該コンテンツのファイル名を固定長のハッシュダイジェストで表記され、該固定長のハッシュダイジェストで表示されるコンテンツIDに対応付けて当該コンテンツを保持するエンド端末を記憶管理し、上記ノード選択手段は、上記第1の手段により、上記固定長のハッシュダイジェストで表示されるコンテンツIDを検索キーに用いて上記コンテンツ管理手段が記憶管理する情報を参照し、
    上記ネットワークリソース管理手段が記憶管理する各通信回線のトラヒック情報は、上記各外部ネットワーク機器が予め定めた周期毎に計測する、各通信回線のトラヒック方向毎のパケットの通過量情報と破棄量情報を含み、上記ノード選択手段は、上記第6の手段により、上記ネットワークリソース管理手段が記憶管理する各通信回線におけるパケットの通過量情報と破棄量情報を参照して当該通信回線の通信品質を取得し、
    上記ネットワークポリシー管理手段が記憶管理する各通信回線の優先度情報は、当該通信回線へのアクセスの集中を回避させる、もしくは、当該通信回線の利用を奨励させるための情報であり、
    上記ノード選択手段は、上記第7の手段により、通信回線へのアクセスの集中を回避するようもしくは奨励される通信回線を利用するように通信回線を抽出する
    ことを特徴とするコンテンツ配信支援システム。
  5. 請求項1から請求項のいずれか1項に記載のコンテンツ配信支援システムであって、
    上記ネットワーク情報管理手段が記憶管理する通信経路情報は、各エンド端末が属するネットワークエリアを示すネットワーク情報と、各ネットワークエリア間の経路を構成する通信回線を示すパス情報とからなり、
    上記ノード選択手段は、上記第5の手段により、上記ネットワーク情報を参照して上記第3の手段が選択した各エンド端末とコンテンツ要求元のユーザ端末のそれぞれのネットワークエリアを取得し、上記パス情報を参照して、上記取得したネットワークエリア間の経路を構成する通信回線を特定する
    ことを特徴とするコンテンツ配信支援システム。
  6. 請求項から請求項のいずれか1項に記載のコンテンツ配信支援システムであって、
    上記ノード選択手段は、
    上記第1の手段が検出したエンド端末の数、上記第2の手段が抽出したエンド端末の数、上記第3の手段が特定したエンド端末の数、上記第6の手段が抽出した通信回線の数、上記第7の手段が抽出した通信回線の数のいずれかが、それぞれに対して予め定められた閾値以下であれば、
    上記キャッシュサーバ装置を、上記ユーザ端末から要求されたコンテンツの送信元として選択する手段を有する
    ことを特徴とするコンテンツ配信支援システム。
  7. 請求項1から請求項のいずれか1項に記載のコンテンツ配信支援システムであって、
    上記キャッシュサーバ装置は、
    記憶装置に蓄積したコンテンツの複製を、予め定められた条件に従って消去する手段と、
    該手段で上記コンテンツの複製を消去したことを上記コーディネータ装置に通知する手段と
    を有することを特徴とするコンテンツ配信支援システム。
  8. 請求項1から請求項のいずれか1項に記載のコンテンツ配信支援システムにおけるコーディネータ装置によるコンテンツ配信支援方法であって、
    プログラムされたコンピュータ処理手順として、請求項1から請求項のいずれか1項に記載のコーディネータ装置における各手段が実行する処理手順を含み、
    該処理手順を実行することで、上記キャッシュサーバ装置とエンド端末から、上記コンテンツの送信元を選択する
    ことを特徴とするコンテンツ配信支援方法。
  9. コンピュータを、請求項1から請求項のいずれか1項に記載のコンテンツ配信支援システムにおけるコーディネータ装置が具備する各手段として機能させるためのプログラム。
JP2008284358A 2008-11-05 2008-11-05 コンテンツ配信支援システムと方法およびプログラム Expired - Fee Related JP5096293B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008284358A JP5096293B2 (ja) 2008-11-05 2008-11-05 コンテンツ配信支援システムと方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008284358A JP5096293B2 (ja) 2008-11-05 2008-11-05 コンテンツ配信支援システムと方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2010113460A JP2010113460A (ja) 2010-05-20
JP5096293B2 true JP5096293B2 (ja) 2012-12-12

Family

ID=42301986

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008284358A Expired - Fee Related JP5096293B2 (ja) 2008-11-05 2008-11-05 コンテンツ配信支援システムと方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5096293B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011096168A1 (ja) * 2010-02-08 2011-08-11 パナソニック株式会社 映像再生システム、送出装置およびコンテンツ再生装置
JP5616801B2 (ja) * 2011-01-11 2014-10-29 日本放送協会 利用者端末および配信トポロジ組替プログラム
US20140052812A1 (en) * 2011-04-22 2014-02-20 Nec Corporation Content distribution system, control apparatus, and content distribution method
KR101499809B1 (ko) * 2013-02-01 2015-03-11 김형석 컨텐츠 관리 서버, 컨텐츠 관리 방법 및 컨텐츠 관리 시스템
JP6756207B2 (ja) 2016-09-14 2020-09-16 富士ゼロックス株式会社 情報処理装置及びプログラム
CN114900562B (zh) * 2022-05-09 2023-07-21 北京百度网讯科技有限公司 一种资源获取方法、装置、电子设备和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001290787A (ja) * 2000-04-10 2001-10-19 Ntt Communications Kk データ配信方法及びデータ配信プログラムを格納した記憶媒体
JP4410963B2 (ja) * 2001-08-28 2010-02-10 日本電気株式会社 コンテンツ動的ミラーリングシステム、
JP2005018293A (ja) * 2003-06-24 2005-01-20 Kanazawa Inst Of Technology コンテンツ配信制御装置、コンテンツ配信制御方法およびコンテンツ配信制御プログラム
US7174385B2 (en) * 2004-09-03 2007-02-06 Microsoft Corporation System and method for receiver-driven streaming in a peer-to-peer network
JP2006171822A (ja) * 2004-12-13 2006-06-29 Nippon Telegr & Teleph Corp <Ntt> コンテンツ配信方法
JP4103892B2 (ja) * 2005-01-26 2008-06-18 オンキヨー株式会社 ピアツーピアコンテンツ配信システム

Also Published As

Publication number Publication date
JP2010113460A (ja) 2010-05-20

Similar Documents

Publication Publication Date Title
US20220174010A1 (en) Updating routing information based on client location
JP5096293B2 (ja) コンテンツ配信支援システムと方法およびプログラム
DK2852125T3 (en) SELECTION OF SERVER FOR DISTRIBUTION OF CONTENT
JP2013168139A (ja) 負荷均衡装置、負荷均衡方法及び階層化データセンターシステム
JP2007514995A (ja) エンタープライズ・ストレージ・システムを管理するためのコンピュータ・システム、方法、およびプログラム
JP2010273298A (ja) コンテンツ配信システム、配信制御装置及び配信制御プログラム
JPWO2013157042A1 (ja) 情報処理システム、管理サーバ群、および、サーバ管理プログラム
JP5488321B2 (ja) 制御プログラム、中継サーバ装置及び中継制御方法
JP2013183241A (ja) 配置サーバ、情報処理システム、キャッシュ配置方法、キャッシュ配置プログラム
JP3698073B2 (ja) サーバ選択装置、方法、プログラム及び該プログラムを記録した記録媒体
JP2010199842A (ja) キャッシュ設計システムと方法およびプログラム
JP6712744B2 (ja) ネットワークシステム、キャッシュ方法、キャッシュプログラム、管理装置、管理方法及び管理プログラム
Kamel et al. CAINE: A context-aware information-centric network ecosystem
JP2019009610A (ja) エッジ装置、データ処理システム、データ送信方法、及びプログラム
JP5399276B2 (ja) コンテンツ配信システムと方法およびプログラム
JP5272991B2 (ja) 情報通信システム、情報通信方法及びプログラム
JPWO2012029248A1 (ja) データ転送システム
JP5741956B2 (ja) 中継装置および中継方法
KR101310769B1 (ko) 스마트 라우터 및 그 제어방법, 및 이를 이용한 스마트 네트워크 서비스 제공 시스템 및 방법
Hsu et al. DiffServ‐based bandwidth‐constrained anycast routing in a mobile IPv6 network
US9942311B2 (en) Method and apparatus for transferring content among large clusters of storage devices to achieve a target replication distribution
JP5093274B2 (ja) 端末装置及びファイル送信システム
JP2021111795A (ja) ネットワークシステム、通信制御装置、および通信制御方法
JP2012169789A (ja) 負荷分散サーバ及びサーバ選択方法及びサーバ選択プログラム
JP2012089015A (ja) 分散情報処理システム、分散情報処理方法及びデータ転送装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110608

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110608

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110616

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110704

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110719

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120501

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120605

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120619

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120629

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120918

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120920

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150928

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees