JP3542811B2 - データ通信ネットワークを診断するためのランドマークデータ抽出パラダイム - Google Patents
データ通信ネットワークを診断するためのランドマークデータ抽出パラダイム Download PDFInfo
- Publication number
- JP3542811B2 JP3542811B2 JP05384892A JP5384892A JP3542811B2 JP 3542811 B2 JP3542811 B2 JP 3542811B2 JP 05384892 A JP05384892 A JP 05384892A JP 5384892 A JP5384892 A JP 5384892A JP 3542811 B2 JP3542811 B2 JP 3542811B2
- Authority
- JP
- Japan
- Prior art keywords
- module
- network
- landmark
- question
- event
- 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
Links
Images
Landscapes
- Monitoring And Testing Of Transmission In General (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【産業上の利用分野】
本発明は、一般にエキスパートシステムに関し、更に詳細にはデータ通信ネットワークを診断するエキスパートシステムに関する。
【0002】
【従来の技術及び発明が解決しようとする課題】
データ通信ネットワークで発生するネットワークの問題には少くとも三つの形態、即ち、物理的な問題、接続性の問題、および構成の問題がある。
【0003】
物理的な問題には、ネットワーク上に雑音を誘起する問題、またはネットワーク上の通信を物理的におよび/または電気的に妨げる問題がある。たとえば、物理的問題には、ケーブルやコネクタの設置の欠陥や不正がある。物理的問題にはケーブルが長過ぎたり壊れたりしているというものもある。
【0004】
接続性の問題には、架線装置に伴う問題がある。たとえば、接続性の問題には中継器、ブリッジ、およびルータの動作不良および不正設置がある。
【0005】
構成の問題には、ネットワーク上で装置を構成したりプログラムしたりすることに伴う問題がある。たとえば、複数の装置が同じネットワークアドレスでプログラムされている際に構成の問題が生じる。この他に、構成の問題は、不正ブロードキャストアドレスで装置がプログラムされている場合に生じる。
【0006】
ツールを使用してデータ通信ネットワークを診断し、これによりネットワークの問題を識別する。プロトコルアナライザはそのようなツールである。
【0007】
オペレータは、ツールを用いてデータ通信ネットワークをマニュアルで診断することができる。たとえば、オペレータはプロトコルアナライザを使用してデータ通信ネットワークを統計的に監視し、ブロードキャストトラフィックレベルを含むトラフィックレベルを測定し、また衝突やエラーを検出することができる。ツールの使用を介して獲得したネットワーク情報に基づき、オペレータはネットワーク問題を識別することができる。このようなネットワーク問題が一旦識別されれば、オペレータはネットワーク問題を修正することができる。
【0008】
しかし、データ通信ネットワークのマニュアル診断は問題を伴うものである。たとえば、経験の浅いオペレータが重要な情報と不必要な情報とを区別する知識や経験を持っていないことがある。したがって、経験の浅いオペレータは、不必要なデータを大量に集めることがある。また、経験の浅いオペレータは、知識や経験が十分でないためにツールを有効に且つ効率良く操作することができない場合がある。更に、経験の浅いオペレータは、知識や経験が充分でないためにネットワーク情報を正確に且つ効果的に使用してネットワークの問題を検出することができないことがある。充分な知識および経験を有し、効果的に、正確に、且つ効率良くデータを集め、ツールを操作し、ネットワーク問題を検出する熟練したオペレータが、データ通信ネットワークの診断を行う暇がない場合がある。
【0009】
更に、データ通信ネットワークのマニュアル診断は、オペレータの手があいている場合にしか行うことができないため、そのようなマニュアル診断は、ネットワークを散発的にしか診断することが出来ないものとなる。したがって、熟練したオペレータを利用することができるとしても、マニュアル診断はデータ通信ネットワークの定期診断に通じるものではない。
【0010】
上記マニュアル診断の問題に対する従来の解決法に、既知のエキスパートシステムを使用してデータ通信ネットワークを自動的に診断するという方法がある。このような既知のエキスパートシステムはツール(プロトコルアナライザ等)を自動的に制御してネットワークデータを集める。そのネットワークデータに基づき、既知のエキスパートシステムがネットワークの問題を自動的に識別する。
【0011】
しかし、既知のエキスパートシステムを使用してデータ通信ネットワークを自動的に診断することには問題が伴う。第1に、既知のエキスパートシステムは、経験の浅いオペレータのように、屡々大量の不必要な情報を集める。
【0012】
第2に、既知のエキスパートシステムは屡々、集めたデータを非能率且つ非効果的な方法で解析し、翻訳する。
【0013】
第3に、既知のエキスパートシステムはオペレータの対話および制御を考慮していない。既知のエキスパートシステムでは、オペレータが命令を送って既知のエキスパートシステムを始動させる。しかし、一旦始動すると、既知のエキスパートシステムはオペレータの命令を完了するまで実行する。既知のエキスパートシステムはオペレータにステータス情報を提供しないことが非常に多いため、(一旦エキスパートシステムが始動すると)オペレータは既知のエキスパートシステムとは対話しない。また、一旦始動すると、既知のエキスパートシステムはオペレータの命令には応答しないので、オペレータは既知のエキスパートシステムを制御しない。
【0014】
そのようなオペレータによる対話および制御は、経験の浅いオペレータおよび熟練オペレータの双方にとって重要である。
【0015】
経験の浅いオペレータにとって、このような対話および制御は、学習という目的のために重要なことである。経験の浅いオペレータに対話および制御を提供することにより、その経験の浅いオペレータは、ツールの制御方法およびネットワークの問題の識別方法を学習する。
【0016】
熟練したオペレータにとって、このような対話および制御は診断プロセスを一層正確にするために重要である。熟練したオペレータに対話および制御を提供することにより、その熟練したオペレータは、その経験および知識を引出してエキスパートシステムの動作の確認または修正を行うことができる。このような確認および修正により、最終的には一層正確で効果的な診断プロセスが生じる。
【0017】
それ故、効率良く且つ効果的にデータを集め、解析し、及び翻訳し、またオペレータによる対話および制御を考慮した、データ通信ネットワークを自動的に診断するエキスパートシステムが必要である。
【0018】
【課題を解決するための手段】
本発明は、データ通信ネットワークを診断するエキスパートシステムを企図するものである。このエキスパートシステムは、ランドマークデータ抽出パラダイムに従って動作する。ランドマークデータ抽出パラダイムに従って動作することにより、本発明のエキスパートシステムはデータを効率良く且つ効果的に、収集し、解析し、翻訳する。
【0019】
ランドマークデータ抽出パラダイムによれば、ランドマークはネットワークデータを翻訳したものである。したがって、ランドマークはネットワークの問題を示すものである。
【0020】
本発明のエキスパートシステムは、ランドマークを検出し、次いでその検出したランドマークを翻訳してネットワーク問題が存在するか否か判定することにより、データ通信ネットワークを診断する。
【0021】
ランドマークは、ネットワークデータを収集し、次いでそのネットワークデータを翻訳してランドマークが存在するか否かを判定することにより検出される。その代りに、ランドマークのうちの一つを選択し、ネットワークデータを収集し、そのネットワークデータを翻訳して前記選択されたランドマークが存在するか否かを判定し、その選択されたランドマークが存在する場合には関連するランドマークを識別し、別のネットワークデータを集め、その別のネットワークデータを翻訳して前記関連するランドマークが存在するか否かを判定する、といった方法でも、ランドマークは検出される。
【0022】
本明細書では、「質問」、「問題」、および「仮説」という用語は、特に記述しない限り同義である。また「副次質問」および「ランドマーク」という用語も特に記述しない限り同義である。更に「データ」および「返答」という用語も特に記述しない限り同義である。
【0023】
本発明の別の特徴および長所の他、本発明の様々な実施例の構造および動作も図面を参照して以下及び特許請求の範囲に詳細に説明する。図面において、類似する参照番号は、同一の、または機能的に同様の構成要素を示すものである。
【0024】
【実施例】
1.ランドマークデータ抽出パラダイム
本発明は、データ通信ネットワーク142 を自動的に診断するエキスパートシステム102 を企図するものである。本発明の好適な一実施例によれば、エキスパートシステム102 はランドマークデータ抽出パラダイムに従って動作する。
【0025】
図34は、データ通信ネットワーク142 を診断する従来の方法を示す。データ2304は、オペレータが(電圧計、マルチメータ、スペクトルアナライザ、およびプロトコルアナライザ等の各種測定装置を使用して)データ通信ネットワーク142を監視することにより収集したネットワーク情報を表す。このデータ2304は、未加工、未解析、及び未翻訳の情報を表している(データ2304は、或る基本の解析を具体的に表現することもあるが、このような解析はフォーマット化及び表示等の目的の場合に限られている)。従来、オペレータはデータ2304を解析し、翻訳してネットワーク問題2302が存在するか否かを判定しなければならない。
【0026】
データ通信ネットワーク142 を診断する従来の方法は、下記の理由で欠点がある。第1に、ネットワーク問題2302を識別するのにどのデータ2304が必要となるかは先験的に知られていないため、莫大な量のデータ2304を収集しなければならない。たとえば、ネットワーク問題2302Aが存在することを判定するにはデータ2304A,2304C,2304D,2304Eだけが必要である。したがって、ネットワーク問題2302Aだけしか存在しない場合には、データ2304B,2304F,2304Nを収集することは余分である。しかし、ネットワークを診断する従来の方法によれば、どのネットワーク問題2302が存在するかは先験的にはわかっていない。したがって、ネットワーク問題2302Bが存在するか否かは先験的にわかっていないので、データ2304B,2304F,2304Nをも集めなければならない。結局、すべてのデータ2304を集めなければならない。
【0027】
第2に、データ通信ネットワーク142 を診断する従来の方法はオペレータによってすべての解析および翻訳が行われるので欠点がある。したがって、データ2304の収集後は、オペレータが知識および経験を非常に豊富に持っていない限り、ネットワーク問題2302をオペレータが識別することはできない。データ2304が大量であるため、熟練したオペレータでさえネットワーク問題2302を有効に且つ効率的に識別することはできない。
【0028】
上述の問題に対する従来の解決法は、既知のエキスパートシステムを使用してデータ通信ネットワーク142 を診断することである。既知のエキスパートシステムは屡々、図34に示す従来の方法を自動化したものである。したがって、既知のエキスパートシステムには図34に示した従来の方法と同じ欠点がある。
【0029】
図35は本発明の一好適実施例によって動作するデータ通信ネットワーク142 を診断する方法を示すものである。
【0030】
本発明の好適実施例によれば、エキスパートシステム102 はランドマーク2402に従ってネットワーク142 を診断する。ランドマーク2402はデータ抽出である。より詳細に述べれば、ランドマーク2402はネットワーク問題2302の有用な特性を反映するデータ2304の定義済み翻訳である。
【0031】
ランドマーク2402は、未加工、未解析、及び未翻訳のデータ2304とネットワーク問題2302との間の中間ステップを示す。図35に示すように、ランドマーク2402は存在する可能性のあるネットワーク問題2302を示すものである。たとえば、ランドマーク2402Aが存在する場合、ネットワーク問題2302Aが存在する可能性がある。ランドマーク2402Bが存在する場合には、ネットワーク問題2302Aまたはネットワーク問題2302Bが存在する可能性がある。
【0032】
また、ランドマーク2402はネットワーク問題2302を確認するものである。たとえば、エキスパートシステム102 がネットワーク問題2302Aが存在すると推測する場合、エキスパートシステム102 は、ランドマーク2402Aおよびランドマーク2402Bの双方が存在するか否かを判定することによりその推測を確認することができる。ランドマーク2402Aおよびランドマーク2402Bの双方が存在する場合にネットワーク問題2302Aが存在する。そうでない場合にはネットワーク問題2302Aは存在しない。
【0033】
ランドマーク2402は、その関連するデータ2304が存在する場合に存在する。したがって、エキスパートシステム102 は、データ2304A,2304C,2304D,2304Eが存在するか否か判定することにより、ランドマーク2402Aおよびランドマーク2402Bが存在するか否かを判定することができる。
【0034】
ランドマーク2402に従ってデータ通信ネットワーク142 を診断することにより上述の従来の方法によって生じる問題が解決される。第1に、ランドマーク2402を使用してデータ通信ネットワーク142 を診断することにより、収集しなければならないデータ2304の量が大幅に減る。たとえば、エキスパートシステム102 は、ランドマーク2402Aおよびランドマーク2402Bが存在するか否かを判定することにより、ネットワーク問題2302Aが存在するという推測の確認を行う。ランドマーク2402Aおよびランドマーク2402Bが存在するか否かを判定するためには、エキスパートシステム102 はデータ2304A,2304C,2304D,2304Eだけを集めればよい。したがって、エキスパートシステム102 はすべてのデータ2304を集める必要がない。
【0035】
第2に、ランドマーク2402を使用してデータ通信ネットワーク142 を診断することにより、データ通信ネットワーク142 の実際の診断中に必要なデータ2304の解析および翻訳が大幅に減少する。これによりエキスパートシステム102 の有効性および効率が向上する。
【0036】
定義により、ランドマーク2402は、ネットワークの問題2302の有用な特性を反映するデータ2304の定義済み翻訳を表す。換言すれば、ランドマーク2402は、ネットワーク問題2302が存在するか否かを判定するのに必要なデータ2304の解析および翻訳のほとんどを具体的に表現するものである。このような解析および翻訳は、ネットワーク142 が実際に診断されている間ではなく、ランドマーク2402が定義されている間に行われる。したがって、ランドマーク2402を使用してネットワーク142 を診断する場合には、エキスパートシステム102 の一部についての限られた解析および翻訳を必要とする。エキスパートシステム102 は、ランドマーク2402が存在することを確認するのに所定のデータ2304を収集するだけでよい。ランドマーク2402が存在すれば、ネットワーク問題2302が存在する。
【0037】
本発明の好適実施例に従ってデータ通信ネットワーク142 を診断する図35の方法を図38により詳細に示す。
【0038】
ステップ2750で、ネットワーク問題2302が定義される。
【0039】
ステップ2706で、ネットワーク問題2302についてのランドマーク2402が定義される。本発明の好適実施例では、ランドマーク2402には、(1)オペレータが検出し得るネットワーク挙動(このようなランドマーク2402はシンプトン(symptom)とも呼ばれる)、および(2)プロトコルアナライザ138 のような特別なツールを使用するエキスパートシステム102 だけが検出し得るネットワーク挙動がある。いずれの場合でも、ランドマーク2402は、通常、ランドマーク2402がデータ通信ネットワーク142 上の異常挙動を示すように定義される。このような異常挙動はネットワーク問題2302を示すものである。
【0040】
ランドマーク2402Aの例には、(1)ファイル転送の途中での接続の切断、(2)正常よりはるかに高いネットワークトラフィック、(3)ビーコントークンリング、(4)ICMPリダイレクトメッセージ、および(5)所定のしきいを越えるプロトコル違反の数、が含まれ得る。本発明の好適実施例についての他のランドマーク2402Aは以下の章で明らかにする。
【0041】
ランドマーク2402Aは診断中のデータ通信ネットワーク142 の特定の形式によって変ることがある。ここに述べる説明に基き、当業者はその特定のデータ通信ネットワーク142 についてランドマーク2402を定義することができるであろう。ステップ2710で、ランドマーク2402を検出するのに必要なデータ2304を定義する。そのデータ2304は、電圧計、マルチメータ、スペクトルアナライザ、およびプロトコルアナライザ138 のような測定装置を用いて行われる測定を表すことができる。データ2304はまた、オペレータに尋ねる質問を表すこともできる。ここに述べる説明に基き、当業者はランドマーク2402を検出するために必要なデータ2304を定義することができる。
【0042】
ステップ2714で、エキスパートシステム102 はランドマーク2402の一つを選択して処理を行う。たとえば、図35でエキスパートシステム102 がランドマーク2402Aを選択すると仮定する。
【0043】
ステップ2718で、エキスパートシステム102 はステップ2714で選択したランドマーク2402の存在を確認または却下するために必要なデータ2304を収集する。上述の例においてエキスパートシステム102 は、データ2304Aおよびデータ2304Cを得るために、必要な測定を行い、必要なオペレータの問い合わせを要求する。ステップ2722で、エキスパートシステム102 は、ステップ2714で選択したランドマーク2402が存在するか判定する(すなわち、エキスパートシステム102 は、ステップ2714で選択したランドマーク2402の確認を行う)。この判定はステップ2718で収集したデータ2304に基いて行われる。(図38には示してないが、この判定は、存在する他のランドマーク2402に基いて行うこともできる。すなわち、エキスパートシステム102 は、関連するデータ2304が存在する場合に一定のランドマーク2402が存在し、関連するランドマーク2402が存在する場合に他のランドマーク2402が存在する階層に従って動作することができる。)
【0044】
ランドマーク2402が存在しない場合には、エキスパートシステム102 はステップ2714に戻って今処理したばかりのランドマーク2402とは無関係のランドマーク2402を処理する。上述の例で、ランドマーク2402Aはランドマーク2402Cおよびランドマーク2402Dとは無関係である。これは、それらがそれぞれ異なるネットワーク問題2302Aおよびネットワーク問題2302Bに関連するためである。
【0045】
また、ランドマーク2402が存在する場合には、ステップ2726で、エキスパートシステム102 は、今処理されたランドマーク2402が未だ処理されていない他のランドマーク2402に関連しているか否かを判定する
。上述の例では、ランドマーク2402Aはランドマーク2402Bに関係している。これは、ランドマーク2402Aおよびランドマーク2402Bが同一のネットワーク問題2302Aに関係しているためである。更に、そのランドマーク2402Bは未だ処理されていない。
【0046】
今処理したばかりのランドマーク2402が未だ処理されていない他のランドマーク2402に関連している場合、エキスパートシステム102 はステップ2736を実行する。ステップ2736で、エキスパートシステム102 は、次の、未処理ではあるが、関連しているランドマーク2402を選択して処理する。エキスパートシステム102 は、次にステップ2718に戻り、ステップ2736で選択したランドマーク2402を処理する。かくして、ステップ2718,2722,2726,2736により確定される制御ループを実行することにより、エキスパートシステム102 は、関連するランドマーク2402を処理して関連するランドマーク2402が存在するか否かを判定する。
【0047】
ネットワーク問題2302に関係する関連するランドマーク2402の充分な組み合わせが確認される場合にはネットワーク問題2302が確認される。これを楕円形部分2730で表す。
【0048】
一般に、ネットワーク問題2302を確認するために全ての関係ランドマーク2402を確認する必要はない。ネットワーク問題2302は、その関係ランドマーク2402の充分な組み合わせが確認される場合に確認される。たとえば、ネットワーク問題2302Bを確認するためにランドマーク2402B,2402C,2402Dを確認する必要はない。ランドマーク2402Bおよびランドマーク2402Dの確認、または恐らくはランドマーク2402Cのみの確認でさえ、ネットワーク問題2302Bを確認するには充分である。
【0049】
ネットワーク問題2302を確認するための組み合わせは規則で規定されている。エキスパートシステム102 は規則にしたがって動作する。この規則を以下に説明する。
【0050】
2.仮説および確認プロセス
本発明の好適実施例では、エキスパートシステム102 は仮説および確認プロセス2550を使用して通信ネットワーク142 を診断する。仮説および確認プロセス2550を図36に示す。
【0051】
仮説および確認プロセス2550によれば、データ通信ネットワーク142 は、まず最初にネットワーク問題2302の仮説をたて(ステップ2506)、次いでそのネットワーク問題の仮説を確認または却下する(ステップ2510)ことにより診断される。ネットワーク問題2302は前向き規則を使用してその仮説がたてられる。ネットワーク問題の仮説は後向き規則を使用して確認されたり却下されたりする。前向き規則および後向き規則については以下の章で説明する。
【0052】
図36に示したように、ネットワークデータ2304は、ネットワーク問題2302の仮説をたてる(ステップ2506)ためにネットワーク142 を監視する(楕円形部分2516)ことにより収集される。ネットワーク問題の仮説を確認または却下する(ステップ2510)ため、ネットワーク142 を更に監視して(楕円形部分2520)別のネットワークデータ2304を集める。
【0053】
本発明の好適実施例において、仮説および確認プロセス2550は、上述のランドマークデータ抽出パラダイムに従って動作する。図37はその仮説および確認プロセス2550を一層詳細に示すものであり、ランドマークデータ抽出パラダイムによる影響が明らかとなっている。
【0054】
ステップ2606で、本発明のエキスパートシステム102 は一次ランドマークを選択する。
【0055】
ランドマーク2402は一次ランドマークまたは二次ランドマークのいずれかに分類される。一次ランドマークはネットワーク問題2302の最初の指示子であるランドマーク2402である。一次ランドマークは、確認および却下を行うのに比較的都合がよい。一次ランドマークが存在する場合には、関連するネットワーク問題が存在するという妥当な確率が存在し、それは確認されるべきものである。
【0056】
二次ランドマークはネットワーク問題2302を確認するのに使用される。二次ランドマークは、一次ランドマークより一層信頼性の高い、ネットワーク問題2302の指示子である。しかし、二次ランドマークは、確認および却下を行うのにはあまり都合が良くない。
【0057】
ランドマーク2402は、ネットワーク142 を診断するのに必要なデータ収集プロセスを更に減らすために一次ランドマークおよび二次ランドマークとして分類される。ネットワーク142 を診断するのに、エキスパートシステム102 は、一次ランドマークの存在を確定するのに充分なデータ2304を収集するだけでよい。一次ランドマークが存在しない場合には、エキスパートシステム102 は、別のデータ2304を収集して二次ランドマークの存在を確定する必要はない。エキスパートシステム102 は、一次ランドマークが存在する場合に限り、データを集めて二次ランドマークの存在を確定する必要がある。
【0058】
図35のランドマーク2402Bが一次ランドマークであると仮定する。またランドマーク2402A,2402C,2402Dが二次ランドマークであると仮定する。したがって、ステップ2606で、エキスパートシステム102 はランドマーク2402Bを選択する(複数の一次ランドマークが屡々存在する)。
【0059】
ステップ2610で、エキスパートシステム102 は、ステップ2606で選択した一次ランドマークが存在するか否かを判定するためにツールを選択する。このようなツールにはプロトコルアナライザ138 による測定が含まれる。更に、ランドマークの確認を入力する機会がオペレータに与えられる(これは、以下に説明するステップ2620に示されている)。このようなオペレータ入力は、請求される(エキスパートシステム102 がオペレータに入力を要求する)ものと、請求されない(オペレータがエキスパートシステム102 からの事前の要請なしに情報を入力する)ものとのいずれとすることもできる。図35において、エキスパートシステム102 は、データ2304Dおよびデータ2304Eを得るのに充分なツールを選択する。
【0060】
次いでエキスパートシステム102 はステップ2614またはステップ2620のいずれかを実行する。エキスパートシステム102 はまた、ステップ2614,2620の両ステップをどんな順序ででも行うことができる。
【0061】
ステップ2614で、エキスパートシステム102 は、選択された一次ランドマークの存在を確定するのに必要なデータ2304を得るために、ステップ2610で選択したツールを使用する。図35では、エキスパートシステム102 はツールを使用してデータ2304Dおよびデータ2304Eを得ている。
【0062】
ステップ2620で、上述のように、エキスパートシステム102 は、オペレータからの請求されないデータまたは確認された一次ランドマークを受信することができる(ステップ2620はそのようなデータをオペレータが入力した場合のみ実行される)。したがって、ステップ2620で、オペレータは選択された一次ランドマークが存在することを指示することができる。オペレータがそのような情報を入力する場合、エキスパートシステム102 は、選択された一次ランドマークの存在を確定するためにステップ2610およびステップ2614を実行する必要はない。
【0063】
ステップ2620により示したように、エキスパートシステム102 は、(1)一次ランドマークを確認してから二次ランドマークを確認するか、または(2)オペレータからの確認された一次ランドマークを受信した後に二次ランドマークを確認するかのいずれかによりネットワーク142 を診断する。したがって、エキスパートシステム102 は、オペレータからの確認された一次ランドマークを受信した場合には、ネットワーク問題2302を検出するために一次ランドマークを確認する必要がない。
【0064】
ステップ2624で、エキスパートシステム102 は選択された一次ランドマークが存在するか否かを判定する。この判定はステップ2614およびステップ2620で収集したデータに基いて行われる。図35においてデータ2304Dおよびデータ2304Eが存在する場合には、一次ランドマーク2402Bが存在する。一次ランドマーク2402Bが存在するか否かは、データ2304Dおよびデータ2304Eを規則によるしきい値に対して比較することによって決まる。
【0065】
一次ランドマーク2402Bが存在しない場合、エキスパートシステム102 は、試験すべき他の一次ランドマーク2606を選択するためにステップ2606に戻る。上述のように、図35に示した例とは対照的に、複数の一次ランドマークが屡々定義される。一旦すべての一次ランドマークが試験されてしまうと、エキスパートシステム102 は最初の一次ランドマークから開始して繰返す。
【0066】
また、一次ランドマークが存在する場合には、ステップ2628でエキスパートシステム102 は、一次ランドマークの存在に基づき、一つ以上のネットワーク問題2302の存在について仮説をたてる。図35では、一次ランドマーク2402Bが存在するので、エキスパートシステム102 は、ネットワーク問題2302Aおよびネットワーク問題2302Bが存在するという仮説をたてる。
【0067】
ステップ2632で、複数のネットワーク問題2302の仮説がステップ2628でたてられた場合、エキスパートシステム102 は、その仮説ネットワーク問題2302に処理についての優先順位をつける。ネットワーク問題2302は優先順位に従って順に並べられる。本発明の好適実施例では、ネットワーク問題2302は各々頻度値および重大度値が割当てられる。これらの2つの値は優先順位を決定するのに使用される。頻度とはネットワーク問題2302が発生する割合を言う。重大度とはネットワーク問題2302がネットワーク142 に与える影響を言う。高頻度値および高重大値を有するネットワーク問題2302には高い優先順位が割当てられる。
【0068】
ステップ2632で、仮説ネットワーク問題2302に優先順位をつけた後、エキスパートシステムシステム102 は、処理について最高の優先順位を有する、仮説ネットワーク問題2302を選択する。図35においては、エキスパートシステム102 がネットワーク問題2302を選択して処理するものと仮定している。
【0069】
ステップ2636で、エキスパートシステム102 は、ステップ2632で処理のために選択された仮説ネットワーク問題に関連する二次ランドマークを識別する。図35において、エキスパートシステム102 は、二次ランドマーク2402C,2402Dを識別する。
【0070】
ステップ2640で、エキスパートシステム102 は、ステップ2636で識別した二次ランドマークが存在するか否かを判定するツールを選択する。図35で、エキスパートシステム102 は、データ2304Fおよびデータ2304Nを得るのに充分なツールを選択する。データ2304Eはあらかじめ得られていたことに注目されたい。エキスパートシステム102 は次いでステップ2644またはステップ2690を実行する。エキスパートシステム102 は、両ステップ2644,2690をどんな順序ででも実行することができる。
【0071】
ステップ2644で、エキスパートシステム102 は、識別された二次ランドマークの存在を確定するのに必要なデータ2304を得るためにステップ2640で選択されたツールを使用する。図35において、エキスパートシステム102 はツールを使用してデータ2304Fおよびデータ2304Nを得る。
【0072】
ステップ2690で、エキスパートシステム120 は、請求されないデータまたは確認された二次ランドマークをオペレータから受け取ることができる(ステップ2690はオペレータがそのようなデータを入力する場合に限り行われる)。したがって、ステップ2690で、オペレータは、選択された二次ランドマークが存在することを示すことができる。オペレータがそのような情報を入力する場合、エキスパートシステム102 は、選択された二次ランドマークの存在を確定するためにステップ2640,2644を実行する必要はない。
【0073】
ステップ2648で、エキスパートシステム102 は、識別された二次ランドマークが存在するか否かを判定する。この判定はステップ2644およびステップ2690で収集されたデータに基いて行われる。図35では、データ2304Fおよびデータ2304Nが存在する場合に二次ランドマーク2402C,2402Dが存在する。
【0074】
上述のように、関連するネットワーク問題2302を確認するために、識別された二次ランドマークのすべてを確認する必要はない。それどころか、ネットワーク問題2302は、その関連するランドマーク2402の充分な組み合わせが確認された場合に確認される。これらの組み合わせは(ORおよびAND演算子を使用して)論理的な組み合わせとして表され、知識ベース238 の規則に含まれるものである。識別された二次ランドマークの充分な組み合わせが存在しない場合、関連するネットワーク問題2302は存在しない。エキスパートシステム102 は、制御ライン2666を取り、ステップ2656を実行する。
【0075】
識別された二次ランドマークの充分な組み合わせが存在する場合には、関連するネットワーク問題2302が存在する。これを楕円形部分2652に示す。エキスパートシステム102 はネットワーク問題2302が存在することをオペレータに知らせる。次いでエキスパートシステム102 はステップ2656を実行する。
【0076】
ステップ2656で、エキスパートシステム102 は、未だ処理されていない仮説ネットワーク問題が別に存在するか否かを判定する(仮説ネットワーク問題にはステップ2632で優先順位が与えられていることを想起されたい)。
【0077】
別の仮説ネットワーク問題が残っている場合、エキスパートシステム102 はステップ2660を実行する。ステップ2660で、エキスパートシステム102 は、未だ処理されていない、最高優先順位を有する、仮説ネットワーク問題を選択する。次いでエキスパートシステム102 はステップ2636に戻る。
【0078】
別の仮説ネットワーク問題が残っていない場合は、エキスパートシステム102 は試験すべき他の一次ランドマーク2606を選択するためにステップ2606に戻る。次の章では、ランドマークデータ抽出パラダイムと仮説及び確認プロセス2550に従って動作する特定のエキスパートシステム102 について説明する。
【0079】
3.ユーザ制御エキスパートシステム
本発明の好適実施例において、データ通信ネットワーク142 を自動的に診断するエキスパートシステム102 は、上述のランドマークデータ抽出パラダイムと仮説および確認プロセス2550に従って動作する。このエキスパートシステム102 は、オペレータによる対話および制御を考慮したものである。
【0080】
次の章で、本発明の好適実施例について説明する。
【0081】
3.1 動作環境
図1は本発明の好適実施例が動作する環境を示している。本発明の好適実施例はアプリケーションプログラム102 および事象ログ106 を備えている。アプリケーションプログラム102 は、データ通信ネットワーク142 を自動的に診断するプロトコルアナライザ138 を制御するエキスパートシステムを表している。
【0082】
本発明の好適実施例はコンピュータプラットホーム104 上で動作する。コンピュータプラットホーム104 は、中央処理装置(CPU)116 と、ランダムアクセスメモリ(RAM)114 と、および入出力インタフェース118 とを備えたハードウェア装置112 を備えている。コンピュータプラットホーム104 はオペレーティングシステム108 を備えており、マイクロ命令コード110 を備えることもできる。端末機126 、データ格納装置130 、およびプリンタ134 等の各種周辺構成要素をコンピュータプラットホーム104 に接続することができる。
【0083】
また、コンピュータプラットホーム104 は、ソフトウェアコマンド122 およびプロトコルアナライザ138 を有するプロトコルアナライザインタフェース120 も備えることができる。
【0084】
本発明の好適実施例では、コンピュータプラットホーム104 は、ヒューレット・パッカード(HP)社のVectraパーソナルコンピュータであり、または、インテル(Intel)80286またはそれより高級なマイクロプロセッサをベースとするインターナショナル・ビジネス・マシン(IBM)社のコンパチブルパーソナルコンピュータであればどれでも良い。オペレーティングシステムは、IBMまたはマイクロソフト(Microsoft)またはIBM/マイクロソフトコンパチブル・ディスクオペレーティングシステム(DOS)である。アプリケーションプログラム102 は、スモールトーク(Smalltalk)/Vコンピュータプログラミング言語で書かれている。ソフトウェアコマンド122 は、C、フォース(Forth)、およびアセンブリコンピュータプログラミング言語で書かれている。
【0085】
3.2 高レベル構造および動作
本発明の好適実施例の構造を図2に示す。図2は、本発明と、事象ログ106 、プロトコルアナライザインタフェース120 、およびプロトコルアナライザ138 との間の相互作用もまた示している。図2は更に、本発明の構成要素(エンティティとも言う)である事象ログ106 と、プロトコルアナライザインタフェース120 と、プロトコルアナライザ138 との間のコマンド、質問、およびデータの転送を示している。図2において、コマンド、質問、データは、C、Q、Dでそれぞれ示されている。
【0086】
上述のように、本発明の好適実施例は、事象ログ106 およびアプリケーションプログラム102 を備えている。アプリケーションプログラム102 は、黒板202 、促進器208 、ユーザインタフェース250 、およびモジュール214 を備えている。モジュール214 は通常は総称モジュール214 Aで表される。モジュール214 は、規則モジュール214B 、測定モジュール214C 、遠隔モジュール214D 、およびユーザ質問モジュール214E を備えている。
【0087】
本発明の好適実施例は、知識ベース238 およびデータベース210 ,236 もまた備えている。
【0088】
本発明の好適実施例は次のように動作する。事象ログ106 が質問を受信する。たとえば、その質問は、「ケーブルXYZは許容レベル内で動作しているか?」というようなものとすることができる。
【0089】
事象ログ106 が促進器208 に質問を送り、促進器208 がその質問を黒板202 に掲示する。黒板202 には複数の質問が存在することができる。
【0090】
定期的に、促進器208 は、黒板202 上の最も緊急な質問を選択し、その選択した質問に対して最良に答えることができるモジュール214 を識別するためにそのモジュール214 をポーリングする。次に、促進器208 は、選択された質問に答えるよう、識別されたモジュール214 に命令する。
【0091】
選択された質問に答えるにあたり、識別されたモジュール214 は、副次質問を行うことができる。たとえば、選択された質問が「ケーブルXYZが許容レベル内で動作しているか?」であれば、識別されたモジュール214 は「ケーブルXYZに過剰な雑音が存在するか?」および「ケーブルXYZの導通に破壊が存在するか?」という副次質問を行うことができる。これら副次質問は、事象ログ106 および促進器208 を介して黒板202 に掲示され、その副次質問に答えるのに最良のモジュール214 を促進器208 が識別する。副次質問に答えるモジュール214 は、選択された質問を要求するモジュールと同じでなくてもよい。選択された質問に答えるモジュール214 は、規則モジュール214B であってもよい。また副次質問に答えるモジュール214 は、測定モジュール214C およびユーザ質問モジュール214Eであってもよい。
【0092】
識別されたモジュール214 は、副次質問に答え、その副次質問の答を事象ログ106 および促進器208 を介して黒板202 上に掲示する。促進器208 は、選択された質問(即ち、「ケーブルXYZは許容レベル内で動作しているか?」)に答えるモジュール214 に、副次質問の答が黒板202 上で手に入ることを知らせる。モジュール214 は、その副次質問の答を使用して選択された質問に答える。
【0093】
本発明の上述の動作中、エキスパートシステム102 は、ステータスおよび進捗メッセージをユーザインタフェース250 を介してオペレータに送ることによりオペレータとの対話を行う。本質的には、事象ログ106 に送られる質問およびデータの全てがユーザインタフェース250 に送られて、その表示がオペレータに対して行われる。
【0094】
加えて、オペレータは、本発明の上述の動作中のどんな時でもエキスパートシステム102 を制御することができる。たとえば、オペレータはユーザインタフェースを介してエキスパートシステムに質問を送ることができる。また、オペレータは、促進器が選択した黒板上の最も緊急な質問を無効にすることができる。更に、オペレータは、質問に答えるために選択されたモジュール214 により生成された副次質問を変更することができる。
【0095】
本発明の構成要素については、以下の章および本発明の動作を説明する第3.3 章で更に説明する。
【0096】
3.2.1 黒板
黒板202 は促進器208 に関連するものであり、通信媒体である。この通信媒体である黒板202 を介してモジュール214 が通信を行い、互いに協同動作する。モジュール214 は診断プロセス全体にわたって専門の機能を実行する。たとえば、測定モジュール214 Cは、プロトコルアナライザ138 にアクセスしてネットワーク上のデータを測定する。ユーザ質問モジュール214 Eはネットワークに関するデータについてオペレータに問い合わせる。
【0097】
しかし、一つのモジュール214 だけではネットワーク142 を診断することはできない。これは、モジュール214 が、ネットワーク142 を診断するのに必要なすべての情報を個別に生成することができないからである。たとえば、ユーザ質問モジュール214 Eは、プロトコルアナライザ138 にアクセスしてネットワーク上のデータを測定することができない。したがって、モジュール214 は、情報を生成してその情報を黒板202 に掲示することによりネットワーク142 を集合的に診断する。モジュール214 はネットワーク142 を診断するために黒板202 からの情報を全て用いる。
【0098】
図2に示すように、促進器208 は、黒板202 との間のアクセスを制御する。これについては次章で更に説明する。
【0099】
3.2.2 促進器
促進器208 は、要求を満たす(即ち、質問に答える)よう情報を生成するために適切なモジュールを識別する。黒板202 にある質問は、相対的重要度および緊急度に従ってソートされる。促進器208 は、黒板202 にある最も重要な質問を識別する。次いで促進器208 は、モジュール214 にポーリングして、識別された質問に最良に答えることができるモジュール214 を識別する。促進器208 は次いで、その識別したモジュール214 に、識別された質問に答えるよう指令する。
【0100】
3.2.3 ユーザインタフェース
ユーザインタフェース250 は、本発明のエキスパートシステム102 と人間のオペレータとの間のインタフェースを提供するものである。ユーザインタフェース250 を介して、エキスパートシステム102 が、そのエキスパートシステム102 により答えられつつある質問に関するステータスおよび更新メッセージをオペレータに提供することにより、オペレータとの対話を行う。また、ユーザインタフェース250 を介して、オペレータは、適切な命令およびデータをエキスパートシステム102 に送ることにより、エキスパートシステム102 の動作を制御する。
【0101】
3.2.4 総称モジュール
本章では総称モジュール214 Aについて説明する。本発明のエキスパートシステム102は、規則モジュール214B、測定モジュール214C、遠隔モジュール214D、およびユーザ質問モジュール214 E(これら特定のモジュール214 については以下の章で説明する)等の多数の異なるタイプのモジュール214 に適応するものである。実際に、本発明のエキスパートシステム102 は、この章に説明されるような総称モジュール214 Aの特性に一般的に合致するどんなモジュールにも適応する。
【0102】
総称モジュール214 Aは次の機能を行う。第1に、総称モジュール214 Aは、促進器208 から質問およびデータを受け取ることができる。
【0103】
第2に、総称モジュール214 Aは、データおよび質問を促進器208 に送ることができる。
【0104】
第3に、総称モジュール214 Aは、審議中の質問に関して促進器208 からポーリングを受ける。そのポーリングに応じて、総称モジュール214 Aは、審議中の質問に答える際の総称モジュール214 Aの有効性に関して促進器208 に推定を与える。
【0105】
第4に、審議中の質問に答えるために総称モジュール214 Aが促進器208 により選択された場合、総称モジュール214 Aは審議中の質問を処理して返答を生成する。審議中の質問を処理する際、総称モジュール214 Aは、事象ログ106 および促進器208 を介して黒板202 に掲示される副次質問を生成することができる。上述の機能を実行するにあたり、総称モジュール214 Aおよび促進器208 は、実際のデータおよび質問を交換することはできない。というよりは、総称モジュール214 Aおよび促進器208 は、黒板202 に掲示される実際のデータおよび質問を指すポインタを交換することができる。黒板202 にアクセスするためには、総称モジュール214Aを黒板202 に登録しなければならない。総称モジュール214Aが黒板202から返答を必要とする場合、総称モジュール214Aを消費を行うもの(以下、消費者と称す)として登録する。また総称モジュール214 Aが黒板202 に返答を与える場合には、総称モジュール214 Aを生成を行うもの(以下、生成者と称す)として登録する。総称モジュール214 Aは、消費者および生成者の双方として登録可能である。
【0106】
消費者モジュール214 は、他のモジュール214 により(即ち、生成者モジュール214 から)与えられた黒板202 上のデータを使用して質問に答える。生成者モジュール214 は、質問に答える際に他のモジュール214 (即ち、消費者モジュール214 )により使用されるためのデータを黒板に与える。消費者モジュール214 でもある生成者モジュール214 は他の生成者モジュール214 により与えられたデータを使用して、他の消費者モジュール214 により使用されるためのデータを生成する。
【0107】
モジュール214 の特定の機能は、その特定のモジュール214 の特定の信頼度(responsibilities)および能力により、総称モジュール214 Aの機能とは異なる。本発明のエキスパートシステム102 が適応するモジュール214 の例を次の章で説明する。
【0108】
3.2.4.1 規則モジュール
規則モジュール214 Bは消費者および生成者である。規則モジュール214 Bは、知識ベース238 にある規則に従って動作する推論エンジンである。規則モジュール214 Bは、知識ベース238 の規則を管理し、スケジュールし、適用して質問に答えたり質問を提起したりする。規則モジュール214 Bは、質問に対する応答を受け取り、その応答を用いて審議中の規則の継続を管理する。
【0109】
規則モジュール214 Bが質問を受ける場合、知識ベース238 からの幾つかの規則が質問を扱うことが出来る。規則モジュール214 Bは質問に答えるための最良の規則を起動させる。規則モジュール214 Bは、要求を満たす(即ち、質問に答える)ために更に規則を起動させることができる。後向き連鎖規則に限り、このように処理される。
【0110】
本発明のエキスパートシステムでは、いかなる数の論理規則モジュール214 Bも存在することができ、その場合、各規則モジュール214 Bは、知識ベース238 からの規則の実行を管理する。規則モジュール214 Bは、仮説(前向き)モジュール、確認(後向き)モジュール、およびランドマークモジュールに分類される。規則モジュール214 Bは、規則モジュール214 Bが実行している規則に従って分類される。
【0111】
文脈モジュールは消費者である。文脈モジュールは、問題解決プロセスについてのガイダンスを提供するために情報を要求する。文脈モジュールは、能動的に前向き連鎖を行って問題について仮説を生成することにより、最高レベルの目標を設定する。
【0112】
問題モジュールは、消費者および生成者である。問題モジュールは、文脈モジュールからの要求に応答することにより、仮説問題を調査する。これらの問題は、(ランドマーク等の)他の情報を要求してその応答を推論することによって調査される。
【0113】
ランドマークモジュールは、消費者および生成者である。ランドマークモジュールは、問題モジュールと類似しているが、測定結果および他の情報を使用してランドマークを推論する。ランドマークは、ネットワーク142 に伴う問題の仮説をたてて、その確認を行うために満たされなければならない必要条件である。
【0114】
3.2.4.2 測定モジュール
測定モジュール214 Cは、生成者であり、エキスパートシステム102 とプロトコルアナライザ138 との間のインタフェースを提供するものである。
【0115】
測定モジュール214 Cは、促進器208 から測定についての要求(質問とも言う)を受け取る。測定モジュール214 Cは、要求を、実際の選択命令、構成命令、および実行命令に変換する。測定モジュール214 Cは、プロトコルアナライザ120 に命令を送る。その命令は、プロトコルアナライザインタフェース120 の所定のソフトウェアコマンド122 を呼び出す。そのソフトウェアコマンド122 は、当初に要求された測定をプロトコルアナライザ138 に実行させる。
【0116】
プロトコルアナライザ138 は、プロトコルアナライザインタフェース120 を介して測定モジュール214 Cに測定結果を返す。測定モジュール214 Cは、その測定結果を黒板202 に適する形式に変換する。
【0117】
測定モジュール214 Cへの要求は、要求された測定の構成に対応する束縛変数と、要求された測定の結果に対応する非束縛変数とを有している。述語名は、実際の測定名である。その他の場合には、直接マッピングが可能である。測定モジュール214 Cからの応答は、測定結果に対応するすべての変数についての設定を伴う述語から構成されており、また構成を保持する変数は不変である。
【0118】
3.2.4.3 ユーザ質問モジュール
ユーザ質問モジュール214 Eは、オペレータとのインタフェースを提供するものである。ユーザ質問モジュール214 Eは、促進器208 から情報についての要求を受け取り、その要求をオペレータが質問することができる質問に変換する。次いで、ユーザ質問モジュール214 Eは、その要求を満たすのに適する形式にユーザ応答を変換する。
【0119】
3.2.4.4 遠隔モジュール
遠隔モジュール214 Dは、遠隔システムを問題解決プロセスに参加させるものである。たとえば、遠隔モジュール214 Dは、促進器208 からの質問を受け取ることができる。質問に答えるため、遠隔モジュール214 Dは、遠隔システムとネットワーク142 との間の対話に関する情報について遠隔システムにアクセスすることができる。そのような情報は、ネットワーク142 を診断するのに役立つ。
【0120】
遠隔モジュール214 Dは、消費者および/または生成者となることができる。遠隔システムは、本発明のエキスパートシステム102 からの情報を消費する一層高レベルの問題解決手段の一部となることができる。その代替策として、遠隔システムは、エキスパートシステム102 に問題解決を進めさせる情報を生成することができる。
【0121】
3.2.5 知識ベース
知識ベース238 は、規則モジュール214 Bにより使用される規則を備えている。規則モジュール214 Bは、知識ベース238 内の規則を使用して現存する事実および要求された事実に基き結果を推論する。その規則は、コストおよび確実性の因子を使用してスケジューリングをサポートし、伝達リスト探査(propagation list searchs)もまたサポートする。規則については以下の章で更に説明する。
3.2.6 データベース
エキスパートシステム102 は、データベース210 ,236 を備えている。
【0122】
データベース210 は、データの記述子に関する情報を備えている。データの記述子については以下の章で説明する。
【0123】
データベース236 は基底ラインデータベースおよびトポロジデータベースを備えている。基底ラインデータベースは、ネットワーク142 の基底ラインおよび正常状態に関する情報を備えている。基底ラインは、特定のネットワークの一定のパラメータについての正常値である。これらの値は、ネットワーク間で異なる。基底ラインの例として、平均衝突率、トラフィック率、ブロードキャスト率、外部トラフィック率、および一般経路がある。これらのパラメータの現在値が基底ラインとかなり異なる場合に、ネットワーク上に存在する可能性のある問題に関するランドマークが識別される。
【0124】
トポロジデータベースは、ノード位置、ケーブル接続、および架線装置の向き等の、ネットワーク142 のトポロジに関する情報を備えている。
【0125】
3.2.7 事象ログ
事象ログ106 は、エキスパートシステム208 の構成要素から質問およびデータを受け取る。事象ログ106 はまた、ユーザインタフェース250 を介してオペレータからの質問およびデータも受け取る。
【0126】
事象ログ106 は、受け取った質問およびデータを促進器208 に転送する。開始プロセス(以下の章で説明する)中に、促進器208 は、事象ログ106 が促進器208 に送るべきデータおよび質問の形式を、事象ログ106 に指定する。
【0127】
事象ログ106 が受け取る質問およびデータは、ユーザインタフェース250 に転送され、オペレータに対して表示される。このようにして、エキスパートシステム102 は、オペレータに対して進行状況およびステータスの情報を表示することによりオペレータとの対話を行う。オペレータに対して表示するためにユーザインタフェース250 に送られる質問およびデータの形式は、開始段階の間に指定することができる。
【0128】
3.3 詳細動作
データ通信ネットワーク142 を診断している間のエキスパートシステム102 の動作をこの章で詳細に説明する。
【0129】
3.3.1 初期設定
図3は、本発明のエキスパートシステム102 の初期設定プロセスのフローチャートを示すものである。初期設定プロセスは、オペレータからユーザインタフェース250を介して促進器208へ伝えられる起動(startup)命令およびリセット命令に応じて、促進器208 により実行される。
【0130】
初期設定プロセスのステップ306 で、促進器208 は、黒板202 内のすべての質問およびデータを空にする。
【0131】
ステップ310 で、促進器208 はモジュール214 を起動させる。モジュール214 がこのような起動に応答する仕方は、特定のモジュール214 の機能および信頼度によって決まる。
【0132】
たとえば、そのような起動に応答する規則モジュール214 Bの動作は、順向(proactive)診断に関係する。
【0133】
エキスパートシステム102 は、反応診断および順向診断を行う。反応診断とは、オペレータからの質問に応じてエキスパートシステム102 により行われるネットワーク142 の診断のことを言う。たとえば、オペレータは、(ユーザインタフェース250 を経由して)エキスパートシステム142 に対して「何故私の端末機は通信ネットワークに接続されないのか?」という質問を行う。エキスパートシステム102 は、オペレータの質問に答えるためにネットワーク142 を診断する。このような診断は、オペレータの質問に応じて行われるので、反応診断と呼ばれている。
【0134】
順向診断とは、エキスパートシステム102 の意志作用のみに基づいてエキスパートシステム102 により行われるネットワーク142 の診断のことを言う。順向診断は、オペレータの質問に応じては実行されない。そうではなく、順向診断は、(ユーザ質問モジュール214 Eを介してオペレータから情報が要求されない限り)オペレータの介在なしにエキスパートシステム102 により行われるネットワーク142 の定期的および自動的診断を意味する。
【0135】
順向診断は、特定の測定により提出され得る副次質問を確定する前向き規則を用いて開始される。前向き規則は、前向き規則の条件が満たされる場合に問題の質問を生成するものである。順向診断に関し、生成された質問は、ネットワーク問題が実際に存在するか否かを判定するために確認されなければならないネットワーク問題の仮説を表す。したがって、前向き規則は、仮説設定規則とも呼ばれる。
【0136】
たとえば、前向き規則R1は、条件C1=「過剰な衝突が存在するか?」を備えることができる。C1が真であれば、R1は仮説「ケーブルには雑音が多い」即ちこれと等価なQ1=「ケーブルには雑音が多いか?」を生成することができる。エキスパートシステム102 は、R1により生成された仮説を確認するためにQ1に答えなければならない。
【0137】
前向き規則は高度の信頼性を以てネットワーク問題を識別することができないということに注意されたい。前向き規則は、仮説を生成するものであって、結論を生成するものではない。したがって、前向き規則は、ネットワーク問題が存在することを確認するためには使用されない。そうではなく、前向き規則は、ネットワーク問題が存在するかもしれないという仮説をたてるために使用される。前向き規則は、(陸標が旅行者を一定地域に導くように)ランドマークを使用してネットワーク問題へ誘導するが、(通常は一つの陸標では旅行者を最終目的地に導くことができないように)ネットワーク問題を個々に確認することはできない。ランドマークデータ抽出パラダイムについては前の章で説明してある。
【0138】
前向き規則は、受動要素および能動要素を備えている。反応診断は受動要素を有する前向き規則を使用して行われる。受動要素は、オペレータ入力を受け取るまでエキスパートシステム102 が処理を行わないものである。たとえば、図31に受動要素を有する前向き規則を示す。同図においてエキスパートシステム102 は、オペレータが「性能不充分(poorPerformance)」という苦情を入力するまで「緊急」ステートメントを処理しない。受動要素はユーザシンプトンを表す。
【0139】
順向診断は、能動要素を有する前向き規則を使用して行われる。能動要素は、オペレータ入力を用いることなくエキスパートシステム102 が処理を行うことが出来るものである。
【0140】
反応診断および順向診断の両者について、前向き規則により仮説問題を確認するために、後向き規則が使用される。
【0141】
したがって、図3に示す初期設定プロセス中に、規則モジュール214 Bが順向診断を開始する。特に、ステップ314 で、規則モジュール214Bは知識ベース238を調査し、順向診断に関係する前向き規則を識別する。
【0142】
ステップ318 で、規則モジュール214 Bは、ステップ314 で識別された前向き規則に関係する質問を決定する。
【0143】
ステップ322 で、規則モジュール214 Bは、ステップ314 で識別された前向き規則の各々についての最初の質問に関係する事象を生成して送出する。その事象は、エキスパートシステム102 を通って移動するメッセージである。事象としては、質問を含むもの(以下、事象/質問と称す)または返答を含むもの(以下、事象/返答と称す)が可能である。本明細書では、「事象/質問」および「質問」という用語を置換可能に使用する。また、「事象/返答」および「返答」という用語を置換可能に使用する。
【0144】
事象/質問は、事象ログ106 および促進器208 を介して黒板202 に掲示される。これらの質問(およびその基礎をなす前向き規則)を順向様式で処理する仕方については、図9を参照して以下の章で説明する。
【0145】
ステップ326 で、促進器208 は、すべての質問およびデータを促進器208 に送るべきであることを事象ログ106 に指示する。
【0146】
3.3.2 診断動作
初期設定302 に続くデータ通信ネットワーク142 の診断中における本発明のエキスパートシステム102 の動作をこの章で説明する。
【0147】
図4を参照すると、初期設定302 に続いて、エキスパートシステム102 は、ステップ402 でデータ通信ネットワークの診断を開始する。
【0148】
ステップ408 で、エキスパートシステム102 は、事象ログ106 に事象が到達しているか否かを判定する。事象は、エキスパートシステム102 のエンティティ間を移動するメッセージである(上述のように、エキスパートシステム102 内のエンティティは、図2に示す構成要素である)。事象には、質問または質問に対する返答が含まれる。たとえば、事象/質問を「ケーブルXYZ上にいくつの衝突が発生しているか?」とし、その対応する事象/返答を「ケーブルXYZ上に毎秒10の衝突が生成している」とすることができる。
【0149】
エキスパートシステム102 内のエンティティは、事象ログ106 に事象を送ることにより、それ自体の間で通信を行う。事象ログ106 はライン254 により事象を促進器208 に送り、促進器208 はその事象を適切なエンティティに分配する。したがって、ステップ408 で事象ログ106 が事象ログ106 内に事象が存在すると判定した場合には、ステップ418 で事象ログ106 がその事象を促進器208 に送る。図4の残りのステップ(ステップ466 以外)は、促進器208 が、事象ログ106 から事象を受け取った後にその事象を適切なエンティティに分配する仕方を示す。ステップ422 で、促進器は、事象が質問(即ち、事象/質問)であるか返答(即ち、事象/返答)であるかを判定する。事象が事象/質問である場合、促進器208 は制御径路424 に従う。また事象が事象/返答である場合には、促進器208 は制御径路440 に従う。
【0150】
事象が事象/質問である場合、ステップ426 で促進器208 は事象/質問を黒板202 に載せる。上述のように、黒板202 は、事象を一時的に格納するRAM114 内の格納領域である。
【0151】
ステップ430 で、促進器208 は、既に黒板202 上に載っている事象/返答に事象/質問が関係しているか(即ち、既に黒板202 上に載っている事象/返答により事象/質問が答えられているか)否かを判定する。事象/返答は、ユーザインタフェース250 を介してオペレータによりまたはモジュール214 により、一層早い時期に黒板202 に掲示されていることが可能である。
【0152】
事象内の情報は、促進器208 が事象/質問を対応する事象/返答に突き合わせるのに充分なものである。たとえば、事象/質問および対応する事象/返答には、双方とも同じ識別コードを割当てることができる。
【0153】
事象/質問が、黒板202 に既に載っている事象/返答のうちの一つに関係している場合、促進器208 は制御径路432 を取る。また、事象/質問が、黒板202 に既に載っている事象/返答のいずれとも関係していない場合には、促進器208 は制御径路436 を取る。
【0154】
促進器208 が、ステップ422 で事象が事象/返答であることを確認した場合、ステップ442 で促進器208 は二つのタスクを実行する。まず、促進器208 は(可能ならば)下層質問について累積返答を生成する。次に、促進器208 はその累積返答を黒板202 に載せる。
【0155】
ここで、次の表1に示す一例について考えることとする。
【0156】
【表1】
【0157】
表1は基本質問Q0を示すものである。知識ベース238 からの規則R1,R2,R3が、Q0に対する明確な返答を提供する。詳細に言えば、R1が返答A1を、R2が返答A2を、R3が返答A3を提供する。
【0158】
A1が黒板202 に掲示されている(即ち、R1が完成してQ0に返答A1が与えられた)と仮定する。更に、ステップ442 で促進器208 がA2を処理中であると仮定する。ステップ442 で累積平均を生成するため、促進器208 は、A1とA2とを組み合せて、Q0に対する単一返答を示すCAを生成する。A3が始まる(R3がQ0に返答を与える)と、促進器208 が、ステップ442 でA1およびA2の累積返答(即ち、CA)とA3とを組み合せてCA’を、即ちQ0に対する新しい累積返答を生成する。上述のように、促進器208 は次いで累積返答CA’を黒板202 上に掲示する。
【0159】
本発明の好適実施例では、促進器208 は、単純平均を計算することにより累積返答を生成する。
【0160】
促進器208 が、下層質問に対する返答が利用可能である場合に限り累積返答を生成することに注目されたい。ここで(表1に関連する)表2について考える。
【0161】
【表2】
【0162】
R1は、二つの副次質問Q1および副次質問Q2を含んでいる。ステップ442 で事象/返答が、Q1に対する返答であるA4を表すと仮定する。Q2は返答を有さない。Q1およびQ2の両者に対する返答を利用することができないので、R1に基くQ0に対する返答を利用することができない。下層質問(即ち、Q0)に対する返答(即ち、A1)を利用することができないので、促進器208 は下層質問Q0に対する累積返答を生成しない。
【0163】
ステップ446 で、促進器208 は、事象/返答が完成しているか否かを確認する。他のモジュール214 がその仕事を行うのを援助するように事象/返答を伝えることができれば、事象/返答は完成している。たとえば、上述の筋書きにおいて、Q1が測定M1および測定M2によって決まると仮定する。Q1に対する返答を決定するにはM1およびM2が共に完成していなければならない。ステップ446 で、促進器208 がM1の結果を処理中であると仮定する。M2の結果は利用可能ではない。この筋書きにおいて、事象/返答(即ち、M1の結果)は、他のモジュール214 (この場合にはR1で表される)がその仕事を行うのを援助することができないので、その事象/返答は完成していない。
【0164】
ステップ446 で、事象/返答が完成していなければ、促進器208 が制御径路448 を取り、エキスパートシステム102 が別の事象をチェックする。上述の筋書きで、Q1はM2の結果が利用可能になるのを待つ。一旦M1およびM2が共に利用可能になると、Q1はR1に対する返答を生成する。このような事象/返答は、他のモジュール(即ち、R1)がその仕事を行うのを援助する(このシナリオでは、Q1に対する返答が、R1がQ0についての返答を生成するのを援助する)ので、その事象/返答は完成している。
【0165】
ステップ446 で、事象/返答が完成していれば、促進器208 は制御径路450 を取って事象/返答を処理し続ける。
【0166】
ステップ452 で、促進器208 は、事象/返答が、黒板202 に既に載っている事象/質問のうちのいずれかと関連しているか否かを判定する。事象/質問は、ユーザインタフェース250 を介してオペレータにより、またはモジュール214 により、一層早い時期に黒板に掲示させることができる。上述の筋書きでは、事象/返答がQ1に対する返答を表していれば、その事象/返答はR1に関係していることになる。
【0167】
事象/返答が、既に黒板202 に掲示されている一つ以上の事象/質問に関係している場合、促進器208 は制御径路454 を取る。事象/返答が、既に黒板202 に掲示されている事象/質問のいずれとも関係していなければ、促進器208 は制御径路458 を取る。
【0168】
図5を参照すると、促進器208 が、事象/質問が既に黒板202 に掲示されている事象/返答のうちの一つと関係している故に、制御径路432 を取る場合、ステップ504 で促進器208 は、その事象/質問を発したモジュール214 を識別する。促進器208 は、事象/質問を発したモジュール214 を識別するのに充分な事象/質問およびモジュール214 に関する情報を保持している。
【0169】
ステップ508 で、促進器208 は、識別されたモジュール214 に、その事象/質問に関係する事象/返答が黒板202 上に存在することを知らせる。促進器208 は、実際の事象/返答を、識別されたモジュール214 に伝えることができる。本発明の好適実施例では、促進器208 は、黒板202 にある事象/返答を指すポインタを伝える。
【0170】
次いで、エキスパートシステム102 はステップ512 を実行する。ステップ512 は、識別されたモジュール214 が下層質問に答えるために事象/返答を使用する仕方を表している。ステップ512 については、モジュール214 の詳細な動作に関連して以下の章で説明する。
【0171】
図6を参照すると、促進器208 が、事象/質問が、既に黒板202 に載っている事象/返答のいずれとも関係していない故に、制御径路436 を取る場合、ステップ604 で促進器208 は、黒板202 にある事象/質問に返答しないでおく。これは、未返答の質問を黒板202 に掲示する一つの方法を示す。
【0172】
次いでエキスパートシステム102 は、ステップ330 を実行し、即ちこれと等価には、エキスパートシステムは、事象ログ106 に到達する別の事象をチェックする。再び図4を参照すると、事象が事象ログ106 に到達していなければ、エキスパートシステム102 はステップ466 を実行する。ステップ466 は、促進器208 が黒板202 にある未返答の質問を処理する仕方を示すものである。ステップ466 については、この章の後の方で説明する。
【0173】
図7を参照すると、促進器208 が、事象/返答が、既に黒板202 に掲示されている事象/質問のうちの少くとも一つに関係している故に、制御径路454 を取る場合、ステップ704 で促進器208 は、事象/質問を発したモジュール214 を識別する。促進器208 は、(1)事象/返答と関連する事象/質問を識別し、および(2)事象/質問を発したモジュール214 を識別するのに充分な、事象/質問、事象/返答、およびモジュール214 に関係する情報を保持している。
【0174】
ステップ708 で、促進器208 は、最初に識別されたモジュール214 に、事象/質問に関連する事象/返答が黒板202 に存在することを伝える。促進器208 は、実際の事象/返答を、識別されたモジュール214 に伝えることができる。本発明の好適実施例では、促進器208 は、黒板202 にある事象/返答を指すポインタを伝える。
【0175】
エキスパートシステム102 は次いでステップ512 を行う。ステップ512 は、識別されたモジュール214 が下層質問に返答するために事象/返答を使用する仕方を示すものである。ステップ512 については、モジュール214 の詳細な動作に関する以下の章で説明する。
【0176】
ステップ512 を実行してから、エキスパートシステム102 は、ステップ712 で再開してステップ714 を実行する。ステップ714 で、促進器208 は、事象/返答に関して知らせる別の識別されたモジュール214 が存在するか否かを判定する。促進器208 は、識別されたモジュール214 のすべてに通知し終るまで制御ライン716 により形成された制御ループを実行する。
【0177】
識別されたすべてのモジュールに通知し終ると、エキスパートシステム102 は、ステップ330 を実行し、即ちこれと同等には、エキスパートシステムが、事象ログ106 に到達する別の事象についてチェックする。
【0178】
図8を参照すると、促進器208 が、事象/返答が黒板202 に既に掲示されている事象/質問のいずれとも関係していない故に、制御径路458 を取る場合、ステップ804 で促進器208 は、事象/返答を黒板202 に残しておく。これは、事象/質問が発せられる前に事象/返答を黒板202 に掲示する一つの方法を示す。
【0179】
次いでエキスパートシステム102 は、事象ログ106 に到達する別の事象についてチェックする(即ち、エキスパートシステム102 はステップ330 を実行する)。促進器208 が黒板202 にある質問を処理する仕方を、図9を参照して以下に説明する。
【0180】
ステップ904 で、促進器208 は、順向診断が審議中になっているか否かを判定する(順向診断については図3およびその上述の関連する説明を参照のこと)。順向診断に関連する前向き規則のいずれかが黒板202 上で未だ審議中である場合、順向診断は審議中である。また、順向診断に関連する前向き規則がすべて完成している場合には、順向診断は審議中ではない。
【0181】
順向診断が審議中でない場合、ステップ908 で促進器208 は黒板202 のすべての事象/質問が完成しているか否かを確認する。黒板202 にある事象/質問がすべて完成している場合、ステップ302 で促進器208 がエキスパートシステム102 を再初期設定する。促進器208 は、エキスパートシステム102 を再初期設定することにより、順向診断プロセスを再開させる。
【0182】
順向診断がステップ904 で審議中となっている場合、または黒板202 に存在するどの質問も未完成である場合には、促進器208 はエキスパートシステム102 を再初期設定しない。
【0183】
その代りに、促進器208 はステップ918 を実行する。ステップ918 で、促進器208 は、事象/返答が完成しているか否かを判定する。ステップ918 は、図4のステップ446 と等価なものである。したがって、事象/返答が完成している場合に促進器208 は制御径路464 を取り、図4のステップ452 から実行を開始する。また、ステップ918 で事象/返答が完成していない場合には、促進器208 は、黒板202 の事象/質問を調査して最も緊急な質問を識別する(ステップ924 )。本発明の好適実施例では、事象/質問は、頻度(ネットワーク142 上でどれだけ頻繁に問題が発生するか)および重大度(問題がネットワーク142 上に与える影響)に従って優先順位がつけられている。高頻度および高重大度を有する問題に関連する質問には高い優先順位がつけられる。促進器208 は、識別された質問を処理用に選択する。
【0184】
識別された質問は、順向診断と反応診断とのいずれかに関係することができる。したがって、一旦黒板202 に掲示されると、促進器208 は、順向診断および反応診断に関連する質問および規則を同様の様式で処理する。
【0185】
ステップ928 で、促進器208 は、ユーザによるオーバーライドが存在するか否かを判定する。オーバーライドが存在する場合、ステップ932 で促進器208 は、その選択された質問を捨て、オペレータの質問を処理対象として受容する。
【0186】
本発明の代替的な実施例において、促進器208 は、ステップ932 でユーザオーバーライドが存在するか否かを明白には判定しない。そうではなく、オペレータが、ユーザインタフェース250 を介して質問を入れる。エキスパートシステム102 は、オペレータの質問の優先順位に自動的に働きかけ、ステップ924 で促進器208 がオペレータの質問が最も緊急であると判定するようにする。エキスパートシステム102 がこの代替的な実施例に従って動作する場合には、ステップ928 およびステップ932 は実行されない。
【0187】
ステップ928 およびステップ932 は、本発明がエキスパートシステム102 を介してオペレータによる対話および制御を提供する一つの方法を示している。オペレータはユーザインタフェースを介してエキスパートシステム102 の動作を監視する。詳細に言えば、エキスパートシステム102 は、進行およびステータスのメッセージをユーザインタフェースを介してオペレータに送る。このような進行およびステータスのメッセージには、処理対象となる質問の促進器208 による選択(ステップ924)が含まれる。オペレータ(特に熟練したオペレータ)は、処理対象となる質問の促進器208による選択を無効にすることを選択することができる。したがって、エキスパートシステム102 が質問を処理する仕方およびタイミングをオペレータが制御することができるので、ステップ928 およびステップ932 はオペレータによる対話および制御を可能とする。
【0188】
ステップ936 で、質問が(促進器208 またはオペレータによって)処理対象として選択された後、促進器208 はモジュール214 をポーリングする。促進器208 によるポーリングに応じて、モジュール214 は、選択された質問に返答する際のその効率および有効性に関する推定値を用いて応答する。促進器208 は、モジュール214 からの情報を使用して、識別された質問に最も効率良く且つ有効に答えることができるモジュール214 を識別する。
【0189】
ステップ946 で、促進器208 は、選択されたモジュール214 に、識別された質問に答えるよう指令する。
【0190】
ステップ946 に続いて、エキスパートシステム102 はステップ950 を実行する。ステップ950 は、識別されたモジュール214 が識別された質問に答える仕方を表すものである。ステップ950 およびステップ512(識別されたモジュール214が事象/返答を使用して下層質問に答える仕方)については次の章で説明する。
【0191】
3.3.3 モジュール
モジュール214 の動作を本章で詳細に説明する。
【0192】
3.3.3.1 一般モジール
総称モジュール214 Aの動作を図10および図11を参照して本章で説明する。特定のモジュール214 B,214 C,214 D,214 Eの動作は、総称モジュール214 Aの動作と類似している。これらのモジュールの動作の違いは、モジュール214 の特定の信頼度の結果として生じるものである。
【0193】
図10は、総称モジュール214 が、識別された質問(即ち、促進器208 がステップ924 で処理対象として選択した質問)に答えている間の、総称モジュール214 Aの動作を示している。
【0194】
質問に答えるために促進器208 によって総称モジュール214 Aが選択された(ステップ942およびステップ946)後、その総称モジュール214 Aはステップ1004を実行する。
【0195】
ステップ1004で総称モジュール214 Aは黒板202 から事象/質問を読み出す。ステップ1008で、総称モジュール214 Aは、事象/質問に対する返答を決定するために事象/質問を処理する。このような処理の詳細は特定のモジュール214 の機能によって決まる。特定のモジュール214 B,214 C,214 Eの詳細な動作については次章で説明する。
【0196】
ステップ1012で、総称モジュール214 Aは、事象/質問に答えるために更に別の処理を行う必要があるか否かを判定する。たとえば、事象/質問に答えるために別の情報が必要であることがある。
【0197】
このような別の処理が必要な場合には、ステップ1036で総称モジュール214 Aは、必要とされる情報を決定するために事象/質問を生成する。
【0198】
規則モジュール214 Bが関係する次の例を考える。Q0は下層質問を表し、知識ベース238 からの規則R1および規則R2がQ0に関係している(即ち、R1およびR2はQ0に対して返答を与える)と仮定する。R1は質問Q1および質問Q2によって決まると仮定する。規則モジュール214 Bがステップ1008でQ1に対する返答を決定し、およびQ2に対する返答が未決定である場合には、ステップ1012で、規則モジュール214 Bが、R1に返答するための(Q2に関する)別の処理が必要であると判定する。
【0199】
このような別の処理が必要でなければ、ステップ1016で総称モジュール214 Aが、下層質問に総称モジュール214 Aが完成していることを知らせる。このような通知は、下層質問を表すデータ構造変数にフラグを設定することにより表すことができる。規則モジュール214 Bが関係する上述の例では、Q2に対する返答はステップ1008で決定され、Q1に対する返答は既に利用可能であるものと仮定する。R1についての答えを決定するために別の処理は必要ない。したがって、ステップ1016で、規則モジュール214 Bは、R1についての処理が完成していることをQ0に知らせる。
【0200】
ステップ1020で、総称モジュール214 Aは、質問が満たされているか(即ち、質問が答えられているか)を判定する。たとえば、規則モジュール214 Bが関連する上述の例では、R1はQ1およびQ2によって決まる。Q1およびQ2の双方が満たされる場合に限りR1が満たされる。その他の場合には、R1は満たされない。たとえば、R1は、「(Q1)要素Aがネットワーク142 上で要素Bと通信することができず、(Q2)衝突が高い場合に、R1は満たされる」とすることができる。R1は、要素Aおよび要素Bが通信することができず且つ衝突が高い場合に限り、満たされる。
【0201】
ステップ1020で質問が満たされた場合、ステップ1024で総称モジュール214 Aが質問の充足を伝える事象を生成する。その事象の特定の内容は、特定のモジュール214 の機能によって決まる。たとえば、規則モジュール214 Bは次のように動作する。前向き規則について、規則モジュール214 Bが事象/質問を生成する。これは、ネットワーク問題の仮説と等価である。後向き規則について、規則モジュール214 Bが事象/返答を生成する。これは、質問に対する返答であり、仮説を確認するのに使用される。
【0202】
ステップ1020で質問が満たされなかった場合にはステップ1030で総称モジュール214 Aが疑似事象を生成する。この疑似事象は、ステップ1040が一旦完了すると、制御をステップ466 に移動させる。この疑似事象は、促進器208 がそれに伝えられつつある事象を介して制御を受け取ることを確実にするために必要である。 ステップ1040で、総称モジュール214 Aは、ステップ1024,1030,1036のいずれかで生成された事象を発する。
【0203】
ステップ330 で、エキスパートシステム102 は、事象ログ106 に到達する別の事象をチェックする。
【0204】
図11は、総称モジュール214 Aが事象/返答を使用して下層質問に答えている間における総称モジュール214 Aの動作を示すものである。図10および図11に示した処理中における総称モジュール214 Aの動作は類似している。
【0205】
ステップ1046で総称モジュール214 Aは黒板202 から事象/返答を読み出す。ステップ1050で、総称モジュール214 Aは、事象/返答を使用して、下層事象/質問に答える。このような処理の詳細は、特定のモジュール214 の機能により決まる。特定のモジュール214 B,214 C,214 Eの詳細な動作については次の章で説明する。
【0206】
ステップ1062で、総称モジュール214 Aは、下層事象/質問に答えるために別の処理が必要であるか否かを判定する。たとえば、事象/質問に答えるために別の情報が必要であることがある。
【0207】
このような別の処理が必要である場合、ステップ1086で総称モジュール214 Aが、必要な情報を決定するために事象/質問を生成する。
【0208】
しかしながら、そのような別の処理が必要でない場合には、ステップ1066で、総称モジュール214 Aは、下層質問に、総称モジュール214 Aが完成していることを知らせる。このような通知は、下層質問を表すデータ構造変数にフラグを設定することにより表すことができる。
【0209】
ステップ1070で、総称モジュール214 Aは、質問が満たされているか(即ち、質問が答えられているか)を判定する。
【0210】
ステップ1070で質問が答えられている場合、ステップ1074で、総称モジュール214 Aが、質問の充足を伝える事象を生成する。この事象の特定の内容は、モジュール214 の特定の機能によって決まる。
【0211】
ステップ1070で質問が満たされていない場合には、ステップ1080で、総称モジュール214 Aが疑似事象を生成する。この疑似事象は、ステップ1090が一旦完了すると制御をステップ466 に移動させる。この疑似事象は、促進器208 がそれに伝えられつつある事象を介して制御を受け取ることを確実にするために必要である。
【0212】
ステップ1090で、総称モジュール214 Aは、ステップ1074,1080,1086のいずれかで生成された事象を発する。
【0213】
ステップ330 で、エキスパートシステム102 は制御をステップ330 またはステップ712 に移す。エキスパートシステム102 は、図11に示す処理が、関連する質問が利用可能であった場合の事象/返答に準じて実行された場合、ステップ712 に制御を移す(図4の制御ライン454 を参照のこと)。その他の場合には、エキスパートシステム102 は、事象ログ106 に到達する別の事象をチェックするために、ステップ330 に制御を移す。
【0214】
特定のモジュール214 B,214 C,214 Eの詳細な動作については次章で説明する。
【0215】
3.3.3.2 測定モジュール
測定モジュール214 Cの動作を図12に示す。測定モジュール214 Cは、本発明のエキスパートシステム102 とプロトコルアナライザ138 との間のインタフェースを表すものである。
【0216】
本発明の第1の実施例では、測定モジュール214 Cは、プロトコルアナライザインタフェース120 を介してプロトコルアナライザ138 と対話する。プロトコルアナライザインタフェース120 は、コンピュータプラットフォーム104 のインタフェースバス(図1には明示していない)の拡張スロットのうちの一つに差込まれるボードを表す。
【0217】
本発明の第2の実施例では、プロトコルアナライザインタフェース120 およびプロトコルアナライザ138 により行われる機能は、一枚のプロトコルアナライザカード(図1には図示していない)に設けられている。このプロトコルアナライザカードは、コンピュータプラットフォーム104のインタフェースバス(図1には明示していない)の拡張スロットのうちの一つに差込まれるボードを表す。
【0218】
本発明の第1の実施例によれば、プロトコルアナライザ138 に対してデータおよび命令の送受を行うため、測定モジュール214 Cがプロトコルアナライザインタフェース120 に命令を送る。その命令に応じて、およびプロトコルアナライザインタフェース120 内に備えられているソフトウェアコマンド122 に従って、プロトコルアナライザインタフェース120 が、測定モジュール214 Cの命令により指定された測定を行う。
【0219】
下記の能力を有するプロトコルアナライザ138 が、本発明のエキスパートシステム102 と共に使用するのに適している。第1に、プロトコルアナライザ138 は、データ通信ネットワーク142 を徹底的に試験するのに充分な測定能力、機能、および融通性を持っていなければならない。この要求事項を満たすプロトコルアナライザ138 は現在入手可能なものであり、Network General のSniffer Proto−colAnalyzer、ExcelanのLanalyzer、およびHewlett Packard 4972プロトコルアナライザがそれに含まれる。
【0220】
第2に、プロトコルアナライザ138 は、完全にプログラム可能でなければならない。即ち、プロトコルアナライザの機能および特徴は、人間の介在なしにエキスパートシステム102 (またはプロトコルアナライザ138 にインタフェースされるあらゆるコンピュータプログラム)により制御可能でなければならない。
【0221】
第3に、プロトコルアナライザ138 は、すべての結果を人間の介在なしにエキスパートシステム102 (またはプロトコルアナライザ138 にインタフェースされるあらゆるコンピュータプログラム)に返さなければならない。
【0222】
図12を参照すると、ステップ1106で、測定モジュール214 Cが事象/質問に対応する測定を識別する。本発明の好適実施例では、測定モジュール214 Cにより最も良く返答を得ることができる事象/質問と、プロトコルアナライザの測定との間に、一対一の対応が存在する。
【0223】
ステップ1110で、測定モジュール214 Cが、プロトコルアナライザコマンドを定式化して、識別された測定を行うようプロトコルアナライザ138 に命令する。本発明の好適実施例では(図1に示すように)、定式化されたプロトコルアナライザコマンドは、プロトコルアナライザ138 に直接は命令しない。その代りに、定式化されたプロトコルアナライザコマンドがプロトコルアナライザインタフェース120 に送られ、次いでこのインタフェース120 が、プロトコルアナライザ138 にコマンドを送り、それにより識別されたコマンドをプロトコルアナライザ138 に行わせる。代りの実施例では、定式化されたプロトコルアナライザコマンドが、プロトコルアナライザ138 に、識別された命令を行うように直接命令する。
【0224】
ステップ1114で、測定モジュール214 Cが、定式化されたプロトコルアナライザコマンドをプロトコルアナライザ138 に送る。
【0225】
ステップ1118で、測定モジュール214 Cが、識別された測定に対する応答を、プロトコルアナライザインタフェース120 を経由して、プロトコルアナライザ138 から受け取る。
【0226】
ステップ1122で、その応答がエキスパートシステム102 を通して伝達する条件に入るように、測定モジュール214 Cがその応答をフォーマットする。このようなフォーマット化には、エキスパートシステム102 内の標準プロトコルに従ってエンベロープ内に応答を置くことが含まれる。
【0227】
ステップ1126およびステップ1130で、測定モジュール214 Cは、プロトコルアナライザ138 からの応答を含む事象/返答を構成し、発行する。
【0228】
3.3.3.3 ユーザ質問モジュール
ユーザ質問モジュール214 Eの動作を図13に示してある。ユーザ質問モジュール214 Eは、エキスパートシステム102 がネットワーク142 を診断するのに使用する情報を得ることに関して人間のオペレータとエキスパートシステム102 との間のインタフェースとなる。
【0229】
ステップ1206で、ユーザ質問モジュール214 Eは、事象/質問に対応するユーザ質問を識別する。ユーザ質問は、ユーザに、プロトコルアナライザ138 以外の装置で測定を行うよう要求することができる。本発明の好適実施例では、ユーザ質問モジュール214 Eが最も良く返答することができる事象/質問とユーザ質問との間に一対一の対応が存在する。
【0230】
ステップ1210で、ユーザ質問モジュール214 Eは、ユーザ質問をユーザインタフェース250 に送る。
【0231】
ステップ1214で、ユーザ質問モジュール214 Eはユーザ質問に対する応答をユーザインタフェース250 を介してユーザから受け取る。
【0232】
ステップ1218で、ユーザ質問モジュール214 Eは、その応答がエキスパートシステム102 を通して伝達する条件になるようにその応答をフォーマットする。このようなフォーマット化には、その応答をエキスパートシステム102 内の標準プロトコルに従ってエンベロープ内に入れることを包含することができる。
【0233】
ステップ1222およびステップ1226で、ユーザ質問モジュール214 Eは、ユーザからの応答を含む事象/返答を構成して発する。
【0234】
3.3.3.4 規則モジュール
規則モジュール214 Bの動作を図14および図15に示す。
【0235】
図14は、規則モジュール214 Bが識別された質問(即ち、ステップ924 で促進器208 により処理対象として選択された質問)に答えている間の規則モジュール214 Bの動作を示すものである。識別された質問は事象/質問内に格納されていることを想起されたい。
【0236】
ステップ1306で、規則モジュール214 Bは黒板202 から事象/質問を読取る。ステップ1310で、規則モジュール214 Bは、知識ベース238 を隅々まで探索して事象/質問に適用されるすべての規則(即ち、事象/質問に返答を与えるすべての規則)を識別する。
【0237】
ステップ1314で、規則モジュール214 Bは識別された規則の一つを選択して処理する。本発明の好適実施例では、規則モジュール214 Bは処理するのに最も効率の良い規則を選択する。処理するのに最も効率の良い規則は、コスト因子(規則を処理するためにエキスパートシステム102 にかかるコスト)および信頼因子(ネットワーク問題を識別する規則の信頼性)によって決まる。効率の良い規則は、コスト因子が低く、効率が高い。図29ないし図33に示すように、コストおよび信頼についての値は規則に関連している。
【0238】
ステップ1318で、規則モジュール214 Bは、識別された規則の次の質問まで、またはその規則の終りまで、すべての内部コマンドを実行する。内部コマンドは、規則モジュール214 Bがデータベース210 ,236 を参照して直ちに答えることができる質問または照会である。たとえば、基本質問Q0が、規則R1,R2,R3に関連していると仮定する。また、ステップ1314で、規則モジュール214 Bが規則R1を処理用に選択すると仮定し、R1が、内部コマンドC1および内部コマンドC2を有し、その次に質問Q1を有し、次いで内部コマンドC3を有し、次に質問Q2および質問Q3を有していると仮定する。規則R1の次の質問はQ1である(これは、規則モジュール214 Bが規則をその始めから処理し、C1が規則R1の始めを表しているためである)。したがって、規則モジュール214 Bは、C1およびC2が次の質問Q1の前に生じるため、ステップ1318でC1およびC2を実行する。
【0239】
ステップ1322で、規則モジュール214 Bは、現在の規則に未だ処理されていない質問が含まれているか否かを判定する。たとえば、上述の筋書きでは、現在の規則R1には、処理されていない質問Q1,Q2,Q3が含まれている。
【0240】
現在の規則に未だ処理されていない質問が含まれている場合、ステップ1346で、規則モジュール214 Bが、処理されていない次の質問を選択する。規則R1についての上述の筋書きでは、規則モジュール214 Bは質問Q1を選択する。
【0241】
ステップ1350で、規則モジュール214 Bは、ステップ1346で選択された質問に従って事象/質問を生成して発する。
【0242】
現在の規則に関連する質問がすべて処理されてしまっている場合には、ステップ1326で、規則モジュール214 Bが、下層質問に規則が完成していることを通知する。このような通知は、下層質問を表すデータ構造変数にフラグを設定することにより表すことができる。ステップ1326はステップ1016に類似している。
【0243】
ステップ1330で、規則モジュール214 Bは、現在の規則が満たされているか否かを判定する。ステップ1330はステップ1020に類似している。
【0244】
ステップ1330で規則が満たされている場合、ステップ1334で、規則モジュール214 Bが特定の規則に基いて事象を生成して発する。ステップ1334はステップ1024およびステップ1040に類似している。
【0245】
ステップ1330で規則が満たされていない場合には、ステップ1340で、規則モジュール214 Bが疑似事象を生成して発する。ステップ1340はステップ1030およびステップ1040に類似している。
【0246】
ステップ1354で、規則モジュール214 Bは、事象/質問に未開始の規則が含まれているか否かを判定する。規則に関連する質問がどれも完成していないかまたは黒板202 で審議中でない場合、その規則は未開始である。未開始の規則が存在する場合には、規則モジュール214 Bは、ステップ1354および制御ループ1358を介してその未開始の規則を始動させる。即ち、規則モジュール214 Bは、事象/質問に関連するすべての規則が始動されてしまうまで、制御ループ1358により完成されるループを行う。
【0247】
ステップ330 で、事象/質問に関連するすべての規則の始動に続き、エキスパートシステム102 は、事象ログ106 に到達する別の事象についてチェックする。図15は、規則モジュール214 Bが、事象/返答を使用して下層質問に答えている間の規則モジュール214 Bの動作を示す。
【0248】
ステップ1406で規則モジュール214 Bが黒板202 から事象/返答を読み出す。ステップ1408で、規則モジュール214 Bが、事象/返答に関連する規則の次の未処理の質問まで、または規則の終りまで、すべての内部コマンドを実行する。たとえば、基本質問Q0が、規則R1,R2,R3に関連していると仮定する。またR1が、内部コマンドC1および内部コマンドC2を有し、続いて質問Q1を有し、次いで内部コマンドC3を有し、その次に質問Q2および質問Q3を有していると仮定する。更に事象/返答がR1に関連しており、および特に、事象/返答がQ1についての返答であると仮定する。そうすると、ステップ1408で、規則モジュール214 Bは、C3が規則R1の次の未処理の質問Q2の前に発生する唯一の内部コマンドであるため、C3を実行する。
【0249】
ステップ1414で、規則モジュール214 Bは下層質問のステータスを更新する。上述の筋書きで、C1、C2、Q1、Q2が完成しており、規則モジュール214 BがQ3に対する返答を処理中であると仮定する。このような場合には、R1についての処理は完結している。したがって、ステップ1414で、規則モジュール214 Bは、R1が完成していることを基本質問Q0に知らせる。ステップ1414はステップ1066に類似している。
【0250】
ステップ1426で、規則モジュール214 Bは、現在の規則が満たされているか否かを判定する。ステップ1426はステップ1070に類似している。
【0251】
ステップ1426で規則が満たされている場合、ステップ1430で、規則モジュール214 Bは、特定の規則に基いて事象を生成して発する。ステップ1430はステップ1074およびステップ1090に類似している。
【0252】
ステップ1426で規則が満たされていない場合には、ステップ1436で、規則モジュール214 Bは、疑似事象を生成して発する。ステップ1436はステップ1080およびステップ1090に類似している。
【0253】
ステップ330 で、エキスパートシステム102 は、制御をステップ330 またはステップ712 に移す。エキスパートシステム102 は、関連する質問が利用可能な事象/返答に従って図11に示す処理が行われた場合に、制御をステップ712 に移す(図4の制御ライン454 を参照のこと)。その他の場合には、エキスパートシステム102 は、事象ログ106 に到達する別の事象についてチェックするために制御をステップ330 に移す。
【0254】
3.3.4 ユーザインタフェース
ユーザインタフェース250 の動作を図16ないし図21を参照してこの章で説明する。
【0255】
ユーザインタフェース250 は、エキスパートシステム102 とオペレータとの間のインタフェースを表すものである。オペレータは、このユーザインタフェース250 を介して、エキスパートシステム102 の動作についてインタフェースおよびその制御を行うことができる。
【0256】
図17ないし図20に示すように、本発明の好適実施例によるユーザインタフェース250 は、メニューおよびウィンドウから構成されている。オペレータは、端末機126 に取付けられたキーボードおよび/または(マウス等の)指示装置を用いてメニューおよびウィンドウを介して指図を行う。
【0257】
図16は、ユーザインタフェース250 の動作の一般的なフローチャートを示すものである。ユーザインタフェース250 は、オペレータからのコマンドに従って動作し、これらのオペレータコマンドは、どんな順序でも、およびいつでも入って来る可能性があるものである。このため、ユーザインタフェース250 が動作する仕方の一例を提供するべく、図16にそのフローチャートを示す。
【0258】
ステップ1506で、オペレータは、開始コマンドをユーザインタフェース250 からライン256 を介して促進器208 に送る。その開始コマンドに応じて、促進器208 がエキスパートシステム102 を初期設定する(図3およびその上述の関連する説明を参照のこと)。
【0259】
ステップ1510で、ユーザインタフェース250 は、事象ログ106 が受け取った事象/質問および事象/返答に関するデータを事象ログ106 から受け取る。ステップ1514で、ユーザインタフェース250 は、図1の端末機126 を介してオペレータにデータを表示する。そのデータは、ネットワーク142 の診断に関する進行およびステータス情報を表すものである。これは、エキスパートシステム102 が診断プロセスでユーザ対話および制御を提供する一つの方法である。
【0260】
ステップ1518で、ユーザインタフェース250 は、オペレータから質問および返答を受け取る。質問は、「私の端末機はネットワークに接続されているか?」というように、問題を反映することができるものである。また返答は、「ケーブルXYZの導通は正常である」というように、オペレータによる観察および測定を反映することができるものである。オペレータからの質問および返答は、ユーザ質問モジュール214 Eからの問い合わせに応じて行われることができ、またはユーザは、請求されていない質問または返答を入力することができる。これは、エキスパートシステム102 が診断プロセスでユーザ対話および制御を提供する別の方法である。
【0261】
ステップ1522で、ユーザインタフェース250 は、オペレータが提示した質問および返答に基づき事象を生成して事象ログ106 に発する。エキスパートシステムは、図4のステップ330 で、これらの事象についてチェックする。
【0262】
ステップ1528で、ユーザインタフェース250 は、オペレータから説明要求を受け取る。この説明要求には、促進器208 の推論(即ち、ネットワーク問題2302とデータ2304に対するランドマーク2402との関係)や、処理すべき質問の選択や、モジュール214 による事象/質問の生成および発行、に関する説明についての要求が含まれる。この説明要求にはまた、ネットワーク問題の性質および重要度や、ネットワーク問題、シンプトン、およびユーザ質問に対する可能な解決法に関する情報についての要求も含まれる。
【0263】
本発明の好適実施例では、オペレータは、事象ウィンドウ1622および障害発見(faults found)ウィンドウ1624内のテキスト上で(マウスを)クリックすることにより、説明要求をユーザインタフェース250 へ送る。
【0264】
ステップ1532で、ユーザインタフェース250 は、その説明要求に応答するよう促進器208 に命令する。
【0265】
ステップ1554で、促進器208 は説明要求に応答する。
【0266】
促進器208 は、その説明要求に応答するようモジュール214 のうちの一つに命令することができる。説明要求に応答する際、促進器208 およびモジュール214 は、データベース210 に格納されているデータ記述子を参照する。データ記述子の例を図22ないし図28に示す。
【0267】
図22および図23はネットワーク問題に関連するデータ記述子を示す。図22で、問題は、名称フィールドによって示すように、「ケーブルに雑音多し(cableNoisy)」である。定義フィールドは問題の定義を提供する。このフィールドはオペレータが問題の説明を要求する際にアクセスされる。解法フィールドは問題を解決する方法を提供する。このフィールドはオペレータが問題に対する可能な解法を要求する際にアクセスされる。
【0268】
図24は測定に関係するデータ記述子を示す。図25はランドマークに関係するデータ記述子を示し、図26、図27、および図28はシンプトンに関係するデータ記述子を示す。シンプトンは、ユーザ質問モジュール214 Eを介してユーザから要求される質問が関係している。これらのデータ記述子のフィールドは、図22に示す問題に関係するデータ記述子のフィールドに類似している。
【0269】
ステップ1538で、ユーザインタフェース250 は促進器208 の応答を受け取り、端末機126 の説明ウィンドウ(図17ないし図20には図示せず)にオペレータに対する応答を表示する。この説明ウィンドウは、端末機126 に現われ、オペレータの説明要求に対する促進器208 の応答を含むウィンドウである。
【0270】
ステップ1542で、ユーザインタフェース250 はオペレータが終了コマンドを入力したか否かを確認する。オペレータが終了コマンドを入力していない場合、ユーザインタフェース250 はステップ1510に戻る。
【0271】
また、オペレータが終了コマンドを入力した場合には、ステップ1548で、ユーザインタフェース250 は、ライン256 を介して促進器208 に終了コマンドを送る。終了コマンドを受け取ると、促進器208 はエキスパートシステム102 の動作を終了し、エキスパートシステム102 の診断セッションが完了する。
【0272】
上述のように、本発明の好適実施例によれば、ユーザインタフェース250 は、メニューおよびウィンドウから構成されている。これらメニューおよびウィンドウを図17ないし図20に示す。
【0273】
図17は、エキスパートシステム102 がデータ通信ネットワーク142 を診断している際の端末機126 の表示画面イメージ1602を示す。このイメージ1602は、事象ウィンドウ1622、障害ウィンドウ1624、監視ウィンドウ1626、および仮説ウィンドウ1628を有する。このイメージ1602はまた、多数のプルダウンメニューボタン1604,1606,1608,1610,1612を有する。更にこのイメージ1602は、多数のコマンドボタン1614,1616,1618,1620を有する。またこのイメージ1602は、アイコン1630,1632,1634,1636、およびステータス領域1638を有する。
【0274】
上述のように、事象ログ106 に送られるすべての事象もまたユーザインタフェース250 に送られてオペレータに対する表示が行われる。これらの事象は事象ウィンドウ1622に表示される。
【0275】
確認されたネットワーク問題は、障害ウィンドウ1624に表示される。
【0276】
黒板202 に掲示されている前向き規則からの質問は、監視ウィンドウ1626に表示される。このような質問はランドマークを表す。上述のように、ネットワーク問題の仮説をたてるのに前向き規則が使用される。
【0277】
黒板202 に掲示されている仮説ネットワーク問題は仮説ウィンドウ1628に表示される。仮説ネットワーク問題を確認し、却下するのに後向き規則が使用される。
【0278】
監視ウィンドウ1626は、監視プロセス(即ち、一次ランドマークを検出するプロセス)のステータスを示す。仮説ウィンドウ1628は、処理中の仮説の現在のセットを示す。オペレータは、監視ウィンドウ1626および仮説ウィンドウ1628に示されるランドマークおよび仮説をそれぞれ選択することができる。オペレータの選択に応じて、エキスパートシステム102 は、選択されたランドマークおよび仮説の優先順位を、選択されたランドマークおよび仮説が最初に実行されるように修正する。したがって、促進器208 は、オペレータが定義した順序で筋書きを処理する。これは、エキスパートシステム102 がオペレータに対話および制御を提供するもう一つの方法である。
【0279】
オペレータは、エキスパートシステム102 を制御するため、及びイメージ1602を構成するために、プルダウンメニューボタン1604,1606,1608,1610,1612を使用する。オペレータは、シンプトンボタン1604を使用してエキスパートシステム102に苦情を送る。シンプトンボタンを使用する仕方は、事実追加ボタン1608を使用する仕方(以下に説明する)と類似している。
【0280】
オペレータは、クリアボタン1606を使用してエキスパートシステム102 の再初期設定を行う。
【0281】
オペレータは事実追加ボタン1608を使用して事象/返答およびデータをエキスパートステム102 に送る。図19に示すように、オペレータは、事実追加ボタン1608上で(マウス等の)指示装置をクリックすることにより、ウィンドウ1802を開く。このウィンドウ1802は、オペレータが選択可能な返答をリスト表示する。このウィンドウ1802においては、「過剰リンクトラフィック(excessiveLinkTra−ffic)」返答が選択される。この「過剰リンクトラフィック」返答を選択することにより、オペレータはウィンドウ1804を開く。このウィンドウ1804で、オペレータは「過剰リンクトラフィック」返答に関連する情報を入力することができる。 オペレータは構成(config)ボタン1610を使用してイメージ1602を構成する。たとえば、オペレータは構成ボタン1610を使用してウィンドウを開閉することができる。これを図18に示す。同図は、オペレータが構成ボタン1610を使用して、監視ウィンドウ1626、および仮説ウィンドウ1628を閉じ、事象ウィンドウ1622および障害ウィンドウ1624を広げたところを示すものである。
【0282】
この表示画面イメージ1602は、ヘルプボタン1612のような多数のヘルプボタンを備えている。これらのヘルプボタンは、文脈依存型であり、情報ヘルプメッセージを提供して、オペレータがエキスパートシステム102 と対話し、その制御を行うのを支援する。
【0283】
オペレータは、コマンドボタン1614,1616,1618,1620,1698,1699を使用してネットワーク142 の診断を開始させ、制御する。
【0284】
オペレータは、(障害発見ボタン1614上で指示装置をクリックすることにより)障害発見ボタン1614を押して、ネットワーク142 の診断を開始させる。障害発見ボタン1614を押すことにより、オペレータは本質的に、エキスパートシステムに図4のステップ330 で示すような連続ループプロセスでの動作を開始させる。オペレータはホップボタン1616及びステップボタン1618 を押して、ネットワーク142 をインクリメンタル(incremental)ステップで診断する。
【0285】
オペレータは、ストップボタン1620を押してエキスパートシステム102 の動作を停止させる。
【0286】
また、オペレータは、アイコン1630,1632,1634,1636を使用して雑多な機能を実行させる。
【0287】
詳細に言うと、オペレータは、(事象アイコン1630上でクリックすることにより)事象アイコン1630を使用して類別に従って事象ログ106 内の事象を見る。
【0288】
オペレータは、計測アイコン1632を使用してプロトコルアナライザ138 を直接制御する。
【0289】
オペレータは、設定アイコン1634を使用して、エキスパートシステム102 が診断しているネットワークの形式等の大域パラメータおよび構成を設定する。
【0290】
オペレータは、ユーティリティ(utils)アイコン1636を使用して、画面の印刷等の雑多なユーティリティを実行させる。
【0291】
オペレータは、表示画面イメージ1602内に複数のウィンドウを開くことができる。これを図20に示す。
【0292】
図21は、質問およびデータを、事象ウィンドウ1622、障害ウィンドウ1624、監視ウィンドウ1626、および仮説ウィンドウ1628内に表示し、およびそれらのウィンドウ間で転送させる仕方の概要を示すものである。図21に示して上述したように、事象ウィンドウ1622は事象ログメッセージを表示する。障害ウィンドウ1624は確認されたネットワーク問題/仮説を表示する。監視ウィンドウ1626は前向き規則からの質問(この文脈では、ランドマークとも呼ばれる)を表示する。仮説ウィンドウ1628は仮説問題の質問を表示する。
【0293】
図3を参照して上述したように、初期設定プロセス302 は、順向診断を扱う(ライン2016を介した知識ベース238 からの)前向き規則からの質問を黒板202 に載せる(ライン2002)。前向き規則からの質問は、ランドマークを表すものであり、監視ウィンドウ1626に表示される。オペレータは、ユーザインタフェース250 のシンプトンボタン1604および事実追加ボタン1608を使用して、事実(即ち、問題、データ、およびランドマーク)を黒板202 に入れることもできる(ライン2006)。
【0294】
前向き規則は、満足されれば、問題の質問を生成する。知識ベース238 からの後向き規則は、ネットワーク問題の仮説を確認しまたは却下する。
【0295】
仮説ウィンドウ1628には、監視ウィンドウ1626からライン2012上に生成された仮説問題(即ち、既に満たされている監視ウィンドウ1626内に表示される前向き規則)またはオペレータからユーザインタフェース250 を介してライン2008上に生成された(特に、シンプトンボタン1604または事実追加ボタン1608を使用したオペレータからの)仮説問題が含まれている。
【0296】
上述のように、障害ウィンドウ1624は、確認されたネットワーク問題を表示する。これを図21にライン2022により示す。
【0297】
3.4 ARPA要求事項
本発明の好適実施例では、エキスパートシステム102 は、ローカルエリアネットワーク(LAN)、特にARPA(防衛先行研究計画庁)データ通信ネットワーク142 を診断する。ARPAは、とりわけエサーネット(IEEE規格802.3 )上で動作する。
【0298】
本発明のエキスパートシステム102 は、LANおよびARPAデータ通信ネットワーク142 のみを診断することに限定されるものではない。エキスパートシステム102 の構造および動作は、ここで説明するように、あらゆるデータ通信ネットワーク142 の診断に適用することができる。たとえば、本発明は現在のところ、トークンリングデータ通信ネットワーク(IEEE802.5 に適合)に適応している。
【0299】
ARPAデータ通信ネットワーク142 を診断するにあたり、エキスパートシステム102 は、(1)ネットワークの長過ぎ、(2)媒体、コネクタ、または終端の不良、(3)架線装置のダウン、(4)IPアドレスの重複、(5)リンクアドレスの重複、(6)IPブロードキャストアドレスの構成誤り、(7)IPマスクの構成誤り、(8)IPアドレスの割当不良、(9)経路の長過ぎ、経路のループ、またはTTLの低過ぎ、(10)伝達パラメータの構成誤り、および(11)RWHODの構成誤り、等の多数のネットワーク問題を検出し、識別することができる。
【0300】
ARPAデータ通信ネットワーク142 を診断するにあたり、エキスパートシステム102 はまた、ネットワーク観察を検出し、報告することもできる。これらネットワーク観察は、実際のネットワーク問題の存在を指示することができるが、これらのネットワーク観察に関しては、エキスパートシステム102 がネットワーク問題が存在することを最終確認するのに充分な情報を入手することはできない。オペレータによる解釈が必要である。
【0301】
エキスパートシステム102 が検出するネットワーク観察には、(1)過剰トラフィック、(2)トレーラの使用、(3)過剰ICMPメッセージ、(4)過剰な経路指定の更新、(5)性能問題、(6)過剰な再伝送、および(7)セキュリティ侵犯、が含まれている。
【0302】
上記のネットワーク観察の多くは、本発明の好適実施例によるランドマークを表している。
【0303】
上述のネットワーク問題およびネットワーク観察を検出するため、エキスパートシステム102 は、多数のネットワーク測定を行うことができる。エキスパートシステム102 は、プロトコルアナライザ138 に(測定モジュール214 Cを介して)命令することにより、これらネットワーク測定を行う。エキスパートシステム102 が行うネットワーク測定には、(1)トラフィック/利用統計、(2)衝突統計、(3)runts/jabber/FCSエラー統計、(4)トリガ/探査、(5)一般統計、(6)ブロードキャストトラフィック統計、(7)ICMP統計、(8)ノード統計、(9)ARP(送(send))、(10)Ping(送)、(11)プロトコルによるトラフィック、および(12)デコードが含まれる。
【0304】
エキスパートシステム102 は、上述のネットワーク問題およびネットワーク観察にのみを検出することに限られるものではなく、また、このエキスパートシステム102 は、上述の測定のみを行うことに限られるものでもない。上述の説明は、本発明の能力の幾つかを例示することだけを目的とするものである。このような能力は、ARPA通信ネットワーク142 を診断するのに充分である。エキスパートシステム102 は、他の形式のデータ通信ネットワークを診断するために上述のおよび別のタスクを行うことができる。
【0305】
3.5 ARPAの規則
この章では、データ通信ネットワーク142 を診断するために知識ベース238 に入っている規則を説明する。この章で説明する規則は、ARPAネットワークを診断するのに必要な形式を表すものであるが、ここに述べる原理は、異なる形式のデータ通信ネットワークを診断するにも適切なものである。
【0306】
図29および図31に、前向き規則、即ち仮説規則を示す。これらの規則はネットワーク問題の仮説を生成するのに使用される。
【0307】
図30、図32、および図33に後向き規則を示す。これらの規則はネットワーク問題の仮説を確認し、ランドマークを識別するのに使用される。
【0308】
図29は、初期設定302 (順向診断の場合)の間、またはユーザインタフェース250 を介したユーザ入力(反応診断の場合)の間に、ネットワーク問題の仮説をたてるのに起動させることができる前向き規則を示すものである。促進器208 は、規則モジュール214 Bを選択(ステップ942 )して、図29の前向き規則を処理する。
【0309】
図29の前向き規則は、「ケーブルに雑音多し」という仮説に関係している。これは、「論理文」フィールドにより示される。仮説「ケーブルに雑音多し」は、「過剰衝突」の条件/質問によって決まる(「基底ライン」が内部コマンドであることに注目されたし)。「過剰衝突」の条件が満たされれば、図29に示す前向き規則が満たされ、「ケーブルに雑音多し」というネットワーク問題が存在する可能性がある。換言すれば、図29の前向き規則は、「過剰衝突」の条件が満たされれば「ケーブルに雑音多し」というネットワーク問題が存在する可能性がある、という仮説をたてる。
【0310】
「過剰衝突」の条件は、図33に示した後向き規則を介して識別される。図29の前向き規則に関連する規則モジュール214 Bは、図33の後向き規則により提出される事象/質問を生成(ステップ1350)して発する。
【0311】
促進器208 は、(ステップ942 で)規則モジュール214 Bを選択して、図33の後向き規則を処理する。図33の後向き規則が「衝突統計(collisionStat)」を含んでいることに注目されたい。「衝突統計」は、プロトコルアナライザ138 により行われる衝突統計測定に関するものである。
【0312】
図33で、「基底ライン」、「全てを発見」、「サイズ」、および「大なりまたは等しい(ge)」は内部コマンドである。規則モジュール214 Bは、「基底ライン」内部コマンドを実行して(ステップ1318)、問題となっているケーブルについて衝突しきい値を決定する。次いで規則モジュール214 Bは、「衝突統計」に従って事象/質問を発する(ステップ1350)。
【0313】
促進器208は、測定モジュール214Cを選択して「衝突統計」事象/質問を処理する(ステップ942)。測定モジュール214Cは、「衝突統計」コマンドを処理して(ステップ1106,1110,1114)、プロトコルアナライザ138 に衝突統計測定を10回行わせる。その衝突統計測定の結果が、「結果」パラメータで測定モジュール214 Cに返される。測定モジュール214 Cは、その結果を含む事象/返答を発する(ステップ1122,1126)。
【0314】
図33の後向き規則に関連する規則モジュール214 Bは、その衝突統計測定の結果を含む事象/返答を読み出す(ステップ1406)。規則モジュール214 Bは、「全てを発見」および「サイズ」の内部コマンドを実行して、衝突しきい値を越える結果の数を判定する(ステップ1410)。
【0315】
次いで規則モジュール214 Bが、「大なりまたは等しい」内部コマンドを実行して、衝突しきい値を超えている結果の数が4以上であるか否かを確認する(ステップ1410)。それが4以上である場合、図33に示す後向き規則が満たされる(即ち、問題となるケーブル上に過剰な衝突が存在する)。規則モジュール214 Bは、適切な事象/返答を発して(ステップ1430)、問題としているケーブル上に過剰な衝突が存在することを示す。図33の後向き規則に関連する規則モジュール214 Bがこれで完成される。
【0316】
図33に示す後向き規則を処理して(図29の後向き規則にある)「過剰衝突」条件が満たされているか否かを判定することは必ずしも必要ない。オペレータは、問題としているケーブルに過剰な衝突があるというデータを(ユーザインタフェース250 を介して)入力することができる(このデータは図29に示す後向き規則のような規則を処理することを見越してステップ804 において黒板202 に残されている)。オペレータがこのようなデータを入力すると、「過剰衝突」の条件は満たされる。
【0317】
図29の前向き規則と関連する規則モジュール214 Bは、「過剰衝突」条件が満たされていることを示す事象/返答を受け取る(ステップ1406)(上述のように、事象/返答は、図33の後向き規則を介して、またはユーザ入力を介して黒板202 に掲示しておくことができる)。規則モジュール214 Bは、「基底ライン」内部コマンドを実行する(ステップ1410)。「過剰衝突」条件が満たされているので、図29に示す前向き規則が満たされる。それ故、図29の前向き規則に従って「ケーブルに雑音多し」ネットワーク問題が存在し得る。図29の前向き規則が満たされているので、規則モジュール214 Bは「ケーブルに雑音多し」事象/質問を発する。これは「論理文」 により示される。図29の前向き規則に関連する規則モジュール214 Bは、これで完成する。
【0318】
「ケーブルに雑音多し」事象/質問に関連する「ケーブルに雑音多し」後向き規則を図30に示す。「ケーブルに雑音多し」後向き規則は「ケーブルに雑音多し」ネットワーク問題が存在する可能性があるという仮説を確認しまたは却下するのに使用される。「論理文」 のもとでのステートメントによって示されるように、図30に示す後向き規則は、「雑音」条件(または質問) によって決まる。「大なり(gt)」内部コマンドによって示されるように、 「雑音」質問の結果が2より大きければ「ケーブルに雑音多し」という仮説が確認され、「ケーブルに雑音多し」ネットワーク問題が存在する。
【0319】
促進器208 は、規則モジュール214 Bを選択して(ステップ942 )、図30の「ケーブルに雑音多し」後向き規則を処理する。規則モジュール214Bは、「雑音」ユーザ質問に関する事象/質問を発する(ステップ1350)。
【0320】
促進器208 は、ユーザ質問モジュール214 Eを選択して(ステップ942 )、「雑音」ユーザ質問を処理する。「雑音」ユーザ質問に従って、ユーザ質問モジュール214 Eは、オペレータに、問題としているケーブル上の雑音の量を試験するよう要請する(ステップ1206、1210)。オペレータは、たとえば、電圧計またはマルチメータを使用してケーブルを試験することができる。ケーブルを試験した後、オペレータは、ユーザインタフェース250 を介してその試験結果を入力する。オペレータの試験結果は、「雑音」パラメータを介してユーザ質問モジュール214 Eに返される(ステップ1214)。ユーザ質問モジュール214 Eは、試験結果を含む事象/返答を発する(ステップ1218,1222,1226)。
【0321】
図30の「ケーブルに雑音多し」後向き規則に関連する規則モジュール214 Bは、試験結果を含む事象/返答を受け取る(ステップ1406)。規則モジュール214 Bは、「大なり( gt )」内部コマンドを実行する。試験結果が2より大きければ、「ケーブルに雑音多し」という仮説が確認され、「ケーブルに雑音多し」ネットワーク問題が存在する。この場合には、規則モジュール214 Bが適切な事象/返答を発して(ステップ1430)、ネットワーク問題が存在することをオペレータに知らせる。
【0322】
試験結果が2より大きくなければ「ケーブルに雑音多し」という仮説は却下される。この場合には規則モジュール214 Bは疑似事象を発する(ステップ1436)。図31および図32に示す前向き規則および後向き規則は、図29、図30、および図33に示す規則と類似する仕方で動作する。
【0323】
本発明の様々な実施例を上述してきたが、これらは例としてのみ提示したものであり、本発明を限定するものではないということが理解されるべきである。したがって、本発明の広さおよび範囲は、上述の実施例により限定されるべきではなく、特許請求の範囲の記載内容およびその等価なものによってのみ定義されるべきである。
【0324】
なお、本明細書における開示内容は、その一部に著作権の保護を受ける資料を含むものである。したがって、本発明が特許庁の特許ファイルまたは記録に載る際、その開示内容を何人がファクシミリ複製を行っても著作権の所有者に異論はないが、その他の場合にはいかなる著作権をも保有する。
【0325】
また、本出願人による下記の出願はいくつかの共通の開示を含んでおり、本出願と同一の有効出願日を有するものと考える。
【0326】
HYPOTHESIS AND CONCLUSION METHOD TO DIAGNOSE DATA COMMUNICATION NETWO−RKS (代理人整理番号第191102号)
AN EXPERT SYSTEM TO DIAGNOSE DATA COMMUNICATION NETWORKS(代理人整理番号第191103号)。
【0327】
【発明の効果】
本発明は上述のように、ランドマークデータ抽出パラダイムに従ってデータ通信ネットワークを診断するので、効率良く且つ効果的にデータを収集し、解析し、翻訳し、またオペレータによる対話および制御を考慮した、データ通信ネットワークを自動的に診断するエキスパートシステムを提供することが可能となる。
【図面の簡単な説明】
【図1】本発明の好適実施例が動作する環境を示すブロック図である。
【図2】本発明の好適実施例の構造を示すブロック図である。
【図3】本発明の好適実施例における初期設定プロセスを示すフローチャートである。
【図4】本発明の好適実施例の動作を示す第1のフローチャートである。
【図5】本発明の好適実施例の動作を示す第2のフローチャートである。
【図6】本発明の好適実施例の動作を示す第3のフローチャートである。
【図7】本発明の好適実施例の動作を示す第4のフローチャートである。
【図8】本発明の好適実施例の動作を示す第5のフローチャートである。
【図9】本発明の促進器の動作を示すフローチャートである。
【図10】本発明の総称モジュールの動作を示す第1のフローチャートである。
【図11】本発明の総称モジュールの動作を示す第2のフローチャートである。
【図12】本発明の測定モジュールの動作を示すフローチャートである。
【図13】本発明のユーザ質問モジュールの動作を示すフローチャートである。
【図14】本発明の規則モジュールの動作を示す第1のフローチャートである。
【図15】本発明の規則モジュールの動作を示す第2のフローチャートである。
【図16】本発明のユーザインタフェースモジュールの動作を示すフローチャートである。
【図17】本発明のユーザインタフェースモジュールの端末機表示画像を示す第1の正面図である。
【図18】本発明のユーザインタフェースモジュールの端末機表示画像を示す第2の正面図である。
【図19】本発明のユーザインタフェースモジュールの端末機表示画像を示す第3の正面図である。
【図20】本発明のユーザインタフェースモジュールの端末機表示画像を示す第4の正面図である。
【図21】質問及びデータが、本発明のユーザインタフェースモジュールのウィンドウに表示され、それらのウィンドウ間を転送される態様を示すブロック図である。
【図22】本発明の好適実施例の(問題に関する)データ記述子を含む知識ベースを示す説明図である。
【図23】本発明の好適実施例の(問題に関する)データ記述子を含む知識ベースを示す説明図である。
【図24】本発明の好適実施例の(測定に関する)データ記述子を含む知識ベースを示す説明図である。
【図25】本発明の好適実施例の(ランドマークに関する)データ記述子を含む知識ベースを示す説明図である。
【図26】本発明の好適実施例の(シンプトンに関する)データ記述子を含む知識ベースを示す説明図である。
【図27】本発明の好適実施例の(シンプトンに関する)データ記述子を含む知識ベースを示す説明図である。
【図28】本発明の好適実施例の(シンプトンに関する)データ記述子を含む知識ベースを示す説明図である。
【図29】本発明の好適実施例による(仮説)規則を含む知識ベースを示す説明図である。
【図30】本発明の好適実施例による(後向き)規則を含む知識ベースを示す説明図である。
【図31】本発明の好適実施例による(仮説)規則を含む知識ベースを示す説明図である。
【図32】本発明の好適実施例による(後向き)規則を含む知識ベースを示す説明図である。
【図33】本発明の好適実施例による(後向き)規則を含む知識ベースを示す説明図である。
【図34】データ通信ネットワークを診断するための従来の方法を示す説明図である。
【図35】ランドマークデータ抽出パラダイムを示す説明図である。
【図36】仮説及び決定プロセスに従ってデータ通信ネットワークを診断する方法を示すフローチャートである。
【図37】仮説及び決定プロセスに従ってデータ通信ネットワークを診断する方法を更に詳細に示すフローチャートである。
【図38】ランドマークデータ抽出パラダイムに従ってデータ通信ネットワークを診断する方法を示すフローチャートである。
【符号の説明】
142 データ通信ネットワーク
102 エキスパートシステム
2402 ランドマーク
2304 ネットワークデータ
2302 ネットワーク問題
Claims (6)
- データ通信ネットワークを診断してネットワーク問題を識別するためのコンピュータを基礎とする方法であって、
(1)ネットワーク問題の有用な特性を反映するデータの予め定義された翻訳を表わす少なくとも1つの一次ランドマークであって、その存在が関連ネットワーク問題が存在することの妥当な可能性を示すものである、少なくとも1つの一次ランドマークを選択するステップと、
(2)前記少なくとも1つの一次ランドマークに関連する第1のネットワークデータを収集するステップと、
(3)前記第1のネットワークデータを翻訳して前記少なくとも1つの一次ランドマークが存在するか否かを判定するステップと、
(4)前記少なくとも1つのランドマークが存在する場合、前記関連ネットワーク問題が存在するという仮説を立てるステップと、
(5)ネットワーク問題の有用な特性を反映するデータの予め定義された翻訳を表わす少なくとも1つの二次ランドマークであって、その存在が関連ネットワーク問題が存在することを確認するものである、少なくとも1つの二次ランドマークを識別するステップと、
(6)前記少なくとも1つの二次ランドマークに関連する第2のネットワークデータを収集するステップと、
(7)前記第2のネットワークデータを翻訳して前記二次ランドマークが存在するか否かを判定するステップと、
(8)前記少なくとも1つの二次ランドマークの所定の組み合わせが存在する場合、前記関連ネットワーク問題が存在することを示すステップと、
からなる方法。 - 前記データ通信ネットワークがARPAネットワークを含む、請求項1の方法。
- 前記方法がエキスパートシステムで実施される、請求項1の方法。
- データ通信ネットワークを診断してネットワーク問題を識別するための装置であって、
(a)ネットワーク問題の有用な特性を反映するデータの予め定義された翻訳を表わす少なくとも1つの一次ランドマークであって、その存在が関連ネットワーク問題が存在することの妥当な可能性を示すものである、少なくとも1つの一次ランドマークを選択するための手段と、
(b)前記少なくとも1つの一次ランドマークに関連する第1のネットワークデータを収集するための手段と、
(c)前記第1のネットワークデータを翻訳して前記少なくとも1つの一次ランドマークが存在するか否かを判定するための手段と、
(d)前記少なくとも1つのランドマークが存在する場合、前記関連ネットワーク問題が存在するという仮説を立てるための手段と、
(e)ネットワーク問題の有用な特性を反映するデータの予め定義された翻訳を表わす少なくとも1つの二次ランドマークであって、その存在が関連ネットワーク問題が存在することを確認するものである、少なくとも1つの二次ランドマークを識別するための手段と、
(f)前記少なくとも1つの二次ランドマークに関連する第2のネットワークデータを収集するための手段と、
(g)前記第2のネットワークデータを翻訳して前記二次ランドマークが存在するか否かを判定するための手段と、
(h)前記少なくとも1つの二次ランドマークの所定の組み合わせが存在する場合、前記関連ネットワーク問題が存在することを示すための手段と、
からなる装置。 - 前記データ通信ネットワークがARPAネットワークを含む、請求項4の装置。
- 前記装置がエキスパートシステムで実施される、請求項4の装置。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US66791391A | 1991-03-12 | 1991-03-12 | |
US66899291A | 1991-03-12 | 1991-03-12 | |
US668992 | 1991-03-12 | ||
US668282 | 1991-03-12 | ||
US667913 | 1991-03-12 | ||
US07/668,282 US5317725A (en) | 1991-03-12 | 1991-03-12 | Landmark data abstraction paradigm to diagnose data communication networks |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0583257A JPH0583257A (ja) | 1993-04-02 |
JP3542811B2 true JP3542811B2 (ja) | 2004-07-14 |
Family
ID=27418175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05384892A Expired - Fee Related JP3542811B2 (ja) | 1991-03-12 | 1992-03-12 | データ通信ネットワークを診断するためのランドマークデータ抽出パラダイム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3542811B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4668117B2 (ja) * | 2006-04-28 | 2011-04-13 | 日本電信電話株式会社 | ネットワーク管理システムおよび方法 |
-
1992
- 1992-03-12 JP JP05384892A patent/JP3542811B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0583257A (ja) | 1993-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5317725A (en) | Landmark data abstraction paradigm to diagnose data communication networks | |
US5377196A (en) | System and method of proactively and reactively diagnosing a data communication network | |
US4937825A (en) | Method and apparatus for diagnosing problems in data communication networks | |
US6363384B1 (en) | Expert system process flow | |
US6529954B1 (en) | Knowledge based expert analysis system | |
US6526044B1 (en) | Real-time analysis through capture buffer with real-time historical data correlation | |
US6219626B1 (en) | Automated diagnostic system | |
US7340648B2 (en) | User support | |
TW546930B (en) | Network fault isolation | |
US5337320A (en) | Semi-automatic mode of network design | |
US7281040B1 (en) | Diagnostic/remote monitoring by email | |
KR950003201B1 (ko) | 온라인 테스트 방법 및 그의 장치 | |
Bennett et al. | DART: An Expert System for Computer Fault Diagnosis. | |
EP0549937A1 (en) | Methods and systems for alarm correlation and fault localization in communication network | |
EP4235431A1 (en) | Automobile bus fault diagnosis method and apparatus, and computing device | |
US8311979B2 (en) | Method and system for importing an application and server map to a business systems manager display | |
CN109088773A (zh) | 故障自愈方法、装置、服务器及存储介质 | |
CN109218407A (zh) | 基于日志监控技术的代码管控方法及终端设备 | |
EP0508571A2 (en) | Expert system to diagnose data communication networks | |
US20040250260A1 (en) | Middle-ware interface status tool and method for using same | |
AU746056B2 (en) | Method for extending OSI ping function capability | |
JP3542811B2 (ja) | データ通信ネットワークを診断するためのランドマークデータ抽出パラダイム | |
JPH0983516A (ja) | ネットワーク障害診断装置 | |
Xu et al. | MAS and fault-management | |
JP2751861B2 (ja) | ネットワークシステム障害検出処理回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20031209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040402 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090409 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |