[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP3960211B2 - Data distribution method and apparatus - Google Patents

Data distribution method and apparatus Download PDF

Info

Publication number
JP3960211B2
JP3960211B2 JP2002340264A JP2002340264A JP3960211B2 JP 3960211 B2 JP3960211 B2 JP 3960211B2 JP 2002340264 A JP2002340264 A JP 2002340264A JP 2002340264 A JP2002340264 A JP 2002340264A JP 3960211 B2 JP3960211 B2 JP 3960211B2
Authority
JP
Japan
Prior art keywords
distribution
resource
data
divided
information
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
JP2002340264A
Other languages
Japanese (ja)
Other versions
JP2004178031A (en
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2002340264A priority Critical patent/JP3960211B2/en
Publication of JP2004178031A publication Critical patent/JP2004178031A/en
Application granted granted Critical
Publication of JP3960211B2 publication Critical patent/JP3960211B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はネットワークに多数のクライアント計算機が存在する場合のクライアント・サーバシステムにおいて、サーバ計算機でクライアント計算機からの要求に応じて資源配信を行う資源配信方式及びシステムに関する。
【0002】
【従来の技術】
従来技術として例えば、一定時間内に発生するクライアント計算機からの配信要求を予測し、要求数が少ないと予測された場合、サーバ計算機は資源をユニキャストで配信し、要求数が多いと予測された場合、資源をオンデマンドマルチキャストで配信し、クライアント計算機からの配信要求数を閾値として、資源の配信方法を切り換える資源配信方法がある(例えば、特許文献1参照。)。
【0003】
ユニキャスト配信は、クライアント計算機の資源配信要求に対して、サーバ計算機が個別に資源を配信する方法である。
マルチキャスト配信は、あらかじめ複数のクライアント計算機が同一のマルチキャストアドレスに参加することにより、複数のクライアント計算機でマルチキャストグループを形成し、サーバ計算機がマルチキャストグループを形成しているマルチキャストアドレスに対して一回だけの資源配信を行うことで、マルチキャストグループに参加しているクライアント計算機すべてに資源を配信する方法である。
【0004】
オンデマンドマルチキャスト配信は、マルチキャスト配信にオンデマンド性を加えたもので、クライアント計算機からの資源の配信要求があった場合、すぐには資源を配信せず、同じ資源を要求するクライアント計算機からの資源配信要求を一定時間待ち合わせ、待ち合わせ時間終了後、資源を配信する方式である。待ち時間を長く設定することで、一回の送信でより多くのクライアント計算機に資源を配信することができ、それによって配信の効率を上げることができる。
【0005】
【特許文献1】
特開2000−181836号公報(第2−5頁、第2図)
【0006】
【発明が解決しようとする課題】
しかしながら、従来技術では次のような問題がある。ユニキャスト配信方式では、クライアント計算機への応答は良いが、1対1の通信であるため、多数のクライアント計算機からの資源配信要求があった場合、サーバ計算機への負荷とネットワークのトラヒックが増大する。
【0007】
マルチキャスト配信方式では、マルチキャストグループを形成する都合上、資源配信の契機はクライアント計算機ではなくサーバ計算機が決定し、クライアント計算機の都合に関係なく資源を配信する場合がある。
【0008】
オンデマンドマルチキャスト配信方式では、資源配信の契機はクライアント計算機にあるが、クライアント計算機が資源の配信要求をして受信を開始するまでの待ち時間(配信要求を取りまとめる時間)が発生する。
【0009】
【課題を解決するための手段】
本発明の計算機を用いたデータ送信方法であって、前記計算機は、予め記憶装置に格納されたデータを読み出し、読み出した前記データを予め定められた大きさに分割し、分割した前記データそれぞれに対して識別子を付与し、他の複数の計算機へ分割した前記データを配布した場合に、分割した前記データごとに配布したか否かを示す情報と分割した前記データの配布先の計算機の識別子とを対応づけて分割データ送信情報として記憶装置に格納し、前記分割データ送信情報にもとづいて、分割した前記データのうちで配布されていないデータの配布を行うことを特徴とする。
【0010】
【発明の実施の形態】
以下、本発明の一実施形態について図面を用いて説明する。
図1は本発明が適用されるクライアント/サーバシステムである。
図1において、1台のサーバ計算機100と複数台のクライアント計算機110、120、130、資源サーバ計算機140がネットワーク150に接続されている。サーバ計算機100は、要求受付部101、配信制御部102、資源分割部103、マルチキャスト送信部104、ユニキャスト送信部105、リスト格納部106、分割資源DB107、資源DB108を有し、クライアント計算機110、120、130からの要求数に応じて、配信方法をユニキャストからマルチキャスト、マルチキャストからユニキャストへ動的に切り換えながら、分割された資源を配信する。
【0011】
尚、資源とは、計算機へ配布する対象となるものを指す。たとえば、実行形式のプログラムでもよいし、データ、文書ファイル、音声ファイル、画像ファイル、動画像ファイル等でもよいし、その他のものでもよい。
【0012】
要求受付部101ではクライアント計算機110、120、130からの要求を受付け、クライアント情報を配信先管理リスト102−1に追加し、分割資源を受信するためのマルチキャストアドレスと分割資源構成リスト107−1をクライアント計算機110、120、130に通知し、配信制御部102の起動と資源分割部103の起動を制御する。配信制御部102では、配信先管理リスト102−1、送信先リスト102−2、送信選択部102−3を有し、配信先管理リスト102−1に各クライアント計算機110、120、130への分割資源の送信状態を格納し、送信先リスト102−2に分割資源の送信先を格納し、送信選択部102−3でクライアント計算機110、120、130からの要求数に応じて分割資源の配信方法を決定し、資源の配信を制御する。
【0013】
資源分割部103では、資源DB108上の資源を分割し、分割資源構成リスト107−1を作成し、分割資源構成リスト107−1と分割資源107−2を分割資源DB107に格納する。マルチキャスト送信部104では、送信先リスト102−2からマルチキャストアドレスを取り出し、取り出したマルチキャストアドレスあてに分割資源をマルチキャスト送信する。
【0014】
ユニキャスト送信部105では、送信先リスト102−2から分割資源を受信していないクライアント計算機110、120、130のあて先を取り出し、取り出したあて先に分割資源をユニキャスト送信する。リスト格納部106では、配信資源リスト106−1、マルチキャストアドレスリスト106−2を有し、配信資源リスト106−1に資源の保管先と分割状態と閾値を、マルチキャストアドレスリスト106−2にマルチキャストアドレスの予約状況と使用状況を格納する。
【0015】
分割資源DB107では、分割された資源の分割資源IDとチェックサムの情報格納する分割資源構成リスト107−1と分割資源107−2を有し、分割された資源とその情報を保存する。資源DB108では分割されていない資源を保存する。クライアント計算機110、120、130では、要求送信部111、マルチキャスト受信部112、ユニキャスト受信部113、資源復元部114を有し、サーバ計算機100への資源配信要求を契機として、マルチキャストグループに参加し、全ての分割資源の受信完了を契機として、マルチキャストグループから離脱する。
【0016】
要求送信部111では、資源送信要求をサーバ計算機100に送信し、サーバ計算機100から分割資源構成リスト107−1と分割資源受信用のマルチキャストアドレスを受信し、直ちにマルチキャストグループに参加し、全ての分割資源を受信完了後マルチキャストグループから離脱する。また、データ欠落やネットワーク障害等で一部の分割資源を受信できなかった場合も分割資源資源構成リスト107−1をもとに再送要求を行うこともできる。
【0017】
マルチキャスト受信部112では、分割資源をマルチキャストで受信する。ユニキャスト受信部113では、分割資源をユニキャスト受信する。資源復元部114では、分割資源構成リスト107−1に基づいて分割資源を復元する。クライアント計算機120は、サーバ計算機100が分割資源の配信を開始した後に、資源配信要求を送信したクライアント計算機である。クライアント計算機130は、サーバ計算機100からの分割資源の配信方法が切り換わる資源配信要求を送信したクライアント計算機である。
【0018】
資源サーバ計算機140では、資源DB141と分割資源DB142を有し、分割資源と資源をネットワーク150を介して保持する。
【0019】
図2は配信資源リスト106−1の内容を表したものである。配信資源リスト106−1には資源ID情報201、資源保管先情報202、分割状態情報203、閾値情報204が登録される。資源ID情報201は各資源のIDを示すものである。資源保管先情報202は各資源の保管先を示すものであり、その資源が分割資源である場合は分割資源構成リスト107−1へのパスを、分割資源でない場合は資源へのパスを示す。
【0020】
なお、資源へのパスはファイルでもディレクトリでもフォルダでもよい。分割状態情報203は資源の分割状態を示すものであり、YESならば資源が分割済みであることを示し、NOならば資源が分割されていないことを示す。閾値情報204は分割資源の送信方法を決定する閾値を示す。
【0021】
図3はマルチキャストアドレスリスト106−2の内容を表したものである。マルチキャストアドレスリスト106−2にはアドレス割当情報301、マルチキャストアドレス情報302が登録される。アドレス割当情報301は各資源へのマルチキャストアドレスの割当情報を示すものであり、値が資源IDである場合はマルチキャストアドレスがその資源IDに対応する資源に予約されていることを示し、値が使用可である場合はマルチキャストアドレスが任意の資源で使用可能であることを示し、値が使用中である場合はマルチキャストアドレスが資源配信で現在使用中であることを示す。マルチキャストアドレス情報302はマルチキャストアドレスを示す。
【0022】
なお、マルチキャストアドレスリスト106−2に登録されていないマルチキャストアドレスではマルチキャスト配信はしないものとする。
【0023】
図4は配信先管理リスト102−1の内容を表したものである。配信先管理リスト102−1には送信先情報401、分割資源送信情報402、分割資源ID情報403、チェックサム情報404、マルチキャスト情報405、クライアント情報406が登録される。送信先情報401はマルチキャスト情報405と対応する部分で分割資源のマルチキャストでの送信先であるマルチキャストアドレスを示し、クライアント情報406と対応する部分で分割資源のユニキャストでの送信先である各クライアント計算機110、120、130のIPアドレスやホスト名を示す。
【0024】
分割資源送信情報402は分割資源ID情報403と対応する部分で分割資源のIDを示し、チェックサム情報404と対応する部分で分割資源のチェックサムを示し、マルチキャスト情報405と対応する部分で送信先情報401に格納されたIPアドレスがM(マルチキャストアドレス)であることを示し、クライアント情報406と対応する部分で各クライアント計算機110、120、130への送信状態(済あるいは未)を示す。
【0025】
送信状態が済なら分割資源がクライアント計算機110、120、130に送信済みであることを、未なら分割資源がクライアント計算機110、120、130に未送信であること示す。なお、分割資源情報402は分割された順序で分割された数だけ配信先管理リスト102−1に存在するものとし、クライアント情報406は各クライアント計算機110、120、130から配信要求を受信した際に配信先管理リスト102−1に追加され、クライアント計算機110、120、130の全ての分割資源の送信状態が送信済みである場合に配信先管理リスト102−1から削除されるものとする。配信先管理リスト102−1は資源配信を開始した際に作成され、資源配信完了後に削除される。
【0026】
図5は送信先リスト102−2の内容を表したものである。送信先リスト102−2には送信先情報501、分割資源送信情報502、分割資源ID情報503、チェックサム情報504、マルチキャスト情報505、クライアント情報506が登録される。送信先情報501はマルチキャスト情報505と対応する部分で分割資源のマルチキャストでの送信先であるマルチキャストアドレスを示し、クライアント情報506と対応する部分で分割資源のユニキャストでの送信先である各クライアント計算機110、120、130のIPアドレスやホスト名を示す。
【0027】
分割資源送信情報502は分割資源ID情報503と対応する部分で分割資源のIDを示し、チェックサム情報504と対応する部分で分割資源のチェックサムを示し、マルチキャスト情報505と対応する部分で送信先情報501に格納されたIPアドレスがM(マルチキャストアドレス)であることを示し、クライアント情報506と対応する部分で各クライアント計算機110、120、130への送信状態(済あるいは未)を示す。送信先リスト102−2は配信制御部102において、分割資源を送信する前に作成され、分割資源を送信した後に削除される。
【0028】
図6は分割資源構成リスト107−1の内容を表したものである。分割資源構成リスト107−1には分割資源ID情報601、分割資源チェックサム情報602が登録される。分割資源ID情報601で分割資源のIDを示し、チェックサム情報602で分割資源のチェックサムを示す。分割資源ID情報601は資源が分割された順序で分割された個数だけリストされているものとする。分割資源構成リスト107−1は資源を分割する際に作成されるものとする。
【0029】
図7は要求受付部101の処理を示したものである。
要求受付部101はクライアント計算機110、120、130からの資源配信要求を受信した場合(701)、クライアント計算機110、120、130が要求する資源の資源IDに一致する配信制御部102が起動中かを調べ(702)、起動中でない場合は配信資源リスト106−1を参照し、資源ID情報201でクライアント計算機110,120,130が要求する資源の資源IDと一致するものを選択し、分割状態情報203で資源が分割されているかを調べる(703)。資源が分割されていない場合、管理者が設定した指針に基づいて、資源をサイズごとあるいはバイト単位ごとあるいはファイルごとあるいはフォルダごとあるいはディレクトリごとに分割し(704)、分割資源ごとにIDを割当て、分割資源ごとにチェックサムを算出し、分割資源構成リスト107−1を作成する(705)。
【0030】
次に、分割資源構成リスト107−1と分割資源107−2を分割資源DB107に格納し、配信資源リスト106−1の資源ID情報201でクライアント計算機110,120,130が要求する資源の資源IDと一致するものを選択し、資源保管先情報202を707処理で作成した分割資源構成リスト107−1のパスで上書き更新し、分割状態情報203をYESで上書き更新する(706)。資源分割の完了後、配信制御部をクライアント計算機110,120,130が要求する資源の資源IDで起動する(707)。次に、分割資源受信用のマルチキャストアドレスと分割資源構成リスト107−1をクライアント計算機110、120、130に送信し(708)、これによって、マルチキャストアドレスを受信したクライアント計算機110、120、130は直ちにマルチキャストグループに参加する。
【0031】
次に、配信先管理リスト102−1に配信要求を送信してきたクライアント計算機110、120、130のクライアント情報405を送信状態を未として追加する(709)。配信制御部102が起動中の場合、708、709処理を行う。
【0032】
図8は配信制御部102の処理を示したものである。
配信制御部102は、要求受付部101によってクライアント計算機110が要求する資源の資源IDで起動され、起動時にマルチキャストアドレスリスト106−2を参照し、分割資源送信用にマルチキャストアドレスを割り当て(801)、そのマルチキャストアドレスと分割資源構成リスト107−1をもとに配信先管理リスト102−1を作成する(802)。
【0033】
801処理において、マルチキャストアドレスを割り当てる際、マルチキャストアドレスリスト106−2のアドレス割当情報301でクライアント計算機110が要求する資源の資源IDと一致するものがある場合は、それに対応するマルチキャストアドレス情報302を資源送信用のマルチキャストアドレスとして使用し、一致するものがない場合は、アドレス割当情報301が使用可であるものをランダムに選択し、アドレス割当情報301の使用可を使用中に上書きしてから、それに対応するマルチキャストアドレス情報302を資源送信用のマルチキャストアドレスとして使用する。
【0034】
次に、要求受付部101で最初に配信要求をしたクライアント計算機110のクライアント情報405が配信先管理リスト102−1に追加されるまで待つ(803)。次に、配信先管理リスト102−1を参照し、リストの最初の分割資源IDを取得する(804)。前処理(804、811、812)で取得した分割資源IDに一致する分割資源を分割資源DB107から取得する(805)。
【0035】
次に、配信先管理リスト102−1から送信先情報401と分割資源ID情報403が前処理(804、811、812)で取得した分割資源IDに一致する分割資源送信情報402取得し、送信先リスト102−2を作成する(806)。さらに続けて、配信先管理リスト102−1において、前処理(804、811、812)で取得した分割資源IDと一致する分割資源IDを含む分割資源送信情報402の送信状態を未から済に更新し、さらに、配信先管理リスト102−1から、すべての分割資源の送信状態が済となったクライアント情報406を削除する(806)。
【0036】
次に送信選択部102−3に送信する分割資源と送信先リスト102−2を送り、送信先リスト102−2をもとにマルチキャストあるいはユニキャストで分割資源を送信する(807)。分割資源送信後、送信先リストを削除する(808)。次に、配信先管理リスト102−1にクライアント情報406があるか調べ(809)、クライアント情報406がない場合、配信先管理リスト102−1を削除し(813)、マルチキャストアドレスリスト106−2を参照し、分割資源送信用のマルチキャストアドレスを開放し(814)、配信制御部を停止し処理を終了する。
【0037】
814処理において、マルチキャストアドレスを開放する際、マルチキャストアドレスリスト106−2のマルチキャストアドレス情報302で分割資源送信用のマルチキャストアドレスと一致するものを選択し、それに対応するアドレス割当情報301が使用中の場合はアドレス割当情報301を使用可で上書する。配信先管理リスト102−1にクライアント情報406がある場合は、さらに、送信した分割資源が配信先管理リスト102−1の最後の分割資源かを調べ(810)、送信した分割資源が最後の分割資源である場合、配信先管理リスト102−1から最初の分割資源IDを取得する(811)。
【0038】
送信した分割資源が最後の分割資源でない場合、配信先管理リスト102−1を参照し、送信した分割資源の次の分割資源IDを取得する(812)。811、812処理のあと、805処理へ戻り、配信先管理リスト102−1からクライアント情報406がなくなるまで、805〜812の処理を繰り返す。806処理のように、分割資源送信情報402を一時的に送信先リスト102−2に保存し、分割資源の送信前に配信先管理リスト102−1を更新することで、分割資源送信中に要求受付部101が追加したクライアント情報406の送信状態を誤って上書きすることを防止する効果があり、かつ、分割資源送信中にクライアント計算機110、120、130からの配信要求の受付けを可能とする。
【0039】
810〜812の処理により、資源配信の途中から参加したクライアント計算機120、130が資源配信要求をする前に送信された分割資源の受信が可能となる。
【0040】
図9は送信選択部102−3の処理を示したものである。送信選択部102−3では配信制御部102内で、送信する分割資源と送信先リスト102−2を受けとり、送信先リスト102−2の分割資源送信情報502の未をカウントし、カウント結果をクライアント計算機110、120、130からの要求数として取得する(901)。次に、配信資源リスト106−1の閾値情報204から閾値を取得する(902)。
【0041】
次に、クライアント計算機110、120、130からの要求数と閾値を比較する(903)。クライアント計算機110、120、130からの要求数が閾値より大きい場合、マルチキャスト送信部104に送信する分割資源と送信先リスト102−2を送る(904)。マルチキャスト送信部104では、送信先リスト102−2の送信先情報501でマルチキャスト情報505と対応する部分を参照し、マルチキャストアドレスを取得し、そのあて先に対して分割資源をマルチキャストで送信する。クライアント計算機110、120、130からの要求数が閾値以下の場合、ユニキャスト送信部105に送信する分割資源と送信先リスト102−2を送る(905)。
【0042】
ユニキャスト送信部105では、送信先リスト102−2の送信先情報501から送信状態が未である送信先をすべて取得し、取得した送信先すべてにユニキャストで分割資源を送信する。
【0043】
図10はサーバ計算機100が資源配信を開始した後に、クライアント計算機120、130が資源の受信に参加した場合の処理を示すシーケンス図である。この図では、資源を分割資源A、B、C〜Nに分割して送信するものとする。まず、クライアント計算機110が資源配信をサーバ計算機100に要求し(1001)、要求を受けたサーバ計算機100はクライアント計算機110にマルチキャストアドレスを通知し(1002)、クライアント計算機110は受信したマルチキャストアドレスで直ちにマルチキャストグループに参加する。
【0044】
ここで、クライアント計算機110はサーバ計算機100に最初に資源を要求したクライアント計算機であるので、分割資源Aからの受信となる。次に、サーバ計算機100はクライアント計算機110にユニキャストで分割資源Aを送信する(1003)。ここでは、クライアント計算機110、120、130からの要求数が閾値をこえていないものとする。
【0045】
次に、分割資源Aの送信完了後、クライアント計算機120が資源配信をサーバ計算機100に要求し(1004)、要求を受けたサーバ計算機100はクライアント計算機120にマルチキャストアドレスを通知し(1005)、クライアント計算機120は受信したマルチキャストアドレスで直ちにマルチキャストグループに参加する。ここで、クライアント計算機120は分割資源Bからの受信となる。
【0046】
次に、サーバ計算機100はクライアント計算機110、120にユニキャストで分割資源Bを送信する(1006、1007)。分割資源Bの送信完了後、クライアント計算機130がサーバ計算機100に資源配信を要求し(1008)、要求を受けたサーバ計算機100はクライアント計算機130にマルチキャストアドレスを通知し(1009)、クライアント計算機130は受信したマルチキャストアドレスで直ちにマルチキャストグループに参加する。
【0047】
ここで、クライアント計算機110、120、130からの要求数が閾値をこえたとする。要求数が閾値をこえたため配信方法がユニキャストからマルチキャストへ切り換わる(1010)。ここで、クライアント計算機130は分割資源Cからの受信となる。次に、サーバ計算機100はクライアント計算機110、120、130にマルチキャストで分割資源Cを送信する(1011)。1011の処理と同様に、分割資源Nまでマルチキャストで分割資源を送信する(1012)。
【0048】
次に、クライアント計算機110はすべての分割資源を受信完了したので、受信完了通知をサーバ計算機100に送信し、マルチキャストグループから離脱する(1013)。ここで、1013処理の後、クライアント計算機120、130からの要求数が閾値以下になったとする。要求数が閾値以下になったため配信方法がマルチキャストからユニキャストへ切り換わる(1014)。
【0049】
次に、サーバ計算機100はクライアント計算機120、130にユニキャストで分割資源Aを送信する(1015、1016)。ここで、サーバ計算機100でクライアント計算機110、120、130ごとに分割資源の送信状態を管理しているので、クライアント計算機120、130は資源配信要求を出す前に送信された分割資源の受信が可能である。次に、クライアント計算機120はすべての分割資源を受信完了したので、受信完了通知をサーバ計算機100に送信し、マルチキャストグループから離脱する(1017)。
【0050】
次に、サーバ計算機100はクライアント計算機130にユニキャストで分割資源Bを送信する(1018)。次に、クライアント計算機130はすべての分割資源を受信完了したので、受信完了通知をサーバ計算機100に送信し、マルチキャストグループから離脱する(1019)。
【0051】
以上説明したように、本発明では資源を提供するサーバ計算機で資源を分割保持し、クライアント計算機からの分割資源の要求数に応じて、分割資源の配信方法をユニキャストからマルチキャスト、マルチキャストからユニキャストへ配布方法を動的に切り換える。これにより、サーバ計算機への負荷とネットワークのトラヒックを増大させることなく、クライアント計算機は資源配信までの待ち合わせ時間を小さく抑えることができる。また、本発明では、ネットーワークの通信速度が遅く資源を一定間隔で分割して配信する必要がある場合に有効である。
【0052】
また、本発明はネットワークに多数のクライアント計算機が存在する場合のクライアント・サーバシステムにおいて、クライアント計算機で資源配信の契機を決定し、サーバ計算機でクライアント計算機からの要求に応じて資源配信を行う。この資源配信の場合に、資源を分割し、分割した資源それぞれに対して識別子を付与し、他の複数の計算機へ分割した資源を配布した場合に、分割した資源ごとに配布したか否かを示す情報と分割した資源の配布先の計算機の識別子とを対応づけて分割データ送信情報として記憶装置に格納し、分割資源送信情報にもとづいて、分割した資源のうちで配布されていないデータの配布を行う。これにより、後からマルチキャストグループに加入した計算機に対して配布されていない分割資源を識別して、配布されていない部分だけを配布することができる。
【0053】
また、分割された資源ごとに配布されたか否かの情報と配布先の情報を管理できるため、分割された資源に応じた配布管理が可能となる。
【0054】
また、本発明ではサーバ計算機では、配信する資源を分割保持し、クライアント計算機からの分割資源の要求数に応じて、分割資源の配信方法をユニキャストからマルチキャスト、マルチキャストからユニキャストへ動的に切り換えながら、資源を分割して配信する。クライアント計算機では、サーバ計算機への資源配信要求を契機として、サーバ計算機から通知されたマルチキャストグループに参加し、分割された資源をマルチキャストあるいはユニキャストで受信し、すべての分割資源の受信完了を契機として、マルチキャストグループから離脱し、分割された資源を復元する。分割して資源を配信し、クライアント計算機からの配信要求がある閾値以下の場合はユニキャストで分割資源を配信し、閾値をこえた場合はマルチキャストで分割資源を配信する。これにより、サーバ計算機への負荷とネットワークのトラヒックを増大させることなく、クライアント計算機は資源配信要求を出してから資源配信までの待ち合わせ時間を極めて小さく抑えることができる。
【0055】
【発明の効果】
以上説明したように、本発明では資源を提供するサーバ計算機で資源を分割し、クライアント計算機からの分割資源の要求数に応じて、分割資源の配信方法を切り換えることで、ネットワークのトラヒックを軽減できる。
【図面の簡単な説明】
【図1】本発明が適用されるシステムの構成図の例である。
【図2】配信資源リストの例である。
【図3】マルチキャストアドレスリストの例である。
【図4】配信先管理リストの例である。
【図5】送信先リストの例である。
【図6】分割資源構成リストの例である。
【図7】要求受付部の動作を示すフローチャートの例である。
【図8】配信制御部の動作を示すフローチャートの例である。
【図9】送信選択部の動作を示すフローチャートの例である。
【図10】資源配信の開始後にクライアント計算機が配信要求した場合のシーケンスの例である。
【符号の説明】
100 サーバ計算機
110 クライアント計算機
120 クライアント計算機
130 クライアント計算機
140 資源サーバ計算機
150 ネットワーク
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a resource distribution method and system for performing resource distribution in response to a request from a client computer in a server / server system when a large number of client computers exist in a network.
[0002]
[Prior art]
As a conventional technique, for example, when a distribution request from a client computer that occurs within a certain period of time is predicted and the number of requests is predicted to be small, the server computer distributes resources by unicast and is predicted to have a large number of requests In this case, there is a resource distribution method in which resources are distributed by on-demand multicast, and the resource distribution method is switched with the number of distribution requests from client computers as a threshold (see, for example, Patent Document 1).
[0003]
Unicast distribution is a method in which a server computer individually distributes resources in response to a resource distribution request from a client computer.
In multicast distribution, a plurality of client computers participate in the same multicast address in advance to form a multicast group with a plurality of client computers, and the server computer is only once for the multicast addresses forming the multicast group. In this method, resources are distributed to all the client computers participating in the multicast group.
[0004]
On-demand multicast distribution adds on-demand to multicast distribution. When there is a resource distribution request from a client computer, the resource is not distributed immediately but from a client computer that requests the same resource. This is a method of waiting for a distribution request for a certain period of time and distributing resources after the end of the waiting period. By setting a long waiting time, resources can be distributed to a larger number of client computers in a single transmission, thereby improving the efficiency of distribution.
[0005]
[Patent Document 1]
JP 2000-181836 A (page 2-5, FIG. 2)
[0006]
[Problems to be solved by the invention]
However, the prior art has the following problems. In the unicast distribution method, the response to the client computer is good, but since the communication is one-to-one, the load on the server computer and the network traffic increase when there are resource distribution requests from a large number of client computers. .
[0007]
In the multicast distribution method, for the purpose of forming a multicast group, the resource distribution is triggered not by the client computer but by the server computer, and the resource may be distributed regardless of the convenience of the client computer.
[0008]
In the on-demand multicast distribution method, the resource distribution is triggered by the client computer, but there is a waiting time (time for collecting the distribution requests) until the client computer makes a resource distribution request and starts reception.
[0009]
[Means for Solving the Problems]
In the data transmission method using the computer of the present invention, the computer reads data stored in a storage device in advance, divides the read data into a predetermined size, and each of the divided data When an identifier is given to each of the plurality of computers and the divided data is distributed, information indicating whether the divided data is distributed and an identifier of a computer to which the divided data is distributed Are stored in the storage device as divided data transmission information, and data that is not distributed among the divided data is distributed based on the divided data transmission information.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 shows a client / server system to which the present invention is applied.
In FIG. 1, one server computer 100, a plurality of client computers 110, 120, and 130 and a resource server computer 140 are connected to a network 150. The server computer 100 includes a request reception unit 101, a distribution control unit 102, a resource division unit 103, a multicast transmission unit 104, a unicast transmission unit 105, a list storage unit 106, a divided resource DB 107, and a resource DB 108, and includes a client computer 110, According to the number of requests from 120 and 130, the divided resources are distributed while dynamically switching the distribution method from unicast to multicast and from multicast to unicast.
[0011]
A resource refers to a target to be distributed to a computer. For example, it may be an executable program, data, document file, audio file, image file, moving image file, or the like.
[0012]
The request receiving unit 101 receives requests from the client computers 110, 120, and 130, adds client information to the distribution destination management list 102-1, and sets a multicast address and a divided resource configuration list 107-1 for receiving divided resources. The client computers 110, 120, and 130 are notified, and the activation of the distribution control unit 102 and the activation of the resource dividing unit 103 are controlled. The distribution control unit 102 includes a distribution destination management list 102-1, a transmission destination list 102-2, and a transmission selection unit 102-3, and the distribution destination management list 102-1 is divided into client computers 110, 120, and 130. The transmission state of the resource is stored, the transmission destination of the divided resource is stored in the transmission destination list 102-2, and the divided resource distribution method according to the number of requests from the client computers 110, 120, 130 in the transmission selection unit 102-3 And control the delivery of resources.
[0013]
The resource dividing unit 103 divides resources on the resource DB 108, creates a divided resource configuration list 107-1, and stores the divided resource configuration list 107-1 and the divided resource 107-2 in the divided resource DB 107. The multicast transmission unit 104 extracts a multicast address from the transmission destination list 102-2, and multicasts the divided resource to the extracted multicast address.
[0014]
The unicast transmission unit 105 extracts the destinations of the client computers 110, 120, and 130 that have not received the divided resources from the transmission destination list 102-2, and unicasts the divided resources to the extracted destinations. The list storage unit 106 includes a distribution resource list 106-1 and a multicast address list 106-2. The distribution resource list 106-1 includes a resource storage destination, a division state, and a threshold value, and the multicast address list 106-2 includes a multicast address. Stores reservation status and usage status.
[0015]
The divided resource DB 107 has a divided resource configuration list 107-1 and a divided resource 107-2 for storing information of divided resource IDs and checksums of divided resources, and stores the divided resources and information thereof. The resource DB 108 stores resources that are not divided. The client computers 110, 120, and 130 have a request transmission unit 111, a multicast reception unit 112, a unicast reception unit 113, and a resource restoration unit 114, and participate in a multicast group triggered by a resource distribution request to the server computer 100. When the reception of all the divided resources is completed, the multicast group is left.
[0016]
The request transmission unit 111 transmits a resource transmission request to the server computer 100, receives the divided resource configuration list 107-1 and the multicast address for receiving the divided resource from the server computer 100, immediately joins the multicast group, and all the divided groups. Leave the multicast group after receiving the resources. In addition, even when some of the divided resources cannot be received due to data loss or network failure, a retransmission request can be made based on the divided resource resource configuration list 107-1.
[0017]
The multicast receiving unit 112 receives the divided resources by multicast. The unicast receiving unit 113 receives the divided resources by unicast. The resource restoration unit 114 restores the divided resources based on the divided resource configuration list 107-1. The client computer 120 is a client computer that has transmitted a resource distribution request after the server computer 100 starts distributing the divided resources. The client computer 130 is a client computer that has transmitted a resource distribution request from the server computer 100 to switch the distribution method of the divided resources.
[0018]
The resource server computer 140 includes a resource DB 141 and a divided resource DB 142, and holds the divided resources and resources via the network 150.
[0019]
FIG. 2 shows the contents of the distribution resource list 106-1. Resource ID information 201, resource storage destination information 202, division state information 203, and threshold information 204 are registered in the distribution resource list 106-1. The resource ID information 201 indicates the ID of each resource. The resource storage destination information 202 indicates the storage destination of each resource. When the resource is a divided resource, the resource storage destination information 202 indicates a path to the divided resource configuration list 107-1, and when the resource is not a divided resource, the resource storage destination information 202 indicates a path to the resource.
[0020]
The path to the resource may be a file, a directory, or a folder. The division state information 203 indicates the division state of the resource. If YES, the resource is already divided, and if NO, the resource is not divided. The threshold information 204 indicates a threshold that determines the transmission method of the divided resources.
[0021]
FIG. 3 shows the contents of the multicast address list 106-2. Address assignment information 301 and multicast address information 302 are registered in the multicast address list 106-2. The address allocation information 301 indicates allocation information of a multicast address to each resource. When the value is a resource ID, it indicates that the multicast address is reserved for the resource corresponding to the resource ID, and the value is used. When it is possible, it indicates that the multicast address can be used for an arbitrary resource, and when the value is in use, it indicates that the multicast address is currently being used for resource distribution. Multicast address information 302 indicates a multicast address.
[0022]
It is assumed that multicast distribution is not performed with multicast addresses that are not registered in the multicast address list 106-2.
[0023]
FIG. 4 shows the contents of the distribution destination management list 102-1. In the distribution destination management list 102-1, transmission destination information 401, division resource transmission information 402, division resource ID information 403, checksum information 404, multicast information 405, and client information 406 are registered. Destination information 401 indicates a multicast address that is a multicast resource transmission destination in a portion corresponding to multicast information 405, and each client computer that is a unicast transmission destination of a divided resource in a portion corresponding to client information 406. IP addresses and host names of 110, 120, and 130 are shown.
[0024]
The division resource transmission information 402 indicates the division resource ID in a portion corresponding to the division resource ID information 403, the check sum of the division resource in a portion corresponding to the checksum information 404, and a transmission destination in a portion corresponding to the multicast information 405. It indicates that the IP address stored in the information 401 is M (multicast address), and indicates the transmission status (completed or not yet) to each client computer 110, 120, 130 in the part corresponding to the client information 406.
[0025]
If the transmission state is completed, it indicates that the divided resource has been transmitted to the client computers 110, 120, and 130, and if not, indicates that the divided resource has not been transmitted to the client computers 110, 120, and 130. Note that the divided resource information 402 exists in the distribution destination management list 102-1 in the number divided in the divided order, and the client information 406 is obtained when a distribution request is received from each client computer 110, 120, 130. It is added to the distribution destination management list 102-1 and is deleted from the distribution destination management list 102-1 when the transmission statuses of all the divided resources of the client computers 110, 120, and 130 have been transmitted. The distribution destination management list 102-1 is created when resource distribution is started, and is deleted after resource distribution is completed.
[0026]
FIG. 5 shows the contents of the destination list 102-2. In the transmission destination list 102-2, transmission destination information 501, division resource transmission information 502, division resource ID information 503, checksum information 504, multicast information 505, and client information 506 are registered. The destination information 501 indicates a multicast address that is a multicast transmission destination of the divided resource in a portion corresponding to the multicast information 505, and each client computer that is a transmission destination in the unicast of the divided resource in a portion corresponding to the client information 506. IP addresses and host names of 110, 120, and 130 are shown.
[0027]
The division resource transmission information 502 indicates the division resource ID in a portion corresponding to the division resource ID information 503, the checksum of the division resource in a portion corresponding to the checksum information 504, and the transmission destination in a portion corresponding to the multicast information 505. It indicates that the IP address stored in the information 501 is M (multicast address), and the transmission status (completed or not yet) to each client computer 110, 120, 130 is indicated in a portion corresponding to the client information 506. The transmission destination list 102-2 is created in the distribution control unit 102 before transmitting the divided resource, and is deleted after transmitting the divided resource.
[0028]
FIG. 6 shows the contents of the divided resource configuration list 107-1. Division resource ID information 601 and division resource checksum information 602 are registered in the division resource configuration list 107-1. The divided resource ID information 601 indicates the ID of the divided resource, and the checksum information 602 indicates the checksum of the divided resource. Assume that the divided resource ID information 601 is listed in the number of divided resources in the order in which the resources are divided. The divided resource configuration list 107-1 is created when a resource is divided.
[0029]
FIG. 7 shows the processing of the request receiving unit 101.
When the request receiving unit 101 receives a resource distribution request from the client computers 110, 120, and 130 (701), is the distribution control unit 102 that matches the resource ID of the resource requested by the client computers 110, 120, and 130 being activated? (702), if it is not active, the distribution resource list 106-1 is referred to, the resource ID information 201 that matches the resource ID of the resource requested by the client computer 110, 120, 130 is selected, and the divided state is selected. It is checked whether the resource is divided by the information 203 (703). If the resource is not divided, based on the guidelines set by the administrator, the resource is divided by size, byte unit, file, folder or directory (704), and an ID is assigned to each divided resource. A checksum is calculated for each divided resource, and a divided resource configuration list 107-1 is created (705).
[0030]
Next, the divided resource configuration list 107-1 and the divided resource 107-2 are stored in the divided resource DB 107, and the resource ID of the resource requested by the client computer 110, 120, 130 with the resource ID information 201 of the distribution resource list 106-1. The resource storage destination information 202 is overwritten and updated with the path of the divided resource configuration list 107-1 created in the process 707, and the divided state information 203 is overwritten and updated with YES (706). After the resource division is completed, the distribution control unit is activated with the resource ID of the resource requested by the client computer 110, 120, 130 (707). Next, the multicast address for receiving the divided resource and the divided resource configuration list 107-1 are transmitted to the client computers 110, 120, and 130 (708), whereby the client computers 110, 120, and 130 that have received the multicast address immediately Join a multicast group.
[0031]
Next, the client information 405 of the client computers 110, 120, and 130 that has transmitted the distribution request to the distribution destination management list 102-1 is added with the transmission state set to "unknown" (709). When the distribution control unit 102 is activated, processing 708 and 709 is performed.
[0032]
FIG. 8 shows processing of the distribution control unit 102.
The distribution control unit 102 is activated with the resource ID of the resource requested by the client computer 110 by the request accepting unit 101, refers to the multicast address list 106-2 at the time of activation, and assigns a multicast address for dividing resource transmission (801). The distribution destination management list 102-1 is created based on the multicast address and the divided resource configuration list 107-1 (802).
[0033]
In 801 processing, when assigning a multicast address, if the address assignment information 301 in the multicast address list 106-2 matches the resource ID of the resource requested by the client computer 110, the corresponding multicast address information 302 is assigned to the resource. If it is used as a multicast address for transmission and there is no match, the address allocation information 301 that can be used is selected at random, and the use of the address allocation information 301 is overwritten during use. The corresponding multicast address information 302 is used as a multicast address for resource transmission.
[0034]
Next, the process waits until the client information 405 of the client computer 110 that first requested the distribution by the request reception unit 101 is added to the distribution destination management list 102-1 (803). Next, the distribution destination management list 102-1 is referred to, and the first divided resource ID in the list is acquired (804). A split resource that matches the split resource ID acquired in the preprocessing (804, 811, 812) is acquired from the split resource DB 107 (805).
[0035]
Next, the transmission destination information 401 and the division resource ID information 403 are acquired from the distribution destination management list 102-1, and the division resource transmission information 402 corresponding to the division resource ID acquired in the preprocessing (804, 811 and 812) is acquired. A list 102-2 is created (806). Subsequently, in the distribution destination management list 102-1, the transmission state of the division resource transmission information 402 including the division resource ID that matches the division resource ID acquired in the preprocessing (804, 811 and 812) is updated from not yet to completion. Further, the client information 406 for which all the divided resources have been sent is deleted from the distribution destination management list 102-1 (806).
[0036]
Next, the division resource to be transmitted and the transmission destination list 102-2 are sent to the transmission selection unit 102-3, and the division resource is transmitted by multicast or unicast based on the transmission destination list 102-2 (807). After transmitting the divided resources, the transmission destination list is deleted (808). Next, it is checked whether there is client information 406 in the delivery destination management list 102-1 (809). If there is no client information 406, the delivery destination management list 102-1 is deleted (813), and the multicast address list 106-2 is stored. The multicast address for dividing resource transmission is released (814), the distribution control unit is stopped, and the process is terminated.
[0037]
In 814 processing, when releasing a multicast address, the multicast address information 302 in the multicast address list 106-2 is selected that matches the multicast address for dividing resource transmission, and the corresponding address allocation information 301 is in use. Overwrites the address assignment information 301 with availability. When the client information 406 is in the distribution destination management list 102-1, it is further checked whether the transmitted divided resource is the last divided resource in the distribution destination management list 102-1 (810), and the transmitted divided resource is the last divided resource. If it is a resource, the first divided resource ID is acquired from the distribution destination management list 102-1 (811).
[0038]
If the transmitted divided resource is not the last divided resource, the next divided resource ID of the transmitted divided resource is acquired by referring to the distribution destination management list 102-1 (812). After the 811 and 812 processes, the process returns to the 805 process, and the processes of 805 to 812 are repeated until the client information 406 disappears from the distribution destination management list 102-1. As in the process 806, the division resource transmission information 402 is temporarily stored in the transmission destination list 102-2, and the distribution destination management list 102-1 is updated before transmission of the division resource, thereby requesting during division resource transmission. This has the effect of preventing the transmission state of the client information 406 added by the reception unit 101 from being erroneously overwritten, and enables the reception of distribution requests from the client computers 110, 120, and 130 during the transmission of divided resources.
[0039]
By the processing of 810 to 812, it is possible to receive the divided resources transmitted before the client computers 120 and 130 that participated from the middle of the resource distribution request the resource distribution.
[0040]
FIG. 9 shows the processing of the transmission selection unit 102-3. The transmission selection unit 102-3 receives the division resource to be transmitted and the transmission destination list 102-2 in the distribution control unit 102, counts the division resource transmission information 502 of the transmission destination list 102-2, and outputs the count result to the client. Obtained as the number of requests from the computers 110, 120, and 130 (901). Next, a threshold value is acquired from the threshold information 204 of the distribution resource list 106-1 (902).
[0041]
Next, the number of requests from the client computers 110, 120, and 130 is compared with a threshold value (903). When the number of requests from the client computers 110, 120, and 130 is larger than the threshold, the division resource to be transmitted and the transmission destination list 102-2 are sent to the multicast transmission unit 104 (904). The multicast transmission unit 104 refers to a part corresponding to the multicast information 505 in the transmission destination information 501 of the transmission destination list 102-2, acquires a multicast address, and transmits the divided resource to the destination by multicast. When the number of requests from the client computers 110, 120, and 130 is equal to or smaller than the threshold, the division resource to be transmitted and the transmission destination list 102-2 are sent to the unicast transmission unit 105 (905).
[0042]
The unicast transmission unit 105 acquires all transmission destinations whose transmission states are not yet received from the transmission destination information 501 in the transmission destination list 102-2, and transmits the divided resources to all the acquired transmission destinations by unicast.
[0043]
FIG. 10 is a sequence diagram showing processing when the client computers 120 and 130 participate in resource reception after the server computer 100 starts resource distribution. In this figure, it is assumed that resources are divided into divided resources A, B, C to N and transmitted. First, the client computer 110 requests the server computer 100 to distribute resources (1001), the server computer 100 that receives the request notifies the client computer 110 of the multicast address (1002), and the client computer 110 immediately uses the received multicast address. Join a multicast group.
[0044]
Here, since the client computer 110 is a client computer that first requests a resource from the server computer 100, the client computer 110 receives from the divided resource A. Next, the server computer 100 transmits the divided resource A to the client computer 110 by unicast (1003). Here, it is assumed that the number of requests from the client computers 110, 120, and 130 does not exceed the threshold.
[0045]
Next, after the transmission of the divided resource A is completed, the client computer 120 requests the server computer 100 to distribute resources (1004), and the server computer 100 that has received the request notifies the client computer 120 of the multicast address (1005), and the client computer 120 The computer 120 immediately joins the multicast group with the received multicast address. Here, the client computer 120 receives from the divided resource B.
[0046]
Next, the server computer 100 transmits the divided resource B to the client computers 110 and 120 by unicast (1006 and 1007). After the transmission of the divided resource B is completed, the client computer 130 requests resource distribution to the server computer 100 (1008), and the server computer 100 that has received the request notifies the client computer 130 of the multicast address (1009), and the client computer 130 Join the multicast group immediately with the received multicast address.
[0047]
Here, it is assumed that the number of requests from the client computers 110, 120, and 130 exceeds the threshold. Since the number of requests exceeds the threshold, the delivery method is switched from unicast to multicast (1010). Here, the client computer 130 receives from the divided resource C. Next, the server computer 100 transmits the divided resource C to the client computers 110, 120, and 130 by multicast (1011). Similar to the processing of 1011, the divided resource is transmitted by multicast to the divided resource N (1012).
[0048]
Next, since the client computer 110 has received all the divided resources, it sends a reception completion notification to the server computer 100 and leaves the multicast group (1013). Here, it is assumed that the number of requests from the client computers 120 and 130 is equal to or less than the threshold value after 1013 processing. Since the number of requests is less than or equal to the threshold value, the distribution method is switched from multicast to unicast (1014).
[0049]
Next, the server computer 100 transmits the divided resource A to the client computers 120 and 130 by unicast (1015 and 1016). Here, since the server computer 100 manages the transmission status of the divided resources for each of the client computers 110, 120, and 130, the client computers 120 and 130 can receive the divided resources transmitted before issuing the resource distribution request. It is. Next, since the client computer 120 has received all the divided resources, it sends a reception completion notification to the server computer 100 and leaves the multicast group (1017).
[0050]
Next, the server computer 100 transmits the divided resource B to the client computer 130 by unicast (1018). Next, since all the divided resources have been received, the client computer 130 transmits a reception completion notification to the server computer 100 and leaves the multicast group (1019).
[0051]
As described above, in the present invention, resources are divided and held by a server computer that provides resources, and the distribution method of divided resources is changed from unicast to multicast, or from multicast to unicast according to the number of requests for divided resources from client computers. The distribution method is dynamically switched. As a result, the client computer can reduce the waiting time until resource distribution without increasing the load on the server computer and the network traffic. Also, the present invention is effective when the network communication speed is slow and it is necessary to divide and distribute resources at regular intervals.
[0052]
Further, according to the present invention, in a client / server system in the case where there are a large number of client computers in the network, the client computer determines a resource distribution opportunity, and the server computer performs resource distribution in response to a request from the client computer. In the case of this resource distribution, if the resource is divided, an identifier is assigned to each divided resource, and the divided resource is distributed to other computers, it is determined whether or not each divided resource is distributed. Distribution of data that is not distributed among the divided resources based on the divided resource transmission information I do. As a result, it is possible to identify the divided resources that have not been distributed to computers that have joined the multicast group later and distribute only the undistributed portions.
[0053]
In addition, since it is possible to manage information indicating whether or not each divided resource has been distributed and distribution destination information, distribution management according to the divided resources is possible.
[0054]
In the present invention, the server computer divides and holds the resources to be distributed, and dynamically switches the distribution method of the divided resources from unicast to multicast and from multicast to unicast according to the number of requests for the divided resources from the client computer. However, resources are divided and distributed. The client computer is triggered by the resource distribution request to the server computer, participates in the multicast group notified from the server computer, receives the divided resources by multicast or unicast, and triggers the completion of reception of all the divided resources Leave the multicast group and restore the divided resources. The resource is divided and distributed. When the distribution request from the client computer is equal to or less than the threshold value, the divided resource is distributed by unicast, and when the threshold value is exceeded, the divided resource is distributed by multicast. As a result, without increasing the load on the server computer and the traffic on the network, the client computer can keep the waiting time from the resource delivery request to the resource delivery extremely small.
[0055]
【The invention's effect】
As described above, according to the present invention, network traffic can be reduced by dividing resources by a server computer that provides resources and switching the distribution method of divided resources according to the number of requests for divided resources from client computers. .
[Brief description of the drawings]
FIG. 1 is an example of a configuration diagram of a system to which the present invention is applied.
FIG. 2 is an example of a distribution resource list.
FIG. 3 is an example of a multicast address list.
FIG. 4 is an example of a distribution destination management list.
FIG. 5 is an example of a transmission destination list.
FIG. 6 is an example of a divided resource configuration list.
FIG. 7 is an example of a flowchart illustrating an operation of a request reception unit.
FIG. 8 is an example of a flowchart illustrating an operation of a distribution control unit.
FIG. 9 is an example of a flowchart illustrating an operation of a transmission selection unit.
FIG. 10 is an example of a sequence when a client computer makes a distribution request after starting resource distribution.
[Explanation of symbols]
100 server computer
110 Client computer
120 client computers
130 Client computer
140 Resource server computer
150 network

Claims (4)

計算機を用いた配信方法であって、
データ配信装置が、
配信する前記データごとに配信先計算機の閾値情報を定めた配信データ情報と、
前記データの配信先計算機を管理する配信先管理情報と、
前記データを所定の大きさに分割した分割データごとに、配信したか否かを示す情報と前記配信先計算機とを対応付けた分割データ配信情報と、
を有し、
前記データ配信装置が、
配信する前記分割データを取得し、
前記配信先管理情報と前記分割データ配信情報とから、取得した前記分割データが未だ配信されていない前記配信先計算機の数を算出し、
取得した前記分割データの元となる前記データに対応する前記閾値情報を取得し、
前記配信先計算機の数と前記閾値情報とに基づいて決定した配信方法で前記分割データを配信する
ことを特徴とするデータ配信方法。
A distribution method using a computer,
Data distribution device
Distribution data information defining threshold information of a distribution destination computer for each of the data to be distributed;
Distribution destination management information for managing the data distribution destination computer;
For each divided data obtained by dividing the data into a predetermined size, divided data distribution information in which information indicating whether the data is distributed and the distribution destination computer are associated with each other;
Have
The data distribution device is
Obtain the divided data to be distributed,
From the delivery destination management information and the divided data delivery information, calculate the number of delivery destination computers to which the acquired divided data has not yet been delivered,
Obtaining the threshold information corresponding to the data that is the source of the obtained divided data;
A data distribution method, wherein the divided data is distributed by a distribution method determined based on the number of distribution destination computers and the threshold information.
請求項1に記載のデータ配信方法であって、
前記配信方法はマルチキャスト配信とユニキャスト配信であることを特徴とするデータ配信方法。
The data distribution method according to claim 1,
The data distribution method according to claim 1, wherein the distribution method is multicast distribution or unicast distribution.
計算機を用いたデータ配信装置であって、
配信する前記データごとに配信先計算機の閾値情報を定めた配信データ情報と、前記データの配信先計算機を管理する配信先管理情報と、データ分割部により分割された分割データごとに配信したか否かを示す情報と前記配信先計算機とを対応付けた分割データ配信情報と、を格納する格納部と、
前記データを所定の大きさの前記分割データに分割する前記データ分割部と、
配信する前記分割データを取得し、前記配信先管理情報と前記分割データ配信情報とから、取得した前記分割データが未だ配信されていない前記配信先計算機の数を算出し、取得した前記分割データの元となる前記データに対応する前記閾値情報を取得し、前記配信先計算機の数と前記閾値情報とに基づいて、取得した前記分割データの配信方法を決定する配信選択部と、
決定した前記配信方法で前記分割データを配信するデータ配信部と
を有することを特徴とするデータ配信装置。
A data distribution device using a computer,
Distribution data information that defines threshold information of a distribution destination computer for each of the data to be distributed, distribution destination management information that manages the distribution destination computer of the data, and whether or not distribution has been performed for each divided data divided by the data dividing unit A storage unit that stores divided data distribution information in which the information indicating whether or not the distribution destination computer is associated ;
The data dividing unit for dividing the data into the divided data having a predetermined size;
The divided data to be distributed is acquired, the number of the distribution destination computers to which the acquired divided data is not yet distributed is calculated from the distribution destination management information and the divided data distribution information, and the acquired divided data A distribution selection unit that acquires the threshold information corresponding to the original data, and determines a distribution method of the acquired divided data based on the number of the distribution destination computers and the threshold information;
A data distribution unit for distributing the divided data by the determined distribution method ;
A data distribution apparatus comprising:
請求項3に記載のデータ配信装置であって、
前記配信方法はマルチキャスト配信とユニキャスト配信であることを特徴とするデータ配信装置。
The data distribution device according to claim 3,
A data distribution apparatus characterized in that the distribution methods are multicast distribution and unicast distribution.
JP2002340264A 2002-11-25 2002-11-25 Data distribution method and apparatus Expired - Fee Related JP3960211B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002340264A JP3960211B2 (en) 2002-11-25 2002-11-25 Data distribution method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002340264A JP3960211B2 (en) 2002-11-25 2002-11-25 Data distribution method and apparatus

Publications (2)

Publication Number Publication Date
JP2004178031A JP2004178031A (en) 2004-06-24
JP3960211B2 true JP3960211B2 (en) 2007-08-15

Family

ID=32702935

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002340264A Expired - Fee Related JP3960211B2 (en) 2002-11-25 2002-11-25 Data distribution method and apparatus

Country Status (1)

Country Link
JP (1) JP3960211B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4507255B2 (en) * 2005-04-21 2010-07-21 Kddi株式会社 Content transmission device
JP4508137B2 (en) * 2006-03-10 2010-07-21 セイコーエプソン株式会社 Data backup processing apparatus and method
US7698520B2 (en) 2006-03-10 2010-04-13 Seiko Epson Corporation Method for processing backup, devices for backup processing, and storage mediums for storing a program for operating a backup processing device
JP5245866B2 (en) * 2008-01-29 2013-07-24 富士通株式会社 Management apparatus and management method
JPWO2010050022A1 (en) * 2008-10-29 2012-03-29 富士通株式会社 Distribution system, proxy server, and distribution method
JP5566193B2 (en) * 2010-06-08 2014-08-06 日本電信電話株式会社 Broadcast system for switching distribution method and control method thereof
JP5250065B2 (en) * 2011-03-04 2013-07-31 株式会社コナミデジタルエンタテインメント Distribution system, terminal device, distribution method, terminal method, and program
EP3488558B1 (en) 2017-08-15 2019-07-24 Google LLC Optimized utilization of streaming bandwidth using multicast
JP6969520B2 (en) * 2018-08-02 2021-11-24 日本電信電話株式会社 Communication device and switching method

Also Published As

Publication number Publication date
JP2004178031A (en) 2004-06-24

Similar Documents

Publication Publication Date Title
US7346682B2 (en) System for creating and distributing prioritized list of computer nodes selected as participants in a distribution job
CN109688235B (en) Virtual network method for processing business, device and system, controller, storage medium
KR101227121B1 (en) Delayed downloading video service using peer-to-peer(p2p) content distribution network
US7451221B2 (en) Method and apparatus for election of group leaders in a distributed network
US8346843B2 (en) System and method for scalable data distribution
JP4685299B2 (en) Multicast method and apparatus
JP2010504668A (en) Resource delivery method, system, and edge server
US20100138540A1 (en) Method of managing organization of a computer system, computer system, and program for managing organization
US9330154B2 (en) Multicast database replication
US8180730B2 (en) Arbitration token for managing data integrity and data accuracy of information services that utilize distributed data replicas
WO2018076765A1 (en) Content distribution method and device for cloud computing system, computing node and system
JP2006338666A (en) Distributed kernel operating system
JP2006340354A (en) Distributed kernel operating system
JP3960211B2 (en) Data distribution method and apparatus
CN111200622B (en) Resource transmission method and device and storage medium
CN110535811B (en) Remote memory management method and system, server, client and storage medium
US7203768B2 (en) Managing network traffic using hashing functions
Cristian et al. High-performance asynchronous atomic broadcast
JP2004199578A (en) Content delivery method, device, program, and storage medium
US20090157797A1 (en) Data distribution system
EP1744520B1 (en) Method and apparatus for selecting a group leader
CN112217735A (en) Information synchronization method and load balancing system
JP2006100906A (en) Method for managing operation of network system and storage device
JP2002247091A (en) Contents distribution server, method and system
EP2458780A1 (en) Cyclic data delivery using a multicast scheme

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040910

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061031

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070330

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: 20070424

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070507

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

Free format text: PAYMENT UNTIL: 20110525

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110525

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120525

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120525

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130525

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130525

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees