(57)【要約】【課題】刺激と発火によってエンティティの連鎖反応の仕方を動的に制御する自律分散ネットワークにおいて、イベント受信者がイベント送信元に対してイベントのリプライ通知を行うことができるエンティティ装置、リプライ通知制御方法、リプライ通知制御プログラム及びその記録媒体を提供する。【解決手段】エンティティ装置１〜３をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示すフィルタ１−２／ｅと、当該イベントと対応付けられたリプライイベントの取得条件を示すフィルタ１−２／ｒとを保持するエンティティ装置１が、フィルタ３−１／ｅと一致するイベントを受信したエンティティ装置３より受信するリプライイベントが示す意味情報と、第２のフィルタとが一致するか否かを照合し、照合結果に基づいて、リプライイベントのイベントルーティングを制御する。【選択図】  図１
2004282374.tif 000002
【特許請求の範囲】
【請求項１】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、
イベントの取得条件を示す第１のフィルタと、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する意味情報ルータと、
前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記意味情報ルータが保持する第２のフィルタとが一致するか否かを照合する照合部と、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する制御部とを有する意味情報スイッチと
を具備することを特徴とするエンティティ装置。
【請求項２】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、
イベントの取得条件を示す第１のフィルタを保持する意味情報ルータと、
第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記意味情報ルータが保持する第１のフィルタとが一致するか否かを照合する照合部と、該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定する制御部とを有する意味情報スイッチと
を具備することを特徴とするエンティティ装置。
【請求項３】
前記照合部は、さらに、前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合し、
前記制御部は、さらに、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する
ことを特徴とする請求項２に記載のエンティティ装置。
【請求項４】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタと前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する前記エンティティ装置が、前記リプライイベントのイベントルーティングを制御するリプライ通知制御方法であって、
前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合し、
該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する
ことを特徴とするリプライ通知制御方法。
【請求項５】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータを有する前記エンティティ装置が、前記イベントに対応するリプライイベントのイベントルーティングを制御するリプライ通知制御方法であって、
第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記第１のフィルタとが一致するか否かを照合し、
該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定する
ことを特徴とするリプライ通知制御方法。
【請求項６】
前記エンティティ装置が、さらに、
前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合し、
該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する
ことを特徴とする請求項５に記載のリプライ通知制御方法。
【請求項７】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタと前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する前記エンティティ装置に、前記リプライイベントのイベントルーティング制御を実行させるためのリプライ通知プログラムであって、
前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、
該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理と
を実行させるためのリプライ通知制御プログラム。
【請求項８】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータを有する前記エンティティ装置に、前記イベントに対応するリプライイベントのイベントルーティングを制御する処理を実行させるためのリプライ通知制御プログラムであって、
第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記第１のフィルタとが一致するか否かを照合する処理と、
該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定する処理と
を実行させるためのリプライ通知制御プログラム。
【請求項９】
前記エンティティ装置に、さらに、
前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、
該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理と
を実行させるための請求項８に記載のリプライ通知制御プログラム。
【請求項１０】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタと前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する前記エンティティ装置に、前記リプライイベントのイベントルーティング制御を実行させるためのリプライ通知プログラムを記録した記録媒体であって、
前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、
該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理と
を実行させるためのリプライ通知制御プログラムを記録した記録媒体。
【請求項１１】
第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータを有する前記エンティティ装置に、前記イベントに対応するリプライイベントのイベントルーティングを制御する処理を実行させるためのリプライ通知制御プログラムを記録した記録媒体であって、
第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記第１のフィルタとが一致するか否かを照合する処理と、
該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定する処理と
を実行させるためのリプライ通知制御プログラムを記録した記録媒体。
【請求項１２】
前記エンティティ装置に、さらに、
前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、
該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理と
を実行させるための請求項１１に記載のリプライ通知制御プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、イベントに対するリプライ通知制御を行うエンティティ装置、リプライ通知制御方法、リプライ通知制御プログラム及びその記録媒体に関する。
【０００２】
【従来の技術】
従来、インターネットでは、図２３に示すように、「ブローカ型配信モデル」に基づいた情報配信が一般的であった。このビジネスモデルでは、ブローカとして位置付けられる情報配信者（例えば、パソコン通信会社）が、情報提供者の情報を集中管理し、必要に応じてユーザに対して情報の配信を行った。
しかしながら、ブローカ型探索モデルでは、ブローカが情報のメタデータを一括管理しているために、ユーザや情報提供者の多用なニーズにリアルタイムに応えることが困難であるなどから、より自由で、特定のブローカに支配されない新たなビジネスモデルが求められるようになり、このような問題認識から、「ブローカレス型探索モデル」という新たな概念が考え出された。
このブローカレス型探索モデルが、２０００年３月に発表されたＧｎｕｔｅｌｌａのような、世界中で注目されるようになったＰ２Ｐ（Ｐｅｅｒ−Ｔｏ−Ｐｅｅｒ）に相当する。また、２００１年４月に発表されたＪＸＴＡもＰ２Ｐ、すなわちブローカレス型探索モデルに相当する。Ｐ２Ｐは、ＷＷＷ以来の革新技術であり、第３世代と呼ばれている。なお、近年、伝送レイヤにＰ２Ｐの概念を適用したブローカレス型伝送モデルや、ポリシーレイヤにＰ２Ｐの考え方を適用したブローカレス型ポリシーモデルの研究開発が活発化していている。ブローカレス（配信）モデルのディメンションを図２４に示す。このブローカレス型探索モデルの１つがＳＩＯＮｅｔ（Ｓｅｍａｎｔｉｃ  Ｉｎｆｏｍａｔｉｏｎ  Ｏｒｉｅｎｔｅｄ  Ｎｅｔｗｏｒｋ）である。
【０００３】
ＳＩＯＮｅｔは、意味情報（メタデータ）に基づいて、データと当該データの意味情報とからなるイベントを配送するメタネットワークである。図２５に示すように、イベント受信者は、受信したいイベントの条件を示す意味情報を予めＳＩＯＮｅｔに登録しておく。イベント送信者からイベントがＳＩＯＮｅｔに送信されると、ＳＩＯＮｅｔは、当該イベントの意味情報と、登録された意味情報とを照合し、その照合結果に基づいて、当該イベントをイベント受信者に送信する。このように、イベントをＳＩＯＮｅｔに送信することを「刺激」といい、登録した意味情報とイベントの意味情報とが合致し、当該意味情報を登録したイベント受信者に、当該イベントを通知することを「発火」という。
【０００４】
これにより、ネットワーク上に超分散する不特定多数のエンティティ（端末装置）の中から、特定のエンティティを動的に探索・発見することができる。すなわち、ＳＩＯＮｅｔは、従来のネットワークで用いていた宛先アドレス（誰に対して送信する）の代わりに、意味情報（どういう人に対して送信する）に基づいてイベントを配送するネットワークである。
【０００５】
また、ＳＩＯＮｅｔは、ＳＩＯＮｅｔの構成要素を含めたすべてのエンティティが自律分散協調することにより、ネットワークが自己組織化される自律分散協調ネットワーク（自律分散コンピュータ）である。ＳＩＯＮｅｔのネットワーク構成要素には、「意味情報スイッチ（ＳＩ−ＳＷ）」、「意味情報ルータ（ＳＩ−Ｒ）」、「意味情報ゲートウエイ（ＳＩ−ＧＷ）」、「イベントプレース」、「セッション」などがあり、これらが必要に応じて自己組織化することにより、セキュアーでスケーラブルなＰ２Ｐネットワークをボトムアップアプローチで構築することができる。
【０００６】
ＳＩＯＮｅｔの基本概念・原理は単純で一元的である。”エンティティによるフィルタの登録とイベントの送出”という単純操作の繰り返し、すなわち、”エンティティの「刺激」と「発火」が、ＳＩＯＮｅｔのネットワーク構成要素間で「連鎖反応」”することにより、すべてのエンティティを自律分散協調させる点にある。この連鎖反応の振舞いを制御するものが、上述のイベント受信者がＳＩＯＮｅｔに登録した意味情報であり、これを「フィルタ」という。フィルタに登録するフィルタ値により、エンティティの連鎖反応の仕方を動的に制御することができる。ＳＩＯＮｅｔにおけるもう一つの基本概念がイベントプレースである。イベントプレースは、シェアードリンクにより相互に接続されたエンティティグループであり、これにより連鎖反応の範囲を制限することができる。
なお、ＳＩＯＮｅｔの詳細については非特許文献１、２に記載されている。また、この発明の出願人は、先に、特願２００１−３９４９８０によってＳＩＯＮｅｔに関する出願を行っている。
【０００７】
【非特許文献１】
星合隆成、小柳恵一、ビルゲー・スクバタール、久保田稔、柴田弘、酒井隆道：”意味情報ネットワークアーキテクチャ”、電子情報通信学会論文誌Ｂ、Ｖｏｌ．Ｊ８４−Ｂ、Ｎｏ．３、ｐｐ．４、１１−４、２，４（２０００．７受付け、  ２００１−３掲載）．
【非特許文献２】
星合隆成、柴田弘、酒井隆道、小柳恵一：”意味情報ネットワークアーキテクチャ：ＳＩＯＮアーキテクチャ“、ＮＴＴ  Ｒ＆ｄ、Ｖｏｌ．５０、Ｎｏ．３、ｐｐ．１５７−１６４（２０００．１２受付け、２００１．３掲載）
【０００８】
【発明が解決しようとする課題】
図２８にＳＩＯＮｅｔが具備する通信方式について示す。
ＳＩＯＮｅｔは、ブロードキャストモード、マルチキャストモード、ユニキャストモード、リプライ通知などの通信モードを提供する。
ブロードキャストでは、イベントプレース内のすべてのエンティティに対して、イベントが転送される。そのため、転送されたイベントによりエンティティが発火するかどうかは、当該エンティティにおけるフィルタとの照合により決定される。
マルチキャストでは、イベントプレースに所属するエンティティの中から、任意の条件を満足するエンティティに対してのみイベントを転送する。
ユニキャストでは、特定のエンティティに対してのみイベントを転送する。
リプライ通知では、イベント受信者がイベント送信元に対して、イベントのリプライ通知を行う場合に、イベント送信元に対して、リプライイベントが転送される。
【０００９】
しかし、上述したような刺激と発火によって、エンティティの連鎖反応の仕方を動的に制御する自律分散ネットワークにおいて、このリプライ通知制御を実際に実現する機能は、現在提案されているものだけでは不十分であり、これを従来アーキテクチャで実現することは、新たなメソッド（機能プログラム）の追加を意味している。
しかし、これでは迅速なシステム開発、開発規模の最小化、デバック工数の削減、開発費用の削減、維持管理の容易性などを望むことは到底不可能であるという問題がある。
【００１０】
本発明はこのような事情に鑑みてなされたもので、刺激と発火によってエンティティの連鎖反応の仕方を動的に制御する自律分散ネットワークにおいて、イベント受信者がイベント送信元に対してイベントのリプライ通知を行うことができるエンティティ装置、リプライ通知制御方法、リプライ通知制御プログラム及びその記録媒体を提供することを目的とする。
【００１１】
【課題を解決するための手段】
この発明は上記の課題を解決すべくなされたもので、請求項１に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタと、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する意味情報ルータと、前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記意味情報ルータが保持する第２のフィルタとが一致するか否かを照合する照合部と、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する制御部とを有する意味情報スイッチとを具備することを特徴とする。
【００１２】
ここで、シェアードリンクとは、第１から第ｎのエンティティ装置間において、双方向のイベント共有を行うためのリンクである。
また、イベントプレースとは、第１から第ｎのエンティティ装置をシェアードリンクを介して接続して構成されるネットワークである。
また、イベントとは、データと、そのデータの意味情報と、制御情報からなるパケットである。
また、意味情報とは、送信データの特性を示す語彙、値であって、ある語彙概念におけるインスタンスである。
また、リプライイベントとは、イベント受信者がイベント送信元に対して返信する返信情報である。
【００１３】
また、請求項２に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータと、第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記意味情報ルータが保持する第１のフィルタとが一致するか否かを照合する照合部と、該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定する制御部とを有する意味情報スイッチとを具備することを特徴とする。
【００１４】
また、請求項３に記載の発明は、請求項２に記載の発明において、前記照合部は、さらに、前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合し、前記制御部は、さらに、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御することを特徴とする。
【００１５】
また、請求項４に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタと前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する前記エンティティ装置が、前記リプライイベントのイベントルーティングを制御するリプライ通知制御方法であって、前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合し、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御することを特徴とする。
【００１６】
また、請求項５に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータを有する前記エンティティ装置が、前記イベントに対応するリプライイベントのイベントルーティングを制御するリプライ通知制御方法であって、第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記第１のフィルタとが一致するか否かを照合し、該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定することを特徴とする。
【００１７】
また、請求項６に記載の発明は、請求項５に記載の発明において、前記エンティティ装置が、さらに、前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合し、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御することを特徴とする。
【００１８】
また、請求項７に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタと前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する前記エンティティ装置に、前記リプライイベントのイベントルーティング制御を実行させるためのリプライ通知プログラムであって、前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理とを実行させるためのリプライ通知制御プログラムである。
【００１９】
また、請求項８に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータを有する前記エンティティ装置に、前記イベントに対応するリプライイベントのイベントルーティングを制御する処理を実行させるためのリプライ通知制御プログラムであって、第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記第１のフィルタとが一致するか否かを照合する処理と、該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定する処理とを実行させるためのリプライ通知制御プログラムである。
【００２０】
また、請求項９に記載の発明は、請求項７に記載の発明において、前記エンティティ装置に、さらに、前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理とを実行させるためのリプライ通知制御プログラムである。
【００２１】
また、請求項１０に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタと前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する前記エンティティ装置に、前記リプライイベントのイベントルーティング制御を実行させるためのリプライ通知プログラムを記録した記録媒体であって、前記第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理とを実行させるためのリプライ通知制御プログラムを記録した記録媒体である。
【００２２】
また、請求項１１に記載の発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータを有する前記エンティティ装置に、前記イベントに対応するリプライイベントのイベントルーティングを制御する処理を実行させるためのリプライ通知制御プログラムを記録した記録媒体であって、第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、前記第１のフィルタとが一致するか否かを照合する処理と、該照合結果に基づいて、前記イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを前記意味情報ルータに設定する処理とを実行させるためのリプライ通知制御プログラムを記録した記録媒体である。
【００２３】
また、請求項１２に記載の発明は、請求項１１に記載の発明において、前記エンティティ装置に、さらに、前記第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、前記第２のフィルタとが一致するか否かを照合する処理と、該照合結果に基づいて、前記リプライイベントのイベントルーティングを制御する処理とを実行させるためのリプライ通知制御プログラムを記録した記録媒体である。
【００２４】
【発明の実施の形態】
［ＳＩＯＮｅｔの詳細］
＜ＳＩＯＮｅｔエンティティの定義＞
ここでは、パーソナルコンピュータ、ワークステーション、情報携帯端末、携帯電話、ウエアラブルコンピュータなどのあらゆるコンピュータを総称して、ホストと呼ぶ。さらに、ＳＩＯＮｅｔソフトウエアを実装したホストを、「ＳＩＯＮｅｔエンティティ」もしくは単に「エンティティ」と呼ぶ。エンティティ（エンティティ装置）は、図２（ａ）に例を示すように、ＳＩＯＮｅｔソフトウエアを実装したホストを、ＳＩＯＮｅｔにおける自律分散協調の単位として仮想化したものである。ＳＩＯＮｅｔソフトウエアは、個々のエンティティが自律分散協調を行うための仕組みを提供する。このＳＩＯＮｅｔソフトウエアにより、各ホストが自律分散コンピュータとなることが可能となる。
【００２５】
エンティティは、図２（ｂ）に示すように、主に以下の３つのタイプに分類される。
・サービスとして振る舞うアプリケーション（サービスエンティティ：ＳＥ、サービスエンティティ部）をエンティティ内部に含むもの
・ネットワーク構成要素として振る舞うモジュール（ネットワークエンティティ：ＮＥ）をエンティティ内部に含むもの
・上記ＳＥとＮＥとの両方をエンティティ内部に含むもの
【００２６】
＜エンティティ構造と状態遷移＞
図３は、エンティティの状態遷移を示す図である。この図に示すように、エンティティの状態として、”Ｎｏｎ−Ｅｘｉｓｔｅｎｔ”、”サスペンド”、”アクティブ”という３つの状態がある。
”Ｎｏｎ−Ｅｘｉｓｔｅｎｔ”状態は、ホストにＳＩＯＮｅｔソフトウエアをインストールした時点でのエンティティ状態を表している。
ＳＩＯＮｅｔソフトウエアを実行（ラウンチ）することにより、”Ｎｏｎ−Ｅｘｉｓｔｅｎｔ”状態から”サスペンド”状態に遷移する。このとき、エンティティ内に、図４に一例を示すように、エンティティ制御部、コントロールパネル、ネットワークエンティティファクトリ（ＮＥファクトリ）、ネットワークエンティティ（ＮＥ）、などの内部モジュールが生成される。以下に、それぞれの役割を簡単に説明する。
【００２７】
エンティティ制御部とは、エンティティの実体であり、他のエンティティやコントロールパネルからの様々な要求（後述するセッションの確立要求、シェアードリンクの確立要求など）を受け付ける。なお、”サスペンド”状態のエンティティに対して、他のエンティティからセッションの確立要求、シェアードリンクの確立要求などを行うことはできない。
【００２８】
コントロールパネルは、人などのエンティティの所有者に対して、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を提供する。コントロールパネルにより、例えば、エンティティの所有者にエンティティ名の入力を促し、入力されたエンティティ名に基づいて、エンティティ制御部が当該エンティティにエンティティ名を付与する。図４の例では、エンティティ名を”エンティティ２”としている。このエンティティ名を、後述する「グローバルエンティティ名」と特に区別して「ローカルエンティティ名」と呼ぶことがある。このローカルエンティティ名は、当該エンティティの所有者等が任意で設定できるものとする。
【００２９】
ＮＥ（ネットワークエンティティ）ファクトリとは、ＮＥを動的に生成する機能を備える。
ＮＥ（ネットワークエンティティ）とは、ＳＩ−Ｒ（Ｓｅｍａｎｔｉｃ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｒｏｕｔｅｒ、意味情報ルータ）、ＳＩ−ＧＷ（Ｓｅｍａｎｔｉｃ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｇａｔｅｗａｙ、意味情報ゲートウェイ  ）、アライブエンティティ、障害処理エンティティ、統計情報収集エンティティなど、ネットワーク制御のために振る舞うモジュールの総称である。
【００３０】
ＳＥ（サービスエンティティ）とは、エンティティが提供するプラグイン機構を用いて、エンティティ内にＳＥとして組み込まれたアプリケーションであり、ＳＩＯＮｅｔ上で動作するＰ２Ｐアプリケーションを仮想化したものである。エンティティが提供するプラグイン機構を用いて、アプリケーションをＳＥとしてエンティティ内に組み込むことができる。また、ＳＥは、ＳＩ−ＳＷに対して、任意数のセッションを確立することができる。ＳＥはセッションを介してのみ、イベントの送受信が可能である。ＳＥは、ＳＩＯＮｅｔのネットワーク構築・運営に関与しない。なお、ＳＥをエンティティ内に組み込むプラグイン機構については後述する。
【００３１】
図３における”サスペンド”状態のエンティティ（エンティティ２）が、例えば、図５に例を示すように自らイベントプレースを生成したり、図６に例を示すように既存のイベントプレースにＪｏｉｎ（参加）などして、任意のイベントプレースに属し、エンティティグループのメンバーになったときに、エンティティ（エンティティ２）は”サスペンド”状態から”アクティブ”状態へと遷移する。”アクティブ”状態のエンティティのみが自身の存在をアドバタイズ（公開、詳細は後述する）し、他のエンティティからのセッションの確立要求やシェアードリンクの確立要求を受け付けることができる。
【００３２】
ここで、ソフトウェアがホストにインストールされ、ＮＥ、ＮＥファクトリ、エンティティ制御部、コントロールパネルなどを備えるエンティティが生成された後、当該エンティティが”アクティブ”状態となるまでの動作を説明する。エンティティが、当該エンティティの所有者などからコントロールパネルを介して、イベントプレースの生成や他のイベントプレースへの参加の指示を受けたものとする。エンティティのエンティティ制御部は、当該エンティティのＮＥファクトリにＳＩ−ＳＷ（Ｓｅｍａｎｔｉｃ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｗｉｔｃｈ、意味情報スイッチ）の生成を依頼する。ＮＥファクトリがＳＩ−ＳＷを生成すると、エンティティ制御部は、生成されたＳＩ−ＳＷと、ＮＥなどの内部モジュールとの間にセッションを確立する。これにより、アドバタイズや、他のエンティティからのセッションの確立要求、シェアードリンクの確立要求等を受け付けることが可能となる。
【００３３】
ここで、図７を参照し、ＳＩ−ＳＷとセッションの役割について説明する。
セッションとは、ＳＩ−ＳＷとＳＥ間のコネクションであり、ＳＥは、セッションを介してのみイベントの送受信を行うことができる。セッションには、イベントの送信セッション、受信セッション、送受信セッションの３タイプがある。
ＳＩ−ＳＷは、意味情報に基づいて、イベントをスイッチングするスイッチング機構を提供する。ＳＩ−ＳＷはセッションを介して、ＮＥや、プラグイン機構によりエンティティ内に組み込まれたＳＥやＮＥなどの内部エンティティをスター型で収容する。以下では、ＳＥを例にとり説明するが、ＮＥなど、エンティティに内包された他の内部エンティティも同様である。
【００３４】
ここで、イベントの構成について説明する。図８に一例を示すように、イベントは、制御情報部、意味情報部、データ部から構成される。データ部には、送信データが格納される。送信データとして、テキストデータ、バイナリデータ、リファレンス、プロキシ、エージェントなど、様々なデータ、プログラムを格納することができる。
【００３５】
意味情報部には、送信データの意味情報（語彙とその値）、及び、意味情報の語彙概念（イベントタイプ）が格納される。ここで、意味情報とは、送信データの特性を記述したメタデータであり、イベントタイプのインスタンスである。
また、イベントタイプは意味情報のテンプレートである。イベントタイプ間には継承関係を定義できる。図９に、意味情報体系の一例を示す。この図において、”タイトル；イエスタデイ”、”価格；＄３０”、”アーティスト名；ビートルズ”という意味情報は、”ポピュラー”というイベントタイプに属しており、また”音楽”というイベントタイプにも属している。また、”タイトル；きよしこの夜”、”価格；＄２０”、”シチュエーション；クリスマス”という意味情報は、”ＢＧＭ”というイベントタイプに属しており、また”音楽”というイベントタイプにも属している。
【００３６】
意味情報体系の記述言語としてはＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などがある。なお、ネットワークエンティティ用に一部のイベントタイプ名（ＳＩＯＮｅｔから始まるすべての名称）が予約済みである。
図８に一例を示すイベントの制御情報部は、ＳＩＯＮｅｔの実行制御のために用いられる制御フィールドであり、これのみがＳＩＯＮｅｔのユーザであるＳＥに対して開放されていない。制御情報部には、合致したフィルタの識別子、合致したフィルタの照合得点、同期型統計情報収集フラグ、イベントプレース内、イベントプレース間におけるＴＴＬ（Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）値、イベントプレース内、イベントプレース間におけるホップ数、ホップ属性などの制御情報が設定される。
【００３７】
図７に示すようなエンティティの構成において、ＳＥの機能を説明する。ＳＥは、受信セッションを介して、イベントの取得条件をＳＩ−ＳＷに登録する。これを「フィルタ」と呼ぶ。フィルタには、取得したいイベントの語彙概念（イベントタイプ）、及び、意味情報との照合条件（例えば、語彙”Ｐｒｉｃｅ”が”＄２０から＄４０の範囲”のものを取得対象とする）等を設定する。なお、当該イベントタイプに定義されているすべての語彙との「完全一致」、一部の語彙との「部分一致」、「重み付け一致」など、照合条件をフィルタ単位で選択することができる。
【００３８】
ＳＥは、一つの受信セッションから、複数のフィルタを登録することが可能であるが、同一セッションを介して登録されたフィルタ間は”ｏｒ”関係を有する。すなわち、一つのイベントに対して、一つの受信セッションは高々１回しか発火しない。取得したいイベントのイベントタイプにワイルドカードを指定した場合には、すべてのイベントタイプが取得の対象となる。また、意味情報との照合条件に１（論理値が真）が設定された場合には、無条件に意味情報との照合条件が満足されたことを意味する。
【００３９】
また、ＳＥは、送信セッションを介して、ＳＩ−ＳＷにイベントの送信を行う。このとき、ＳＩ−ＳＷはイベントの意味情報部とフィルタとを照合する。具体的には、まず、受信したいイベントタイプであるかどうかをチェックし、これを満足した場合には、意味情報と照合条件をチェックする。この照合の結果、意味情報が照合条件を満足している場合には、合致したフィルタを登録したエンティティを起動するとともに、当該イベントを通知する。
ＳＩＯＮｅｔでは、イベントの送信を「刺激」、フィルタがイベントに合致することを「反応」、合致したフィルタを登録したエンティティを起動しイベント通知することを「発火」と呼ぶ。
【００４０】
＜エンティティの名称付与方法＞
図５に示すように、エンティティ２が”イベントプレースＡ”と命名したイベントプレースを生成する場合を説明する。エンティティ２の所有者は、コントロールパネルを介するなどして、エンティティ２にイベントプレース名を入力する。ここでは、入力等されたイベントプレース名を「イベントプレースＡ」とする。すると、エンティティ制御部は、ＮＥファクトリにＳＩ−ＳＷの生成を依頼し、生成されたＳＩ−ＳＷと、ＮＥなどの内部モジュールとの間にセッションを確立する。さらに、エンティティ制御部は、生成されたＳＩ−ＳＷの名前を「イベントプレース名＋ローカルエンティティ名」、すなわち「イベントプレースＡ＋エンティティ２」として記憶する。この名前を「グローバルエンティティ名」と呼ぶ。このグローバルエンティティ名の作成がイベントプレースの生成に相当する。
【００４１】
すなわち、ＳＩＯＮｅｔでは、イベントプレースの生成により、必ずしも何らかの管理実体が生成されるとは限らない。つまり、ＳＩＯＮｅｔでは、イベントプレースに属しているエンティティのメンバー管理を、後述するエンティティ間のシェアードリンクにより実現しているため、メンバー管理を行う集中管理部自体が存在しない。そのため、イベントプレースを生成したエンティティが当該イベントプレースから退去しても、当該イベントプレースに残されたエンティティが自律的に自己組織化することにより、当該イベントプレースの運営が継続される。すなわち、イベントプレースから最後のエンティティが退去することが、イベントプレースの消滅に相当する。
【００４２】
このグローバルエンティティ名は、シェアードリンクやセッションを確立する場合に用いられる。図５に示すようなエンティティ２が、イベントプレースＢをさらに生成し、エンティティ１からのシェアードリンクを確立する動作を、図１０を参照して説明する。
【００４３】
まず、既にイベントプレースＡに参加しているエンティティ２が、イベントプレースＢを生成する動作を説明する。エンティティ２のエンティティ制御部は、前述と同様に、ＮＥファクトリに新たなＳＩ−ＳＷを生成させる。エンティティ制御部は、生成された新たなＳＩ−ＳＷにグローバルエンティティ名として「イベントプレースＢ＋エンティティ２」を付与する。これにより、イベントプレースＢが生成される。この時点で、エンティティ２は、「イベントプレースＡ＋エンティティ２」と「イベントプレースＢ＋エンティティ２」という二つのグローバルエンティティ名（ＳＩ−ＳＷ名）を持つ。
【００４４】
次に、エンティティ１がイベントプレースＡにＪｏｉｎ（参加）する動作を説明する。上述のようにイベントプレースＡ及びイベントプレースＢに参加したエンティティ２は、“アクティブ”状態となっている。“アクティブ”状態のエンティティは、自身の存在を他のエンティティにアドバタイズ（公開）することができるが、その際にはグローバルエンティティ名が公開される。
【００４５】
エンティティ１がエンティティ２を発見し、当該エンティティ２に対してＪｏｉｎ要求を行うとき、エンティティ１は、Ｊｏｉｎ先のエンティティであるエンティティ２のグローバルエンティティ名が「イベントプレースＡ＋エンティティ２」である旨をエンティティ２に通知する。
【００４６】
このように、グローバルエンティティ名により、シェアードリンクを確立するＳＩ−ＳＷを一意に特定することが可能になり、ひいては、イベントプレースＡへの参加が可能になる。このように、シェアードリンクやセッションの確立先であるＳＩ−ＳＷはグローバルエンティティ名として仮想化されるため、エンティティの所有者等は、ＳＩ−ＳＷを直接意識することはない。
【００４７】
＜ＳＥのプラグイン方法＞
以下に、図１１に示すエンティティへのＳＥの組み込みの動作を説明する。
（１）エンティティの所有者は、コントロールパネルに対して、アプリケーションのプラグインを指示する。このとき、プラグインするアプリケーションの実行ファイル名をパラメータとして与える。
（２）コントロールパネルは、プラグインの指示を受けた旨と、プラグインするアプリケーションの実行ファイル名とをエンティティ制御部に通知する。
【００４８】
（３）エンティティ制御部は、プラグインする実行ファイル名を記憶するとともに、与えられた実行ファイル名を用いて、アプリケーションを起動し、ＳＩ−ＳＷと起動したアプリケーションとの間にセッションを確立する。
すなわち、ＳＩＯＮｅｔにおけるプラグインとは、アプリケーションとＳＩ−ＳＷとの間にセッションを確立することに他ならない。ＳＩＯＮｅｔでは、ＳＥ、ＮＥなどのすべての動作実体は、セッションを介して連携する。そのため、プラグイン／プラグアウト（着脱）を容易に実現できるとともに、プラグイン／プラグアウトが他の動作実体に影響を与えない（超疎結合）。この考え方を拡張することにより、後述するようなエンティティ間でのＳＥ共有が実現できる。
【００４９】
＜ＰＲＥＦＥＲＥＮＣＥアーキテクチャ＞
ＳＩＯＮｅｔは図１２に一例を示すようなリファレンスモデルの考え方を採用している。図１２に示すＰＲＥＦＥＲＥＮＣＥアーキテクチャは、フィルタに意味情報を登録し、イベントの意味情報部に配布条件（照合条件）を設定する  御用聞き社会（御用聞き型サイバーソサイアティ）構築に向けたアーキテクチャであり、ブローカレス型配信モデル、ブローカレス型探索モデル、ブローカレス型ポリシーモデルに対するトータルソリューションを提供する。具体的には、ストリームインターフェース、ＳＩＯＮｅｔ、ＣＯＭＮｅｔなどから構成される。
ＳＩＯＮｅｔはイベントの伝達層であり、上位層に対してネットワークインタフェースを提供する。ミドルウエア層がコミュニティ（コミュニティネットワーク：ＣＯＭＮｅｔ）であり、ＳＩＯＮｅｔのインテリジェンス層に相当する。このレイヤにおいて、情報の局所化、認証、セキュリティ、情報の権利保証、ポリシー制御などが行われる。そして、最上位層がアプリケーション層となっている。このアプリケーション層には、ＳＥが実装される。ＳＥとしては、例えば、個人ＴＶ局、メッセージ交換サービスのスマートメッセンジャーなどがある。
【００５０】
このように、ＳＩＯＮｅｔは、分散コンピューティング、情報交換、コラボレーション、メッセージ配信などのあらゆるＰ２Ｐサービス（ＳＥがサービスを提供する）に対して、共通のＰ２Ｐネットワーク基盤を提供するとともに、プラグイン機構の提供により、アプリケーション開発の効率化をサポートする。
【００５１】
＜ＳＩＯＮｅｔにおけるエンティティの役割＞
ＳＩＯＮｅｔは、個々のエンティティが互いに助け合うことにより、ボランティア型のネットワークを構築する形態であり、それぞれが自律分散協調することにより、ネットワークを自己組織化する。例えば、図６の構成において、エンティティ１の生成したイベントプレースにエンティティ２が参加し、その後、エンティティ１が当該イベントプレースから退去する動作を説明する。
【００５２】
予め、エンティティ１はイベントプレースを生成し、当該イベントプレースに参加している。ここに、エンティティ２がエンティティ１に対して、イベントプレースへのＪｏｉｎ要求を行うと、図１３に示すように、エンティティ２にＳＩ−ＳＷが生成され、さらに、エンティティ１及びエンティティ２のＳＩ−ＳＷ間にシェアードリンクが確立され、エンティティグループが形成される。
このようにエンティティ１とエンティティ２のＳＩ−ＳＷ間にシェアードリンクが確立され、エンティティ２がイベントプレースに参加した後、イベントプレースの生成者であるエンティティ１がイベントプレースから退去するものとする。すると、ＳＩ−ＳＷ間のシェアードリンクが解除され、以降は、エンティティ２のみでイベントプレースの構築・運営が継続される。このように、個々のエンティティが自己組織化するため、あるエンティティが退去、消失等しても他のエンティティが当該エンティティの機能を果たす。
【００５３】
ＳＩＯＮｅｔでは、目的に応じてエンティティを配置／組み合わせることにより、様々な形態のＰ２Ｐネットワークを構築することができる。また、異なる形態のＰ２Ｐネットワークをシームレスに連携させることもできる。これは、以下を実現させることにより達成される。
（１）すべてのエンティティを、”刺激と発火に基づく連鎖反応”という一元的かつ単純な仕組みで自律分散協調させること
（２）Ｐ２Ｐネットワーク形態の差異をエンティティの配置・運営問題に帰着させること
このように、単一の仕組みで様々な形態のＰ２Ｐネットワークを構築できる点がＳＩＯＮｅｔの特徴の一つである。
【００５４】
＜シェアードリンク＞
「シェアードリンク（共有リンク）」は、複数の異なるエンティティ間において、双方向のイベント共有を行うための概念である。例えば、図１４に示すように、エンティティ２がエンティティ１に対して、シェアードリンク（ＳＬ：  Ｓｈａｒｅｄ  Ｌｉｎｋ）の確立要求を行うことにより、図１５に示すように、ＳＩ−ＳＷ２とＳＩ−ＳＷ１との間にシェアードリンクが確立され、新たなエンティティグループが形成される。
すなわち、シェアードリンクは、エンティティグループを形成するための仕組みであり、また、マルチホップの経路でもある。
【００５５】
図１４において、シェアードリンクの確立に成功したエンティティ２には、エンティティ１からイベントプレース名（グローバルエンティティ名）、当該イベントプレースにおけるイベント転送方式（ルーティング方式）、当該イベントプレースのディスクリプション（説明文）、プラグインされているＳＥ情報等のさまざまな情報が送信される。なお、後述するＳＩ−Ｒによるフィルタ値の設定によって、ＳＩ−ＳＷ間に様々なイベントルーティング方式を動的に設定できる。以降において、シェアードリンクの確立の動作を説明し、さらに、ＳＩ−Ｒの役割、仕組みを詳述する。
【００５６】
＜シェアードリンクの確立＞
図１４及び図１５を用いて、シェアードリンク確立までの仕組みを説明する。まず、図１４において、エンティティ２がエンティティ１に対して、シェアードリンクの確立要求を発行した場合を考える。
（１）エンティティ２がエンティティ１に対して、シェアードリンクの確立要求を発行する。
【００５７】
（２）図１５に示すように、エンティティ１のエンティティ制御部は、ＳＬ１，２（エンティティ２からのイベントを受信するためのシェアードリンク）を確立するために、ＮＥファクトリに、意味情報に基づいてＳＩ−ＳＷ間のイベントルーティング（イベント転送）を行うＳＩ−Ｒ１，２  を、エンティティ１内部に動的に生成させる。さらに、エンティティ制御部は、エンティティ２がシェアードリンクの確立要求元であることを記憶する。厳密には、エンティティ２のエントリポイントとグローバルエンティティ名（ＳＩ−ＳＷ２）とをシェアードリンクの確立要求元として記憶する。
【００５８】
（３）ＳＩ−Ｒ１，２  は、エンティティ２に対してイベント受信セッションの確立要求を行うことでＳＩ−ＳＷ２に対してイベント受信セッションを確立する。このとき、ＳＩ−ＳＷ２に、エンティティ１が受信するイベントの条件を示すフィルタを登録する。さらに、ＳＩ−Ｒ１，２  は、自身が属するＳＩ−ＳＷ１に対して、イベント送信のためのセッションを確立する。このような、ＳＩ−Ｒが確立する送受信セッションの組み合せをシェアードリンクという。これによりＳＬ１，２  が確立され、例えば、ＳＥ４がＳＩ−ＳＷ２に対して送出したイベントは、ＳＩ−Ｒ１，２  を介して、ＳＩ−ＳＷ１へも送出される。
【００５９】
（４）このとき、ＳＩ−Ｒ１，２  がＳＩ−ＳＷ２に対して登録するフィルタの設定値により、イベントの転送方式を動的に制御できる。その例を以下に示す。
（ａ）ＳＩ−ＳＷ２に対して送出されたイベントを、無条件にＳＩ−ＳＷ１へと転送する。すなわち、すべてのイベントに対して、ＳＩ−Ｒ１，２  が発火する。これはＳＩ−ＲがＳＩ−ＳＷに登録するフィルタとして、「取得する語彙概念にワイルドカードを、及び意味情報（語彙）との照合条件に真」を設定することにより可能になる。これを「無条件ルーティング」と呼ぶ。この設定は、シェアードリンク確立時に一度だけ行えばよい。この方式では、無駄なイベント転送と転送先でのイベント照合処理オーバヘッドが発生する可能性があるが、後述するイベントパス確立（ルーティング情報の設定）のためのオーバヘッドが発生しないため、フィルタ登録数がイベント送出数よりも十分大きい場合に有効な方式である。このルーティング方式は、主に、マルチホップ型ブロードキャスト通信に用いられる。
【００６０】
（ｂ）エンティティ１に取って必要なイベントのみをＳＩ−ＳＷ２からＳＩ−ＳＷ１へ転送する。これにより、不要なイベント転送を行わない。すなわち、特定のイベントに対してのみ、ＳＩ−Ｒ１，２  が発火する。これは、ＳＩ−Ｒが語彙概念のみ（照合条件は常に真）をフィルタに設定する「語彙概念によるイベントルーティング」と、語彙概念と語彙との照合条件をフィルタに設定する「語彙によるイベントルーティング」に大別される。前者は主にマルチホップ型属性付きマルチキャスト通信に、後者は主にマルチホップ型ユニキャスト通信、マルチホップ型マルチキャスト通信に用いられる。これは、障害処理通知、統計情報通知、アライブ通知、リプライ通知、アドバタイズメント通知などで用いられている。
なお、マルチホップ型ブロードキャスト通信、マルチホップ型属性付きマルチキャスト通信、マルチホップ型ユニキャスト通信、マルチホップ型マルチキャスト通信のようなマルチホップ通信のほかに、ＳＩ−Ｒの設定するフィルタ値により、通信先エンティティのエントリポイントを用いた直接通信も可能である。なお、マルチホップ型ブロードキャスト通信、マルチホップ型属性付きマルチキャスト通信、マルチホップ型ユニキャスト通信、マルチホップ型マルチキャスト通信については後述する。
【００６１】
（４）前述（２）から（３）の手順は、シェアードリンクの確立要求元であるエンティティ２においても同様に行われる。すなわち、エンティティ２のエンティティ制御部は、エンティティ１（ＳＩ−ＳＷ１）をシェアードリンクの確立要求先として記憶するとともに、ＳＬ２，１  を確立するために、ＮＥファクトリにＳＩ−Ｒ２，１  を動的に生成させる。この生成されたＳＩ−Ｒ２，１  は、上述と同様にＳＩ−ＳＷ１にフィルタを登録し、シェアードリンクを確立する。これにより、ＳＩ−ＳＷ１とＳＩ−ＳＷ２の間に、双方向のシェアードリンクが確立され、エンティティ間でイベントを互いに共有することが可能になる。なお、ＳＩ−Ｒがフィルタの登録を行わないことにより、片方向のシェアードリンクを確立すること、すなわち、ＳＩ−Ｒを発火させないことができる。
【００６２】
＜イベントパスの確立＞
イベント転送（イベントルーティング）のための経路選択情報（ＳＩ−Ｒがイベント共有のために登録するフィルタの集合）を「イベントパス」と呼ぶ。例えば、図１５に示すように、エンティティ２とエンティティ３とが各々エンティティ１とシェアードリンクを確立している構成において、エンティティ２のＳＥ３がＳＩ−ＳＷ２に対してフィルタを登録した場合を考える。このとき、エンティティ２のＳＩ−Ｒ２，１  はＳＥ３の登録したフィルタを、受信セッションを介して、エンティティ１のＳＩ−ＳＷ１に登録する。同様に、エンティティ１のＳＩ−Ｒ１，３  は当該フィルタを、受信セッションを介して、エンティティ３のＳＩ−ＳＷ３に登録する。このようにＳＥ３によるフィルタ登録をトリガに、ＳＩ−Ｒの登録したフィルタがシェアードリンクに基づいて、順次隣接するＳＩ−Ｒに波及することにより、イベントパスが確立される。これを「イベントパスの設定、もしくは波及」と呼ぶ。
【００６３】
ここで、上述した「語彙概念によるイベントルーティング」のためのイベントパスの確立について説明する。図１５において、「語彙概念によるイベントルーティング」のためのイベントパスを確立するためには、エンティティ２のＳＥ３がＳＩ−ＳＷ２に対して登録したフィルタにおいて、ＳＩ−Ｒ２，１  は、イベントタイプのみ（照合条件は常に真）をエンティティ１のＳＩ−ＳＷ１へのフィルタとして設定する。すなわち、ＳＥ３がフィルタ登録した照合条件を活用しない。つまり、イベントタイプのみを活用することにより、例えば、エンティティ１のＳＥ１がイベント送信したとき、イベントタイプのみをＳＩ−ＳＷ１において照合し、その結果、ＳＩ−Ｒ２，１  が発火すると、ＳＩ−Ｒ２，１  は当該イベントをＳＩ−ＳＷ２へと送出し、意味情報との照合をＳＩ−ＳＷ２において行う。
【００６４】
また、上述した「語彙によるイベントルーティング」のためのイベントパスの確立について説明する。図１５において、「語彙によるイベントルーティング」のためのイベントパス確立に際しては、エンティティ２のＳＩ−Ｒ２，１  は、ＳＥ３が登録したフィルタ値を、そのままエンティティ１のＳＩ−ＳＷ１へのフィルタ値として設定する。すなわち、ＳＩ−Ｒ２，１  は、ＳＥ３がフィルタ登録したイベントタイプと意味情報との両者をエンティティ１のＳＩ−ＳＷ１へとフィルタ登録し、ＳＩ−ＳＷ１において完全なフィルタリングを行う形態である。
【００６５】
そのため、語彙によるイベントルーティング方式では、無駄なイベント転送が全く発生しないが、ルーティングのためのイベントパス設定オーバヘッドが膨大になるため、フィルタ登録数に比べてイベント送出数が十分大きい場合に有効な方式である。一方、イベントタイプに基づくルーティング方式は、前述の２方式の折衷案的な位置付けにある。すなわち、フィルタ登録数とイベント送出数が同程度の場合、もしくは、フィルタ登録数とイベント送出数の比率を予測できないような利用形態において有効である。これらの仕組みにより、意味情報に基づく、イベントのマルチホップ通信が実現される。なお、イベントプレースの生成時、もしくは、ＳＥからのフィルタ登録時に、イベントルーティング方式を指定できる。
【００６６】
イベントパスの設定要求はイベントプレース内のすべてのＳＩ−Ｒに対して波及するが、ＴＴＬ値により、その波及範囲を制限することができる。図１６を用いて、その動作を簡単に説明する。ここでは説明の便宜上、語彙概念ルーティングのためのイベントパス確立を前提とするが、これに限られるわけではない。また、各エンティティは、同じ語彙概念をアドバタイズ（フィルタ登録）するものとする。また、ＴＴＬ値を２として説明する。
【００６７】
図１６（ａ）において、エンティティ２のＳＩ−Ｒがイベントパスの設定要求を開始する。ここでは、ＴＴＬ値が２であるため、エンティティ１、エンティティ３、そしてエンティティ４に対してのみイベントパスの設定要求が波及し、その結果、図１６（ｂ）に示すようにイベントパスが確立される。
【００６８】
上述と同様に、エンティティ１１のＳＩ−Ｒがイベントパスの設定要求を開始すると、エンティティ１０、及びエンティティ９に対してイベントパスが確立される。図１６に示す構成では、エンティティ２のＳＩ−Ｒ及びエンティティ１１のＳＩ−Ｒがイベントパスの設定要求をすると、エンティティ５にはイベントパスが設定されないため、エンティティ２とエンティティ１１の間では、イベントの共有が行われない。つまり、エンティティ２から生起したイベントは、エンティティ５〜１１に連鎖反応せず、エンティティ５〜１１へはイベントが転送されないことになる。
【００６９】
しかしながら、図１６（ｂ）に示すように、エンティティ５のＳＩ−Ｒがイベントパスの設定要求を開始することにより、エンティティ４、エンティティ５、エンティティ６、エンティティ７、そしてエンティティ９に対してイベントパスが確立される。結果的に、図１６（ｃ）に示すように、エンティティ８を除く、イベントプレース内のすべてのエンティティに対してイベントパスが確立される。
【００７０】
このように、当該語彙概念が当該イベントプレースにおいて、使用頻度の高いもの（評判が高い、流行しているもの）であるならば、最終的に、イベントプレース内にイベントパスの確立が行き渡ることになる。その逆で、あまり流行していない語彙概念は、いずれ淘汰されることになり、これにより緩やかな連鎖反応を実現できる。なお、図１６におけるイベントパス上の数字は、その多重度を示している。
【００７１】
なお、エンティティは、イベントパスの多重度をエンティティプロパティの属性として公開することができる。一方、エンティティプロパティのディスカバリにより、イベントパスの多重度が高いエンティティを発見することができる。このとき、当該エンティティに対して、シェアードリンクの張り替えを行うことにより、同好の志（同好のエンティティ）が緩やかに近傍に集まることができる（同好エンティティの局所化）。エンティティプロパティの詳細については後述する。
【００７２】
分散オブジェクト技術の観点から、イベントパスを以下のように解釈することもできる。世界中に超分散しているエンティティは、エンティティ間でなんらかの「相関関係」を有する。相関関係を与えるものとしては、エンティティ名、グループ名、属性（位置、興味、評判、流行、サービス）など様々なプロパティがある。エンティティは、相関関係に基づいて、エンティティ間の結びつきを持ち分散協調する。この、エンティティの相関関係を与えるものを、エンティティプロパティという。
【００７３】
ＳＩＯＮｅｔでは、この相関関係を語彙概念と語彙により表現し、シェアードリンクに基づいて、イベントパスとして設定する。また、相関関係の強弱が、語彙概念の汎化・特化、イベントパスの多重度などに相当する。すなわち、ＳＩＯＮｅｔでは、イベントパスにより、エンティティ間の相関関係を動的に制御・管理している。これこそが、フィルタによる連鎖反応の制御である。そのため、エンティティは固定的なエンティティ識別子を有していない。
【００７４】
例えば、ＩＰアドレスは、位置に基づいたエンティティの固定的な識別子であるが、ＳＩＯＮｅｔでは、これの代わりに、エンティティプロパティを語彙概念・語彙として記述したものをエンティティ識別子として用いる。エンティティは、これらをフィルタとしてＳＩ−ＳＷに登録することにより、エンティティのプロパティ（エンティティ識別子）を宣言するとともに、自身のプロパティをシェアードリンクに基づいてアドバタイズする。これがイベントパスの波及に相当する。これにより、イベントパスが確立される。
【００７５】
上述したように、ＳＩ−Ｒは、イベント送信とイベント受信の両者の側面を持つネットワークエンティティであり、一般のサービスエンティティと本質的な違いはない。ＳＩＯＮｅｔでは、ＳＩ−ＲのようなＳＩＯＮｅｔの制御に用いられるエンティティを、サービスエンティティ（ＳＥ）と特に区別して、ネットワークエンティティ（ＮＥ）と呼ぶ。ＳＩＯＮｅｔにおいては、サービスエンティティ、ネットワークエンティティのすべてのエンティティを共通のエンティティとして扱い、さらに、イベント送出とイベント受信、すなわち刺激と発火の連鎖反応という単純かつ一貫性のある共通ロジックに従って自律動作させることにより、すべてのエンティティが自律分散協調可能な超分散・超疎結合アーキテクチャを提供する。
【００７６】
＜シェアードリンクの解除と再確立＞
イベントプレースに参加しているエンティティが、障害に陥ったり、イベントプレースから退去する場合など、様々な理由により当該エンティティがネットワークの運営に関わることができないケースにおいては、残されたエンティティが自己組織化することによりネットワークサービスを継続できることが必要になる。
ＳＩＯＮｅｔでは、このようなケースにおいては、ＳＩ−ＳＷ間において確立されているシェアードリンクを解除し、さらにシェアードリンクの再確立を行う。その動作を図１７を参照して説明する。
【００７７】
図１７において、シェアードリンク確立要求の先頭数字（図中▲１▼や▲２▼など）は、それらの要求順序を示している。つまり、シェアードリンク確立要求の順序は、まず、エンティティ２からエンティティ１へシェアードリンクの確立要求を行う。次にエンティティ３からエンティティ２へシェアードリンクの確立要求を行う。最後に、エンティティ４からエンティティ２へシェアードリンクの確立要求を行うものとする。なお、ここで、「各エンティティは、同一イベントプレース内においてシェアードリンクの確立要求を高々１回しかできないが、無制限に確立要求を受け付けることが可能なリンクトポロジーに基づいて、シェアードリンクの確立を行う」リンク確立手法を提案する。これにより、シェアードリンクで結合されたエンティティ間に、ループが発生しないことが保証される。すなわち、この手法を用いることにより、隣接エンティティ間のリンク再確立のみで開リンクトポロジーを簡単に実現できる。
【００７８】
上述した順序で確立要求が成功すると、前述した手順で各ＳＩ−ＳＷ間にシェアードリンクが確立される。シェアードリンクが確立されると、各エンティティのエンティティ制御部は、自身が確立要求を行ったエンティティと、自身への確立を受け付けたエンティティを記憶している。例えば、エンティティ２は、自身が確立要求を行ったエンティティ１と、自身への確立を受け付けたエンティティ３、エンティティ４のリストを保持している。
この状況において、例えば、エンティティ２の退去、減設などが行われる場合、自身のＳＩ−ＳＷ２に対して確立されているシェアードリンクの解除要求を発行し、シェアードリンクの解除を行う。その後、各エンティティは新たなシェアードリンクの確立を行う。以下、その動作を説明する。
【００７９】
（１）エンティティ２が退去する場合、エンティティ２のエンティティ制御部は、自身のシェアードリンクを解除する旨を、１ホップのエンティティ（エンティティ１、エンティティ３、エンティティ４）に対して通知する。これは、イベントのＴＴＬ値を１にしてイベント送出を行うことにより可能になる。なお、このとき、自身へのシェアードリンク確立を受け付けたエンティティ（エンティティ３、エンティティ４）に対しては、自身に代わる新たなシェアードリンクの確立要求先として、自身が確立要求を行ったエンティティ１を教える。なお、自身が確立要求を行ったエンティティが存在しない場合には、自身への確立要求元エンティティ（１ホップ先のエンティティ）の中から任意のエンティティを選択して、これを自身に代わるシェアードリンクの確立要求先とする。
【００８０】
（２）エンティティ２のエンティティ制御部は、自身が確立したシェアードリンク（ＳＬ２，１  、ＳＬ２，３  、ＳＬ２，４  ）を解除するために、その旨をＳＩ−Ｒ２，１  、ＳＩ−Ｒ２，３  、ＳＩ−Ｒ２，４  （図示略）に通知する。なお、ＳＩ−Ｒ２，１  、ＳＩ−Ｒ２，３  、ＳＩ−Ｒ２，４  とはエンティティ２のＳＩ−Ｒであり、上述したように、エンティティ１、エンティティ３、エンティティ４に対し、シェアードリンクＳＬ２，１  、ＳＬ２，３  、ＳＬ２，４  を確立したものである。これらのＳＩ−Ｒは、これをトリガとしてエンティティ２のＳＩ−ＳＷ２へのセッションを解除する。
【００８１】
（３）エンティティ１のエンティティ制御部は、ＳＩ−Ｒ１，２  （図示略）に、シェアードリンクＳＬ１，２  の解除を指示する。ＳＩ−Ｒ１，２  は、シェアードリンクＳＬ１，２  を解除する。エンティティ１は、エンティティ３、エンティティ４からの確立要求を待つ。
（４）エンティティ３、エンティティ４は、エンティティ１と同様に、自身がＳＩ−ＳＷ２（エンティティ２のＳＩ−ＳＷ２）に対して確立していたシェアードリンク（ＳＬ３，２  、ＳＬ４，２  ）をすべて解除し、エンティティ２からシェアードリンクの確立要求先として教えられた新たなエンティティ（エンティティ１）に対してシェアードリンクの確立要求を行い、シェアードリンクを再確立する。すなわち、上述と同様に、各々のエンティティ制御部は、ＮＥファクトリに各々ＳＩ−Ｒ３，１  、ＳＩ−Ｒ４，１  を生成させ、当該ＳＩ−Ｒ３，１  、ＳＩ−Ｒ４，１  にシェアードリンクＳＬ３，１  、ＳＬ４，１  を確立させる。
【００８２】
上述したように、シェアードリンクの確立処理、再確立処理は、隣接するエンティティ間においてのみ行われ、他のエンティティには影響を与えない。すなわち、全てのエンティティに対するリンクの再構築を必要としない。
【００８３】
なお、エンティティの退去や減設などの正当な手順を踏んだシェアードリンクの解除要求ばかりでなく、エンティティの障害、電源断、セッション（物理的な通信路）の障害などに起因して、シェアードリンクを再確立しなければならないケースがある。しかしながら、このようなケースにおいては、シェアードリンクの再確立時に必要となる代わりのエンティティを教授できない可能性がある。ＳＩＯＮｅｔでは、このような状況に対応するために、各エンティティはｎホップ（ｎは任意の自然数）のイベントを送出することにより、代わりの確立要求先エンティティの把握を行っている。なお、ＳＩＯＮｅｔでは、ＴＴＬ値とホップ属性を用いることにより、更にきめこまかなホップ制御が可能である。ホップ属性の例として、以下のものがある。
【００８４】
▲１▼シェアードリンクの確立要求先エンティティのみをホップ対象とする。
▲２▼シェアードリンクの確立要求元エンティティのみをホップ対象とする。
▲３▼すべてのエンティティをホップ対象とする。
【００８５】
▲１▼のホップ属性を指定した場合の、イベントの流れの例を図１８の破線で示している。図１８において、（ｉ／ｊ）は各エンティティにおいて記憶しているシェアードリンクの確立情報である。ｉはエンティティがシェアードリンクの確立要求を行った先のエンティティを示しており、一方、ｊはエンティティがシェアードリンクの確立要求を受け付けたエンティティを示している。例えば、エンティティ３の（２／５、６）は、エンティティ３がエンティティ２に対して確立要求を行い、エンティティ５及びエンティティ６から確立要求を受け付けていることを表している。各エンティティがシェアードリンクの確立情報を保持することにより、例えば、エンティティ３が他のエンティティに対して、更なるシェアードリンクの確立要求を行った場合、その要求をエラーとしてリジェクトすることができる。これにより、前述した開リンクトポロジーの一貫性を保証している。この状況において、エンティティ６が３ホップで、上述▲１▼のホップ属性を持つイベントを送出することにより、エンティティ１とエンティティ２の存在を知ることが可能になり、これらがエンティティ３障害時の代替エンティティとなる。
【００８６】
なお、上述したホップ属性は、障害時の代替エンティティの探索ばかりでなく、シェアードリンクの確立を受け付け可能なエンティティの探索、トップ（誰にもシェアードリンクの確立を行っていない）エンティティの探索などに有効である。ＳＩＯＮｅｔでは、トップのエンティティのみが、他のイベントプレースに対して、フェデレーション（連携、イベントプレース間のシェアードリンクに相当）を確立することができる。
【００８７】
＜オンライン増減設の目的＞
ＳＩＯＮｅｔにおけるエンティティ増減設の目的は、主に以下の二つに大別される。
（１）イベントプレースのトータル処理能力向上の観点から、イベントプレース内のエンティティを増設し、イベントのフィルタリング処理を負荷分散する。その逆の観点から、エンティティを減設する。これは、主に、ハイブリッドＰ２Ｐ、バックボーンＰ２Ｐネットワークの運用において用いられる。
（２）動的に生成されたエンティティに対して、シェアードリンクを柔軟に確立することにより、フレキシブルでグローバルなＰ２Ｐネットワークをボトムアップ的に構築する。これは、主に、ピュアＰ２Ｐネットワークの運営において用いられる。
【００８８】
なお、ハイブリッド型Ｐ２Ｐネットワークとは、例えばネットワークプロバイダなどの運営者がホスト等にイベントプレースをあらかじめ生成し、個人の端末等のサービスエンティティがセッションによりイベントプレースと接続することにより構成されるネットワークである。また、ピュア型Ｐ２Ｐネットワークとは、個人の送受信端末たるエンティティがシェアードリンクで各々接続されることにより構成されるネットワークであり、このネットワークのうち、イベントを共有する最小単位がイベントプレースである。バックボーン型Ｐ２Ｐネットワークとは、ネットワーク間の接続形態のことであり、例えば、複数の地域のピュア型Ｐ２Ｐネットワークをハイブリッド型Ｐ２Ｐネットワークを経由して接続した状態のネットワークのことをいう。
【００８９】
＜増減設の形態＞
ＳＩＯＮでは幾つかの増減設形態を提供しているが、ここでは、図１９、図２０に例を示す代表的な形態について述べる。
（１）イベントプレースの合成と分離
図１９（ａ）に示すように、複数のイベントプレースを合成することができる。ここで合成とは、複数のイベントプレースにそれぞれ属するエンティティを、一つのイベントプレース内のメンバーとして集めることを言う。典型的な例として、異なるサービス運営者間の業務提携に基づく、サービス統合（情報共有）が考えられる。
【００９０】
これは、イベントプレースに属する任意のエンティティ、もしくはイベントプレースに対して合成要求を行うことにより、合成要求先イベントプレース内のエンティティに対してシェアードリンクの確立要求が発行される。その結果、ＳＩ−ＳＷ間にシェアードリンクが確立され、両者の合成が実現される。なお、合成の要求元及び要求先は、それぞれ、エンティティでもイベントプレースでもどちらであってもかまわない。一方、分割する場合には、確立されているシェアードリンクを解除し、それぞれのイベントプレースに分離する。
【００９１】
（２）イベントプレースへの参加と退去
図１９（ｂ）に示すように、イベントプレース内のエンティティ、もしくは、イベントプレースに対してＪｏｉｎ（参加）要求を行うことにより、要求元エンティティにＳＩ−ＳＷが生成される。そして、要求先エンティティに対してシェアードリンクの確立要求が発行されることにより、ＳＩ−ＳＷ間にシェアードリンクが確立され、当該イベントプレースに参加することができる。
エンティティがイベントプレースから退去する場合には、上述と同様に、エンティティ間のシェアードリンクを解除し、さらに、シェアードリンクの再構築を行い、当該イベントプレースから退去する。このとき、退去したエンティティの状態は、サスペンド状態へと遷移する。
【００９２】
なお、イベントプレース側からエンティティに対してシェアードリンクの確立を要求することにより、当該エンティティをイベントプレース内に取り込むことも可能である。これを吸収という。その逆を分裂という。
（３）エンティティ（ＳＩ−ＳＷ）の増減設
図２０（ｃ）に示すように、イベントプレース内のエンティティ、もしくは、イベントプレースに対して、エンティティの増設要求を行うと、指定されたエンティティにＳＩ−ＳＷが新たに生成され、既存のＳＩ−ＳＷとの間にシェアードリンクが確立される。一方、イベントプレースにエンティティの減設要求を行うと、指定されたエンティティに対しシェアードリンクの解除要求が発行され、ＳＩ−ＳＷ間のシェアードリンクが解除された後、シェアードリンクの再確立が行われ、当該エンティティが削除される。このとき、エンティティの状態は、Ｎｏｎ−Ｅｘｉｓｔｅｎｔに遷移する。
【００９３】
（４）イベントプレース間のフェデレーション
図２０（ｄ）に示すように、イベントプレース内のエンティティ、もしくは、イベントプレースに対して、フェデレーション（連携）要求を行うことにより、イベントプレース間でイベントを転送するＳＩ−ＧＷが動的に生成され、セッションを介して両イベントプレースが連携する。なお、フェデレーションの要求元及び要求先は、それぞれ、エンティティでもイベントプレースでもどちらであってもかまわない。
【００９４】
＜エンティティのアドバタイズメント＞
図２１、図２２を参照し、エンティティのアドバタイズメント（公開）について説明する。ＳＩＯＮｅｔにおけるエンティティのアドバタイズメントには、以下の２つの観点がある。
観点１：エントランスのアドバタイズメント
観点２：エンティティプロパティのアドバタイズメント
以下、各々の観点について説明する。
観点１：エントランスのアドバタイズメント
ベースイベントプレースは、エンティティに取って、最適なイベントプレースをいもづる式に探索（ディスカバリ）するためのベース（起点）となるイベントプレースである。つまり、ベースイベントプレースがＳＩＯＮｅｔへのエントランス（入り口）となる。そのため、ベースイベントプレースに参加しているエンティティは、ＳＩＯＮｅｔのエントランスを公開することができる。ここで、エントランスの公開とは、シェアードリンクの確立要求先となるエンティティのエントリポイントとグローバルエンティティ名をアドバタイズすることを意味する。この公開情報は、後述するブロードキャストを用いた探索により発見される。
【００９５】
観点２：エンティティプロパティのアドバタイズメント
シェアードリンクで接続されている任意のエンティティグループ（ベースイベントプレースを含むすべてのイベントプレース）において、各エンティティは自身のエンティティプロパティをアドバタイズすることができる。これが前述したイベントパスの波及に相当する。この公開情報は、後述するディスカバリイベントの送出により発見される。
【００９６】
以下に、エンティティの公開、探索から、エンティティグループ形成までの流れを説明する。なお、以下では、ベースエンティティ、エンティティ１、エンティティ２、エンティティ３、エンティティ４、エンティティ５、エンティティ６はベースイベントプレースに属しており、エンティティ３、エンティティ１１、エンティティ１２、エンティティ１３はイベントプレースαに属しているものとして説明する。
【００９７】
▲１▼図２１に示すように、ＳＩＯＮｅｔソフトウエアをホストにインストールする。
この時点でのエンティティの状態は、前述したように“Ｎｏｎ−Ｅｘｉｓｔｅｎｔ”である。説明の便宜上、このエンティティをエンティティＹとする。
▲２▼ＳＩＯＮｅｔソフトウエアを実行することにより、エンティティＹは“Ｎｏｎ−Ｅｘｉｓｔｅｎｔ”から“サスペンド”状態に遷移する。この状態のエンティティは、ＳＩＯＮｅｔからその存在がまだ認知されていない。
【００９８】
▲３▼“サスペンド”状態のエンティティＹは、ＳＩＯＮｅｔの構成要素としてネットワークに参加するために、ベースイベントプレースに属している他のエンティティのエントランス（エントリポイントとグローバルエンティティ名）を探索する。具体的には、ブロードキャストにより、ベースイベントプレースに参加しているエンティティの中から、近傍のエンティティを探索する。ブロードキャストの方法は、実装に依存する。例えば、無線ネットワークで実装されている場合には、無線の到達範囲すべてのエンティティが探索の対象となる。一方、ＩＰネットワークで実装されている場合には、ＩＰブロードキャストもしくはＩＰマルチキャストを行うことになる。図２１では、ブロードキャストによる探索により、エンティティ１（エンティティ１のエントリポイントとグローバルエンティティ名）が発見されたことを表している。なお、ブロードキャストにより、近傍のエンティティを発見できない場合には、Ｗｅｌｌ−Ｋｎｏｗｎ（周知）のエンティティを利用することもできる。Ｗｅｌｌ−Ｋｎｏｗｎのエンティティをベースエンティティと呼ぶ。なお、ベースエンティティは、ベースイベントプレースを含むすべてのイベントプレース内に存在することができる。
【００９９】
▲４▼エンティティＹは、発見されたエンティティ１に対して、ベースイベントプレースへのＪｏｉｎ（参加）要求を行う。すなわち、エンティティＹは、エンティティ１のエントリポイントに対して、エンティティ１のグローバルエンティティ名をパラメータとしたＪｏｉｎ要求を行う。エンティティＹからのＪｏｉｎ要求を受けたエンティティ１は、自身の状態遷移が“アクティブ”であり、かつ、エントランスやエンティティプロパティが公開モードの場合のみ、当該Ｊｏｉｎ要求を受け付ける。なお、エンティティＹは、最大Ｊｏｉｎ数を超えてＪｏｉｎ要求を発行することはできない。この最大Ｊｏｉｎ数は、エンティティＹのコントロールパネルで、エンティティＹの所有者等が設定可能である。エンティティ１がエンティティＹのＪｏｉｎ要求を受け付けると、上述と同様の動作により、エンティティＹ及びエンティティ１のＳＩ−ＳＷ間にシェアードリンクが確立される。これにより、エンティティＹは、ベースイベントプレース内のネットワーク構成要素として自己組織化される。このとき、エンティティＹは、“サスペンド”状態から“アクティブ”状態へと遷移する。
【０１００】
ベースイベントプレースにＪｏｉｎしたエンティティＹは、エントランスの公開が可能になる。また、エンティティプロパティをアドバタイズすることもできる。エンティティプロパティには、グローバルエンティティ名（及びエントリポイント）、ニックネーム、グループ名、アライブ（存在だけの表明であり、シェアードリンクの確立先情報となるエントリポイントとグローバルエンティティ名は公開しない、エンティティが非公開モードの場合でも公開の対象）、ディスクリプション（エンティティの説明文）、属性などがある。属性には、プラグインされているＳＥ情報、イベントパス多重度、イベントプレース情報などがある。なお、エンティティプロパティの記述言語としては、ＸＭＬなどがある。
【０１０１】
図２１において、例えばエンティティ３のエンティティ制御部は、エンティティ３が同時に参加しているイベントプレースαをエンティティプロパティの属性として公開することができる。さらに、エンティティ制御部は、現在Ｊｏｉｎしているイベントプレースばかりでなく、過去にＪｏｉｎしたイベントプレースのイベントプレース情報を公開することもできる。このイベントプレース情報とは、例えば、イベントプレースのディスクリプション（イベントプレースの説明文、説明情報）や、当該イベントプレースに参加する際にシェアードリンクを確立したエンティティ（意味情報スイッチ）のグローバルエンティティ名（イベントプレース名＋エンティティ名、コネクション確立情報）、エントリポイント（エントリポイント情報）などである。この、過去にＪｏｉｎしたイベントプレース情報をエンティティが保持できる数は任意とし、例えば、コントロールパネルによりエンティティ所有者等が設定できるものとする。この公開されたイベントプレース情報を取得したエンティティは、当該イベントプレース情報をコントロールパネル等により出力することで当該エンティティ所有者に提示する。これにより、エンティティ所有者は、他のイベントプレースの存在を認識することが出来る。
ＳＩＯＮｅｔでは、どこにどのようなイベントプレースがあり当該イベントプレースではどのようなサービスを提供しているか、というようなイベントプレース情報を集中管理する機能がないので、イベントプレース情報を取得しようとする場合、他のエンティティのエンティティプロパティからイベントプレース情報を取得する必要がある。現在参加しているイベントプレースのみならず、過去に参加したイベントプレース情報を公開することにより、イベントプレース情報を取得する機会が増え、自身の求めるサービスを提供するイベントプレースに参加できる確立が高くなる。
【０１０２】
エンティティＹのエントランスの公開時には、これらのエンティティプロパティを、エンティティ内の意味情報スイッチにフィルタとして登録することにより、エンティティプロパティがシェアードリンクに基づいて他のエンティティに波及し、イベントパスが確立される。基本的には、イベントパスの確立要求がイベントプレース内のすべてのエンティティに対して波及するが、ＴＴＬ値で、イベントパス確立要求の波及範囲を制限することができる。なお、グローバルエンティティ名はマルチホップ型ユニキャスト通信時の識別子として、グループ名はマルチホップ型マルチキャスト通信時の識別子として、属性はマルチホップ型属性付きマルチキャスト通信時の識別子として用いられる。例えば、マルチホップ型ユニキャスト通信の代表例として、イベント受信エンティティからイベント送信元エンティティへのリプライ通知がある。
【０１０３】
すなわち、グローバルエンティティ名はマルチホップ型ユニキャスト通信とは、グローバルエンティティ名で特定されるエンティティのＳＩ−ＳＷからｎホップのイベントを送信する通信方式である。また、マルチホップ型マルチキャスト通信とは、グループ名で特定されるグループに属するエンティティのＳＩ−ＳＷにｎホップのイベントを送信する通信方式である。また、マルチホップ型属性付きマルチキャスト通信とは、自身と同様の属性のエンティティのＳＩ−ＳＷにｎホップのイベントを送信する通信方式である。また、マルチホップ型ブロードキャスト通信とは、任意のエンティティのＳＩ−ＳＷにｎホップのイベントを送信する通信方式である。
【０１０４】
▲５▼図２２において、ベースイベントプレースに参加したエンティティＹは、「自身が参加したいイベントプレース」を探索するためのディスカバリイベントを送出することにより、「自身のニーズに合致するエンティティプロパティ」を公開しているエンティティを探索する。このディスカバリイベントは、ＳＩＯＮｅｔの制御のために用いられるイベントであり、ＳＥが送出するイベントと同等のものである。ディスカバリイベントとは、ＮＥを発火させるためのイベントであり、イベントの意味情報部には、エンティティプロパティとの照合条件が設定される。すなわち、ＳＩＯＮｅｔにおける新たな機能追加とは、新たな語彙概念と語彙を規定することを意味する（仕組みの追加ではなく、連鎖反応条件の追加）。これにより、単一な仕組み（連鎖反応）だけで、様々な機能追加を可能にしている。
【０１０５】
ここでは、探索の結果、エンティティ３が発見されたものとする。上述したように、エンティティ３は、ベースイベントプレースと同時にイベントプレースαに参加している。エンティティ３を発見したことにより、エンティティＹはイベントプレースαの存在を知ることができる。
▲６▼エンティティＹは、エンティティ３に対してイベントプレースαへのＪｏｉｎ要求を発行し、イベントプレースαに参加する。なお、エンティティ３は、前述したように、自身の状態遷移が”アクティブ”であり、かつ、公開モードのときに、Ｊｏｉｎ要求（シェアードリンクの確立要求）を受け付ける。
【０１０６】
▲７▼さらに、エンティティＹは、イベントプレースαにおいて、同様の探索のためのイベントを送出することができる。これにより、自身のニーズに合致する新たなエンティティを発見することができる。例えば、ここでは、エンティティ１２が発見されたものとする。すなわち、エンティティＹは、ベースイベントプレースにおいて発見することができなかったエンティティ１２を、エンティティ３を介して発見できるということを意味している。このような操作を繰り返すことにより、自身のニーズに合致したイベントプレースに、次第にたどり着くことが可能になる。
【０１０７】
ここで示したアドバタイズメント方式は以下の効果がある。
（１）エンティティの公開情報を管理するブローカ（管理部）が存在しないため、耐障害性に強い自己組織化ネットワークを低コストで構築することができる。また、膨大な数の公開情報（エントリポイントやエンティティプロパティ）をブローカで管理することは現実的でない。
（２）エンティティに取って相応しいイベントプレースを、芋づる式に絞り込むことができるので、効率的に所望のイベントプレースを探索することができる。例えば、連鎖反応の波及範囲（ディスカバリイベントのホップ数、及び、エンティティプロパティのためのイベントパス設定要求の波及範囲）がＴＴＬ値で制限されたとしても、上述のように、エンティティ３経由でエンティティ１２を発見し、その結果、エンティティ１２が同時に属している別のイベントプレースを発見することができる。なお、連鎖反応の波及範囲を制限することにより、ネットワークトラフィック（イベントの転送回数、イベントパス設定要求の転送回数）を軽減することができる。
【０１０８】
なお、自身は情報を提供することなく（例えば、エンティティプロパティを公開することなく）、他のエンティティからの情報提供を受けるだけのエンティティは、ペナルティーとして、強制的にシェアードリンクが解除され、一定条件を満足しない限り、再度イベントプレースに参加できないようにすることもできる。
【０１０９】
＜ＳＥの共有方法（自動配信）＞
以下に、ゲームイベントプレースにおけるＳＥ（ゲームアプリケーションプログラム）の共有を例に、ＳＥの共有方法の仕組みを示す。
（１）ゲームイベントプレースの運営者であるエンティティ２の所有者はエンティティ２のコントロールパネルを介してイベントプレース名を付与する。なお、ここで付与されたイベントプレース名は「ゲーム」であるものとして説明する。
【０１１０】
（２）エンティティ２のエンティティ制御部は、上述と同様に、ＮＥファクトリにより生成されたＳＩ−ＳＷに対してグローバルエンティティ名「ゲーム＋エンティティ２」を付与する。これにより、イベントプレースが生成される。このとき、ゲームイベントプレースの生成者であるエンティティ２は、イベントプレース生成時に当該イベントプレースに自動的に参加する。
（３）エンティティ２の所有者は、当該エンティティ２のコントロールパネルに対して、ゲームアプリケーションプログラム（ＳＥ）のプラグインを指示する。このとき、プラグインするアプリケーションの実行ファイル名、及び、ＳＥ共有の有無をパラメータとして与える。
【０１１１】
（４）エンティティ２のコントロールパネルはこの旨をエンティティ制御部に通知する。
（５）エンティティ２のエンティティ制御部は、プラグインする実行ファイル名を記憶するとともに、与えられた実行ファイル名を用いてアプリケーション（ＳＥ）を起動し、上述と同様に、ＳＩ−ＳＷとアプリケーション間にセッションを確立する。すなわち、ＳＩＯＮｅｔにおけるプラグインとは、アプリケーションとＳＩ−ＳＷとの間にセッションを確立することを意味する。
【０１１２】
（６）エンティティ２のエンティティ制御部は、エンティティ２のエンティティプロパティをアドバタイズ（公開）する。エンティティ２のエンティティプロパティの公開形態としては、例えば、以下のものがある。
・エンティティ２がベースイベントプレースに参加し、ベースイベントプレース内で、エンティティ２のエンティティプロパティを公開する。
・エンティティ２が、芋づる式探索を行うことにより、ゲームイベントプレースと関係の深いイベントプレースを発見、参加し、当該イベントプレース内で、エンティティ２のエンティティプロパティを公開する。
・エンティティ２をベースエンティティとする。すなわち、エンティティ２のエンティティプロパティ（エントリポイントとグローバルエンティティ名）を周知する。
【０１１３】
（７）エンティティ２の存在を知ったエンティティ１が、エンティティ２に対して、ゲームイベントプレースへの参加を要求する。
（８）この要求が承認された場合、エンティティ１は、エンティティ２に対して、シェアードリンクの確立を要求する。そして、上述と同様に、エンティティ１とエンティティ２の間にシェアードリンクが確立する。
（９）シェアードリンクが確立された場合、シェアードリンクの確立要求先（エンティティ２）は確立要求元（エンティティ１）に対して、当該イベントプレース内でイベントの送受信に必要な情報を返却する。具体的には、例えば、イベントプレース名（グローバルエンティティ名）、参加したイベントプレースがベースイベントプレースであるか否か、当該イベントプレースにおけるイベント転送方式（ルーティング方式）、イベントプレースのディスクリプション、プラグインされているＳＥ情報（ＳＥ共有が有りの場合）等である。
【０１１４】
ＳＥ共有を共有する場合にシェアードリンク確立要求元に返却するＳＥ情報とは、具体的には、例えば、上述したプラグインするアプリケーションの実行ファイル名や当該アプリケーションのファイル等である。
（１０）当該ファイルを受けたエンティティ１のエンティティ制御部は、上述と同様に、与えられた実行ファイル名を用いてアプリケーションを起動し、エンティティ１内のＳＩ−ＳＷとアプリケーションとの間にセッションを確立する。これにより、エンティティ１内部に、ゲームアプリケーションプログラムをＳＥとしてプラグインする。
【０１１５】
すなわち、イベントプレースへの参加とは、シェアードリンクにより結合されたエンティティグループを形成し、プラグイン済みのアプリケーションプログラムを参加者が共有することを意味する。これにより、イベントプレースに参加するだけで、当該イベントプレース内のメンバーであるエンティティが、プラグインされているアプリケーションを、自動的に利用することが可能になる。なお、エンティティ１がゲームイベントプレースから退去するとき、プラグインされたゲームアプリケーションプログラムは、プラグアウトされる。なおその際、エンティティ１は、受信した当該ファイルを保有しつづけることもできるし、プラグアウト時に、当該ファイルが削除されることもある。
【０１１６】
上述した動作は、ピュア型のＰ２Ｐネットワーク環境でのアプリケーション共有である。そのため、アプリケーションプログラムの配信は、シェアードリンク確立先エンティティと確立元エンティティの２者間でのみ行われるため、シェアードリンクにより既に結合されている他のエンティティに対して影響を与えない。すなわち、ファイル転送のため処理は２者間に局所化されるため、スケーラブルなＳＥ共有を達成することができる。
【０１１７】
＜ビジネスモデル＞
ここで、上述したＳＩＯＮｅｔを、サービスとして提供する実施例を説明する。
（１）クライアントサーバモデル
予め決められたエンティティのみでイベントプレースを運営する形態である。すなわち、予め決められたエンティティのみが当該イベントプレースに参加（Ｊｏｉｎ）することが可能であり、参加を許されたエンティティは、エンティティ間のシェアードリンクを確立することにより、エンティティグループを構成する。一方、それ以外のエンティティは当該エンティティグループに対してセッションを確立し、当該セッションを介したイベントの送受信を行う。すなわち、イベントプレース（予め定められたエンティティのグループ）がサーバであり、その以外のエンティティがクライアントに相当する。このビジネスモデルでは、エンティティグループのメンバーである各エンティティは、自律分散コンピュータとして振舞い、任意のエンティティが障害に陥った際には、残されたエンティティが自己組織化しイベントプレースの運営を継続する。また、サーバの処理能力向上を図りたい場合には、新たなエンティティを当該イベントプレースに参加させれば良い。そのため、従来のサーバ実現方式と比べて、耐故障性に強く、安価で、スケーラブルなサーバを実現することができる。
【０１１８】
（２）ハイブリッドモデル
例えば、ゲームイベントプレースの運営者となるエンティティは、ゲームイベントプレースを生成し、当該イベントプレース内でのベースエンティティとなる。一方、ゲームイベントプレースのユーザとして位置付けられるエンティティは、当該イベントプレースに参加することにより、当該イベントプレースでのサービスを享受する。従来のクライアントサーバモデルでは、ユーザ数の増加に比例して新たな設備投資（ＣＰＵパワー、ストレージ、通信帯域など）が必要とされたが、本ビジネスモデルは、ユーザがイベントプレースに参加することにより、ユーザ自身のエンティティをサービス運営のために提供するため、イベントプレース運営者は新たな設備投資を必要としない。そのため、安価で、スケーラブルなＰ２Ｐサ−ビス環境を構築できる。なお、ベースエンティティにおいて、当該イベントプレースに参加するユーザ（エンティティ）の認証、課金が可能である。また、ベースエンティティは、ディスカバリイベントを送出することにより、エンティティグループの中から、シェアードリンクの確立が可能なエンティティ（代替エンティティ）を発見し、発見されたエンティティを参加希望のエンティティに対し通知し、両者の間でシェアードリンクを確立させることも可能である。
【０１１９】
（３）ピュアモデル
すべてのエンティティが自由にイベントプレースに対して参加（退去）することが可能なビジネスモデルである。
上述したように、ＳＩＯＮｅｔでは、運営・配置問題に帰着することにより、様々なビジネスモデルを共通の仕組みで実現できる。そのため、開発工数、規模、デバッグ効率、維持管理の容易性等に大きな効果を与える。
【０１２０】
なお、上述したように、“サスペンド”状態のエンティティは、エントランスやエンティティプロパティを公開することはできない。“サスペンド”状態のエンティティは、任意のイベントプレースにＪｏｉｎすることにより“アクティブ”状態に遷移する。“アクティブ”状態のエンティティのみが、エントランスやエンティティプロパティを公開することが可能である。また、ベースイベントプレースにＪｏｉｎしているエンティティのみがエントランスの公開が可能である。「コントロールパネルにより、公開が指示されている」かつ「当該エンティティに対するセッション（シェアードリンク）の確立数がデフォルト値を超えていない」を満足するとき、エンティティはエントランスやエンティティプロパティを実際に公開できる。例えば、エンティティの所有者がコントロールパネルを用いて公開を指示しても、デフォルト値を超えてシェアードリンクが確立している場合には、自動的に非公開モードとなる。なお、デフォルト値は、コントロールパネルで設定可能であり、例えば、エンティティの所有者が、当該エンティティの能力等により設定することができる。
【０１２１】
なお、ネットワークエンティティ、ネットワークエンティティファクトリ、エンティティ制御部、コントロールパネル、サービスエンティティ、意味情報スイッチ、意味情報ルータ、意味情報ゲートウエイは専用のハードウェアにより実現されるものであってもよく、また、メモリ及びＣＰＵ（中央演算装置）により構成され、その機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。
【０１２２】
また、ネットワークエンティティ、ネットワークエンティティファクトリ、エンティティ制御部、コントロールパネル、サービスエンティティ、意味情報スイッチ、意味情報ルータ、意味情報ゲートウエイの機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより実現させてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
【０１２３】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１２４】
［この発明の実施形態］
以下、まず本発明の基本的な考え方について説明する。
本発明においては、イベント受信者がイベント送信元に対して返信する返信情報をリプライ通知、もしくは、リプライイベントと呼ぶ。
たとえば、エンティティ１が送出したイベントに対して、エンティティ２が発火した場合を考えると、エンティティ２は、エンティティ１に対して、返却情報を送信することができる。この返却情報が、リプライ通知、もしくは、リプライイベントに相当する。
【０１２５】
ＳＩＯＮｅｔでは、リプライ通知の制御方法として、以下の三通りの方法を提供する。
▲１▼サービスエンティティがイベントパスを確立する方法
サービスエンティティ間で、予めリプライ通知のための意味情報を規定しておく。そして、各サービスエンティティが、当該意味情報の取得条件をフィルタとして登録することにより、イベント転送用シェアードリンクにイベントパスが確立される。
このイベントパスにより、リプライイベントのための連鎖反応が引き起こされ、イベント送出元のエンティティに対して、リプライイベントが転送される。
【０１２６】
▲２▼エンティティマネージャがイベントパスを確立する方法
ＳＩＯＮｅｔがネットワークエンティティのために予約している意味情報を用いて、エンティティマネージャが、イベント転送用シェアードリンクにリプライイベントのためのイベントパスを確立する。
これは、シェアードリンク確立時に、高々一回確立するだけあり、当該イベントパス確立のための処理を静的な固定分オーバヘッドとしてみなすことができる。
【０１２７】
▲３▼リプライイベント用シェアードリンクにイベントパスを確立する方法
イベント転送用シェアードリンクに基づいたイベント転送をトリガに、リプライイベント用シェアードリンクに対して、リプライイベントのためのイベントパスを動的に確立する。
この方法は、イベントを送出したエンティティの数に比例して動的にイベントパスが確立されるため、比例分オーバヘッドが発生する。
【０１２８】
以下、図１、図２６、２７を用いて、その仕組みを詳述する。
図１に示すように、今、エンティティ１〜３がそれぞれシェアードリンクを介して接続されてイベントプレースを形成している場合について考える。
図１において、エンティティ１とエンティティ２は、シェアードリンクＳＬ１，２、シェアードリンクＳＬ２，１を、エンティティ１とエンティティ３とは、シェアードリンクＳＬ１，３、シェアードリンクＳＬ３，１をそれぞれ確立している。
【０１２９】
シェアードリンクＳＬ１，２、ＳＬ２，１、ＳＬ１，３、ＳＬ３，１は、それぞれイベント転送用シェアードリンクとリプライイベント用シェアードリンクとからなる。
イベント転送用シェアードリンクは、他のエンティティが内包する意味情報スイッチから、自己が内包する意味情報ルータへの間で設定される受信セッション▲１▼と、自己が内包する意味情報ルータから、同様に自己が内包する意味情報スイッチへの間で設定される送信セッション▲２▼とからなる。
また、リプライイベント用シェアードリンクは、自己が内包する意味情報スイッチから、同様に自己が内包する意味情報ルータへの間で設定される受信セッション▲３▼と、自己が内包する意味情報ルータから、他のエンティティが内包する意味情報スイッチへの間で設定される送信セッション▲４▼とからなる。
【０１３０】
図１に示すイベントプレースにおいて、エンティティ２のサービスエンティティであるＳＥ２が、図２６に示すイベントを送出する場合を考える。
図２６に示すように、ＳＥ２が送出するイベントは、意味情報制御部と、制御情報部と、データ部とから構成される。
意味情報制御部は、イベントの転送属性を示すイベントのルーティング制御用の意味情報部と、内部エンティティが設定する内部エンティティ用の意味情報部とからなる。制御用の意味情報には、イベント属性情報として、イベント種別、ホップ属性、ＴＴＬ、転送元エンティティが設定され、フィルタに登録されるイベント転送条件との照合に用いられる。内部エンティティ用の意味情報には、内部エンティティの属性情報が設定され、イベントパスとの照合に用いられる。
例えば、イベント属性として、ＴＴＬ：２と設定した場合、イベントパスの確立をホップ段数が２の範囲内のエンティティ装置までに制限することができる。また、すべてのエンティティ装置において、予め、例えばＴＴＬ：−１をホップ段数無制限と規定しておくことで、ホップ段数によるイベントパスの確立範囲の制限しないことも可能である。
制御情報部には、送出元エンティティ名が設定される。なお、ＳＥ２が使用しているセッションの番号やイベント番号を任意で設定してもよい。この場合、セッションの番号はリプライイベントにより発火させる内部エンティティを限定させるために用いられる。また、イベント番号は送出イベント単位にリプライイベントによる連鎖反応を制御するために用いられる。たとえば、イベント送出後に、当該イベントに対するリプライ通知をキャンセルする場合などに用いられる。
【０１３１】
ここで、ＳＩ−Ｒ１，２は、図２７に示すように、ＳＩ−ＳＷ２に対してフィルタ１−２／ｅを登録しているとする。
図１に示すように、フィルタ１−２／ｅは、
ホップ属性＝＝上流  ｏｒ  上下流
ＴＴＬ≧１  ｏｒ  ＴＴＬ＝−１
であり、ＳＥ２が送出する送出イベントの意味情報部と合致することから、当該フィルタが反応し、セッション▲１▼に刺激が与えられる。その結果、ＳＩ−Ｒ１，２が発火することになる。なお、以下、説明の簡略化の観点から、イベントパスとの照合は合致するものとして説明する。
【０１３２】
このとき、ＳＩ−Ｒ１，２は、受信セッション▲３▼を介して、リプライイベントを発火させるためのフィルタ１−２／ｒを登録するとともに、送信セッション▲２▼を介して、受信したイベントを転送する。その結果、フィルタ３−１／ｅが反応し、ＳＩ−Ｒ３，１が発火する。
【０１３３】
同様に、ＳＩ−Ｒ３，１は受信セッション▲３▼を介して、フィルタ３−１／ｒを登録するとともに、送信セッション▲２▼を介してイベントをＳＩ−ＳＷ３に送出する。
ここでは、その結果、仮にＳＥ３が発火するものとする。
【０１３４】
以下、発火したＳＥ３がイベントを受信し、当該イベントに対してリプライ通知を行う場合を考える。
このときＳＥ３が送出するリプライイベントの構造を図２６に示す。ＳＥ３が送出するリプライイベントは、上記イベントと同様に、意味情報部（制御用）、意味情報部（内部エンティティ用）、制御情報部、データ部戸から構成される。
意味情報部（制御用）には、受信イベントの制御情報として、イベント種別と、エンティティ名、セッション番号、イベント番号が設定され、リプライイベントの転送条件との照合に用いられる。
このリプライイベントにより、ＳＩ−Ｒ３，１が受信セッション▲３▼を介して発火し、そして、ＳＩ−Ｒ３，１が送信セッション▲４▼を介してイベント送信を行うことにより、ＳＩ−Ｒ１，２が発火し、最終的に、ＳＥ２が発火する。
【０１３５】
このように、ＳＥ２が送出したイベントの転送を契機に、リプライ用シェアードリンクに対して、リプライイベントのためのイベントパスが確立される。
なお、イベントパス多重度において説明したように、エンティティ間のリレーションシップ強度は、イベントパスの重み値であるイベントパス多重度により管理される。このイベントパス多重度（リレーションシップ強度）は、時間の経過とともに減衰する。すなわち、時間の経過とともに、予め設定された値（実数値）だけ現行の多重度を減算する。そして、多重度がゼロになるとイベントパスが強制的に解除されることになる。一方、リプライイベントによりＳＩ−Ｒが発火すると、予め設定された値だけ現行の多重度を加算する。このように、リプライイベントによるＳＩ−Ｒの発火率に基づいて、リレーションシップ強度が動的に変更され、イベントパスのライフタイム（寿命）が決定されることになる。
この仕組みは、イベント転送用シェアードリンクに対して確立されたイベントパスにも適用され、イベントパスの寿命管理とともにリレーションシップ強度の表現手段に用いられる。
【０１３６】
図２８にＳＩＯＮｅｔが具備する通信方式を示する。ＳＩＯＮｅｔは、ブロードキャストモード、マルチキャストモード、ユニキャストモード、リプライ通知などの通信モードを提供する。これらの通信モードは、エンティティ間の連鎖反応の仕方を動的に制御することで可能になる。
すなわち、意味情報ルータがフィルタとして登録するフィルタ値により、エンティティ間の連鎖反応（イベントルーティングやエンティティ間のリレーションシップ）の仕方を制御することが可能となる。
このように、ＳＩＯＮｅｔでは、「連鎖反応」という一元的な仕組みしか存在しない。そして、機能追加は、新たに規定された意味情報を追加することで達成される。
【０１３７】
従来アーキテクチャでは、機能追加は新たなメソッド（機能プログラム）の追加を意味していた。すなわち、機能の数だけメソッドを作成していた。しかし、このような方法では、迅速なシステム開発、開発規模の最小化、デバック工数の削減、開発費用の削減、維持管理の容易性などを望むことは到底不可能となる。
ＳＩＯＮｅｔでは、一旦、連鎖反応のためのメソッドを作成してしまえば、それ以上、新たなメソッドを追加する必要はない。すなわち、メソッド作成後は、必要に応じて新たな連鎖反応を引き起こすための意味情報（データ）を追加すれば良い。
【０１３８】
以上は、ＳＩＯＮｅｔにおける重要なコンセプトの一つであり、以下に、個々の通信機能について説明する。
（Ａ）ブロードキャスト
ブロードキャストでは、イベントプレース内のすべてのエンティティに対して、イベントが転送される。そのため、転送されたイベントによりエンティティが発火するかどうかは、当該エンティティにおけるフィルタとの照合により決定される。これは、無条件ルーティングのイベントパスを確立することにより実現される。なお、このイベントパスは、イベント送信用シェアードリンクの確立時に一度だけ設定され、シェアードリンクの再確立が行われるまで変更されることはない。ブロードキャストモードは、ＩＰマルチキャストやＧｎｕｔｅｌｌａの転送方式と等価モデルとして扱うことができる。
【０１３９】
（Ｂ）マルチキャスト
イベントプレースに所属するエンティティの中から、任意の条件を満足するエンティティに対してのみイベントを転送する。これは、語彙概念ルーティングのためのイベントパスを確立することにより実現される。なお、イベントパスの確立契機、確立方法は、キャッチアップモードと探索モードでそれぞれ異なる。
【０１４０】
（Ｃ）ユニキャスト
特定のエンティティに対してのみイベントを転送する。これは、語彙ルーティングのためのイベントパスを確立することにより実現される。なお、イベントパスの確立契機、確立方法は、キャッチアップモードと探索モードでそれぞれ異なる。
【０１４１】
（Ｄ）リプライ通知
イベント受信者がイベント送信元に対して、イベントのリプライ通知を行う場合に、イベント送信元に対して、リプライイベントが転送される。これには、リプライイベント用シェアードリンクに語彙ルーティングのためのイベントパスを設定する方法、イベント転送用シェアードリンクにイベントパスを確立する方法などがある。
【０１４２】
図２９は、分散ファイル検索を例に用いて、ＳＩＯＮｅｔの通信方式と他の通信方式を比較した結果を示す。
ネットワークＯＳ等における分散ファイル検索は、一般的に、図３０に示すように、ＩＰブロードキャストを用いて実現される。
たとえば、ファイルの公開を行った端末は、ポート番号１０に対して送信されたパケットを受信する。一方、ファイル検索の要求元である端末Ｘは、ＩＰブロードキャストアドレス（全端末）とポート番号１０を指定して、ファイルαの検索パケットを送出する。
そのため、ファイルの公開、つまり、ポート１０番でのパケット受信を指示していない端末Ｂに対しても検索パケットが送出され、その結果、当該パケットは端末Ｂで破棄されることになる。一方、ファイルβを公開している端末Ｃは、検索パケットを受信した後、当該パケットとの照合の結果、これを破棄することになる。
このように、ＩＰブロードキャストを用いたファイル検索では、不要な検索パケットの送出と不要な照合処理が発生する。
【０１４３】
一方、ＩＰマルチキャストを用いた分散ファイル検索では、たとえば、ファイルの公開を行った端末が、マルチキャストグループに参加する。そして、ポート番号１０に対して送信されたパケットを受信する。
一方、ファイルの検索を行う端末は、ＩＰマルチキャストアドレス（グループに属する全端末）とポート番号１０指定して、ファイルαの検索パケットを送出する。
そのため、マルチキャストグループに属するメンバー端末に対してのみ検索パケットが送出されることから、当該パケットがメンバー以外の端末に送出されることはないが、ポート１５番でのパケット受信を要求している端末Ｂに対して、当該パケットが送出され、その結果、端末Ｂにおいて当該パケットが破棄されることになる。
また、ファイルβを公開している端末Ｃとの照合処理により、ここでもパケットが破棄されることになる。
【０１４４】
この方式が、概念モデル上、ＳＩＯＮｅｔのブロードキャストモード（無条件ルーティング）、および、Ｇｎｕｔｅｌｌａの通信方式に相当する。
ＳＩＯＮｅｔのブロードキャストモード、および、Ｇｎｕｔｅｌｌａは、ＩＰマルチキャストを用いて実現されているわけではないが、グループ内の端末すべてにパケットを送信し（ＳＩＯＮｅｔでは、グループ内のすべてのエンティティにイベントを送信することをブロードキャストと言う）、すべての端末において、受信パケットとの照合を行うという観点からモデル化すれば、３者を等価モデルとして位置づけることができる。
これに対して、ＳＩＯＮｅｔのマルチキャストモードでは、ファイルαの探索パケットが端末Ａと端末Ｃに対してのみ送出され、端末Ｂに対して送出されることはない。したがって、ＳＩＯＮｅｔにおいては、不要なパケット送信がネットワークトラヒック増を引き起こすという問題を解消することができる。
【０１４５】
以下、本願発明のエンティティ装置の一実施形態について説明する。上述したように、本実施形態のエンティティ装置は、意味情報スイッチと、意味情報ルータとから構成される。
例えば、図１において、意味情報スイッチ（ＳＩ−ＳＷ１〜３）は、上述したように、フィルタとして登録された意味情報と、イベントに付与された意味情報とを照合し、その結果発火したイベント受信エンティティを起動するスイッチであって、具体的には、送信部、受信部、照合部、制御部とから構成される。
送信部は、照合部で合致、すなわち、発火したイベントをイベントの送信先に送信する。
受信部は、イベント送信元のエンティティ装置からイベントを受信する。
照合部は、第１のフィルタ（例えば、エンティティ装置１におけるフィルタ１−２／ｅやエンティティ装置３におけるフィルタ３−１／ｅ）と一致するイベントを受信した他のエンティティ装置（例えばエンティティ装置３）より受信するリプライイベントが示す意味情報と、意味情報ルータが保持する第２のフィルタ（例えばＳＩ−Ｒ１，２が保持するフィルタ１−２／ｒやＳＩ−Ｒ３，１が保持するフィルタ３−１／ｒや）とが一致するか否かを照合する。
制御部は、照合結果に基づいて、リプライイベントのイベントルーティングを制御する。すなわち、上述したように、ＳＥ２が送出したイベントに対するリプライ通知をＳＥ３が送出した場合、エンティティ装置１において、意味情報スイッチ１は、意味情報部（制御用）に設定されるイベント種別と、エンティティ名、セッション番号、イベント番号とを照合することでＳＩ−Ｒ３，１が受信セッション▲３▼を介して発火し、そして、ＳＩ−Ｒ３，１が送信セッション▲４▼を介してリプライイベント送信を行うことにより、ＳＩ−Ｒ１，２が発火し、最終的に、ＳＥ２が発火する。
【０１４６】
意味情報ルータは、イベントの取得条件を示す第１のフィルタと、イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持する。なお、意味情報ルータは、予めイベントの取得条件を示す第１のフィルタのみを保持することも考えられる。
この場合、意味情報スイッチの照合部は、他のエンティティ装置より受信するイベントが示す意味情報と、意味情報ルータが保持する第１のフィルタとが一致するか否かを照合し、制御部は、照合結果に基づいて、イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを意味情報ルータに設定する。そして、さらに、照合部は、第１のフィルタと一致するイベントを受信した他のエンティティ装置より受信するリプライイベントが示す意味情報と、第２のフィルタとが一致するか否かを照合し、制御部は、照合結果に基づいて、リプライイベントのイベントルーティングを制御する。
【０１４７】
したがって、本実施形態のエンティティ装置によれば、刺激と発火によってエンティティの連鎖反応の仕方を動的に制御する自律分散ネットワークにおいて、イベント受信者がイベント送信元に対してイベントのリプライ通知を行うことができる効果が得られる。
【０１４８】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【０１４９】
上述のエンティティ装置は、内部に、コンピュータシステムを有している。
そして、上述したリプライ通知制御処理に関する一連の処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。
すなわち、上記エンティティ装置における、各処理手段、処理部は、ＣＰＵ等の中央演算処理装置がＲＯＭやＲＡＭ等の主記憶装置に上記プログラムを読み出して、情報の加工・演算処理を実行することにより、実現されるものである。
ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【０１５０】
【発明の効果】
以上説明したように、本発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタとイベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタとを保持するエンティティ装置が、第１のフィルタと一致するイベントを受信した第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するリプライイベントが示す意味情報と、第２のフィルタとが一致するか否かを照合し、照合結果に基づいて、リプライイベントのイベントルーティングを制御するので、刺激と発火によってエンティティの連鎖反応の仕方を動的に制御する自律分散ネットワークにおいて、イベント受信者がイベント送信元に対してイベントのリプライ通知を行うことができる効果を得ることができる。
【０１５１】
また、本発明は、第１から第ｎ（ｎは自然数）のエンティティ装置をシェアードリンクを介して接続して構成されるイベントプレースにおいて、イベントの取得条件を示す第１のフィルタを保持する意味情報ルータを有するエンティティ装置が、第ｋ（ｋは１＜ｋ＜ｎを満たす自然数）のエンティティ装置より受信するイベントが示す意味情報と、第１のフィルタとが一致するか否かを照合し、照合結果に基づいて、イベントと対応付けられたリプライイベントの取得条件を示す第２のフィルタを意味情報ルータに設定し、第１のフィルタと一致するイベントを受信した第ｌ（ｌは１＜ｌ＜ｎを満たす自然数  ただしｌ≠ｋ）のエンティティ装置より受信するリプライイベントが示す意味情報と、第２のフィルタとが一致するか否かを照合し、照合結果に基づいて、リプライイベントのイベントルーティングを制御するので、リプライイベントのためのイベントパスを動的に確立することができる効果が得られる。
【図面の簡単な説明】
【図１】本発明の一実施形態において、エンティティ１〜３がシェアードリンクを介してイベントプレースを形成する様子を示す図である。
【図２】同実施形態において、エンティティを説明する図、及び、エンティティの分類を説明する図である。
【図３】同実施形態において、エンティティの状態遷移を説明する図である。
【図４】同実施形態において、エンティティの内部構成を説明する図である。
【図５】同実施形態において、イベントプレースの生成を説明する図である。
【図６】同実施形態において、エンティティがイベントプレースへ参加する動作を説明する図である。
【図７】同実施形態において、意味情報スイッチとセッションを説明する図である。
【図８】同実施形態において、イベントの構成を説明する図である。
【図９】同実施形態において、意味情報体系を説明する図である。
【図１０】同実施形態において、グローバルエンティティ名を説明する図である。
【図１１】同実施形態において、サービスエンティティのプラグインを説明する図である。
【図１２】同実施形態において、リファレンスモデルを説明する図である。
【図１３】同実施形態において、シェアードリンクを説明する図である。
【図１４】同実施形態において、シェアードリンクを説明する図である。
【図１５】同実施形態において、シェアードリンクを説明する図である。
【図１６】同実施形態において、イベントパスを説明する図である。
【図１７】同実施形態において、シェアードリンクの再確立を説明する図である。
【図１８】同実施形態において、ホップ属性を説明する図である。
【図１９】同実施形態において、イベントプレース及びエンティティの像減設を説明する図である。
【図２０】同実施形態において、イベントプレース及びエンティティの像減設を説明する図である。
【図２１】同実施形態において、エンティティのアドバタイズメントを説明する図である。
【図２２】同実施形態において、エンティティのアドバタイズメントを説明する図である。
【図２３】通信ネットワークのビジネスモデルの変遷を示す図である。
【図２４】Ｐ２Ｐモデルのディメンションを示す図である。
【図２５】ＳＩＯＮｅｔの概念を説明する図である。
【図２６】エンティティが送出するイベント及びこれに対応するリプライイベントの構成を示す図である。
【図２７】各エンティティが内包する意味情報スイッチが管理するフィルタの分類を示す説明図である。
【図２８】ＳＩＯＮｅｔが具備する通信方式について示す図である。
【図２９】分散ファイル検索を例に用いて、ＳＩＯＮｅｔの通信方式と他の通信方式を比較した結果を示す図である。
【図３０】一般的なＩＰブロードキャスト、ＩＰマルチキャストの様子を示す図である。
【図３１】分散ファイル検索を例に用いて、ＳＩＯＮｅｔの通信方式と他の通信方式を評価した結果を示す図である。
【図１】
2004282374.tif 000003
【図２】
2004282374.tif 000004
【図３】
2004282374.tif 000005
【図４】
2004282374.tif 000006
【図５】
2004282374.tif 000007
【図６】
2004282374.tif 000008
【図７】
2004282374.tif 000009
【図８】
2004282374.tif 000010
【図９】
2004282374.tif 000011
【図１０】
2004282374.tif 000012
【図１１】
2004282374.tif 000013
【図１２】
2004282374.tif 000014
【図１３】
2004282374.tif 000015
【図１４】
2004282374.tif 000016
【図１５】
2004282374.tif 000017
【図１６】
2004282374.tif 000018
【図１７】
2004282374.tif 000019
【図１８】
2004282374.tif 000020
【図１９】
2004282374.tif 000021
【図２０】
2004282374.tif 000022
【図２１】
2004282374.tif 000023
【図２２】
2004282374.tif 000024
【図２３】
2004282374.tif 000025
【図２４】
2004282374.tif 000026
【図２５】
2004282374.tif 000027
【図２６】
2004282374.tif 000028
【図２７】
2004282374.tif 000029
【図２８】
2004282374.tif 000030
【図２９】
2004282374.tif 000031
【図３０】
2004282374.tif 000032
【図３１】
2004282374.tif 000033