説明

データ配信システム

【課題】データ伝送の信頼性と伝送速度を両立できるファイル配信システムを提供する。
【解決手段】サーバから複数のクライアント端末へファイルを配信するファイル配信システムにおいて、サーバは、複数のクライアント端末へファイル取得指示情報を送信し、接続要求情報を受信すると、その送信元の一部のクライアント端末へ接続応答情報を送信し、クライアント端末は、サーバ又は他のクライアント端末からファイル取得指示情報を受信すると、その送信元へ所定の間隔で接続要求情報を送信し、接続応答情報を受信すると、その送信元のサーバ又はクライアント端末からファイルを取得するとともに接続要求情報の送信を停止して、他の複数のクライアント端末へファイル取得指示情報を送信し、接続要求情報を受信すると、その送信元の一部のクライアント端末へ接続応答情報を送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークにおけるデータ通信技術に関し、特に、TCP/IPネットワークを用いて大量のデータを配信するデータ配信システムに関するものである
【背景技術】
【0002】
例えば、IP(Internet Protocol)ネットワーク上で、文字、画像、音声データなどを伝送する際、データ伝送の効率を優先する場合にはコネクションレス型のプロトコル(UDP:User Datagram Protocol)を採用し、データ伝送の信頼性を優先する場合にはコネクション型のプロトコル(TCP:Transmission Control Protocol)を採用するのが一般的である。コネクションレス型通信とは、データを転送する際に通信相手との間にコネクションの確立を必要としない通信であり、コネクション型通信とは、データを転送する際に通信相手との間にコネクションの確立を必要とする通信である。
前者の方式は、1:Nのマルチキャスト通信が可能だが、再送制御などのエラー訂正機能を持たないため、データ伝送の信頼性に劣る。特に大規模ネットワーク上でのファイル配信などのデータ配信を想定する場合、この方式では、環境要因による伝送処理失敗のリスクが高いことが問題となる。
一方、後者の方式はデータ伝送の信頼性に優るが、1:1のユニキャスト通信が前提となるためデータ伝送の効率に劣る。同様に大規模ネットワーク上でのデータ配信を想定する場合、この方式では、配信処理に要する時間や配信元の負荷が問題となる。
【0003】
図10に、従来のデータ配信システムにおける配信例を示す。図10において、配信元のサーバ100は、配信先である12台のクライアント端末200(1)〜200(12)に対し、同一内容のデータファイルを配信するものである。サーバ100は、まず、クライアント端末200(1)〜200(4)に対し同時にファイル配信し、次に、クライアント端末200(5)〜200(8)に対し同時にファイル配信し、最後に、クライアント端末200(9)〜200(12)に対し同時にファイル配信している。
【0004】
このように、従来のTCPを用いたデータ配信では、配信先一つ一つに対する1:1のユニキャスト通信が前提となっており、このユニキャスト通信を同時に一括して実行することも、順次実行することもできるが、通常は配信元で許容し得る負荷に合わせて、あらかじめデータ伝送の同時実行最大数を制限する。制限値以上の配信先がある場合は、実行中のデータ伝送の終了を待っての順次処理となる。制限値を高く設定すれば、負荷増のために一回に同時実行するデータ伝送処理時間が長くなり、制限値を低く設定すれば、順次処理を繰り返す回数が多くなる。
規模を簡略化した図10の例では、同時実行の制限値を4とし、12個の配信先に対して3回の順次処理でデータファイル配信を完了している。
【0005】
下記の特許文献1には、サーバと複数のクライアントで構成するネットワークシステムの一斉指令通信方式において、UDPパケットを用いて一斉指令の送信を実施する技術が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2003−198553公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述したように、ネットワーク上で大量のデータを伝送する際、コネクションレス型通信ではデータ伝送の信頼性に劣り、コネクション型通信では伝送速度や効率に劣るという課題があった。
本発明は、このような従来の課題を解決するために為されたもので、ネットワーク上でデータを伝送する際、データ伝送の信頼性と伝送速度を両立することのできるデータ配信システムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するための、本願発明の代表的な構成は、次のとおりである。すなわち、
サーバから複数のクライアント端末に対してデータを配信するデータ配信システムであって、
前記サーバは、
前記複数のクライアント端末に対して、データ取得指示情報を送信し、該データ取得指示情報を受信した前記クライアント端末から接続要求情報を受信すると、該接続要求情報の送信元であるクライアント端末のうち一部のクライアント端末に対して接続応答情報を送信し、
前記クライアント端末は、
前記サーバ又は他のクライアント端末からデータ取得指示情報を受信すると、該データ取得指示情報で指定されたデータを未取得の場合は、前記データ取得指示情報の送信元である前記サーバ又は他のクライアント端末に対して所定の間隔で接続要求情報の送信を繰り返し、該接続要求情報に対する前記サーバ又は他のクライアント端末からの接続応答情報を受信すると、該接続応答情報の送信元である前記サーバ又は他のクライアント端末からデータを取得するとともに、前記接続要求情報の送信を停止して、自身以外の複数のクライアント端末に対してデータ取得指示情報を送信し、
自身以外の複数のクライアント端末に対してデータ取得指示情報を送信した後、該データ取得指示情報を受信したクライアント端末から接続要求情報を受信すると、該接続要求情報の送信元であるクライアント端末のうち一部のクライアント端末に対して接続応答情報を送信することを特徴とするデータ配信システム。
【発明の効果】
【0009】
本願発明によれば、データ伝送の信頼性と伝送速度を両立することができる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施形態に係るファイル配信システムにおける配信例を示す図である。
【図2】本発明の実施形態に係るファイル転送手順例を示す図である。
【図3】本発明の実施形態に係る制御電文例を示す図である。
【図4】本発明の実施形態に係るファイル配信システムの構成例を示す図である。
【図5】本発明の実施形態に係るサーバの機能ブロック構成例を示す図である。
【図6】本発明の実施形態に係るサーバ記憶部の構成例を示す図である。
【図7】本発明の実施形態に係るクライアント端末の機能ブロック構成例を示す図である。
【図8】本発明の実施形態に係るクライアント端末記憶部の構成例を示す図である。
【図9】本発明の実施形態に係るファイル配信例を示す図である。
【図10】従来のファイル配信システムにおける配信例を示す図である。
【発明を実施するための形態】
【0011】
まず、本発明の実施形態の概要を、図1を用いて説明する。本実施形態では、データはファイルとして伝送される。
図1の例では、まず、最初の配信元である例えばサーバ10から、最初の配信先である3台のクライアント端末20(1)〜20(3)に対して、同一内容のファイルをデータ伝送する。次に、サーバ10から3台のクライアント端末20(10)〜20(12)に対して同一内容のファイルをデータ伝送するとともに、最初の配信先である3台のクライアント端末20(1)〜20(3)から、それぞれ、2台のクライアント端末20に対して、同一内容のファイルをデータ伝送する。
つまり図1の例では、ファイル取得したクライアント端末20を新たな配信元にするとともに、各配信元から同時にデータ伝送する配信先の制限値を3〜2とし、総計12個の配信先に対して2回の順次処理でファイル配信を完了している。
【0012】
このように本実施形態では、最初の配信元であるサーバ10への負荷集中を緩和するために、サーバ10から同時にデータ伝送する最初の配信先であるクライアント端末20の数を、ある程度の制限値に抑えたうえで、以降のデータ伝送処理をファイル取得したクライアント端末20にも負担させ、配信元装置として機能させるものである。
【0013】
次に、本実施形態に係るファイル転送手順例を、図2と図3を用いて説明する。図2は、本実施形態に係るファイル転送手順例を示す図であり、図3は、本実施形態に係る制御情報の電文例を示す図である。
図2に示すように、まず、配信元であるサーバ10が、制御情報であるファイル取得指示情報(データ取得指示情報)を、配信先である全てのクライアント端末20へUDPでマルチキャスト送信する(ステップS1)。
【0014】
ファイル取得指示情報を受信した全てのクライアント端末20は、それぞれ、サーバ10へ、制御情報である接続要求情報を繰り返しUDPでユニキャスト送信する(ステップS2)。
該接続要求情報を受信したサーバ10は、該接続要求情報の送信元のクライアント端末20のうち一部(例えば3つ)のクライアント端末20に対して、制御情報であって接続可否を示す電文内に許可を示す応答コードを含む接続応答情報をUDPでユニキャスト送信し、他のクライアント端末20には接続可否を示す電文内に不許可を示す応答コードを含む接続応答情報をUDPでユニキャスト送信する(ステップS3)。ここで、サーバ10が選択する数(上記例では3つ)は、サーバ10に同時接続できるクライアント端末20の最大数であり、例えば、接続要求の受信先着順に接続許可するクライアント端末20を選択する。
【0015】
サーバ10から接続応答情報を受信したクライアント端末20は、サーバ10との通信接続をTCPで行い(ステップS4)、通信確立後にサーバ10からファイルデータをダウンロードして取得(ステップS5)し、その後、サーバ10との通信を切断する(ステップS6)。つまり、ファイルデータ伝送は、TCPを用いたユニキャストで確実に行う。なお、ステップS4〜ステップS6には、FTP(File Transfer Protocol)を用いてもよい。
その後、ステップS4〜ステップS6の処理を行ったクライアント端末20は、ファイルデータを取得したか否かに拘らず、制御情報である切断通知情報をサーバ10へUDPでユニキャスト送信する(ステップS7)。
【0016】
次に、ファイルデータを取得したクライアント端末20は、接続要求情報の送信を停止するとともに、自身以外のクライアント端末20に対するファイル取得指示情報を、自身以外の全てのクライアント端末20及びサーバ10へUDPでマルチキャスト送信する(ステップS8)。このファイル取得指示情報は、ファイル取得通知(データ取得通知)としても機能する。ステップS8のファイル取得指示情報送信により、単一の配信元から配信先へのファイル転送手順は完了する。
このようにして、ファイルデータを取得したクライアント端末20は、新たな配信元として機能するようになる。
ステップS8でクライアント端末20から送信されるファイル取得指示情報の電文の構成は、ステップS1でサーバ10から送信されるファイル取得指示情報の電文の構成と同一であり、電文内部の制御情報は一部を除いて、サーバ10から送信されるファイル取得指示情報のコピーが使われる。例外は、後述する配信元IPアドレス、ファイルパス、制限時間であり、これらは新たに送信元となったクライアント端末20自身の情報に書き換えられる。
【0017】
配信元となったクライアント端末20からファイル取得指示情報を受信した全てのクライアント端末20は、それぞれ、配信元であるクライアント端末20又はサーバ10に対して接続要求情報をUDPでユニキャスト送信する(ステップS2)。
接続要求情報を受信した配信元は、接続要求情報の送信元であるクライアント端末20のうち一部(例えば3つ)のクライアント端末20を例えば先着順で選択して、該選択した3つのクライアント端末20に対し接続許可を示す応答コードを含む接続応答情報をUDPでユニキャスト送信し、その他のクライアント端末には接続不許可を示す応答コードを含む接続応答情報をUDPでユニキャスト送信する(ステップS3)。この選択する数(上記例では3つ)は、配信元に同時接続できるクライアント端末20の最大数である。
【0018】
配信元から接続を許可されたクライアント端末20は、配信元との通信接続をTCPで行い(ステップS4)、通信確立後に配信元からファイルデータをダウンロードして取得(ステップS5)し、その後、配信元との通信を切断する(ステップS6)。
ステップS4〜ステップS6の処理後、ファイルデータ取得の成否に拘らず、クライアント端末20は、切断通知情報を配信元へUDPでユニキャスト送信する(ステップS7)。
【0019】
次に、ファイルデータを取得したクライアント端末20は、接続要求情報の送信を停止するとともに、自身以外のクライアント端末20に対するファイル取得指示情報(ファイル取得通知)を、自身以外の全てのクライアント端末20及びサーバ10へUDPでマルチキャスト送信する(ステップS8)。このようにして、ファイルデータを取得したクライアント端末20は、新たな配信元として機能するようになり、本システムは、ステップS2からステップS8を繰り返す。
【0020】
次に、上述したステップS1等で使用される制御電文の内容について、図3を用いて説明する。
まず、ステップS1やステップS8のファイル取得指示情報の内容について説明する。このファイル取得指示情報の内容は、図3に示すように、処理ID(identification:識別子)、ファイル名称、ファイルサイズ、マルチキャストアドレス、配信元IPアドレス、ファイルパス、配信開始日時、制限時間、配信先IPアドレス及び配信先IPアドレスごとの接続最大数や遅延時間のリストである。
【0021】
ここで、処理IDは、同一内容のファイルを配信するファイル配信処理を示す一意のIDであり、異なる内容のファイルを配信する同時進行中の他の処理との区別に利用する。ファイル名称は、配信するファイルの名称である。ファイルサイズは、配信するファイルのサイズであり、ファイルデータ伝送の完了や伝送結果の判定に利用する。マルチキャストアドレスは、配信先である全てのクライアント端末20を示す1つのIPアドレスである。配信元IPアドレスは、ファイル取得指示情報を送信した送信元のIPアドレスである。各配信先はこのIPアドレスに対して、前述したステップ2の接続要求を行う。ファイルパスは、ファイル取得指示情報の送信元が配信対象ファイルを格納しているパスであり、ファイルデータの格納場所を示す。各配信先は受信したファイルパスに基づいて、前述したステップ5で配信元のファイルデータをダウンロードする。
【0022】
配信開始日時には、最初の配信元であるサーバ10がファイル取得指示情報を送信した送信日時か、又は無効値を意味する0(ゼロ)が設定される。制限時間は、ファイル取得指示情報の送信元が配信対象ファイルの保持を保証する時間である。
最初の配信元の送信日時が設定されるのは、全ての配信先と配信元のシステム時間がNTP(Network Time Protocol )同期などにより一致している場合が好ましい。この場合、最初の配信元は、ファイル取得指示情報内の配信開始日時として自身のシステム時間を設定する。各配信先は、受信したファイル取得指示情報の配信開始日時が有効値の場合、自身が配信元として送信するファイル取得情報内に設定する配信開始日時と制限時間として、受信したファイル取得指示情報内のものをそのままコピーして使う。全ての配信元と配信先は、ファイル取得指示情報内の配信開始日時から制限時間が経過したところで、ファイル配信処理終了と判断する。
【0023】
配信開始日時に無効値を意味する0が設定されるのは、配信先と配信元のシステム時間が一致していない可能性がある場合である。各配信先は、受信したファイル取得指示情報の配信開始日時が無効値の場合、自身が配信元として送信するファイル取得指示情報内に設定する制限時間として、受信したファイル取得指示内の制限時間から経過時間(即ちファイル取得指示情報受信からファイル取得指示情報送信までの経過時間)を差し引いて設定する。全ての配信元と配信先は、ファイル取得指示情報の受信から制限時間が経過したところで、ファイル配信処理終了と判断する。
この方法は、システム時間に依存しない利点があるが、制御電文の伝送遅延時間が、各配信元と配信先の制限時間の経過を検出するタイミングにずれをもたらす場合がある。
【0024】
配信先IPアドレスは、配信先の全てのクライアント端末20のIPアドレスを記述したリストであり、ファイル取得指示情報の受信側は、自身のIPアドレスが該リストに含まれることで、当該ファイルを取得することを求められている配信先であると認識する。
接続最大数は、ファイルを取得した配信先が新たな配信元となったときに、同時に接続(配信)できる配信先のクライアント端末20の最大数である。この接続最大数は、配信先IPアドレスごとに設定され、最初の配信元であるサーバ10から指定する。
遅延時間は、配信先であるクライアント端末20が、配信元のサーバ10やクライアント端末20からファイル取得指示情報を受信した後、配信元へ接続要求情報の送信を開始するまでの遅延時間で、通常は0(ゼロ)である。遅延時間は、配信先IPアドレスごとに設定され、最初の配信元であるサーバ10から指定する。接続最大数や遅延時間の用い方は後述する。
【0025】
また、上述したステップS2の接続要求情報の内容は、図3に示すように、処理ID、接続元IPアドレス、接続先IPアドレスである。接続元IPアドレスは、ステップS4〜ステップS6でTCP接続する際の接続元側IPアドレス、つまり配信先IPアドレスである。接続先IPアドレスは、ステップS4〜ステップS6でTCP接続する際の接続先側IPアドレス、つまり配信元IPアドレスである。
また、上述したステップS3の接続応答情報の内容は、図3に示すように、処理ID、接続元IPアドレス、接続先IPアドレス、応答コード(許可/不許可)である。応答コードは、接続可否を示すコードである。
また、上述したステップS7の切断通知情報の内容は、図3に示すように、処理ID、接続元IPアドレス、接続先IPアドレスである。
また、上述したステップS8のファイル取得指示(ファイル取得通知)の内容は、ステップS1のファイル取得指示と同様である。
【0026】
次に、本発明の実施形態に係るファイル配信システムの構成例について、図4〜図8を用いて説明する。図4は、本実施形態に係るファイル配信システムの構成例を示す図である。
図4に示すように、本実施形態に係るファイル配信システムは、最初のファイル配信元である1台のサーバ10と、サーバ10とインターネット等のネットワーク30を介して接続された複数のクライアント端末20を備える。
【0027】
まず、本実施形態に係るサーバの構成例について、図5〜図6を用いて説明する。図5は、本実施形態に係るサーバの機能ブロック構成例を示す図である。図6は、本実施形態に係るサーバ記憶部の構成例を示す図である。
図5に示すように、サーバ10は、CPU(Central Processing Unit)を有するサーバ制御部11、RAM(Random Access Memory)やROM(Read Only Memory)や磁気ディスク装置等から構成されるサーバ記憶部12、サーバ操作表示部13、サーバ外部IF14を備える。
サーバ操作表示部13は、サーバ10に対する操作者からの指示やデータ等の入力を受付ける操作部や、各種データ等を表示する表示部を備える。該操作部は、キーボードやマウス等から構成される。該表示部は、LCD等から構成される。サーバ外部IF14は、サーバ10外部のネットワーク30と接続するためのインタフェース部である。
【0028】
図6に示すように、サーバ記憶部12は、マルチキャストアドレス121や、クライアント端末20へ配信する処理毎に、処理ID122a、ファイル名称122b、ファイルサイズ122c、ファイルパス情報122d、配信開始日時122e、制限時間122f、ファイルデータ122gを記憶し、さらに、当該サーバ10自身の接続最大数情報123や当該サーバ10自身のIPアドレスを示す配信元IPアドレス情報(図6の例では「1110」)124、配信先である全てのクライアント端末20のIPアドレスのリストである配信先IPアドレス情報125、各配信先のクライアント端末20の同時接続最大数を示す接続最大数情報126、各配信先のクライアント端末20の遅延時間を示す遅延時間情報127、どのクライアント端末20へファイルを配信することができたかを示す配信状況情報128を記憶している。ここで、マルチキャストアドレス121、配信先IPアドレス情報125、接続最大数情報126、遅延時間情報127、配信状況情報128も、処理ID122a毎に保持することが望ましい。これにより、ファイル配信の要求発生毎に配信先が異なる場合であっても、処理ID122aに基づいて管理することができる。
【0029】
図6の例では、例えば、ファイルデータ122gが「aaa」の場合は、処理ID122aが「A01」、ファイル名称122bが「AAA」、ファイルサイズ122cが「a02」、ファイルパス情報122dが「a03」、配信開始日時122eが「a04」、制限時間122fが「a05」である。サーバ記憶部12は、このような配信ファイルデータを複数記憶しており、図6の例では、処理ID122aが「A01」と「B01」の2つの配信ファイルデータを示す。
【0030】
また、図6の例では、例えば配信先IPアドレス情報125が「1111」のクライアント端末20について、接続最大数情報126が「3」、遅延時間情報127が「0」ms、配信状況情報128が「○」印、つまり配信済みであることを示し、配信先IPアドレス情報125が「1112」のクライアント端末20について、接続最大数情報126が「4」、遅延時間情報127が「0」ms、配信状況情報128が「−」印、つまり未配信であることを示している。
【0031】
なお、これらのサーバ記憶部12のデータのうち、例えば、自身のIPアドレス124、接続最大数126、遅延時間127は予め設定されていることが好ましい。同様に、配信ファイルの管理ルートパスや制限時間判断モード(図2のステップS1送信時の配信開始日時を無効値とするか否かなどの設定情報)も予め設定されていることが好ましい。また、マルチキャストアドレス121、ファイル名称122b、ファイルデータ122g、配信先IPアドレス125は、配信要求の発生毎に、サーバ操作表示部13又は外部IF14を介してネットワークから入力されることが好ましい。さらに、処理ID122a、ファイルサイズ122c、ファイルパス122d、配信開始日時122e、制限時間122fは、システム(例えば、サーバ制御部11)が自動的に決定または検出するか、設定や一定のルールに基づいて導き出すことが好ましい。なお、配信状況128は受信電文から随時取得するデータである。
また、サーバ記憶部12は、サーバ制御部11のCPUの動作プログラム等を格納するメモリを備えており、該CPUは、この動作プログラムに従って動作する。
【0032】
サーバ制御部11は、サーバ操作表示部13やサーバ記憶部12など、サーバ10の各構成部及びサーバ10全体の制御を行うもので、後述のファイル取得指示手段、接続要求解析手段、接続応答手段を有する。
詳しく説明すると、サーバ制御部11は、全てのクライアント端末20に対するファイル取得指示として、サーバ記憶部12内の情報からファイル取得指示情報を作成し、全てのクライアント端末20へマルチキャスト送信する。このとき、ファイル取得指示情報の配信開始日時はCPUにより自動作成され、サーバ記憶部12に配信開始日時122eとして記憶される。このように、サーバ制御部11は、クライアント端末20に対してファイル取得を指示するファイル取得指示手段を有する。
【0033】
サーバ10からのファイル取得指示情報を受信した全てのクライアント端末20から、それぞれ、サーバ10へ接続要求情報がユニキャスト送信され、該接続要求情報をサーバ10が受信すると、サーバ制御部11は、該接続要求情報の内容を解析し、該接続要求情報を送信したクライアント端末20のIPアドレスから、接続要求情報を送信したクライアント端末20を特定する。このように、サーバ制御部11は、ファイル取得指示情報を受信したクライアント端末20からの接続要求情報を解析する接続要求解析手段を有する。
【0034】
次に、サーバ制御部11は、接続要求情報の送信元であるクライアント端末20のうち一部(例えば3つ)のクライアント端末20を選択して、該選択した3つのクライアント端末20に対し、それぞれ応答コードが許可である接続応答情報を、同時に又は順次、ユニキャスト送信する。他のクライアント端末20に対しては、応答コードが不許可である接続応答情報を送信することが好ましい。なお、以下の説明において、単に接続応答情報送信と記載し特に断らないときは、応答コードが許可である接続応答情報送信を意味する。このように、サーバ制御部11は、接続要求情報の送信元であるクライアント端末20に対して、接続を許可する応答を行う接続応答手段を有する。
なお、上述の接続応答情報の送信先のクライアント端末20を制限する制限値(例えば3つ)は、接続最大数情報123で設定されている。
【0035】
サーバ10から接続応答情報を受信したクライアント端末20は、サーバ10との通信接続を行い、ファイルパス122dに基づきサーバ10からファイルデータ122gをダウンロードした後、通信を切断して、サーバ10へ切断通知を行う。さらに該クライアント端末20は、サーバ10から受信したファイル取得指示情報に基づき、自身以外のクライアント端末20に対するファイル取得指示情報(ファイル取得通知)を作成し、自身以外の全てのクライアント端末20及びサーバ10へマルチキャスト送信する。
【0036】
なお、ファイル取得したクライアント端末20は、ファイル取得指示情報を作成する際、サーバ10から受信したファイル取得指示情報に基づき作成するが、ファイル取得指示情報中の配信元アドレス、ファイルパスは、自身のIPアドレスとファイルパスに変更する。
【0037】
次に、本実施形態に係るクライアント端末の構成例について、図7と図8を用いて説明する。図7は、本実施形態に係るクライアント端末の機能ブロック構成例を示す図である。図8は、本実施形態に係るクライアント端末記憶部の構成例を示す図である。
図7に示すように、クライアント端末20は、CPUを有するクライアント端末制御部21、RAMやROMや磁気ディスク装置等から構成されるクライアント端末記憶部22、クライアント端末操作表示部23、クライアント端末外部IF24を備える。
クライアント端末操作表示部23は、クライアント端末20に対する操作者からの指示やデータ等の入力を受付ける操作部や、各種データ等を表示する表示部を備える。該操作部は、キーボードやマウス等から構成される。該表示部は、LCD等から構成される。クライアント端末外部IF24は、クライアント端末20外部のネットワーク30と接続するためのインタフェース部である。
【0038】
クライアント端末記憶部22は、受信したファイル取得指示情報を記憶し、また、図8に示すように、取得した複数のファイルデータ222gにそれぞれ対応するように、処理ID222a、ファイルパス情報222d、制限時間222fを記憶する。さらに、クライアント端末記憶部22は、当該クライアント端末20のIPアドレスを示す配信元IPアドレス情報(図8の例では「1121」)224、当該クライアント端末20に対する配信元のIPアドレスである配信元IPアドレス情報225、接続可否情報226、接続優先順位情報227を記憶している。なお、配信元IPアドレス情報225、接続可否情報226、接続優先順位情報227は、処理ID222a毎に管理されることが好ましい。
【0039】
図8の例では、例えば、ファイルデータ222gが「aaa」の場合は、処理ID222aが「A01」、ファイルパス情報222dが「a13」、制限時間222fが「a15」である。サーバ記憶部12は、このような配信ファイルデータを複数記憶しており、図8の例では、処理ID222aが「A01」と「B01」の2つの配信ファイルデータを示す。
【0040】
処理ID222aが「A01」のファイルに対応して当該クライアント端末20から送信されるファイル取得指示情報は、ファイルパス情報222d「a13」、制限時間222f「a15」以外は、最初にサーバ10から送信されたファイル取得指示情報の内容と同じである。ファイルパス情報222d「a13」、制限時間222f「a15」は、当該クライアント端末20で設定される。なお、上述したように、制限時間222f「a15」は、システム時間が使用できない場合、つまり配信開始日時に無効値を意味する0が設定された場合に、当該クライアント端末20で設定され、システム時間が使用できる場合は、最初にサーバ10から送信された制限時間122f「a05」が使用される。
【0041】
配信元IPアドレス情報225は、当該クライアント端末20に対して配信元となる可能性のあるサーバ10及び他の全てのクライアント端末20のIPアドレスのリストである。接続可否情報226は、当該クライアント端末20がファイルデータを取得するために接続することのできる配信元であるサーバ10及びクライアント端末20、つまりファイル取得指示の送信元のサーバ10及びクライアント端末20のIPアドレスを示すもので、接続可のIPアドレスには「○」が格納されている。接続優先順位情報227は、接続可否情報226で接続可となっているサーバ10及びクライアント端末20のうち、接続する際の優先順位を示す。
【0042】
図8の例では、配信元IPアドレス情報225が「1110(サーバ10のIPアドレス)」、「1111」、・・・とあるように、サーバ10及び全てのクライアント端末20のIPアドレスから構成されている。例えば、配信元IPアドレス情報225が「1110」のサーバ10については、接続可否情報226が「○」つまり接続可、接続優先順位情報227が「2」であることを示し、配信元IPアドレス情報225が「1111」のクライアント端末20については、接続可否情報226が「○」、接続優先順位情報227が「1」であることを示している。したがって、この場合、このIPアドレスが「1121」のクライアント端末20は、接続可である2つの配信元のうち優先順位の高い方、つまりIPアドレスが「1111」のクライアント端末20から順に、接続要求を行うことになる。
【0043】
なお、これらのクライアント端末記憶部22のデータのうち、例えば、自身のIPアドレス情報224、接続優先順位情報227は予め設定されていることが好ましい。同様に、配信ファイルの管理ルートパスなどの設定情報も予め設定されていることが好ましい。また、接続可否情報226は受信電文から随時取得することが好ましい。さらに、ファイルパス222dや制限時間222fは、自身が配信元になる際にシステム(例えば、クライアント端末制御部21)が自動的に決定または検出するか、設定や一定のルールに基づいて導き出すことが好ましい。
また、クライアント端末記憶部22は、クライアント端末制御部21のCPUの動作プログラム等を格納するメモリを備えており、該CPUは、この動作プログラムに従って動作する。
【0044】
クライアント端末制御部21は、クライアント端末操作表示部23やクライアント端末記憶部22など、クライアント端末20の各構成部及びクライアント端末20全体の制御を行うもので、後述の接続要求手段、ファイルデータ取得手段、ファイル取得指示手段、接続要求解析手段、接続応答手段を有する。
詳しく説明すると、クライアント端末制御部21は、サーバ10又は他のクライアント端末20からファイル取得指示情報を受信すると、該ファイル取得指示情報中の配信先IPアドレスに自身のIPアドレスが含まれ、該ファイル取得指示情報で指定されたファイルを未取得である場合に、該ファイル取得指示情報の送信元のサーバ10又はクライアント端末20に関する接続可否情報226を接続可(○印)とし、接続優先順位情報227を参照して、接続可であるサーバ10及びクライアント端末20に対して、接続が許可されるまで、優先順位順に各配信元に接続試行する。このように、クライアント端末制御部21は、ファイル取得指示情報の送信元のサーバ10又はクライアント端末20に対して接続要求を行う接続要求手段を有する。
クライアント端末制御部21は、受信したファイル取得指示情報中の配信先IPアドレスに自身のIPアドレスが含まれないか、又は、該ファイル取得指示情報で指定されたファイルを取得済みである場合には、接続要求情報送信等のファイル取得動作を行わない。
【0045】
なお、ファイル取得指示情報で指定されたファイルを未取得であるか取得済みであるかは、該ファイル取得指示情報中の処理ID及び/又はファイル名称と、クライアント端末記憶部22に記憶された取得済みのファイルに関するファイル取得指示情報の処理ID及び/又はファイル名称とを比較して判断される。
また、接続優先順位情報227は、接続要求を行うクライアント端末20で設定されたものであり、接続優先順位情報227を用いることにより、同一セグメント上の配信元や伝送容量の大きな回線で結ばれた配信元に優先的に接続するような設定により、全体の処理効率を向上できる。
また、接続要求情報の送信を開始する際に、ファイル取得指示情報で設定された遅延時間に基づき、接続要求情報の送信開始を遅延させることが可能である。こうすることにより、最初の配信で各セグメントの代表に配信し、残りはそれぞれ代表から配信を受けるなどの制御が可能となる。
【0046】
接続要求を行った後、クライアント端末制御部21は、接続要求情報の送信先のサーバ10又はクライアント端末20から接続応答情報を受信すると、該接続応答情報の送信元のサーバ10又はクライアント端末20とTCP接続を行い、ファイルデータを取得した後、送信元とのTCP接続を切断する。その後、ファイルデータを取得した相手のサーバ10又はクライアント端末20へ、切断通知を行う。このように、クライアント端末制御部21は、接続応答情報の送信元のサーバ10又はクライアント端末20からファイルデータを取得するファイルデータ取得手段を有する。
【0047】
ファイルデータを取得したクライアント端末20は新たな配信元となり、該配信元となったクライアント端末20のクライアント端末制御部21は、ファイル取得指示情報(ファイル取得通知)を作成し、サーバ10及び他の全てのクライアント端末20へマルチキャスト送信する。このように、クライアント端末制御部21は、他のクライアント端末20に対してファイル取得を指示するファイル取得指示手段を有する。
ファイル取得指示情報を受信した全てのクライアント端末20から、それぞれ、配信元のクライアント端末20へ接続要求情報がユニキャスト送信され、該接続要求情報を配信元のクライアント端末20が受信すると、配信元のクライアント端末制御部21は、該接続要求情報の内容を解析し、該接続要求情報の送信元のクライアント端末20のIPアドレスから、接続要求情報の送信元のクライアント端末20を特定する。このように、クライアント端末制御部21は、ファイル取得指示情報を受信したクライアント端末20からの接続要求情報を解析する接続要求解析手段を有する。
【0048】
次に、配信元のクライアント端末制御部21は、接続要求情報の送信元のクライアント端末20のうち一部(例えば3つ)のクライアント端末20を選択して、該選択した3つのクライアント端末20に対し、それぞれ、接続応答情報を同時に又は順次ユニキャスト送信する。このように、クライアント端末制御部21は、接続要求情報の送信元であるクライアント端末20に対して、接続を許可する応答を行うとともに、接続を許可しないクライアント端末20に対して接続不許可の応答を行う接続応答手段を有する。
なお、上述の接続応答情報の送信先のクライアント端末20を制限する制限値は、サーバ10から送信されたファイル取得指示情報中の同時接続最大数126として指定されたものである。このようにサーバ10から同時接続最大数を指定するので、より配信性能の高いクライアント端末20にはより多くのクライアント端末20を接続してファイル配信を行うことが容易となり、ファイル配信システム全体のファイル配信効率が向上する。
【0049】
配信元から接続応答情報を受信したクライアント端末20は、配信元のクライアント端末20との通信接続を行い、配信元のファイルパスに基づき配信元からファイルデータをダウンロードした後、通信を切断して、配信元へ切断通知を行う。さらにファイル取得したクライアント端末20は、新たな配信元となり、自身以外のクライアント端末20に対するファイル取得指示情報(ファイル取得通知)を作成し、自身以外の全てのクライアント端末20及びサーバ10へマルチキャスト送信する。
【0050】
なお、ファイル取得したクライアント端末20は、ファイル取得指示情報を作成する際、配信元から受信したファイル取得指示情報に基づき作成するが、ファイル取得指示情報中の配信元アドレス、ファイルパスは、自身のIPアドレスとファイルパスに変更する。
【0051】
次に、ファイル配信処理全体の流れを、図9を用いて説明する。図9は、本実施形態に係るファイル配信例を示す図である。
まず、図9(a)に示すように、最初の配信元であるサーバ10が、全ての配信先、つまりクライアント端末20(1)〜(6)にファイル取得指示を送信する。
【0052】
図9(b)に示すように、配信元の同時接続最大数(図9の例では2)まで接続を許可、つまりクライアント端末20(1)(2)が接続を許可される。残りのクライアント端末20(3)〜(6)は接続不許可となるが、一定間隔でサーバ10へ接続要求を再送信する。この接続リトライは、ファイル取得指示内の制限時間(配信元がファイルの保持を保証する時間)が経過するまで繰り返される。その後、ファイル取得動作を行った配信先であるクライアント端末20(1)(2)は、配信元であるサーバ10へ切断通知を送信する。これにより配信元であるサーバ10は、別のクライアント端末20から接続要求を受け入れる余裕ができたと認識する。
【0053】
図9(c)に示すように、ファイルを取得した配信先であるクライアント端末20(1)(2)は、サーバ10への接続要求送信を停止するとともに、配信元のサーバ10と配信先である他の全てのクライアント端末20(3)〜(6)にファイル取得指示(ファイル取得通知)を送信する。配信元のサーバ10は、この電文で配信処理の経過状況、つまり、クライアント端末20(1)(2)がファイル取得済みであり、クライアント端末20(3)〜(6)がファイル未取得であることを把握する。
ファイル取得指示の送信後、この配信先のクライアント端末20(1)(2)は、制限時間の経過まで新しい配信元として機能する。新しい配信元の接続最大数は、最初のサーバ10からのファイル取得指示で得た接続最大数リストにおいて、自身のIPアドレスに対して指定された値である。
【0054】
図9(d)に示すように、クライアント端末20(1)(2)からのファイルタ取得指示を受信することで、まだファイルを取得していない配信先のクライアント端末20(3)〜(6)は、配信元が増えたと認識する。配信先のクライアント端末20(3)〜(6)は、これら配信元のIPアドレスをリストで管理し、接続要求先を順次又は適宜変更してリトライを繰り返す。これにより各配信先のクライアント端末20(3)〜(6)は、制限時間の経過まで接続可能な配信元を探してファイルを取得する動作を行う。
【0055】
以降、配信先のクライアント端末20がファイルを取得するごとに新しい配信元が増え、配信元の負荷は分散される。また、仮に一部の配信先にサーバ10からの最初のファイル取得指示が届かなかったとしても、それ以降に、新しく配信元となったクライアント端末20からファイル取得指示を得ることにより、当該ファイル配信処理への途中参加が可能である。同様に、ファイル取得途中における接続要求等の制御電文の欠落についても、配信元と配信先の間で繰り返し行われる送受信により結果的に補完される。
【0056】
但し、接続応答と切断通知に関しては、欠落に備えてタイムアウトタイマを設け、接続応答や切断通知を所定の時間内に受信できなかったときは、接続応答や切断通知の受信処理を打ち切る必要がある。また各配信先からサーバ10へのファイル取得指示(ファイル取得通知)送信は、最初の配信元であるサーバ10がファイル配信処理の結果や状況を得るのに役立つが、届く保証がない点において、必ずしも正確な情報ではないことに留意すべきである。
【0057】
最終的には、サーバ10からの最初のファイル取得指示で決められた制限時間の経過を以ってファイル配信処理は終了する。制限時間の経過を検出した場合、各配信先は接続要求リトライを停止し、実行中のファイル転送手順を中断しなければならない。同様に各配信元は以降の接続要求を受け付けず、送信対象ファイル保持の責任から解放される。最初の配信元であるサーバ10は、その時点で受信できているファイル取得指示(ファイル取得通知)から、配信処理全体の結果を得る。
【0058】
なお、ファイル取得指示(ファイル取得通知)と同様の仕組みで、サーバ10は全てのクライアント端末20に対して強制終了指示を、UDP/マルチキャストによる制御電文として送信することにより、ファイル配信処理の中断機能を実現することができる。この強制終了指示機能は、最初の配信元が制限時間の経過を待たずに全配信先へのファイル配信完了を検出した場合にも利用可能であり、これにより複数のファイルを配信する場合の配信効率を向上できる。
【0059】
以上説明した実施形態によれば、単純にUDPマルチキャスト配信した場合に比べ、データ伝送の信頼性が高くなる。対象ネットワークの規模が大きく、回線品質が悪いほど、本実施形態の方式の利点は相対的に大きくなる。また、TCPを用いた従来のファイル配信と効率面(ファイル配信処理の所要時間)を比較した場合、ファイルの容量が大きく、配信元の性能が低く、配信先が多いほど、本実施形態の方式の効果は高いものとなる。
【0060】
なお、本発明は、前記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々に変更が可能であることはいうまでもない。
前記実施形態では、ファイル取得指示情報は、全てのクライアント端末へ送信されたが、全てではなく、ある程度の数のクライアント端末へ送信するように構成することもできる。
また、前記実施形態では、クライアント端末は、サーバ又は他のクライアント端末からファイル取得指示情報を受信すると、ファイル取得指示情報の送信元のサーバ又はクライアント端末の全て又はいずれか複数に対して接続要求情報を送信したが、ファイル取得指示情報の送信元のサーバ又はクライアント端末のいずれか1つに対して接続要求情報を送信するように構成することもできる。
また、前記実施形態では、クライアント端末は、サーバ又は他のクライアント端末からファイル取得指示情報を受信すると、ファイル取得するか又は制限時間になるまで接続要求情報を繰り返し送信したが、接続要求情報を所定の回数だけ繰り返し送信した後、接続要求情報送信を停止するように構成することもできる。
また、前記実施形態では、接続応答情報は、複数のクライアント端末へ送信されたが、1つのクライアント端末へ送信するように構成することもできる。
また、前記実施形態では、配信終了時刻を指定する方法として、配信開始日時と制限時間を指定する方法を用いたが、全ての配信先と配信元のシステム時間が一致している場合は、直接配信終了時刻を指定する方法を用いることができる。
また、本発明は、本発明に係る処理を実行するシステムとしてだけでなく、装置、方法として、或いは、このような方法やシステムを実現するためのプログラムや当該プログラムを記録する記録媒体などとして把握することができる。
【0061】
本明細書の記載には、少なくとも次の発明が含まれる。
第1の発明は、
サーバから複数のクライアント端末に対してデータを配信するデータ配信システムであって、
前記サーバは、
前記複数のクライアント端末に対して、データ取得指示情報を送信し、該データ取得指示情報を受信した前記クライアント端末から接続要求情報を受信すると、該接続要求情報の送信元であるクライアント端末のうち一部のクライアント端末に対して接続応答情報を送信し、
前記クライアント端末は、
前記サーバ又は他のクライアント端末からデータ取得指示情報を受信すると、該データ取得指示情報で指定されたデータを未取得の場合は、前記データ取得指示情報の送信元である前記サーバ又は他のクライアント端末に対して所定の間隔で接続要求情報の送信を繰り返し、該接続要求情報に対する前記サーバ又は他のクライアント端末からの接続応答情報を受信すると、該接続応答情報の送信元である前記サーバ又は他のクライアント端末からデータを取得するとともに、前記接続要求情報の送信を停止して、自身以外の複数のクライアント端末に対してデータ取得指示情報を送信し、
自身以外の複数のクライアント端末に対してデータ取得指示情報を送信した後、該データ取得指示情報を受信したクライアント端末から接続要求情報を受信すると、該接続要求情報の送信元であるクライアント端末のうち一部のクライアント端末に対して接続応答情報を送信することを特徴とするデータ配信システム。
このようにすると、データ伝送の信頼性と伝送速度を両立することができる。つまり、データ配信先であったクライアント端末が配信元となり負荷分散を行うことができ、配信処理全体の時間を短縮することができる。
なお、前記第1の発明において、クライアント端末は、サーバ又は他のクライアント端末からデータ取得指示情報を受信すると、データ取得指示情報の送信元のうち、いずれか1つ又は複数に対して接続要求情報を送信するものである。
【0062】
第2の発明は、第1の発明のデータ配信システムであって、
前記サーバは、前記複数のクライアント端末の全てに対して、データ取得指示情報を送信し、
前記クライアント端末は、前記サーバ又は他のクライアント端末からデータを取得すると、自身以外のクライアント端末の全てに対してデータ取得指示情報を送信することを特徴とするデータ配信システム。
このようにすると、各クライアント端末に対するデータ配信効率がより向上する。
【0063】
第3の発明は、第1の発明又は第2の発明のデータ配信システムであって、
前記クライアント端末は、前記サーバ又は他のクライアント端末からデータを取得すると、前記サーバ及び自身以外のクライアント端末に対してデータ取得指示情報を送信することを特徴とするデータ配信システム。
このようにすると、最初の配信元であるサーバが、各クライアント端末におけるデータ配信状況を把握できる。
【0064】
第4の発明は、第1の発明ないし第3の発明のデータ配信システムであって、
前記サーバは、該サーバから送信するデータ取得指示情報において各クライアント端末における同時接続最大数を指定することを特徴とするデータ配信システム。
このようにすると、より配信性能の高いクライアント端末にはより多くのクライアント端末を接続してデータ配信ができ、データ配信システム全体のデータ配信効率が向上する。
【0065】
第5の発明は、第1の発明ないし第4の発明のデータ配信システムであって、
前記サーバは、該サーバが送信するデータ取得指示情報において配信終了時刻を指定することを特徴とするデータ配信システム。
配信終了時刻を指定する方法としては、配信開始日時と制限時間を指定する方法を用いてもよいし、直接配信終了時刻を指定する方法を用いてもよい。
このようにすると、データ配信システム全体の配信終了時刻を統一して指定することができ、次のデータの配信をより早く行うことができる。
【0066】
第6の発明は、第5の発明のデータ配信システムであって、
前記サーバは、該サーバが送信するデータ取得指示情報において配信開始日時と制限時間を指定し、
前記クライアント端末は、自身が送信するデータ取得指示情報内の制限時間を、前記サーバ又は他のクライアント端末から受信したデータ取得指示情報内の制限時間から、自身が送信するデータ取得指示情報の送信までの時間を差し引いて設定することを特徴とするデータ配信システム。
このようにすると、配信先と配信元のシステム時間が一致していない場合であっても、システム時間に依存することなく、データ配信処理終了を判断することができる。
【0067】
第7の発明は、第1の発明ないし第6の発明のデータ配信システムであって、
前記クライアント端末は、データ取得指示情報の送信元である前記サーバ又はクライアント端末に対して所定の間隔で接続要求情報の送信を行う際に、当該クライアント端末で設定された優先順位情報であって、接続要求先を選択する際の優先順位を定めた優先順位情報に基づき、接続要求先を選択することを特徴とするデータ配信システム。
このようにすると、同一セグメント上の接続要求先(配信元)をに優先的に接続試行することができるなど、データ配信システム全体のデータ配信効率が向上する。
【0068】
第8の発明は、第1の発明ないし第7の発明のデータ配信システムであって、
前記クライアント端末は、データ取得指示情報の送信元である前記サーバ又はクライアント端末に対して接続要求情報の送信を開始する際に、前記データ取得指示情報で設定された遅延時間に基づき、接続要求情報の送信開始を遅延させることを特徴とするデータ配信システム。
このようにすると、最初の配信で各セグメントの代表に配信し、残りはそれぞれ代表から配信を受けるなどの制御が最初の配信元から可能となる。
【0069】
第9の発明は、第1の発明ないし第8の発明のデータ配信システムであって、
前記データ取得指示情報、前記接続要求情報、前記接続応答情報を含む制御情報の送受信にはUDPを用い、データ取得時におけるデータの送受信にはTCPを用いることを特徴とするデータ配信システム。
このようにすると、ファイルデータ伝送の信頼性を向上しつつ、伝送速度を向上することができる。
【0070】
第10の発明は、第1の発明ないし第9の発明のデータ配信システムであって、
前記サーバは、前記複数のクライアント端末に対して、データ取得の強制終了を指示する強制終了指示情報を送信可能であることを特徴とするデータ配信システム。
このようにすると、最初の配信元が制限時間の経過を待たずに全配信先へのデータ配信完了を検出した場合に強制終了し、次のデータの配信を行うことができるので、複数のデータを配信する場合の配信効率を向上することができる。
【0071】
第11の発明は、
サーバから複数のクライアント端末に対してデータを配信するデータ配信システムを構成するクライアント端末であって、
前記サーバ又は他のクライアント端末からデータ取得指示情報を受信すると、該データ取得指示情報で指定されたデータを未取得の場合は、前記データ取得指示情報の送信元である前記サーバ又は他のクライアント端末に対して所定の間隔で接続要求情報の送信を繰り返し、該接続要求情報に対する前記サーバ又は他のクライアント端末からの接続応答情報を受信すると、該接続応答情報の送信元である前記サーバ又は他のクライアント端末からデータを取得するとともに、前記接続要求情報の送信を停止して、自身以外の複数のクライアント端末に対してデータ取得指示情報を送信し、
自身以外の複数のクライアント端末に対してデータ取得指示情報を送信した後、該データ取得指示情報を受信したクライアント端末から接続要求情報を受信すると、該接続要求情報の送信元であるクライアント端末のうち一部のクライアント端末に対して接続応答情報を送信することを特徴とするクライアント端末。
【0072】
第12の発明は、
サーバから複数存在する第1のクライアント端末に対してデータを配信するデータ配信システム又はデータ配信方法であって、
前記サーバが、前記第1のクライアント端末に対して、第1のデータ取得指示情報を送信する第1データ取得指示ステップと、
前記第1のデータ取得指示情報を受信した第1のクライアント端末のそれぞれが、前記サーバに対して所定の間隔で第1の接続要求情報を繰り返し送信する第1接続要求ステップと、
前記第1の接続要求情報を受信した前記サーバが、前記第1のクライアント端末のうち一部の第2のクライアント端末に対して、第1の接続応答情報を送信する第1接続応答ステップと、
前記第1の接続応答情報を受信した前記第2のクライアント端末のそれぞれが、前記サーバからデータを取得する第1データ取得ステップと、
前記サーバからデータを取得した前記第2のクライアント端末のそれぞれが、前記第1の接続要求情報の送信を停止して、前記第1のクライアント端末のうち自身以外の第3のクライアント端末に対して第2のデータ取得指示情報を送信する第2データ取得指示ステップと、
前記第2のデータ取得指示情報を受信した前記第3のクライアント端末のそれぞれが、前記第1のデータ取得指示情報の送信元である前記サーバ又は前記第2のデータ取得指示情報の送信元である前記第2のクライアント端末に対して、所定の間隔で第2の接続要求情報を繰り返し送信する第2接続要求ステップと、
前記第2の接続要求情報を受信した前記サーバ又は前記第2のクライアント端末が、前記第2の接続要求情報の送信元である第3のクライアント端末のうち一部の第4のクライアント端末に対して、第2の接続応答情報を送信する第2接続応答ステップと、
前記第2の接続応答情報を受信した前記第4のクライアント端末のそれぞれが、前記第2の接続応答情報の送信元である前記サーバ又は前記第2のクライアント端末からデータを取得する第2データ取得ステップと、
前記データを取得した第4のクライアント端末のそれぞれが、前記第2の接続要求情報の送信を停止して、前記第1のクライアント端末のうち自身以外の第5のクライアント端末に対して第3のデータ取得指示情報を送信する第3データ取得指示ステップと、
前記第3のデータ取得指示情報を受信した前記第5のクライアント端末のそれぞれが、前記第1ないし第3のデータ取得指示情報の送信元である前記サーバ又は前記第2のクライアント端末又は前記第4のクライアント端末に対して、所定の間隔で第3の接続要求情報を繰り返し送信する第3接続要求ステップと、
前記第3の接続要求情報を受信した前記サーバ又は前記第2のクライアント端末又は前記第4のクライアント端末が、前記第3の接続要求情報の送信元である第5のクライアント端末のうち一部の第6のクライアント端末に対して、第3の接続応答情報を送信する第3接続応答ステップと、
前記第3の接続応答情報を受信した前記第6のクライアント端末のそれぞれが、前記第3の接続応答情報の送信元である前記サーバ又は前記第2のクライアント端末又は前記第4のクライアント端末からデータを取得する第3データ取得ステップと、
を備えることを特徴とするデータ配信システム又はデータ配信方法。
【符号の説明】
【0073】
10…サーバ、11…サーバ制御部、12…サーバ記憶部、13…サーバ操作表示部、14…サーバ外部IF、20…クライアント端末、21…クライアント端末制御部、22…クライアント端末記憶部、23…クライアント端末操作表示部、24…クライアント端末外部IF、30…ネットワーク、121…マルチキャストアドレス、122a…処理ID、122b…ファイル名称、122c…ファイルサイズ、122d…ファイルパス情報、122e…配信開始日時、122f…制限時間、122g…ファイルデータ、123…自身の接続最大数、124…自身のIPアドレス、125…配信先IPアドレス、126…接続最大数情報、127…遅延時間情報、128…配信状況情報、222a…処理ID、222d…ファイルパス情報、222f…制限時間、222g…ファイルデータ、224…自身のIPアドレス、225…配信元IPアドレス、226…接続可否情報、227…接続優先順位情報。

【特許請求の範囲】
【請求項1】
サーバから複数のクライアント端末に対してデータを配信するデータ配信システムであって、
前記サーバは、
前記複数のクライアント端末に対して、データ取得指示情報を送信し、該データ取得指示情報を受信した前記クライアント端末から接続要求情報を受信すると、該接続要求情報の送信元であるクライアント端末のうち一部のクライアント端末に対して接続応答情報を送信し、
前記クライアント端末は、
前記サーバ又は他のクライアント端末からデータ取得指示情報を受信すると、該データ取得指示情報で指定されたデータを未取得の場合は、前記データ取得指示情報の送信元である前記サーバ又は他のクライアント端末に対して所定の間隔で接続要求情報の送信を繰り返し、該接続要求情報に対する前記サーバ又は他のクライアント端末からの接続応答情報を受信すると、該接続応答情報の送信元である前記サーバ又は他のクライアント端末からデータを取得するとともに、前記接続要求情報の送信を停止して、自身以外の複数のクライアント端末に対してデータ取得指示情報を送信し、
自身以外の複数のクライアント端末に対してデータ取得指示情報を送信した後、該データ取得指示情報を受信したクライアント端末から接続要求情報を受信すると、該接続要求情報の送信元であるクライアント端末のうち一部のクライアント端末に対して接続応答情報を送信することを特徴とするデータ配信システム。
【請求項2】
請求項1に記載されたデータ配信システムであって、
前記クライアント端末は、前記サーバ又は他のクライアント端末からデータを取得すると、前記サーバ及び自身以外のクライアント端末に対してデータ取得指示情報を送信することを特徴とするデータ配信システム。
【請求項3】
請求項1又は請求項2に記載されたデータ配信システムであって、
前記サーバは、該サーバから送信するデータ取得指示情報において各クライアント端末における同時接続最大数を指定することを特徴とするデータ配信システム。
【請求項4】
請求項1ないし請求項3に記載されたデータ配信システムであって、
前記サーバは、該サーバが送信するデータ取得指示情報において配信終了時刻を指定することを特徴とするデータ配信システム。
【請求項5】
請求項4に記載されたデータ配信システムであって、
前記サーバは、該サーバが送信するデータ取得指示情報において配信開始日時と制限時間を指定し、
前記クライアント端末は、自身が送信するデータ取得指示情報内の制限時間を、前記サーバ又は他のクライアント端末から受信したデータ取得指示情報内の制限時間から、自身が送信するデータ取得指示情報の送信までの時間を差し引いて設定することを特徴とするデータ配信システム。
【請求項6】
サーバから複数存在する第1のクライアント端末に対してデータを配信するデータ配信システムであって、
前記サーバが、前記第1のクライアント端末に対して、第1のデータ取得指示情報を送信する第1データ取得指示ステップと、
前記第1のデータ取得指示情報を受信した第1のクライアント端末のそれぞれが、前記サーバに対して所定の間隔で第1の接続要求情報を繰り返し送信する第1接続要求ステップと、
前記第1の接続要求情報を受信した前記サーバが、前記第1のクライアント端末のうち一部の第2のクライアント端末に対して、第1の接続応答情報を送信する第1接続応答ステップと、
前記第1の接続応答情報を受信した前記第2のクライアント端末のそれぞれが、前記サーバからデータを取得する第1データ取得ステップと、
前記サーバからデータを取得した前記第2のクライアント端末のそれぞれが、前記第1の接続要求情報の送信を停止して、前記第1のクライアント端末のうち自身以外の第3のクライアント端末に対して第2のデータ取得指示情報を送信する第2データ取得指示ステップと、
前記第2のデータ取得指示情報を受信した前記第3のクライアント端末のそれぞれが、前記第1のデータ取得指示情報の送信元である前記サーバ又は前記第2のデータ取得指示情報の送信元である前記第2のクライアント端末に対して、所定の間隔で第2の接続要求情報を繰り返し送信する第2接続要求ステップと、
前記第2の接続要求情報を受信した前記サーバ又は前記第2のクライアント端末が、前記第2の接続要求情報の送信元である第3のクライアント端末のうち一部の第4のクライアント端末に対して、第2の接続応答情報を送信する第2接続応答ステップと、
前記第2の接続応答情報を受信した前記第4のクライアント端末のそれぞれが、前記第2の接続応答情報の送信元である前記サーバ又は前記第2のクライアント端末からデータを取得する第2データ取得ステップと、
前記データを取得した第4のクライアント端末のそれぞれが、前記第2の接続要求情報の送信を停止して、前記第1のクライアント端末のうち自身以外の第5のクライアント端末に対して第3のデータ取得指示情報を送信する第3データ取得指示ステップと、
前記第3のデータ取得指示情報を受信した前記第5のクライアント端末のそれぞれが、前記第1ないし第3のデータ取得指示情報の送信元である前記サーバ又は前記第2のクライアント端末又は前記第4のクライアント端末に対して、所定の間隔で第3の接続要求情報を繰り返し送信する第3接続要求ステップと、
前記第3の接続要求情報を受信した前記サーバ又は前記第2のクライアント端末又は前記第4のクライアント端末が、前記第3の接続要求情報の送信元である第5のクライアント端末のうち一部の第6のクライアント端末に対して、第3の接続応答情報を送信する第3接続応答ステップと、
前記第3の接続応答情報を受信した前記第6のクライアント端末のそれぞれが、前記第3の接続応答情報の送信元である前記サーバ又は前記第2のクライアント端末又は前記第4のクライアント端末からデータを取得する第3データ取得ステップと、
を備えることを特徴とするデータ配信システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2013−26728(P2013−26728A)
【公開日】平成25年2月4日(2013.2.4)
【国際特許分類】
【出願番号】特願2011−158074(P2011−158074)
【出願日】平成23年7月19日(2011.7.19)
【出願人】(000001122)株式会社日立国際電気 (5,007)
【Fターム(参考)】