JP5776339B2 - ファイル配布方法、ファイル配布システム、マスタサーバ、及びファイル配布プログラム - Google Patents
ファイル配布方法、ファイル配布システム、マスタサーバ、及びファイル配布プログラム Download PDFInfo
- Publication number
- JP5776339B2 JP5776339B2 JP2011125588A JP2011125588A JP5776339B2 JP 5776339 B2 JP5776339 B2 JP 5776339B2 JP 2011125588 A JP2011125588 A JP 2011125588A JP 2011125588 A JP2011125588 A JP 2011125588A JP 5776339 B2 JP5776339 B2 JP 5776339B2
- Authority
- JP
- Japan
- Prior art keywords
- distribution
- server
- file
- node
- configuration
- 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
Links
- 238000000034 method Methods 0.000 title claims description 31
- 238000012545 processing Methods 0.000 claims description 14
- 230000000717 retained effect Effects 0.000 claims 2
- 238000004891 communication Methods 0.000 description 36
- 238000007726 management method Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 20
- 238000012544 monitoring process Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 14
- 238000012986 modification Methods 0.000 description 14
- 230000004048 modification Effects 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
- G06F16/1837—Management specially adapted to peer-to-peer storage networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Description
例えば、システム内に1つのマスタサーバを配置し、このマスタサーバが、システム内の各サーバに対して共有すべきファイルを配布するとともに、配布に関する管理情報を一元的に管理するシステム(例えば、ビットトレント(BitTorrent)(登録商標))が利用されている。
また、予め設定されたツリー形状は固定的であるため、システムの状況に応じた臨機応変な対応ができない。
1つの側面では、本発明は、ファイル(データ)の配布に要する時間の短縮化を図ることを目的とする。
また、他の側面では、本発明は、システムの状況に応じてファイル(データ)の配布経路を変更可能とすることを目的とする。
また、1態様によれば、他の側面では、本発明は、システムの状況に応じてファイル(データ)の配布経路が変更可能となる。
また、1態様によれば、ファイル(データ)の配布の際の、配信経路に冗長性を持たせることができる。
以下、図面を参照して本技術の実施形態の一例の構成を説明する。
図1は実施形態の一例としてのファイル配布システム1の構成を示す模式図であり、図2は、当ファイル配布システム1のネットワーク構成の例を示す模式図である。
本ファイル配布システム1は、配布ファイル(データ)を配布(共有)するためのシステムである。
マスタサーバ2と、複数のサーバ3とは、図2に示すように、ネットワーク10を介して相互に接続されている。ネットワーク10は、例えばLAN(Local Area Network)である。
マスタサーバ2は、このような配布ファイルの全てを管理し、配布するサーバ機能を備えたコンピュータ(サーバコンピュータ)である。
以下、実施形態の一例としてのマスタサーバ2の構成について説明する。
マスタサーバ2は、図1に示すように、サーバ割当部11、配布構成作成部12、配布部13、状態監視データベース(DB:Data Base)14、及び配布ファイルデータベース(DB)18を備える。
サーバ割当部11は、配布元サーバとするサーバ3を選出する。サーバ割当部11は、後述する状態監視データベース14に保持されている、サーバ3のCPU負荷、ネットワーク負荷及びネットワーク物理構成などの条件を統合的に鑑みて、配布元サーバとするサーバ3を選出する。
また、例えば、サーバ3間のネットワーク負荷を優先して配布元サーバとするサーバ3を選出する場合には、サーバ割当部11は、後述するネットワーク負荷データベース16を参照して、全てのサーバ3をネットワーク負荷の軽いものから順に並べ、上位の数台のサーバ3もしくは上位数パーセントのサーバ3を選択する。
配布構成作成部12は、配布ファイルの配布経路を定義している配布構成を作成する。
その際、配布構成作成部12は、配布ファイルの種類(サイズや用途など)に応じ、配布ファイルをグループ化する。以下、本ファイル配布システム1において配布すべき配布ファイルの数をn(個)(n=2以上の整数)とする。
更に、配布構成作成部12は、これらのグループに基づいて、配布ファイルを配布するための配布構成を作成する。配布構成作成部12における配布ファイルの配布構成の作成手順を以下に述べる。
配布部13は、配布ファイルが配布対象の全てのサーバ3に配布されるように制御を行なう。例えば、配布部13は、サーバ3を配布元サーバとして機能させるために、サーバ割当部11が選択した、配布元サーバとして機能させたいサーバ3に配布ファイルをプッシュする。また、配布部13は、サーバ3間でP2P方式によるファイル配布を開始させるための命令を発行する。
ネットワーク負荷データベース16は、各サーバ3間を接続する個々のリンクの負荷を管理するデータベースであって、図4に示す例においては、ファイル配布システム1に存在する各リンクの始点のサーバ3のサーバIDである「From:サーバID」(本例においてはIPアドレス)と、当該リンクの終点のサーバ3のサーバIDである「To:サーバID」(本例においてはIPアドレス)と、当該リンクのネットワーク負荷(パーセント表記)とが管理されている。なお、リンクの「始点」及び「終点」とは、スイッチに近いほうを「始点」、スイッチから遠いほうを「終点」と便宜上表す。
図6に示す例においては、配布ファイルデータベース18は、配布元サーバIDリスト31、全配布ファイルIDリスト32、自サーバ取得ファイルIDリスト33、配布先サーバIDリスト34、及び配布先サーバ取得ファイルIDリスト35を有する。配布元サーバIDリスト31は、配布元サーバとして設定されたサーバ3のIDのリストである。また、全配布ファイルIDリスト32は、その配布元サーバが下位のサーバ3に配布すべき配布ファイルのIDリストである。自サーバ取得ファイルIDリスト33は、各サーバ3が既に取得している配布ファイルを識別するIDの一覧をリストとして表す。配布先サーバIDリスト34は、配布ファイルの配布先である一階層下のノードのサーバ3を識別するIDの一覧をリストとして表す。更に、配布先サーバ取得ファイルIDリスト35は、一階層下のノードのサーバ3に配布すべきファイルを識別するIDのリストを一覧をして表す。
状態監視データベース14、CPU負荷データベース15、ネットワーク負荷データベース16、ネットワーク物理構成データベース17、及び配布ファイルデータベース18のデータは、例えば図示しないHDDに記憶されている。
また、サーバ3は、マスタサーバ2によって配布ファイルが配布される先の配布先サーバとして機能するほか、この配布された配布ファイルを、他のサーバ3に配布する配布元サーバとしても機能することができる。サーバ3は、相互にピアツーピア(P2P)通信が可能である。なお、P2P通信とは、マスタサーバ2を介さないサーバ3間での通信であり、既知の種々の手法で実施することができる。
次に、サーバ3の構成を説明する。
サーバ3は、図示しないCPU、メモリ(ROMやRAM)、ハードディスクドライブ等を備えるコンピュータまたは通信装置である。
各サーバ3は、図1に示すように、それぞれ、ファイル配布制御部21、ファイル管理部22及び前述した配布ファイルデータベース18と同様の配布ファイルデータベース23を備える。
ファイル管理部22は、自サーバ3のID(本実施形態ではIPアドレス)をキーとして、配布ファイルデータベース23の配布元サーバIDリスト31を検索し、自サーバ3の上位のノードのサーバIDを知ることができる。なお、「上位」及び「下位」とは、ルートに近い方を「上位」、末端に近いほうを「下位」と呼ぶ。
また、ファイル管理部22は、自サーバ3のIDをキーとして、配布ファイルデータベース23の配布先サーバIDリスト34を検索することによって、自サーバ3が、上位サーバから受け取った配布ファイルの部分集合を配布すべき相手先の下位サーバ3を知ることができる。
なお、上記の実施形態の一例では、マスタサーバ2の配布ファイルデータベース18と、サーバ3の配布ファイルデータベース23とが同様であると説明したが、配布ファイルデータベース18と配布ファイルデータベース23とが異なっていてもよい。例えば、サーバ3の配布ファイルデータベース23に、自サーバ3の上位の配布元サーバと、これに対応する情報のみが格納されていてもよい。
(B)システム動作
次に、上記の如く構成された実施形態の一例としてのファイル配布システム1の動作を説明する。
[1]以下に、図8を参照して、配布構成作成部12による配布構成20の作成例を説明する。ここでは、配布構成20の一例として、複数のノードからなるツリー構成を生成する例を示す。
(1−1)サーバ3全i台のうちのj%のサーバを配布元サーバとして選択する。jは、事前にシステムの状態などによって決定してもよい。
(1−2)次に、配布すべき配布ファイル数の総数がnのとき、n!(階乗)>i×jが成立する場合には、n個の配布ファイルをm個のグループに分割する。その際、mの値は、n/m<i×jとなるように決定する。
(1−3)次に、ツリーを生成する。m(本例ではm=n:但し、n<i×j)個のグループから、図8のツリーのように、m−1分木から分岐しm−1=1になるまで、配布構成20としてのツリーを生成する。例えば、図8に示す例ではルートからm−1本の分岐を生成させ、その一階層下のノードからはそれぞれm−2の分岐を生成させ、この枝の生成を枝の本数が1本になるまで繰り返す。
m−1本木を生成する。ファイルをファイル1、ファイル2、ファイル3、ファイル4…のようにソートする。そして、ソートしたファイルの並びの先頭のファイルを始点とし、m−1個のファイルを取得する。次に、ソートしたファイルの並びのファイルの並びの2番目のファイルを始点としてm−1個のファイルを取得する。次に、ソートした3番目のファイルを始点としてm−1個のファイルを取得していき、上記の処理を繰り返す。このとき、ソートしたファイルの並びの最後まで達しても、取得したファイルの数がm−1に達しない場合には、ソートしたファイルの並びの先頭から不足分を取得する。この操作を、枝の本数がm−1本になるまで繰り返す。
上記の操作を、枝の本数が1本になるまで繰り返す。
[2]次に、図9に示すように、サーバ機能プランニング部11は、上記のように生成した配布構成20としてのツリーに、サーバ3を割り当てる。サーバ3の割り当て方法を以下に説明する。
(2−1)まず、サーバ3全i台のうちのj%の台数のサーバ3を、CPU負荷やネットワーク負荷を考慮して選択しソートする。
(2−2)次に、上記で作成したツリーに対し(2−1)のソート順にi×j台のサーバ3を、ツリーの上位のノードから下位のノードに、(i×j/100)/(ノード総数)台ずつそれぞれ割り当てる。
なお、上記(2−1)において、CPU負荷やネットワーク負荷を考慮してサーバ3を選択する以外にも、ネットワーク物理構成を考慮してサーバ3を選択することも可能である。その方法を、図10を参照して説明する。
このとき、CPU負荷に鑑みて、配布元サーバとするサーバ3を2台選択する場合には、サーバ3−3とサーバ3−4とが選択される。
そこで、サーバ3−1を選択した後に、次点の候補のサーバ3−4とサーバ3−3が接続されているスイッチをチェックする。接続元のスイッチが一致する場合には、サーバ3−3とはスイッチが異なるサーバ3のうち、CPU負荷の最も軽いサーバ3−1を選択して、最終的には、サーバ3−3と3−1との2台を選択する。このように選択を行なうことにより、スイッチS2が故障してサーバ3−3が使用不可となった場合でも、スイッチS1の配下にあるサーバ3−1により配布ファイルの配布が行われることが保証される。
図11の例では、配布ファイルは、分割の必要のない、ほぼ同じサイズのファイルが4つ存在するとする。この場合、配布すべき配布ファイル数nは4であり、グループ数mも4である。このように、例では、各グループに配布すべき配布ファイルが1つずつ含まれる場合、グループを「配布ファイル」と称することもある。
マスタサーバ3の配布構成作成部12は、これら4つの配布ファイルのすべてが含まれる集合であるファイル群{1,2,3,4}をノード1とし、これら4つの配布ファイルのうちの3つが含まれる部分集合であるファイル群{1,2,3}をノード2、ファイル群{2,3,4}をノード3、ファイル群{3,4,1}をノード4とする。前述のように、この際のノードの形成方法は、以下の通りである。ファイルをファイル1、ファイル2、ファイル3、ファイル4のように、ファイルサイズ順やファイル名順などでソートする。そして、ソートしたファイルの並びの先頭のファイルを始点とし、n−1個のファイルを取得する。次に、ソートしたファイルの並びのファイルの並びの2番目のファイルを始点としてn−1個のファイルを取得する。次に、ソートした3番目のファイルを始点としてn−1個のファイルを取得していき、上記の処理を繰り返す。このとき、ソートしたファイルの並びの最後まで達しても、取得したファイルの数がn−1に達しない場合には、ソートしたファイルの並びの先頭から不足分を取得する。
そして、これらのノード1〜22のそれぞれにサーバ3を割り当てる。
例えば、ノード1にサーバa、ノード2にサーバb、ノード3にサーバc、ノード4にサーバd、ノード5にサーバe、ノード6にサーバf、ノード7にサーバg、ノード8にサーバh、ノード9にサーバi、ノード10にサーバj、ノード11にサーバk、ノード12にサーバl…をそれぞれ割り当てる。この際、割り当てるサーバa〜uは、前述のごとくサーバをCPU負荷及び/又はネットワーク負荷に応じてソートし、ネットワーク構成を鑑みて選択する。
次に、各サーバ3は不足している配布ファイルを取得する。各サーバ3のファイル管理部22は、配布ファイルデータベース23を参照して、他のサーバ3に、不足している配布ファイルを要求する。要求されたサーバ3は、要求してきたサーバ3が属するノードに、既に同ファイルを取得したサーバ3が存在すれば、そのサーバ3に不足している配布ファイルを要求し、同ファイルを送信する。更に、同ノードにないファイルであれば、隣接するノードのサーバに問い合わせる。この問い合わせは再帰的に行なわれるため、このファイルを取得できる。
不足する配布ファイルを補完しあうペアは、事前に定義して各サーバ3に記憶させておいても、配布ファイルの付加情報としてマスタサーバ2から送信されてもよい
また、上記の配布構成は、ベン図でも表すことができる。図12は、図11の配布構成をベン図で表した配布構成を示す。
このように、配布構成の作成は、配布ファイルの部分集合を定義する作業であると考えることもできる。
あるいは、別の実施形態として、マスタサーバ2が配布構成とサーバの割り当てとを定義して、定義した配布構成とサーバの割り当てとをサーバ3に記憶させておいてもよい。
まず、ステップS101において、マスタサーバ2の配布構成作成部12により、配布ファイルの種類やサイズが大きい場合はそれを分割し、m個のグループを作成する。
次に、ステップS102において、マスタサーバ3のサーバ機能プランニング部11により、m個のグループからツリーを定義して、ツリーのそれぞれのノードにグループの部分集合を割り当てる。その際、最上位のノードにはグループの全てが含まれ、下位ノードに行くほどグループ数が少なくなるようなツリーを形成する。
次に、ステップS104において、マスタサーバ2の配布部13により、m個の配布ファイルを持つノードに属するサーバ3が、m個の配布ファイルを持つルートノードに属する任意の1台のサーバ3に、そのノードに属するm個の配布ファイルをプッシュする。なお、その際、ルートノードに複数のサーバ3が存在する場合、ファイルの配布を受けたサーバ3から、ルートノードに属する他の全てのサーバ3が、m個の配布ファイルをP2Pで取得してもよい。ルートノードの配布ファイルを取得したサーバ3は、配布完了の旨の通知をマスタサーバ2へ通知する。
次に、ステップS107において、マスタサーバ2は、全てのサーバ3から、ノードに属する配布ファイルの受領完了通知を受ける。
ステップS109において、各サーバ3は、自分の属するノードのファイル数+1のノードから、不足している配布ファイルをP2Pで取得する。
次に、ステップS110において、ファイル数+2のノードから不足している配布ファイルを取得し、これをファイル数+k(=m−ファイル数)分繰り返し、最終的にはn個全ての配布ファイルが、配布元サーバとして選択されたサーバ3に配布される。
最後に、ステップS112において、マスターサーバ2の配布部13が、サーバ3間でP2P方式によるファイル配布を開始させるための命令を発行し、これにより、配布元サーバとして選択されていない他のサーバ3にも全ての配布ファイルが配布される。
更には、マスタサーバ2が一部のサーバ3にのみ配布ファイルを配布するので、ネットワーク負荷を低減することができる。
(C)第一変形例
以下、図面を参照して本技術の実施形態の変形例の構成を説明する。
図14は実施形態の変形例としてのファイル配布システムにおける配布構造を示す模式図であり、図15は、この配布構造を表すベン図である。
図14の変形例では、配布構成の作成方法が上記例とは異なり、枝の本数が、上位ノードと下位ノードとで等しい。それ以外のマスタサーバ2及びサーバ3の機能及び構成については、上記の実施形態と同じである。
サーバ3−1は、サーバ3−3,3−4に配布ファイル1を配布し、サーバ3−2は、サーバ3−5,3−6に配布ファイル2を配布する。
その後、サーバ3−3とサーバ3−5とが配布ファイル1,2を交換し、サーバ3−4とサーバ3−6とが配布ファイル1,2を交換しあう。この交換時には、サーバ3−3による配布ファイル1の送信、サーバ3−5による配布ファイル1の受信、サーバ3−5による配布ファイル2の送信、サーバ3−3による配布ファイル2の受信が同時に行われる。これにより、配布速度を向上させることができる。
図15は、図14の配布形態をベン図で表した図である。
図15において、「1(図中では○付き数字)」で示す領域A1はファイル1、「2(図中では○付き数字)」で示す領域A2はファイル2の配布をそれぞれ示す。また、各領域A1,A2の積A1∩A2は、ファイル1,2の配布を示す。
このように、前述の実施形態の効果に加えて、第一変形例においては、サーバ3−3による配布ファイル1の送信、サーバ3−5による配布ファイル1の受信、サーバ3−5による配布ファイル2の送信、サーバ3−3による配布ファイル2の受信が同時に行われるため、配布速度を向上させることができる。
(D)第二変形例
以下、図面を参照して本技術の実施形態の第二変形例の構成を説明する。
図16は実施形態の第2変形例としてのファイル配布システムにおける配布構造を示す模式図である。
図16に示す例においては、図14と同様にマスタサーバ2からサーバ3に配布ファイル1と2を配布する場合を示すが、2階層目よりも3階層目のほうが枝の本数が多い。すなわち、図16に示すように、上位のノードから出る枝数よりも、下位のノードから出る枝数を多くしてもよい。それ以外のマスタサーバ2及びサーバ3の機能及び構成については、上記の実施形態と同じである。
(E)その他
なお、開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
また、上記の実施形態においては、配布ファイルを、更新ファイルや修正ファイルとして説明したが、例えば、配布ファイルが、マルチメディアファイルなど、他の形式のファイルでもよい。
また、上記の実施形態においては、マスタサーバ2の配布部13による制御に従い、各サーバ3に、マスタサーバ2または上位のサーバ3からファイルがプッシュされるが、そのファイルの分配の数及び/又はファイルサイズが、例えば、サーバの負荷(CPU負荷、ネットワーク負荷など)に応じて異なってもよい。
本技術においては、マスタサーバ2のCPU(Central Processing Unit)が、ファイル配布プログラムを実行することにより、サーバ割当部11、配布構成作成部12、配布部13、状態監視データベース14、及び配布ファイルデータベース18として機能するようになっている。
なお、これらのサーバ割当部11、配布構成作成部12、配布部13、状態監視データベース14、配布ファイルデータベース18、ファイル配布制御部21、ファイル管理部22、及び配布ファイルデータベース23としての機能を実現するためのプログラム(ファイル配布プログラム)は、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置又は外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
11 サーバ割当部(割当部)
12 配布構成作成部(作成部)
13 配布部(配布部)
14 状態監視データベース(システム状態データベース)
15 CPU負荷データベース
16 ネットワーク負荷データベース
17 ネットワーク物理構成データベース
18,23 配布ファイルデータベース(配布ファイル管理情報)
100 ファイル配布方法
2 マスタサーバ
20 配布構成
21 ファイル配布制御部
22 ファイル管理部
3 サーバ(通信装置)
31 配布元サーバIDリスト(上位ノード情報)
32 全配布ファイルIDリスト(配布対象ファイル情報)
33 自サーバ取得ファイルIDリスト(保持配布ファイル情報)
34 配布先サーバIDリスト(下位ノード情報)
35 配布先サーバ取得ファイルIDリスト(下位保持配布ファイル情報)
Claims (12)
- 複数の配布ファイルを保持するマスタサーバから複数のサーバに前記複数の配布ファイルを配布するファイル配布方法であって、
前記マスタサーバを頂点とし、複数の前記配布ファイルが配布ファイル群として割り当てられるノードを複数備えるツリー構造を有し、下位のノードに割り当てられる前記配布ファイル群が、上位のノードに割り当てられる前記配布ファイル群の部分集合となる配布構成を作成し、
前記マスタサーバによって、前記マスタサーバ及び前記複数のサーバの少なくともいずれかの状態を示すシステム状態情報に基づいて、前記配布構成のノードのそれぞれに対して、CPU(Central Processing Unit)負荷が低いサーバを前記配布構成の上位のノードに割り当てることで、前記サーバを割り当て、
前記マスタサーバによって、前記配布構成に基づいて、各サーバに対して、当該サーバに対応するノードに割り当てられる配布ファイルと、当該ノードの上位のノードを示す上位ノード情報、配布対象の配布ファイルを示す配布対象ファイル情報、当該ノードが保持する配布ファイルを示す保持配布ファイル情報、当該ノードの下位のノードを示す下位ノード情報、および当該下位ノードが保持すべき配布ファイルを示す下位保持配布ファイル情報を含む配布ファイル管理情報とを配布し、
各ノードに対応するサーバによって、前記マスタサーバから受信した前記配布ファイル管理情報に基づいて、自サーバが属するノードの一階層下のノードに対応するサーバに、当該サーバに割り当てられる配布ファイルを配布し、
各ノードに対応するサーバによって、前記保持配布ファイル情報に基づいて、前記配布対象ファイル情報に示されている全配布対象ファイルのうち、該サーバが未所有の配布ファイルが存在する場合に、当該不足配布ファイルを、前記マスタサーバ以外の他のサーバに問い合わせることにより取得することを特徴とする、ファイル配布方法。 - 前記マスタサーバによる、前記配布構成のノードのそれぞれに対する前記サーバの割り
当ては、前記サーバの重複が生じないように行なわれることを特徴とする請求項1に記載の方法。 - サーバのうち、当該サーバが始点又は終点をなすネットワークの負荷が低いサーバを前記配布構成の上位のノードに割り当てることを特徴とする請求項1又は2に記載の方法。
- 異なるスイッチに接続されている複数のサーバが存在する場合、該複数のサーバのうちCPU負荷の低い方のサーバが優先的に前記配布構成の上位のノードに割り当てられるように、サーバを前記配布構成の上位のノードに割り当てることを特徴とする請求項3に記載の方法。
- 複数の配布ファイルを保持するマスタサーバと、該配布ファイルが配布される複数のサーバとを備えるファイル配布システムであって、
前記マスタサーバは、
前記マスタサーバを頂点とし、複数の前記配布ファイルが配布ファイル群として割り当てられるノードを複数備えるツリー構造を有し、下位のノードに割り当てられる前記配布ファイル群が、上位のノードに割り当てられる前記配布ファイル群の部分集合となる配布構成を作成する配布構成作成部と、
前記ファイル配布システムの状態をシステム状態情報として管理するシステム状態データベースと、
前記システム状態情報に基づいて、前記配布構成のノードのそれぞれに対して、CPU(Central Processing Unit)負荷が低いサーバを前記配布構成の上位のノードに割り当てることで、前記サーバを割り当てる割当部と、
前記配布構成における各ノードのそれぞれに対して、当該ノードの上位のノードを示す上位ノード情報と、配布対象の配布ファイルを示す配布対象ファイル情報と、当該ノードが保持する配布ファイルを示す保持配布ファイル情報と、当該ノードの下位のノードを示す下位ノード情報と、当該下位ノードが保持すべき配布ファイルを示す下位保持配布ファイル情報とを、配布ファイル管理情報として管理する配布ファイル管理データベースと、
前記割当部で割り当てられた最上位のサーバに対して、当該サーバに対応するノードに割り当てられる配布ファイルと前記配布ファイル管理情報とを配布する配布部とを備え、
各ノードに対応するサーバは、
受信した前記配布ファイル管理情報に基づいて、自サーバが属するノードの一階層下のノードに対応するサーバに、当該サーバに割り当てられる配布ファイルを配布するファイル配布制御部と、
前記保持配布ファイル情報に基づいて、前記配布対象ファイル情報に示されている全配布対象ファイルのうち、該サーバが未所有の配布ファイルが存在する場合に、当該不足配布ファイルを、前記マスタサーバ以外の他のサーバに問い合わせることにより取得するファイル管理部とを備えることを特徴とする、ファイル配布システム。 - 複数の配布ファイルを保持し、複数のサーバに前記複数の配布ファイルを配布するマスタサーバであって、
前記マスタサーバを頂点とし、複数の前記配布ファイルが配布ファイル群として割り当てられるノードを複数備えるツリー構造を有し、下位のノードに割り当てられる前記配布ファイル群が、上位のノードに割り当てられる前記配布ファイル群の部分集合となる配布構成を作成する配布構成作成部と、
システムの状態をシステム状態情報として管理するシステム状態データベースと、
前記システム状態情報に基づいて、前記配布構成のノードのそれぞれに対して、CPU(Central Processing Unit)負荷が低いサーバを前記配布構成の上位のノードに割り当てることで、前記サーバを割り当てる割当部と、
前記配布構成における各ノードのそれぞれに対して、当該ノードの上位のノードを示す上位ノード情報と、配布対象の配布ファイルを示す配布対象ファイル情報と、当該ノードが保持する配布ファイルを示す保持配布ファイル情報と、当該ノードの下位のノードを示す下位ノード情報と、当該下位ノードが保持すべき配布ファイルを示す下位保持配布ファイル情報とを、配布ファイル管理情報として管理する配布ファイル管理データベースと、
前記割当部によって割り当てられた最上位のサーバに対して、当該サーバに対応するノードに割り当てられる配布ファイルと前記配布ファイル管理情報とを配布する配布部とを備えることを特徴とするマスタサーバ。 - 前記割当部による、前記配布構成のノードのそれぞれに対する前記サーバの割り当ては、前記サーバの重複が生じないように行なわれることを特徴とする請求項6に記載のマスタサーバ。
- 前記割当部は、サーバのうち、当該サーバが始点又は終点をなすネットワークの負荷が低いサーバを前記配布構成の上位のノードに割り当てることを特徴とすることを特徴とする請求項6又は7に記載のマスタサーバ。
- 前記割当部は、異なるスイッチに接続されている複数のサーバが存在する場合、該複数のサーバのうちCPU負荷の低い方のサーバが優先的に前記配布構成の上位のノードに割り当てられるように、前記配布構成を構成することを特徴とする請求項8に記載のマスタサーバ。
- 複数の配布ファイルを保持するマスタサーバから複数のサーバに前記複数の配布ファイルを配布するファイル配布プログラムであって、
前記ファイル配布プログラムは前記マスタサーバによって実行されると、前記マスタサーバに、
前記マスタサーバを頂点とし、複数の前記配布ファイルが配布ファイル群として割り当てられるノードを複数備えるツリー構造を有し、下位のノードに割り当てられる前記配布ファイル群が、上位のノードに割り当てられる前記配布ファイル群の部分集合となる配布構成を作成させ、
前記マスタサーバ及び前記複数のサーバの少なくともいずれかの状態を示すシステム状態情報に基づいて、前記配布構成のノードのそれぞれに対して、CPU(Central Processing Unit)負荷が低いサーバを前記配布構成の上位のノードに割り当てることで、前記サーバを割り当て、
前記配布構成における各ノードのそれぞれに対して、当該ノードの上位のノードを示す上位ノード情報と、配布対象の配布ファイルを示す配布対象ファイル情報と、当該ノードが保持する配布ファイルを示す保持配布ファイル情報と、当該ノードの下位のノードを示す下位ノード情報と、当該下位ノードが保持すべき配布ファイルを示す下位保持配布ファイル情報とを、配布ファイル管理情報として管理させ、
前記割り当てられた最上位のサーバに対して、当該サーバに対応するノードに割り当てられる配布ファイルと前記配布ファイル管理情報とを配布させ、
前記複数のサーバによって実行されたときに、
前記マスタサーバから受信した前記配布ファイル管理情報に基づいて、自サーバが属するノードの一階層下のノードに対応するサーバに、当該サーバに割り当てられる配布ファイルを配布させ、
前記保持配布ファイル情報に基づいて、前記配布対象ファイル情報に示されている全配布対象ファイルのうち、該サーバが未所有の配布ファイルが存在する場合に、当該不足配布ファイルを、前記マスタサーバ以外の他のサーバに問い合わせることにより取得させることを特徴とする、ファイル配布プログラム。 - 前記マスタサーバによる、前記配布構成のノードのそれぞれに対する前記サーバの割り当ては、前記サーバの重複が生じないように行なわれることを特徴とする請求項10に記載のファイル配布プログラム。
- 前記割当部による、前記配布構成のノードのそれぞれに対する前記サーバの割り当ては、前記サーバの重複が生じないように行なわれることを特徴とする請求項5に記載のファイル配布システム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011125588A JP5776339B2 (ja) | 2011-06-03 | 2011-06-03 | ファイル配布方法、ファイル配布システム、マスタサーバ、及びファイル配布プログラム |
US13/476,117 US20120311099A1 (en) | 2011-06-03 | 2012-05-21 | Method of distributing files, file distribution system, master server, computer readable, non-transitory medium storing program for distributing files, method of distributing data, and data distribution system |
EP12170585.9A EP2530613A3 (en) | 2011-06-03 | 2012-06-01 | Method of distributing files, file distribution system, master server, computer readable, non-transitory medium storing program for distributing files, method of distributing data, and data distribution system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011125588A JP5776339B2 (ja) | 2011-06-03 | 2011-06-03 | ファイル配布方法、ファイル配布システム、マスタサーバ、及びファイル配布プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012252593A JP2012252593A (ja) | 2012-12-20 |
JP5776339B2 true JP5776339B2 (ja) | 2015-09-09 |
Family
ID=46384138
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011125588A Expired - Fee Related JP5776339B2 (ja) | 2011-06-03 | 2011-06-03 | ファイル配布方法、ファイル配布システム、マスタサーバ、及びファイル配布プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20120311099A1 (ja) |
EP (1) | EP2530613A3 (ja) |
JP (1) | JP5776339B2 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8930416B2 (en) | 2012-08-13 | 2015-01-06 | Hulu, LLC | Job dispatcher of transcoding jobs for media programs |
US9155013B2 (en) * | 2013-01-14 | 2015-10-06 | Qualcomm Incorporated | Cell range expansion elasticity control |
JP5724154B2 (ja) * | 2013-05-16 | 2015-05-27 | 株式会社Skeed | データ配信システム、データ配信のためのデータ通信装置およびプログラム |
JP6303300B2 (ja) * | 2013-06-25 | 2018-04-04 | 富士通株式会社 | 制御依頼方法、情報処理装置、システム、およびプログラム |
CN103455577A (zh) * | 2013-08-23 | 2013-12-18 | 中国科学院计算机网络信息中心 | 云主机镜像文件的多备份就近存储和读取方法及系统 |
US10108692B1 (en) * | 2013-10-15 | 2018-10-23 | Amazon Technologies, Inc. | Data set distribution |
CN104092719B (zh) * | 2013-12-17 | 2015-10-07 | 深圳市腾讯计算机系统有限公司 | 文件传输方法、装置及分布式集群文件系统 |
JP2016042284A (ja) * | 2014-08-18 | 2016-03-31 | 富士通株式会社 | 並列計算機システム、管理装置、並列計算機システムの制御方法及び管理装置の制御プログラム |
US20180336061A1 (en) * | 2017-05-16 | 2018-11-22 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Storing file portions in data storage space available to service processors across a plurality of endpoint devices |
JP6940343B2 (ja) * | 2017-09-12 | 2021-09-29 | 株式会社オービック | 配信管理システムおよび配信管理方法 |
CN107770170B (zh) * | 2017-10-18 | 2020-08-18 | 陕西云基华海信息技术有限公司 | 一种数据共享平台系统 |
US10367957B1 (en) * | 2018-10-12 | 2019-07-30 | Xerox Corporation | Highly-scalable native fleet management |
US10366086B1 (en) * | 2018-10-12 | 2019-07-30 | Xerox Corporation | Sorting of devices for file distribution |
US10979488B2 (en) | 2018-11-16 | 2021-04-13 | International Business Machines Corporation | Method for increasing file transmission speed |
US10983714B2 (en) * | 2019-08-06 | 2021-04-20 | International Business Machines Corporation | Distribution from multiple servers to multiple nodes |
CN113094177A (zh) * | 2021-04-21 | 2021-07-09 | 上海商汤科技开发有限公司 | 一种任务分发系统、方法、装置、计算机设备及存储介质 |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4953080A (en) * | 1988-04-25 | 1990-08-28 | Hewlett-Packard Company | Object management facility for maintaining data in a computer system |
US5721914A (en) * | 1995-09-14 | 1998-02-24 | Mci Corporation | System and method for hierarchical data distribution |
US6216140B1 (en) * | 1997-09-17 | 2001-04-10 | Hewlett-Packard Company | Methodology for the efficient management of hierarchically organized information |
JP2001051805A (ja) * | 1999-08-11 | 2001-02-23 | Fujitsu Ltd | リモートファイル制御装置 |
JP2001067279A (ja) * | 1999-08-27 | 2001-03-16 | Pfu Ltd | 情報配付システムおよび記録媒体 |
US7117273B1 (en) * | 2000-01-25 | 2006-10-03 | Cisco Technology, Inc. | Methods and apparatus for maintaining a map of node relationships for a network |
US6947963B1 (en) * | 2000-06-28 | 2005-09-20 | Pluris, Inc | Methods and apparatus for synchronizing and propagating distributed routing databases |
US7478148B2 (en) * | 2001-01-16 | 2009-01-13 | Akamai Technologies, Inc. | Using virtual domain name service (DNS) zones for enterprise content delivery |
US7209973B2 (en) * | 2001-04-09 | 2007-04-24 | Swsoft Holdings, Ltd. | Distributed network data storage system and method |
US7039669B1 (en) * | 2001-09-28 | 2006-05-02 | Oracle Corporation | Techniques for adding a master in a distributed database without suspending database operations at extant master sites |
US7073038B2 (en) * | 2002-05-22 | 2006-07-04 | Storage Technology Corporation | Apparatus and method for implementing dynamic structure level pointers |
US7225118B2 (en) * | 2002-10-31 | 2007-05-29 | Hewlett-Packard Development Company, L.P. | Global data placement |
US7457822B1 (en) * | 2002-11-01 | 2008-11-25 | Bluearc Uk Limited | Apparatus and method for hardware-based file system |
US7251670B1 (en) * | 2002-12-16 | 2007-07-31 | Cisco Technology, Inc. | Methods and apparatus for replicating a catalog in a content distribution network |
JP4233328B2 (ja) * | 2003-01-08 | 2009-03-04 | 日立ソフトウエアエンジニアリング株式会社 | ピアツーピア技術を用いたファイルダウンロード方法及びシステム |
US7512701B2 (en) * | 2003-01-16 | 2009-03-31 | Hewlett-Packard Development Company, L.P. | System and method for efficiently replicating a file among a plurality of recipients in a reliable manner |
US20050050115A1 (en) * | 2003-08-29 | 2005-03-03 | Kekre Anand A. | Method and system of providing cascaded replication |
US7631021B2 (en) * | 2005-03-25 | 2009-12-08 | Netapp, Inc. | Apparatus and method for data replication at an intermediate node |
JP4692414B2 (ja) * | 2006-06-29 | 2011-06-01 | ブラザー工業株式会社 | 通信システム、コンテンツデータ送信可否決定方法、ノード装置、及びノード処理プログラム等 |
US20080059631A1 (en) * | 2006-07-07 | 2008-03-06 | Voddler, Inc. | Push-Pull Based Content Delivery System |
CN101502073B (zh) * | 2006-08-10 | 2013-08-07 | 汤姆森许可贸易公司 | 在分布式网络中散发信息的方法 |
EP1901525A1 (en) * | 2006-09-15 | 2008-03-19 | THOMSON Licensing | File repair method for a content distribution system |
JP2008129694A (ja) * | 2006-11-17 | 2008-06-05 | Brother Ind Ltd | 情報配信システム、情報配信方法、配信装置及びノード装置等 |
JP5390413B2 (ja) * | 2007-03-20 | 2014-01-15 | トムソン ライセンシング | 階層的にクラスタ化されたp2pストリーミング・システム |
US8386629B2 (en) * | 2007-12-27 | 2013-02-26 | At&T Intellectual Property I, L.P. | Network optimized content delivery for high demand non-live contents |
JP5092877B2 (ja) * | 2008-04-30 | 2012-12-05 | ブラザー工業株式会社 | ツリー型放送システム、パケット送信方法、ノード装置、及びノード処理プログラム |
US7793002B2 (en) * | 2008-06-06 | 2010-09-07 | Fisher-Rosemount Systems, Inc. | Methods and apparatus for implementing a sequential synchronization hierarchy among networked devices |
EP2294795B1 (en) * | 2008-07-02 | 2013-12-11 | Thomson Licensing | Device and method for disseminating content data between peers in a p2p mode, by using a bipartite peer overlay |
US8516082B2 (en) * | 2009-03-25 | 2013-08-20 | Limelight Networks, Inc. | Publishing-point management for content delivery network |
JP5205289B2 (ja) * | 2009-01-14 | 2013-06-05 | パナソニック株式会社 | 端末装置およびパケット送信方法 |
US8560639B2 (en) * | 2009-04-24 | 2013-10-15 | Microsoft Corporation | Dynamic placement of replica data |
US20100332634A1 (en) * | 2009-06-25 | 2010-12-30 | Keys Gregory C | Self-distribution of a peer-to-peer distribution agent |
CN102907065B (zh) * | 2010-05-20 | 2017-04-26 | 瑞典爱立信有限公司 | 用于管理对等网络中的数据传递的系统和方法 |
US9201747B2 (en) * | 2010-11-26 | 2015-12-01 | Telefonaktiebolaget L M Ericsson (Publ) | Real time database system |
US10114701B2 (en) * | 2011-01-28 | 2018-10-30 | International Business Machines Corporation | Space efficient cascading point in time copying |
US20120297405A1 (en) * | 2011-05-17 | 2012-11-22 | Splendorstream, Llc | Efficiently distributing video content using a combination of a peer-to-peer network and a content distribution network |
-
2011
- 2011-06-03 JP JP2011125588A patent/JP5776339B2/ja not_active Expired - Fee Related
-
2012
- 2012-05-21 US US13/476,117 patent/US20120311099A1/en not_active Abandoned
- 2012-06-01 EP EP12170585.9A patent/EP2530613A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
JP2012252593A (ja) | 2012-12-20 |
EP2530613A2 (en) | 2012-12-05 |
EP2530613A3 (en) | 2014-07-02 |
US20120311099A1 (en) | 2012-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5776339B2 (ja) | ファイル配布方法、ファイル配布システム、マスタサーバ、及びファイル配布プログラム | |
US8140625B2 (en) | Method for operating a fixed prefix peer to peer network | |
JP4417997B2 (ja) | オーバーレイネットワークシステム、同システムにおけるオーバーレイネットワーク構築・維持方法、及びプログラム | |
CN102075402B (zh) | 虚拟网络映射处理方法和系统 | |
EP3811597A1 (en) | Zone redundant computing services using multiple local services in distributed computing systems | |
US20070038679A1 (en) | Dynamic configuration updating in a storage area network | |
CN101202746B (zh) | 节点标识符生成方法及负载均衡方法及装置 | |
CN110417883B (zh) | 一种应用于区块链的点对点网络结构的设计方法 | |
CN101465877A (zh) | 分布式数据库系统中的负载分布 | |
CN104753968B (zh) | 云计算跨地域多数据中心及其的调度管理方法 | |
WO2008110460A2 (en) | Dissemination of network management tasks in a distributed communication network | |
Houidi et al. | A distributed and autonomic virtual network mapping framework | |
Di Modica et al. | Resource and service discovery in SOAs: A P2P oriented semantic approach | |
WO2005094017A1 (en) | Distribution of identifiers in serverless networks | |
CN1815981A (zh) | 对等网络中全局节点维护方法 | |
US20140082285A1 (en) | Intercluster relationship management | |
CN114500523A (zh) | 一种基于容器云平台的固定ip应用发布方法 | |
US20060031439A1 (en) | Method and apparatus for network management | |
CN109407975A (zh) | 写数据方法与计算节点以及分布式存储系统 | |
US20130212134A1 (en) | Storage configuration discovery | |
CN101902388A (zh) | 可扩充的多级排序资源快速发现技术 | |
JP4251148B2 (ja) | グループ内通信方法、システム及び記録媒体 | |
KR20170089257A (ko) | 분산 파일 시스템 및 이의 데이터 관리 방법 | |
CN109040214B (zh) | 一种云环境下可靠性增强的服务部署方法 | |
JP2007156700A (ja) | 情報検索方法、情報登録方法およびネットワークサービス情報検索システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140304 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140917 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140930 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150331 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150520 |
|
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: 20150609 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150622 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5776339 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |