説明

通信システム、ノード、通信方法、及びプログラム

【課題】本発明が解決しようとする課題は、新規利用者装置が更新情報配信システムに接続する時に必要となる処理量を軽減することを可能とする技術を提供することにある。
【解決手段】本発明は、所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信することを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバから発信されるコンテンツについて、利用者装置から配信要求があった場合に、コンテンツ更新情報を利用者装置に提供する配信システムに関する。
【背景技術】
【0002】
近年、携帯電話、PDA、及び車載端末などの移動端末が普及し、移動しながら音声や映像などの大容量コンテンツを、ネットワークを利用して交換したいという要望がユーザの間で高まっている。また、街角監視カメラや各種センサが生成した情報なども合わせてネットワークに流通させて活用したいといった要望もある。
【0003】
このような要望に対応するにあたって、特に、種類が様々で多量のコンテンツが流通する中において、コンテンツの鮮度を損なわずにコンテンツの情報をユーザにリアルタイムで届けることが重要となる。
【0004】
このような要望に対して、コンテンツが更新されたという情報を配信するシステムが検討されている。多量の利用者に対しリアルタイムに効率的にコンテンツ更新情報を配信するための方法が提案されている。
【0005】
例えば、特許文献4では、複数のノード間でデータを送受信して情報を配信するシステムにおいて、ノード固有の値に応じて遅延させて送信することにより、トラヒックによるデータの喪失を減らして効率よくデータを配信する技術が開示されている。
【0006】
また、一方では、多量の利用者に対しリアルタイムに効率的にコンテンツ更新情報を配信するため情報を配信するために、配信ツリーを構築するための方法がいくつか提案されている。
【0007】
例えば、特許文献2では、新規に配信を希望する利用者装置からの配信リクエストを受信した複数の既存利用者装置は、自身のCPU使用率、メモリ利用率、CPUスペック、物理的近傍度、生存時間といった評価情報を新規利用者装置に返信し、新規利用者装置は、受信した複数の評価情報を比較評価し、どの既存利用者装置の配下に接続するかを決定する技術が開示されている。
【0008】
また、特許文献3では、受信時間と接続次数とから評価し、どの既存利用者装置の配下に接続するかを決定する技術が開示されている。
【0009】
また、特許文献4では、ホップ数とパケット到着の早さで評価し、どの既存利用者装置の配下に接続するかを決定する技術が開示されている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2001−045020号
【特許文献2】特開2005‐252596号
【特許文献3】特開2005‐85146号
【特許文献4】特開2004‐246790号
【発明の開示】
【発明が解決しようとする課題】
【0011】
しかしながら、特許文献1の技術は、データを効率よく送信するためのネットワーク構成を考慮せずにデータを配信しているため、効率的にデータを送信することができない。また、ユビキタスネットワーク社会においてコンテンツが頻繁に生成・改変・消滅する状況では、サーバとクライアントの関係が頻繁に変化した場合、トポロジの組み換えが頻繁になり対応ができない。
【0012】
また、特許文献2〜4の技術は、いずれも新規利用者装置は既存利用者装置へ接続要求を出し、新規利用者装置は多数の既存利用者装置から応答を受け、どの既存利用者装置へ接続するか比較評価しなければならない。即ち、データを効率よく送信するためのネットワーク構成を考慮しているが、多量の応答からどの既存利用者装置に接続するか比較評価する処理は、新規に接続してくる利用者装置に多大な負荷を与えることになる。
【0013】
そこで、本発明が解決しようとする課題は、新規利用者装置が更新情報配信システムに接続する時に必要となる処理量を軽減することを可能とする技術を提供することにある。
【課題を解決するための手段】
【0014】
上記課題を解決するための本発明は、通信システムであって、所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信することを特徴とする。
【0015】
上記課題を解決するための本発明は、ノードであって、所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信することを特徴とする。
【0016】
上記課題を解決するための本発明は、通信方法であって、所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信することを特徴とする。
【0017】
上記課題を解決するための本発明は、プログラムであって、情報処理装置に、所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信する処理を実行させることを特徴とする。
【発明の効果】
【0018】
本発明によると、新規に更新情報配信システムに参加する利用者装置が更新情報配信システムに接続する時に必要になる処理量を軽減することが可能となる。
【図面の簡単な説明】
【0019】
【図1】本発明に係る更新情報配信システム1のネットワーク構成を示す概念図である。
【図2】図1に開示した利用者装置100の構成を示すブロック図である。
【図3】図1に開示した更新情報配信サーバ200の構成を示す概念図である。
【図4】図2に開示したメタデータデータベース122の構成を示す概念図である。
【図5】図2に開示した利用者装置情報データベース123の構成を示す概念図である。
【図6】利用者装置100が検索メッセージを送信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図7】利用者装置100が検索応答メッセージを受信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図8】利用者装置100が検索メッセージを受信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図9】利用者装置100内で遅延時間演算タイマが通知された場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図10】利用者装置100が更新グラフ参加要求メッセージを送信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図11】利用者装置100が更新グラフ参加要求メッセージを受信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図12】利用者装置100が更新情報メッセージを受信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図13】利用者装置100がコンテンツ要求メッセージを送信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【図14】更新情報配信サーバ200がコンテンツを更新した場合の、図3に開示した更新情報配信サーバ200の動作を示すフローチャートである。
【図15】更新情報配信サーバ200がコンテンツ要求メッセージを受信した場合の、図3に開示した更新情報配信サーバ200の動作を示すフローチャートである。
【発明を実施するための最良の形態】
【0020】
本発明は、所望の情報を配信するノード、又はこのノードから情報の配信を受けているノードから情報配信を受けるにあたって、どのノードから情報配信を受けるかを検索し、検索したノードから情報配信を受けるように設定する通信システムである。
【0021】
本発明の特徴を説明するために、以下において、図面を参照して具体的に述べる。
【0022】
図1は、本発明に係る更新情報配信システム1の構成例を示す概念図である。
【0023】
更新情報配信システム1は、複数の利用者装置100と、更新情報配信サーバ200とを有し、論理ネットワークを構成している。あるひとつのコンテンツ(情報)につき1つの更新情報配信システム1が構成されており、複数のコンテンツが存在する場合は、コンテンツ毎にそれぞれ別の更新情報配信システム1が論理ネットワーク上に構成される。即ち、更新情報配信システム1を論理ネットワーク上で複数組み合わせることにより、多種多様なコンテンツの更新情報を利用者装置100へ配信する大規模なシステムを構築することができる。更新情報配信システム1は、更新情報配信サーバ200(n10)を頂点とし、更新情報配信サーバ200の配下に利用者装置100であるn8、n11があり、n8の配下にn3及びn44、n11の配下にn22があるというような、ツリー構造の状態で接続されている。
【0024】
利用者装置100は、更新情報配信サーバ200、若しくは1つまたは複数の利用者装置100と接続する。接続している更新情報配信サーバ200、若しくは1つまたは複数の利用者装置100から更新情報を受信した場合に、更新情報配信システム1での下流にある利用者装置100へ更新情報を転送する。論理ネットワーク上にある利用者装置100は、所望するコンテンツを論理ネットワーク上で検索し、そのコンテンツを有する更新情報配信サーバ200に接続することによって更新情報配信システム1に参加することができる。
【0025】
図2は図1で開示した利用者装置100の構成を示すブロック図である。
【0026】
利用者装置100は、主制御部110と、ネットワークインターフェイス121と、メタデータデータベース122と、利用者装置情報データベース123と、検索結果リスト124とを有する。
【0027】
主制御部110は、CPU、RAM、及びOSなどで構成されたコンピュータの主要部であり、主制御部110の中に、動作するプログラムとして構成されている送受信部111と、検索機能部112と、遅延演算部113と、遅延バッファ114と、遅延タイマ115と、更新情報配信システム管理部116と、コンテンツクライアント部117とを有する。
【0028】
図4は、図2に開示したメタデータデータベース122のデータ構成を示す概念図である。メタデータデータベース122は、自装置が参加している更新情報配信システム1のコンテンツに関するメタデータを保存している。メタデータとはコンテンツに付随する情報であって、例えばコンテンツID、URI、タイトル、作成者、作成場所、作成時間、キーワードなどである。
【0029】
図5は、図2に開示した利用者装置情報データベース123のデータ構成を示す概念図である。利用者装置情報データベース123は、メタデータデータベース122に保存しているコンテンツ毎に、更新情報配信システム1における利用者装置情報を保存する。利用者装置情報とは、利用者装置を一意に識別するクライアントID、IPアドレス、ポート番号など他の利用者装置とメッセージを送受信するために必要な情報であり、更新情報配信システムのツリー構造において自装置より上及び下にある利用者装置の情報である。
【0030】
検索結果リスト124は、自装置が所望するコンテンツを有する更新情報配信システム1の検索を実施した結果を一時的に保存する。検索結果リスト124は利用者がどのコンテンツの更新情報配信システム1へ参加するか決定するために使われ、利用者により直接管理される。
【0031】
送受信部111は、ネットワークインターフェイス121を介して、更新情報配信サーバ200、又は他の利用者装置100からのメッセージを受信し処理する。送受信部111は、受信したメッセージが検索応答メッセージであった場合は、検索応答メッセージを検索機能部112へ送る。一方、受信したメッセージが検索メッセージであった場合は、検索メッセージを検索機能部112へ送る。さらに、受信したメッセージが更新情報配信システム参加要求メッセージであった場合は、更新情報配信システム参加要求メッセージを更新情報配信システム管理部116へ送る。さらに、送受信部111は、受信したメッセージが更新情報メッセージであった場合は、更新情報メッセージを更新情報配信システム管理部116へ送る。また、送受信部111は、検索機能部112、遅延バッファ114、更新情報配信システム管理部116、又はコンテンツクライアント部117からメッセージを受け取り、メッセージに記載されている宛先である更新情報配信サーバ200、または、他の利用者装置100にネットワークインターフェイス121を介してメッセージを送信する。
【0032】
検索機能部112は、所望するコンテンツのキーワードを含む検索メッセージを論理ネットワーク上に存在する他の利用者装置100に対しブロードキャストで送信する。検索メッセージにはキーワードの他、生成した検索メッセージを一意に識別する検索ID、利用者装置情報、TTL(Time To Live)などが含まれる。さらに、検索機能部112は、他の利用者装置100から検索応答メッセージを受信した場合、検索応答メッセージに含まれるコンテンツのメタデータと、検索結果リスト124を比較し、検索結果リスト124に受信したメタデータが含まれていなかった場合は、メタデータを検索結果リスト124に保存する。一方、受信したメタデータが含まれていた場合は検索応答メッセージを破棄する。さらに、検索機能部112は、検索メッセージを受信した場合、メタデータデータベース122を参照する。検索メッセージに含まれるキーワードに適合するメタデータを発見した場合、検索応答メッセージに前記メタデータを含め、遅延バッファ114へ検索応答メッセージを渡す。さらに、検索メッセージを受信した場合、検索メッセージに含まれるTTLを参照し、TTLが0でなかった場合は、利用者装置情報データベース123を参照し、TTLを減算して他の利用者装置100に検索メッセージを転送する。このとき、検索IDを参照して二重に検索メッセージを送信しないようにする。
【0033】
遅延演算部113は、遅延タイマ115からの通知を契機に、検索応答メッセージを遅延バッファ114に留めておく時間を演算する。この遅延時間は、更新情報配信システム1の論理ネットワーク上で配信効率が最適になる位置に、新規に参加する利用者装置100が接続できるよう、利用される。更新情報配信システム1の論理ネットワーク上で配信効率が最適とは、配信のためのツリー構造が安定して存在でき、そのツリーの深さが浅く、利用者装置100に接続することができる接続可能数をできるだけ使い切り(残りの接続数)、更新情報配信システム1に参加する全ての利用者装置100の各端末能力にあった処理をさせる構成を指す。
【0034】
遅延時間の演算には、例えば論理ツリー上の深さ、接続可能な利用者装置数、参加からの経過時間などがある。これらの情報を用いて、
遅延時間=α×論理ツリー上の深さ÷(接続可能な利用者装置数×参加からの経過時間)
と演算することもできる。ここで、αは遅延時間に反映させたいパラメータを示すが、論理ツリー上の深さ、接続可能な利用者装置数、参加からの経過時間など、重点を置きたいパラメータに対する重み付けであってもよい。上記式では、論理ツリー上での深さが浅く、接続可能な利用者装置数が多く、参加からの経過時間が長い利用者装置100ほど遅延時間が短く演算される。接続可能な利用者装置数は、利用者装置100の端末能力にあった数に設定される。さらに検索応答メッセージを受信した利用者装置100は、最も早く到達した検索応答メッセージ以外を破棄するため、このような演算をすることにより更新情報配信システム1の論理ツリー上で配信効率が最適となる。尚、遅延時間は、論理ツリー上の深さ、接続可能な利用者装置数、及び参加からの経過時間の少なくとも1つを用いて演算しても良い。
【0035】
遅延時間の他の演算方法として、CPU処理負荷や通信回線の負荷、またはその両方をもちいて遅延時間を算出することもできる。余力が少ないノードほど検索応答メッセージを遅く返すようにするために、CPU処理負荷や通信回線負荷が高いほど遅延時間が大きくなるように遅延時間演算式を定義する。たとえば、
遅延時間 = α×CPU処理負荷×通信回線負荷
と定義することができる。ここでαは定数であり、重み付けをあたえる。
【0036】
遅延時間のさらに他の演算方法として、余力が少ないノードほど検索応答メッセージを遅く返すようにするために、検索メッセージを受信してから検索応答メッセージを送信可能な状態になるまでの処理にかかった時間をもとに遅延時間を算出することもできる。余力が少ない、すなわち、処理時間が長いほど遅延時間が大きくなるように遅延時間演算式を定義する。たとえば、
遅延時間 = α×(検索応答メッセージ送信準備完了時刻 − 検索メッセージ受信時刻)
と定義することができる。ここでαは定数であり、重み付けをあたえる。
【0037】
遅延時間のさらに他の演算方法として、更新情報配信サーバ200から論理ツリーをたどって自ノードへ更新情報が届くまでの経路の混雑度が高いほど検索応答メッセージを遅く返すように遅延時間を算出することもできる。更新情報配信サーバ200から論理ツリーをたどって自ノードへ更新情報が届くまでにかかる時間を何らかの方法で測定し、この測定値をもとに遅延時間演算式を定義する。たとえば、
遅延時間 = α×(更新情報配信サーバから論理ツリーをたどり自ノードまで更新情報が届くまでにかかる時間の測定値)
と定義することができる。ここでαは定数であり、重み付けをあたえる。
【0038】
上記の、更新情報配信サーバから論理ツリーをたどり自ノードまで更新情報が届くまでにかかる時間を測定するために、検索メッセージ受信後、論理ツリー上をたどるメッセージを更新情報配信サーバ200あてに送信し、その応答を受信することによって、ラウンドトリップタイムを測定し、これをもとに遅延時間を演算することもできる。
【0039】
遅延バッファ114は、検索機能部112から送信すべき検索応答メッセージを受け取り、遅延時間演算部で演算された遅延時間分送信を待機するため、遅延タイマ115を動作させる。遅延タイマ115が切れたのを契機に、遅延バッファ114は検索応答メッセージを送信する。
【0040】
遅延タイマ115は、あらかじめ設定された時間経過する毎に、遅延演算部113に対し、アラームを上げる。さらに、遅延バッファ114から指定された時間を経過した場合に、遅延バッファ114に対しアラームを上げる。
【0041】
更新情報配信システム管理部116は、利用者が検索結果リスト124から選択した結果を受けて、選択されたコンテンツ検索応答メッセージを送信した利用者装置100に対し、利用者装置100自身の情報を含む更新情報配信システム参加要求メッセージを送信する。一方、更新情報配信システム参加要求応答メッセージを受信した場合、前記更新情報配信システム参加要求応答メッセージに含まれる利用者装置情報を利用者装置情報データベース123の所定欄に保存する。さらに、更新情報配信システム管理部116は、更新情報配信システム参加要求メッセージを受信した場合、利用者装置情報データベース123を参照し、該当するコンテンツの接続情報を含む更新情報配信システム参加要求応答メッセージを作成して送信する。ここで含まれる接続情報は、例えば、更新情報配信システム参加要求応答メッセージを送信する利用者装置100の情報、その1世代上の情報がある。さらに、更新情報配信システム管理部116は、更新情報配信システム参加要求メッセージを送信してきた利用者装置100の情報を利用者装置情報データベース123の1世代下の欄に追加更新する。また、更新情報配信システム管理部116は、更新情報メッセージを受信した場合、前記更新情報メッセージに含まれるコンテンツのメタデータをメタデータデータベースに保存する。さらに利用者装置情報データベース123を確認し、該当のコンテンツに関し1世代下に利用者装置100が登録されていた場合には、更新情報メッセージを前記利用者装置100に転送する。
【0042】
コンテンツクライアント部117は、利用者からの操作を受けて、コンテンツ要求メッセージを、コンテンツを所有する更新情報配信サーバ200へ送信する。さらに、コンテンツクライアント部117は、コンテンツ要求応答メッセージを受信すると、前記コンテンツ要求応答メッセージに含まれるコンテンツを利用者へ提供する。
【0043】
図3は、図1で開示した更新情報配信サーバ200の構成を示すブロック図である。
【0044】
更新情報配信サーバ200は、1つまたは複数の利用者装置100と接続しており、所有しているコンテンツに更新があった場合に、接続している利用者装置100に対し更新情報を送信する。更新情報配信サーバ200は、主制御部210と、ネットワークインターフェイス121と、メタデータサーバデータベース222と、利用者装置情報データベース123と、検索結果リスト124と、コンテンツデータベース225とを有する。
【0045】
メタデータサーバデータベース222は、更新情報配信サーバ200が利用者装置100へ更新情報を通知する対象としているコンテンツのメタデータを保存している。メタデータとはコンテンツに付随する情報であって、例えばコンテンツID、URI、タイトル、作成者、作成場所、作成時間、キーワードなどである。
【0046】
コンテンツデータベース225は、更新情報配信サーバ200が利用者装置100へ更新情報を通知する対象としているコンテンツを保存している。コンテンツとは例えば、テキスト、音声、写真、動画などである。コンテンツに更新があった場合、メタデータ生成部218に通知する。
【0047】
利用者装置情報データベース123と、検索結果リスト124とは、上記利用者装置100の利用者装置情報データベース123と検索結果リスト124と同じであるため、詳細な説明は省略する。
【0048】
主制御部210は、CPU、RAM、及びOSなどで構成されたコンピュータの主要部であり、主制御部210の中に、動作するプログラムとして構成された送受信部211と、検索機能部112と、遅延演算部113と、遅延バッファ114と、遅延タイマ115と、更新情報配信システムサーバ管理部216と、コンテンツサーバ部217と、メタデータ生成部218とを有する。
【0049】
検索機能部112、遅延演算部113、遅延バッファ114、及び遅延タイマ115は、上記利用者装置100の検索機能部112、遅延演算部113、遅延バッファ114、及び遅延タイマ115と同じであるため、詳細な説明を省略する。
【0050】
メタデータ生成部218は、コンテンツデータベース225からコンテンツ更新の通知を受けた場合、コンテンツデータベース225内の該当するコンテンツの更新内容を確認し、メタデータサーバデータベース222内の該当するメタデータを更新する。さらに、メタデータ生成部218は、コンテンツデータベース225からコンテンツ更新の通知を受けた場合、更新情報配信システムサーバ管理部216に対し、該当するコンテンツについてコンテンツ更新を通知する。
【0051】
更新情報配信システムサーバ管理部216は、利用者装置100における更新情報配信システム管理部116の機能と同等の動作をする。さらに、更新情報配信システムサーバ管理部216は、メタデータ生成部218からコンテンツ更新の通知を受けた場合、メタデータサーバデータベース222の該当するメタデータを参照し、前記メタデータを含む更新情報メッセージを作成する。さらに、利用者装置情報データベース123を参照し、1世代下の利用者装置100に対し更新情報メッセージを送信する。
【0052】
コンテンツサーバ部217は、利用者装置100からコンテンツ要求メッセージを受信すると、コンテンツデータベース225を参照し、該当するコンテンツ含むコンテンツ要求応答メッセージを作成し、コンテンツ要求メッセージを送信してきた利用者装置100に対し、コンテンツ要求応答メッセージを送信する。
【0053】
続いて、動作について説明する。
【0054】
図6は、利用者装置100が所望するコンテンツの所在を検索するために、検索メッセージを送信するよう操作した場合の動作を示すフローチャートである。
【0055】
動作を開始すると、まず送受信部111が他の利用者装置100もしくは利用者装置100内の主制御部110からの通信を待つ状態(以後アイドル状態という)となる(S300)。
【0056】
利用者装置100は、利用者からの操作により検索動作が開始されると(S301)、所望するコンテンツのキーワードを含む検索メッセージを論理ネットワークに存在する他の利用者装置100へ送信し(S302)、送信後、アイドル状態に戻る(S300)。
【0057】
図7は、利用者装置100が他の利用者装置100から検索応答メッセージを受信した場合の動作を示すフローチャートである。
【0058】
利用者装置100は、アイドル状態(S300)中に、自装置が送信した検索メッセージに対する応答である検索応答メッセージを受信すると(S310)、検索結果リスト124を参照し(S311)、受信した検索応答メッセージに含まれるコンテンツのメタデータをすでに所有しているかどうかを確認する(S312)。
【0059】
ステップS312における検索結果リスト124の参照の結果、受信した検索応答メッセージに含まれるコンテンツのメタデータを所有していなかった場合、受信した検索応答メッセージに含まれるコンテンツのメタデータを検索結果リスト124に保存し(S313)、アイドル状態に戻る(S300)。
【0060】
一方、ステップS312において検索結果リスト124を参照した結果、受信した検索応答メッセージに含まれるコンテンツのメタデータを所有していた場合、受信した検索応答メッセージを破棄し(S314)、アイドル状態に戻る(S300)。
【0061】
図8は、利用者装置100が他の利用者装置100から検索メッセージを受信した場合の動作を示すフローチャートである。
【0062】
利用者装置100は、アイドル状態(S300)中に検索メッセージを受信すると(S320)、メタデータデータベース122を参照し、受信した検索メッセージに含まれるコンテンツのキーワードに適合するメタデータを所有しているかどうかを確認する(S321)。
【0063】
ステップ321における確認の結果、所有していなかった場合はステップS325へ移行する。
【0064】
一方、ステップ321における確認の結果、所有していた場合は、更新情報配信システム1の論理ツリー上で配信効率が最適になる位置に、新規に参加する利用者装置100が接続するよう、設定された遅延時間待機する(S323)。
【0065】
受信した検索メッセージに含まれるコンテンツのキーワードに適合するメタデータを含む検索応答メッセージを受信した検索メッセージを送信してきた利用者装置100へ送信する(S324)。
【0066】
さらに、受信した検索メッセージのTTLを確認し(S325)、0であった場合はアイドル状態に戻る(S300)。ステップS325でTTLが0より大きかった場合は、利用者装置情報データベース123を参照し検索メッセージを転送すべき他の利用者装置100の情報を得る(S326)。TTLを減算しステップS326で得た利用者装置情報に従い検索メッセージを転送し(S327)、アイドル状態に戻る(S300)。
【0067】
図9は、利用者装置100内で遅延時間演算タイマがアラームを通知した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【0068】
利用者装置100は、アイドル状態から(S300)、遅延時間演算タイマがアラームを通知すると(S330)、更新情報配信システム1の論理ツリー上で配信効率が最適になる位置に、新規に参加する利用者装置100が接続するよう設定される遅延時間を演算する(S331)。遅延時間を更新し(S332)、アイドル状態に戻る(S300)。
【0069】
図10は、利用者が所望するコンテンツの更新情報配信システム1に参加するよう操作した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【0070】
利用者装置100は、アイドル状態から(S300)、利用者が所望するコンテンツの更新情報配信システム1に参加するよう操作すると(S340)、検索結果リスト124を参照し、所望するコンテンツのメタデータを通知してきた利用者装置情報を得る(S341)。ステップS341で得た利用者装置情報を用いて利用者装置100自身の情報を含む更新情報配信システム参加要求メッセージを該当する利用者装置100へ送信する(S342)。一定時間内に更新情報配信システム参加要求応答メッセージを受信すると(S343)、更新情報配信システム参加要求応答メッセージに含まれる該当するコンテンツの接続情報を用いて利用者装置情報データベース123を更新し(S344)、アイドル状態に戻る(S300)。
【0071】
図11は、利用者装置100が他の利用者装置100から更新情報配信システム参加要求メッセージを受信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【0072】
利用者装置100は、アイドル状態から(S300)、他の利用者装置100から更新情報配信システム参加要求メッセージを受信すると(S350)、該当するコンテンツの接続情報を含む更新情報配信システム参加要求応答メッセージを作成し、更新情報配信システム参加要求メッセージを送信してきた利用者装置100へ更新情報配信システム参加要求応答メッセージを送信する(S351)。さらに受信した更新情報配信システム参加要求メッセージに含まれる更新情報配信システム参加要求メッセージを送信してきた利用者装置100の利用者装置情報を用いて利用者装置情報データベース123を更新し(S352)、アイドル状態に戻る(S300)。
【0073】
図12は、利用者装置100が他の利用者装置100から更新情報メッセージを受信した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【0074】
利用者装置100は、アイドル状態から(S300)、他の利用者装置100から更新情報メッセージを受信すると(S360)、該当するコンテンツのメタデータデータベース122を更新する(S361)。さらに利用者装置情報データベース123を参照し(S362)、1世代下の利用者装置100が存在しているか確認する(S363)。ステップS363の結果、1世代下の利用者装置100が存在していなかった場合、アイドル状態に戻る(S300)。ステップS363の結果、1世代下の利用者装置100が存在していた場合、該当する利用者装置100に対し、更新情報メッセージを転送し(S364)、アイドル状態に戻る(S300)。
【0075】
図13は、利用者が所望するコンテンツ本体を要求するよう操作した場合の、図2に開示した利用者装置100の動作を示すフローチャートである。
【0076】
利用者装置100は、アイドル状態から(S300)、利用者が所望するコンテンツ本体を要求するよう操作すると(S370)、メタデータデータベース122を参照して該当するコンテンツを所有する利用者装置100の利用者装置情報を得る(S371)。ステップS371で得た利用者装置情報を用いてコンテンツ要求メッセージを送信する(S372)。一定時間内に所望するコンテンツ本体を含むコンテンツ要求応答メッセージを受信すると(S373)、アイドル状態に戻る(S300)。
【0077】
図14は、更新情報配信サーバ200内でコンテンツデータベース225が更新された場合の、図3に開示した更新情報配信サーバ200の動作を示すフローチャートである。
【0078】
更新情報配信サーバ200は、アイドル状態から(S300)、更新情報配信サーバ200内でコンテンツデータベース225が更新されると(S380)、更新されたコンテンツのメタデータを生成する(S381)。さらに生成したメタデータを用いてメタデータサーバデータベース222を更新する(S382)。さらに利用者装置情報データベース123を参照し(S383)、1世代下の利用者装置100が存在しているか確認する(S384)。ステップS384の結果、1世代下の利用者装置100が存在していなかった場合、アイドル状態に戻る(S300)。ステップS383の結果、1世代下の利用者装置100が存在していた場合、該当する利用者装置100に対し、更新情報メッセージを送信し(S854)、アイドル状態に戻る(S300)。
【0079】
図15は、更新情報配信サーバ200が利用者装置100からコンテンツ要求メッセージを受信した場合の、図3に開示した更新情報配信サーバ200の動作を示すフローチャートである。
【0080】
更新情報配信サーバ200は、アイドル状態から(S300)、利用者装置100からコンテンツ要求メッセージを受信すると(S390)、コンテンツデータベース225を参照し該当するコンテンツ本体を得る(S391)。コンテンツ要求メッセージしてきた利用者装置100に対し該当するコンテンツ本体を含むコンテンツ要求応答メッセージを送信し(S392)、アイドル状態に戻る(S300)。
【0081】
また、更新情報配信サーバ200は、図6、図7、図8、図9、図11に開示した利用者装置100の動作と同様の動作をする。
【0082】
なお、図6〜15で説明したフローチャートに係る各ステップの動作内容は、利用者装置100と更新情報配信サーバ200とが予め備えるコンピュータ(主制御部)で動作するプログラムとして実行させるように構成することができる。
【0083】
尚、上記説明では、主に利用者装置100に対する接続を用いて説明したが、更新情報配信サーバ200も利用者装置100と同様のノードとして動作しても良い。
【0084】
以上説明したように、利用者装置100が新規に更新情報配信システム1に参加する場合に、更新情報配信システム1の論理ツリー上で配信効率が最適になる位置に、新規に参加する利用者装置100が接続するよう、検索メッセージを受信した既に更新情報配信システム1に参加している利用者装置100のうち、最適な位置にある利用者装置100ほど遅延無く検索応答メッセージを送信し、新規に更新情報配信システム1に参加する利用者装置100が、コンテンツ毎に最初に受信した検索応答メッセージを利用し、二番目以降に受信した検索応答メッセージを破棄する構成とすることで、新規に更新情報配信システム1に参加する利用者装置100が更新情報配信システム1に接続する時に必要になる処理量を軽減することを可能とする、利用者装置接続手段を提供することができる。
【0085】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることは言うまでもないことである。
【符号の説明】
【0086】
1 更新情報配信システム
100 利用者装置
110 主制御部
111 送受信部
112 検索機能部
113 遅延演算部
114 遅延バッファ
115 遅延タイマ
116 更新情報配信システム管理部
117 コンテンツクライアント部
121 ネットワークインターフェイス
122 メタデータデータベース
123 利用者装置情報データベース
124 検索結果リスト
200 更新情報配信サーバ
210 主制御部
211 送受信部
216 更新情報配信システムサーバ管理部
217 コンテンツサーバ部
218 メタデータ生成部
222 メタデータサーバデータベース
225 コンテンツデータベース

【特許請求の範囲】
【請求項1】
所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信することを特徴とする通信システム。
【請求項2】
前記要求メッセージを送信したノードが最初に受信した前記応答メッセージを送信したノードが、前記情報を、前記要求メッセージを送信したノード宛に送信するように設定することを特徴とする請求項1に記載の通信システム。
【請求項3】
前記遅延は、前記応答メッセージを返信するノードのネットワーク上の位置、前記情報を他ノードに送信可能な残数、及び前記ネットワークに属してからの経過時間の少なくとも1つを用いて算出されることを特徴とする請求項1又は請求項2に記載の通信システム。
【請求項4】
前記遅延は、前記ネットワーク上の位置÷(前記残数×前記経過時間)に応じて設定されることを特徴とする請求項3に記載の通信システム。
【請求項5】
前記遅延は、自ノードのCPU処理負荷および通信回線負荷の測定値を用いて算出されることを特徴とする請求項1又は請求項2に記載の通信システム。
【請求項6】
前記遅延は、前記要求メッセージを受信してから前記応答メッセージを送信可能な状態になるまでの処理にかかった時間を用いて算出されることを特徴とする請求項1又は請求項2に記載の通信システム。
【請求項7】
前記遅延は、前記情報の発信源のノードから自ノードまで前記情報が届くまでにかかる時間を用いて算出されることを特徴とする請求項1又は請求項2に記載の通信システム。
【請求項8】
前記遅延は、前記要求メッセージ受信後に前記情報の発信源のノード宛に送信した、前記論理ツリー上をたどるメッセージの応答を用いて測定したラウンドトリップタイムから算出されることを特徴とする請求項1又は請求項2に記載の通信システム。
【請求項9】
前記情報の更新情報を受信すると、前記設定されたノード宛に前記更新情報を送信することを特徴とする請求項1から請求項8のいずれかに記載の通信システム。
【請求項10】
所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信することを特徴とするノード。
【請求項11】
前記要求メッセージを送信したノードが最初に受信した前記応答メッセージを送信したノードが、前記情報を、前記要求メッセージを送信したノード宛に送信するように設定することを特徴とする請求項10に記載のノード。
【請求項12】
前記遅延は、前記応答メッセージを返信するノードのネットワーク上の位置、前記情報を他ノードに送信可能な残数、及び前記ネットワークに属してからの経過時間の少なくとも1つを用いて算出されることを特徴とする請求項10又は請求項11に記載のノード。
【請求項13】
前記遅延は、前記ネットワーク上の位置÷(前記残数×前記経過時間)に応じて設定されることを特徴とする請求項12に記載のノード。
【請求項14】
前記遅延は、CPU処理負荷および通信回線負荷の測定値を用いて算出されることを特徴とする請求項10又は請求項11に記載のノード。
【請求項15】
前記遅延は、要求メッセージを受信してから応答メッセージを送信可能な状態になるまでの処理にかかった時間を用いて算出されることを特徴とする請求項10又は請求項11に記載のノード。
【請求項16】
前記遅延は、前記情報の発信源のノードから自ノードまで前記情報が届くまでにかかる時間を用いて算出されることを特徴とする請求項10又は請求項11に記載のノード。
【請求項17】
前記遅延は、前記要求メッセージ受信後に前記情報の発信源のノード宛に送信した、前記論理ツリー上をたどるメッセージの応答を用いて測定したラウンドトリップタイムから算出されることを特徴とする請求項10又は請求項11に記載のノード。
【請求項18】
前記情報の更新情報を受信すると、前記設定されたノード宛に前記更新情報を送信することを特徴とする請求項10から請求項17のいずれかに記載のノード。
【請求項19】
所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信することを特徴とする通信方法。
【請求項20】
前記要求メッセージを送信したノードが最初に受信した前記応答メッセージを送信したノードが、前記情報を、前記要求メッセージを送信したノード宛に送信するように設定することを特徴とする請求項19に記載の通信方法。
【請求項21】
前記応答メッセージを返信するノードのネットワーク上の位置、前記情報を他ノードに送信可能な残数、及び前記ネットワークに属してからの経過時間の少なくとも1つを用いて前記遅延を算出することを特徴とする請求項19又は請求項20に記載の通信方法。
【請求項22】
前記ネットワーク上の位置÷(前記残数×前記経過時間)に応じて、前記遅延を設定することを特徴とする請求項21に記載の通信方法。
【請求項23】
前記遅延は、CPU処理負荷および通信回線負荷の測定値を用いて算出されることを特徴とする請求項19又は請求項20に記載の通信方法。
【請求項24】
前記遅延は、要求メッセージを受信してから応答メッセージを送信可能な状態になるまでの処理にかかった時間を用いて算出されることを特徴とする請求項19又は請求項20に記載の通信方法。
【請求項25】
前記遅延は、前記情報の発信源のノードから自ノードまで前記情報が届くまでにかかる時間を用いて算出されることを特徴とする請求項19又は請求項20に記載の通信方法。
【請求項26】
前記遅延は、前記要求メッセージ受信後に前記情報の発信源のノード宛に送信した、前記論理ツリー上をたどるメッセージの応答を用いて測定したラウンドトリップタイムから算出されることを特徴とする請求項19又は請求項20に記載の通信方法。
【請求項27】
前記情報の更新情報を受信すると、前記設定されたノード宛に前記更新情報を送信することを特徴とする請求項19から請求項26のいずれかに記載の通信方法。
【請求項28】
情報処理装置に、
所望する情報を送信するノードを検索するための要求メッセージに対する応答メッセージを、前記情報の自ノードにおける配信効率に応じて遅延させて返信する処理を実行させることを特徴とするプログラム。

【図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

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2010−171928(P2010−171928A)
【公開日】平成22年8月5日(2010.8.5)
【国際特許分類】
【出願番号】特願2009−221813(P2009−221813)
【出願日】平成21年9月28日(2009.9.28)
【国等の委託研究の成果に係る記載事項】(出願人による申告)国等の委託研究の成果に係る特許出願(平成21年度、独立行政法人情報通信研究機構「次世代ネットワーク(NGN)基盤技術の研究開発」は産業技術力強化法第19条の適用を受ける特許出願)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】