JP4003763B2 - 情報ルーティング方法およびシステム - Google Patents

情報ルーティング方法およびシステム Download PDF

Info

Publication number
JP4003763B2
JP4003763B2 JP2004214109A JP2004214109A JP4003763B2 JP 4003763 B2 JP4003763 B2 JP 4003763B2 JP 2004214109 A JP2004214109 A JP 2004214109A JP 2004214109 A JP2004214109 A JP 2004214109A JP 4003763 B2 JP4003763 B2 JP 4003763B2
Authority
JP
Japan
Prior art keywords
information
node
content
packet
query
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004214109A
Other languages
English (en)
Other versions
JP2005027328A (ja
Inventor
ジュンビアーオ・ザング
マクシミリアン・オトー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JP2005027328A publication Critical patent/JP2005027328A/ja
Application granted granted Critical
Publication of JP4003763B2 publication Critical patent/JP4003763B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Description

本発明は情報の検索に係り、特に、コンピュータシステム内あるいは複数の相互接続されたコンピュータ内に含まれる情報を検索するためのアーキテクチャに関する。本発明は、複数の相互接続されたコンピュータ内に含まれる情報を検索するためのネットワークアーキテクチャ、システム、方法及びコンピュータプログラム製品として実現される。
ネットワーク接続されたコンピュータの使用の急速な増大とともに、アクセス可能な情報の量も絶え間なく増え続けている。しかし、このような情報爆発により、ユーザは、探しているものを見つけることが非常に困難になっている。特に、現在のウェブには、情報検索プロセスを長く、柔軟性が無く、人間に依存したものにする次のようないくつかの基本的な問題点が存在する。
1)ネットワークの端(エッジ)にあるコンピュータのみが、コンテンツ(内容)記憶及びユーザ対話に関与している。情報検索パス(従って遅延)は通常長い(例えば、ユーザは、関心のあるサイトに到達するまでにいくつかのリモート検索エンジンを通らなければならないことがある)。
2)ドキュメントは一般に意味論的(セマンティック)構造を有していないため、情報検索プロセスを自動化することが困難である。ユーザは、検索結果(その多くは無関係である)を手動で取捨選択しなければならない。
3)検索エンジン及びポータルサイトの商業的な動作モデルは、競合者間のオープンな標準的インタフェースを欠いている。このことは、ユーザがカスタム化された検索(例えば、カテゴリ関連フィールドに対して特殊な条件を課した、特定のカテゴリを目標とする検索)を指定することが実質的に不可能であることを意味する。
4)検索エンジンの「這い回る(crawling)」動作モデルの場合、単一のエンジンのカバレジ(到達範囲)は非常に制限される。文献には、ウェブ上で利用可能なデータの30%以下しか検索エンジンによってアクセスされていないことが報告されている。さらに、このようなエンジンが、情報更新に応じることは、不可能ではなくても、極端に時間がかかるため、検索エンジンのインデックスにおける古いリンクの割合が増大する。
図1は、現在の検索動作モデルを示す模式図である。例として、現在の検索動作モデルは、インターネットをパケットルーティングブラックボックスとして扱い、ほとんどの情報をネットワークの外に置くとする。クライアントは、情報項目をURL(Uniform Resource Location)の形式で明示的に要求する。
図1に示すように、複数のクライアントステーションが、ルータ(図示せず)を介してウェブを通じてさまざまなサーバにリンクされる。サーバは、クライアントステーションによって要求される情報を含む。しかし、検索エンジンは、通常、クライアントステーションがサーバ上に含まれる情報を発見することを要求する。
AltaVista(R)、Yahoo!(R)、及びInfoseek(R)のような検索エンジン及びポータルは、ウェブ上の情報を見つける主な手段として使用される。これらの検索エンジンは、内容プロバイダの網羅的探索によって構築されたインデックス化データベースとして作用する。このような動作モデルは、インターネットが現在の状態に到達するのに寄与したが、情報を発見するのには不十分であることが分かっている。上記のように、さらに好ましい検索動作モデルは、情報ルーティングに必要な構造及び機構を有していなければならない。
図2において、従来のルーティングテーブルは、比較的安定で管理可能な到達可能性情報に基づいて構築されている。データパケット10は、ネットワークを通ると、各ルータでルーティングテーブルを参照する。パケットが第1のルータ11に到達すると、このルータは、パケットヘッダを読み、適当なリンクを調べるためにそのルーティングテーブル16を参照する。このプロセスは、第2のルータ13でも繰り返される。データパケット10は、宛先以外の情報を備えていないため、ルータノードは、データパケットを所望の宛先へルーティングすること以外の動作はしない。
一般に、検索エンジンは、インターネットに接続されたサーバ上に存在するドキュメントあるいはページへのリンクを含む大規模なデータベースを構築することによって動作する。特定のページあるいはドキュメントに到達するには、特定の開始点からリンクをたどらなければならない。特定のページあるいはドキュメントへのパスは、そのパス内のリンクが無効であるか、あるいは削除されている場合には、失われる。到達可能な情報のテーブルを各ノードに構築することは、スペース(空間)的にのみならず、時間的にも不可能である。このようなテーブルが構築されるときまでに、情報は既に古くなっている可能性がある。
情報プロバイダが情報をインターネットに送り込みたい場合、検索エンジンがその情報に戻ることができるように、その情報のロケーションを検索エンジンに登録しなければならない。しかし、検索エンジンは、インターネットの大きさのためにその特定の情報を見落とすことがあり、あるいは、検索エンジンは、何らかの理由で、そのデータベースに情報を登録することを拒否することもある。
より有効で効率的な情報発見方式を利用した、さらにフレキシブルな検索動作モデルが必要とされる。理想的には、新しい検索動作モデルは、次のように動作するものである。
・ユーザは、さまざまなレベルの複雑さで、できれば領域ごとの詳細さで、関心領域をシステムに対して指定する。
・このような指定は、関連する情報ロケーションに自動的に送られる。
・検索された情報は、比較、組合せあるいはその他のさらに複雑な意思決定法のようなユーザが提供する操作によって、処理されることも可能である。
・最後に、結果は、表示のためにユーザに返される。
この理想モデルの本質は、「情報ルーティング」と呼ばれる概念である。簡単にいえば、「情報ルーティング」は、情報発見機構を有する従来のネットワークルーティング機能に対する拡張である。従って、「情報ルーティング」が可能なネットワークは、特定の宛先アドレスを有するパケットのみならず、関心領域の指定を含むだけのパケットもルーティングすることができる。
本発明は、上記の状況に鑑みてなされたものであり、従来技術の上記の課題及び制限を克服する目的を有するとともに、さらに、複数の相互接続されたコンピュータ及びそこに格納されたファイルを検索し、検索要求に合わせて作成された検索応答を提供することができるようにするという目的を有する。
本発明のその他の目的及び効果は、一部は以下の発明の詳細な説明に記載されており、一部は発明の詳細な説明の記載から明らかであるか、あるいは、本発明の実施によって知られる。本発明の目的及び効果は、特許請求の範囲に記載された構成によって実現される。
本発明の目的は、情報ルーティングの方法を提供することである。この方法は、複数の情報プロバイダノードを設けるステップを有する。各ノードは、複数の内容情報を有する。この方法は、さらに、複数の情報リクエスタノードを設けるステップを有する。この方法は、さらに、複数のアクティブネットワークノードを設ける。アクティブネットワークノードは、情報プロバイダノードのサブセット、情報リクエスタノードのサブセット、及びアクティブネットワークノードのサブセットに接続される。この方法は、さらに、内容オントロジーインスタンスツリー及び問合せオントロジーインスタンスツリーを各アクティブネットワークノード上に作成するステップを有する。この方法は、さらに、内容記述及び内容ルーティングデータを含む情報内容パケットを、該情報内容パケットを注入した情報プロバイダノード上にある格納情報に注入するステップを有する。この方法は、さらに、情報内容パケットが通ったアクティブネットワークノードの内容オントロジーインスタンスツリーを、該情報内容パケット内に含まれる内容記述及び内容ルーティングデータを内容オントロジーインスタンスツリーの枝に挿入することによって、変更するステップを有する。
次に、この方法は、さらに、問合せデータ及び問合せルーティングデータを含む情報問合せパケットを、該情報問合せパケットを注入した情報リクエスタノードに注入するステップを有する。この方法は、さらに、情報問合せパケットが通ったアクティブネットワークノードの問合せオントロジーインスタンスツリーを、該情報問合せパケット内に含まれる問合せデータ及び問合せルーティングデータを問合せオントロジーインスタンスツリーの枝に挿入することによって、変更するステップを有する。この方法は、さらに、情報リクエスタノードと情報プロバイダノードの間に情報ルートを確立するステップを有する。この情報ルートは、情報問合せパケットがアクティブネットワークノードの内容オントロジーインスタンスツリーを検索して、それにより情報プロバイダノードに到達したか、または、情報内容パケットがアクティブネットワークノードの問合せオントロジーインスタンスツリーを検索して、それにより情報リクエスタノードに到達した後に作成される。
本発明のさらにもう1つの目的は、複数のアクティブネットワークノードにおいて情報ルートを作成する方法を提供することである。各アクティブノードは、内容オントロジーインスタンスツリー及び問合せオントロジーインスタンスツリーを含む。この方法は、アクティブネットワークノードにおいて情報内容パケットを受信するステップを有する。情報内容パケットは、残留内容データを含む。この方法は、さらに、アクティブネットワークノードの内容オントロジーインスタンスツリーを、情報内容パケットからの残留データで更新するステップと、情報内容パケットの次のホップを決定するために問合せオントロジーインスタンスツリーを検索するステップとを有する。
この方法は、さらに、アクティブネットワークノードにおいて情報問合せパケットを受信するステップを有する。情報問合せパケットは、残留問合せデータを含む。この方法は、さらに、アクティブネットワークノードの問合せオントロジーインスタンスツリーを、情報問合せパケットからの問合せデータで更新するステップを有する。この方法は、さらに、情報問合せパケットの次のホップを決定するために内容オントロジーインスタンスツリーを検索するステップを有する。
上記の目的は、さらに、アクティブネットワークノード間に情報ルートを作成するためのコンピュータシステムによって実現される。各アクティブネットワークノードは、内容オントロジーインスタンスツリー及び問合せオントロジーインスタンスツリーを含む。このコンピュータシステムは、さらに、プロセッサと、このコンピュータシステムがいくつかの特定のステップを実行することを可能にするためのソフトウェア命令を含むメモリとを有する。
これらのステップは、アクティブネットワークノードにおいて情報内容パケットを受信するステップを含む。情報内容パケットは、残留内容データを含む。これらのステップは、さらに、アクティブネットワークノードの内容オントロジーインスタンスツリーを、情報内容パケットからの残留データで更新するステップと、情報内容パケットの次のホップを決定するために問合せオントロジーインスタンスツリーを検索するステップとを含む。
これらのステップは、さらに、アクティブネットワークノードにおいて情報問合せパケットを受信するステップを含む。情報問合せパケットは、残留問合せデータを含む。これらのステップは、さらに、アクティブネットワークノードの問合せオントロジーインスタンスツリーを、情報問合せパケットからの問合せデータで更新するステップを含む。これらのステップは、さらに、情報問合せパケットの次のホップを決定するために内容オントロジーインスタンスツリーを検索するステップを含む。
上記の目的は、さらに、コンピュータがアクティブネットワークノード間に情報ルートを作成することを可能にするコンピュータプログラム製品によって実現される。各アクティブネットワークノードは、内容オントロジーインスタンスツリー及び問合せオントロジーインスタンスツリーを含む。このコンピュータプログラム製品は、さらに、コンピュータが所定の動作を実行することを可能にするソフトウェア命令を含む。このソフトウェア命令は、コンピュータで読み取り可能な媒体に含まれる。
所定の動作は、アクティブネットワークノードにおいて情報内容パケットを受信するステップを含む。情報内容パケットは、残留内容データを含む。所定の動作は、さらに、アクティブネットワークノードの内容オントロジーインスタンスツリーを、情報内容パケットからの残留データで更新するステップと、情報内容パケットの次のホップを決定するために問合せオントロジーインスタンスツリーを検索するステップとを含む。
所定の動作は、さらに、アクティブネットワークノードにおいて情報問合せパケットを受信するステップを含む。情報問合せパケットは、残留問合せデータを含む。所定の動作は、さらに、アクティブネットワークノードの問合せオントロジーインスタンスツリーを、情報問合せパケットからの問合せデータで更新するステップを含む。所定の動作は、さらに、情報問合せパケットの次のホップを決定するために内容オントロジーインスタンスツリーを検索するステップを含む。
本発明のさらにもう1つの目的は、情報検索のためのノードのネットワークを提供することである。このネットワークは、複数の情報プロバイダノードを有する。各情報プロバイダノードは、複数の格納情報を有する。このネットワークは、さらに、複数の情報リクエスタノードを有する。このネットワークは、さらに、アクティブネットワークノードを有する。各アクティブネットワークノードは、情報プロバイダノードのサブセット、情報リクエスタノードのサブセット、及びアクティブネットワークノードのサブセットに接続される。このネットワークは、さらに、オントロジーインスタンスツリーを有する。各アクティブネットワークノードは、内容オントロジーインスタンスツリー及び問合せオントロジーインスタンスツリーを有する。各内容オントロジーインスタンスツリーは、情報内容パケットからの内容データを含み、各問合せオントロジーインスタンスツリーは、情報問合せパケットからの問合せデータを含む。
このネットワークは、さらに、各アクティブネットワークノードに、情報問合せパケット及び情報内容パケット内に埋め込まれたコマンドを処理するアクティブノードサービスパッケージを有する。
上述した本発明によれば、複数の相互接続されたコンピュータ及びそこに格納されたファイルを検索し、検索要求に合わせて作成された検索応答を効率的に提供することができる。
以下、添付の図面を参照して、本発明の好ましい実施例の詳細な説明を行う。
情報ルーティングと、IPルーティングのような従来のルーティングとの間の根本的な相違点の1つは、それぞれのルーティング方式で要求される情報のタイプ及び量である。本発明における情報ルーティングは、非常に大きな動的で揮発性のデータセットを扱わなければならない。本発明は、ネットワーキング環境における情報発見を意図しており、ネットワークトポロジーはしばしば任意に複雑である。到達可能な情報のテーブルを各ノードに構築することは、スペース(空間)的にのみならず、時間的にも不可能である。このようなテーブルが構築されるときまでに、情報は既に古くなっている可能性がある。
本発明は、意味論的構造化のためにオントロジーに基づく情報階層を使用するとともに、情報ルーティングのためにアクティブネットワークアーキテクチャを使用する。情報プロバイダ及び情報リクエスタはいずれも、それらの対応するメッセージをシステム内に注入することによって、本発明の動作に関与する。情報プロバイダは、適当に構造化された方法で自己の情報を広告し、情報リクエスタは、検索基準を指定し、おそらくは、自己の検索プログラムを提供する。こうして、システムは、関心領域指定及びリソース制限に基づく情報のフィルタリング(選別)及びバインディング(結合)のための場所として作用する。本発明の1つの特徴は、情報プロバイダと情報リクエスタの対称的な挙動である。すなわち、プロバイダ及びコンシューマ(消費者)のいずれのメッセージも、他方のタイプのメッセージによってシステムに残された痕跡(トレース)に基づいてルーティングされる。
本発明において、情報ルーティングは、ネットワークノードのアクティブな関与と、情報のプロバイダ及びリクエスタの両方が従う適切に編成された意味論的構造とに基づく。具体的には、アクティブネットワークアーキテクチャと、オントロジーに基づく情報階層は、それぞれ、本発明のためのネットワーク及び意味論的フレームワークとして使用される。
次に、アクティブネットワークについてさらに詳細に説明する。アクティブネットワークアーキテクチャとは、従来のパケットネットワークに比べて、その「アクティブネス(activeness)」がネットワークノード内の高度な「インテリジェンス(intelligence)」に反映されるようなネットワークパラダイムである。このネットワークノードは、従来のIPの場合のようなパケット転送を行うのみならず、到着するアクティブパケットによって呼び出されるプログラムを実行することも可能である。このプログラムは、ノードにプリロードされるか、または、パケット内を運ばれる。この機能は、新しいプロトコルの配備や、ネットワークとのアプリケーション固有の相互作用において、非常に高いフレキシビリティを与える。しかし、このようなフレキシビリティは、ネットワーク設計において、セキュリティ及びリソースの問題を注意深く考慮することを要求する。
近年、いくつかのアクティブネットワークパッケージが開発され、文献で詳細に議論されている。アクティブネットワークは、プログラム可能なネットワークインフラストラクチャを用いることによりIPレベルでフレキシビリティを高めるアプローチである。IPヘッダのビットに注力する代わりに、より一般的なプログラミング言語が進化することにより、ネットワーク技術がより急速に進歩している。実際の進歩は、プログラミング言語レベルではなく、プログラムレベルで起こる。一般に、アクティブネットワークパッケージは、プログラミング言語と、ノード常駐のサービスとからなる。ノード常駐サービスは、汎用言語から構築することが可能である。アクティブネットワークノードを通る各パケットは、IPヘッダ及びペイロードを有していない。その代わりに、これらの項目は、ノード常駐サービスを利用するプログラムで置換されている。ノード常駐サービスの使用は、より複雑なネットワーク機能を互いに結び付ける。このようなパッケージのほとんどは、アクティブノードへのオンザフライコードローディングと、アクティブパケットによる動的呼出しが可能である。
本発明の好ましい実施例では、Pennsylvania大学によって開発されたPLAN(Programming Language for Active Networks)パッケージを、その全体的な効率性と相対的な完全性の理由で用いる。このパッケージは、アクティブノード上で配備され呼び出されるリモート評価プリミティブ及びサービス関数を有する単純なMLライクな関数型言語からなる。
PLANプログラムをパケットにバンドルすると、アクティブPLANパケットが作成される。これは、ネットワークに注入され、アクティブネットワークノードで評価される。その評価の結果として、新しいアクティブPLANパケットが作成され、転送され、ネットワーク内の他のノードで評価されることが可能である。重要なPLANプリミティブにOnRemote(E,H,Rb, Rt)がある。これは、プログラムEをノードH上で、リソース限界をRbとし、ルーティングファンクションをRtとして、評価するために使用される。このプリミティブは、ネットワーク内のアクティブノード上のプログラムを読み出すための一般的方法を与える。
PLANでは、セキュリティの実施は、信頼されたコード及び制限された呼出しインタフェースにより行われる。アクティブPLANパケットのリソース消費は、主に、ホップカウントにより制御される。ネットワークに注入された後、各アクティブPLANパケットには、それが移動することができる最大ホップ数に対応するカウントが割り当てられる。アクティブPLANパケットは、このカウントが0に等しくなっても目的とする宛先に到達していないとき、捨てられることになる。さらに、全体のネットワークリソース消費を制御するために、アプリケーションごとのリソース限界が設定される。
PLANのもう1つの重要な特徴は、アクティブPLANパケットが一時的に「常駐データ」を残すための「ソフトストア」をアクティブノードに設けることが可能であることである。これは、アクティブPLANパケットが互いに相互作用して、ネットワーク内での有状態プロトコルの動作を可能にする手段を提供する。ネットワークノードにおける「ソフトストア」は、本発明において情報ルーティングツリーを構築するために本質的である。
次に、本発明におけるオントロジーインスタンスツリーの使用について、さらに詳細に説明する。「オントロジー」は、知識共有のコンテクストでは、「概念化の仕様」を意味するために用いられる。換言すれば、オントロジーは、1つあるいは複数のエージェントに対して存在し得る概念及び関係を記述する。オントロジーは、語彙の形式的定義のセットとして表現される。ソフトウェアエージェントどうしは、共通の語彙を使用し、一貫性のある方法で相互に通信することに合意するように、オントロジーにコミットすることが可能である。このような通信は、対応するオントロジーにすべてが従うクエリ(問合せ)及び表明の形式でなされる。共通のオントロジーにコミットすることは、エージェントどうしが、共通の知識ベースを共有することなく、整合的に相互作用することを保証する。同じオントロジーにコミットする複数のエージェントにおいて、あるエージェントが、他のエージェントの知らないことを知っていることもあり、また、あるエージェントが、他のエージェントからのすべての問合せへの回答を知っている必要もない。このように、オントロジーにコミットすることは、整合性を保証するが、完全性は保証しない。このことにより、オントロジー構造は、知識発見のためのよい候補となる。
次に、オントロジーインスタンスツリーに作用するために使用される言語拡張について、さらに詳細に説明する。オントロジー定義はさまざまな形式をとることが可能であるが、最も普通の形式は、各クラスが公理定義を含むようなクラスの階層を採用している。Stanford Ontolinguaサーバ、及び、Maryland大学によって提案されたHTML(HyperText Markup Language)への拡張であるSHOE(Simple HTML Ontology Extensions)は、このような階層構造の2つの例である。SHOEは特にウェブのために設計されており、本発明における意味論的モデルはSHOEの原理に従うため、SHOE拡張について簡単に説明するのが適当である。
人間は、ドキュメントを読むとき、自己の一般言語の知識に頼って個々の文を解釈する。人間の読者が容易に答えることができる問合せは、問合せソフトウェアにとっては困難である。ソフトウェアは、暗黙の知識の利益を有しないからである。
SHOEインスタンスが特定のオントロジーに基づいて特定の主張を行うとき、ソフトウェアエージェントは、その特定のオントロジーに頼って、直接には主張されていない知識を推論することができる。このオントロジーは、暗黙の知識としてコンテクストを提供する。例として、「大学オントロジー」と「演説オントロジー」の両方において「読む」と呼ばれる関係があると仮定する。「大学オントロジー」では、「読む」は、「講議のために必要なテキストを読む」を意味する。「演説オントロジー」では、「読む」は、「聴衆に対して大声で読む」を意味する。従来の問合せ言語であれば、単語の多くの意味を分類しなければならず、その作業を実行するために、文の構造を使用しなければならない。SHOEインスタンスであれば、使用されているオントロジーを知っており、従ってコンテクストを知っているため、混乱することはない。さらに、SHOEは、類別(categorization)及び多重継承を可能にする分類法を提供する。
HTMLは、もともと、人間用にのみ設計されたため、自動知識発見のために必要な情報構造を欠いている。SHOEは、ドキュメントに機械読み取り可能な知識の注釈をつけることを可能にする少数のタグをHTMLに追加する。そして、よりインテリジェントなソフトウェアエージェントを、このような注釈に基づいて設計し、さらに複雑なユーザ問合せに答えるために使用することができる。2つのタイプのSHOEタグがある。オントロジーを作成するために用いられるタグと、ドキュメントに注釈をつけるために用いられるタグである。オブジェクト指向の用語とのアナロジーでいえば、第1のタイプのタグは、クラスを定義するために使用され、第2のタイプのタグは、これらのクラスからオブジェクトをインスタンス化するために使用される。このように、新しいオントロジーは、クラス構成における継承プロセスと同様に、既存のオントロジーに基づいて定義される。この発展プロセス及びオントロジー階層は、一般の知識表現及び分類構造によく似ている。
その単純さ及び表現力のため、オントロジー階層は、本発明においても、意味論的構造化及び自動情報バインディングのために使用される。曖昧さを避けるため、混乱がある場合には、「nノード」及び「oノード」という語で、「ネットワークノード」及び「オントロジーツリーノード」をそれぞれ表すことにする。
次に、本発明によって実行される情報ルーティングについてさらに詳細に説明する。情報ルーティングとは、ネットワーク(仮想的あるいは物理的のいずれも)が、プロトコルデータユニットを、その関心領域の指定に基づいてルーティングする機能のことである。このような指定は、必ずしも、明示的な宛先アドレスを含まない。2つのタイプの情報ルーティングを区別することができる。第1のタイプでは、特定の情報分野を検索するパケットが、関連する情報プロバイダへルーティングされる。これを問合せルーティングという。第2のタイプでは、ある情報を含むパケットが、ターゲットとする受信者、あるいは関心のある情報リクエスタへ分配される。これを分配ルーティング(distribution routing)という。
本発明は、問合せルーティング及び分配ルーティングの両方をサポートし、これは、協調的で対称的な方法で実現される。これは、情報プロバイダと情報リクエスタが相互作用する方法に反映される。両者とも、内容記述または情報要求を含むアクティブパケットをアクティブネットワークに注入することを選択することが可能である。この場合、情報ルーティングは、対応するエンティティへのブリッジとして作用する。便宜上、内容情報を提供するエンティティを情報プロバイダという。これは、内容パケットをアクティブネットワークに注入する。内容要求を問合せパケットの形式でネットワークに注入するエンティティを情報リクエスタという。こうして、本発明における問合せルーティングは、システム内の内容パケット関心トレースに基づいて問合せパケットをルーティングする。同様に、内容パケットは、問合せパケットによって残された関心トレースを用いて、分配ルーティングにより分配される。
図3に、本発明の一般的な動作モデルを例示する。注意すべき点であるが、情報内容パケット及び情報問合せパケットは、本発明では同時に動作する。ステップS300〜S1000に示すように、パケットは、それらのパケットのために構築されたアクティブネットワークを連続的にたどる。以下で説明するように、パケットの到達範囲は、そのパケットのリソースによって制限される。
内容パケット及び問合せパケットは、ランダムに分配されるのではなく、ある組織的な方式に基づいてルーティングされる。アクティブネットワークは、複数の情報プロバイダノード及び情報リクエスタノードを有するが、それらのすべてについては図示しない。これらのノードが相互に接続されて、アクティブネットワークを形成する。各ノードは、アクティブネットワーク内で接続される各ノードごとに、内容オントロジーインスタンスツリー及び問合せオントロジーインスタンスツリーの両方を有する。
図4において、情報プロバイダノード38は、ネットワークに内容パケットを注入し、これはルータ35で受信される。この内容パケットは、ルータ35のアクティブノードの問合せオントロジーインスタンスツリー(ΔQ)を検索した後、アクティブネットワーク上の他のルータ33、36にホップすべきかどうかを決定する。ルータ35の問合せオントロジーインスタンスツリーは、ルータ35が接続されるアクティブノードから受信された情報問合せパケットによって残された痕跡(トレース)を含む。情報パケットは、次のアクティブネットワークノードに到達すると、再び、問合せオントロジーインスタンスツリーを検索し、適当な内容オントロジーインスタンスツリーにトレースを残す。
情報リクエスタ30は、アクティブネットワークに情報問合せパケットを注入し、これはルータ31で受信される。この問合せパケットは、ルータ31のアクティブノードの内容オントロジーインスタンスツリー(ΔC)を検索した後、アクティブネットワーク上の他のルータ33にホップすべきかどうかを決定する。ルータ31の内容オントロジーインスタンスツリーは、ルータ31が接続される他のアクティブノードから受信された情報内容パケットによって残されたトレースを含む。このルータ33で、情報問合せパケットは、内容オントロジーインスタンスツリーを検索した後、情報内容プロバイダによって送出された情報内容パケットによって残されたトレースを発見する。情報内容パケットによって残されたトレースが、情報問合せパケットの関心のあるデータを含む場合、情報問合せパケットは、この情報を用いて、情報リクエスタから情報内容プロバイダへの情報ルートを確立する。
パケット及びネットワークノードのアクティブな性質のため、情報のフィルタリング及びバインディングの機構の豊富なセットが実装される。これらの機構のうちの一方の極には、現在の検索動作モデルがある。この場合、情報問合せパケット及び情報内容パケットはそれぞれ、対応するサーバと検索エンジンへの直接ルートに従う。反対の極では、あらゆる情報問合せパケットは、関連する情報を求めて本発明の全システムを探索する一方、あらゆる内容パケットは、あたかも積極的な直販業者が、見つけたそれぞれのドアをノックするようにして、動作する。なお、Yahoo!(R)やExcite(R)のようなポータルは、本発明においては特有の役割を果たすことになる。一方では、ポータルは、自己のインデックスデータベースを構築する際の補助手段として情報内容パケットを引き寄せてフィルタリングする情報リクエスタとして作用することが必要となる。他方ではまた、ポータルは、その訪問者基盤を拡大するために、本発明にそのインデックス内容を供給しなければならない。本発明におけるポータルの関与は、トラフィックを減少させ、内容パケットをネットワークに注入しないことを選択したサイトを補完する。こうして、ポータルは、本発明の情報内容プロバイダと、情報リクエスタとの間の重要なブリッジとして作用することになる。
基礎となるアクティブネットワークアーキテクチャは特有の利益を本発明にもたらす。第1に、カスタム設計されたフィルタリング法(例えば、最高データ相関、特定の領域の回避など)は、アクティブパケットで運ばれ、ネットワークに登録されることが可能である。これは、本発明のユーザが、正しい情報を検索し正しい受信者をターゲットとする際に、高いフレキシビリティを提供する。第2に、新しいバインディング制限は、アクティブノードに容易にロードされる。これは、本発明の配備及び展開を非常に容易にする。
しかし、本発明で注意すべき点の1つは、本発明の情報問合せパケットまたは情報内容パケットによって、空間的(通るリンク)及び時間的(ノードにとどまること)の両方の点で、ネットワークリソースが乱用される可能性があることである。他方、本発明の有効性は、個々のパケットにとってのネットワークリソースの利用可能性に直接基づいている。
上記のように、本発明の本質は、ネットワークが、情報プロバイダ及び情報リクエスタの両方のために、情報のフローをフィルタリングし配送し、その結果、バインディングプロセスを完了することが可能となることである。このように、本発明を実現するシステムは、これらの情報ルーティングタスクが有効かつ効率的に実行されるように注意深く設計されることが本質的である。本発明は、以下のプロセスによってこれを実現する。
・グローバルルーティングアーキテクチャを構築する。
・パケットの意味論的構造化。
・問合せパケット及び内容パケットによって消費されるシステムリソースを効果的に制御する。
・各アクティブノードを通る問合せパケット及び内容パケットからの情報を抽出し格納する。
・各ノードで発見された関連する情報に基づいてそれらの情報を組織的に管理しルーティング判断を行う。
本発明は、効率的な分散アーキテクチャ及び情報抽出のプロセスの構築により、これらの課題を解決する。
基礎となるネットワークの任意のトポロジーと、各パケットの制限されたリソースが与えられた場合、情報の分配経路は、ループがないものであると同時に、広範囲のノードカバレジを有することが好ましい。非巡回経路は、冗長なノード訪問を除去し、ルーティング情報収集プロセスを単純化することによって、対応する情報の効率的な分配を行う。このような、効率と広範囲の要求の組合せは、IPマルチキャスティングにみられるものによく似ている。
次に、本発明におけるマルチキャストツリーの使用についてさらに詳細に説明する。マルチキャストツリーは、本発明におけるルーティングの基盤であるが、情報ルーティングの特徴は、このようなツリーが単純なマルチキャスティングとは異なる目的及び異なる方法で使用されるという点にある。IPネットワークにおいてマルチキャストツリーを構築するには2つのアプローチがある。それらは、ソース(発信元)ベースのアプローチと、共有ツリーのアプローチである。ソースベースのアプローチでは、各ソースごとにマルチキャストツリーを構築する。これは、各ソースにとっては最良の分配経路となるが、大きいグループの場合、関与するルータが維持しなければならない状態の数は膨大になる。
共有ツリーのアプローチは、各マルチキャストグループごとに1個のマルチキャストツリーを構築し、すべてのソースは分配のために同じツリーを使用する。このようなツリーは、あらゆるソースにとって最良の経路とはならない可能性があるが、非常にスケーラブルであり、大規模で密なマルチキャストグループには好ましい。
CBT(Core Based Tree)アルゴリズムが、そのスケーラビリティ及びロバスト性のために、本発明で用いられる。CBTプロトコルは、マルチキャストグループにおける多対多通信のためのネットワーク層マルチキャストプロトコルである。共有ツリーは、「コア(core)」と呼ばれる集中ポイントのセットの助けにより、各グループごとに構築され管理される。そのうちで、1つのノードが「一次コア(primary core)」と呼ばれ、残りのノードが「二次コア(secondary core)」と呼ばれる。ネットワークルータには、静的コンフィグレーションまたは動的キャッシングにより、付近のコアのことが知らされる。あるノードが、マルチキャストグループに加入したいとき、そのノードは、付近の二次コアへ加入リクエストを送る。そのリクエストがツリー上のノードまたはツリー外の二次コアに到達した場合、そのノードはツリーに加入したとみなされる(そして、その加入が通知される)。リクエストがツリー外の二次コアに到達した場合、その二次コアは、同様のプロセスに従って一次コアへ加入を試みる。通知プロセス中に、その経路上のすべてのノードはツリーのメンバとなる。このプロトコルでは、ループの形成を回避し、コネクションの切断に対処するために、さまざまな考慮がなされる。
図5において、例として、いくつかのルータがネットワークを構成している。各ルータは複数のコネクションを有し、そのため、同じ2個のルータの間に複数のルートが存在する。
図6に、深さ優先サーチ(DFS:Depth First Search)を用いてCBTが実装された後のルータネットワークを示す。各ルータへの単一の経路が確立されている。
本発明のすべてのノード間で利用可能な共通ツリーにより、冗長性なしにパケットを分配することが可能となる。本発明は、情報抽出(information distillation)として知られる効率改善機構を含む。これは、情報自体をほとんど希釈することなく、情報を運ぶデータの量を縮小するプロセスである。本発明では、これは、主に、パケット結合(packet combination)によって実現される。このパケット結合では、関連する情報を有するいくつかのパケットが単一のパケットに併合される。これは、パケットの適当な意味論的構造化と、ネットワークにおけるインテリジェントルーティングにより可能となる。
本発明におけるパケットの自動的な処理及びルーティングを実現するために、これらのパケットにいくつかの意味論的構造を付ける必要がある。情報内容パケット及び情報問合せパケットのフォーマットは、本発明の有効性を直接に決定する。
本発明では、オントロジーアプローチにみられる単純な階層的フォーマットを使用する。その単純さとは別に、このような構造は記述的で、フレキシブルでもある。新しいオントロジーは、既存のオントロジーから必要に応じて導出されるため、ユーザは、既存のオントロジー階層を容易に拡張することができる。領域固有の動作は、詳細なオントロジーごとの処理のために、各パケット内で定義され運ばれる。
注意すべき点であるが、情報問合せパケット及び情報内容パケットはいずれもオントロジーフォーマットに従う。両方のタイプのパケットの構築を容易にするために、便利なユーザインタフェースが提供される。例として、要求インタフェースは、ユーザに対して、単に、関心領域のカテゴリ階層と、いくつかの検索基準を選択するよう要求することが可能である。同様に、内容インタフェースでは、ユーザは、単に、オントロジーパスと、いくつかのキーワードを入力するだけでよい。すると、基本的なバインディングプロセスを、対応するオントロジーと照合し、必要なときに検索を行うことによって、実行することができる。カスタム設計されたフィルタリング法もまた、この階層構造を利用して、フィルタリングプロセスをはかどらせることになる。
次に、複数のパケットを単一のパケットに結合することについて説明する。オントロジー構造は、本発明におけるパケット分配にも有益である。本発明のパケットがネットワークを探索することができる範囲は、パケットに対するリソース制限によって非常に制限されるため、共通の関心領域を有するパケットがそれらのリソースを統合してそれらのカバレジをさらに拡大することが好ましい。これが、前述の情報抽出プロセスであり、階層的オントロジーフォーマットがこのプロセスを容易にし有効にする。
例として、「バス」、「列車」及び「地下鉄」に関する情報(またはその情報の位置)をそれぞれ含む内容パケットが、あるアクティブノードに存在する場合、「公共輸送機関」に関する知識を主張する新しい内容パケットが作成される。その後、この新しい内容パケットは、もとの3個の内容パケットの代わりに他のノードへ送られる。オントロジーツリーインスタンスが作成された後、そのようなインスタンスに枝刈り手続きが適用される。このプロセスについてさらに説明するためには、いくつかの定義が必要である。
oノードの条件付きアクセス確率(CAP:Conditional Access Probability)とは、ツリーにおけるその親ノードがアクセスされた場合にこのoノードがアクセスされる確率である。
例えば、問合せが、公共輸送機関に関する情報を探している場合、バスoノードの条件付きアクセス確率は、この問合せがバス情報に関心がある確率である。
一般に、オントロジーインスタンスツリーにおけるCAPは、ツリーのアクセス履歴情報に基づいて評価される。例えば、長期間にわたって、公共輸送機関オントロジーインスタンスツリーへのアクセスの60%がバスに関係する場合、バスoノードのCAPは約0.6である。
オントロジーインスタンスツリー内のノードの信頼度(CL:Confidence Level)とは、そのノードが対応する主題に関してそのノードが有する信頼性の程度のことである。厳密には、ノードiの信頼度CLiは次のように定義される。
Figure 0004003763
ただし、kは、ノードiがインスタンスツリーにおいて有する子ノードの数であり、lmは、ノードiのm番目の子ノードである。このように、インスタンスツリー内のノードのCLは、ボトムアップ式に構成される。
次に、オントロジーインスタンスツリーの枝刈りについてさらに詳細に説明する。オントロジーインスタンスツリー内のノードのCL値は、ツリー枝刈り判定に使用することができる。例えば、ノードが高いCLを有する場合、そのサブツリーは枝刈りされる。このような判定は、前述の情報抽出すなわちパケット結合プロセスに対応する。CL計算プロセスとは異なり、ツリー枝刈りはトップダウンに行われる。適当な枝刈りは、本発明の各nノードにおけるネットワークトラフィック及び記憶要求条件を大幅に縮小することが可能である。
図7に、枝刈りされたオントロジーインスタンスツリーを例示する。なお、いくつかのoノードのサブツリーの枝のCAPは足し合わせても1にならない。これは、これらのCAPは統計から得られており、情報のいくつかの枝は古くなっている可能性があるためである。このような枝は、依然としてCAP統計に寄与するが、それらに付いている葉ノードのCLは0に等しいとみなされる。こうして、ツリーからこれらがなくなることは、CL計算プロセスの正確さに影響しない。
葉ノードのCLを、それらの対応するトピックをカバーするページ数で置き換えた場合、内部ノードにおけるページ数の期待値及び分散も同様に計算される。このような情報も、オントロジーインスタンスツリーに与えられ、本発明のパケットによって、定量的にルーティング判断を行うために使用されることが可能である。特に、この情報は、パケットが、いくつかの方向に沿って遭遇する関連ドキュメントの推定数と、分布の歪みを判断する助けとなり得る。
次に、アクティブノードにおけるオントロジーインスタンスツリーの変更と、変更されたオントロジーインスタンスツリーを近傍のアクティブノードへ転送することについてさらに詳細に説明する。特定のアクティブネットワークノードに記憶されたオントロジーインスタンスツリーを枝刈りするという考え方は、オントロジーインスタンスツリーを近傍のアクティブネットワークノードと交換するときに使用される最適化である。内容パケットが特定のアクティブネットワークノードで受信されると、その内容パケットは、その内容パケットが到着したポートに対応するオントロジーインスタンスツリーと相互作用する。内容パケットは、いくつかの方法でオントロジーインスタンスツリーと相互作用する。第1に、内容パケットは、相互作用しているオントロジーインスタンスツリー及びその他のオントロジーインスタンスツリーの現在の状態を反映するように変更された後、ルーティングツリー上の他のすべての近傍ノードに転送されることが可能である。第2に、内容パケットは、対応するオントロジーインスタンスツリーを更新した後、移動を終了する。アクティブネットワークノード自体は、その近傍のすべてのアクティブネットワークノードのオントロジーインスタンスツリーを更新するために、更新されたオントロジーインスタンスツリーまたはその一部を、それらの近傍ノードへ転送する責任を有する。第3に、オントロジーインスタンスツリー更新、内容パケット転送及びオントロジーインスタンスツリー転送の組合せも可能である。
次に、情報問合せパケット及び情報内容パケットに対するリソースの制御及び限界についてさらに詳細に説明する。前述のように、本発明の個々のパケットのアクティビティは、システムの安全で効率的な動作を保証するように規制されなければならない。このような規制は、システム制御の2つの点をカバーする必要がある。パケットはネットワーク内で何をすることが許されるかという点(アクセス制御)と、パケットはどのくらいの量のネットワークリソースを消費することができるかという点(リソース制御)である。アクセス制御に関して、本発明は、PLANパッケージによって提供される機構に基づいて、ネットワーク内のアクティブノードの状態に対する各パケットの効果を制限する。一般に、本発明のパケットは、2つのタイプの関数を呼び出すことができる。PLAN言語に埋め込まれている関数と、本発明のサービスパッケージで拡張された関数である。後者の関数は、基本PLAN関数の上に構築されているため、パケットに対する関数的影響は有効に制限される。
リソース制御は、本発明のもう1つの重要な点である。本発明のアクティブな性質により、ノード記憶スペース及びリンク帯域幅のようなシステムリソースは、正しく設計され制御されることが重要である。PLAN及びその他のほとんどのアクティブネットワークパッケージで用いられるホップカウントに基づくリソース制御は、本発明で要求されるいくつかの重要な機能を欠いているため、不十分である。これらの機能には次のものがある。
・リソースの結合。
・リソースの補給(refueling)。
・ネットワークノードのリソース制御。
これらの機能を実装するため、PLANパッケージを、追加のリソース制御機構により拡張する。このような新しい機構の1つの重要な点は、「リソースドネーション(リソース寄付、resource donation)」と呼ばれる概念である。リソースドネーションは、アクティブパケットが、そのリソース限界の一部または全部を他のアクティブパケットに移転する機構である。この用語は、混乱のおそれがない場合には、移転される量も指す。
リソースドネーション判断は、ドネーションを行う側のパケット内のいくつかのフラグによって、または、そのパケットによって呼び出されるプログラムの実行によって、行われる。リソースドネーションは、本発明のさらにアクティブな動作の多くの新たな可能性を開く。
例として、いくつかのパケットを1つのパケットに併合して、それらの分配や検索範囲を拡大することができる。特殊なソフトウェアエージェントが、パケットへのデータ挿入のためのリソースを交換することが可能である。ポータルサイトは、そのサイトへのパケットに対して、必要なリソースを提供することにより、そのパケットを引き付けることが可能である。
ノードごとのリソース制御において、アクティブノードタイムリミット(ANTL:Active Node Time Limit)フィールドが、本発明の各パケットに追加される。このフィールドは、対応するパケットによってノードに残される常駐データの寿命を制御するために使用される。問合せパケットあるいは内容パケットが、ノードに到着して、そのノードにデータを常駐させると決定し、そのようにすることが(アクセス制御により)許される場合、満了時刻がそのデータにタグづけされる。各ノード上の常駐データは周期的にチェックされ、タイムリミットが満了したデータはそのノードから消去される。
指摘しておかなければならない点であるが、パケットのリソース限界及びANTLフィールドにはいずれも、パケットがシステムに入るときに、本発明のインタフェースによって値が割り当てられる。すなわち、これらの値は、本発明のプロトコルの一部であり、個々のパケットまたはアプリケーションによって任意に決定することはできない。これらの値割当てをより安全に制御するためには、クレジットに基づくリソース管理方式を本発明に追加する。クレジットは、システム全体にわたり配置される信頼された機関から付与あるいは「購入」される。例えば、本発明の動作モデルは次のようになる。
・それぞれの問合せパケットあるいは内容パケットは、システムに注入されると、オントロジー普及度分布(ontology popularity distribution)に基づいて、ある量の無料のクレジットが割り当てられる。
・問合せパケットあるいは内容パケットは、到達範囲を拡大することができるように、購入またはクレジット移転により追加のクレジットを取得することを決定することが可能である。
・ポータルサイト及びソフトウェアエージェントは、クレジットを購入し、問合せパケットまたは内容パケットを引き付けるため、あるいは、これらのパケットにデータを入れるため、クレジット移転用にそのクレジットを使用することができる。
本発明では、さまざまな問合せパケット及び内容パケットがシステムに注入された後、分配ツリーに従って関連するnノードに到達する。ネットワークに入ると、それぞれの問合せパケットあるいは内容パケットは、できるだけ遠くまでネットワークを通って移動し、パケット内に運ぶフィルタをインストールし、通過する各アクティブノードで適合するフィルタとバインドする。フィルタは、アクティブノードにインストールされると、現在の時刻と、フィルタとともに運ばれるANTLとの和である満了時刻が関連づけられる。各アクティブノードは、時刻が満了したフィルタを周期的に消去する。この時刻はノードごとのリソース制限であるため、パケット発信者は、別の手段によって、自己のパケットのために、より多くの時間を「購入」することができる。
単純なマルチキャスティングとは異なり、本発明における情報ルーティングプロセスは、アクティブノードにおけるシステム固有の意思決定と、個々のパケットによって呼び出されるカスタム化された選択プロセスが関わる。以下、本発明の動作の詳細についてさらに詳しく説明するため、単一のノードの構造及び動作について説明する(すなわち、単一のノードにおける情報ツリー構築プロセスと単一の問合せルーティングプロセスを例示する)。
内容及び問合せのオントロジーインスタンスツリーの変更及び転送についてさらに詳細に説明する。分配ツリーが決定されると、各ノードは、ツリー近傍に接続されたいくつかのインタフェースを有する。図8に、3本のリンクA、B、Cを有するnノードを例示する。各リンクA、B、Cには、そのリンクから到着する情報内容パケットから構築され、そのリンクを通じて到達可能な情報を表す、オントロジーに基づく情報ツリーが関連づけられる。図8に示すように、情報内容パケットがインタフェースAに到着すると、これはまず、対応する情報ツリーTAに挿入される。ツリー構造に対するその影響に依存して、これは、ツリーに吸収されるか(すなわち、P1で例示されるように、ツリーが表している知識をこのパケットがあまり変化させない場合)、または、さらに他のノードによって処理されるように他のインタフェースを通じて送出される(すなわち、P2及びP3で例示されるように、このパケットがツリーの一部を実質的に更新した場合)。リンクB及びリンクCで起こる同様のプロセスは、読みやすくするため、図示していない。
図9において、アクティブノードANAに関連づけられたオントロジーインスタンスツリーBCTは、アクティブノードAN1へ向かうすべての知識を要約する。これは、アクティブノードAN1上のBT及びCTのオントロジーインスタンスツリーに格納された内容の併合である。内容パケットがアクティブノードAN1のリンクAに到着したと仮定する。この情報パケットは、アクティブノードAN1にとってリンクAからみたすべての情報を要約するオントロジーインスタンスツリーATの状態を変化させる。この内容パケットがこの状態を大きく変える場合、アクティブノードANBのオントロジーインスタンスツリーもまた更新する必要がある。しかし、アクティブノードANBへ送られる内容パケットは、リンクCに対応するオントロジーインスタンスツリー内の情報を考慮する必要がある。
さらに、内容パケットが、特定の情報を要求したリクエスタノードへもルーティングされることを要求する場合、問合せパケットタイプによって作成されるオントロジーインスタンスツリーを見る必要がある。内容パケットは、問合せパケットによって作成されるオントロジーインスタンスツリーを参照し、問合せパケットは、内容パケットによって作成されるオントロジーインスタンスツリーを参照する。例として、はじめてネットワークに注入される内容パケットを考える。この内容パケットは、第1のノードに到着すると、ポートにおいて、自己のパケットタイプのオントロジーインスタンスツリーと相互作用する。この内容パケットは、到達した最初のアクティブノードでこの役割を果たすだけである。オントロジーインスタンスツリーへの変更により、このタイプのパケットが作成されることもあり、このパケットは、近傍のアクティブノードへ転送される。あるいは、ノードは、特定のリンクに対するオントロジーインスタンスツリー(すなわち、そのアクティブノード上の他のリンクに対するオントロジーインスタンスツリーの併合)を作成する。その後、アクティブノードは、新たに作成されたオントロジーインスタンスツリーを、近傍のアクティブノードへ周期的に転送する。その後、内容パケットは、到着したリンク以外のすべてのリンク上の問合せパケットタイプのオントロジーインスタンスツリーを参照する。次に、内容パケットは、次のアクティブノードに移動すべきかどうかを判断する。これを行う機構は、前に説明した通りである。内容パケットは、別のアクティブノードに移動すると決定した場合には、新しいオントロジーインスタンスツリーを作成するアクティビティを繰り返すことはない。
図8において、本発明のシステムの情報ルーティングは、ホップごとのルーティング方式である。各オントロジーノードにおけるもう1つのパラメータは、平均距離(AD:Average Distance)と呼ばれ、関連する情報の出所に到達するためにどのくらいのリソースを消費する必要があるかを示すために用いられる。これは、CLパラメータと同様に計算される。葉oノードのADは、情報の出所から現在のnノードまでの実際のホップカウントに等しい。これは、ホップインクリメントにより得られる。内部oノードiの平均距離ADiは次のように定義される。
Figure 0004003763
ただし、kは、ノードiがインスタンスツリーにおいて有する子ノードの数であり、lmは、ノードiのm番目の子ノードである。上記の式から、CLとは異なり、ADは、その計算において古い枝を考慮しない。これは、oノードのADが、現在のnノードと、そのoノードから分岐するすべての「利用可能な」情報のソースとの間の平均距離を示すために使用されることにより正当化される。これに対して、CLは、oノードがその「すべての」サブカテゴリに関する情報に関してどのくらい信頼性があるかを反映する。
図9を参照して、ノードにおける問合せ処理についてさらに詳細に説明する。問合せパケットがインタフェースAに到着すると、インタフェースB及びCのツリーBT及びCTはそれぞれ、そのパケットのルーティング判断をするためチェックされる。簡単のため、これらの2つのツリーは、図9では単一のツリーBCTに統合される。パケットは、その関心のある内容に対する可能な方向を表すすべての適合するノードを発見するまで、ツリーBCT内のオントロジー構造をたどる。この時点で、どの方向に行くべきか、及び、もとのパケット内のどのくらいのリソースを各方向に消費するかについて判断をしなければならない。このような判断は、各適合するノードのCL及びADに基づいてなされる。パケットは、アクティブパケット内で運ばれるカスタム設計されたプログラムに従ってこの判断を行うことが可能である。さらに、アクティブノードは、デフォルト判断機能を提供するように設定される。これにより、本発明のユーザは、その需要に最もよくあうように検索及び分配のストラテジを調整する際に、多大なフレキシビリティが与えられる。
本発明では、結合されたパケットが後の時点で適合するノードを発見すると、その結果は、パケットが最初に生成されたノードに転送される。より詳細なフィルタが導入され、より具体的な結果が、対応する情報リクエスタに送られる。
指摘しておかなければならない点であるが、ほとんど同一のプロセスが、問合せツリーを構築し、情報ルーティングを行うために使用される(すなわち、問合せパケットと内容パケットは完全に対称的な方法で扱われる)。問合せパケットのトレースをネットワークに残すという概念は、広範囲の所望されるユーザアクティビティを可能にするため、非常に強力である。例として、問合せパケットがネットワークにとどまることができる持続時間を制御することによって、ユーザは、履歴情報のみに関心があるか、完全に新しい情報に関心があるか、それとも、近い将来のある期間内の情報に関心があるかを容易に指定することができる。
概念的には、nノードの各インタフェースは、そのnノードにおける他のすべてのインタフェースに到着するパケットから構築される別個のoツリーを管理する。このような概念的な区別の主な理由は、より効率的な情報の発見及び分配のためである。各パケットは、冗長な一致結果について考慮することなく、到着したインタフェースにおけるオントロジーインスタンスツリーで照合を行うだけでよい。オントロジーインスタンスツリーは抽出され、冗長な情報がnノードに送られないことを保証して、そのインタフェースから送出される。明らかに、このようなツリーは、実際の実装では、スペース効率のために1つのツリーにまとめられる。
なお、各インタフェースにおける単一のツリーは、さらに、論理的に2つのツリーに分割される。これらは、情報内容パケットから構築される内容ツリーと、情報問合せパケットから構築される問合せツリーである。いずれのツリーも同じオントロジー構造を使用するため、これらは、効率的な管理のために結合される。このため、これらの2つの異なるタイプの情報の間を区別するために、ツリー内にいくつかのフラグをセットすることが必要となる。
本発明は、コンピュータシステムで実現される。ここで、「コンピュータシステム」という用語は、少なくともメモリ及びプロセッサを有すると理解されるべきである。一般に、メモリは、あるときに、実行可能プログラムコードの少なくとも一部を記憶し、プロセッサは、その実行可能プログラムコードに含まれる1つ以上の命令を実行する。認識されるように、「実行可能プログラムコード」という用語と、「ソフトウェア」という用語は、本明細書の目的ではほぼ同じものを意味する。本発明の実施にとって、メモリとプロセッサが物理的に同じ場所に位置することは必要ではない。すなわち、予想されるように、プロセッサとメモリは、異なる物理的装置にあることも可能であり、あるいは、地理的に異なる位置にあることさえ可能である。
本発明は、以下で説明するように、コンピュータプログラム製品として実現されることも可能である。
実用的レベルでは、コンピュータシステムが以下でさらに詳細に説明する動作を実行することを可能にするソフトウェアは、さまざまなメディア(媒体)のうちの任意のものにより供給されることが可能である。さらに、本発明のアプローチ及び動作の実際の実装は、実際には、プログラミング言語で書かれた文(ステートメント)である。このようなプログラミング言語の文は、コンピュータによって実行されるときに、コンピュータを、その文の個々の内容に従って作用させる。さらに、コンピュータが本発明に従って作用することを可能にするソフトウェアは、オリジナルのソースコード、アセンブリコード、オブジェクトコード、機械語、これらを圧縮または暗号化したバージョン、及びすべての均等物を含む形式のうちのいずれで提供することも可能であり、しかも、これらの例には限定されない。
当業者には認識されるように、本明細書で用いられる「媒体」、「コンピュータで読み取り可能な媒体」とは、ディスケット、テープ、コンパクトディスク、集積回路、ROM、CD、カートリッジ、通信回線を通じてのリモート伝送、あるいは、コンピュータにより使用可能なその他の同様の媒体を含む。例えば、コンピュータシステムが本発明に従って動作することを可能にするソフトウェアを供給するために、供給者は、ディスケットを提供することも、衛星伝送を通じて、直接電話リンクを通じて、またはインターネットを通じて、何らかの形式でソフトウェアを送信することも可能である。このように、「コンピュータで読み取り可能な媒体」という用語は、ソフトウェアがコンピュータに提供されることが可能な上記及びその他のすべての媒体を含むことを意図している。
本発明の実行を可能にするソフトウェアは、ディスケット「の上に書かれ」、集積回路「内に記憶され」、あるいは、通信回線「を通じて伝送され」るが、認識されるように、本発明の目的では、コンピュータで使用可能な媒体は、そのソフトウェアを「有する」ということにする。このように、「有する」とは、ソフトウェアがコンピュータ使用可能な媒体と関係する上記及びすべての均等な方法を包含することを意図している。
そこで、簡単のため、「プログラム製品」という用語を用いて、コンピュータシステムが本発明に従って動作することを可能にする任意の形式のソフトウェアを有する、上で定義されたコンピュータ使用可能な媒体を指すことにする。
このように、本発明は、コンピュータが本発明に従って情報ルーティングを実行することを可能にするソフトウェアを有するプログラム製品としても実現される。
本発明の実施例を作成する際に、アクティブネットワークシステムは、以下のものを含まなければならない。
・インフラストラクチャコンフィグレーション。
・オントロジーインスタンスツリーの構築及び維持のための、各ノードにおけるサービスパッケージ。
・ルーティングツリーの構築。
・リクエスト及び情報の生成及び注入。
・モニタリングのためのグラフィカルインタフェース。
本発明のコンポーネントは、PLANサービスパッケージとして、関与する各アクティブノードにロードされる。ネットワーク生成プログラムを用いて、アクティブネットワークコンフィグレーションを生成し初期化する。ユーザは、各ノード上のリンクの数の分布及びノード間の接続を指定する複数のパラメータを提供することが可能である。このコンフィグレーションプログラムの結果は、実際に各ノードを起動しノードコネクションをセットアップするPLANネットワークセットアップモジュールに供給される。
注意すべき点であるが、本発明は、ネットワーク内のあらゆるノードが本発明のために設定されたノードであることを要求しない。別の実施例では、本発明は、実際のネットワークシステム上のオーバーレイネットワークとして構成される。関与するノードのみが、本発明のオーバーレイに加入し、本発明の機能を提供すればよい。IPマルチキャスティングツリープロトコルにおけるのと同様の加入及び退去の手続きが、このようなオーバーレイネットワークを管理するために使用される。
本発明のネットワークバックボーンがセットアップされると、本発明のコアが、PLANサービスパッケージとして各ノードにロードされる。PLANは、2つの異なるタイプのローディング方法を提供する。第1の方法では、ライブラリコードの形式のサービス関数が、指定されたファイルから各ノードに読み込まれる。第2の方法では、パッケージは、コード伝送によりノードに動的にリンクされる。
前述のように、PLANパッケージの目的は、個々のアクティブPLANパケットにサービスを提供することである。PLANパッケージは、アクティブパケットを非常に簡潔にし、ペイロード効率を改善する。アクティブパケットは、共通に使用されるサービス関数自体の代わりにその間数へのポインタを運ぶだけでよいからである。本発明のサービスパッケージは、同じ役割を果たす。一実施例では、次のような、情報のフィルタリング、バインディング、記憶及び転送を管理するコア関数のセットが実装された。
・ addTreeNeighbor(ifc):インタフェースifcを通じて接続されたネットワークノードを分配ツリーの近傍にし、実質的に、ツリーエッジの一端に追加する。
・ removeTreeNeighbor(ifc):上記の動作の逆。
・ insert(pkt):パケットをノードのオントロジーインスタンスツリーに挿入する。パケットのタイプ及びソースを示すように適当なタグづけが行われる。
・ search(pkt):検索パケットに適合する項目をオントロジーインスタンスツリー内で検索する。パケットタイプ、検索用語オントロジー階層及びキーワードのような情報を、この検索中に使用する。
・ distribute(pkt, ifc_list):検索結果に基づいて、パケットをさらに、適合がある可能性のあるifc_list内の他のノードに分散させる。
・ update_cl():オントロジーインスタンスツリーのノード内のCLを更新し、その結果を近傍ノードに伝達する。
・ process_packet():構成されたノードにおいて本発明のサービスを呼び出すために外部に提供された汎用のインタフェース。
ルーティングツリーの構築は、提案されているIPマルチキャスティング分野にみられるものと同様の方法で実行される。そのアルゴリズムにおいて、あるノードが、ユーザの選択により、または、シミュレーションコアによって、ツリーの論理的なルートとして選択される。次に、ルーティングツリーの構築を開始するよう指令するアクティブパケットがそのノードに送られる。すると、ツリー生成について後続のノードに通知するために、ルートによってDFS手続きが開始される。この手続きにおいて、パケットが通る各ノードは、ツリー構築コードとともに、親ノードのアドレスのような状態情報を含むアクティブパケットを受信する。ノードは、候補ノードとして識別されると、自分自身をマークして、対応するツリーインタフェースを記録する。このようにして、ループは形成されないことになる。構築手続きが完了するとき、関与する各ノードは、そのすべてのツリー近傍を示すインタフェースのリストを有する。
基礎となるPLANシステムの動作モデルは、サービス関数が宛先ノードで適切に処理されるように、各パケットがそのサービス関数を呼び出すかどうかを決定する。process_packet関数は、特にこの目的のために設計されている。パケットが作成されると、そのパケットの目的に関する関連情報が、パケット内のあるデフォルトフィールドに登録される。このようなフィールドのうちの1つは、呼び出される関数を表し、これは、process_packetへの参照を含む。あるノードにそのパケットが到着すると、インストールされているサービス関数が呼び出され、続いてこれが、insert(pkt)やdistribute(pkt, ifc_list)のような他の必要な関数を呼び出す。
システムにおいて、グラフィカルインタフェースは一般に、ユーザの便宜及び視覚的表示のために用いられる。このインタフェースコンポーネントは、ユーザフロントエンド及び通信コアからなる。通信コアは、本発明におけるアクティブノードと相互作用する。ユーザ入力は、適当に符号化され、このコアを通じて宛先ノードへ伝送される。逆方向では、コアは、各ノードから周期的に状態情報を収集し、それを表示するためにフロントエンドに提示する。このインタフェースを通じて、ユーザは、本発明におけるネットワークトポロジー、ルーティング構造及びさまざまなオントロジーインスタンスツリーを制御し観察することができる。
本発明の一実施例は、ローカルエリアネットワーク上に配備され、あるいは、さらに大規模なネットワークトポロジーの上のオーバーレイネットワークとして構成される。これにより、システムは階層的コネクションあるいはカバレジ拡大により容易に成長することが可能である。
機能する領域の観点から見ると、情報階層全体から、電子商取引、技術情報及びスポーツニュースのような特定の分野までの広範囲の実施例が、本発明により実現される。これらの2つの点は互いに独立であり、任意の方法で組み合わせられる。
本発明は、基礎となるアクティブネットワークに基づいて、情報のフィルタリング及びルーティングを行う。本発明のネットワークノード及びパケットのアクティブな性質により、ネットワーク資源を効率的に利用し、情報発見経路を有効に短縮することが可能となる。しかし、本発明のフレキシビリティのため、基礎となるネットワーク内のあらゆるノードがアクティブノードである必要はない。本発明の実施例は、オーバーレイアクティブネットワーク上で動作するように容易に適応する。本発明におけるルーティングツリー構築プロセスは、オーバーレイノードとして関与しようとするノードのみを選択することができる。直接の物理的コネクションのないノード間に仮想リンクが維持される。
本発明のもう1つの実施例は、ネットワークスイッチあるいはルータへの変更なしに、従来の非アクティブネットワーク上に実現される。この実施例では、インターネットの遍在性及びエージェント技術の力(例えば、Java(登録商標))により、アプリケーションレベルの「オーバーレイネットワーク」が、ネットワークエッジノード、すなわち、ネットワークに接続されるコンピュータを用いて構築される。この実施例のもとでは、情報のプロバイダ及びリクエスタがアクティブに相互作用し、より即時的で関連性のある応答を行うような、さらに応答性がよく扱いやすいインターネットが構築される。インターネットのユーザは、自己のインターネットサーバをセットアップする必要なしに、自己の情報あるいは要求をウェブに「プッシュ」し、関心のある結果を得る自由度を有することが可能となる。
本発明のもう1つの実施例によれば、本発明は、社内ネットワーク(イントラネット)情報システムのような小規模のネットワークにおいて、アプリケーションレベルのオーバーレイシステムとして実装される。この場合も、社内ネットワーク内の内容プロバイダは、ユーザからの問合せと容易に照合される。
本発明のもう1つの実施例は、アプリケーション領域に関係する。本発明は、オントロジーに基づく意味論的構造を使用するため、検索動作モデルは、オントロジーインスタンスツリーのサブ階層の任意の部分に適用され、その結果、本発明に基づいて、特定の知識領域におけるアプリケーションが得られる。例として、オントロジーインスタンスツリーの「商取引」の枝が探索されれば、本発明に基づいて、電子商取引アプリケーションが構築される。パケットのアクティブな性質は、商品の分配、比較、及び、購入にさえ、多大な自由度を与える。
本発明のもう1つの実施例は、技術的な論文及び刊行物を配布し発見するために構築されたアプリケーションである。検索パラメータは、非常に広くあるいは非常に狭く設計され、また、新しい刊行物を待つように指示される。
注意すべき点であるが、複数のアプリケーションが、同じ物理的ネットワークあるいはオーバーレイネットワーク内に共存する。関与するネットワークノードは、相異なるアプリケーションをサポートし、おそらくは、アプリケーションデータをまとめて管理するように構成される。領域あるいはカバレジの成長の必要が生じると、アプリケーションは、関与するノードで併合することを選択することも可能である。
本発明の好ましい実施例に関する上記の記載は、例示及び説明のためになされたものである。これは、網羅的であることも、本発明を開示された正確な形式に限定することも意図しておらず、上記の記載に照らして、あるいは、本発明の実施により、さまざまな改良や変形が可能である。これらの実施例は、考えられる個々の使用法に合わせて当業者がさまざまな実施例においてさまざまな変更をして利用することができるように本発明の原理及びその実際的な応用について説明するために選択され記載されたものである。
このように、ここでは、本発明のいくつかの実施例についてのみ具体的に説明したが、明らかなように、本発明の技術思想及び技術的範囲から離れることなくさまざまな変形を行うことが可能である。さらに、頭字語は単に明細書の可読性を高めるためにのみ使用されている。注意すべき点であるが、このような頭字語は、使用されている用語の一般性を狭めることを意図しておらず、特許請求の範囲をここに記載した実施例に限定するように解釈してはならない。本発明の技術的範囲は、特許請求の範囲及びその均等物によって定義される。
複数のコンピュータへの複数のコネクションを有する現在の検索動作モデルの図である。 各ルータにルーティングテーブルが構築された現在の検索動作モデルの図である。 オントロジーインスタンスツリーの作成及び変更と、情報問合せパケット及び情報内容パケットの伝搬のプロセスフローの図である。 本発明の検索動作モデルの図である。 いくつかのルータ間のルーティングコネクションにおいて、ルータ間のループの可能性を示す図である。 ルータ間のルーピングを避ける、ルーティングコネクションの縮小セットの図である。 枝刈りをしたオントロジーインスタンスツリーの図である。 他のノードへのリンクを有する本発明の一般的なノードと、付随するオントロジーインスタンスツリーの図である。 ノードにおける、本発明による問合せルーティングの図である。 アクティブノードにおいて情報内容パケットにより問合せオントロジーインスタンスツリーを検索するプロセスフローの図である。 アクティブノードにおいて情報内容パケットにより内容オントロジーインスタンスツリーを変更するプロセスフローの図である。 アクティブノードにおいて情報問合せパケットにより内容オントロジーインスタンスツリーを検索するプロセスフローの図である。 アクティブノードにおいて情報問合せパケットにより問合せオントロジーインスタンスツリーを変更するプロセスフローの図である。
符号の説明
30 情報リクエスタ
31〜37 ルータ
38 情報プロバイダ

Claims (13)

  1. それぞれが複数の内容情報を有する複数の情報プロバイダノードと、複数の情報リクエスタノードと、複数のアクティブネットワークノードと、を含むネットワークにおける情報ルーティング方法において、
    少なくとも1つの内容オントロジーインスタンスツリーおよび少なくとも1つの問合せオントロジーインスタンスツリーを前記複数のアクティブネットワークノードの各々に作成するステップと、
    ある情報プロバイダノード上に位置する内容情報を記述した内容記述と当該情報プロバイダノードへの内容ルーティング情報とを含む情報内容パケットを前記複数のアクティブネットワークノードからなるアクティブネットワークへ注入するステップと、
    前記情報内容パケットが通ったアクティブネットワークノードの前記少なくとも1つの内容オントロジーインスタンスツリーに対して当該情報内容パケット内に含まれる前記内容記述および前記内容ルーティング情報を挿入することで、当該内容オントロジーインスタンスツリーに当該情報内容パケットのトレースを残すステップと、
    ある情報リクエスタノードが情報を要求する問合せデータと当該情報リクエスタノードへの問合せルーティング情報とを含む情報問合せパケットを前記アクティブネットワークへ注入するステップと、
    前記情報問合せパケットが通ったアクティブネットワークノードの前記少なくとも1つの問合せオントロジーインスタンスツリーに対して該情報問合せパケット内に含まれる前記問合せデータおよび前記問合せルーティング情報を挿入することで、当該問合せオントロジーインスタンスツリーに当該情報問合せパケットのトレースを残すステップと、
    前記情報問合せパケットが、当該情報問合せパケットが通ったアクティブネットワークノードの前記少なくとも1つの内容オントロジーインスタンスツリーを検索することにより、要求する情報を含む情報内容パケットのトレースを発見するか、あるいは、前記情報内容パケットが、当該情報内容パケットが通ったアクティブネットワークノードの前記少なくとも1つの問合せオントロジーインスタンスツリーを検索することにより内容情報を要求する情報問合せパケットのトレースを発見することで、少なくとも1つの情報リクエスタノードと少なくとも1つの情報プロバイダノードとの間に情報ルートを確立するステップと、
    からなることを特徴とする情報ルーティング方法。
  2. 情報ルーティング方法において、
    a) それぞれが複数の内容情報を有する複数の情報プロバイダノードを設けるステップと、
    b) 複数の情報リクエスタノードを設けるステップと、
    c) 複数のアクティブネットワークノードを設け、各アクティブネットワークノードを、前記複数の情報プロバイダノードのサブセット、前記複数の情報リクエスタノードのサブセット、及び前記複数のアクティブネットワークノードのサブセットに接続するステップと、
    d) 少なくとも1つの内容オントロジーインスタンスツリー及び少なくとも1つの問合せオントロジーインスタンスツリーを各アクティブネットワークノード上に作成するステップと、
    e) ある情報プロバイダノード上に位置する複数の内容情報を記述した内容記述と、当該情報プロバイダノードへの内容ルーティング情報と、を含む情報内容パケットを前記複数のアクティブネットワークノードからなるアクティブネットワークへ注入するステップと、
    f) 前記情報内容パケットが通ったアクティブネットワークノードの前記少なくとも1つの内容オントロジーインスタンスツリーを、該情報内容パケット内に含まれる前記内容記述及び前記内容ルーティング情報を前記少なくとも1つの内容オントロジーインスタンスツリーの枝に挿入することによって、変更するステップと、
    g) ある情報リクエスタノードが情報を要求する問合せデータと、当該情報リクエスタノードへの問合せルーティング情報と、を含む情報問合せパケットを前記複数のアクティブネットワークノードからなるアクティブネットワークへ注入するステップと、
    h) 前記情報問合せパケットが通ったアクティブネットワークノードの前記少なくとも1つの問合せオントロジーインスタンスツリーを、該情報問合せパケット内に含まれる前記問合せデータ及び前記問合せルーティング情報を前記少なくとも1つの問合せオントロジーインスタンスツリーの枝に挿入することによって、変更するステップと、
    i) 前記情報問合せパケットが、当該情報問合せパケットが通った各アクティブネットワークノードの前記少なくとも1つの内容オントロジーインスタンスツリーを検索することにより情報プロバイダノードに到達したか、または、前記情報内容パケットが、当該情報内容パケットが通った各アクティブネットワークノードの前記少なくとも1つの問合せオントロジーインスタンスツリーを検索することにより情報リクエスタノードに到達した後に、少なくとも1つの情報リクエスタノードと少なくとも1つの情報プロバイダノードとの間に情報ルートを確立するステップと、
    からなることを特徴とする情報ルーティング方法。
  3. 前記ステップ(c)は、
    c−1) 前記複数のアクティブネットワークノードに対する1つのルーティングツリーを構築するステップ
    を含むことを特徴とする請求項2記載の方法。
  4. 前記ステップ(c−1)は、前記複数のアクティブネットワークノードの個々のノードの間にループが形成されないように深さ優先探索を行うステップを含むことを特徴とする請求項3記載の方法。
  5. 前記ステップ(f)は、前記内容オントロジーインスタンスツリー内のノードに対して、葉ノードの信頼度を基準とし、葉ノードからのボトムアップにより信頼度を割り当てるステップを含むことを特徴とする請求項2記載の方法。
  6. 前記ステップ(f)は、ノードの信頼度に基づいて前記内容オントロジーインスタンスツリーの枝を枝刈りするステップを含むことを特徴とする請求項5記載の方法。
  7. 前記ステップ(h)は、前記問合せオントロジーインスタンスツリー内のノードに対して、葉ノードの信頼度を基準とし、葉ノードからのボトムアップにより信頼度を割り当てるステップを含むことを特徴とする請求項2記載の方法。
  8. 前記ステップ(h)は、ノードの信頼度に基づいて前記問合せオントロジーインスタンスツリーの枝を枝刈りするステップを含むことを特徴とする請求項7記載の方法。
  9. 前記ステップ(g)は、
    検索フィルタを前記情報問合せパケットに追加するステップと、
    検索関心領域階層を前記情報問合せパケットに追加するステップと、
    前記複数のアクティブネットワークノードによって認識される関数呼出しを前記情報問合せパケットに追加するステップと、
    を含むことを特徴とする請求項2記載の方法。
  10. 前記ステップ(e)は、
    検索フィルタを前記情報内容パケットに追加するステップと、
    検索関心領域階層を前記情報内容パケットに追加するステップと、
    前記複数のアクティブネットワークノードによって認識される関数呼出しを前記情報内容パケットに追加するステップと、
    を含むことを特徴とする請求項2記載の方法。
  11. 前記ステップ(g)は、所定量のリソースクレジットを前記情報問合せパケットに割り当てるステップを含むことを特徴とする請求項2記載の方法。
  12. 前記ステップ(e)は、所定量のリソースクレジットを前記情報内容パケットに割り当てるステップを含むことを特徴とする請求項2記載の方法。
  13. それぞれが複数の内容情報を有する複数の情報プロバイダノードと、複数の情報リクエスタノードと、複数のアクティブネットワークノードと、を含むネットワークにおける情報ルーティングシステムにおいて、
    各アクティブネットワークノードは、前記複数の情報プロバイダノードのサブセット、前記複数の情報リクエスタノードのサブセット及び前記複数のアクティブネットワークノードのサブセットに接続され、
    各アクティブネットワークノードは、少なくとも1つの内容オントロジーインスタンスツリー及び少なくとも1つの問合せオントロジーインスタンスツリーを有し、各内容オントロジーインスタンスツリーは、情報内容パケットからの前記内容情報を記述した内容記述を含み、各問合せオントロジーインスタンスツリーは、情報問合せパケットからの問合せデータを含み、
    各アクティブネットワークノードは、前記情報問合せパケット及び前記情報内容パケット内に埋め込まれたコマンドを処理するアクティブノードサービスパッケージを有し、
    前記アクティブノードサービスパッケージは、各アクティブネットワークノードにおいて呼出し可能なプリロードされた関数を含み、前記呼出し可能なプリロードされた関数は、各アクティブネットワークノードにおいて前記少なくとも1つの内容オントロジーインスタンスツリー及び前記少なくとも1つの問合せオントロジーインスタンスツリーの検索及び変更をサポートする、
    ことを特徴とする情報ルーティングシステム。
JP2004214109A 1998-11-18 2004-07-22 情報ルーティング方法およびシステム Expired - Fee Related JP4003763B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10898998P 1998-11-18 1998-11-18
US09/321,628 US6498795B1 (en) 1998-11-18 1999-05-28 Method and apparatus for active information discovery and retrieval

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP32865499A Division JP3627599B2 (ja) 1998-11-18 1999-11-18 情報ルート作成方法

Publications (2)

Publication Number Publication Date
JP2005027328A JP2005027328A (ja) 2005-01-27
JP4003763B2 true JP4003763B2 (ja) 2007-11-07

Family

ID=26806517

Family Applications (2)

Application Number Title Priority Date Filing Date
JP32865499A Expired - Fee Related JP3627599B2 (ja) 1998-11-18 1999-11-18 情報ルート作成方法
JP2004214109A Expired - Fee Related JP4003763B2 (ja) 1998-11-18 2004-07-22 情報ルーティング方法およびシステム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP32865499A Expired - Fee Related JP3627599B2 (ja) 1998-11-18 1999-11-18 情報ルート作成方法

Country Status (2)

Country Link
US (1) US6498795B1 (ja)
JP (2) JP3627599B2 (ja)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3892558B2 (ja) * 1997-12-16 2007-03-14 富士通株式会社 エージェント装置及びプログラム記録媒体
US6611872B1 (en) * 1999-01-11 2003-08-26 Fastforward Networks, Inc. Performing multicast communication in computer networks by using overlay routing
US7181438B1 (en) * 1999-07-21 2007-02-20 Alberti Anemometer, Llc Database access system
US6665656B1 (en) * 1999-10-05 2003-12-16 Motorola, Inc. Method and apparatus for evaluating documents with correlating information
US7062782B1 (en) * 1999-12-22 2006-06-13 Uunet Technologies, Inc. Overlay network for tracking denial-of-service floods in unreliable datagram delivery networks
EP1267527B1 (en) * 2000-03-07 2013-04-10 Nippon Telegraph And Telephone Corporation Semantic information network (sion)
US7200684B1 (en) * 2000-04-13 2007-04-03 International Business Machines Corporation Network data packet classification and demultiplexing
US6772160B2 (en) * 2000-06-08 2004-08-03 Ingenuity Systems, Inc. Techniques for facilitating information acquisition and storage
US7577683B2 (en) 2000-06-08 2009-08-18 Ingenuity Systems, Inc. Methods for the construction and maintenance of a knowledge representation system
US6741986B2 (en) * 2000-12-08 2004-05-25 Ingenuity Systems, Inc. Method and system for performing information extraction and quality control for a knowledgebase
US7216179B2 (en) * 2000-08-16 2007-05-08 Semandex Networks Inc. High-performance addressing and routing of data packets with semantically descriptive labels in a computer network
SE0003440D0 (sv) * 2000-09-26 2000-09-26 Landala Naet Ab Kommunikationssystem
US20070294409A1 (en) * 2000-09-29 2007-12-20 Arvind Kumar Internet based network topology discovery
US6970939B2 (en) 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
AU2002236435A1 (en) * 2000-10-26 2002-05-21 Prismedia Networks, Inc. Method and apparatus for real-time parallel delivery of segments of a large payload file
DE60131900T2 (de) * 2000-10-26 2008-12-04 Flood, James C. jun., Portland Verfahren und system zur verwaltung von verteilten inhalten und verwandten metadaten
US8402068B2 (en) 2000-12-07 2013-03-19 Half.Com, Inc. System and method for collecting, associating, normalizing and presenting product and vendor information on a distributed network
US20020144143A1 (en) * 2000-12-15 2002-10-03 International Business Machines Corporation Method and system for network management capable of restricting consumption of resources along endpoint-to-endpoint routes throughout a network
WO2002052438A2 (en) * 2000-12-23 2002-07-04 International Business Machines Corporation Distributing information in a markup language within a computer system
US20020184172A1 (en) * 2001-04-16 2002-12-05 Vladimir Shlain Object class definition for automatic defect classification
US20060064666A1 (en) * 2001-05-25 2006-03-23 Amaru Ruth M Business rules for configurable metamodels and enterprise impact analysis
US8412746B2 (en) * 2001-05-25 2013-04-02 International Business Machines Corporation Method and system for federated querying of data sources
US20030101170A1 (en) * 2001-05-25 2003-05-29 Joseph Edelstein Data query and location through a central ontology model
US7099885B2 (en) * 2001-05-25 2006-08-29 Unicorn Solutions Method and system for collaborative ontology modeling
US7877421B2 (en) * 2001-05-25 2011-01-25 International Business Machines Corporation Method and system for mapping enterprise data assets to a semantic information model
US7146399B2 (en) * 2001-05-25 2006-12-05 2006 Trident Company Run-time architecture for enterprise integration with transformation generation
US7830787B1 (en) * 2001-09-25 2010-11-09 Cisco Technology, Inc. Flooding control for multicast distribution tunnel
EP1436719A1 (en) * 2001-10-15 2004-07-14 Semandex Networks Inc. Dynamic content based multicast routing in mobile networks
US8532127B2 (en) * 2001-10-19 2013-09-10 Juniper Networks, Inc. Network routing using indirect next hop data
US6717950B2 (en) * 2002-01-20 2004-04-06 General Instrument Corporation Method and apparatus for priority-based load balancing for use in an extended local area network
EP1490822A2 (en) 2002-02-04 2004-12-29 Ingenuity Systems Inc. Drug discovery methods
US8793073B2 (en) * 2002-02-04 2014-07-29 Ingenuity Systems, Inc. Drug discovery methods
WO2003073374A2 (en) * 2002-02-27 2003-09-04 Brands Michael Rik Frans A data integration and knowledge management solution
JP2003330969A (ja) * 2002-05-16 2003-11-21 Sony Corp 情報管理システム、情報処理装置、情報処理方法、情報処理プログラム、及び記憶媒体
FR2845544B1 (fr) * 2002-10-03 2005-01-14 Cit Alcatel Support actif de reservation de ressources dans un reseau de communication
CN100580665C (zh) 2002-11-29 2010-01-13 国际商业机器公司 对文件共享应用的索引服务器支持的方法及索引服务器
JP2004178472A (ja) * 2002-11-29 2004-06-24 Sanyo Electric Co Ltd プログラム取得方法およびその方法を利用可能なパケット転送装置
US7779247B2 (en) 2003-01-09 2010-08-17 Jericho Systems Corporation Method and system for dynamically implementing an enterprise resource policy
ATE313895T1 (de) * 2003-01-10 2006-01-15 Cit Alcatel Signalisierung in gesteuerten aktiven netzwerken
FR2851105B1 (fr) * 2003-02-11 2005-06-24 Cit Alcatel Requette a traitement anticipe pour un routeur actif
US7792828B2 (en) * 2003-06-25 2010-09-07 Jericho Systems Corporation Method and system for selecting content items to be presented to a viewer
US20050128995A1 (en) * 2003-09-29 2005-06-16 Ott Maximilian A. Method and apparatus for using wireless hotspots and semantic routing to provide broadband mobile serveices
US7640232B2 (en) 2003-10-14 2009-12-29 Aol Llc Search enhancement system with information from a selected source
US7165119B2 (en) * 2003-10-14 2007-01-16 America Online, Inc. Search enhancement system and method having rankings, explicitly specified by the user, based upon applicability and validity of search parameters in regard to a subject matter
US7720993B2 (en) * 2003-12-17 2010-05-18 Palo Alto Research Center Incorporated Information driven routing in ad hoc sensor networks
US20050165761A1 (en) * 2004-01-22 2005-07-28 Chan Eric J. Method and apparatus for data processing and retrieval
US20060031386A1 (en) * 2004-06-02 2006-02-09 International Business Machines Corporation System for sharing ontology information in a peer-to-peer network
US7487142B2 (en) * 2004-06-10 2009-02-03 International Business Machines Corporation Methods and apparatus for specifying and processing descriptive queries for data sources
US20060029106A1 (en) * 2004-06-14 2006-02-09 Semandex Networks, Inc. System and method for providing content-based instant messaging
US7685118B2 (en) 2004-08-12 2010-03-23 Iwint International Holdings Inc. Method using ontology and user query processing to solve inventor problems and user problems
US7719971B1 (en) * 2004-09-15 2010-05-18 Qurio Holdings, Inc. Peer proxy binding
US8589530B2 (en) * 2005-03-28 2013-11-19 Riverbed Technology, Inc. Method and system for managing a distributed network of network monitoring devices
US7882447B2 (en) 2005-03-30 2011-02-01 Ebay Inc. Method and system to determine area on a user interface
US7853618B2 (en) 2005-07-21 2010-12-14 The Boeing Company Methods and apparatus for generic semantic access to information systems
US8073929B2 (en) * 2005-12-29 2011-12-06 Panasonic Electric Works Co., Ltd. Systems and methods for managing a provider's online status in a distributed network
US7764701B1 (en) 2006-02-22 2010-07-27 Qurio Holdings, Inc. Methods, systems, and products for classifying peer systems
US7779004B1 (en) 2006-02-22 2010-08-17 Qurio Holdings, Inc. Methods, systems, and products for characterizing target systems
US7596549B1 (en) 2006-04-03 2009-09-29 Qurio Holdings, Inc. Methods, systems, and products for analyzing annotations for related content
US8005841B1 (en) 2006-04-28 2011-08-23 Qurio Holdings, Inc. Methods, systems, and products for classifying content segments
US8615573B1 (en) 2006-06-30 2013-12-24 Quiro Holdings, Inc. System and method for networked PVR storage and content capture
WO2008014495A2 (en) * 2006-07-28 2008-01-31 Ingenuity Systems, Inc. Genomics based targeted advertising
US7873988B1 (en) 2006-09-06 2011-01-18 Qurio Holdings, Inc. System and method for rights propagation and license management in conjunction with distribution of digital content in a social network
CN101512523A (zh) * 2006-09-12 2009-08-19 国际商业机器公司 把内容动态上下文相关地集成到门户网站应用程序中的系统和方法
US7801971B1 (en) 2006-09-26 2010-09-21 Qurio Holdings, Inc. Systems and methods for discovering, creating, using, and managing social network circuits
US7925592B1 (en) 2006-09-27 2011-04-12 Qurio Holdings, Inc. System and method of using a proxy server to manage lazy content distribution in a social network
US8554827B2 (en) 2006-09-29 2013-10-08 Qurio Holdings, Inc. Virtual peer for a content sharing system
US7782866B1 (en) 2006-09-29 2010-08-24 Qurio Holdings, Inc. Virtual peer in a peer-to-peer network
CN101584192B (zh) * 2006-11-27 2013-10-30 艾利森电话股份有限公司 节点注册方法
EP2090023B1 (en) * 2006-12-07 2010-06-23 Telefonaktiebolaget LM Ericsson (PUBL) Arrangement and method for network management
US7886334B1 (en) 2006-12-11 2011-02-08 Qurio Holdings, Inc. System and method for social network trust assessment
US7730216B1 (en) 2006-12-14 2010-06-01 Qurio Holdings, Inc. System and method of sharing content among multiple social network nodes using an aggregation node
US8135800B1 (en) 2006-12-27 2012-03-13 Qurio Holdings, Inc. System and method for user classification based on social network aware content analysis
US7840903B1 (en) 2007-02-26 2010-11-23 Qurio Holdings, Inc. Group content representations
US7958155B2 (en) * 2007-04-17 2011-06-07 Semandex Networks, Inc. Systems and methods for the management of information to enable the rapid dissemination of actionable information
US8041743B2 (en) * 2007-04-17 2011-10-18 Semandex Networks, Inc. Systems and methods for providing semantically enhanced identity management
US20090164387A1 (en) * 2007-04-17 2009-06-25 Semandex Networks Inc. Systems and methods for providing semantically enhanced financial information
US8107399B2 (en) * 2007-06-08 2012-01-31 Alcatel-Lucent Usa Inc. Methods and devices for providing robust nomadic wireless mesh networks using directional antennas
US9111285B2 (en) * 2007-08-27 2015-08-18 Qurio Holdings, Inc. System and method for representing content, user presence and interaction within virtual world advertising environments
US9135340B2 (en) * 2007-09-12 2015-09-15 Datalaw, Inc. Research system and method with record builder
CN101442466B (zh) * 2007-11-21 2012-07-04 华为技术有限公司 一种叠加网络及实现方法
US8254287B2 (en) * 2008-06-17 2012-08-28 Qualcomm Incorporated Methods and apparatus for optimal participation of devices in a peer to peer overlay network
US20090319285A1 (en) * 2008-06-20 2009-12-24 Microsoft Corporation Techniques for managing disruptive business events
US8725765B2 (en) * 2010-07-16 2014-05-13 Red Hat, Inc. Hierarchical registry federation
US9092525B2 (en) * 2011-05-09 2015-07-28 Wyse Technology L.L.C. Method and apparatus for searching non-public data using a single search query
US9060322B2 (en) * 2011-10-25 2015-06-16 Aruba Networks, Inc. Method and system for preventing loops in mesh networks
US20140280008A1 (en) * 2013-03-15 2014-09-18 International Business Machines Corporation Axiomatic Approach for Entity Attribution in Unstructured Data
US9667528B2 (en) * 2014-03-31 2017-05-30 Vmware, Inc. Fast lookup and update of current hop limit
WO2016146494A1 (en) * 2015-03-13 2016-09-22 Koninklijke Kpn N.V. Method and control system for controlling provisioning of a service in a network
US10880198B2 (en) * 2015-05-08 2020-12-29 Qualcomm Incorporated Aggregating targeted and exploration queries
KR102419647B1 (ko) * 2015-09-10 2022-07-11 삼성전자주식회사 패킷을 전송하는 장치 및 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6076088A (en) * 1996-02-09 2000-06-13 Paik; Woojin Information extraction system and method using concept relation concept (CRC) triples
US5913214A (en) * 1996-05-30 1999-06-15 Massachusetts Inst Technology Data extraction from world wide web pages
IL121181A0 (en) * 1997-06-27 1997-11-20 Agentics Ltd A method and system for unifying multiple information resources into hierarchial integrated information resource accessible by means of user interface
US6038668A (en) * 1997-09-08 2000-03-14 Science Applications International Corporation System, method, and medium for retrieving, organizing, and utilizing networked data
US5953718A (en) * 1997-11-12 1999-09-14 Oracle Corporation Research mode for a knowledge base search and retrieval system
US6178416B1 (en) * 1998-06-15 2001-01-23 James U. Parker Method and apparatus for knowledgebase searching
US6192364B1 (en) * 1998-07-24 2001-02-20 Jarg Corporation Distributed computer database system and method employing intelligent agents
WO2000005664A1 (en) * 1998-07-24 2000-02-03 Jarg Corporation Search system and method based on multiple ontologies
US6363378B1 (en) * 1998-10-13 2002-03-26 Oracle Corporation Ranking of query feedback terms in an information retrieval system
US6370542B1 (en) * 1998-10-23 2002-04-09 Qwest Communications International, Inc. Method and apparatus for knowledge acquisition and management
US6295535B1 (en) * 1998-11-13 2001-09-25 Board Of Trustees Operating Michigan State University Method and system for creating designs using internet-based agents

Also Published As

Publication number Publication date
JP2000165449A (ja) 2000-06-16
JP3627599B2 (ja) 2005-03-09
US6498795B1 (en) 2002-12-24
JP2005027328A (ja) 2005-01-27

Similar Documents

Publication Publication Date Title
JP4003763B2 (ja) 情報ルーティング方法およびシステム
EP1310075B1 (en) Addressing and routing of data packets with semantically descriptive labels in a computer network
EP1267527B1 (en) Semantic information network (sion)
Cabri et al. Uncoupling coordination: Tuple-based models for mobility
Busetta et al. Extending multi-agent cooperation by overhearing
Viroli On competitive self-composition in pervasive services
Charles et al. On the implementation of SwarmLinda
Ruta et al. Semantic-based resource discovery, composition and substitution in IEEE 802.11 mobile ad hoc networks
JP2001195372A (ja) エージェントサービス提供方法及びコンピュータ読み取り可能な記録媒体
Kallab et al. Automatic K-resources discovery for hybrid web connected environments
WEB Semantic description of location based web services using an extensible location ontology
Cabri et al. The impact of the coordination model in the design of mobile agent applications
Zhang et al. Computational web intelligence: Intelligent technology for web applications
Lee et al. A Possibilistic Petri-Nets-Based Service Matchmaker for Multi-Agents System Architecture.
Cabri et al. Coordination models for internet applications based on mobile agents
Arabshian et al. Gloserv: Global service discovery using the owl web ontology language
Zhang et al. ANSWER: information routing based on active networks
Helmy et al. Open distributed autonomous multi-agent coordination on the web
Liquori et al. ETSI SmartM2M Technical Report 103716; oneM2M Discovery and Query solution (s) simulation and performance evaluation
Pang et al. Crossover Service Infrastructure: Service Network
Charles et al. On the Implementation of SwarmLinda? A Linda System Based on Swarm Intelligence (Extended Version)
Wu et al. Probabilistic Analysis of a Calculus for Wireless Sensor Networks
Ryzko et al. Exchange of knowledge and learning in default reasoning based agent systems
Haseeb et al. Distributed Discovery and Invocation of Web Services in Infrastructure-less dynamic environments
Schlosser Semantic web services

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20070116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070319

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070813

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100831

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110831

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110831

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120831

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130831

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees