"複数の配信ノードと、制御ノードとがネットワークを介して接続される配信システムにおいて、前記制御ノードは、前記配信ノード間の接続状態を示す接続情報と、前記配信ノードにおける負荷情報とに基づいて、前記複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードと、該配信先の配信ノードに配信するデータの種別と、を決定する決定部と、決定した前記配信先の配信ノードを特定するノード情報と、決定した前記データの種別を特定する種別情報とを、配信ノードに配布する配布部とを、備え、前記配信ノードは、前記制御ノードから配布された前記ノード情報と前記種別情報とを受信する受信部と、他の配信ノードから配信されたデータを受信した場合には、受信したデータから前記種別情報が特定する種別のデータを選択し、選択した種別のデータを前記ノード情報が特定する配信ノードに送信する送信部、を備える配信システム。前記制御ノードは、さらに、いずれかの種別のデータ配信を要求する配信要求を、情報処理端末から受信する要求受信部を備え、前記決定部は、前記配信要求を受信した場合、前記情報処理端末に対して配信可能な配信ノードの中から、前記負荷情報に応じて、該情報処理端末にデータを配信する端末配信ノードを決定する、ことを特徴とする請求項1に記載の配信システム。前記決定部は、前記配信ノードがグループに分類されている場合、配信ノードとグループとを関係付けたノードグループ情報から、予め前記情報処理端末に配信する配信ノードとして設定された該配信ノードが属するグループに属する配信ノードを抽出し、抽出した該配信ノードの中から前記端末配信ノードを決定することを特徴とする請求項2に記載の配信システム。前記決定部は、前記配信ノードのうち、前記配信要求の対象の種別のデータを送信または受信する配信ノードを前記端末配信ノードとして選択することを特徴とする請求項2に記載の配信システム。前記決定部は、前記配信ノードが受信したデータを複製した複製回数を前記負荷情報として計測し、前記複製回数に応じて、前記情報処理端末に対して配信可能な配信ノードの中から、前記端末配信ノードを決定することを特徴とする請求項2に記載の配信システム。複数の配信ノードと、制御ノードとがネットワークを介して接続される配信システムの配信方法において、前記制御ノードは、前記配信ノード間の接続状態を示す接続情報と、前記配信ノードにおける負荷情報とに基づいて、前記複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードと、該配信先の配信ノードに配信するデータの種別と、を決定し、決定した前記配信先の配信ノードを特定するノード情報と、決定した前記データの種別を特定する種別情報とを、配信ノードに配布し、前記配信ノードは、前記制御ノードから配布された前記ノード情報と前記種別情報とを受信し、他の配信ノードから配信されたデータを受信した場合には、受信したデータから前記種別情報が特定する種別のデータを選択し、選択した種別のデータを前記ノード情報が特定する配信ノードに送信する、ことを特徴とする配信方法。複数の配信ノードと、制御ノードとがネットワークを介して接続される配信システムの前記制御ノードに実行させる配信プログラムにおいて、前記制御ノードに、前記配信ノード間の接続状態を示す接続情報と、前記配信ノードにおける負荷情報とに基づいて、前記複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードと、該配信先の配信ノードに配信するデータの種別と、を決定し、決定した前記配信先の配信ノードを特定するノード情報と、決定した前記データの種別を特定する種別情報とを、配信ノードに配布する処理を実行させる配信プログラム。しかしながら、上記第1の技術では、データセンターへ全てのデータを集約してしまうと、負荷が1箇所に集中し、ネットワーク帯域やサーバ性能のボトルネック化を招くことが考えられる。また、上記第2の技術では、マルチキャスト配送を行った場合は、センサーで取得されたデータがユーザ側にそのまま届くため、ユーザ側各々で、必要なデータを抜き出す加工する手間が必要になる。ネットワークに関しては、不要なデータも含めて宛先までデータが配送されるため、不必要にネットワークの帯域が浪費されてしまうおそれがある。また、上記第3の技術では、途中参加したストリーム放送視聴者が存在すると、中継装置が、ストリームサーバに共通情報の要求を行うことなく、予めキャッシュした共通情報をその途中参加の視聴者に対して配信している。しかしながら、当該第3の技術でも、不要なデータも含めて宛先までデータが配送されるため、不必要にネットワークの帯域が浪費されてしまうおそれがある。また、上記第4の技術では、セグメントの変換処理を行なっていた変換装置の負荷を、コンテンツサーバ側で上記処理を行うことにより、ネットワークの伝送量を減らし、処理負荷が変換装置に集中することを防ぎ、処理負荷を分散させている。しかしながら、上記第4の技術でも、コンテンツサーバ側に負荷が集中し、ネットワーク帯域やサーバ性能のボトルネック化を招くことが考えられる。このように、配信ノード間で配信されるデータはそのまま加工されずに配信されるので、最終的に該データを受け取るユーザから見ると、不要なデータまでも配信される。その結果、ネットワーク負荷を高くしている。そこで、本発明は、配信ノード間で転送するデータ量を削減できる配信技術を提供する。配信システムでは、複数の配信ノードと、制御ノードとがネットワークを介して接続されている。制御ノードは、決定部、配布部を含む。決定部は、配信ノード間の接続状態を示す接続情報と、配信ノードにおける負荷情報とに基づいて、複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードと、配信先の配信ノードに配信するデータの種別と、を決定する。配布部は、決定した配信先の配信ノードを特定するノード情報と、決定したデータの種別を特定する種別情報とを、配信ノードに配布する。配信ノードは、受信部、送信部を含む。受信部は、制御ノードから配布されたノード情報と種別情報とを受信する。送信部は、他の配信ノードから配信されたデータを受信した場合には、受信したデータから前記種別情報が特定する種別のデータを選択し、選択した種別のデータを前記ノード情報が特定する配信ノードに送信する。本発明によれば、配信ノード間で転送するデータ量を削減できる。図1は、本発明の実施形態における配信システムの機能ブロック図を示す。本実施形態における配信システム1は、複数の配信ノード7と、制御ノード2とがネットワーク13を介して接続されている。制御ノード2は、決定部3、配布部4を含む。決定部3は、接続情報と、負荷情報とに基づいて、複数の配信ノード7のうち一の配信ノード7aが次に配信する配信先の配信ノード7bと、配信先の配信ノード7bに配信するデータの種別とを配信ノード7毎に決定する。接続情報は、複数の配信ノード7間の接続状態を示す情報である。負荷情報は、複数の配信ノード7それぞれにおける負荷の状態を示す情報である。決定部3の一例として、処理決定部32がある。配布部4は、決定した配信先の配信ノードを特定するノード情報と、決定した配信データの種別を特定する種別情報とを、配信ノードに配布する。配布部4の一例として、定義配布部33がある。配信ノード7は、受信部8と、送信部9を含む。受信部8は、制御ノード2から配布されたノード情報と種別情報とを受信する。送信部9は、他の配信ノード7から配信されたデータを受信した場合には、受信したデータから、受信した種別情報が特定する種別のデータを選択する。送信部9は、選択した種別のデータを、受信したノード情報が特定する配信ノードに送信する。受信部の一例として、定義設定部47がある。送信部9の一例として送信処理部46がある。このように構成することにより、配信ノードは、他の配信ノードから受信したデータのうち、ユーザが要求するデータのみを配信先の配信ノードに転送することにより、配信ノード間で転送するデータ量を削減できる。また、ユーザへは、ユーザが配信要求をした種別のデータしか配信されないので、ユーザが配信されたデータから必要なデータを抜き出すというユーザの手間を省くことができる。また、制御ノード7は、さらに、要求受信部5を含む。要求受信部5は、いずれかの種別のデータ配信を要求する配信要求を、情報処理端末12から受信する。要求受信部5の一例として、購読制御部31がある。決定部3は、配信要求を受信した場合、情報処理端末12に対してデータを配信可能な配信ノードの中から、負荷情報に応じて、端末配信ノード情報処理端末12に配信する配信ノード7を決定する。このように構成することにより、情報処理端末12に対して配信可能な配信ノードの中から、負荷情報に応じて、情報処理端末12に実際にデータを配信する配信ノード7を決定することができる。また、決定部3は、配信ノード7がグループに分類されている場合、配信ノード7とグループとを関係付けたノードグループ情報から、予め前記情報処理端末に配信する配信ノードとして設定された該配信ノード7、23が属するグループに属する配信ノードを抽出する。決定部3は、抽出した配信ノードの中から、負荷情報に応じて、情報処理端末12に配信する配信ノード7である端末配信ノードを決定する。このように構成することにより、複数の配信ノードのうち、予め前記情報処理端末に配信する配信ノードとして設定された配信ノードにデータを配信する配信ノードの中から、端末配信ノードを決定することができる。また、決定部3は、グループから抽出した配信ノードのうち、配信要求の対象の種別のデータを送信または受信する配信ノードを端末配信ノードとして選択する。このように構成することにより、あるグループに属する配信ノードの中から、配信要求の対象の種別のデータを送信または受信する配信ノードを優先的に端末配信ノードとして選択することができるので、無駄なフィルタ処理を行わなくてよい。また、決定部3は、配信ノード7が受信したデータを複製した複製回数を負荷情報として計測する。決定部3は、複製回数に応じて、情報処理端末12に対して配信可能な配信ノードの中から、端末配信ノードを決定する。このように構成することにより、情報処理端末12に対して配信可能な配信ノードの中から、複製回数に応じて、配信ノードを端末配信ノードとして決定することができる。配信ノード7は、さらに、負荷情報通知部10を含む。負荷情報通知部10は、配信ノード7に設けられた演算装置の利用率を検出して、検出した演算装置の利用率を制御ノード2へ送信する。負荷情報通知部10の一例として、負荷状態収集部54がある。このとき、制御ノードは、さらに、負荷情報更新部11を含む。負荷情報更新部11は、配信ノード7から受信した演算装置の利用率を用いて、負荷情報を更新する。負荷情報更新部11の一例として、負荷情報更新部53がある。このように構成することにより、情報処理端末12に対して配信可能な配信ノードの中から、演算装置の利用率を用いて配信ノードを端末配信ノードとして決定することができる。決定部3は、配信先のノード情報とデータの種別を特定する種別情報との配布後に、配信要求がされて決定した配信先の配信ノードと、その配信先の配信ノードに配信するデータの種別とを取得する。このとき、配布部4は、取得された配信先の配信ノードを特定するノード情報と、取得されたデータの種別を特定する種別情報とを、配信ノードに配布する。このように構成することにより、ノード情報と種別情報とを配布した時刻以降に更新された配信先の配信ノードを特定するノード情報と、取得されたデータの種別を特定する種別情報配信定義のみを配信ノードに配信することができる。決定部3は、受信された配信要求に含まれるデータ種別が多い配信要求を送信した情報処理端末に対する端末配信ノードを、配信木データを配信するための配信経路であって木構造で表されるにおける最上位の配信ノードに決定する。このように構成することにより、配信木を変更せずに、配信木における最上位の配信ノードを端末配信ノードとして決定することができる。それにより、ネットワーク上を流れるデータ量をより削減することが可能となる。決定部3は、受信された配信要求のうち最も多くのデータ種別を含む配信要求の数を端末配信ノード毎に計測する。決定部3は、配信要求数が最も多く計測された端末配信ノードを、配信木データを配信するための配信経路であって木構造で表されるのルートとして決定する。このように構成することにより、配信ノード間の論理トポロジーを見直して、多くのユーザに対して、配信要求された多くのデータ種別を配信している配信ノードを配信木のルートにすることができるので、ネットワーク上を流れるトラフィックを削減できる。制御ノードは、さらに、通信部を含む。通信部は、配信システムに、それぞれ複数の配信ノードを配下に持つ制御ノード2が複数存在する場合に、制御ノード間で通信を行う。いずれかの制御ノード2が配信要求を受信した場合、その配信要求を受信した制御ノードの決定部3は、次の処理を実行する。すなわち、その決定部3は、複数の配信ノード7間の接続情報と、複数の配信ノード7それぞれにおける負荷情報とに基づいて、複数の配信ノード7のうち一の配信ノードが次に配信する配信先の配信ノードを選択する。このとき、決定部3は、各制御ノードの配下の配信ノードを特定する情報に基づいて、選択した配信ノードがいずれかの制御ノードの配下の配信ノードであるかを判定する。選択した配信ノードがいずれの制御ノード配下の配信ノードでもないと判定された場合、通信部は、次の処理を行う。すなわち、通信部は、他の前記制御ノード配下の配信ノードのいずれから、配信要求をした情報処理装置に対する端末配信ノードへ配信要求の対象の種別のデータを送る旨を他の制御ノードに通知する。通信部6の一例として、制御ノード連携部55がある。このように構成することにより、制御ノードを並列に動作可能にすることで、システムが大規模化した場合にもデータの配信が可能となる。本実施形態では、ユーザ各々での必要なデータを抜き出す加工処理の削減無駄な情報転送の削減を実現するために、配信ノードと制御ノードを用いて、以下の処理を行う。以降、配信ノードと制御ノードを別装置として説明するが、物理的に、これらの装置が同一の装置ノードになっていてもよい。本実施形態では、配信ノードは、センサーから送られるメッセージのうち、ユーザから配信要求のあったデータ種別だけを、ユーザの端末に届ける。メッセージは、例えば、レイヤ3L3ヘッダ、レイヤ4L4ヘッダ、レイヤ7L7プロトコルヘッダ、及びメッセージコンテンツを含む。レイヤ3ヘッダの一例としては、IPInternetProtocolヘッダがある。レイヤ4ヘッダの一例としては、TCPTransmissionControlProtocolヘッダがある。レイヤ7プロトコルヘッダの一例としては、HTTPHyperTextTransferProtocolヘッダがある。例えばXMLExtensibleMarkupLanguageで構成されたメッセージの場合、配信ノードは、ユーザから配信要求のあったデータ種別に対応する内容を特定するタグのみを配信対象とする。本実施形態では、さらに、配信システムの状態に基づいて、配信ノードからユーザまでの配信経路を変える。これにより、1つの配信ノードにセンサー情報を集中させ、そのセンサー情報を集中させた配信ノードから配信するのではなく、ネットワークで分散してセンサー情報を配信可能にする。制御ノードは、ユーザからの購読依頼の受信を契機として、各配信ノードに対して配信定義の設定を行う。ここでは、制御ノードは、トポロジーの情報、購読依頼の内容および各配信ノードの負荷状態に基づいて、負荷が1点に集中しないよう、負荷が軽い配信ノードからユーザに対してデータをコピーさせるような配信定義を生成する。トポロジーの情報とは、センサーと配信ノードおよびユーザの位置関係に関する情報を言う。制御ノードは、各配信ノードに対して、生成した配信定義の設定を行う。この配信定義の作り方には様々なバリエーションが考えられる。例えば、配信ノード間の繋がり配信木を固定としておき、ユーザにデータをコピーして渡す配信ノードのみを切り替える方法が考えられる。この場合、制御ノード側で配信ノードのコピー処理の内容、およびユーザの接続先となる配信ノードの決定を行う。なお、ここでの制御ノード2はパーソナルコンピュータPCのようなクライアント端末に限らず、センサー情報を必要とするアプリケーションソフトウェアであればどのような実施形態でも適用可能である。例えば、制御ノード2はデータセンター内のアプリケーションソフトウェアでも構わない。本実施形態の適用により、多数のクライアントや多数のユーザが存在し、リアルタイムな情報の収集及び配信を行う配信システムにおいて、システムに対する負荷集中を防ぎつつ、各ユーザに必要な情報のみを届けることが可能になる。その結果、ユーザから見た応答性能の向上、ネットワーク上を流れるトラフィック量の削減を同時に実現することができる。<第1の実施形態>図2は、第1の実施形態における配信システムの構成例を示す。配信システム20は、サーバ21、制御ノード22、配信ノード2323-1~23-4、センサー24、ユーザ端末2525-1,25-2を含む。サーバ21、制御ノード22、配信ノード2323-1~23-4、センサー24、ユーザ端末2525-1,25-2は、インターネット等のネットワークで接続されている。本実施形態では、センサー24が4種類のデータ気温D1、湿度D2、雨量D3、風速D4を採取し、1つのXMLメッセージとして定期的に近隣の配信ノード23図2ではノード23-1に対して送信する。センサ24が送信するXMLメッセージの例は、図3で示される。なお、ユーザは、センサー24の発信する情報のうちの一部の情報が必要であるものとする。本実施形態では、ユーザU1がトピックに含まれるデータ種別D1,D2のデータ、ユーザU2がデータ種別D1のデータのみを必要とし、サーバ21が全てのデータD1~D4を必要としていることを前提とする。本実施形態において、これらのユーザU1の端末25-1、ユーザU2の端末25-2、サーバ21はすべて配信先として扱われる。以降、説明で配信ノード23-1~23-4の識別子をそれぞれ、Node1~Node4と表記する。図3は、第1の実施形態におけるXMLメッセージの一例を示す。図3のXMLメッセージ29では、HTTPヘッダ等のプロトコルのヘッダを省略している。XMLメッセージ29は、XMLのバージョン情報29-1、トピック29-2、日時29-3、データ種別関係情報29-41~29-44を含む。データ種別関係情報29-41は、データ種別D1に関する情報であり、一例としてデータ種別D1と値25.5を含む。データ種別関係情報29-42は、データ種別D2に関する情報であり、一例としてデータ種別D2と値49を含む。データ種別関係情報29-43は、データ種別D3に関する情報であり、一例としてデータ種別D3と値0を含む。データ種別関係情報29-44は、データ種別D4に関する情報であり、一例としてデータ種別D4と値5を含む。メッセージコンテンツの例として、SOAPSimpleObjectAccessProtocol、RESTREpresentationalStateTransfer命令、HTMLHyperTextMarkupLanguage文書などもある。図4は、第1の実施形態における配信フロー例を示す。配信システム20では、配信ツリー構築フェーズS1、購読依頼受付フェーズS2、設定フェーズS3、データ配信フェーズS4の4つのフェーズが含まれる。配信ツリー構築フェーズS1では、配信ノード間のつながりに関する配信ツリー構築情報が事前に定義されている。配信ディストリビューションツリー構築情報の定義方法は、特に限定されず、例えば管理者が手動で配信ツリー構築情報を設定したり、マルチキャストルーティングプロトコル等を用いてディストリビューションツリーを構築してもよい。購読依頼受付フェーズS2では、制御ノード22は、ユーザにより指定されたトピックに含まれるデータのうち、ユーザが必要なデータ種別を、ユーザ端末25から受信する。また、制御ノード22は、特定の配信ノード23がボトルネックにならないように、現在の各配信ノード23の負荷に応じてユーザ端末の接続先となる配信ノード23を変える。設定フェーズS3では、制御ノード22は、決定した配信ルートで、センサー24からのデータを配信先に配信するように、各配信ノード23への配信定義の設定を行う。データ配信フェーズS4では、S3で設定された配信定義に基づいて、配信ノード23はそれぞれ、配信ノード間のつながりに関する情報リンク情報を用いて、ユーザが必要なデータ種別のデータのみを、そのリンク情報に設定された配信先に配送する。図5は、第1の実施形態における制御ノード及び配信ノードの構成ブロックを示す。制御ノード22は、ネットワーク上の情報処理装置である。制御ノード22は、購読制御部31、処理決定部32、定義配布部33、ユーザ情報テーブル34、ノード間接続テーブル35、センサー情報テーブル36、ノード状態テーブル37、収容管理テーブル38、リンク管理テーブル39を含む。購読制御部31は、ユーザ端末25からの購読依頼を受信し、購読依頼の内容をユーザ情報テーブル34に書き込む。処理決定部32は、ユーザ情報テーブル34、ノード間接続テーブル35、センサー情報テーブル36、ノード状態テーブル37に登録された情報を用いて、中継定義テーブル48及び処理定義テーブル49の内容を生成する。定義配布部33は、収容管理テーブル38及びリンク管理テーブル39の内容を、配信ノードの中継定義テーブル48及び処理定義テーブル49のフォーマットに変換し、配布先の配信ノード23-mに対して配布する。ユーザ情報テーブル34は、ユーザの購読依頼情報およびユーザの近隣の配信ノードを管理するテーブルである。なお、ユーザ近隣の配信ノードがどの配信ノードなのかは、ユーザからの申告や、配信ノードが送信してからユーザ端末が受信するまでにかかる時間遅延時間、物理ネットワークの情報等を利用して事前に設定されているものとする。ユーザ情報テーブル34に設定されたユーザ近隣の配信ノード近隣ノードはユーザにデータを配信するノードを定義したものではなく、あくまでも地理的にユーザの近隣に位置する配信ノードを定義したものである。ユーザ端末に対するデータの配信は、実際には、処理決定部32により決定された配信ノード収容管理テーブル38の収容ノード欄に記載された配信ノードから配信される。近隣ノードを設定するのは、後述するように、その設定した近隣ノード及び該近隣ノードに隣接する配信ノードのうち、最も負荷の少ない配信ノードを検索する場合、その検索の始点を設定するためである。ノード間接続テーブル35は、配信ノード間の接続関係を管理するテーブルである。配信ノード間のつなぎ方や配信経路の構築については、管理者による手動設定、もしくはマルチキャストツリーの構築技術等の技術で決定されているものとする。センサー情報テーブル36は、センサー24の近隣の配信ノードを管理するテーブルである。なお、センサー24近隣の配信ノード23がどの配信ノードなのかは、センサー24の所有者からの申告や、センサー24が送信してから配信ノードが受信するまでにかかる時間遅延時間、物理ネットワークの情報等を利用して事前に設定されているものとする。ノード状態テーブル37は、各配信ノードの中継処理にかかる負荷を管理するテーブルである。制御ノード22は、ノード状態テーブル37を用いて、最大処理性能と現在の処理状況を管理することで、各配信ノード23の負荷を管理する。ノード状態テーブル37は、各配信ノード23のCPU利用率などを定期的に収集しても良いし、例えば定常的に配信データが発生する場合は配信ノード23内の処理の回数を負荷として管理しても良い。本実施形態では後者の例として、1配信ノード当たりの1メッセージに対するコピー処理回数を負荷として管理する。収容管理テーブル38は、ユーザ端末を収容する配信ノード、即ち実際にユーザ端末25にデータを配信する配信ノードを管理するテーブルである。ユーザ情報テーブル34によって近隣の配信ノード23を特定することができても、実際にユーザ端末23に対してデータを直接渡すべき配信ノード23と近隣の配信ノードとは異なる場合がある。そのため、制御ノード22は、ユーザ情報テーブル34とは別のテーブルを収容管理テーブル38として準備して、実際にユーザ端末25にデータを配信する配信ノードを管理する。また、制御ノード22は、収容管理テーブル38を用いて、どのデータをどのユーザに対して配信するのかも合わせて管理する。リンク管理テーブル39は、配信ノード間をつなぐ中継経路をリンクとして捉え、そのリンクごとに配信するデータ種別を管理するテーブルである。配信ノード23は、ネットワーク上の中継処理装置である。配信ノード23は、受信処理部41、トピック識別部42、宛先決定部43、コピー処理部44、フィルタ処理部45、送信処理部46、定義設定部47、中継定義テーブル48、処理定義テーブル49を含む。受信処理部41は、センサー24もしくは隣接の配信ノード23からパケットを受信し、その受信したパケットを組み立ててメッセージを構築する。トピック識別部42は、構築したメッセージに含まれるトピックを識別する。宛先決定部43は、中継定義テーブル48に従って、配信データの中継先をあて先として1つもしくは複数決定する。コピー処理部44は、宛先決定部43により決定した宛先の数に応じて、中継先に配信するメッセージをコピーする。フィルタ処理部45は、決定した宛先及び処理定義テーブル49の内容に従い、宛先ごとに、配信するメッセージから必要のないデータ種別に関するXMLタグを削除するフィルタ処理。送信処理部46は、フィルタ処理されたメッセージをパケットに分解して、指定された宛先例えば、他の配信ノード23-n、ユーザ端末25、サーバ21等に対して、その分解したパケットを送信する。定義設定部47は、制御ノード22から配布された配信定義に基づいて、中継定義テーブル48及び処理定義テーブル49の設定を行う。中継定義テーブル48は、トピックごとに、配信すべき中継先ノード及び/またはユーザのグループを管理するテーブルである。処理定義テーブル49は、トピック及び/または宛先ごとに、渡すべきデータ種別を管理するテーブルである。図6は、第1の実施形態におけるユーザ情報テーブルの構成例を示す。ユーザ情報テーブル34は、ユーザID34-1、トピック34-2、データ種別34-3、近隣ノード34-4のデータ項目を含む。ユーザID34-1には、ユーザを識別する識別情報が格納される。トピック34-2には、ユーザによる購読対象のトピックを識別する識別情報が格納される。データ種別34-3には、ユーザが購読するデータの種別が格納される。近隣ノード34-4には、ユーザ端末の近隣に設けられた配信ノードを識別する識別情報が格納される。図7は、第1の実施形態におけるノード間接続テーブルの構成例を示す。ノード間接続テーブル35は、リンク35-1、From35-2、To35-3を含む。リンク35-1には、配信ノード23間のリンクを識別する識別情報が格納される。From35-2には、リンクの接続元の配信ノード23の識別情報またはアドレスが格納される。To35-3には、リンクの接続先の配信ノードの識別情報またはアドレスが格納される。図8は、第1の実施形態におけるセンサー情報テーブルの構成例を示す。センサー情報テーブル36は、センサーID36-1、トピック36-2、収容ノード36-3のデータ項目を含む。センサーID36-1には、センサー24を識別する識別情報が格納される。トピック36-2には、対応するセンサーに関するトピックを識別する識別情報が格納される。収容ノード36-3には、センサーIDに対応するセンサー24を収納している配信ノード、つまりセンサー近隣の配信ノードの識別情報が格納される。図9は、第1の実施形態におけるノード状態テーブルの構成例を示す。ノード状態テーブル37は、ノード37-1、許容処理量37-2、負荷量37-3のデータ項目を含む。ノード37-1には、配信ノード23を識別する識別情報が格納される。許容処理量37-2には、配信ノード23の最大処理性能の値が格納される。負荷量37-3には、配信ノード23の現在の処理量が格納される。図10は、第1の実施形態における収容管理テーブルの構成例を示す。収容管理テーブル38は、ユーザID38-1、トピック38-2、データ種別38-3、収容ノード38-4のデータ項目を含む。ユーザID38-1には、ユーザを識別する識別情報が格納される。トピック38-2には、ユーザに対応するトピックを識別する識別情報が格納される。データ種別38-3には、ユーザが購読するデータ種別が格納される。収容ノード38-4には、ユーザ端末25を収容している配信ノードを識別する識別情報が格納される。図11は、第1の実施形態におけるリンク管理テーブルの構成例を示す。リンク管理テーブル39は、リンク39-1、From39-2、To39-3、トピック39-4、データ種別39-5のデータ項目を含む。リンク39-1には、配信ノード間のリンクを識別する識別情報が格納される。From39-2には、リンクの接続元の配信ノードの識別情報またはアドレスが格納される。To39-3には、リンクの接続先の配信ノードの識別情報またはアドレスが格納される。トピック39-4には、リンクの接続先の配信ノードに対して送信するトピックを識別する識別情報が格納される。データ種別39-5には、リンクの接続先の配信ノードに対して送信するデータ種別が格納される。図12は、第1の実施形態における中継定義テーブルの構成例を示す。中継定義テーブル48は、トピック48-1、宛先48-2のデータ項目を含む。トピック48-1には、トピックを識別する識別情報が格納される。宛先48-2には、トピックごとの配信ノードからのデータの配信先を識別する識別情報またはアドレスが格納される。例えば、宛先=Node2のエントリが中継先ノードへの中継に該当し、宛先=Server1のエントリがユーザへの配信に該当する。たとえば、ユーザU2のユーザIDがUser2である場合、ユーザU2にデータを配信する場合には宛先欄にUser2がセットされる。図13は、第1の実施形態における処理定義テーブルの構成例を示す。処理定義テーブル49は、トピック49-1には、トピックを識別する識別情報が格納される。中継先49-2には、トピックを配信する中継先を識別する識別情報またはアドレスが格納される。データ種別49-3には、対応する中継先に配信されるデータ種別が格納される。図14は、第1の実施形態における制御ノードの全体フロー例を示す。本実施形態では、ユーザU1がトピック1の配信データD1及びD2を購読済みであるとする。また、ユーザU1が利用するユーザ端末25-1は、センサー24からの情報を配信ノード23-1Node1から配信ノード23-2Node2を経由して受信するものとする。また、サーバ21は、トピック1の全てのデータD1~D4を購読済みであり、センサー24からの情報を配信ノード23-1から受信するものとする。このときに、ユーザU2が新たにトピック1のデータD1について購読依頼を行ったとする。ユーザU2がユーザ端末25-2を用いて、購読依頼を制御ノード22に通知する。この際に、ユーザ端末25-2からは、購読依頼と共に、ユーザ購読情報として、ユーザU2のユーザIDUser2、ユーザU2が購読依頼するデータ種別D1、ユーザ端末25-2の隣接ノードの情報配信ノード23-4Node4を制御ノード22に送信する。なお、制御ノード22が、隣接ノードの情報を管理して、ユーザ端末25-2から通知されるユーザIDUser2に基づいて、隣接ノードの情報を求めても良い。購読制御部31は、ユーザ端末25-2から購読制御情報購読依頼を受信するとS11、S12でYes、ユーザ情報テーブル34にユーザ端末25-2から受信したユーザ購読情報を追加するS13。購読制御部31は、処理決定部32にユーザが増えたことを通知する。次に、処理決定部32は、配信ノード決定処理を行うS14。配信ノード決定処理S14では、ユーザ端末25-2に実際に配信データを配信する配信ノードを決定する。S14の処理については、図15を用いて説明する。処理決定部32は、データ種別追加処理を行うS15。データ種別追加処理S15では、ユーザU2の必要とするデータ種別D1がS14で決定した配信ノードまで配信されるように、リンク管理テーブル39に、データ種別を追加する。その後、処理決定部32は、データ種別についての配信定義情報を配布するように、定義配布部33に依頼する。定義配布部33は、処理決定部32からの配布依頼を受けて、各配信ノード23に、配信定義情報を配布するS16。次に、購読解除の場合について説明する。ユーザ端末25より購読解除するトピックを制御ノード22に通知し、ユーザ情報テーブル34から、その購読解除対象となるユーザ購読情報を削除する。それ以降の処理は購読依頼と同じである。以下に、購読解除について詳述する。ユーザU2がユーザ端末25-2を用いて、購読解除要求を制御ノード22に通知する。この際に、ユーザ端末25は、購読解除要求と共に、ユーザ購読解除情報として、ユーザU2のユーザIDUser2、購読を解除するデータ種別D1、ユーザ端末25の隣接ノードの情報配信ノード23-4Node4を制御ノード22に送信する。購読制御部31は、ユーザ端末25-2から購読制御情報購読解除要求を受信するとS11、S12でNo、ユーザ情報テーブル34から、その購読解除情報に対応するエントリを削除するS17。購読制御部31は、処理決定部32にユーザが減ったことを通知する。処理決定部32は、購読制御部31からの購読解除情報を用いて、収容管理テーブルの収容ノードから、購読解除要求を通知したユーザ端末25-2に配信データ尾を配信していた配信ノードの識別情報を取得するS18。処理決定部32は、ノード状態テーブル37において、S18で取得した配信ノードの負荷量を所定値分減らすS19。減らす値は、用いる負荷量がCPU利用率、メモリ利用率等、監視する負荷のいずれかであるかに応じて相違する。処理決定部32は、データ種別削除処理を行うS20。データ種別削除処理S20では、ユーザU2が購読解除したデータ種別が、購読解除したユーザ端末25-2に配信データを配信する配信ノードまで不必要に配信されないように、リンク管理テーブル39からデータ種別を削除する。その後、処理決定部32は、データ種別についての配信定義情報を配布するように、定義配布部33に依頼する。定義配布部33は、処理決定部32からの配布依頼を受けて、各配信ノード23に、配信定義情報を配布するS16。図15は、第1の実施形態における制御のノードの配信ノード決定処理S14のフローを示す。処理決定部32は、購読制御部31からの通知を契機に、ユーザ情報テーブル34の該当するエントリUser2,Topic1,D1,Node4を読み出し、ユーザ端末25-2の接続先の配信ノードの選択を行うS14-1。次に、処理決定部32は、ノード状態テーブル37を参照し、ユーザ購読情報に含まれるノードNode4の負荷量例えば、Copy回数が予め設定した閾値を超えているか否かを判定するS14-2。ここで、予め設定した閾値とは、ノード状態テーブル37の許容処理量に設定した値をいう。S14-2において、ユーザ購読情報に含まれるノードNode4の負荷量がその閾値を超えていない場合はS14-2でNo、そのノードNode4を選択する。一方、ユーザ購読情報に含まれるノードNode4の負荷がその閾値を超えている場合S14-2でYes、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、ノード間接続テーブル35を用いて、ユーザ購読情報に含まれる近隣ノードNode4に隣接するノードの中で負荷が閾値を越えていないノードを順に探索して、ノードを選択するS14-3。処理決定部32は、S14-1またはS14-3で選択したノードのNode番号Node4、ユーザIDUser2、データ種別D1を収容管理テーブル38に追加するS14-4。処理決定部32は、ノード状態テーブル35において、S14-1またはS14-3で選択したNode番号Node4に対応するエントリの負荷量を所定値分増やすS19。負荷量がCopy回数の場合には、Node番号Node4に対応するエントリの負荷量に1を増やす。図16は、第1の実施形態における制御ノードのデータ追加処理S15のフローを示す。処理決定部32は、ノード間接続テーブル35を読み出し、S14で決定したノードNode4と、その決定したノードを接続先とする配信ノードNode2間のリンクを特定する。それから、処理決定部32は、リンク管理テーブル39を用いて、そのリンクに関して、ユーザ購読情報に含まれるデータ種別の配信データD1が届くようになっているか確認する。具体的には、処理決定部32は、ノード間接続テーブル35において、Toの欄に設定されたノードがS14で決定したノードNode4であるエントリを検索する。処理決定部32は、その検索されたエントリのデータ項目リンクに格納されているリンクの識別情報L3、及びFromに格納されているノードの識別情報Node2を取得する。処理決定部32は、リンク管理テーブル39から、取得したリンクの識別情報L3を含むエントリを取得する。処理決定部32は、その取得したエントリのデータ種別に、ユーザ購読情報に含まれるデータ種別D1が格納されているか確認するS15-1。その取得したエントリのデータ種別に、ユーザ購読情報に含まれるデータ種別D1が格納されている場合、すなわちData種別が不足していない場合S15-1でNo、D1がNode4へ届くことになるので、本フローは終了する。リンク管理テーブル39から取得したエントリのデータ種別に、ユーザ購読情報に含まれるデータ種別D1が格納されていない場合、すなわちData種別が不足している場合S15-1でYes、D1が収容ノードNode4へ届かないので、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、その取得したエントリのデータ項目データ種別に、ユーザ購読情報に含まれるデータ種別D1を格納するS15-2。それから、処理決定部32は、センサー24に近いノードから順にD1が配信されるように、ノード間接続テーブル35から、収容ノードNode4の上位ノードリンクの接続元を検索しS15-3、S15-1、S15-2を繰り返す。本実施形態の場合、Node2まではデータ種別D1のデータが届いているため、リンク管理テーブル39においてNode2からNode4へのリンクを示すエントリの、データ項目データ種別にD1を設定する。処理決定部32はリンク管理テーブル39の更新が完了した時点で、定義配布部33に配信定義を配信ノードに配信するように依頼する。上記の方法は、購読依頼のあったユーザの追加に伴い、そのユーザのユーザ端末25に、ユーザが必要とするデータ種別のデータを配信するものである。しかしながら、配信システム全体の最適化のために、定期的に全体の収容管理及びリンク管理を見直しても良い。この詳細は、第5及び第6の実施形態で説明する。図17は、第1の実施形態における制御のノードのデータ削除処理のフローを示す。処理決定部32は、収容管理テーブル38から、購読解除情報に含まれるユーザIDと一致するユーザIDを有するエントリを検索し、そのエントリのデータ項目収容ノードに格納されたノードの識別情報を取得する。処理決定部32は、ノード間接続テーブル35において、To=その取得したノードNode4のエントリを検索する。処理決定部32は、その検索されたエントリのリンクに格納されているリンクの識別情報L3、及びFromに格納されているノードの識別情報Node2を取得する。処理決定部32は、リンク管理テーブル39から、取得したリンクの識別情報L3を含むエントリのデータ種別にD1が含まれている場合には、D1を削除するS20-1でYes、S20-2。処理決定部32は、上位ノードリンクの接続元を検索しS20-3、その上位ノードのリンク管理テーブル39のエントリからデータ種別D1を削除する。処理決定部32は、リンク管理テーブル39の更新が完了した時点で、定義配布部33に配信定義を配信ノード23に配信するように依頼する。図18は、第1の実施形態における制御ノードにより行われるデータ設定処理のフローを示す。定義配布部33は、処理決定部32からの配信定義の配布依頼を受けて、収容管理テーブル38の接続先Node、リンク管理テーブル39のFrom欄のノードを選択するS16-1。定義配布部33は、その選択したノードに対して、収容管理テーブル38及びリンク管理テーブルのエントリを配信定義として送信するS16-2。定義配布部33は、全ノードについてS16-1~S16-2の処理を繰り返すS16-3。図19は、第1の実施形態における制御ノードからの配信定義受信時の配信ノードのフローを示す。配信ノード23の定義設定部47は、制御ノード22から配布された配信定義収容管理テーブル38及びリンク管理テーブル39のエントリを受信するS31。定義設定部47は、その受信した配信定義を解析し、その解析した配信定義を中継定義テーブル48及び処理定義テーブル49に設定するS32。すなわち、S32において、定義設定部47は、制御ノード22から配布された配信定義を解析し、収容管理テーブル38の収容ノード及びUserIDを中継定義テーブル48の宛先として登録する。例えば、配信ノード23-1の場合には、Node2およびServer1が宛先として中継定義テーブル48に登録される。なお、Node2およびServer1のアドレス情報については、制御ノード22もしくは配信ノード23に設定されており、アドレス解決可能な状態であるものとする。また、S32において、定義設定部47は、収容管理テーブル38のUserIDごとに定義されたデータ種別、及びリンク管理テーブル39のToごとに定義されたデータ種別を、処理定義テーブル49に登録する。例えば配信ノード23-1では、Server1に対してD1,D2,D3,D4を転送し、Node2に対してD1,D2を転送するようにエントリが処理定義テーブル49に登録される。図20は、第1の実施形態におけるメッセージ受信時の配信ノードのフローを示す。以下では、配信ノード23-1を例に、図20のフローを説明する。センサー24は、配信ノード23-1に対してD1~D4を含むメッセージを送信する。受信処理部41は、そのメッセージを受信するS41。トピック識別部42は、その受信したメッセージを解析し、トピックの識別情報を取得するS42。配信ノード23-1の場合、トピック識別部42は、トピック1に関するメッセージであることを識別する。宛先決定部43は、S42で識別したトピックをキーとして、中継定義テーブル48を検索し、そのキーを含むエントリの宛先情報を読み出し、宛先が決定するS43。配信ノード23-1の場合、宛先決定部43は、S42で識別したトピック1をキーとして、宛先がServer1及びNode2であることを読み出す。宛先決定部43は、その読み出した宛先をコピー処理部44に通知する。コピー処理部44は、通知された宛先数に応じて、受信したメッセージをコピーするS44。配信ノード23-1の場合、コピー処理部44は、宛先決定部43より通知された宛先が2つであることから、受信メッセージを複製してServer1宛及びNode2宛のメッセージを作成する。フィルタ処理部45は、処理定義テーブル49に基づいて、受信したメッセージから、不要なXMLタグを削除するフィルタ処理S45,S46。配信ノード23-1の場合、フィルタ処理部45は、処理定義テーブル49の内容を参照し、宛先がServer1のメッセージについてはそのまま転送する。一方、フィルタ処理部45は、宛先がNode2のメッセージについては、データ種別D3,D4に関するXMLタグを削除し、データ種別D1,D2に関するXMLタグのみのメッセージを作成する。送信処理部46は、各々の宛先に、フィルタ処理部45で処理されたメッセージを転送するS47。以降、各配信ノード23で同様の処理を繰り返し、サーバ21、ユーザ端末25-1、ユーザ端末25-2にそれぞれ必要なデータを届ける。なお、コピー処理とフィルタ処理の順序には依存性はなく、同一のフィルタ処理を繰り返し行うことが分かっている場合は、処理効率を上げるためにフィルタ処理を先に行ってからコピー処理を行っても良い。このように、ユーザ端末25の近隣にある1以上の配信ノードから、負荷に余裕のある配信ノードを実際にユーザ端末25に配信する配信ノードとして決定することができる。その決定した配信ノードから、既存のリンク関係に基づいて、そのユーザ端末25が配信要求しているデータ種別のデータが到来している上位の配信ノードまで辿ることができる。そして、その上位の配信ノードから、その決定した配信ノードへそのデータ種別のデータを引き込むことができる。本実施形態によれば、制御ノードは、ユーザの購読依頼の受信を契機として、トポロジーの情報センサーと配信ノード及びユーザの位置関係、購読依頼の内容及び各配信ノードの負荷状態に基づいて、中継処理の配信定義を生成する。そして、制御ノードは、各配信ノードに配信定義を設定するよう指示する。配信ノードは、制御ノードからの指示に従って、データのコピー、フィルタ、中継処理を行う。これにより、複数のユーザに対して必要なデータのみを分散配信することが可能となる。<第2の実施形態>本実施形態では、制御ノードが、前回配布した時刻以降に更新された配信定義のみを配信ノードに配信する場合の処理内容を説明する。なお、第2の実施形態において、第1の実施形態と同様な構成については、同一の符号を付し、その説明を省略する。図21は、第2の実施形態における制御ノード及び配信ノードの構成ブロックを示す。第2の実施形態の配信システム20は、第1の実施形態の制御ノード22において、配信時刻管理テーブル51を追加したものである。また、収容管理テーブル38aには、収容管理テーブル38にデータ項目更新時刻が追加されている。リンク管理テーブル39aには、リンク管理テーブル39に、データ項目更新時刻が追加されている。配信時刻管理テーブル51は、前回配信を行った日時を保持する。処理決定部32は、第1の実施形態の機能に加え、現在の収納管理テーブル及びリンク管理テーブルのエントリと更新追加削除する内容を確認し、収容管理テーブル38a及びリンク管理テーブル39aの更新時刻を変更する。なお、削除する場合は、処理決定部32は、リンク管理テーブル39aのエントリを削除するのではなく、リンク管理テーブル39aのデータ種別欄を空欄にすることで削除処理とする。定義配布部33は、第1の実施形態の機能に加え、配信時刻管理テーブル51より前回の配信時刻を読み出し、前回の配信時刻以降に更新された収容管理テーブル38a及びリンク管理テーブル39aのエントリ配信定義のみを、配信ノード23に配布する。また、定義配布部33は、配信時刻管理テーブル51の配信時刻を、配信定義を配信ノード23に配布した日時で更新する。図22は、第2の実施形態における配信時刻管理テーブルの構成例を示す。配信時刻管理テーブル51は、トピック51-1、配信時刻51-2のデータ項目を含む。トピック51-1には、トピックの識別情報が格納される。配信時刻51-2には、前回配信を行った日時が格納される。図23は、第2の実施形態における収納管理テーブルの構成例を示す。収納管理テーブル38aは、図10の収納管理テーブル38に、データ項目更新時刻38-5を追加したものである。配信時刻38-5には、当該エントリが追加または更新された日時が格納される。図24は、第2の実施形態におけるリンク管理テーブルの構成例を示す。リンク管理テーブル39aは、図11のリンク管理テーブル39に、データ項目更新時刻39-6を追加したものである。配信時刻39-6には、当該エントリが追加または更新された日時が格納される。次に、第2の実施形態における制御ノードの処理フローについて説明する。第2の実施形態の制御ノードの処理フローは、第1の実施形態の処理図15-図18において、図16-図18の処理を一部変更したものである。これについて、図25、図26を用いて説明する。図25は、第2の実施形態における制御のノードのデータ追加処理のフローを示す。図25は、図16のS15-2をS15-11に置き換えたものである。S15-11では、処理決定部32は、センサー24に近いノードから順にD1が配信されるように、ノード間接続テーブル35から、上位ノードリンクの接続元を検索し、リンク管理テーブル39のエントリ及びデータ種別を追加する。さらに、処理決定部32は、収納管理テーブル38a及びリンク管理テーブル39aの更新時刻を現在の時刻で更新する。図26は、第2の実施形態における制御のノードのデータ削除処理のフローを示す。図26は、図17のS20-2をS20-11に置き換えたものである。処理決定部32は、収容管理テーブル38から、購読解除情報に含まれるユーザIDと一致するユーザIDを有するエントリを検索し、そのエントリのデータ項目収容ノードに格納されたノードの識別情報を取得する。処理決定部32は、ノード間接続テーブル35において、To=その取得したノードNode4のエントリを検索する。処理決定部32は、その検索されたエントリのリンクに格納されているリンクの識別情報、及びFromに格納されているノードの識別情報を取得する。リンク管理テーブル39aにおいて、取得したリンクの識別情報L3を含むエントリのデータ種別に購読解除要求の対象であるデータ種別D1が含まれている場合にはS20-1でYes、処理決定部32は、そのエントリのデータ種別D1を削除する。さらに、処理決定部32は、収納管理テーブル38a及びリンク管理テーブル39aの更新時刻を現在の時刻で更新するS20-11。図27は、第2の実施形態における制御ノードにより行われるデータ設定処理のフローを示す。図27は、図18にS16-11を追加したものである。S16-11では、定義配布部33は、配信時刻管理テーブル51より前回の配信時刻を読み出す。定義配布部33は、配信時刻管理テーブル51より読み出した配信時刻と、収納管理テーブル38a及びリンク管理テーブル39aの更新時刻とを比較する。定義配布部33は、収納管理テーブル38a及びリンク管理テーブル39aから、配信時刻管理テーブル51より読み出した配信時刻以降に更新されたエントリを配布対象として抽出する。S16-11の処理の結果、抽出された配布対象がある場合S16-11でYes、定義配布部33は、その配布対象を配信定義収納管理テーブル38a及びリンク管理テーブル39aのエントリとして、各配信ノードに送信するS16-2。これ以降の処理は、図18と同様である。本実施形態によれば、処理決定部32は、収容管理テーブル38a及びリンク管理テーブル39a内に更新時刻を書き込み可能にする。定義配布部33は、エントリの更新時刻及び配信時刻管理を行う処理決定部32と連携して、前回配信時との差分の配信定義を配信可能にする。<第3の実施形態>第3の実施形態では、複数の配信ノードのうち、配信要求をした情報処理装置の近隣にある一の配信ノードのグループに属する配信ノードから、その情報処理装置に実際に配信する配信ノードを選択することについて説明する。なお、第3の実施形態において、第1または第2の実施形態と同様な構成については、同一の符号を付し、その説明を省略する。図28は、第3の実施形態における配信システムの構成例を示す。例えば、図28に示すように、エリアAとエリアBの拠点に配信ノードが分散配置されているとする。そして、エリア内の帯域は十分にあるが、エリアAとエリアBのエリア間の帯域が狭い場合を考える。エリアA近隣のユーザにとって、エリアA内部であれば、どの配信ノードから配信されてもあまり違いはない。また、エリアA近隣のユーザは、エリアBの近隣のノードからの配信はできる限り避けたいという状況が起こりうる。そこで、本実施形態では、複数の配信ノードのうち、配信要求をした情報処理装置の近隣にある一の配信ノードのグループに属する配信ノードから、その情報処理装置に実際に配信する配信ノードを選択する。ここで、グループは、配信経路、通信環境等に応じて、設定されるものである。例えば、本実施形態では、グループ間の帯域は、所定の閾値より狭いものとする。なお、グループは、任意に設定することができる。図29は、第3の実施形態における制御ノード及び配信ノードの構成ブロックを示す。第3の実施形態の配信システム20は、第1の実施形態の制御ノード22において、ノードグループテーブル52を追加したものである。また、配信ノードの中から優先的に所定のノードを選択できるように、ノード間接続テーブル35bを用いる。図30は、第3の実施形態におけるノードグループテーブルの構成例を示す。ノードグループテーブル52は、グループ52-1、ノード52-2のデータ項目を含む。グループ52-1には、グループを識別する識別情報が格納される。ノード52-2には、そのグループに属するノードを識別する識別情報が格納される。図31は、第3の実施形態におけるノード間接続テーブルの構成例を示す。ノード間接続テーブル35bは、図7のノード間接続テーブル35に、データ項目グループ35-4を追加したものである。グループ35-4には、リンク35-1に格納されたリンクが属するグループを識別する識別情報が格納される。処理決定部32は、ノード間接続テーブル52を用いて、配信ノード23のグループの中から1つの配信ノードを選択する。このとき、処理決定部32は、無駄なフィルタ処理を行わなくていいように、ノードグループテーブル52を用いて、同じコピー対象のデータ種別を要求するユーザ端末を有するノードから優先的に選択する。例えば、第1の実施形態の処理が終わった後、ユーザU3が新たにデータ種別D1,D2の購読依頼を行ったとする。このとき、例えば、ユーザU3のユーザ端末25-3の近隣の配信ノードがNode1であるとする。また、図30のノードグループテーブル52に示すように、Node1,Node12,Node13が同一のグループであるとする。この場合、処理決定部32は、ノードグループテーブル52を参照して、Node1,Node2,Node3の中から配信ノードを決定する。処理決定部32は、新たに配信先となるユーザU3のユーザ端末25-3の配信ノードを決定する際には、リンク管理テーブル39を参照し、配信ノードが受信するデータ種別とユーザ端末25-3に配信するデータ種別が同一であるノードを優先的に選ぶ。リンク管理テーブル39に配信ノードが受信するデータとユーザ端末25-3に配信するデータが同一であるノードがない場合、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、収容管理テーブル38を参照し、同一のデータ種別を配信しているユーザを収容している送信する配信ノードを優先的に選ぶ。次に、第3の実施形態における制御ノードの処理フローについて説明する。第3の実施形態の制御ノードの処理フローは、第1の実施形態の処理図15-図18において、図15の処理を変更したものである。これについて、図32を用いて説明する。図32は、第3の実施形態における制御ノードの配信ノード決定処理S14のフローを示す。処理決定部32は、購読制御部31からの通知を契機に、ユーザ情報テーブル34の該当するエントリUser2,Topic1,D1,Node4を読み出し、ユーザ端末25の接続先の配信ノードの選択を行うS14-11。処理決定部32は、ノードグループテーブル52から、S14-11で選択した配信ノードのグループに属する配信ノードを読み出すS14-12。処理決定部32は、リンク管理テーブル39を用いて、配信ノードが受信するデータ種別と購読依頼をしたユーザのユーザ端末25に配信するデータ種別が同一であるノードがあるかを検索するS14-13。S14-13での検索の結果、リンク管理テーブル39に、配信ノード23が受信するデータ種別と購読依頼をしたユーザのユーザ端末25に配信するデータ種別が同一であるノードがある場合S14-13でYes、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、その検索された配信ノードを選択するS14-14。リンク管理テーブル39に、配信ノードが受信するデータと購読依頼をしたユーザのユーザ端末25に配信するデータが同一であるノードがない場合S14-13でNo、処理決定部32は、次の処理を実行する。すなわち、処理決定部32は、収容管理テーブル38を用いて、配信ノード23が送信するデータ種別と購読依頼をしたユーザのユーザ端末25に配信するデータ種別が同一であるノードがあるかを検索するS14-15。S14-15での検索の結果、収容管理テーブル38に、配信ノード23が送信するデータ種別と購読依頼をしたユーザのユーザ端末25に配信するデータ種別が同一であるノードがある場合、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、その検索された配信ノードを選択するS14-16。S14-15での検索の結果、収容管理テーブル38に、配信ノード23が送信するデータ種別と購読依頼をしたユーザのユーザ端末25に配信するデータ種別が同一であるノードがない場合、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、S14-12で読み出した配信ノードからランダムに1つを選択するS14-17。処理決定部32は、ノード状態テーブル35を参照し、S14-14,S14-16、またはS14-17で選択された配信ノードの負荷量例えば、Copy回数が予め設定した閾値を超えているか否かを判定するS14-18。ここで、予め設定した閾値とは、ノード状態テーブル37の許容処理量に設定した値をいう。S14-18において、配信ノードの負荷量がその閾値を超えていると判定された場合S14-18でYes、処理決定部32は、次の処理を実行する。すなわち、処理決定部32は、S14-14,S14-16、またはS14-17で選択された配信ノードのグループに属する全ての配信ノードの負荷量がその閾値を超えているか否かを判定するS14-19。その選択された配信ノードの属するグループの全てが配信ノードの負荷量がその閾値を超えていると判定された場合S14-19でYes、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、ノードグループテーブル52を参照して、当該グループに隣接する他のグループを選択しS14-20、S14-13の処理へ戻る。その選択された配信ノードの属するグループの全てが配信ノードの負荷量がその閾値を超えていないと判定された場合S14-19でNo、処理決定部32は、S14-13の処理へ戻る。S14-18において、配信ノードの負荷量がその閾値を超えていないと判定された場合S14-18でNo、処理決定部32は、選択したNode番号Node4、ユーザIDUser2、データ種別D1を収容管理テーブル38に追加するS14-21。処理決定部32は、ノード状態テーブル35において、S14-14、S14-16またはS14-17で選択したNode番号Node4に対応するエントリの負荷量を、所定値分、増やすS19。増やす値は、負荷量がCopy回数の場合には、Node番号Node4に対応するエントリの負荷量に1だけ増やす。本実施形態によれば、制御ノードは、複数の配信ノードのうち、配信要求をした情報処理装置の近隣にある一の配信ノードのグループに属する配信ノードから、その情報処理装置に実際に配信する配信ノードを選択する。また、同じデータ種別を要求している情報処理端末に送信している配信ノードから優先的に選択することができるので、無駄なフィルタ処理を行わなくてよい。<第4の実施形態>第1の実施形態では、コピー回数等の制御ノード側で把握できる情報に基づいて、負荷判断をしていた。それに対して、本実施形態では、各配信ノードから負荷情報を収集して、その情報をノードの状態として反映させることについて説明する。これにより、より正確な負荷情報に基づく処理が可能になる。なお、第4の実施形態において、第1~第3の実施形態と同様な構成については、同一の符号を付し、その説明を省略する。図33は、第4の実施形態における制御ノード及び配信ノードの構成ブロックを示す。第4の実施形態の配信システム20は、第1の実施形態の制御ノード22に負荷状態更新部53を追加し、配信ノード23に負荷状態収集部54を追加したものである。負荷状態収集部54は、配信ノード側のリソースを監視して制御ノード側に定期的にその監視結果を通知する。負荷状態更新部53は、配信ノードから通知された監視結果を受け取り、ノード状態テーブル37を更新する。例えば配信ノードにより配信ノードのCPU負荷が監視される場合は、ノード状態テーブル37のエントリ内容をCPUの利用率にすればよい。図34は、第4の実施形態におけるノード状態テーブルの構成例を示す。ノード状態テーブル37cは、ノード37-1、許容CPU利用率37c-2、現CPU利用率37c-3のデータ項目を含む。許容CPU利用率37c-2には、配信ノードの許容CPU利用率が格納される。現CPU利用率37c-3には、配信ノードから逐次送信されたその配信ノードのCPU利用率が格納される。図35は、第4の実施形態における負荷状態収集部54の処理フローを示す。負荷状態収集部54は、配信ノード23側のリソースCPU利用率を監視して、配信ノード23の負荷情報を収集するS51。負荷状態収集部54は、収集した負荷情報ノードの識別情報、CPU利用率を制御ノード22へ送信するS52。負荷状態収集部54は、随時、S51,S52の処理を繰り返す。図36は、第4の実施形態における負荷状態更新部53の処理フローを示す。負荷状態更新部53は、配信ノード23から送信された負荷情報を受信するS61。負荷状態更新部53は、その受信した負荷情報を用いて、ノード状態テーブル37cの現CPUリオ用率37c-3の値を更新する。図37は、第4の実施形態における制御ノードの全体フロー例を示す。図37は、図14のフローからS19の処理を削除したものなので、その説明を省略する。図38は、第4の実施形態における制御のノードの配信ノード決定処理S14のフローを示す。図38は、図15のフローにおいて、S14-2をS14-2aに置き換え、S14-5の処理を削除したものである。S14-2aにおいて、処理決定部32は、ノード状態テーブル37cを参照し、ユーザ購読情報に含まれるノードNode4の負荷量現CPU利用率が予め設定した閾値を超えているか否かを判定するS14-2。ここで、予め設定した閾値とは、ノード状態テーブル37cの許容CPU利用率に設定した値をいう。これ以降は、図15と同様なので、その説明を省略する。本実施形態によれば、制御ノードは、配信ノードの負荷量の判断処理において、配信ノードのCPU負荷状態を用いることができる。なお、第4の実施形態では、監視の対象が配信ノードのCPU負荷であったが、これに限定されず、例えば、メモリの利用量など、リソースとして把握できる数値データであってもよい。<第5の実施形態>第5の実施形態では、ユーザ端末に実際に配信する配信ノードを見直す処理の説明をする。なお、第5の実施形態において、第1~第4の実施形態と同様な構成については、同一の符号を付し、その説明を省略する。図39は、第5の実施形態の適用前の配信状態を説明する図である。図39に示すように、配信ノード23-1~23-6が配置されている。ユーザからの購読依頼を契機に、既に配信中のユーザに対する配信経路を変えずに、配信ノードの追加削除を繰り返していくとする。すると、最適な配信ノードとは異なる配信ノードから、データ種別が配信されてしまう可能性がある。ここで、最適な配信ノードとは異なる配信ノードからデータ種別が配信されてしまう可能性とは、例えば1つのデータ種別だけが欲しいユーザU4,U5,U6と全データ種別が欲しいユーザU1,U2,U3が均等に全配信ノードに収容されている場合に起こりうる。この場合、図39に示すように、全データ種別が欲しいユーザU1、U2,U3に引きずられて、配信ノード23-1~23-6間の全ての通信において全データ種別を配信することになってしまう。このような状態に陥った場合に、制御ノード22は、最適な配信ノードから配信し直すように配信ノードの配信形態を見直す処理を実行する。例えば、ユーザから購読依頼を20回受け取ると、1回配信ノードの配信形態を見直すような処理が考えられる。また、時刻の経過に応じて、例えば1時間ごとに定期的に配信ノードの配信形態を見直しても良い。図40は、第5の実施形態の適用後の配信状態を説明する図である。同一グループに所属するユーザ端末であれば、どの配信ノードからデータ種別を渡されても問題ないため、最適な配信ノードから配信されるように配信ノードの配信形態を設計する。例えば、上流のノードほど多いデータ種別を中継し、端末のノードほど少ないデータ種別を中継するようにする。そこで、第5の実施形態では、図41に示すように、第3の実施形態における同一グループの、より上流にあるノードから順に、より多いデータ種別が欲しいと希望するユーザを割当てるようなアルゴリズムを用いる。第5の実施形態のシステム構成は、第3の実施形態図29と同様である。また配信ノードのフローチャートのうち、第3の実施形態に追加された処理を図41に示す。図41は、第5の実施形態における見直し処理のフローを示す。処理決定部32は、ノードグループテーブル52からいずれかのグループを選択するS71。処理決定部32は、本フローの処理による見直し処理がまだされていないために配信ノード未決定で、かつユーザ情報テーブル34から購読依頼情報の種別の多いユーザを選択するS72。処理決定部32は、配信木のうち、負荷に余裕がある最上位ノードを配信元として選択するS73。ここでは、処理決定部32は、S72で選択したユーザをキーとして、収納管理テーブル38からそのユーザに対応する収納ノードを取得する。処理決定部32は、ノード間接続テーブル35を参照して、その取得した収納ノードの最上位のノートを検索する。処理決定部32は、ノード状態テーブルを参照して、その最上位のノードの負荷量が予め設定された閾値を超えていないか判定する。ここで、予め設定した閾値とは、ノード状態テーブル37の許容処理量に設定した値をいう。その最上位のノードの負荷量が予め設定された閾値を超えていないと判定した場合、処理決定部32は、その最上位のノードを、S72で選択したユーザに実際に配信する配信ノードとして選択する。次に、処理決定部32は、データ種別追加処理を行うS74。S74のデータ種別追加処理は、図16で説明したS15の処理と同様である。処理決定部32は、ユーザ情報テーブル34に登録されたユーザのうち、S71で選択したグループに属する全てのユーザについて、配信元が決定したか否かを判定するS75。ユーザ情報テーブル34に登録されたユーザのうち、S71で選択したグループに属する全てのユーザについて配信元が決定していない場合S75でNo、処理決定部32は、S72の処理へ戻る。ユーザ情報テーブル34に登録されたユーザのうち、S71で選択したグループに属する全てのユーザについて、配信元が決定している場合S75でYes、処理決定部32は、全グループに対して、S71~S75の処理を行う。第5の実施形態によれば、制御ノードは、配信ノード間のトポロジーを変更せずに、どのノードからどのユーザ端末にデータ種別を配信するかということを制御することで、配信システム全体で、ユーザの収容状態の見直しを行うことができる。このように、配信ノードの配信形態の再設定を行うことにより、ネットワーク上を流れるデータ量をより削減することが可能となる。<第6の実施形態>第5の実施形態では、ユーザ端末に実際に配信する配信ノードを見直すことはできるが、配信木自体の見直しについては行っていない。しかしながら、物理ネットワークの構成を考慮すると、購読するデータ種別が多いユーザが配信木の端末に固まっている場合、その配信ノードを配信木のルートにした方がネットワーク上を流れるトラフィックを削減できることになる。そこで、第6の実施形態では、配信ノード間の論理トポロジーを見直す処理の説明をする。第6の実施形態のシステム構成は、第5の実施形態と同様である。なお、第6の実施形態において、第1~第5の実施形態と同様な構成については、同一の符号を付し、その説明を省略する。図42は、第6の実施形態における配信ノード間の論理トポロジーを見直す処理フローを示す。図42のフローは、図41のフローに、配信木見直し処理S81を追加したものである。図42では、第5の実施形態における定期的な見直し処理の最初に、購読希望のデータ種別が多いユーザに物理的に近い配信ノードを配信木のルートとして、グループ内の配信木を見直す処理が追加されている。配信木見直し処理S81の詳細については、図43で説明する。図43は、第6の実施形態における配信木見直し処理S81の詳細フローを示す。処理決定部32は、ユーザ情報テーブル34及び収容管理テーブル38を参照して、購入しているデータ種別が最も多いエントリを抽出し、そのエントリを収容ノード38-4毎にカウントするS81-1。次に、処理決定部32は、上記カウントの結果、カウント数が最も多い収容ノード38-4に格納されたノードを配信木のルートとして選択するS81-2。処理決定部32は、その選択したノードをルートとして配信木を作成するS81-3。その選択したノードをルートとして配信木を作成する場合、処理決定部32は、例えば、マルチキャストルーティングプロトコル等を用いて、配信木ディストリビューションツリーの構築方法を用いてもよい。一例として、処理決定部32は、その選択したノードをランデブーポイントとして、配信木を作成してもよい。ランデブーポイントとは、複数のマルチキャストグループがあってもひとつのディストリビューションツリーを共有して、マルチキャストデータのルーティングを行う場合の、ツリーを共有するために中心となる中継装置である。本実施形態によれば、配信ノード間の論理トポロジーを見直して、配信要求されたデータ種別が多いユーザに配信している配信ノードを配信木のルートにすることができるので、ネットワーク上を流れるトラフィックを削減できる。<第7の実施形態>第7の実施形態では、配信システムが大規模化したときの対応を対象に説明する。なお、第7の実施形態において、第1~第6の実施形態と同様な構成については、同一の符号を付し、その説明を省略する。図44は、第7の実施形態における制御ノード及び配信ノードの構成ブロックを示す。第7の実施形態の配信システム20は、第1の実施形態の制御ノード22において、制御ノード連携部55、制御ノード配信ノード管理テーブル56を追加したものである。配信ノード数が多数になり、単一の制御ノード22だけでは制御できなくなった場合、制御ノードを複数台並べ、それらの制御ノードが並列して制御を行う。この場合、各制御ノードは、自身が管理する配信ノードを格納した制御ノード配信ノード管理テーブル56を有する。これにより、各制御ノード22は、制御ノード配信ノード管理テーブル56に基づいて、自身が管理する複数の配信ノードを1つのドメイン同一制御ノード配下の配信ノードグループとして扱い、そのドメイン単位に配信制御を行う。ユーザは、ユーザ端末25を用いて、ユーザ端末25自身が属するネットワークを管理する制御ノードに対して購読依頼を発行する。当該制御ノードは、その制御ノード配下の配信ノードの中から、ユーザ端末25への配信ノードを決定する。配信経路が複数の制御ノード配下の配信ノードをまたがる場合、配信するデータ種別の調整を制御ノード間で行う必要がある。そこで、制御ノード連携部55は、配信経路が複数の制御ノード配下の配信ノードをまたがる場合、配信するデータ種別の調整を制御ノード間で行う。データ種別の追加削除処理において、自身の制御ノード配下よりもさらに上位ノードの配信データを変更する必要が生じた場合に、当該制御ノード連携部55は、他の制御ノード22-nに対して配信データ種別の追加削除の依頼を行う。配信データ種別の追加削除依頼を受信した制御ノード22-nは、その依頼の内容に基づいてデータ種別の追加削除の処理と、変更があった内容を管理配下の配信ノードに設定する。図45は、第7の実施形態における制御ノード配信ノード管理テーブルの構成例を示す。制御ノード配信ノード管理テーブル56は、制御ノード56-1、ノード56-2のデータ項目を含む。制御ノード56-1は、制御ノードを識別する識別情報が格納される。ノード56-2は、制御ノード56-1に格納された制御ノードが管理するノードを識別する識別情報が格納される。次に、第7の実施形態における制御ノードの処理フローについて説明する。第7の実施形態の制御ノードの処理フローは、第1の実施形態の処理図15-図18において、図16、図17の処理を変更したものである。これについて、図46、図47を用いて説明する。なお、図46、図47は、当該制御ノード連携部55が、他の制御ノード22-nに対して配信データ種別の追加削除の依頼を行う場合の処理である。図46は、第7の実施形態における制御のノードのデータ追加処理のフローを示す。図46は、図16のフローに、S15-21、S15-22の処理を追加したものである。なお、以下では、図16で用いた例を用いて説明する。処理決定部32は、ノード間接続テーブル35を読み出し、S14-1またはS14-3で選択したノード収容ノードNode4と、その収容ノードを接続先とする配信ノードNode2間のリンクを特定する。それから、処理決定部32は、リンク管理テーブル39を用いて、そのリンクに関して、ユーザ購読情報に含まれるデータ種別D1が届くようになっているか確認する。具体的には、処理決定部32は、ノード間接続テーブル35において、To=S14で決定したノードNode4のエントリを検索する。処理決定部32は、その検索されたエントリのリンクに格納されているリンクの識別情報L3、及びFromに格納されているノードの識別情報Node2を取得する。処理決定部32は、リンク管理テーブル39から、取得したリンクの識別情報L3を含むエントリを取得する。処理決定部32は、その取得したエントリのデータ種別に、ユーザ購読情報に含まれるデータ種別D1が格納されているか確認するS15-1。その取得したエントリのデータ種別に、ユーザ購読情報に含まれるデータ種別D1が格納されている場合S15-1でNo、D1がNode4へ届くことになるので、本フローは終了する。リンク管理テーブル39から取得したエントリのデータ種別に、ユーザ購読情報に含まれるデータ種別D1が格納されていない場合S15-1でYes、D1が収容ノードNode4へ届かないので、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、リンク管理テーブル39から取得したエントリのデータ種別に、ユーザ購読情報に含まれるデータ種別D1を格納するS15-2。それから、処理決定部32は、センサー24に近いノードから順にD1が配信されるように、ノード間接続テーブル35から、収容ノードNode4の上位ノードリンクの接続元を検索するS15-3。処理決定部32は、制御ノード配信ノード管理テーブル56を参照して、S15-3で検索したノードが当該制御ノードの管理下にある配信ノードであるかを判定するS15-21。S15-3で検索したノードが当該制御ノードの管理下にある配信ノードである場合S15-21でNo、処理決定部32は、S15-1の処理に戻る。S15-3で検索したノードが当該制御ノードの管理下にある配信ノードでない場合S15-21でYes、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、制御ノード配信ノード管理テーブル56を参照して、その検索されたノードを管理する制御ノードを特定する。処理決定部32は、制御ノード連携部55に、その特定した制御ノードに対してリンク管理テーブル39にデータ種別を追加するように依頼するデータ種別追加依頼S15-22。図47は、第7の実施形態における制御のノードのデータ削除処理のフローを示す。図47は、図17のフローに、S20-21、S20-22の処理を追加したものである。なお、以下では、図16で用いた例を用いて説明する。処理決定部32は、収容管理テーブル38から、購読解除情報に含まれるユーザIDと一致するユーザIDを有するエントリを検索し、そのエントリのデータ項目収容ノードに格納されたノードの識別情報を取得する。処理決定部32は、ノード間接続テーブル35において、To=その取得したノードNode4のエントリを検索する。処理決定部32は、その検索されたエントリのリンクに格納されているリンクの識別情報L3、及びFromに格納されているノードの識別情報Node2を取得する。処理決定部32は、リンク管理テーブル39から、取得したリンクの識別情報L3を含むエントリのデータ種別にD1が含まれている場合には、D1を削除するS20-1でYes、S20-2。処理決定部32は、ノード間接続テーブル35を参照し、購読解除情報に含まれるノードNode4の上位ノードリンクの接続元を検索するS20-3。処理決定部32は、制御ノード配信ノード管理テーブル56を参照して、S20-3で検索したノードが当該制御ノードの管理下にある配信ノードであるかを判定するS20-21。S20-3で検索したノードが当該制御ノードの管理下にある配信ノードである場合S20-21でNo、処理決定部32は、S20-1の処理に戻る。S20-3で検索したノードが当該制御ノードの管理下にある配信ノードでない場合S20-21でYes、処理決定部32は、次の処理を行う。すなわち、処理決定部32は、制御ノード配信ノード管理テーブル56を参照して、その検索されたノードを管理する制御ノードを特定する。制御ノード連携部55は、その特定した制御ノードに対してリンク管理テーブル39にデータ種別を削除するように依頼するデータ種別削除依頼S20-22。次に、制御ノード連携部55から送信された、データ種別の追加削除依頼を受信した制御ノード22-n側で行われる処理について説明する。図48は、第7の実施形態における複数の制御ノード間のデータ追加のフローを示す。制御ノード22-nの制御ノード連携部55は、制御ノード22の制御ノード連携部55から送信された、データ種別追加依頼を受信するS91。制御ノード22-nの処理決定部32は、データ種別追加処理を行うS92。データ種別追加処理S92は、図14のS15の処理と同様である。データ種別追加処理S15では、ユーザの必要とするデータ種別がS15-3で選択された配信ノードまで配信されるように、リンク管理テーブル39に、データ種別を追加する。その後、制御ノード22-nの処理決定部32は、データ種別の配信定義情報を配布するように、制御ノード22-nの定義配布部33に依頼する。制御ノード22-nの定義配布部33は、処理決定部32からの配布依頼を受けて、制御ノード配信ノード管理テーブル56を参照して、自身の管理する各配信ノード23に、配信定義情報を配布するS93。配信定義配布処理S93は、図14のS16の処理と同様である。図49は、第7の実施形態における複数の制御ノード間のデータ削除のフローを示す。制御ノード22-nの制御ノード連携部55は、制御ノード22の制御ノード連携部55から送信された、データ種別削除依頼を受信するS101。制御ノード22-nの処理決定部32は、データ種別削除処理を行うS102。データ種別追加処理S102は、図14のS15の処理と同様である。データ種別削除処理S102では、購読解除したデータ種別が、購読解除したユーザ端末25に実際に配信する配信ノードまで不必要に配信されないように、リンク管理テーブル39からデータ種別を削除する。その後、処理決定部32は、データ種別の配信定義情報を配布するように、定義配布部33に依頼する。定義配布部33は、処理決定部32からの配布依頼を受けて、各配信ノード23に、配信定義情報を配布するS103。配信定義配布処理S103は、図14のS16の処理と同様である。本実施形態によれば、制御ノード間で、各制御ノードは、ユーザからの購読依頼/購読解除依頼のあったデータ種別を配信可能/配信停止可能なノードがその制御ノードの配下ではない場合は、他の制御ノードに対して変更内容を伝え合うことができる。したがって、配信ノードをドメインに分離し、制御ノードを並列に動作可能にすることで、システムが大規模化した場合にもデータの配信が可能となる。第1~7の実施形態によれば、予め配送先で必要なデータ種別を各ノードに設定しておき、各ノードがデータを受信するとその設定情報に基づいて配送先で必要なデータ種別のみを転送することにより、配信ノード間で転送するデータ量を削減できる。図50は、コンピュータのハードウェア環境の構成ブロック図である。コンピュータ60は、サーバ21、制御ノード22、配信ノード23、またはユーザ端末25である。コンピュータ60は、CPU62、ROM63、RAM66、通信I/F64、記憶装置67、出力I/F61、入力I/F65、読み取り装置68、バス69、出力機器71、入力機器72によって構成されている。ここで、CPUは、中央演算装置を示す。ROMは、リードオンリメモリを示す。RAMは、ランダムアクセスメモリを示す。I/Fは、インターフェースを示す。バス69には、CPU62、ROM63、RAM66、通信I/F64、記憶装置67、出力I/F61、入力I/F65、及び読み取り装置68が接続されている。読み取り装置68は、可搬型記録媒体を読み出す装置である。出力機器71は、出力I/F61に接続されている。入力機器72は、入力I/F65に接続にされている。記憶装置67としては、ハードディスク、フラッシュメモリ、磁気ディスクなど様々な形式の記憶装置を使用することができる。コンピュータ60が制御ノード22の場合、記憶装置67またはROM63には、制御ノード22全体の動作を制御するプログラム及び本実施形態に係るプログラムが格納されている。CPU62は、記憶装置67またはROM63から本実施形態に係るプログラムを読み込むことにより、購読制御部31、処理決定部32、定義配信部33、負荷状態更新部53、制御ノード連携部55として機能する。また、コンピュータ60が制御ノード22の場合、記憶装置67またはROM63は、ユーザ情報テーブル34、ノード間接続テーブル35、センサー情報テーブル36、ノード状態テーブル37、収容管理テーブル38、リンク管理テーブル39を含む。また、記憶装置67またはROM63は、配信時刻管理テーブル51、ノードグループテーブル52、制御ノード配信ノード管理テーブル56を含む。コンピュータ60が配信ノード23の場合、記憶装置67またはROM63には、配信ノード23全体の動作を制御するプログラム及び本実施形態に係るプログラムが格納されている。CPU62は、記憶装置67またはROM63から本実施形態に係るプログラムを読み込むことにより、受信処理部41、トピック識別部42、宛先決定部43、コピー処理部44、フィルタ処理部45、送信処理部46、定義設定部47として機能する。CPU62は、記憶装置67またはROM63から本実施形態に係るプログラムを読み込むことにより、さらに、負荷状態収集部54として機能する。また、コンピュータ60が配信ノード23の場合、記憶装置67またはROM63は、中継定義テーブル48、処理定義テーブル49を含む。上記実施形態で説明した処理を実現するプログラムは、プログラム提供者側から通信ネットワーク70、および通信I/F64を介して、例えば記憶装置67に格納されてもよい。また、上記実施形態で説明した処理を実現するプログラムは、市販され、流通している可搬型記憶媒体に格納されていてもよい。この場合、この可搬型記憶媒体は読み取り装置68にセットされて、CPU62によってそのプログラムが読み出されて、実行されてもよい。可搬型記憶媒体としてはCD-ROM、フレキシブルディスク、光ディスク、光磁気ディスク、ICカード、USBメモリ装置など様々な形式の記憶媒体を使用することができる。このような記憶媒体に格納されたプログラムが読み取り装置68によって読み取られる。また、入力機器72には、キーボード、マウス、電子カメラ、ウェブカメラ、マイク、スキャナ、センサー、タブレットなどを用いることが可能である。また、出力機器71には、ディスプレイ、プリンタ、スピーカなどを用いることが可能である。また、ネットワーク70は、インターネット、LAN、WAN、専用線、有線、無線等の通信網であってよい。なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。上記実施形態に関し、更に以下の付記を開示する。付記1複数の配信ノードと、制御ノードとがネットワークを介して接続される配信システムにおいて、前記制御ノードは、前記配信ノード間の接続状態を示す接続情報と、前記配信ノードにおける負荷情報とに基づいて、前記複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードと、該配信先の配信ノードに配信するデータの種別と、を決定する決定部と、決定した前記配信先の配信ノードを特定するノード情報と、決定した前記データの種別を特定する種別情報とを、配信ノードに配布する配布部とを、備え、前記配信ノードは、前記制御ノードから配布された前記ノード情報と前記種別情報とを受信する受信部と、他の配信ノードから配信されたデータを受信した場合には、受信したデータから前記種別情報が特定する種別のデータを選択し、選択した種別のデータを前記ノード情報が特定する配信ノードに送信する送信部、を備える配信システム。付記2前記制御ノードは、さらに、いずれかの種別のデータ配信を要求する配信要求を、情報処理端末から受信する要求受信部を備え、前記決定部は、前記配信要求を受信した場合、前記情報処理端末に対して配信可能な配信ノードの中から、前記負荷情報に応じて、該情報処理端末にデータを配信する端末配信ノードを決定する、ことを特徴とする付記1に記載の配信システム。付記3前記決定部は、前記配信ノードがグループに分類されている場合、配信ノードとグループとを関係付けたノードグループ情報から、予め前記情報処理端末に配信する配信ノードとして設定された該配信ノードが属するグループに属する配信ノードを抽出し、抽出した該配信ノードの中から前記端末配信ノードを決定することを特徴とする付記2に記載の配信システム。付記4前記決定部は、前記配信ノードのうち、前記配信要求の対象の種別のデータを送信または受信する配信ノードを前記端末配信ノードとして選択することを特徴とする付記2に記載の配信システム。付記5前記決定部は、前記配信ノードが受信したデータを複製した複製回数を前記負荷情報として計測し、前記複製回数に応じて、前記情報処理端末に対して配信可能な配信ノードの中から、前記端末配信ノードを決定することを特徴とする付記2に記載の配信システム。付記6前記配信ノードは、さらに、前記配信ノードに設けられた演算装置の利用率を検出して、該検出した演算装置の利用率を前記制御ノードへ送信する負荷情報通知部を備え、前記制御ノードは、さらに、前記配信ノードから受信した前記演算装置の利用率を用いて、前記負荷情報を更新する負荷情報更新部と、を備えることを特徴とする付記1に記載の配信システム。付記7前記決定部は、前記配信先のノード情報と前記データの種別を特定する種別情報との配布後に、前記配信要求がされて決定した配信先の配信ノードと、該配信先の配信ノードに配信するデータの種別とを取得し、前記配布部は、取得された前記配信先の配信ノードを特定するノード情報と、取得された前記データの種別を特定する種別情報とを、前記配信ノードに配布することを特徴とする付記1に記載の配信システム。付記8前記決定部は、受信された前記配信要求に含まれるデータ種別が多い配信要求を送信した情報処理端末に対する端末配信ノードを、データを配信するための配信経路であって木構造で表される配信木における最上位の配信ノードに決定することを特徴とする付記2に記載の配信システム。付記9前記決定部は、受信された前記配信要求のうち最も多くのデータ種別を含む配信要求の数を前記端末配信ノード毎に計測し、該配信要求数が最も多く計測された端末配信ノードを、データを配信するための配信経路であって木構造で表される配信木のルートとして決定することを特徴とする付記2に記載の配信システム。付記10前記制御ノードは、さらに、前記制御ノードが複数存在し、各制御ノードの配下に複数の配信ノードが存在する場合、他の制御ノードとの間で通信を行う通信部を備え、いずれかの制御ノードが前記配信要求を受信した場合、前記配信要求を受信した制御ノードの決定部は、前記複数の配信ノード間の接続情報と、前記複数の配信ノードそれぞれにおける負荷情報とに基づいて、前記複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードを選択し、各制御ノードの配下の配信ノードを特定する情報に基づいて、選択した配信ノードがいずれの制御ノードの配下の配信ノードであるかを判定し、前記通信部は、前記選択した配信ノードがいずれの制御ノード配下の配信ノードでもないと判定された場合、他の制御ノード配下の配信ノードのいずれかから、前記配信要求をした情報処理装置に対する端末配信ノードへ前記配信要求の対象の種別のデータを送るように、前記他の制御ノードに通知することを特徴とする付記2に記載の配信システム。付記11複数の配信ノードと、制御ノードとがネットワークを介して接続される配信システムの配信方法において、前記制御ノードは、前記配信ノード間の接続状態を示す接続情報と、前記配信ノードにおける負荷情報とに基づいて、前記複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードと、該配信先の配信ノードに配信するデータの種別と、を決定し、決定した前記配信先の配信ノードを特定するノード情報と、決定した前記データの種別を特定する種別情報とを、配信ノードに配布し、前記配信ノードは、前記制御ノードから配布された前記ノード情報と前記種別情報とを受信し、他の配信ノードから配信されたデータを受信した場合には、受信したデータから前記種別情報が特定する種別のデータを選択し、選択した種別のデータを前記ノード情報が特定する配信ノードに送信する、ことを特徴とする配信方法。付記12前記制御ノードは、さらに、いずれかの種別のデータ配信を要求する配信要求を、情報処理端末から受信し、前記配信要求を受信した場合、前記情報処理端末に対して配信可能な配信ノードの中から、前記負荷情報に応じて、該情報処理端末にデータを配信する端末配信ノードを決定するS14、ことを特徴とする付記11に記載の配信方法。付記13前記制御ノードは、前記配信ノードがグループに分類されている場合、配信ノードとグループとを関係付けたノードグループ情報から、予め前記情報処理端末に配信する配信ノードとして設定された該配信ノードが属するグループに属する配信ノードを抽出し、抽出した該配信ノードの中から前記端末配信ノードを決定することを特徴とする付記12に記載の配信方法。付記14前記制御ノードは、前記配信ノードのうち、前記配信要求の対象の種別のデータを送信または受信する配信ノードを前記端末配信ノードとして選択することを特徴とする付記12に記載の配信方法。付記15前記制御ノードは、前記配信ノードが受信したデータを、該配信ノードが複製した複製回数を前記負荷情報として計測し、前記複製回数に応じて、前記情報処理端末に対して配信可能な配信ノードの中から、前記端末配信ノードを決定することを特徴とする付記12に記載の配信方法。付記16複数の配信ノードと、制御ノードとがネットワークを介して接続される配信システムの前記制御ノードに実行させる配信プログラムにおいて、前記制御ノードに、前記配信ノード間の接続状態を示す接続情報と、前記配信ノードにおける負荷情報とに基づいて、前記複数の配信ノードのうち一の配信ノードが次にデータを配信する配信先の配信ノードと、該配信先の配信ノードに配信するデータの種別と、を決定し、決定した前記配信先の配信ノードを特定するノード情報と、決定した前記データの種別を特定する種別情報とを、配信ノードに配布する処理を実行させる配信プログラム。付記17複数の配信ノードと、制御ノードとがネットワークを介して接続される配信システムの前記配信ノードに実行させる配信プログラムにおいて、前記配信ノードに、前記制御ノードから配布された配信先の配信ノードを特定するノード情報と、該配信先の配信ノードに配信するデータの種別を特定する種別情報とを受信し、他の配信ノードから配信されたデータを受信した場合には、受信したデータから前記種別情報が特定する種別のデータを選択し、選択した種別のデータを前記ノード情報が特定する配信ノードに送信する処理を実行させる配信プログラム。付記18前記制御ノードに、さらに、いずれかの種別のデータ配信を要求する配信要求を、情報処理端末から受信し、前記配信要求を受信した場合、前記情報処理端末に対して配信可能な配信ノードの中から、前記負荷情報に応じて、該情報処理端末に配信する端末配信ノードを決定する、処理を実行させる付記16に記載の配信プログラム。付記19前記制御ノードは、前記配信ノードがグループに分類されている場合、配信ノードとグループとを関係付けたノードグループ情報から、予め前記情報処理端末に配信する配信ノードとして設定された該配信ノードが属するグループに属する配信ノードを抽出し、抽出した該配信ノードの中から前記端末配信ノードを決定することを特徴とする付記18に記載の配信プログラム。"