JP2004533185A - 会話型階層状態の表示 - Google Patents
会話型階層状態の表示 Download PDFInfo
- Publication number
- JP2004533185A JP2004533185A JP2003504231A JP2003504231A JP2004533185A JP 2004533185 A JP2004533185 A JP 2004533185A JP 2003504231 A JP2003504231 A JP 2003504231A JP 2003504231 A JP2003504231 A JP 2003504231A JP 2004533185 A JP2004533185 A JP 2004533185A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- layout
- fishbone
- resource profile
- rendering
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
Abstract
本発明は、スノーフレーク・レイアウト内にレンダリング・フィッシュボーン・レイアウト(45)を内蔵させるために、ネットワーク・リソースの状態を表示するための方法および装置を特徴とする。各フィッシュボーン・レイアウトは、リソース・プロファイル(30)およびリソース・プロファイル(77)間の従属関係を含む階層を特徴とする。リソース・プロファイルは、ネットワーク・リソースを表す。スノーフレーク・レイアウト(46)内の階層は、共通の根を共有する。
Description
【技術分野】
【0001】
本発明は、ネットワークの監視に関し、特に状態の表示に関する。
【背景技術】
【0002】
(優先権の主張)
本出願は、引用によってその全文を本明細書の記載に援用する、2001年6月8日出願の米国特許出願第60/297,219号の優先権を35USC§119(e)により主張する。
【発明の開示】
【発明が解決しようとする課題】
【0003】
ネットワーク監視ソフトウェアの目的は、ネットワーク・リソースに関する問題および潜在的問題を検出することである。それ故、ネットワーク監視ソフトウェアは、問題があるリソースから次のリソースにどのようにして伝搬する恐れがあるのかに関連する。ネットワーク監視ソフトウェアは、また、問題を起こしているいくつかの構成リソースを含む所与のリソースのために、所与の構成要素または一組の構成要素への問題の根元を分離することにも関連する。ネットワーク監視ソフトウェアのこの目標および関連する目標についての1つの用語は、「根本原因分析(root cause analysis)」である。根本原因分析は、問題の発生源、すなわち、問題を伝搬した第1の状況を探す。それに沿って問題が伝搬した経路は、その問題が発生した第1のリソースと、その問題が伝搬した先の第2のリソースとの間の依存関係として表すことができる。第2のリソースが問題を引き起こさないかどうかは、第1のリソースに依存する。このように2つのリソースが関連している場合、従属関係は「二元性」のものになる。もっと複雑な従属関係は二元的なものではなく、3つまたはそれ以上のリソースが関連している場合がある。このような関係は、通常一組の二元従属関係で表すことができる。
【0004】
有向木
図9Aは、有向木39、すなわち、コンピュータ業界では周知のデータ・モデルを示す。木39は、ノード391および縁部396を含む。木39は、その根392と呼ばれる正確に1つのノード391を含む。各縁部396は方向394を持ち、2つの異なるノード391を接続している。「経路」は各メンバー縁部396が、その近隣の縁部396とノード391を共有するような一連の縁部396である。
【0005】
方向394は、2つのノード391の一方に、「起点」という名称をつけ、他方のノードに所与の縁部396に対して「宛先」という名称をつける。有向経路は、経路の第1の縁部396の起点ノード391「から」、経路の最後の縁部396の宛先ノード391「へ」つながっている。この場合、有向経路内の隣接する縁部396は、他方の宛先ノード391と一方の隣接する起点ノード391を共有する。有向木39は、根392に関連する位置により各縁部396に対して決定した方向394を持つ。より詳細に説明すると、すべての縁部396が根392「の方を指している」か、またはすべての縁部396が根392「から反対方向を指している」有向木39。根392「の方を指している」という用語のもっと正式な定義は、木39の各縁部396は、根392に向かって有向経路をスタートするという定義である。同様に、根392「から反対方向を指している」という用語は、木39の各縁部396は、根392からの有向経路のところで終わっていると定義することができる。
【0006】
木39の周知の特性としては、各ノード391が、木39のある経路を通して、他の各ノード396に接続していることを意味する「接続状態」;および第1のノード391と第2のノード396の間の木39の最短経路は、これらのノード396間のこのような経路だけであることを意味する「経路の一意性」等がある。この経路は最短距離の経路である。経路の「長さ」は、それが含む縁部の数である。
【0007】
各ノード391の「深さ」は、ノード391を根392に接続する(一意の)経路の長さである。根392と呼ばれるノード391の深さはゼロである。すべての他のノード391は、ゼロでない整数の深さを持つ。
【0008】
1つの縁部396のノード391を記述するには、「起点」および「宛先」の他にもう1つの方法がある。深さが浅い方のノード391は他のノード391の「親」と呼ばれ、一方、深さが深い方のノード391は親の「子」と呼ばれる。Aがノード391である場合には、BはAの子ノード391であり、CはBの子ノード391である。その場合、CはAの「孫」と呼ばれる。子ノードを持たないノード391は「葉」と呼ばれる。ノード391の子ノード391の数は、そのノード391の「等級」と呼ばれる。
【0009】
同じ深さを持つノード391は、同じ「レベル」上に位置するといわれる。レベルはまた「層」とも呼ばれる。層は、多くの場合、そのノード391の深さを示す数により指定される。例えば、「層1」は、根392と縁部396を共有するすべてのノード391を含む。少なくとも2つの数学的真が、層に関して木39内の縁部396に適用される(当業者にとって証明は周知のものである)。最初に、ゼロより大きい「n」の場合には、各層の「n」ノード391は、層「n−1」内のノード391と正確に1つの縁部396を共有する。第二に、縁部396は、常に、異なる層、より詳細に説明すると、深さが正確に1だけ違う層からのノード391を結合する。第2の真の推論は、縁部396は、同じ層内でノード391と結合しないということである。これらの真は、直観的に下記のように要約することができる。木39の縁部396は、常に隣接する層間で「上下に」移動するが、決して(1つの層内で)「横に」移動したり、ある層を飛び越したりしないし、また、根ノード392を除くすべてのノード391は親を持つ。
【0010】
第1のノード391は、そのすべての子ノード391、孫ノード391、孫ノード391の子ノード391(以下同様)と一緒に、またその接続縁部396と一緒に、部分木395を形成する。今説明した部分木395は、それ自身根392として第1のノード391を持つ木39である。部分木395は木39と同じ構造および特性を持っているので、木39は「自己類似」であるといわれる。多くの再帰的アルゴリズムは、木39でうまく動作する。何故なら、他の理由もあるが、木39が自己類似であるからである。
【0011】
木39の2つのノード391間の「距離」は、これらのノードを接続している最短経路の長さである。(木39は接続しているので、少なくとも1つのこのような経路が存在すること、また木39は経路の一意性を持っているので、正確に1つのこのような経路が存在することを思い起こされたい。)1つの縁部396を共有する2つのノード391は、「直接」接続している。これを表すもう1つの方法は、その経路の長さが1であることである。1より長い経路により接続している2つのノード391は、「間接的に」、すなわち、中間ノード391を通して接続している。
【0012】
ノード391から深さの浅いノード391への方向は上方と呼ばれ、深さの深い方への方向は下方と呼ばれる。木39を「横断する」ということは、順次そのノード391へポイントすることを意味する。この場合、連続しているノードが縁部396により接続している場合には、連続しているノード391が選択されるだけである。
【0013】
ノード391は、木39に参加するために必要なものに加えて、データ構造とすることができる。縁部396は、同じ様な方法で、追加のデータ構造を含むことができるデータ構造としてコード化される。それ故、ノード391および縁部396用のデータ構造のいくつかの属性は、木39自身に固有のものではないエンティティに関連する場合がある。例えば、データ構造は、多くの場合、木39によりモデル化されているコンセプトの属性を含む。
【0014】
同じ用語が、階層が木構造を持つ等級に適用される。
【課題を解決するための手段】
【0015】
一般的にいって、ある態様においては、本発明は、複数のリソース・プロファイルおよびこれら複数のリソース・プロファイル間に複数の従属関係を含む階層をフィッシュボーン・レイアウト(特性要因図)にレンダリングするステップを含む、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。リソース・プロファイルは、ネットワークで接続しているリソースを表す。
【0016】
好ましい実施形態は、下記のものの中の1つまたはそれ以上を含む。本発明の方法は、フィッシュボーン・レイアウトの監視下のリソース・プロファイルを含む監視下のリソースの状態を入手するステップと、その状態を反映するためにフィッシュボーン・レイアウトを更新するステップとを含む。状態を入手するステップは、一定の時間間隔で状態を反復して入手するステップを含む。上記状態を入手するステップは、最も最新の時間間隔内で変化した監視下のリソースの特性についての情報を入手するステップを含む。監視下のリソース・プロファイルは、監視下のリソース・プロファイルとコンシューマ従属関係にある従属リソース・プロファイルに、入手した状態をどのように伝搬すべきかについての伝搬規則を含み、一方、フィッシュボーン・レイアウトを更新するステップは、従属リソース・プロファイルのレンダリングを更新するステップを含む。このレンダリングは、最初に、フィッシュボーン・レイアウトの第1の密度モードにより、表示パネルにフィッシュボーン・レイアウトを表示し、一方、本発明の方法は、さらに、第1の密度モードを第2の密度モードに置き換えるステップを含む。この置換は、表示パネルのサイズに対するフィッシュボーン・レイアウトの部材の比率の変化に応じて行われる。フィッシュボーン・レイアウトの第1の密度モードは、層2のリソース・プロファイルを背骨としてレンダリングする標準モードであり、第2の密度モードは、第1の密度モードに対して、もっと高い密度でフィッシュボーン・レイアウトの構成要素をレンダリングするためのモードである。フィッシュボーン・レイアウトの第1の密度モードは、第2の密度モードに対して、もっと高い密度でフィッシュボーン・レイアウトの構成要素をレンダリングするためのモードであり、第2の密度モードは、層2のリソース・プロファイルを背骨としてレンダリングする標準モードである。フィッシュボーン・レイアウトでの2つのリソース・プロファイルのレンダリングの間の位相的接続の一例は、2つのリソース・プロファイル間の直接的な従属関係に対応し、一方、フィッシュボーン・レイアウトの2つのリソース・プロファイルのレンダリング間に位相的接続が存在しないということは、リソース・プロファイル間に任意の直接的な従属関係が存在しないことに対応する。フィッシュボーン・レイアウトの第2の密度モードは、層2のリソース・プロファイルを平行四辺形としてレンダリングする稠密モードである。
【0017】
本発明の方法は、マウスオーバが継続した場合に応じて、フィッシュボーン・レイアウトの構成要素を記述する会話の要約を提示するステップを含む。この方法は、構成要素上でマウスが右クリックされた場合に、フィッシュボーン・レイアウトの構成要素に対するコンテキスト・メニューを表示するステップを含む。この場合、コンテキスト・メニューは、構成要素上で呼び出すための手順を提供するドリル・ダウン・リストを含む。コンテキスト・メニューは、構成要素に対してカスタマイズされる。ドリル・ダウン・リスト内のある手順は、ユーザが選択を行うとネットワーク分析ツール内の報告を呼び出す。ドリル・ダウン・リスト内のある手順は、構成要素がフィッシュボーン・レイアウトの根になるように、ユーザが選択を行った場合、フィッシュボーン・レイアウトの再度のレンダリングを行う。ドリル・ダウン・リスト内のある手順は、ユーザが選択を行った場合、フィッシュボーン・レイアウトを有する新しい表示パネルを開く。フィッシュボーン・レイアウトは、1つの根を有し、構成要素を根として使用する。ドリル・ダウン・リスト内のある手順は、ユーザが選択を行った場合、1つの根を有し、構成要素を根として使用する新しいスノーフレーク表示を開く。
【0018】
他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。この方法は、ルート・リソース・プロファイル(root resource profile)およびこのルート・リソース・プロファイルと従属関係にある従属リソース・プロファイルを含む階層を提供するステップを含む。一連の従属関係を含む各従属リソース・プロファイルからルート・リソース・プロファイルへの最短経路は、上記各従属リソース・プロファイルに対してその階層内の1つの層に対応する長さの経路を有する。リソース・プロファイルは、ネットワークにより接続しているリソースを表す。上記方法は、また、ルート・リソース・プロファイルまたは従属リソース・プロファイル間の監視下のリソース・プロファイルの状態を入手するステップと;上記状態を重大度に関連づけるステップと;フィッシュボーン・レイアウトの階層をレンダリングするステップとを含む。監視下のリソース・プロファイルは、重大度を示す視覚的特徴にレンダリングされる。
【0019】
好ましい実施形態は、下記のものの中の1つまたはそれ以上を含む。視覚的特徴は、重大度の程度を表す複数の色から選択した1つの色を含む。状態を重大度と関連づけるステップは、監視下のリソース・プロファイルに関連する状態測定基準の使用を含む。この方法は、状態の変化の通知を入手するステップと、重大度を更新するステップと;更新した重大度を表示するために監視下のリソース・プロファイルをレンダリングするステップを含むために、フィッシュボーン・レイアウトの階層を再度レンダリングするステップとを含む。重大度は、状態測定基準が表す行動から逸脱するために、アプリケーション全体のオーバライドを適用するステップを含む。この逸脱は、重大度の変化を抑制するステップを含む。フィッシュボーン・レイアウトは、スノーフレーク・レイアウトに含まれている。
【0020】
さらに他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。この方法は、リソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む論理階層を入手するステップを含む。リソース・プロファイルはネットワークで接続しているリソースを表す。この方法は、また、論理階層から視覚的階層を入手するステップを含む。この場合、視覚的階層の構成要素は、視覚的階層が木であるような論理階層の構成要素に対応する。この方法は、フィッシュボーン・レイアウトで視覚的階層をレンダリングするステップを含む。
【0021】
好ましい実施形態は、下記のものの中の1つまたはそれ以上を含む。視覚的階層は有向木である。フィッシュボーン・レイアウトは、スノーフレーク・レイアウトに含まれている。
【0022】
さらに他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するための計算装置を特徴とする。この装置は、プロセッサ、主記憶装置、視覚的表示装置、記憶装置、およびネットワーク接続を含む、その中で実施されているコンピュータ可読プログラム・コード手段を有する、コンピュータが使用することができる媒体を含む。プログラム・コード手段は、コンピュータに、リソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む階層を表示させるためのコンピュータ可読プログラム・コード手段を含む。リソース・プロファイルは、ネットワークで接続しているリソースを表す。この装置は、また、コンピュータに、リソース・プロファイル間の監視下のリソース・プロファイルの状態を入手させるためのコンピュータ可読プログラム・コード手段を含む。この装置は、コンピュータに、監視下のリソース・プロファイルの状態の視覚的表現のレンダリングを含む、フィッシュボーン・レイアウトの階層をレンダリングさせるためのコンピュータ可読プログラム・コード手段を含む。
【0023】
さらに他の態様においては、本発明は、スノーフレーク・レイアウトでフィッシュボーン・レイアウトをレンダリングするステップを含む、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。フィッシュボーン・レイアウトは、それぞれリソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む階層を特徴とする。リソース・プロファイルは、ネットワークで接続しているリソースを表す。各階層は共通の根を共有する。スノーフレーク・レイアウト内の1つまたはそれ以上のフィッシュボーン・レイアウトに関する好ましい実施形態は、フィッシュボーン・レイアウトのところですでに説明した1つまたはそれ以上の特徴を含む。
【0024】
さらに他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するための計算装置を特徴とする。該装置は、プロセッサ、主記憶装置、視覚的表示装置、記憶装置、およびネットワーク接続を含む、その中で実施されているコンピュータ可読プログラム・コード手段を有する、コンピュータが使用することができる媒体を含む。プログラム・コード手段は、コンピュータに、スノーフレーク・レイアウト内にフィッシュボーン・レイアウトをレンダリングさせるためのコンピュータ可読プログラム・コード手段を含む。各フィッシュボーン・レイアウトは、リソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む階層を特徴とする。リソース・プロファイルは、ネットワークで接続しているリソースを表す。各階層は共通の根を共有する。
【0025】
本発明の利点としては下記のものを含む。
【発明の効果】
【0026】
根本原因分析は、従属関係用の有用なアプリケーションである。システム計画は、従属関係の知識から見て、同様に有用であり、そのため、変化の影響を予測することができる。
【0027】
監視下のリソースの数が増大すると、ユーザは、相互に関連するリソースの組織化していないウェブを理解するのが困難になる。本発明の1つの利点は、ウェブ上に論理階層が置かれた場合、ルート・リソースに対して、フィッシュボーンまたはスノーフレークのようなレイアウトにより、論理階層が視覚的階層としてレンダリングされることである。フィッシュボーンまたはスノーフレーク内で発生するような視覚的階層の組織化した表現は、視覚的レンダリングの前には、意味が概念的に容易に理解できなかった場合でも、ウェブ内の状態の変化(例えば、ある問題の影響)の意味が視覚的に容易に理解することができることである。例えば、ルート・リソースの展望からリソースのウェブを見た場合、ウェブ内のルート・リソースの役割を洞察することができる。それにより、例えば、リソースが拡張された関係で中間的役割を果たしている場合には、多くの場合、他のリソースの役割も理解できる。上記関係が従属関係である場合には、1つの階層は、直接的に(根のすぐ下の階層のレベルで)、また間接的に(一時的に、その階層の以降のレベルで)、ルート・リソースが依存するすべてのリソースを表すことができる。
【0028】
本発明のもう1つの利点は、同じ一組のリソース上で、複数の論理階層を定義し、種々の展望を提供することができることである。さらに、論理階層は、種々のユーザ・プロファイルに合わせて調整することができるので、(例えば)ある種のユーザに高いレベルの展望を与え、一方リソースのもっと狭いサブセットに対して責任を持つユーザは、そのユーザの興味に排他的に焦点を当てる視点を使用することができる。
【0029】
本発明の1つまたはそれ以上の実施形態の詳細については、添付の図面および下記の説明内に記載する。下記の説明、図面および下記の特許請求の範囲を読めば、本発明の他の特徴、目的および利点を理解することができるだろう。種々の図面内の類似の参照符号は、類似の要素を示す。
【発明を実施するための最良の形態】
【0030】
上記態様の場合には、会話型表示は、ネットワーク監視ソフトウェアが監視しているリソースについての状態情報を示す。階層状態表示プロセスは、視覚的階層内に表示のためのリソースを配列する。視覚的階層は、相互に従属関係にあるリソースを含む論理階層から由来する。論理階層は、データ・モデルであり、一方、視覚的階層は論理階層の図形による表示である。視覚的階層は、「フィッシュボーン」および「スノーフレーク」レイアウトを含む。スノーフレーク・レイアウトは、2つのフィッシュボーン・レイアウトを含む。フィッシュボーン・レイアウトは、論理階層を1つの面内に様式化した木として表示する。フィッシュボーン・レイアウトは、ある瞬間に、石川ダイアグラムでいくつかの視覚的属性を共有する。しかし、より詳細に説明するように、フィッシュボーン・レイアウトは、他にも違いはあるが、フィッシュボーン・レイアウトが動的に更新され、ユーザと会話している間に、時間の経過中に変化することができるという点で、石川ダイアグラムとは異なる。また、フィッシュボーン・レイアウトは、その関連する論理階層が、所与の表示エリアに表示できないほどのフィッシュボーン・レイアウトに対する多くの部材を含んでいる場合には、表示モード間で移動することができる。
【0031】
階層状態表示プロセスは、ネットワーク監視ソフトウェアが監視しているリソースの状態が変化すると、視覚的階層を変えることができる。階層状態表示プロセスは、表示ウィンドウ内の視覚的階層をレンダリングする。ユーザは、各リソースに適合するように調整されたオプションのメニューを含む、リソースに関するもっと多くの情報を入手するために、表示ウィンドウと会話を行うことができる。オプションは、ユーザがリソースの詳細なチェックをスタートすることができる分析ツールを含む。分析ツールは、表示をレンダリングするアプリケーションの外部に存在する。通常、視覚的階層は、要約レベルの情報を表示し、一方、会話型オプションにより、ユーザは詳細レベルの情報を入手することができる。
【0032】
リソースは、ネットワーク管理ソフトウェアが監視するエンティティである。リソースは、ハードウェア、アプリケーション、サービス、ビジネス・プロセス、組織化構造(企業または大学の学部内のビジネス・ユニットなど)、ネットワーク内の経路、および他のネットワーク・リソースを含む。ハードウェア・リソースは、クライアント、サーバ、ルータ、スイッチ、およびNIC、並びに周辺デバイス(ディスク・ドライブなど)、およびネットワークで接続しているデバイス(プリンタおよびネットワークで接続している記憶装置など)を含む。個々のネットワーク・リソース、およびこのようなリソースの集合体の両方がリソースとなることができる。リソースの集合体を含むリソースの場合には、リソースは分散型のものであっても、異質なものまたは両方であってもよい。この集合体は他の集合体を含むことができる。
【0033】
図1Aは、HTTPインタフェース601を通して、ウェブ・サーバ60にアクセスするクライアント・アプリケーション22を含む階層状態表示プロセス20である。クライアント・アプリケーション22は、表示リポジトリ75内に記憶している論理階層30に関する情報を検索する。クライアント・アプリケーション22は、論理階層30をユーザ23への表示ウィンドウ50内に図形でレンダリングするために階層表現40を使用する。
【0034】
クライアント・アプリケーション22は、状態リポジトリ70および表示リポジトリ75からの情報を求めてウェブ・サーバ60にポーリングする。状態リポジトリ70は、リソースの状態に関する情報を収集し、それをリポジトリ70に入れる監視システム80により維持される。
【0035】
表示ウィンドウ50は会話型である。すなわち、ユーザ23からの入力に応答する。表示ウィンドウ50を使用することにより、ユーザ23は論理階層30内に記述されているリソースに分析ツール90を適用することができる。
【0036】
計算プラットフォーム
図1Bについて説明すると、階層状態表示プロセス20は、コンピュータ命令を含み、計算プラットフォーム63上のオペレーティング・システム631上で稼働する。図面を簡単にするために、図1Bは、階層状態表示プロセス20の実際の構成要素プロセスを、ネットワーク接続638により相互に接続している複数の計算プラットフォーム63上で分散することができる場合の、1つのオペレーティング・システム631および関連するハードウェアと会話を行う階層状態表示プロセス20を示す。
【0037】
オペレーティング・システム631は、主記憶装置634または不揮発性記憶装置637または両方内に常駐する一組のコンピュータ命令である。プロセッサ633は、オペレーティング・システム631および階層状態表示プロセス20に対するコンピュータ命令を実行するために、主記憶装置634および不揮発性記憶装置637にアクセスすることができる。
【0038】
ユーザ23は、視覚的表示装置639を含む1つまたはそれ以上の入力装置632、および1つまたはそれ以上の出力装置636を通して、計算プラットフォームと会話を行う。使用できる入力装置632としては、キーボード、マイクロホン、タッチセンシティブスクリーン、およびマウスのようなポインティング・デバイス等がある。視覚的表示装置639以外の使用できる出力装置636としては、スピーカおよびプリンタ等がある。通常、視覚的表示装置639は、種々の色を表示することができる(すなわち、モノクロ表示装置ではない)。
【0039】
不揮発性記憶装置637は、ディスク・ドライブのようなコンピュータが書き込むことができ、コンピュータ可読媒体を含む。バス635は、プロセッサ633、入力装置632、出力装置636、記憶装置637、主記憶装置634、およびオプションとしてのネットワーク接続638を相互に接続する。ネットワーク接続638は、例えば、TCP/IPを実行するように構成されたイーサネット(登録商標)・カードのようなネットワーク機能を供給するためのデバイスおよびソフトウェア・ドライバを含む。
【0040】
クライアント・アプリケーション22は、Java(登録商標)プログラミング言語で書き込まれる。クライアント・アプリケーション22のいくつかの構成要素は、もっと低いレベルのコード(機械コードなど)にコンパイルされたC++のような他の言語で書き込まれて、構成要素相互動作規格を通してソフトウェア・コードの本体に内蔵される。マイクロソフト・ウィンドウズ(登録商標)計算プラットフォームにおいては、例えば、構成要素相互動作規格は、COM(共通オブジェクト・モデル)およびOLE(オブジェクト・リンキングおよび埋込み)を含む。
【0041】
監視システムおよびリソース
図4Aについて説明すると、監視システム80は、監視下の環境25でリソース24を監視する。どのリソース24を監視すべきかの決定を含む監視システム80の構成は、本発明の範囲内に含まれないので、ここでは詳細に説明しない。監視システム80は、ネットワーク監視ソフトウェアを含む。市販の監視システム80の一例としては、米国マサチューセッツ州マールボロ所在のConcord Communications社が市販しているLiveExceptionsがある。
【0042】
概念的には、リソース24は、広い範囲の事柄用のプレースホルダーである。通常、リソースは、監視下の環境25でのネットワーク通信に関連する機能を実行するか、または他のリソース24との従属関係78内に含まれる。この機能自身は、ネットワーク通信に直接関連するものでなくてもよい。例えば、サーバ内のディスク・ドライブは、サーバのネットワークで接続している役割により、ネットワークで接続しているリソース24と見なすことができる。リソース24を定義するもう1つの方法は、階層状態表示プロセス20でそれがどのように使用されるかによる方法である。リソース24は、監視システム80により監視される何者かである。例えば、リソース24は、パーソナル・コンピュータ、サーバ、ルータ、スイッチ、リンク、L3経路、または応答経路のような、監視される1つの物理的ユニットを表すことができる。しかし、リソース24は、アトミックでなくてもよい。リソースは、リソース24の1つのグループ、1つのグループ内の複数のグループ等を表すことができる。リソース24は、例えば、ビジネス・プロセス、または部門またはプロジェクトのような組織上のユニットのようなコンセプトであってもよい。リソース24は、また、レベル3のネットワーク経路のような論理的構造であってもよい。重要なことは、リソース24は、また、アプリケーションまたはサービスのようなソフトウェアであってもよいということである。リソース24は、分散させることもできるし、1台のコンピュータに集中させることもできる。
【0043】
リソース24の特性は、名前、あるシステムまたは領域内の役割、およびそのコンテキストに適している特性を含む。リソース24の各特性は、現在の状態を含む。リソースは、また、所与の時点で現在の状態からの1つの値を持つ少なくとも1つの状態を持つ。リソース24の状態に対する値の範囲は、通常、トラブルが無い状態、警告およびエラーに対する値を含む。
【0044】
例えば、「東キャンパス・ルータ」という名称のリソースが存在するかもしれない。このリソースはあるネットワークでルータになる役目を持つ。このルータは、例えば、CPUのようなシステム構成要素、2つのネットワーク・インタフェース、および(ネットワークがIPプロトコルを使用すると仮定した場合の)少なくとも1つのIPアドレスのようなルータになるのに適した特性を有している。ネットワーク・インタフェースは、「理想的」、「混雑状態」および「故障」を含む動作状態を持つことができる。
【0045】
図4Bについて説明すると、リソース24は、表示リポジトリ75内に位置していて、リソース表現795により表される。リソース表現795は、リソース24および計算環境内で乗算を行うためのリソース24の抽象特性を参照するソフトウェア・オブジェクトである。それ故、リソース表現795とそのリソース24との間の相互関係は、概念的に非常に強固である。
【0046】
リソース参照796はリソース24を記述する。リソース表現795の特性797は、対応するリソース24上の特性を表す。特性797は、特性状態798を含む。図4Bに示すように、監視下の環境25は、任意のリソース参照796により参照されないリソース24cを含むことができることに留意されたい。しかし、各リソース参照796は、ある種のリソース24を記述する。
【0047】
リソース・プロファイル
所与のリソース24は、監視下の環境25内で種々の役割を行うことができる。例えば、所与のサーバは、複数のアプリケーションおよびサービスをサポートすることができる。場合によっては、ある役割を行っているリソース24に関する問題は、その役割の中の他の役割を行っている同じリソース24に関する問題でない場合がある。例えば、あるレベルの混雑を経験しているルータは、ネットワーク・サービスをサポートしているリアルタイム・トラヒックを供給するために、ルータに依存するアプリケーション類似のビデオ会議の場合のように、「リアルタイム」コンテキストで問題を引き起こす場合がある。同時に、「電子メール」コンテキストの場合には、電子メール・アプリケーションは、同じルータに依存する場合があるが、混雑のレベルがある問題を発生する前に遥かに高いしきい値を持つことができる。
【0048】
通常、リソース・プロファイル77は、コンテキスト内でリソース24を表現する1つの方法を提供する。それ故、所与のリソース24は、2つ以上のコンテキストで表現することができる。
【0049】
図5Aについて説明すると、リソース・プロファイル77は、リソース表現795を状態の値775とペアにする。この ペアの形成は、参照770によりコード化される。状態の値775は、関連するリソース表現795の状態798からのものである。この派生は状態測定基準776により与えられる。状態の測定基準776は、状態の値775が表す状態およびその値の加重方法を決定するので、状態の測定基準776は、その状態798の選択により、またそれが割り当てる出力によりコンテキストを表すことができる。例えば、図5Aの場合には、リソース・プロファイル77aおよび77bは、1つのリソース表現795に対する2つの異なるコンテキスト(それぞれ、「コンテキストA」および「コンテキストB)を表す。また、異なるプロファイル77は、状態の測定基準776の使用のために同じ状態798を使用することにも留意されたい。図の例の場合には、リソース・プロファイル77aは、状態798iおよび798iiを使用することができ、一方リソース・プロファイル77bは、状態798iおよび798iiiを使用する。すなわち、状態798iは両方に共通である。
【0050】
リソース・プロファイル77は、そうでない場合には、イベント・フィルタ771内のこれらの分類に対する基準をコード化することにより、その状態の値775に影響を与える例外の分類を無視することができる。
【0051】
リソース・プロファイル77は、分析ツール90により露出される分析機能799のドリル・ダウン・リスト778を指定することができる。ドリル・ダウン・リスト778は、視覚的階層40内のリソース・プロファイル77のレンダリングにより、ある相互作用中ユーザ23に提示される。(「フィッシュボーン会話」の節を参照されたい。)ドリル・ダウン・リスト778は、ユーザ23が使用することができる分析方法を調整するための方法を各リソース・プロファイル77に供給する。
【0052】
リソース・プロファイル77を供給する市販の製品としては、米国マサチューセッツ州マールボロ所在のConcord Communications社が市販しているNetworkHealthがある。
【0053】
従属関係
図5Bについて説明すると、従属関係78は、それにより、1つのリソース24(この例の場合には、リソース24bである)内のイベントが、他のリソース24aの状態に影響を与えることができる1つの条件を表す。より詳細に説明すると、リソース24bは、リソース・プロファイル77bにより参照されるリソース表現795bにより表される。同様に、リソース24aは、リソース・プロファイル77aにより参照されるリソース表現795aにより表される。用語の下記の使用に留意されたい。コンシューマの従属関係78の「方向」は、問題が伝搬する方向と反対方向である。リソース・プロファイル77aは、リソース・プロファイル77b「に依存する」かまたは「のコンシューマである」。一方、リソース24b内の問題は、リソース24aの方向に伝搬する(または影響を与える)。従属関係78上の他の端部の展望から、すなわち、リソース・プロファイル77bがリソース・プロファイル77a「へのプロバイダである」プロバイダの従属関係78の場合には、従属関係78の方向は問題が伝搬する方向と一致する。
【0054】
リソース・プロファイル77は、コンテキストの視点から見るとリソース24を表していることを思い起こされたい。従属関係78は、リソース・エンティティ795ではなく、リソース・プロファイル77を参照することによりコンテキストを内蔵する。
【0055】
所与の従属関係78に関連するリソース・プロファイル77の数は、従属関係78の「等級」と呼ばれる。2つのだけのリソース・プロファイルに関連する関係は「二元」と呼ばれる。図5Bは、例示としての二元従属関係78である。2より高い等級の従属関係78は、下記のように一組の二元従属関係78により表すことができる。等級nの関係を記述するコンテキストを選択し、そのコンテキスト内の関連する各リソース24に対してリソース・プロファイル77を作成し、2つのリソース24の相互作用を記述するために、リソース・プロファイル77の各ペア間の二元従属関係78を追加する。
【0056】
コンシューマの関係およびプロバイダの関係は、実際の世界のアプリケーション内では共通である。これらの関係は、「内に含む」または「に依存する」という句で直観的に記述する多くの関係をモデル化することができる。「に依存する」という句は、明らかに従属関係78に適している。「内に含まれる」という句も、また、多くの場合、従属関係78によく適している。何故なら、構成要素内の問題は、多くの場合、全体に伝搬する恐れがあるからである。例えば、サーバSが3つのハード・ディスク・ドライブC、DおよびEに依存している場合には、S、C、DおよびEに対するリソース・プロファイル77、およびSからC、DおよびEへそれぞれ3つの従属関係78を生成することができる。同様に、会計部Aが2つのサーバSおよびTに依存している場合には、それぞれAからSおよびTへ2つの従属関係78と一緒に、AおよびTに対して追加のリソース・プロファイル77を生成することができる。1つのリソース24が、いくつかの他のリソース24を内蔵または統合していて、一方、それらリソースに依存している状態は、ネットワーク監視ソフトウェアのユーザにとって非常に重要である。
【0057】
二元でない従属関係78の一例は、3つまたはそれ以上のリソース24を含む分散処理またはサービスの構成要素である。
【0058】
論理階層
論理階層30は、リソース・プロファイル77間の従属関係78のウェブを記述する木をベースとするデータ・モデルを提供する。表示リポジトリ75は、図8に示すように、表示記録752内に各論理階層30を記憶する。表示リポジトリ75は、そこから2つ以上のクライアント・アプリケーション22が、同時に同じ論理階層30にアクセスすることができる中央の位置を供給する。
【0059】
論理階層の意味
広い意味で、論理階層30は、(以下にさらに詳細に説明するように)1つまたはそれ以上の概念上のフレームワークの下で、リソース・プロファイル77およびその関連する従属関係78を収集するための柔軟な構造である。その柔軟性により種々様々な設計を行うことができるので、論理階層30は悪い設計の影響を受けやすい。例えば、ユーザ23は、機能分析に基づく組織スキームより、アルファベット順の組織スキームを軽視する場合がある。もっと微妙には、第1のユーザ23は、ネットワーク・ハードウェアに基づく機能分析よりもビジネス処理に基づく機能分析を軽視する場合がある。また、第2のユーザ23は、おそらく第2のユーザ23が監視下の環境25内で、第1のユーザ23とは異なる役割または目的を持っているために、異なる意見を持つ場合がある。論理階層30を内蔵するために、リソース・プロファイル77および従属関係78の選択を含む、論理階層30の意味をユーザ23の要件に形成するための技術は、本発明の範囲を超えるものである。代わりに、記述は、表示リポジトリ75が、ユーザ23にとって有用な論理階層30を含むように、すでに構成されていると仮定する。
【0060】
論理階層30は、多くの場合、ユーザ23を考慮するために、監視下の環境25のある1つの態様をモデル化する。それ故、監視下の環境25のすべての態様をモデル化するには、複数の論理階層30が必要になる場合がある。また、複数の論理階層30を異なるユーザ23に適するように供給することもできる。
【0061】
木の基礎
論理階層30は、木をベースとする構造に図9Bに示す要素を表示するために、図9Aの従来技術によるデータ・モデルを利用する。各リソース・プロファイル77は、1つのノード391に対応し、一方、その対応する従属関係78が対応するリソース・プロファイル77を接続する場合だけ、縁部396が2つのノード391を接続するように、各従属関係78は1つの縁部396に対応する。根ノード392は、論理階層30が表す意味の「先端」または「中央」のところで、1つのリソース・プロファイル77と関連する。論理階層30のレベルは、木39内の層に対応する。
【0062】
例えば、その木をベースとするデータ・モデルを使用することにより、論理階層30は、隣接する層のエンティティの間に親子関係を持つように、情報を層内に組織することができる。親子関係は、従属関係78をベースとしている。例えば、それぞれがデータ・センターに依存するビジネス・ユニットに依存する法人のように、親リソース・プロファイル77は、子リソース・プロファイル77に依存することができる。別の方法としては、親リソース・プロファイル77は、複数のネットワークで接続しているサービスを供給するサーバのように、複数の子リソース・プロファイル77に供給することができ、一方、ネットワークで接続している各サービス(例えば、DNS、ファイル共有、およびネットワーク機密保護)は、複数のソフトウェア・アプリケーションにその機能を供給する。
【0063】
有向木39が経路一意性特性を持つことを図9Aから思い起こされたい。経路の一意性は、モデル化した世界、すなわち、監視下の環境25内には存在していなくてもよい。例えば、リソース・プロファイル77A、BおよびCは、AがBに関連し、BがCに関連し、およびCがAに関連するように相互に関連することができる。この場合、AからBへの経路は、直接の経路でもCを通しての経路であってもよい。これは、有向木39の経路の一意性の要件に違反する。この問題を処理するために、Aのコピーとして新しいリソース・プロファイル77A’を導入し、次に、Cとのその直接的関係でAの代わりにA’を使用することができる。A’は、Aと同じリソースを持っているが、特にCに対するコンテキストを含むリソース・プロファイルである。AにCを正式に結合した関係が、こんどはA’にCを結合する。それ故、A’を導入した後で、A、B、CおよびA’上のすべての経路は一意のものになる。一般的に、グラフ内の任意のマルチプルを除去するために、このアプローチを適用することができる。
【0064】
一般的に、所与のリソース24は、それぞれがそれ自身のコンテキストを持つ、複数のリソース・プロファイル77を通して、論理階層30内の複数の位置内に表すことができる。さらに、リソース24の状態は、複数のリソース・プロファイル77間で異なる場合がある。何故なら、それぞれの状態は、リソース・プロファイル77が表すコンテキストに依存するからである。例えば、あるルータがサービス・プロバイダの2人の顧客のためのトラヒックをサポートしていて、顧客Aが顧客Bよりも高いサービスの品質(QOS)で契約していると仮定しよう。ルータは、一方がAに対する、他方がBに対する、2つのリソース・プロファイル77によりモデル化されるリソース24である。ルータ上の混雑がある種のレベルに達すると、Bのもっと低い規格には適合している状態でAのQOSに適合できなくなる場合がある。それ故、顧客Aのコンテキスト内のルータに対応するリソース・プロファイル77は、他のコンテキスト(すなわち、Bのコンテキスト)内の同じリソース24が問題のないレベルであっても、警告レベルになる場合がある。
【0065】
従属プロファイルの階層
図9Bは、ルート・プロファイル(root profile)32と呼ばれる、リソース・プロファイル77を含む論理階層30である。説明を簡単にするために、この説明および図9Bは、3つのレベルを持つ例示としての階層を使用する。実際には、もっと多くのレベルを含むことができる。この例示としての階層は統合階層である。このことは、親がその子を統合する集合的なものであることを意味する。この3つのレベルのアプローチを使用する場合、根は「グループ・リスト」と呼ばれ、レベル1は、「グループ」を含み、レベル2は「要素」を含む。図9Bの場合には、ルート・プロファイル32は、グループ・リストを表し、グループ・プロファイル33は1つのグループを表し、要素プロファイル34はレベル2上の1つの要素を表す。
【0066】
論理階層の例示としてのソース
いくつかの分析技術が、監視下の環境25のような環境をモデル化するために、木をベースとするデータ・モデルを形成することに留意されたい。論理階層30は、その木をベースとするデータ・モデルにより上記技術をサポートする。いくつかの例は、トップダウン分析およびボトムアップ分析を含む。例えば、トップダウン分析は、所与のリソース・プロファイル35の方向に状態の変化が、どのように伝搬するのかを調査することができ、一方、ボトムアップ分析は、局部的状態から広い範囲にどのようにして状態の変化がエスカレートするのかを調査することができる。監視下の環境25に適用する特殊な分析技術、およびそのような技術の詳細は、本発明の範囲を超える。しかし、広い意味での例として、論理階層30は、下記のように、1つのリソース24の展望から、監視下の環境25のトップダウン分析により作成されたモデル階層をサポートすることができる。所与のリソース24は、対応するリソース・プロファイル77をルート・プロファイル32として指定する。ルート・プロファイル32が依存する、1つまたはそれ以上のリソース・プロファイル77を識別するためには、監視下の環境25のトップダウン分析を使用されたい。これらのリソース・プロファイル77を、二元従属関係78によりルート・プロファイル32に接続しているグループ・プロファイル33として指定されたい。論理階層30の木の連続しているレベルに位置させるために再帰的に反復されたい。
【0067】
アラーム
監視システム80は、アラーム35をリソース・プロファイル77と関連づける。より詳細に説明すると、図4Aに点線の矢印で示すように、監視エージェント82は、リソース24に対するイベント26を検出する。イベント26は、リソース24の1つまたはそれ以上の特性の状態の変化であってもよい。監視エージェント82は、監視サーバ81にイベント26を通知する。監視サーバ81は、リソース24を表す1つまたはそれ以上のリソース・プロファイル77を発見するために、表示リポジトリ75(図4に図示せず;図8を参照されたい)をチェックする。リソース・プロファイル77(図5Aに示すように)は、監視サーバ81にイベント26を無視するように指示することができるイベント・フィルタ771を含む。そうでない場合、監視サーバ81は、状態の値775を評価するために、リソース・プロファイル77の測定基準776を呼び出すことができる。監視システム80は、評価された状態の値775のいくつかの設定が、監視システム80にリソース・プロファイル77に対するアラーム35を生成させるように構成されている。すなわち、状態の値775のいくつかの指定の設定は、アラーム35を生成するのに十分な重大度レベルを持つ。監視システム80は、イベント26を評価したリソース・プロファイル77に対応する状態ファイル71に、各アラーム35を書き込む。1つのイベント26が、2つ以上のリソース・プロファイル77上でアラーム35を生成することができることに留意されたい。また、1つのイベント26が、所与のリソース・プロファイル77上で2つ以上のアラーム35を生成することができる。例えば、第2のアラーム35とは異なる方法で伝搬するように、第1のアラーム35を指定することができる。
【0068】
アラーム35は、重大度レベル351、(重大度レベルを故障対警告のようなもっと広い分類にグループ分けする)等級352、テキスト記述353、および能動/非能動フラッグ354を含む。
【0069】
表示
次の節においては、論理階層30の視覚的表示装置の構成要素および技術について説明する。
【0070】
表示ウィンドウ
表示ウィンドウ50は、通常は、CRTモニタまたは平面パネル・ディスプレイのような視覚的表示装置639である、出力装置636(図1Bに示す)上でユーザ23に表示される。図3Bは、表示ウィンドウ50が、表示ウィンドウ50の頂縁部に沿って配置されているタイトル・バー511、タイトル・バー511のすぐ下に配置されているメニュー・バー512、表示ウィンドウ50の底縁部に沿って配置されているステータス・バー513、および表示ウィンドウ50の残りの部分を占める表示パネル515を含む、当業者にとって周知のある種のGUIオブジェクトおよび技術を含む様子を示す。
【0071】
タイトル・バー511は、クライアント・アプリケーション22を、オペレーティング・システム631(図1Bに示す)上で稼働している(おそらくいくつかの)アプリケーション間の表示ウィンドウ50のオーナーとして識別するテキストを含む。タイトル・バー511は、オペレーティング・システム631に対して特有の他の機能を供給する。通常、上記機能は、表示ウィンドウ50の位置を再度変え、再度サイズを決め、表示ウィンドウを閉じることを要求し、またはサイズを元に戻す機能を含む。
【0072】
メニュー・バー512は、メニューバー512の上のドロップダウン・メニュー518上のドロップダウン項目519を選択するために、ユーザ23がキーおよびマウスを操作するとそれに反応する。メニュー518のドロップダウン項目519は、ユーザ23がメニュー518と会話を行うまで表示されない。通常、メニュー518およびドロップダウン項目519の中のあるものは、オペレーティング・システム631のGUI規格により命令を受ける。例えば、「ファイル」メニュー518(図6Bに示す)は、通常、アプリケーション・ファイルを開閉するための、およびクライアント・アプリケーション22を中止するためのドロップダウン項目519を含む。
【0073】
第2の種類のメニューであるコンテキスト・メニュー514も、ユーザ23が表示パネル515上にマウスのポインタ51を位置させ、入力装置632を通して右クリックするか、または他の何らかの指定の行動をするまで画面に表示されない。(例えば、マイクロソフト・ウィンドウズ(登録商標)の場合には、コンテキスト・メニュー514を表示するためにキーボード上に専用のキーが存在する場合がある。)この説明においては、「右クリック」は通常この行動を意味する。「右クリック」すると、マウス・ポインタ51の位置の近くにコンテキスト・メニュー514が表示される。ドロップダウン・メニュー518と同様に、コンテキスト・メニュー514は、ユーザが選択するためのドリル・ダウン項目516のリストを含む。しかし、コンテキスト・メニュー514は、通常、アプリケーションの現在の状態およびマウス・ポインタの位置、それ故、用語「コンテキスト」に対して調整される。より詳細に説明すると、マウス・ポインタ51が、リソース24のレンダリングの上に位置している場合には、ドリル・ダウン項目516は、そのリソース24またはリソース・プロファイル77およびその現在の状態に調整することができる。
【0074】
例えば、マイクロソフト・ウィンドウズ(登録商標)のようないくつかのオペレーティング・システム631においては、メニュー・バー512またはステータス・バー513または両方は、拡張することもできるし、カスタマイズすることもできるし、完全に隠すこともできる。タイトル・バー511、メニュー・バー512、ステータス・バー513、中央の表示パネル515、およびコンテキスト・メニュー514を使用するユーザ・インタフェースは、当業者であれば周知のものである。(メニュー・バー512のドロップダウン項目519、コンテキスト・メニュー514内のドリル・ダウン項目516の内容を含む、それを供給するその特定の内容および技術は、本発明の重要な部分であるが)このようなユーザ・インタフェース要素は、それ自身、本発明の重要な部分ではないので、GUI技術については、これ以上詳細に説明しない。
【0075】
フィッシュボーン
階層状態表示の1つの形は、1つの面内に論理階層30を、様式化した木として表示するフィッシュボーン・レイアウト45(図2A)である。階層状態表示のもう1つの形は、以下に説明するようにスノーフレーク46である。フィッシュボーン・レイアウト45という名前がついたのは、魚の背骨を連想させるからである。フィッシュボーン・レイアウト45は、ある場合には、製造品質制御の分野でのレイアウトである石川ダイアグラムといくつかの視覚的属性を共有する。しかし、フィッシュボーン・レイアウト45は、動的に更新することができ、石川ダイアグラムといろいろ異なる点があるが会話型である。
【0076】
フィッシュボーン・レイアウト45は、論理階層30内のルート・プロファイル32と関連する、ルート・アイコン/ラベル(root icon/label)421を持つ木を示す。フィッシュボーン・レイアウト45は、また、フィッシュボーン・レイアウト45のほぼ全長を走るルート・ライン(root line)422を特徴とする。通常、ルート・ライン422は、フィッシュボーン・レイアウト45をほぼ半分に分割する。
【0077】
通常、各リソース・プロファイル77のレンダリングは、ラベルまたはアイコンまたは両方により固定されている(または以下に説明するように、レンダリング・エンジンが空間のために制限されている場合には、どれによっても固定されていない)ラインを含む。「アイコン/ラベル」という用語は、この可能なアイコンまたはラベルまたは両方を意味する。
【0078】
ルート・リソース・プロファイル77と直接従属関係78にあるリソース・プロファイル77は、1つのグループである。各グループは、グループ・アイコン/ラベル424をルート・ライン422に接続している、それ自身のライン423と一緒にその自身のアイコン/ラベル424を含む。グループ・ライン423(および一般的に任意の非ルート・リソース・プロファイル77のライン)は、「背骨」と呼ばれる。一般的に、レベル「n−1」のリソース・プロファイル77に直接関連する、レベル「n」のリソース・プロファイル77の場合には、レベル「n」のリソースは、アイコン/ラベルおよびアイコン/ラベルをレベル「n−1」用のラインに接続しているラインとして表示し、ファン状に拡がる木を形成する。背骨は、従属関係78に関してルート・プロファイル32からのまたはこのルート・プロファイル32に向かう方向性を示すために、一方の端部に矢尻を持つことができる。背骨上の方向は、通常、従属関係78の「プロバイダ」の方向を示すが、凡例427はそれに違反している。
【0079】
ルート・ライン422に直接接続している背骨は、ルート・ラインに対して通常は70〜80度の範囲内(しかし、必ずしもこの範囲に入らない)角度434だけ傾いている。ルート・ライン422のどちらかの側面へのこれらの背骨は、図2Aに示すように、ルート・ライン422に対してほぼ同じ角度434を共有する。それ故、ルート・ライン422の所与の側面上のすべての傾斜している背骨は、ほぼ相互に平行である。
【0080】
反復する類似性により、視覚的階層40の以降のレベルがレンダリングされる。傾斜している背骨に直接接続している背骨は、ルート・ライン422に平行であり、ルート・ライン422に平行な背骨に直接接続している背骨は傾斜している等々。それ故、すべての背骨は、3つの分類に入り、各分類のメンバーはほぼ相互に平行である。1つの分類は(ルート・プロファイル77から分かれる偶数の階層レベルであるリソース・プロファイル77を表す)ルート・ライン422に平行な背骨用の分類である。この分類は、「偶数」グループと呼ばれる。何故なら、これらの背骨は論理階層30の偶数レベル内のリソース・プロファイル77に対応するからである。(これらの目的のために、ゼロ(ルート・レベルの数)は、偶数と見なされる。)第2の分類は、偶数グループに入らないで、表示パネル515内でルート・ライン422の上にレンダリングされる背骨を含む。この背骨は「上部」グループと呼ばれる。上部グループ内の背骨は、主ライン422に直接接続しているか(すなわち、レベル1に位置するか)、またはこのような背骨から分岐する偶数の階層レベルである(すなわち、奇数レベルに位置する)。第3の分類は、最初の2つのグループに入らない背骨を含み、上部グループからルート・ライン422の他方の側面上にレンダリングされる。これらの背骨は「下部」グループと呼ばれる。上部グループの場合のように、下部グループ内の背骨は、ルート・ライン422に直接接続しているか、またはこのような背骨から分岐する偶数の階層レベルである。
【0081】
ルート・ライン422が垂直な場合には、他の背骨がルート・ライン422と同一線上に位置していないので、それより上には背骨は存在しない。この場合、上部グループは、ルート・ライン422の右手に偶数の背骨でなくてもよい。すでに説明したように、下部グループは、上部グループからルート・ライン422の他方の側面上で収集されなかった背骨を収集する。
【0082】
ユーザ試験は、フィッシュボーン整合スキームが、論理階層30を視覚的階層40としてレンダリングする視覚的に「クリーン」な方法であることを示している。ユーザ23は、一般的に、特に表示装置上に丁度3つのレベルが存在する場合には、論理階層30内でリソース・プロファイル77の大体のレベルを容易に知覚することができる。
【0083】
モード
フィッシュボーン・レイアウト45は、複数のモードで表示することができる。この実施形態の場合には、モードは、デフォールト・モード42(図2Aに示す)および稠密モード43(図2Bに示す)を含む。稠密モード43は、表示する要素の数が、表示パネル515の現在のサイズで効果的に処理するには、デフォールト・モード42に対してあまりに高い状況を処理する。モード間の切り替え点は変化する。何故なら、切替え点は、表示装置内の要素の数、ノードの等級(子の数)、現在の表示パネル515のサイズおよび解像度、およびおそらく階層の身分の変化速度に依存するからである(何故なら、ユーザ23は、ある周期より頻繁に表示装置が再配置されるのを望ましくないと見なすからである)。例えば、切替え点は、さらに、フォントおよびアイコン・サイズの選択および低いコントラストまたは低い解像度のような表示装置自身の特性を収容するための他の選択に依存する、各モードで達成することができる密度に依存する。広く一般化すると、1024×768ピクセルのウィンドウは、通常700〜1000フィッシュボーン構成要素の切替え点を生み出すことができる。
【0084】
デフォールト・モード42も稠密モード43も、ほとんどのオブジェクトおよび行動を共有する。視覚的取り決め(レイアウト、表示行動、色づけスキーム等)は、各モードで異なっていてもよい。より詳細に説明すると、稠密モード43は、通常、デフォールト・モード42とは異なる方法で、要素リソース・プロファイル77を表示する。デフォールト・モード42(図2Aに示す)は、通常、要素アイコン/ラベル426、要素ライン425、および要素分離429用の領域を使用する。要素分離429により、表示パネル515の背景を1つの要素レンダリングとそれに隣接するものとの間で見ることができる。しかし、稠密モード43(図2Bに示す)は、1つの辺がグループ・ライン423と接触していて、おそらく他の辺も隣接する稠密平行四辺形430に接触している、稠密平行四辺形430を含む要素リソース・プロファイル77を表す。隣接する稠密平行四辺形430は、交互ルミネセンスのような種々の図形的技術により互に視覚的に識別することができるが、密度が増大し(平行四辺形430が必要な程度に小さくなる)、小さなエリア、特に、大部分の視覚的表示装置639の解像度が低い場合には、コントラスト(色、ルミネセンス、肌理等)間を人間の目で識別するのが困難になる。マウスオーバ技術(以下に説明する)を使用すれば、ユーザ23は、パックされた平行四辺形430をしっかりと区別することができる。
【0085】
フィッシュボーン・レイアウト45の背骨は、少なくとも2つの層(すなわち、ルート・ライン422およびグループ・ライン423)の深さ、および通常は3つの層の深さに層状に重なっている。この技術には固有の上限はない。しかし、実際には、サイズおよび解像度が有限であるために、所与の視覚的表示装置639には限界がある。また、通常のユーザが視覚的に容易に入手できる情報の量が限定される場合がある。予備的ユーザ試験により、大部分のユーザは、1024×768ピクセルの視覚的表示装置639による、3つの層の階層が表示する情報に満足していることが分かっている。
【0086】
フィッシュボーン・レイアウト45は、また、凡例エントリ435を持つ凡例427を特徴とする。凡例エントリ435は、グラフィック436および凡例説明437を含む。凡例グラフィック436は、フィッシュボーン・レイアウト45内で使用される図形的取り決めを例示するグラフィックである。凡例説明437は、図形についての取り決めの意図する意味を説明するテキストを含む。
【0087】
フィッシュボーンの視覚的取り決め
この節では、フィッシュボーン・レイアウト45の視覚的外観に影響を与える取り決めの中のいくつかについて説明する。レイアウトまたは相互作用に関する取り決めを含む他の取り決めについては他の場所で説明する。
【0088】
表示パネル515は、レンダリングに優れた視覚的コントラストとプロミネンスを与える、その上にレンダリングが発光している黒い背景を持つ。通常、デフォールトの場合、レンダリングは、その最大のルミネセンスで表示されない。そのため、必要な場合、特に強調するためにルミネセンスを増大することができる。
【0089】
背骨上の矢尻は、従属関係78の方向を示す。
【0090】
レイアウトの密度により可能な場合には、位相的接続(接触または重ね合わせるレンダリング)は、フィッシュボーン内で意味を持つ。デフォールトの場合、レンダリングは、その間に背景が現れるように、分離429により表示パネル515内で相互に十分な間隔を持っている。レンダリングが表す構成要素間に直接的な従属関係78がある場合には、唯一の例外が(このデフォールト設定は強制的なものであるが)発生する。それ故、接続は従属関係78を示す。この視覚的取り決めは、デフォールト・モード42内のデフォールトである。
【0091】
表示装置639は、カラーを表示することができる。フィッシュボーン・レイアウト45は、その表示中にカラーを使用するが、個々に、また相互を比較する際に、赤緑盲のユーザ23が視認できるように色づけされている。色づけは、またモノクロ表示装置639と一緒に使用できるようにもなっている。
【0092】
フィッシュボーン・レイアウト技術
この節においては、表示パネル515内でのフィッシュボーンの構成要素の配置を制御する技術について説明する。
【0093】
デフォールトの場合、ルート・アイコン/ラベル321は、表示パネル515の右の境界の中央付近に位置するが、表示パネル515の任意の位置に表示することもできる。表示パネル515内にレンダリングする他の項目がない場合には、表示パネルの境界近くに位置するルート・アイコン/ラベル421は、フィッシュボーンの残りの部分のために使用することができる空間を最大にする。
【0094】
ルート・ライン422は、デフォールトの場合は水平であるが、任意の角度434にすることができる。例えば、スノーフレーク・レイアウト46のところで説明するが、3つ以上のフィッシュボーン・レイアウト45は、1つのルート・プロファイル32を共有することができる。この場合、レンダリングする第1の2つのフィッシュボーン・レイアウト45は、水平ルート・ライン422を持つことができるが、以降のフィッシュボーン・レイアウト45は、水平でないルート・ライン422を持つことができる。背骨の勾配は、通常、ルート・ライン422に対して70〜80度の範囲の角度である。ルート・ライン422のどちらかの側面への背骨は、図2Aおよび図2Bに示すように、ルート・ライン422に対して同じ角度434を共有する。
【0095】
背骨が直線であり、類似の背骨に対してほぼ相互に平行であるという原則は、背骨の分岐に対して特殊な例外を持つ。背骨は、有限の表示領域の制限を超えるために「分岐」または「包み込み」することができる。例えば、親の背骨が、表示パネル515内の同じ直線方向に継続することができないほど多くの、所与の親に接続する子リソース・プロファイル77が存在する場合がある。それ故、背骨(図2Aの分岐グループ・ライン428のような)は、背骨を位相的に接続状態に維持する必要がある追加のサブセグメント(分岐コネクタ445)を除いて、相互にほぼ平行な複数のサブセグメント446に分岐することができる。複数の平行なサブセグメント446は、背骨が1つのセグメントが使用するより小さな空間を、所与の直線方向に沿って使用することができるような方向を向くことができる。それ故、分岐することにより、ビューア64(図8に示す、以下に説明する)は、表示のための有限の境界へのファン状に拡がるフィッシュボーン・レイアウト45に適応することができる。
【0096】
背骨を包み込むためのアルゴリズムの目的は、使用する分岐の数を最も少なくすることである。ビューア64は、包み込みの必要性をすでに検出済みであると仮定する。「長さ優先」アプローチの場合には、分岐コネクタ445用の余裕があるが、追加のサブセグメント446の充填をスタートする前に、最も遠い許容できる長さに第1のサブセグメント446を充填する(すなわち、それらをサブセグメント446に接続している分岐の部分木からリソース・プロファイル77をレンダリングする)。
【0097】
デフォールトの場合には、階層の層内の構成要素は、最も近いルート・アイコン/ラベル421からスタートして先に移動するという方法で、名前によりアルファベット順にレイアウトされる。(他の静的スキームも使用することができ、論理階層30とペアになっている図8の表示記録752のレイアウト優先順位754で指定することができる。例えば、類似のレベル1の背骨をレイアウトするフィッシュボーン・レイアウト45に対して表示パネル515の領域を指定することができる。ある領域はサーバ用のものであり、他の領域はルータ用のものであり、第3の領域はサービス用のものであり、第4の領域はアプリケーション用のものである。)各フィッシュボーン・レイアウト45に対するレイアウトを標準化することにより、ユーザ23は、そのフィッシュボーン・レイアウト45に精通することができ、その構成要素に対する位置的メモリを形成することができる。このように精通することができれば、ユーザ23への情報の通信をスピードアップすることができる。例えば、精通することができれば、ユーザ23は、リソース・プロファイル77内に記憶しているアイデンティティまたはコンテキストを知るために、構成要素をチェックする必要がなくなり、ユーザ23は構成要素のレンダリングの変化をもっと迅速に解釈することができる。フィッシュボーン45を動的に分類することができる(例えば、各リソース・プロファイル77の現在の状態の値775の重大度レベルにより分類して)が、この実施形態の場合には、デフォールト・スキームは、非動的特性に基づいて分類するためのものである。
【0098】
表示パネル515は有限であるので、モードが何であれ、各要素をレンダリングする空間が常にあるわけではない。この場合には、空間がなくなったら、図2Aに示すように、楕円または他の先端を切除した記号433が表示される。
【0099】
デフォールトの場合には、重大度レベルのための色づけスキームが、グローバル色づけスキームまたは特定の用途用に設計されたスキームを持つことができる、監視エンジン80(または論理階層30を設計している際には、適当であると選択されたもの)から検索される。色づけスキームが一致すると、多くの場合そうであるように、特に監視エンジン80を使用しているユーザ23に対して、監視エンジン80と状態表示との統合がもっと継ぎ目のない状態になる。
【0100】
通常、重大度用の色づけスキームは、所与の重大度をカラーに関連づけるマッピングを含む。所与の重大度は、重大度のスケール上にランキングを含む。重大度スケールは、重大度を比較することができる重大度の全順位を示す。スケールに適している任意の2つの重大度の場合には、その重大度ランキングは、第1のランキングが、第2のランキングより低いのか、同じなのか、高いのかを示す。「重大度ランキング」と明示するための速記法は、ある重大度がもう1つの重大度よりランキングが低いか、同じか、高いかを単に表示する方法である。重大度に対する色づけスキームのカラーは、通常、不明瞭になるのを極力防止する目的で、相互にハッキリ見分けられるように選択される。また、高い重大度を示すために選択したカラーは、多くの場合、低いレベルの重大度を示すカラーよりも(もっと強烈な飽和度を持つように、またはもっと明るいルミネセンスで表示されるように)もっと目立つようになっている。基本的なカラー・スキームの通常の例は、デフォールトまたは問題がない場合にはグリーン、警戒を要する重大度の場合には黄色、および、故障または緊急な重大度の場合には赤を使用し、重大度データがない場合またはオフラインの場合にはグレイを使用する方法である。
【0101】
(アイコン/ラベル内の)アイコンは、サイズ、カラー、ルミネセンス、形状、またはブリンキングまたはチラツキのような動きにより変化をつけることができる。ブリンキングは、通常、非ブリンキング・レンダリングに戻る前の短い時間の間にだけ使用される。例えば、ブリンキングは、状態の最近の変化を示し、ブリンキングの後でいったんブリンキングを停止するのは、変化が最近のものでないことを示す。
【0102】
フィッシュボーンとの会話
この節においては、ユーザの行動にフィッシュボーン・レイアウト45が応答することができる方法について説明する。
【0103】
グループ・ライン423または要素ライン425上で左クリックすると、それが選択される。選択された場合には、背骨を強調することにより視覚的に表示される。グループ・アイコン/ラベルを選択すると、そのグループに対する全部分木が強調される。ルート・アイコン/ラベルを選択すると、全階層木が強調される。
【0104】
マウスオーバ・イベントは、ユーザ23がマウス・ポインタ51(図3Bに示す)をパスオーバした場合に、リソース・プロファイル77のレンダリングに対して発生する。ある要素ライン425または要素アイコン/ラベル426のマウスオーバ中、表示プロセスは、ある意味では、アイコン/ラベル426をより容易にクリック・オンすることができるように、要素アイコン/ラベル426内のラベルのフォントおよびアイコンのサイズを拡大する。表示プロセスは、また、特にフィッシュボーン・レイアウト45が稠密モード43である場合に、要素ライン425を拡大することができる。何故なら、稠密モード43は、場合により、空間をセーブするために要素アイコン/ラベル426を省略することがあるからである。潜在的クリックの目標を拡大すると、ユーザ23がクリックした場合、マウスが選択するものが見易くなる。ユーザ23がクリックするつもりがなくても、拡大すると、ユーザ23は、目標を識別するカラーおよび他の特徴を見やすくなる。
【0105】
リソース・プロファイル77の任意のレンダリングのマウスオーバを持続すると、マウスオーバ・ダイアログ517が開く。短い所定の時間間隔(通常は、例えば、1ミリ秒に対して1秒程度)よりも長い間マウスオーバが持続した場合には、マウスオーバが「保持」されるという。マウスオーバ・ダイアログ517は、リソース名、その状態およびそれに影響を与えるイベントについての統合情報を含む、リソース・プロファイル77に関するテキスト情報を含む。例えば、マウスオーバ・ダイアログ517は、下記のものを引用することができる。
【0106】
ルータ13
混雑状態
最後の30分間の11の警告
【0107】
図2Aについて説明すると、凡例427内においては、凡例エントリ435内の凡例グラフィック436は、フィッシュボーン・レイアウト45で使用する図形的取り決めの例を示す。凡例エントリ435の1つの使用方法は、重大度レベルを表す色づけまたは他の図形による取り決めの説明である。このような凡例エントリ435内で凡例グラフィック436を持続的に左クリックすると、その状態の値775が重大度レベルに対応するリソース・プロファイル77の背骨を除いて、すべての背骨のレンダリングが暗くなる。このように暗くなることにより、対応するリソース・プロファイルのレンダリングを強調する。
【0108】
フィッシュボーン・レイアウト45内のリソース・プロファイル77のレンダリング上で右クリックすると、リソース・プロファイル77のドリル・ダウン・リスト778が指定する、ドリル・ダウン項目516を含む図3Bのコンテキスト・メニュー514が表示される。ドリル・ダウン項目516は、リソース・プロファイル77に特有の分析ツール・ソフトウェア90(図1Aに示す)内の報告を開く。ドリル・ダウン項目516は、また別の表示ウィンドウ50でフィッシュボーン・レイアウト45を開くため、または選択したリソース・プロファイル77を根として使用するために、現在のフィッシュボーン・レイアウト45の再度中央への表示のようなナビゲーション・オプションを含むこともできる。もう1つのナビゲーション・オプションは、選択したリソース・プロファイル77の子供を見ることである。特に、視覚的階層40の最も低い表示レベルのところの要素に対して、フィッシュボーン・レイアウト45に現在表示されていない論理階層30の追加レベルであってもよい。子供は、他の表示ウィンドウ50でも見ることができるし、または(図3B内に示す所与のドリル・ダウン項目516に特有のコンテキスト・メニュー514のサブメニューを開く)階層メニュー520を通して見ることもできる。階層メニュー520は、もう1つの階層メニュー520を表示するドリル・ダウン項目516を含むことができる。
【0109】
フィッシュボーン・レイアウト45は、以下にさらに詳細に説明するように、呼び出した再描画イベントを表示することができる。呼び出された再描画イベントは、レンダリング・エンジンに表示パネルを再描画させる。呼び出された再描画イベントは、表示ウィンドウ50のサイズを変えた後、またはクライアント・アプリケーション22が論理階層30を、視覚的階層40の変化を必要とする再定義をしなければならないことを検出した場合に、クライアント・アプリケーション22の初期化中に発生する。再描画されたフィッシュボーン・レイアウト45が、現在の表示パネル515内に入らない場合には、ユーザ23に、先端切除に関する警告ダイアログが表示される。
【0110】
2つ以上の表示ウィンドウ50が開いた場合には、一番前の表示ウィンドウ50が、「現在の表示ウィンドウ」と呼ばれる。
【0111】
メニュー・バー
メニュー・バー512コマンドは、図6Bに示すように、下記のドロップダウン・メニュー518およびドロップ・ダウン項目519を含む。
【0112】
メニュー・バー512は、「ファイル」、「表示」、「実行」および「ヘルプ」というラベルがついているドロップダウン・メニュー518を含む。
【0113】
「ファイル」ドロップダウン・メニュー518は、「新規」、「開く」、「削除」、「サーバへ接続」、「新規ウィンドウ」、「最新リスト」および「エクシット」のためのドロップダウン項目519を含む。「新規」を使用することにより、ユーザ23は、新しい表示ウィンドウ50内に開くために、論理階層30を選択することができ、一方「開く」を使用することにより、同じ選択を行うことができるが、この場合使用するのは現在の表示ウィンドウ50である。「削除」を使用することにより、ユーザは、このような表示ウィンドウ50を閉じることができる。「サーバに接続」は、ログイン・ダイアログ(図示せず)を開くので、ユーザ23は、ウェブ・サーバ60に信用証明書を提示することができる。「新しいウィンドウ」は、現在の表示ウィンドウ50の冗長バージョンを開く。「最近のリスト」は、各ドロップダウン項目519が最近使用した論理階層30に対応するいくつかのドロップダウン項目519の柔軟なリストである。メニュー・セパレータ521は、「最近のリスト」を括弧内に入れることができる。「エクシット」は、クライアント・アプリケーション22を閉じるプロセスをスタートする。
【0114】
「表示」ドロップダウン・メニュー518は、現在の表示ウィンドウ50を変えるためのドロップダウン項目519を含む表示に影響を与えるドロップダウン項目519を表示する。
【0115】
「実行」ドロップダウン・メニュー518は、分析ソフトウェア90に関連するドロップダウン項目519を表示する。ドロップダウン項目519は、現在選択しているリソース・プロファイル77のスノーフレーク・ダイアグラム46を開く1つの項目を含む。ドロップダウン項目519は、また、性能報告、故障管理報告(現在選択しているリソース・プロファイル77のすべてのアラームのリストなど)、リソース・プロファイル77に関連するリソース24の構成に関する報告、およびピング(ping)、テルネット(telnet)またはリソース24のための管理システムのような(しかし、これらに限定されない)外部分析ツール90を含む。さらに、ユーザ23は、分析ツール90のリストを拡張することができる。ドロップダウン項目519は、分析ツール90とのその会話中、リソース・プロファイル77およびリソース24に関する情報を送ることができる。このような情報の例としては、リソース・プロファイル77の名前、そのネットワーク・アドレス等がある。
【0116】
「ヘルプ」ドロップダウン・メニュー518は、ウィンドウズ(登録商標)またはユニックス(UNIX(登録商標))のような、その上でクライアント・アプリケーション22が稼働している、オペレーティング・システム631のためのインタフェース規格に適合する。例えば、マイクロソフト・ウィンドウズ(登録商標)の場合には、「ヘルプ」ドロップダウン・メニュー518は、「の中に(intro)」、「使用する(using)」、および「に関する(about)」のための項目を含む。
【0117】
スノーフレーク
図3Aについて説明すると、スノーフレーク46は、視覚的階層40のための他の表示形式である。スノーフレーク46は、複数の同時論理階層30の先端に、(ルート・プロファイル32を表す)ルート・アイコン/ラベル442を表示する。フィッシュボーン・レイアウト45として表示されているこの各論理階層30は、ルート・アイコン/ラベル442を共有する。各フィッシュボーン・レイアウト45は、関連する表示記録752内に表示されたそれ自身のレンダリング取り決めを有することができる。例えば、図3Aに示すように、第1のフィッシュボーン・レイアウト45aは、デフォールト・モード42でレンダリングされ、一方、第2のフィッシュボーン・レイアウト45bは、稠密モード43でレンダリングされる。
【0118】
スノーフレーク・レイアウト46は、コンシューマおよびプロバイダの従属関係78の両方を同時に表示することができる。より詳細に説明すると、スノーフレーク・レイアウト46は、それが消費し、供給するリソース・プロファイル77の両方で、ルート・プロファイル32を表示することができる。図3Aの例の場合には、スノーフレーク・レイアウト46は、ルート・アイコン/ラベル442の左に位置する左のフィッシュボーン・レイアウト45aと、右に位置する右のフィッシュボーン・レイアウト45bを含む。左のフィッシュボーン・レイアウト45aは、ルート・プロファイル32が消費するリソース・プロファイル77を表示する。右のフィッシュボーン・レイアウト45bは、ルート・プロファイル32を消費するリソース・プロファイル77を表示する。この場合、フィッシュボーン・レイアウト45aには「原因」のラベルを、フィッシュボーン・レイアウト45bには「結果」のラベルをつけることができる。ルート・プロファイル32が、「原因」フィッシュボーン・レイアウト45a内の任意のリソース・プロファイル77と、「結果」フィッシュボーン・レイアウト45b内のリソース・プロファイル77との間の間接従属関係78用の重要な経路上に位置している状態で、この構成内のスノーフレーク46は、図形の形で、リソース・プロファイル77間の従属関係78の2つの木を表示する。ユーザ23は、スノーフレーク・レイアウト46を見ることにより、また原因のフィッシュボーン・レイアウト45aをチェックすることにより、問題の原因と思われるものを迅速に識別することができる。ユーザ23は、また、例えば、フィッシュボーン・レイアウト45bをチェックすることにより、問題の潜在的な影響を識別することができる。それ故、ユーザ23は最も重要な問題を最初に解決することができる。
【0119】
図3Aには示していないが、スノーフレーク・レイアウト46は、おそらく、水平でないルート・ライン422と一緒に、第3およびそれ以降のフィッシュボーン・レイアウト45を含むことができる。
【0120】
クライアント・アプリケーション
この節においては、クライアント・アプリケーション22のソフトウェア・コードについて説明する。一般的に、クライアント・アプリケーションは、ユーザへの視覚的階層40を含むGUIの提示;ユーザの行動に対する応答;状態情報および論理階層30にアクセスするためのウェブ・サーバ60との通信;および論理階層30内のリソース・プロファイル77用のドリル・ダウン・リスト778を動作可能にするための分析ツールとの通信という主要な特徴をカバーする。
【0121】
クライアント・アプリケーション22(図7Aに示す)は、Java(登録商標)ソフトウェア・アプリケーションである。クライアント・アプリケーション22の内部アーキテクチャは、Java(登録商標)アプリケーション用に勧告されたオブジェクト指向設計技術を使用する。これらの技術の中の1つは、モデル−デリゲイト・アーキテクチャと呼ばれる。モデル−デリゲイト・アーキテクチャ(Model−Delegate architecture)は、ユーザ相互作用用のコードを、レンダリングされるデータ構造をモデル化するためのモデル構成要素およびユーザ・インタフェースをレンダリングし、ユーザ行動を受信し、またモデル−デリゲイト・アーキテクチャの周囲のプログラムの流れおよび実行を制御するためのデリゲイト構成要素に機能的に分離することを勧告している。以下に説明するように、ビューア・モデル・クラス69(図7Bに示す)は、モデル構成要素としての働きをし、一方ビューア・クラス64は、デリゲイト構成要素としての働きをする。
【0122】
APPクラス
図7Bに示すAppクラス61は、クライアント・アプリケーション内のトップ・レベルのクラスである。Appクラス61は、クライアント・アプリケーション22がスタートした場合に実行する最初のクラスである。最初に、スタート後に、Appクラス61は、データ・マネージャ65、同期マネージャ66および主UIクラス67を含む他のクラスのいくつかの例をスタートする。
【0123】
データ・マネージャ
データ・マネージャ65は、オブジェクト内で多重化されるだろう情報を抽出するために、ウェブ・サーバ60と通信するために使用されるオブジェクトを構文解析する。すなわち、オブジェクトは、クライアント・アプリケーション22内の種々の宛先向けの複数の情報を含むことができる。データ・マネージャ65の主な機能は、送られてきた場合に、同期ブラウザ・マネージャ68(図7Bに示す)にアラーム35を通知することである。
【0124】
同期マネージャ
図8について説明すると、同期マネージャ66は、現在のすべての表示論理階層30用のハッシュ・テーブル661内に局部的にデータをキャッシュする。キャッシュされたデータは、論理階層30自身と表示記録752からの他の情報を含む。同期マネージャ66は、キャッシュ内のデータが確実にそのままでいるようにするために、すなわち、状態リポジトリ70および表示リポジトリ75に常駐するデータの正式なバージョンと同期状態に維持するために、ウェブ・サーバ60と通信する。
【0125】
ハッシュ・テーブル661は、表示リポジトリ75内のリソース・プロファイル77を識別するデータベースID662;名前663;それぞれが指定のリソース・プロファイル77と直接従属関係78にあるリソース・プロファイル77を表す子と親のリスト664を含む各リソース・プロファイル77に対する特性を記憶することができる。ローカル・キャッシュを維持することにより、同期マネージャ66は、クライアント・アプリケーション22内の集中場所からデータの参照を迅速に行う。例えば、同期マネージャ66は、データベースID662に関連する名前663を入手するための迅速な方法を供給する。例えば、要素アイコン/ラベル426(例えば、図2Aに示す)上のマウスオーバ中に、名前663が必要になる。マウスオーバは、要素のリソース・プロファイル77の名前を含む、マウスオーバ・ダイアログ517(例えば、図3Bに示す)を表示するのに必要になる。リソース・プロファイル77を表示したレンダリング・オブジェクト691(以下に説明する)は、レンダリング・データベースID692だけを有する。(名前663は、レンダリング・オブジェクト691内に直接記憶されない。何故なら、名前663は、変化することができるからである。ハッシュ・テーブル661だけが、名前663に対する局部的の正式な値を持つ)。また、名前663は、かなり迅速に必要になるので、ユーザ23は、クライアント・アプリケーション22が応答しないとは感じない。キャッシュは、名前633を発見する迅速な方法であり、キャッシュを使用すれば、ネットワークを通してのウェブ・サーバ60への問い合わせは必要なくなる。
【0126】
同期マネージャ66は、また、子および親のリスト664を通して、リソースの子または親の迅速な参照を提供する。
【0127】
同期マネージャ66は、クライアント・アプリケーション22内のバラバラの単独固体のクラスであり、このことは、クライアント・アプリケーション22の1つにつき1つの同期マネージャ66しか存在しないことを意味する。それ故、同期マネージャ22は、クライアント・アプリケーション22内でハッキリした存在である。
【0128】
論理階層30が開いている場合には、同期マネージャ66は、すべての構成データを収集する。同期マネージャ66は、その内部においてリソース・プロファイル77を名前によりアルファベット順に配列することにより、必要に応じてプロファイルがレンダリングされるデフォールトの順序配置を行う(フィッシュボーン・レイアウト技術の節参照)。
【0129】
論理階層30の最初の構成が完了した後で、同期マネージャ66は、維持ループに進み、論理階層30に構成を変える目的で、ウェブ・サーバ60を周期的にポーリングするために、構成ポーリング668(図8に示す)を使用する。構成の変化は増分により検索される。構成ポーリング668は、各サイクル中、全論理階層30および関連する構成情報を検索する必要はない。その代わりに、同期マネージャ66は、初期化中に完全な情報を検索し、その後で、最後のポーリングの後で変化した情報を検索するために構成ポーリング668を使用する。構成ポーリング668の周期は、通常5分であるが、ユーザ23は周期を調整することができる。
【0130】
接続ポーリング669は、構成ポーリング668から独立しているポーリングである。接続ポーリング669は、接続が依然として行われていることを確認するために、ウェブ・サーバ60とのネットワーク通信をチェックする。接続ポーリング669は、頻繁に発生するが、毎分デフォールトである。
【0131】
ウェブ・サーバ60は、構成ポーリング668に応じてある変更を行い、同期マネージャは、上記変更を記述するウェブ・サーバ60からオブジェクトを要求する。
【0132】
主UI
主UIクラス67は、スタート時に、クライアント・アプリケーション22が表示する第1の会話型ウィンドウである表示ウィンドウ50を表示する。ユーザ23が、表示のために論理階層30を開く「新規」または「開く」のようなドロップ・ダウン項目519(図6Bに示す)を選択すると、主UIクラス67の一例は表示を管理する。図7Bに示すように、主UIクラス67は同期ブラウザ・マネージャ68、ビューア・モデル69、およびビューア64を含むオブジェクトをスタートする。
【0133】
同期ブラウザ・マネージャ
図7Bに示すように、同期ブラウザ・マネージャ68は、データ・マネージャ65からアラーム35の通知を受信し、イベント・キャッシュ682内にアラームを維持する。同期ブラウザ・マネージャ68の各例が、所与の論理階層30に関連する主UIクラス67の一例と関連していることを思い出して欲しい。それ故、同期ブラウザ・マネージャ68の各例は、他の論理階層30に対するアラーム35からのその関連する論理階層30に対するアラーム35を識別することができるフィルタ・サーバ681をスタートする。
【0134】
同期ブラウザ・マネージャ68が、フィルタ・サーバ681を通して送られた、データ・マネージャ65からアラーム通知を入手した場合には、同期ブラウザ・マネージャ68は、イベント・キャッシュ682内のアラーム35をJava(登録商標)ベクトル・オブジェクト内に入れ、ベクトル・オブジェクトをビューア・モデル69に送る。
【0135】
ビューア・モデル
ビューア・モデル69は、モデル−デリゲイト・アーキテクチャ・スキーム内のモデル構成要素である。その制御容量において、ビューア・モデル69は、表示ウィンドウ50と会話しているユーザ23が発生したイベントを処理するロジックを含む。より詳細に説明すると、上記イベントはビューア64で検出されるが、処理のためにビューア・モデル69に送られる。そのモデル容量において、ビューア・モデル69は、ビューア64により表示されるリソース・プロファイル77を表すレンダリング・オブジェクト691(図8に示す)を含む。それ故、レンダリング・オブジェクト691の目的は、参照したリソース・プロファイル77とは別個に、レンダリングについての情報を含むことである。例えば、リソース・プロファイル77用のレンダリング・オブジェクト691は、その参照したリソース・プロファイル77を指定するレンダリング・データベースID692;警告レベル693;位置情報694;およびレンダリングを指定するのに必要な他の属性のような情報を含む。
【0136】
レンダリング・オブジェクト691は、再描画準備OK方法696またはレンダリング・オブジェクト691が再描画される準備ができていることを、ビューア64に通知する他の手段を含む。
【0137】
ビューア・モデル69は、同期ブラウザ・マネージャ68から、Java(登録商標)ベクトル・オブジェクト内にパッケージされているアラーム35のバッチを受信する。ビューア・モデル69は、各アラーム35をチェックするためにベクトル上で反復する。ビューア・モデル69は、同期マネージャ66内のハッシュ・テーブル661により、アラーム35と関連するリソース・プロファイル77の位置を発見する。ビューア・モデル69は、リソース・プロファイル77のアラーム・リスト773、(またJava(登録商標)のベクトル・オブジェクト)にアラーム35を追加する。すべてのアラーム35を処理した後で、ビューア・モデル69は、状態の値775を再計算するために、リソース・プロファイル77の測定基準776を使用する。状態の値775が分かっている場合には、ビューア・モデル69は、関連するレンダリング・オブジェクト691が、リソース・プロファイル77と関連させなければならない重大度レベル693を設定することができる。このような各レンダリング・オブジェクト691は、レンダリング・オブジェクト691が再描画される準備ができていることをビューア64に通知するために、その再描画準備OK方法696を使用する。ビューア・モデル69は、また、アラーム35を受信したプロファイル77に対する親のような関連するリソース・プロファイル77を発見するために、同期マネージャ66のキャッシュをチェックする。ビューア・モデル69は、これらの関連するリソース・プロファイル77にアラーム35を通知する。そうすることにより、関連するリソース・プロファイル77は、それ自身の状態の値775を更新することができる。
【0138】
ビューア・モデル69は、ドリル・ダウンおよびマウスオーバを含むレンダリングとのユーザの会話により発生したイベントを処理する。ビューア・モデル69は、また、アプリケーション・オーバーライドを処理する。ドリル・ダウンおよびマウスオーバについてはすでに説明した。図8に示すアプリケーション全体にわたるアラーム・オーバーライド697により、クライアント・アプリケーション22は、リソース・プロファイル77の伝搬規則772(図5Aに示す)にオーバーライドしているあるタイプのアラーム35を抑制することができる。より詳細に説明すると、この実施形態の場合には、ルータのCPUはレンダリングされない。何故なら、ルータ自身だけがレンダリングされるからである。この特徴は、簡単にするために、ユーザ23に提示される情報の量を低減するために追加される。またそうすることにより、他のオブジェクトのレンダリングするための空間が増大する。CPUはレンダリングされないので、ビューア・モデル69は、ルータCPUアラーム35をルータ自身上で統合する。ルータのリソース・プロファイル77(図5Aに示す)のドリル・ダウン・リスト778内のオプションにより、依然としてユーザは各ルータCPUに関する詳細を入手することができる。
【0139】
もう1つのオーバーライド697が、モデムを含むRAS(遠隔アクセス・サービス)グループに対して発生する。この場合、レンダリングは抑制されない。モデムおよびRASグループの両方が表示される。しかし、RASグループ内のモデムに対してアラーム35が発生した場合には、ビューア・モデル69は、関連するリソース・プロファイル77上の設定が何であれ、自動的に、アラーム35をモデムおよびRASグループの両方に関連づける。
【0140】
ビューア・モデル69は、論理階層30の構造に対する変化の通知を受信する。この受信により、ビューア・モデル69は、リソース・プロファイル77へのレンダリング・オブジェクト691の関連が依然として正確なものであることを確認させ、この変化により追加された任意の新しいリソース・プロファイル77に対する、新しいレンダリング・オブジェクト691を生成させる。ビューア・モデル69は、また、任意のリソース・プロファイル77が、論理階層30に追加されたか、そこから削除された場合には、ビューア64に表示パネル515を再描画するように指示する。
【0141】
ビューア
ビューア64は、モデル−デリゲイト・アーキテクチャ・スキームのデリゲイト構成要素である。ビューア64は、ユーザ23にGUIを提示し、GUI内でユーザの行動に応答する。
【0142】
ビューア64は、論理階層30を、フィッシュボーン・レイアウト45またはスノーフレーク・レイアウト46のような視覚的階層40としてレンダリングし、論理階層30内に定義されている順序に従って視覚的階層40をレイアウトする。これに対して、ビューア64は、図8に示すビューア・レイアウト・クラス641を使用する。ビューア64は、分岐(背骨とも呼ばれる)を表示パネル515内に表示する。上記分岐は、ビューア分岐クラス642によりすでにレンダリングされている。ビューア分岐クラス642は、分岐のレンダリングを包み込み、先端を切除し、また再スケールすることができる。
【0143】
ビューア64は、ユーザの会話イベントを受信し、それをビューア・モデル69に送る。ユーザの会話イベントは、クリック、右クリック、マウスオーバ、メニュー・バー選択、およびウィンドウのサイズの変更を含む。
【0144】
クライアント側のポーラ
クライアント側のポーラ62は、ウェブ・サーバ60と通信する。より詳細に説明すると、図8に示すように、クライアント側のポーラ62は、ネットワークを通してJava(登録商標)オブジェクトを送るためにHTTP直列化機能621を使用し、HTTPプロトコル601によりネットワークを通して直列化したオブジェクトを送り、およびウェブ・サーバ60は、オブジェクトを受信するために、HTTP直列化機能602を使用する。このプロセスは、ウェブ・サーバ60からクライアント側のポーラ62へ通信するために、同じような方法で逆方向にも動作する。
【0145】
クライアント側のHTTP直列化機能621およびサーバ側のHTTP直列化機能602は、例えば、ネットワーク・トラヒックまたは通信オーバーヘッドを低減するために、複数のメッセージを1つの直列化オブジェクトに多重化することができる。
【0146】
サーバ
ウェブ・サーバ60は、クライアント・アプリケーション22に、HTTPをベースとするインタフェースを供給する。インタフェースを通して、ウェブ・サーバ60により、クライアント・アプリケーション22は、状態リポジトリ70および表示リポジトリ75にアクセスすることができる。状態リポジトリ70内の状態ファイル71は、アラーム35に関する情報および論理階層30への構成の変更に関する情報を含む。論理階層30は、図8に示すように、表示リポジトリ75内の表示記録752内に記憶される。
【0147】
ウェブ・サーバ60は、ウェブ・サーバ内にCGIプロセスを含む。ウェブ・サーバ60は、表示するための論理階層30のデフォールト・リスト603を有し、そのためクライアント・アプリケーション22のユーザ23が、「ファイル」ドロップダウン・メニュー518(図6Bに示す)から、「サーバへ接続」ドロップダウン項目519を選択し、ウェブ・サーバ60に接続すると、デフォールト・リスト603をクライアント・アプリケーション22に提示することができる。
【0148】
状態ファイル71は、モニタ・エンジン80により維持される。状態ファイル71は、アラーム35および名前の変更のような構成の変更を含む、リソース24の状態に関する情報を含む。状態ファイル71は、また、追加、削除、および(関係への変化、および異なるルート・プロファイル32の指定を含む)再配置を含む、論理階層30の構造への変化を追跡する。状態ファイル71は、また、図4Aに示すリソース24とその監視エージェント82との間で、状態情報が自由に流れているかどうかを示す。状態情報の中断は、監視サービスの管理上の中断(すなわち、故意の中断)および通信チャネル内の問題または故障(意図的でない中断)を含む。
【0149】
表示リポジトリ75は、リソース・エンティティ795(図4Bに示す)およびそのリソース・プロファイル77(図5Aに示す)の両方を含む。表示リポジトリ75は、また、リソース・プロファイル77および従属関係78を参照する論理階層30を含む。表示リポジトリ75は、それにより表示リポジトリ75の内容をユーザ23が生成し、維持することができる編集機能も提供する。表示リポジトリ75は、この実施形態が必要とする以上の追加機能および目的を持つことができる。表示リポジトリを供給する製品の一例としては、米国マサチューセッツ州マールボロ所在のConcord Communications社が市販しているNetworkHealthがある。
【0150】
監視エンジン80は、状態ファイル71に書込みを行い、維持し、ウェブ・サーバ60は、クライアント・アプリケーション22の代わりに探索を行うことができる。監視エンジン80は、ネットワーク・リソース24上でデータを収集する分散型エージェントである、監視エージェント82(図4Aに示す)から状態ファイル71に関する情報を収集する。監視エージェント82は、リソース24に関するデータを収集し、そのデータをASCIIファイル(図示せず)内に入れ、そのファイルを監視サーバ81に送る。監視エージェント82は、意図的な理由(保守、または執務時間中だけしか監視が必要でないというような)、または故障または破壊を含む、種々の理由でデータの送信を中止することができる。監視エージェント82が稼働中である場合には、監視エージェント82は、リソース・プロファイル77に基づいてアラーム35を発生しなければならない条件が存在するかどうかを判断する。アラーム35が発生した場合には、監視エンジン80は、そのアラームをリソース・プロファイル77に対応する状態ファイル71に書き込む。
【0151】
分析ソフトウェア
分析ソフトウェア90により、ユーザ23は監視エンジン80が収集した監視データをブラウズすることができる。分析ソフトウェア90は、分類、合計などによるような個々のイベントの詳細を示し、それらを統合するスナップショットを供給する。分析ソフトウェア90は、また、生の動的報告および履歴トレンドも供給する。
【0152】
分析ソフトウェア90は、フィッシュボーン・レイアウト45から、ドリル・ダウン項目516を通してアクセスすることができる。
【0153】
市販の分析ソフトウェア90の例としては、LiveExceptions、LiveTrend、およびNetworkHealth等がある。これら3つの製品はすべて、米国マサチューセッツ州マールボロ所在のConcord Communications社から入手することができる。
【0154】
他の実施形態
本発明の多数の実施形態について説明してきた。しかし、本発明の精神および範囲から逸脱することなしに、種々の修正を行うことができることを理解することができるだろう。例えば、監視エンジン80は、状態ファイル71を維持するために、監視エージェント82からデータを収集する必要はなく、監視エンジン80は、何らかの他の情報源を持つことができる。クライアント・アプリケーション22は、データをダウンロードまたは「プルダウン」するために、ウェブ・サーバ80をポーリングする必要はなく、「プッシュ」アーキテクチャ、すなわち、それに対するポーリングを行わなければならないクライアント・アプリケーション22を使用しないで、データがクライアント・アプリケーション22に送られるアーキテクチャにより、ウェブ・サーバ60からデータを送ることもできる。フィッシュボーン・レイアウト45またはスノーフレーク・レイアウト46を含む表示パネル515は、表示装置の先端を切除しないでスクロールすることができる。このスクロールは、スクロール・バーにより行うことができる。図3Aは、2つのフィッシュボーン・レイアウト45を含むスノーフレーク・レイアウト46を示しているが、スノーフレーク・レイアウト46は、3つ以上のフィッシュボーン・レイアウト45を含むことができる。
【0155】
最も少ない数の分岐で背骨を包むための方法が、少なくとも2つある。長さ優先アプローチについてはすでに説明した。他の実施形態は、各サブセグメント446が大体同じ長さになるように、図2Aに示すように、サブセグメント446を分配する「バランシング」アプローチを使用する。
【0156】
都合のよいことに、下に位置する論理階層30、フィッシュボーン・レイアウト45内の背骨は、ルート・アイコン/ラベル421の方向に均等に送ることができるし、ルート・アイコン/ラベル421の反対方向に均等に送ることもできるし、またはルート・アイコン/ラベル421に関して、所与のフィッシュボーン・レイアウト45内で種々の方向に配列することもできる。
【産業上の利用可能性】
【0157】
上記実施形態の場合には、クライアント・アプリケーション22の一部は、Java(登録商標)プログラミング言語で書かれている。何故なら、Java(登録商標)は、アプリケーションを広い範囲のオペレーティング・システムおよび計算プラットフォームに移植することができるからである。しかし、Java(登録商標)の代わりに他のプログラミング言語も使用することもできる。
【0158】
従って、他の実施形態も上記の特許請求の範囲に入る。
【図面の簡単な説明】
【0159】
【図1A】会話型階層状態表示用のシステムのブロック図である。
【図1B】計算プラットフォームのブロック図である。
【図2A】デフォールト・モードでのフィッシュボーンの表示を含む表示パネルである。
【図2B】稠密モードでのフィッシュボーンの表示を含む表示パネルである。
【図3A】スノーフレーク表示を含む表示パネルである。
【図3B】従来技術によるGUI要素および技術である。
【図4A】従来技術による監視システムである。
【図4B】表示リポジトリのブロック図である。
【図5A】プロファイルを通しての多重コンテキスト内の表示用の1つのリソースである。
【図5B】論理階層表示リソースである。
【図6A】あるイベントのデータの流れを示す。
【図6B】表示ウィンドウ用のGUI要素と技術である。
【図7A】クライアント・アプリケーションおよびサーバ内のソフトウェア要素である。
【図7B】クライアント・アプリケーション内のソフトウェアのクラスである。
【図8】クライアント・アプリケーション内のクラスのブロック図である。
【図9A】従来技術による有向木データ・モデルである。
【図9B】論理階層の構造である。
【符号の説明】
【0160】
45 レンダリング・フィッシュボーン・レイアウト
30 リソース・プロファイル
77 リソース・プロファイル
46 スノーフレーク・レイアウト
【0001】
本発明は、ネットワークの監視に関し、特に状態の表示に関する。
【背景技術】
【0002】
(優先権の主張)
本出願は、引用によってその全文を本明細書の記載に援用する、2001年6月8日出願の米国特許出願第60/297,219号の優先権を35USC§119(e)により主張する。
【発明の開示】
【発明が解決しようとする課題】
【0003】
ネットワーク監視ソフトウェアの目的は、ネットワーク・リソースに関する問題および潜在的問題を検出することである。それ故、ネットワーク監視ソフトウェアは、問題があるリソースから次のリソースにどのようにして伝搬する恐れがあるのかに関連する。ネットワーク監視ソフトウェアは、また、問題を起こしているいくつかの構成リソースを含む所与のリソースのために、所与の構成要素または一組の構成要素への問題の根元を分離することにも関連する。ネットワーク監視ソフトウェアのこの目標および関連する目標についての1つの用語は、「根本原因分析(root cause analysis)」である。根本原因分析は、問題の発生源、すなわち、問題を伝搬した第1の状況を探す。それに沿って問題が伝搬した経路は、その問題が発生した第1のリソースと、その問題が伝搬した先の第2のリソースとの間の依存関係として表すことができる。第2のリソースが問題を引き起こさないかどうかは、第1のリソースに依存する。このように2つのリソースが関連している場合、従属関係は「二元性」のものになる。もっと複雑な従属関係は二元的なものではなく、3つまたはそれ以上のリソースが関連している場合がある。このような関係は、通常一組の二元従属関係で表すことができる。
【0004】
有向木
図9Aは、有向木39、すなわち、コンピュータ業界では周知のデータ・モデルを示す。木39は、ノード391および縁部396を含む。木39は、その根392と呼ばれる正確に1つのノード391を含む。各縁部396は方向394を持ち、2つの異なるノード391を接続している。「経路」は各メンバー縁部396が、その近隣の縁部396とノード391を共有するような一連の縁部396である。
【0005】
方向394は、2つのノード391の一方に、「起点」という名称をつけ、他方のノードに所与の縁部396に対して「宛先」という名称をつける。有向経路は、経路の第1の縁部396の起点ノード391「から」、経路の最後の縁部396の宛先ノード391「へ」つながっている。この場合、有向経路内の隣接する縁部396は、他方の宛先ノード391と一方の隣接する起点ノード391を共有する。有向木39は、根392に関連する位置により各縁部396に対して決定した方向394を持つ。より詳細に説明すると、すべての縁部396が根392「の方を指している」か、またはすべての縁部396が根392「から反対方向を指している」有向木39。根392「の方を指している」という用語のもっと正式な定義は、木39の各縁部396は、根392に向かって有向経路をスタートするという定義である。同様に、根392「から反対方向を指している」という用語は、木39の各縁部396は、根392からの有向経路のところで終わっていると定義することができる。
【0006】
木39の周知の特性としては、各ノード391が、木39のある経路を通して、他の各ノード396に接続していることを意味する「接続状態」;および第1のノード391と第2のノード396の間の木39の最短経路は、これらのノード396間のこのような経路だけであることを意味する「経路の一意性」等がある。この経路は最短距離の経路である。経路の「長さ」は、それが含む縁部の数である。
【0007】
各ノード391の「深さ」は、ノード391を根392に接続する(一意の)経路の長さである。根392と呼ばれるノード391の深さはゼロである。すべての他のノード391は、ゼロでない整数の深さを持つ。
【0008】
1つの縁部396のノード391を記述するには、「起点」および「宛先」の他にもう1つの方法がある。深さが浅い方のノード391は他のノード391の「親」と呼ばれ、一方、深さが深い方のノード391は親の「子」と呼ばれる。Aがノード391である場合には、BはAの子ノード391であり、CはBの子ノード391である。その場合、CはAの「孫」と呼ばれる。子ノードを持たないノード391は「葉」と呼ばれる。ノード391の子ノード391の数は、そのノード391の「等級」と呼ばれる。
【0009】
同じ深さを持つノード391は、同じ「レベル」上に位置するといわれる。レベルはまた「層」とも呼ばれる。層は、多くの場合、そのノード391の深さを示す数により指定される。例えば、「層1」は、根392と縁部396を共有するすべてのノード391を含む。少なくとも2つの数学的真が、層に関して木39内の縁部396に適用される(当業者にとって証明は周知のものである)。最初に、ゼロより大きい「n」の場合には、各層の「n」ノード391は、層「n−1」内のノード391と正確に1つの縁部396を共有する。第二に、縁部396は、常に、異なる層、より詳細に説明すると、深さが正確に1だけ違う層からのノード391を結合する。第2の真の推論は、縁部396は、同じ層内でノード391と結合しないということである。これらの真は、直観的に下記のように要約することができる。木39の縁部396は、常に隣接する層間で「上下に」移動するが、決して(1つの層内で)「横に」移動したり、ある層を飛び越したりしないし、また、根ノード392を除くすべてのノード391は親を持つ。
【0010】
第1のノード391は、そのすべての子ノード391、孫ノード391、孫ノード391の子ノード391(以下同様)と一緒に、またその接続縁部396と一緒に、部分木395を形成する。今説明した部分木395は、それ自身根392として第1のノード391を持つ木39である。部分木395は木39と同じ構造および特性を持っているので、木39は「自己類似」であるといわれる。多くの再帰的アルゴリズムは、木39でうまく動作する。何故なら、他の理由もあるが、木39が自己類似であるからである。
【0011】
木39の2つのノード391間の「距離」は、これらのノードを接続している最短経路の長さである。(木39は接続しているので、少なくとも1つのこのような経路が存在すること、また木39は経路の一意性を持っているので、正確に1つのこのような経路が存在することを思い起こされたい。)1つの縁部396を共有する2つのノード391は、「直接」接続している。これを表すもう1つの方法は、その経路の長さが1であることである。1より長い経路により接続している2つのノード391は、「間接的に」、すなわち、中間ノード391を通して接続している。
【0012】
ノード391から深さの浅いノード391への方向は上方と呼ばれ、深さの深い方への方向は下方と呼ばれる。木39を「横断する」ということは、順次そのノード391へポイントすることを意味する。この場合、連続しているノードが縁部396により接続している場合には、連続しているノード391が選択されるだけである。
【0013】
ノード391は、木39に参加するために必要なものに加えて、データ構造とすることができる。縁部396は、同じ様な方法で、追加のデータ構造を含むことができるデータ構造としてコード化される。それ故、ノード391および縁部396用のデータ構造のいくつかの属性は、木39自身に固有のものではないエンティティに関連する場合がある。例えば、データ構造は、多くの場合、木39によりモデル化されているコンセプトの属性を含む。
【0014】
同じ用語が、階層が木構造を持つ等級に適用される。
【課題を解決するための手段】
【0015】
一般的にいって、ある態様においては、本発明は、複数のリソース・プロファイルおよびこれら複数のリソース・プロファイル間に複数の従属関係を含む階層をフィッシュボーン・レイアウト(特性要因図)にレンダリングするステップを含む、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。リソース・プロファイルは、ネットワークで接続しているリソースを表す。
【0016】
好ましい実施形態は、下記のものの中の1つまたはそれ以上を含む。本発明の方法は、フィッシュボーン・レイアウトの監視下のリソース・プロファイルを含む監視下のリソースの状態を入手するステップと、その状態を反映するためにフィッシュボーン・レイアウトを更新するステップとを含む。状態を入手するステップは、一定の時間間隔で状態を反復して入手するステップを含む。上記状態を入手するステップは、最も最新の時間間隔内で変化した監視下のリソースの特性についての情報を入手するステップを含む。監視下のリソース・プロファイルは、監視下のリソース・プロファイルとコンシューマ従属関係にある従属リソース・プロファイルに、入手した状態をどのように伝搬すべきかについての伝搬規則を含み、一方、フィッシュボーン・レイアウトを更新するステップは、従属リソース・プロファイルのレンダリングを更新するステップを含む。このレンダリングは、最初に、フィッシュボーン・レイアウトの第1の密度モードにより、表示パネルにフィッシュボーン・レイアウトを表示し、一方、本発明の方法は、さらに、第1の密度モードを第2の密度モードに置き換えるステップを含む。この置換は、表示パネルのサイズに対するフィッシュボーン・レイアウトの部材の比率の変化に応じて行われる。フィッシュボーン・レイアウトの第1の密度モードは、層2のリソース・プロファイルを背骨としてレンダリングする標準モードであり、第2の密度モードは、第1の密度モードに対して、もっと高い密度でフィッシュボーン・レイアウトの構成要素をレンダリングするためのモードである。フィッシュボーン・レイアウトの第1の密度モードは、第2の密度モードに対して、もっと高い密度でフィッシュボーン・レイアウトの構成要素をレンダリングするためのモードであり、第2の密度モードは、層2のリソース・プロファイルを背骨としてレンダリングする標準モードである。フィッシュボーン・レイアウトでの2つのリソース・プロファイルのレンダリングの間の位相的接続の一例は、2つのリソース・プロファイル間の直接的な従属関係に対応し、一方、フィッシュボーン・レイアウトの2つのリソース・プロファイルのレンダリング間に位相的接続が存在しないということは、リソース・プロファイル間に任意の直接的な従属関係が存在しないことに対応する。フィッシュボーン・レイアウトの第2の密度モードは、層2のリソース・プロファイルを平行四辺形としてレンダリングする稠密モードである。
【0017】
本発明の方法は、マウスオーバが継続した場合に応じて、フィッシュボーン・レイアウトの構成要素を記述する会話の要約を提示するステップを含む。この方法は、構成要素上でマウスが右クリックされた場合に、フィッシュボーン・レイアウトの構成要素に対するコンテキスト・メニューを表示するステップを含む。この場合、コンテキスト・メニューは、構成要素上で呼び出すための手順を提供するドリル・ダウン・リストを含む。コンテキスト・メニューは、構成要素に対してカスタマイズされる。ドリル・ダウン・リスト内のある手順は、ユーザが選択を行うとネットワーク分析ツール内の報告を呼び出す。ドリル・ダウン・リスト内のある手順は、構成要素がフィッシュボーン・レイアウトの根になるように、ユーザが選択を行った場合、フィッシュボーン・レイアウトの再度のレンダリングを行う。ドリル・ダウン・リスト内のある手順は、ユーザが選択を行った場合、フィッシュボーン・レイアウトを有する新しい表示パネルを開く。フィッシュボーン・レイアウトは、1つの根を有し、構成要素を根として使用する。ドリル・ダウン・リスト内のある手順は、ユーザが選択を行った場合、1つの根を有し、構成要素を根として使用する新しいスノーフレーク表示を開く。
【0018】
他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。この方法は、ルート・リソース・プロファイル(root resource profile)およびこのルート・リソース・プロファイルと従属関係にある従属リソース・プロファイルを含む階層を提供するステップを含む。一連の従属関係を含む各従属リソース・プロファイルからルート・リソース・プロファイルへの最短経路は、上記各従属リソース・プロファイルに対してその階層内の1つの層に対応する長さの経路を有する。リソース・プロファイルは、ネットワークにより接続しているリソースを表す。上記方法は、また、ルート・リソース・プロファイルまたは従属リソース・プロファイル間の監視下のリソース・プロファイルの状態を入手するステップと;上記状態を重大度に関連づけるステップと;フィッシュボーン・レイアウトの階層をレンダリングするステップとを含む。監視下のリソース・プロファイルは、重大度を示す視覚的特徴にレンダリングされる。
【0019】
好ましい実施形態は、下記のものの中の1つまたはそれ以上を含む。視覚的特徴は、重大度の程度を表す複数の色から選択した1つの色を含む。状態を重大度と関連づけるステップは、監視下のリソース・プロファイルに関連する状態測定基準の使用を含む。この方法は、状態の変化の通知を入手するステップと、重大度を更新するステップと;更新した重大度を表示するために監視下のリソース・プロファイルをレンダリングするステップを含むために、フィッシュボーン・レイアウトの階層を再度レンダリングするステップとを含む。重大度は、状態測定基準が表す行動から逸脱するために、アプリケーション全体のオーバライドを適用するステップを含む。この逸脱は、重大度の変化を抑制するステップを含む。フィッシュボーン・レイアウトは、スノーフレーク・レイアウトに含まれている。
【0020】
さらに他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。この方法は、リソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む論理階層を入手するステップを含む。リソース・プロファイルはネットワークで接続しているリソースを表す。この方法は、また、論理階層から視覚的階層を入手するステップを含む。この場合、視覚的階層の構成要素は、視覚的階層が木であるような論理階層の構成要素に対応する。この方法は、フィッシュボーン・レイアウトで視覚的階層をレンダリングするステップを含む。
【0021】
好ましい実施形態は、下記のものの中の1つまたはそれ以上を含む。視覚的階層は有向木である。フィッシュボーン・レイアウトは、スノーフレーク・レイアウトに含まれている。
【0022】
さらに他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するための計算装置を特徴とする。この装置は、プロセッサ、主記憶装置、視覚的表示装置、記憶装置、およびネットワーク接続を含む、その中で実施されているコンピュータ可読プログラム・コード手段を有する、コンピュータが使用することができる媒体を含む。プログラム・コード手段は、コンピュータに、リソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む階層を表示させるためのコンピュータ可読プログラム・コード手段を含む。リソース・プロファイルは、ネットワークで接続しているリソースを表す。この装置は、また、コンピュータに、リソース・プロファイル間の監視下のリソース・プロファイルの状態を入手させるためのコンピュータ可読プログラム・コード手段を含む。この装置は、コンピュータに、監視下のリソース・プロファイルの状態の視覚的表現のレンダリングを含む、フィッシュボーン・レイアウトの階層をレンダリングさせるためのコンピュータ可読プログラム・コード手段を含む。
【0023】
さらに他の態様においては、本発明は、スノーフレーク・レイアウトでフィッシュボーン・レイアウトをレンダリングするステップを含む、ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法を特徴とする。フィッシュボーン・レイアウトは、それぞれリソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む階層を特徴とする。リソース・プロファイルは、ネットワークで接続しているリソースを表す。各階層は共通の根を共有する。スノーフレーク・レイアウト内の1つまたはそれ以上のフィッシュボーン・レイアウトに関する好ましい実施形態は、フィッシュボーン・レイアウトのところですでに説明した1つまたはそれ以上の特徴を含む。
【0024】
さらに他の態様においては、本発明は、ネットワークで接続しているリソースの状態を表示するための計算装置を特徴とする。該装置は、プロセッサ、主記憶装置、視覚的表示装置、記憶装置、およびネットワーク接続を含む、その中で実施されているコンピュータ可読プログラム・コード手段を有する、コンピュータが使用することができる媒体を含む。プログラム・コード手段は、コンピュータに、スノーフレーク・レイアウト内にフィッシュボーン・レイアウトをレンダリングさせるためのコンピュータ可読プログラム・コード手段を含む。各フィッシュボーン・レイアウトは、リソース・プロファイルおよびこれらリソース・プロファイル間の従属関係を含む階層を特徴とする。リソース・プロファイルは、ネットワークで接続しているリソースを表す。各階層は共通の根を共有する。
【0025】
本発明の利点としては下記のものを含む。
【発明の効果】
【0026】
根本原因分析は、従属関係用の有用なアプリケーションである。システム計画は、従属関係の知識から見て、同様に有用であり、そのため、変化の影響を予測することができる。
【0027】
監視下のリソースの数が増大すると、ユーザは、相互に関連するリソースの組織化していないウェブを理解するのが困難になる。本発明の1つの利点は、ウェブ上に論理階層が置かれた場合、ルート・リソースに対して、フィッシュボーンまたはスノーフレークのようなレイアウトにより、論理階層が視覚的階層としてレンダリングされることである。フィッシュボーンまたはスノーフレーク内で発生するような視覚的階層の組織化した表現は、視覚的レンダリングの前には、意味が概念的に容易に理解できなかった場合でも、ウェブ内の状態の変化(例えば、ある問題の影響)の意味が視覚的に容易に理解することができることである。例えば、ルート・リソースの展望からリソースのウェブを見た場合、ウェブ内のルート・リソースの役割を洞察することができる。それにより、例えば、リソースが拡張された関係で中間的役割を果たしている場合には、多くの場合、他のリソースの役割も理解できる。上記関係が従属関係である場合には、1つの階層は、直接的に(根のすぐ下の階層のレベルで)、また間接的に(一時的に、その階層の以降のレベルで)、ルート・リソースが依存するすべてのリソースを表すことができる。
【0028】
本発明のもう1つの利点は、同じ一組のリソース上で、複数の論理階層を定義し、種々の展望を提供することができることである。さらに、論理階層は、種々のユーザ・プロファイルに合わせて調整することができるので、(例えば)ある種のユーザに高いレベルの展望を与え、一方リソースのもっと狭いサブセットに対して責任を持つユーザは、そのユーザの興味に排他的に焦点を当てる視点を使用することができる。
【0029】
本発明の1つまたはそれ以上の実施形態の詳細については、添付の図面および下記の説明内に記載する。下記の説明、図面および下記の特許請求の範囲を読めば、本発明の他の特徴、目的および利点を理解することができるだろう。種々の図面内の類似の参照符号は、類似の要素を示す。
【発明を実施するための最良の形態】
【0030】
上記態様の場合には、会話型表示は、ネットワーク監視ソフトウェアが監視しているリソースについての状態情報を示す。階層状態表示プロセスは、視覚的階層内に表示のためのリソースを配列する。視覚的階層は、相互に従属関係にあるリソースを含む論理階層から由来する。論理階層は、データ・モデルであり、一方、視覚的階層は論理階層の図形による表示である。視覚的階層は、「フィッシュボーン」および「スノーフレーク」レイアウトを含む。スノーフレーク・レイアウトは、2つのフィッシュボーン・レイアウトを含む。フィッシュボーン・レイアウトは、論理階層を1つの面内に様式化した木として表示する。フィッシュボーン・レイアウトは、ある瞬間に、石川ダイアグラムでいくつかの視覚的属性を共有する。しかし、より詳細に説明するように、フィッシュボーン・レイアウトは、他にも違いはあるが、フィッシュボーン・レイアウトが動的に更新され、ユーザと会話している間に、時間の経過中に変化することができるという点で、石川ダイアグラムとは異なる。また、フィッシュボーン・レイアウトは、その関連する論理階層が、所与の表示エリアに表示できないほどのフィッシュボーン・レイアウトに対する多くの部材を含んでいる場合には、表示モード間で移動することができる。
【0031】
階層状態表示プロセスは、ネットワーク監視ソフトウェアが監視しているリソースの状態が変化すると、視覚的階層を変えることができる。階層状態表示プロセスは、表示ウィンドウ内の視覚的階層をレンダリングする。ユーザは、各リソースに適合するように調整されたオプションのメニューを含む、リソースに関するもっと多くの情報を入手するために、表示ウィンドウと会話を行うことができる。オプションは、ユーザがリソースの詳細なチェックをスタートすることができる分析ツールを含む。分析ツールは、表示をレンダリングするアプリケーションの外部に存在する。通常、視覚的階層は、要約レベルの情報を表示し、一方、会話型オプションにより、ユーザは詳細レベルの情報を入手することができる。
【0032】
リソースは、ネットワーク管理ソフトウェアが監視するエンティティである。リソースは、ハードウェア、アプリケーション、サービス、ビジネス・プロセス、組織化構造(企業または大学の学部内のビジネス・ユニットなど)、ネットワーク内の経路、および他のネットワーク・リソースを含む。ハードウェア・リソースは、クライアント、サーバ、ルータ、スイッチ、およびNIC、並びに周辺デバイス(ディスク・ドライブなど)、およびネットワークで接続しているデバイス(プリンタおよびネットワークで接続している記憶装置など)を含む。個々のネットワーク・リソース、およびこのようなリソースの集合体の両方がリソースとなることができる。リソースの集合体を含むリソースの場合には、リソースは分散型のものであっても、異質なものまたは両方であってもよい。この集合体は他の集合体を含むことができる。
【0033】
図1Aは、HTTPインタフェース601を通して、ウェブ・サーバ60にアクセスするクライアント・アプリケーション22を含む階層状態表示プロセス20である。クライアント・アプリケーション22は、表示リポジトリ75内に記憶している論理階層30に関する情報を検索する。クライアント・アプリケーション22は、論理階層30をユーザ23への表示ウィンドウ50内に図形でレンダリングするために階層表現40を使用する。
【0034】
クライアント・アプリケーション22は、状態リポジトリ70および表示リポジトリ75からの情報を求めてウェブ・サーバ60にポーリングする。状態リポジトリ70は、リソースの状態に関する情報を収集し、それをリポジトリ70に入れる監視システム80により維持される。
【0035】
表示ウィンドウ50は会話型である。すなわち、ユーザ23からの入力に応答する。表示ウィンドウ50を使用することにより、ユーザ23は論理階層30内に記述されているリソースに分析ツール90を適用することができる。
【0036】
計算プラットフォーム
図1Bについて説明すると、階層状態表示プロセス20は、コンピュータ命令を含み、計算プラットフォーム63上のオペレーティング・システム631上で稼働する。図面を簡単にするために、図1Bは、階層状態表示プロセス20の実際の構成要素プロセスを、ネットワーク接続638により相互に接続している複数の計算プラットフォーム63上で分散することができる場合の、1つのオペレーティング・システム631および関連するハードウェアと会話を行う階層状態表示プロセス20を示す。
【0037】
オペレーティング・システム631は、主記憶装置634または不揮発性記憶装置637または両方内に常駐する一組のコンピュータ命令である。プロセッサ633は、オペレーティング・システム631および階層状態表示プロセス20に対するコンピュータ命令を実行するために、主記憶装置634および不揮発性記憶装置637にアクセスすることができる。
【0038】
ユーザ23は、視覚的表示装置639を含む1つまたはそれ以上の入力装置632、および1つまたはそれ以上の出力装置636を通して、計算プラットフォームと会話を行う。使用できる入力装置632としては、キーボード、マイクロホン、タッチセンシティブスクリーン、およびマウスのようなポインティング・デバイス等がある。視覚的表示装置639以外の使用できる出力装置636としては、スピーカおよびプリンタ等がある。通常、視覚的表示装置639は、種々の色を表示することができる(すなわち、モノクロ表示装置ではない)。
【0039】
不揮発性記憶装置637は、ディスク・ドライブのようなコンピュータが書き込むことができ、コンピュータ可読媒体を含む。バス635は、プロセッサ633、入力装置632、出力装置636、記憶装置637、主記憶装置634、およびオプションとしてのネットワーク接続638を相互に接続する。ネットワーク接続638は、例えば、TCP/IPを実行するように構成されたイーサネット(登録商標)・カードのようなネットワーク機能を供給するためのデバイスおよびソフトウェア・ドライバを含む。
【0040】
クライアント・アプリケーション22は、Java(登録商標)プログラミング言語で書き込まれる。クライアント・アプリケーション22のいくつかの構成要素は、もっと低いレベルのコード(機械コードなど)にコンパイルされたC++のような他の言語で書き込まれて、構成要素相互動作規格を通してソフトウェア・コードの本体に内蔵される。マイクロソフト・ウィンドウズ(登録商標)計算プラットフォームにおいては、例えば、構成要素相互動作規格は、COM(共通オブジェクト・モデル)およびOLE(オブジェクト・リンキングおよび埋込み)を含む。
【0041】
監視システムおよびリソース
図4Aについて説明すると、監視システム80は、監視下の環境25でリソース24を監視する。どのリソース24を監視すべきかの決定を含む監視システム80の構成は、本発明の範囲内に含まれないので、ここでは詳細に説明しない。監視システム80は、ネットワーク監視ソフトウェアを含む。市販の監視システム80の一例としては、米国マサチューセッツ州マールボロ所在のConcord Communications社が市販しているLiveExceptionsがある。
【0042】
概念的には、リソース24は、広い範囲の事柄用のプレースホルダーである。通常、リソースは、監視下の環境25でのネットワーク通信に関連する機能を実行するか、または他のリソース24との従属関係78内に含まれる。この機能自身は、ネットワーク通信に直接関連するものでなくてもよい。例えば、サーバ内のディスク・ドライブは、サーバのネットワークで接続している役割により、ネットワークで接続しているリソース24と見なすことができる。リソース24を定義するもう1つの方法は、階層状態表示プロセス20でそれがどのように使用されるかによる方法である。リソース24は、監視システム80により監視される何者かである。例えば、リソース24は、パーソナル・コンピュータ、サーバ、ルータ、スイッチ、リンク、L3経路、または応答経路のような、監視される1つの物理的ユニットを表すことができる。しかし、リソース24は、アトミックでなくてもよい。リソースは、リソース24の1つのグループ、1つのグループ内の複数のグループ等を表すことができる。リソース24は、例えば、ビジネス・プロセス、または部門またはプロジェクトのような組織上のユニットのようなコンセプトであってもよい。リソース24は、また、レベル3のネットワーク経路のような論理的構造であってもよい。重要なことは、リソース24は、また、アプリケーションまたはサービスのようなソフトウェアであってもよいということである。リソース24は、分散させることもできるし、1台のコンピュータに集中させることもできる。
【0043】
リソース24の特性は、名前、あるシステムまたは領域内の役割、およびそのコンテキストに適している特性を含む。リソース24の各特性は、現在の状態を含む。リソースは、また、所与の時点で現在の状態からの1つの値を持つ少なくとも1つの状態を持つ。リソース24の状態に対する値の範囲は、通常、トラブルが無い状態、警告およびエラーに対する値を含む。
【0044】
例えば、「東キャンパス・ルータ」という名称のリソースが存在するかもしれない。このリソースはあるネットワークでルータになる役目を持つ。このルータは、例えば、CPUのようなシステム構成要素、2つのネットワーク・インタフェース、および(ネットワークがIPプロトコルを使用すると仮定した場合の)少なくとも1つのIPアドレスのようなルータになるのに適した特性を有している。ネットワーク・インタフェースは、「理想的」、「混雑状態」および「故障」を含む動作状態を持つことができる。
【0045】
図4Bについて説明すると、リソース24は、表示リポジトリ75内に位置していて、リソース表現795により表される。リソース表現795は、リソース24および計算環境内で乗算を行うためのリソース24の抽象特性を参照するソフトウェア・オブジェクトである。それ故、リソース表現795とそのリソース24との間の相互関係は、概念的に非常に強固である。
【0046】
リソース参照796はリソース24を記述する。リソース表現795の特性797は、対応するリソース24上の特性を表す。特性797は、特性状態798を含む。図4Bに示すように、監視下の環境25は、任意のリソース参照796により参照されないリソース24cを含むことができることに留意されたい。しかし、各リソース参照796は、ある種のリソース24を記述する。
【0047】
リソース・プロファイル
所与のリソース24は、監視下の環境25内で種々の役割を行うことができる。例えば、所与のサーバは、複数のアプリケーションおよびサービスをサポートすることができる。場合によっては、ある役割を行っているリソース24に関する問題は、その役割の中の他の役割を行っている同じリソース24に関する問題でない場合がある。例えば、あるレベルの混雑を経験しているルータは、ネットワーク・サービスをサポートしているリアルタイム・トラヒックを供給するために、ルータに依存するアプリケーション類似のビデオ会議の場合のように、「リアルタイム」コンテキストで問題を引き起こす場合がある。同時に、「電子メール」コンテキストの場合には、電子メール・アプリケーションは、同じルータに依存する場合があるが、混雑のレベルがある問題を発生する前に遥かに高いしきい値を持つことができる。
【0048】
通常、リソース・プロファイル77は、コンテキスト内でリソース24を表現する1つの方法を提供する。それ故、所与のリソース24は、2つ以上のコンテキストで表現することができる。
【0049】
図5Aについて説明すると、リソース・プロファイル77は、リソース表現795を状態の値775とペアにする。この ペアの形成は、参照770によりコード化される。状態の値775は、関連するリソース表現795の状態798からのものである。この派生は状態測定基準776により与えられる。状態の測定基準776は、状態の値775が表す状態およびその値の加重方法を決定するので、状態の測定基準776は、その状態798の選択により、またそれが割り当てる出力によりコンテキストを表すことができる。例えば、図5Aの場合には、リソース・プロファイル77aおよび77bは、1つのリソース表現795に対する2つの異なるコンテキスト(それぞれ、「コンテキストA」および「コンテキストB)を表す。また、異なるプロファイル77は、状態の測定基準776の使用のために同じ状態798を使用することにも留意されたい。図の例の場合には、リソース・プロファイル77aは、状態798iおよび798iiを使用することができ、一方リソース・プロファイル77bは、状態798iおよび798iiiを使用する。すなわち、状態798iは両方に共通である。
【0050】
リソース・プロファイル77は、そうでない場合には、イベント・フィルタ771内のこれらの分類に対する基準をコード化することにより、その状態の値775に影響を与える例外の分類を無視することができる。
【0051】
リソース・プロファイル77は、分析ツール90により露出される分析機能799のドリル・ダウン・リスト778を指定することができる。ドリル・ダウン・リスト778は、視覚的階層40内のリソース・プロファイル77のレンダリングにより、ある相互作用中ユーザ23に提示される。(「フィッシュボーン会話」の節を参照されたい。)ドリル・ダウン・リスト778は、ユーザ23が使用することができる分析方法を調整するための方法を各リソース・プロファイル77に供給する。
【0052】
リソース・プロファイル77を供給する市販の製品としては、米国マサチューセッツ州マールボロ所在のConcord Communications社が市販しているNetworkHealthがある。
【0053】
従属関係
図5Bについて説明すると、従属関係78は、それにより、1つのリソース24(この例の場合には、リソース24bである)内のイベントが、他のリソース24aの状態に影響を与えることができる1つの条件を表す。より詳細に説明すると、リソース24bは、リソース・プロファイル77bにより参照されるリソース表現795bにより表される。同様に、リソース24aは、リソース・プロファイル77aにより参照されるリソース表現795aにより表される。用語の下記の使用に留意されたい。コンシューマの従属関係78の「方向」は、問題が伝搬する方向と反対方向である。リソース・プロファイル77aは、リソース・プロファイル77b「に依存する」かまたは「のコンシューマである」。一方、リソース24b内の問題は、リソース24aの方向に伝搬する(または影響を与える)。従属関係78上の他の端部の展望から、すなわち、リソース・プロファイル77bがリソース・プロファイル77a「へのプロバイダである」プロバイダの従属関係78の場合には、従属関係78の方向は問題が伝搬する方向と一致する。
【0054】
リソース・プロファイル77は、コンテキストの視点から見るとリソース24を表していることを思い起こされたい。従属関係78は、リソース・エンティティ795ではなく、リソース・プロファイル77を参照することによりコンテキストを内蔵する。
【0055】
所与の従属関係78に関連するリソース・プロファイル77の数は、従属関係78の「等級」と呼ばれる。2つのだけのリソース・プロファイルに関連する関係は「二元」と呼ばれる。図5Bは、例示としての二元従属関係78である。2より高い等級の従属関係78は、下記のように一組の二元従属関係78により表すことができる。等級nの関係を記述するコンテキストを選択し、そのコンテキスト内の関連する各リソース24に対してリソース・プロファイル77を作成し、2つのリソース24の相互作用を記述するために、リソース・プロファイル77の各ペア間の二元従属関係78を追加する。
【0056】
コンシューマの関係およびプロバイダの関係は、実際の世界のアプリケーション内では共通である。これらの関係は、「内に含む」または「に依存する」という句で直観的に記述する多くの関係をモデル化することができる。「に依存する」という句は、明らかに従属関係78に適している。「内に含まれる」という句も、また、多くの場合、従属関係78によく適している。何故なら、構成要素内の問題は、多くの場合、全体に伝搬する恐れがあるからである。例えば、サーバSが3つのハード・ディスク・ドライブC、DおよびEに依存している場合には、S、C、DおよびEに対するリソース・プロファイル77、およびSからC、DおよびEへそれぞれ3つの従属関係78を生成することができる。同様に、会計部Aが2つのサーバSおよびTに依存している場合には、それぞれAからSおよびTへ2つの従属関係78と一緒に、AおよびTに対して追加のリソース・プロファイル77を生成することができる。1つのリソース24が、いくつかの他のリソース24を内蔵または統合していて、一方、それらリソースに依存している状態は、ネットワーク監視ソフトウェアのユーザにとって非常に重要である。
【0057】
二元でない従属関係78の一例は、3つまたはそれ以上のリソース24を含む分散処理またはサービスの構成要素である。
【0058】
論理階層
論理階層30は、リソース・プロファイル77間の従属関係78のウェブを記述する木をベースとするデータ・モデルを提供する。表示リポジトリ75は、図8に示すように、表示記録752内に各論理階層30を記憶する。表示リポジトリ75は、そこから2つ以上のクライアント・アプリケーション22が、同時に同じ論理階層30にアクセスすることができる中央の位置を供給する。
【0059】
論理階層の意味
広い意味で、論理階層30は、(以下にさらに詳細に説明するように)1つまたはそれ以上の概念上のフレームワークの下で、リソース・プロファイル77およびその関連する従属関係78を収集するための柔軟な構造である。その柔軟性により種々様々な設計を行うことができるので、論理階層30は悪い設計の影響を受けやすい。例えば、ユーザ23は、機能分析に基づく組織スキームより、アルファベット順の組織スキームを軽視する場合がある。もっと微妙には、第1のユーザ23は、ネットワーク・ハードウェアに基づく機能分析よりもビジネス処理に基づく機能分析を軽視する場合がある。また、第2のユーザ23は、おそらく第2のユーザ23が監視下の環境25内で、第1のユーザ23とは異なる役割または目的を持っているために、異なる意見を持つ場合がある。論理階層30を内蔵するために、リソース・プロファイル77および従属関係78の選択を含む、論理階層30の意味をユーザ23の要件に形成するための技術は、本発明の範囲を超えるものである。代わりに、記述は、表示リポジトリ75が、ユーザ23にとって有用な論理階層30を含むように、すでに構成されていると仮定する。
【0060】
論理階層30は、多くの場合、ユーザ23を考慮するために、監視下の環境25のある1つの態様をモデル化する。それ故、監視下の環境25のすべての態様をモデル化するには、複数の論理階層30が必要になる場合がある。また、複数の論理階層30を異なるユーザ23に適するように供給することもできる。
【0061】
木の基礎
論理階層30は、木をベースとする構造に図9Bに示す要素を表示するために、図9Aの従来技術によるデータ・モデルを利用する。各リソース・プロファイル77は、1つのノード391に対応し、一方、その対応する従属関係78が対応するリソース・プロファイル77を接続する場合だけ、縁部396が2つのノード391を接続するように、各従属関係78は1つの縁部396に対応する。根ノード392は、論理階層30が表す意味の「先端」または「中央」のところで、1つのリソース・プロファイル77と関連する。論理階層30のレベルは、木39内の層に対応する。
【0062】
例えば、その木をベースとするデータ・モデルを使用することにより、論理階層30は、隣接する層のエンティティの間に親子関係を持つように、情報を層内に組織することができる。親子関係は、従属関係78をベースとしている。例えば、それぞれがデータ・センターに依存するビジネス・ユニットに依存する法人のように、親リソース・プロファイル77は、子リソース・プロファイル77に依存することができる。別の方法としては、親リソース・プロファイル77は、複数のネットワークで接続しているサービスを供給するサーバのように、複数の子リソース・プロファイル77に供給することができ、一方、ネットワークで接続している各サービス(例えば、DNS、ファイル共有、およびネットワーク機密保護)は、複数のソフトウェア・アプリケーションにその機能を供給する。
【0063】
有向木39が経路一意性特性を持つことを図9Aから思い起こされたい。経路の一意性は、モデル化した世界、すなわち、監視下の環境25内には存在していなくてもよい。例えば、リソース・プロファイル77A、BおよびCは、AがBに関連し、BがCに関連し、およびCがAに関連するように相互に関連することができる。この場合、AからBへの経路は、直接の経路でもCを通しての経路であってもよい。これは、有向木39の経路の一意性の要件に違反する。この問題を処理するために、Aのコピーとして新しいリソース・プロファイル77A’を導入し、次に、Cとのその直接的関係でAの代わりにA’を使用することができる。A’は、Aと同じリソースを持っているが、特にCに対するコンテキストを含むリソース・プロファイルである。AにCを正式に結合した関係が、こんどはA’にCを結合する。それ故、A’を導入した後で、A、B、CおよびA’上のすべての経路は一意のものになる。一般的に、グラフ内の任意のマルチプルを除去するために、このアプローチを適用することができる。
【0064】
一般的に、所与のリソース24は、それぞれがそれ自身のコンテキストを持つ、複数のリソース・プロファイル77を通して、論理階層30内の複数の位置内に表すことができる。さらに、リソース24の状態は、複数のリソース・プロファイル77間で異なる場合がある。何故なら、それぞれの状態は、リソース・プロファイル77が表すコンテキストに依存するからである。例えば、あるルータがサービス・プロバイダの2人の顧客のためのトラヒックをサポートしていて、顧客Aが顧客Bよりも高いサービスの品質(QOS)で契約していると仮定しよう。ルータは、一方がAに対する、他方がBに対する、2つのリソース・プロファイル77によりモデル化されるリソース24である。ルータ上の混雑がある種のレベルに達すると、Bのもっと低い規格には適合している状態でAのQOSに適合できなくなる場合がある。それ故、顧客Aのコンテキスト内のルータに対応するリソース・プロファイル77は、他のコンテキスト(すなわち、Bのコンテキスト)内の同じリソース24が問題のないレベルであっても、警告レベルになる場合がある。
【0065】
従属プロファイルの階層
図9Bは、ルート・プロファイル(root profile)32と呼ばれる、リソース・プロファイル77を含む論理階層30である。説明を簡単にするために、この説明および図9Bは、3つのレベルを持つ例示としての階層を使用する。実際には、もっと多くのレベルを含むことができる。この例示としての階層は統合階層である。このことは、親がその子を統合する集合的なものであることを意味する。この3つのレベルのアプローチを使用する場合、根は「グループ・リスト」と呼ばれ、レベル1は、「グループ」を含み、レベル2は「要素」を含む。図9Bの場合には、ルート・プロファイル32は、グループ・リストを表し、グループ・プロファイル33は1つのグループを表し、要素プロファイル34はレベル2上の1つの要素を表す。
【0066】
論理階層の例示としてのソース
いくつかの分析技術が、監視下の環境25のような環境をモデル化するために、木をベースとするデータ・モデルを形成することに留意されたい。論理階層30は、その木をベースとするデータ・モデルにより上記技術をサポートする。いくつかの例は、トップダウン分析およびボトムアップ分析を含む。例えば、トップダウン分析は、所与のリソース・プロファイル35の方向に状態の変化が、どのように伝搬するのかを調査することができ、一方、ボトムアップ分析は、局部的状態から広い範囲にどのようにして状態の変化がエスカレートするのかを調査することができる。監視下の環境25に適用する特殊な分析技術、およびそのような技術の詳細は、本発明の範囲を超える。しかし、広い意味での例として、論理階層30は、下記のように、1つのリソース24の展望から、監視下の環境25のトップダウン分析により作成されたモデル階層をサポートすることができる。所与のリソース24は、対応するリソース・プロファイル77をルート・プロファイル32として指定する。ルート・プロファイル32が依存する、1つまたはそれ以上のリソース・プロファイル77を識別するためには、監視下の環境25のトップダウン分析を使用されたい。これらのリソース・プロファイル77を、二元従属関係78によりルート・プロファイル32に接続しているグループ・プロファイル33として指定されたい。論理階層30の木の連続しているレベルに位置させるために再帰的に反復されたい。
【0067】
アラーム
監視システム80は、アラーム35をリソース・プロファイル77と関連づける。より詳細に説明すると、図4Aに点線の矢印で示すように、監視エージェント82は、リソース24に対するイベント26を検出する。イベント26は、リソース24の1つまたはそれ以上の特性の状態の変化であってもよい。監視エージェント82は、監視サーバ81にイベント26を通知する。監視サーバ81は、リソース24を表す1つまたはそれ以上のリソース・プロファイル77を発見するために、表示リポジトリ75(図4に図示せず;図8を参照されたい)をチェックする。リソース・プロファイル77(図5Aに示すように)は、監視サーバ81にイベント26を無視するように指示することができるイベント・フィルタ771を含む。そうでない場合、監視サーバ81は、状態の値775を評価するために、リソース・プロファイル77の測定基準776を呼び出すことができる。監視システム80は、評価された状態の値775のいくつかの設定が、監視システム80にリソース・プロファイル77に対するアラーム35を生成させるように構成されている。すなわち、状態の値775のいくつかの指定の設定は、アラーム35を生成するのに十分な重大度レベルを持つ。監視システム80は、イベント26を評価したリソース・プロファイル77に対応する状態ファイル71に、各アラーム35を書き込む。1つのイベント26が、2つ以上のリソース・プロファイル77上でアラーム35を生成することができることに留意されたい。また、1つのイベント26が、所与のリソース・プロファイル77上で2つ以上のアラーム35を生成することができる。例えば、第2のアラーム35とは異なる方法で伝搬するように、第1のアラーム35を指定することができる。
【0068】
アラーム35は、重大度レベル351、(重大度レベルを故障対警告のようなもっと広い分類にグループ分けする)等級352、テキスト記述353、および能動/非能動フラッグ354を含む。
【0069】
表示
次の節においては、論理階層30の視覚的表示装置の構成要素および技術について説明する。
【0070】
表示ウィンドウ
表示ウィンドウ50は、通常は、CRTモニタまたは平面パネル・ディスプレイのような視覚的表示装置639である、出力装置636(図1Bに示す)上でユーザ23に表示される。図3Bは、表示ウィンドウ50が、表示ウィンドウ50の頂縁部に沿って配置されているタイトル・バー511、タイトル・バー511のすぐ下に配置されているメニュー・バー512、表示ウィンドウ50の底縁部に沿って配置されているステータス・バー513、および表示ウィンドウ50の残りの部分を占める表示パネル515を含む、当業者にとって周知のある種のGUIオブジェクトおよび技術を含む様子を示す。
【0071】
タイトル・バー511は、クライアント・アプリケーション22を、オペレーティング・システム631(図1Bに示す)上で稼働している(おそらくいくつかの)アプリケーション間の表示ウィンドウ50のオーナーとして識別するテキストを含む。タイトル・バー511は、オペレーティング・システム631に対して特有の他の機能を供給する。通常、上記機能は、表示ウィンドウ50の位置を再度変え、再度サイズを決め、表示ウィンドウを閉じることを要求し、またはサイズを元に戻す機能を含む。
【0072】
メニュー・バー512は、メニューバー512の上のドロップダウン・メニュー518上のドロップダウン項目519を選択するために、ユーザ23がキーおよびマウスを操作するとそれに反応する。メニュー518のドロップダウン項目519は、ユーザ23がメニュー518と会話を行うまで表示されない。通常、メニュー518およびドロップダウン項目519の中のあるものは、オペレーティング・システム631のGUI規格により命令を受ける。例えば、「ファイル」メニュー518(図6Bに示す)は、通常、アプリケーション・ファイルを開閉するための、およびクライアント・アプリケーション22を中止するためのドロップダウン項目519を含む。
【0073】
第2の種類のメニューであるコンテキスト・メニュー514も、ユーザ23が表示パネル515上にマウスのポインタ51を位置させ、入力装置632を通して右クリックするか、または他の何らかの指定の行動をするまで画面に表示されない。(例えば、マイクロソフト・ウィンドウズ(登録商標)の場合には、コンテキスト・メニュー514を表示するためにキーボード上に専用のキーが存在する場合がある。)この説明においては、「右クリック」は通常この行動を意味する。「右クリック」すると、マウス・ポインタ51の位置の近くにコンテキスト・メニュー514が表示される。ドロップダウン・メニュー518と同様に、コンテキスト・メニュー514は、ユーザが選択するためのドリル・ダウン項目516のリストを含む。しかし、コンテキスト・メニュー514は、通常、アプリケーションの現在の状態およびマウス・ポインタの位置、それ故、用語「コンテキスト」に対して調整される。より詳細に説明すると、マウス・ポインタ51が、リソース24のレンダリングの上に位置している場合には、ドリル・ダウン項目516は、そのリソース24またはリソース・プロファイル77およびその現在の状態に調整することができる。
【0074】
例えば、マイクロソフト・ウィンドウズ(登録商標)のようないくつかのオペレーティング・システム631においては、メニュー・バー512またはステータス・バー513または両方は、拡張することもできるし、カスタマイズすることもできるし、完全に隠すこともできる。タイトル・バー511、メニュー・バー512、ステータス・バー513、中央の表示パネル515、およびコンテキスト・メニュー514を使用するユーザ・インタフェースは、当業者であれば周知のものである。(メニュー・バー512のドロップダウン項目519、コンテキスト・メニュー514内のドリル・ダウン項目516の内容を含む、それを供給するその特定の内容および技術は、本発明の重要な部分であるが)このようなユーザ・インタフェース要素は、それ自身、本発明の重要な部分ではないので、GUI技術については、これ以上詳細に説明しない。
【0075】
フィッシュボーン
階層状態表示の1つの形は、1つの面内に論理階層30を、様式化した木として表示するフィッシュボーン・レイアウト45(図2A)である。階層状態表示のもう1つの形は、以下に説明するようにスノーフレーク46である。フィッシュボーン・レイアウト45という名前がついたのは、魚の背骨を連想させるからである。フィッシュボーン・レイアウト45は、ある場合には、製造品質制御の分野でのレイアウトである石川ダイアグラムといくつかの視覚的属性を共有する。しかし、フィッシュボーン・レイアウト45は、動的に更新することができ、石川ダイアグラムといろいろ異なる点があるが会話型である。
【0076】
フィッシュボーン・レイアウト45は、論理階層30内のルート・プロファイル32と関連する、ルート・アイコン/ラベル(root icon/label)421を持つ木を示す。フィッシュボーン・レイアウト45は、また、フィッシュボーン・レイアウト45のほぼ全長を走るルート・ライン(root line)422を特徴とする。通常、ルート・ライン422は、フィッシュボーン・レイアウト45をほぼ半分に分割する。
【0077】
通常、各リソース・プロファイル77のレンダリングは、ラベルまたはアイコンまたは両方により固定されている(または以下に説明するように、レンダリング・エンジンが空間のために制限されている場合には、どれによっても固定されていない)ラインを含む。「アイコン/ラベル」という用語は、この可能なアイコンまたはラベルまたは両方を意味する。
【0078】
ルート・リソース・プロファイル77と直接従属関係78にあるリソース・プロファイル77は、1つのグループである。各グループは、グループ・アイコン/ラベル424をルート・ライン422に接続している、それ自身のライン423と一緒にその自身のアイコン/ラベル424を含む。グループ・ライン423(および一般的に任意の非ルート・リソース・プロファイル77のライン)は、「背骨」と呼ばれる。一般的に、レベル「n−1」のリソース・プロファイル77に直接関連する、レベル「n」のリソース・プロファイル77の場合には、レベル「n」のリソースは、アイコン/ラベルおよびアイコン/ラベルをレベル「n−1」用のラインに接続しているラインとして表示し、ファン状に拡がる木を形成する。背骨は、従属関係78に関してルート・プロファイル32からのまたはこのルート・プロファイル32に向かう方向性を示すために、一方の端部に矢尻を持つことができる。背骨上の方向は、通常、従属関係78の「プロバイダ」の方向を示すが、凡例427はそれに違反している。
【0079】
ルート・ライン422に直接接続している背骨は、ルート・ラインに対して通常は70〜80度の範囲内(しかし、必ずしもこの範囲に入らない)角度434だけ傾いている。ルート・ライン422のどちらかの側面へのこれらの背骨は、図2Aに示すように、ルート・ライン422に対してほぼ同じ角度434を共有する。それ故、ルート・ライン422の所与の側面上のすべての傾斜している背骨は、ほぼ相互に平行である。
【0080】
反復する類似性により、視覚的階層40の以降のレベルがレンダリングされる。傾斜している背骨に直接接続している背骨は、ルート・ライン422に平行であり、ルート・ライン422に平行な背骨に直接接続している背骨は傾斜している等々。それ故、すべての背骨は、3つの分類に入り、各分類のメンバーはほぼ相互に平行である。1つの分類は(ルート・プロファイル77から分かれる偶数の階層レベルであるリソース・プロファイル77を表す)ルート・ライン422に平行な背骨用の分類である。この分類は、「偶数」グループと呼ばれる。何故なら、これらの背骨は論理階層30の偶数レベル内のリソース・プロファイル77に対応するからである。(これらの目的のために、ゼロ(ルート・レベルの数)は、偶数と見なされる。)第2の分類は、偶数グループに入らないで、表示パネル515内でルート・ライン422の上にレンダリングされる背骨を含む。この背骨は「上部」グループと呼ばれる。上部グループ内の背骨は、主ライン422に直接接続しているか(すなわち、レベル1に位置するか)、またはこのような背骨から分岐する偶数の階層レベルである(すなわち、奇数レベルに位置する)。第3の分類は、最初の2つのグループに入らない背骨を含み、上部グループからルート・ライン422の他方の側面上にレンダリングされる。これらの背骨は「下部」グループと呼ばれる。上部グループの場合のように、下部グループ内の背骨は、ルート・ライン422に直接接続しているか、またはこのような背骨から分岐する偶数の階層レベルである。
【0081】
ルート・ライン422が垂直な場合には、他の背骨がルート・ライン422と同一線上に位置していないので、それより上には背骨は存在しない。この場合、上部グループは、ルート・ライン422の右手に偶数の背骨でなくてもよい。すでに説明したように、下部グループは、上部グループからルート・ライン422の他方の側面上で収集されなかった背骨を収集する。
【0082】
ユーザ試験は、フィッシュボーン整合スキームが、論理階層30を視覚的階層40としてレンダリングする視覚的に「クリーン」な方法であることを示している。ユーザ23は、一般的に、特に表示装置上に丁度3つのレベルが存在する場合には、論理階層30内でリソース・プロファイル77の大体のレベルを容易に知覚することができる。
【0083】
モード
フィッシュボーン・レイアウト45は、複数のモードで表示することができる。この実施形態の場合には、モードは、デフォールト・モード42(図2Aに示す)および稠密モード43(図2Bに示す)を含む。稠密モード43は、表示する要素の数が、表示パネル515の現在のサイズで効果的に処理するには、デフォールト・モード42に対してあまりに高い状況を処理する。モード間の切り替え点は変化する。何故なら、切替え点は、表示装置内の要素の数、ノードの等級(子の数)、現在の表示パネル515のサイズおよび解像度、およびおそらく階層の身分の変化速度に依存するからである(何故なら、ユーザ23は、ある周期より頻繁に表示装置が再配置されるのを望ましくないと見なすからである)。例えば、切替え点は、さらに、フォントおよびアイコン・サイズの選択および低いコントラストまたは低い解像度のような表示装置自身の特性を収容するための他の選択に依存する、各モードで達成することができる密度に依存する。広く一般化すると、1024×768ピクセルのウィンドウは、通常700〜1000フィッシュボーン構成要素の切替え点を生み出すことができる。
【0084】
デフォールト・モード42も稠密モード43も、ほとんどのオブジェクトおよび行動を共有する。視覚的取り決め(レイアウト、表示行動、色づけスキーム等)は、各モードで異なっていてもよい。より詳細に説明すると、稠密モード43は、通常、デフォールト・モード42とは異なる方法で、要素リソース・プロファイル77を表示する。デフォールト・モード42(図2Aに示す)は、通常、要素アイコン/ラベル426、要素ライン425、および要素分離429用の領域を使用する。要素分離429により、表示パネル515の背景を1つの要素レンダリングとそれに隣接するものとの間で見ることができる。しかし、稠密モード43(図2Bに示す)は、1つの辺がグループ・ライン423と接触していて、おそらく他の辺も隣接する稠密平行四辺形430に接触している、稠密平行四辺形430を含む要素リソース・プロファイル77を表す。隣接する稠密平行四辺形430は、交互ルミネセンスのような種々の図形的技術により互に視覚的に識別することができるが、密度が増大し(平行四辺形430が必要な程度に小さくなる)、小さなエリア、特に、大部分の視覚的表示装置639の解像度が低い場合には、コントラスト(色、ルミネセンス、肌理等)間を人間の目で識別するのが困難になる。マウスオーバ技術(以下に説明する)を使用すれば、ユーザ23は、パックされた平行四辺形430をしっかりと区別することができる。
【0085】
フィッシュボーン・レイアウト45の背骨は、少なくとも2つの層(すなわち、ルート・ライン422およびグループ・ライン423)の深さ、および通常は3つの層の深さに層状に重なっている。この技術には固有の上限はない。しかし、実際には、サイズおよび解像度が有限であるために、所与の視覚的表示装置639には限界がある。また、通常のユーザが視覚的に容易に入手できる情報の量が限定される場合がある。予備的ユーザ試験により、大部分のユーザは、1024×768ピクセルの視覚的表示装置639による、3つの層の階層が表示する情報に満足していることが分かっている。
【0086】
フィッシュボーン・レイアウト45は、また、凡例エントリ435を持つ凡例427を特徴とする。凡例エントリ435は、グラフィック436および凡例説明437を含む。凡例グラフィック436は、フィッシュボーン・レイアウト45内で使用される図形的取り決めを例示するグラフィックである。凡例説明437は、図形についての取り決めの意図する意味を説明するテキストを含む。
【0087】
フィッシュボーンの視覚的取り決め
この節では、フィッシュボーン・レイアウト45の視覚的外観に影響を与える取り決めの中のいくつかについて説明する。レイアウトまたは相互作用に関する取り決めを含む他の取り決めについては他の場所で説明する。
【0088】
表示パネル515は、レンダリングに優れた視覚的コントラストとプロミネンスを与える、その上にレンダリングが発光している黒い背景を持つ。通常、デフォールトの場合、レンダリングは、その最大のルミネセンスで表示されない。そのため、必要な場合、特に強調するためにルミネセンスを増大することができる。
【0089】
背骨上の矢尻は、従属関係78の方向を示す。
【0090】
レイアウトの密度により可能な場合には、位相的接続(接触または重ね合わせるレンダリング)は、フィッシュボーン内で意味を持つ。デフォールトの場合、レンダリングは、その間に背景が現れるように、分離429により表示パネル515内で相互に十分な間隔を持っている。レンダリングが表す構成要素間に直接的な従属関係78がある場合には、唯一の例外が(このデフォールト設定は強制的なものであるが)発生する。それ故、接続は従属関係78を示す。この視覚的取り決めは、デフォールト・モード42内のデフォールトである。
【0091】
表示装置639は、カラーを表示することができる。フィッシュボーン・レイアウト45は、その表示中にカラーを使用するが、個々に、また相互を比較する際に、赤緑盲のユーザ23が視認できるように色づけされている。色づけは、またモノクロ表示装置639と一緒に使用できるようにもなっている。
【0092】
フィッシュボーン・レイアウト技術
この節においては、表示パネル515内でのフィッシュボーンの構成要素の配置を制御する技術について説明する。
【0093】
デフォールトの場合、ルート・アイコン/ラベル321は、表示パネル515の右の境界の中央付近に位置するが、表示パネル515の任意の位置に表示することもできる。表示パネル515内にレンダリングする他の項目がない場合には、表示パネルの境界近くに位置するルート・アイコン/ラベル421は、フィッシュボーンの残りの部分のために使用することができる空間を最大にする。
【0094】
ルート・ライン422は、デフォールトの場合は水平であるが、任意の角度434にすることができる。例えば、スノーフレーク・レイアウト46のところで説明するが、3つ以上のフィッシュボーン・レイアウト45は、1つのルート・プロファイル32を共有することができる。この場合、レンダリングする第1の2つのフィッシュボーン・レイアウト45は、水平ルート・ライン422を持つことができるが、以降のフィッシュボーン・レイアウト45は、水平でないルート・ライン422を持つことができる。背骨の勾配は、通常、ルート・ライン422に対して70〜80度の範囲の角度である。ルート・ライン422のどちらかの側面への背骨は、図2Aおよび図2Bに示すように、ルート・ライン422に対して同じ角度434を共有する。
【0095】
背骨が直線であり、類似の背骨に対してほぼ相互に平行であるという原則は、背骨の分岐に対して特殊な例外を持つ。背骨は、有限の表示領域の制限を超えるために「分岐」または「包み込み」することができる。例えば、親の背骨が、表示パネル515内の同じ直線方向に継続することができないほど多くの、所与の親に接続する子リソース・プロファイル77が存在する場合がある。それ故、背骨(図2Aの分岐グループ・ライン428のような)は、背骨を位相的に接続状態に維持する必要がある追加のサブセグメント(分岐コネクタ445)を除いて、相互にほぼ平行な複数のサブセグメント446に分岐することができる。複数の平行なサブセグメント446は、背骨が1つのセグメントが使用するより小さな空間を、所与の直線方向に沿って使用することができるような方向を向くことができる。それ故、分岐することにより、ビューア64(図8に示す、以下に説明する)は、表示のための有限の境界へのファン状に拡がるフィッシュボーン・レイアウト45に適応することができる。
【0096】
背骨を包み込むためのアルゴリズムの目的は、使用する分岐の数を最も少なくすることである。ビューア64は、包み込みの必要性をすでに検出済みであると仮定する。「長さ優先」アプローチの場合には、分岐コネクタ445用の余裕があるが、追加のサブセグメント446の充填をスタートする前に、最も遠い許容できる長さに第1のサブセグメント446を充填する(すなわち、それらをサブセグメント446に接続している分岐の部分木からリソース・プロファイル77をレンダリングする)。
【0097】
デフォールトの場合には、階層の層内の構成要素は、最も近いルート・アイコン/ラベル421からスタートして先に移動するという方法で、名前によりアルファベット順にレイアウトされる。(他の静的スキームも使用することができ、論理階層30とペアになっている図8の表示記録752のレイアウト優先順位754で指定することができる。例えば、類似のレベル1の背骨をレイアウトするフィッシュボーン・レイアウト45に対して表示パネル515の領域を指定することができる。ある領域はサーバ用のものであり、他の領域はルータ用のものであり、第3の領域はサービス用のものであり、第4の領域はアプリケーション用のものである。)各フィッシュボーン・レイアウト45に対するレイアウトを標準化することにより、ユーザ23は、そのフィッシュボーン・レイアウト45に精通することができ、その構成要素に対する位置的メモリを形成することができる。このように精通することができれば、ユーザ23への情報の通信をスピードアップすることができる。例えば、精通することができれば、ユーザ23は、リソース・プロファイル77内に記憶しているアイデンティティまたはコンテキストを知るために、構成要素をチェックする必要がなくなり、ユーザ23は構成要素のレンダリングの変化をもっと迅速に解釈することができる。フィッシュボーン45を動的に分類することができる(例えば、各リソース・プロファイル77の現在の状態の値775の重大度レベルにより分類して)が、この実施形態の場合には、デフォールト・スキームは、非動的特性に基づいて分類するためのものである。
【0098】
表示パネル515は有限であるので、モードが何であれ、各要素をレンダリングする空間が常にあるわけではない。この場合には、空間がなくなったら、図2Aに示すように、楕円または他の先端を切除した記号433が表示される。
【0099】
デフォールトの場合には、重大度レベルのための色づけスキームが、グローバル色づけスキームまたは特定の用途用に設計されたスキームを持つことができる、監視エンジン80(または論理階層30を設計している際には、適当であると選択されたもの)から検索される。色づけスキームが一致すると、多くの場合そうであるように、特に監視エンジン80を使用しているユーザ23に対して、監視エンジン80と状態表示との統合がもっと継ぎ目のない状態になる。
【0100】
通常、重大度用の色づけスキームは、所与の重大度をカラーに関連づけるマッピングを含む。所与の重大度は、重大度のスケール上にランキングを含む。重大度スケールは、重大度を比較することができる重大度の全順位を示す。スケールに適している任意の2つの重大度の場合には、その重大度ランキングは、第1のランキングが、第2のランキングより低いのか、同じなのか、高いのかを示す。「重大度ランキング」と明示するための速記法は、ある重大度がもう1つの重大度よりランキングが低いか、同じか、高いかを単に表示する方法である。重大度に対する色づけスキームのカラーは、通常、不明瞭になるのを極力防止する目的で、相互にハッキリ見分けられるように選択される。また、高い重大度を示すために選択したカラーは、多くの場合、低いレベルの重大度を示すカラーよりも(もっと強烈な飽和度を持つように、またはもっと明るいルミネセンスで表示されるように)もっと目立つようになっている。基本的なカラー・スキームの通常の例は、デフォールトまたは問題がない場合にはグリーン、警戒を要する重大度の場合には黄色、および、故障または緊急な重大度の場合には赤を使用し、重大度データがない場合またはオフラインの場合にはグレイを使用する方法である。
【0101】
(アイコン/ラベル内の)アイコンは、サイズ、カラー、ルミネセンス、形状、またはブリンキングまたはチラツキのような動きにより変化をつけることができる。ブリンキングは、通常、非ブリンキング・レンダリングに戻る前の短い時間の間にだけ使用される。例えば、ブリンキングは、状態の最近の変化を示し、ブリンキングの後でいったんブリンキングを停止するのは、変化が最近のものでないことを示す。
【0102】
フィッシュボーンとの会話
この節においては、ユーザの行動にフィッシュボーン・レイアウト45が応答することができる方法について説明する。
【0103】
グループ・ライン423または要素ライン425上で左クリックすると、それが選択される。選択された場合には、背骨を強調することにより視覚的に表示される。グループ・アイコン/ラベルを選択すると、そのグループに対する全部分木が強調される。ルート・アイコン/ラベルを選択すると、全階層木が強調される。
【0104】
マウスオーバ・イベントは、ユーザ23がマウス・ポインタ51(図3Bに示す)をパスオーバした場合に、リソース・プロファイル77のレンダリングに対して発生する。ある要素ライン425または要素アイコン/ラベル426のマウスオーバ中、表示プロセスは、ある意味では、アイコン/ラベル426をより容易にクリック・オンすることができるように、要素アイコン/ラベル426内のラベルのフォントおよびアイコンのサイズを拡大する。表示プロセスは、また、特にフィッシュボーン・レイアウト45が稠密モード43である場合に、要素ライン425を拡大することができる。何故なら、稠密モード43は、場合により、空間をセーブするために要素アイコン/ラベル426を省略することがあるからである。潜在的クリックの目標を拡大すると、ユーザ23がクリックした場合、マウスが選択するものが見易くなる。ユーザ23がクリックするつもりがなくても、拡大すると、ユーザ23は、目標を識別するカラーおよび他の特徴を見やすくなる。
【0105】
リソース・プロファイル77の任意のレンダリングのマウスオーバを持続すると、マウスオーバ・ダイアログ517が開く。短い所定の時間間隔(通常は、例えば、1ミリ秒に対して1秒程度)よりも長い間マウスオーバが持続した場合には、マウスオーバが「保持」されるという。マウスオーバ・ダイアログ517は、リソース名、その状態およびそれに影響を与えるイベントについての統合情報を含む、リソース・プロファイル77に関するテキスト情報を含む。例えば、マウスオーバ・ダイアログ517は、下記のものを引用することができる。
【0106】
ルータ13
混雑状態
最後の30分間の11の警告
【0107】
図2Aについて説明すると、凡例427内においては、凡例エントリ435内の凡例グラフィック436は、フィッシュボーン・レイアウト45で使用する図形的取り決めの例を示す。凡例エントリ435の1つの使用方法は、重大度レベルを表す色づけまたは他の図形による取り決めの説明である。このような凡例エントリ435内で凡例グラフィック436を持続的に左クリックすると、その状態の値775が重大度レベルに対応するリソース・プロファイル77の背骨を除いて、すべての背骨のレンダリングが暗くなる。このように暗くなることにより、対応するリソース・プロファイルのレンダリングを強調する。
【0108】
フィッシュボーン・レイアウト45内のリソース・プロファイル77のレンダリング上で右クリックすると、リソース・プロファイル77のドリル・ダウン・リスト778が指定する、ドリル・ダウン項目516を含む図3Bのコンテキスト・メニュー514が表示される。ドリル・ダウン項目516は、リソース・プロファイル77に特有の分析ツール・ソフトウェア90(図1Aに示す)内の報告を開く。ドリル・ダウン項目516は、また別の表示ウィンドウ50でフィッシュボーン・レイアウト45を開くため、または選択したリソース・プロファイル77を根として使用するために、現在のフィッシュボーン・レイアウト45の再度中央への表示のようなナビゲーション・オプションを含むこともできる。もう1つのナビゲーション・オプションは、選択したリソース・プロファイル77の子供を見ることである。特に、視覚的階層40の最も低い表示レベルのところの要素に対して、フィッシュボーン・レイアウト45に現在表示されていない論理階層30の追加レベルであってもよい。子供は、他の表示ウィンドウ50でも見ることができるし、または(図3B内に示す所与のドリル・ダウン項目516に特有のコンテキスト・メニュー514のサブメニューを開く)階層メニュー520を通して見ることもできる。階層メニュー520は、もう1つの階層メニュー520を表示するドリル・ダウン項目516を含むことができる。
【0109】
フィッシュボーン・レイアウト45は、以下にさらに詳細に説明するように、呼び出した再描画イベントを表示することができる。呼び出された再描画イベントは、レンダリング・エンジンに表示パネルを再描画させる。呼び出された再描画イベントは、表示ウィンドウ50のサイズを変えた後、またはクライアント・アプリケーション22が論理階層30を、視覚的階層40の変化を必要とする再定義をしなければならないことを検出した場合に、クライアント・アプリケーション22の初期化中に発生する。再描画されたフィッシュボーン・レイアウト45が、現在の表示パネル515内に入らない場合には、ユーザ23に、先端切除に関する警告ダイアログが表示される。
【0110】
2つ以上の表示ウィンドウ50が開いた場合には、一番前の表示ウィンドウ50が、「現在の表示ウィンドウ」と呼ばれる。
【0111】
メニュー・バー
メニュー・バー512コマンドは、図6Bに示すように、下記のドロップダウン・メニュー518およびドロップ・ダウン項目519を含む。
【0112】
メニュー・バー512は、「ファイル」、「表示」、「実行」および「ヘルプ」というラベルがついているドロップダウン・メニュー518を含む。
【0113】
「ファイル」ドロップダウン・メニュー518は、「新規」、「開く」、「削除」、「サーバへ接続」、「新規ウィンドウ」、「最新リスト」および「エクシット」のためのドロップダウン項目519を含む。「新規」を使用することにより、ユーザ23は、新しい表示ウィンドウ50内に開くために、論理階層30を選択することができ、一方「開く」を使用することにより、同じ選択を行うことができるが、この場合使用するのは現在の表示ウィンドウ50である。「削除」を使用することにより、ユーザは、このような表示ウィンドウ50を閉じることができる。「サーバに接続」は、ログイン・ダイアログ(図示せず)を開くので、ユーザ23は、ウェブ・サーバ60に信用証明書を提示することができる。「新しいウィンドウ」は、現在の表示ウィンドウ50の冗長バージョンを開く。「最近のリスト」は、各ドロップダウン項目519が最近使用した論理階層30に対応するいくつかのドロップダウン項目519の柔軟なリストである。メニュー・セパレータ521は、「最近のリスト」を括弧内に入れることができる。「エクシット」は、クライアント・アプリケーション22を閉じるプロセスをスタートする。
【0114】
「表示」ドロップダウン・メニュー518は、現在の表示ウィンドウ50を変えるためのドロップダウン項目519を含む表示に影響を与えるドロップダウン項目519を表示する。
【0115】
「実行」ドロップダウン・メニュー518は、分析ソフトウェア90に関連するドロップダウン項目519を表示する。ドロップダウン項目519は、現在選択しているリソース・プロファイル77のスノーフレーク・ダイアグラム46を開く1つの項目を含む。ドロップダウン項目519は、また、性能報告、故障管理報告(現在選択しているリソース・プロファイル77のすべてのアラームのリストなど)、リソース・プロファイル77に関連するリソース24の構成に関する報告、およびピング(ping)、テルネット(telnet)またはリソース24のための管理システムのような(しかし、これらに限定されない)外部分析ツール90を含む。さらに、ユーザ23は、分析ツール90のリストを拡張することができる。ドロップダウン項目519は、分析ツール90とのその会話中、リソース・プロファイル77およびリソース24に関する情報を送ることができる。このような情報の例としては、リソース・プロファイル77の名前、そのネットワーク・アドレス等がある。
【0116】
「ヘルプ」ドロップダウン・メニュー518は、ウィンドウズ(登録商標)またはユニックス(UNIX(登録商標))のような、その上でクライアント・アプリケーション22が稼働している、オペレーティング・システム631のためのインタフェース規格に適合する。例えば、マイクロソフト・ウィンドウズ(登録商標)の場合には、「ヘルプ」ドロップダウン・メニュー518は、「の中に(intro)」、「使用する(using)」、および「に関する(about)」のための項目を含む。
【0117】
スノーフレーク
図3Aについて説明すると、スノーフレーク46は、視覚的階層40のための他の表示形式である。スノーフレーク46は、複数の同時論理階層30の先端に、(ルート・プロファイル32を表す)ルート・アイコン/ラベル442を表示する。フィッシュボーン・レイアウト45として表示されているこの各論理階層30は、ルート・アイコン/ラベル442を共有する。各フィッシュボーン・レイアウト45は、関連する表示記録752内に表示されたそれ自身のレンダリング取り決めを有することができる。例えば、図3Aに示すように、第1のフィッシュボーン・レイアウト45aは、デフォールト・モード42でレンダリングされ、一方、第2のフィッシュボーン・レイアウト45bは、稠密モード43でレンダリングされる。
【0118】
スノーフレーク・レイアウト46は、コンシューマおよびプロバイダの従属関係78の両方を同時に表示することができる。より詳細に説明すると、スノーフレーク・レイアウト46は、それが消費し、供給するリソース・プロファイル77の両方で、ルート・プロファイル32を表示することができる。図3Aの例の場合には、スノーフレーク・レイアウト46は、ルート・アイコン/ラベル442の左に位置する左のフィッシュボーン・レイアウト45aと、右に位置する右のフィッシュボーン・レイアウト45bを含む。左のフィッシュボーン・レイアウト45aは、ルート・プロファイル32が消費するリソース・プロファイル77を表示する。右のフィッシュボーン・レイアウト45bは、ルート・プロファイル32を消費するリソース・プロファイル77を表示する。この場合、フィッシュボーン・レイアウト45aには「原因」のラベルを、フィッシュボーン・レイアウト45bには「結果」のラベルをつけることができる。ルート・プロファイル32が、「原因」フィッシュボーン・レイアウト45a内の任意のリソース・プロファイル77と、「結果」フィッシュボーン・レイアウト45b内のリソース・プロファイル77との間の間接従属関係78用の重要な経路上に位置している状態で、この構成内のスノーフレーク46は、図形の形で、リソース・プロファイル77間の従属関係78の2つの木を表示する。ユーザ23は、スノーフレーク・レイアウト46を見ることにより、また原因のフィッシュボーン・レイアウト45aをチェックすることにより、問題の原因と思われるものを迅速に識別することができる。ユーザ23は、また、例えば、フィッシュボーン・レイアウト45bをチェックすることにより、問題の潜在的な影響を識別することができる。それ故、ユーザ23は最も重要な問題を最初に解決することができる。
【0119】
図3Aには示していないが、スノーフレーク・レイアウト46は、おそらく、水平でないルート・ライン422と一緒に、第3およびそれ以降のフィッシュボーン・レイアウト45を含むことができる。
【0120】
クライアント・アプリケーション
この節においては、クライアント・アプリケーション22のソフトウェア・コードについて説明する。一般的に、クライアント・アプリケーションは、ユーザへの視覚的階層40を含むGUIの提示;ユーザの行動に対する応答;状態情報および論理階層30にアクセスするためのウェブ・サーバ60との通信;および論理階層30内のリソース・プロファイル77用のドリル・ダウン・リスト778を動作可能にするための分析ツールとの通信という主要な特徴をカバーする。
【0121】
クライアント・アプリケーション22(図7Aに示す)は、Java(登録商標)ソフトウェア・アプリケーションである。クライアント・アプリケーション22の内部アーキテクチャは、Java(登録商標)アプリケーション用に勧告されたオブジェクト指向設計技術を使用する。これらの技術の中の1つは、モデル−デリゲイト・アーキテクチャと呼ばれる。モデル−デリゲイト・アーキテクチャ(Model−Delegate architecture)は、ユーザ相互作用用のコードを、レンダリングされるデータ構造をモデル化するためのモデル構成要素およびユーザ・インタフェースをレンダリングし、ユーザ行動を受信し、またモデル−デリゲイト・アーキテクチャの周囲のプログラムの流れおよび実行を制御するためのデリゲイト構成要素に機能的に分離することを勧告している。以下に説明するように、ビューア・モデル・クラス69(図7Bに示す)は、モデル構成要素としての働きをし、一方ビューア・クラス64は、デリゲイト構成要素としての働きをする。
【0122】
APPクラス
図7Bに示すAppクラス61は、クライアント・アプリケーション内のトップ・レベルのクラスである。Appクラス61は、クライアント・アプリケーション22がスタートした場合に実行する最初のクラスである。最初に、スタート後に、Appクラス61は、データ・マネージャ65、同期マネージャ66および主UIクラス67を含む他のクラスのいくつかの例をスタートする。
【0123】
データ・マネージャ
データ・マネージャ65は、オブジェクト内で多重化されるだろう情報を抽出するために、ウェブ・サーバ60と通信するために使用されるオブジェクトを構文解析する。すなわち、オブジェクトは、クライアント・アプリケーション22内の種々の宛先向けの複数の情報を含むことができる。データ・マネージャ65の主な機能は、送られてきた場合に、同期ブラウザ・マネージャ68(図7Bに示す)にアラーム35を通知することである。
【0124】
同期マネージャ
図8について説明すると、同期マネージャ66は、現在のすべての表示論理階層30用のハッシュ・テーブル661内に局部的にデータをキャッシュする。キャッシュされたデータは、論理階層30自身と表示記録752からの他の情報を含む。同期マネージャ66は、キャッシュ内のデータが確実にそのままでいるようにするために、すなわち、状態リポジトリ70および表示リポジトリ75に常駐するデータの正式なバージョンと同期状態に維持するために、ウェブ・サーバ60と通信する。
【0125】
ハッシュ・テーブル661は、表示リポジトリ75内のリソース・プロファイル77を識別するデータベースID662;名前663;それぞれが指定のリソース・プロファイル77と直接従属関係78にあるリソース・プロファイル77を表す子と親のリスト664を含む各リソース・プロファイル77に対する特性を記憶することができる。ローカル・キャッシュを維持することにより、同期マネージャ66は、クライアント・アプリケーション22内の集中場所からデータの参照を迅速に行う。例えば、同期マネージャ66は、データベースID662に関連する名前663を入手するための迅速な方法を供給する。例えば、要素アイコン/ラベル426(例えば、図2Aに示す)上のマウスオーバ中に、名前663が必要になる。マウスオーバは、要素のリソース・プロファイル77の名前を含む、マウスオーバ・ダイアログ517(例えば、図3Bに示す)を表示するのに必要になる。リソース・プロファイル77を表示したレンダリング・オブジェクト691(以下に説明する)は、レンダリング・データベースID692だけを有する。(名前663は、レンダリング・オブジェクト691内に直接記憶されない。何故なら、名前663は、変化することができるからである。ハッシュ・テーブル661だけが、名前663に対する局部的の正式な値を持つ)。また、名前663は、かなり迅速に必要になるので、ユーザ23は、クライアント・アプリケーション22が応答しないとは感じない。キャッシュは、名前633を発見する迅速な方法であり、キャッシュを使用すれば、ネットワークを通してのウェブ・サーバ60への問い合わせは必要なくなる。
【0126】
同期マネージャ66は、また、子および親のリスト664を通して、リソースの子または親の迅速な参照を提供する。
【0127】
同期マネージャ66は、クライアント・アプリケーション22内のバラバラの単独固体のクラスであり、このことは、クライアント・アプリケーション22の1つにつき1つの同期マネージャ66しか存在しないことを意味する。それ故、同期マネージャ22は、クライアント・アプリケーション22内でハッキリした存在である。
【0128】
論理階層30が開いている場合には、同期マネージャ66は、すべての構成データを収集する。同期マネージャ66は、その内部においてリソース・プロファイル77を名前によりアルファベット順に配列することにより、必要に応じてプロファイルがレンダリングされるデフォールトの順序配置を行う(フィッシュボーン・レイアウト技術の節参照)。
【0129】
論理階層30の最初の構成が完了した後で、同期マネージャ66は、維持ループに進み、論理階層30に構成を変える目的で、ウェブ・サーバ60を周期的にポーリングするために、構成ポーリング668(図8に示す)を使用する。構成の変化は増分により検索される。構成ポーリング668は、各サイクル中、全論理階層30および関連する構成情報を検索する必要はない。その代わりに、同期マネージャ66は、初期化中に完全な情報を検索し、その後で、最後のポーリングの後で変化した情報を検索するために構成ポーリング668を使用する。構成ポーリング668の周期は、通常5分であるが、ユーザ23は周期を調整することができる。
【0130】
接続ポーリング669は、構成ポーリング668から独立しているポーリングである。接続ポーリング669は、接続が依然として行われていることを確認するために、ウェブ・サーバ60とのネットワーク通信をチェックする。接続ポーリング669は、頻繁に発生するが、毎分デフォールトである。
【0131】
ウェブ・サーバ60は、構成ポーリング668に応じてある変更を行い、同期マネージャは、上記変更を記述するウェブ・サーバ60からオブジェクトを要求する。
【0132】
主UI
主UIクラス67は、スタート時に、クライアント・アプリケーション22が表示する第1の会話型ウィンドウである表示ウィンドウ50を表示する。ユーザ23が、表示のために論理階層30を開く「新規」または「開く」のようなドロップ・ダウン項目519(図6Bに示す)を選択すると、主UIクラス67の一例は表示を管理する。図7Bに示すように、主UIクラス67は同期ブラウザ・マネージャ68、ビューア・モデル69、およびビューア64を含むオブジェクトをスタートする。
【0133】
同期ブラウザ・マネージャ
図7Bに示すように、同期ブラウザ・マネージャ68は、データ・マネージャ65からアラーム35の通知を受信し、イベント・キャッシュ682内にアラームを維持する。同期ブラウザ・マネージャ68の各例が、所与の論理階層30に関連する主UIクラス67の一例と関連していることを思い出して欲しい。それ故、同期ブラウザ・マネージャ68の各例は、他の論理階層30に対するアラーム35からのその関連する論理階層30に対するアラーム35を識別することができるフィルタ・サーバ681をスタートする。
【0134】
同期ブラウザ・マネージャ68が、フィルタ・サーバ681を通して送られた、データ・マネージャ65からアラーム通知を入手した場合には、同期ブラウザ・マネージャ68は、イベント・キャッシュ682内のアラーム35をJava(登録商標)ベクトル・オブジェクト内に入れ、ベクトル・オブジェクトをビューア・モデル69に送る。
【0135】
ビューア・モデル
ビューア・モデル69は、モデル−デリゲイト・アーキテクチャ・スキーム内のモデル構成要素である。その制御容量において、ビューア・モデル69は、表示ウィンドウ50と会話しているユーザ23が発生したイベントを処理するロジックを含む。より詳細に説明すると、上記イベントはビューア64で検出されるが、処理のためにビューア・モデル69に送られる。そのモデル容量において、ビューア・モデル69は、ビューア64により表示されるリソース・プロファイル77を表すレンダリング・オブジェクト691(図8に示す)を含む。それ故、レンダリング・オブジェクト691の目的は、参照したリソース・プロファイル77とは別個に、レンダリングについての情報を含むことである。例えば、リソース・プロファイル77用のレンダリング・オブジェクト691は、その参照したリソース・プロファイル77を指定するレンダリング・データベースID692;警告レベル693;位置情報694;およびレンダリングを指定するのに必要な他の属性のような情報を含む。
【0136】
レンダリング・オブジェクト691は、再描画準備OK方法696またはレンダリング・オブジェクト691が再描画される準備ができていることを、ビューア64に通知する他の手段を含む。
【0137】
ビューア・モデル69は、同期ブラウザ・マネージャ68から、Java(登録商標)ベクトル・オブジェクト内にパッケージされているアラーム35のバッチを受信する。ビューア・モデル69は、各アラーム35をチェックするためにベクトル上で反復する。ビューア・モデル69は、同期マネージャ66内のハッシュ・テーブル661により、アラーム35と関連するリソース・プロファイル77の位置を発見する。ビューア・モデル69は、リソース・プロファイル77のアラーム・リスト773、(またJava(登録商標)のベクトル・オブジェクト)にアラーム35を追加する。すべてのアラーム35を処理した後で、ビューア・モデル69は、状態の値775を再計算するために、リソース・プロファイル77の測定基準776を使用する。状態の値775が分かっている場合には、ビューア・モデル69は、関連するレンダリング・オブジェクト691が、リソース・プロファイル77と関連させなければならない重大度レベル693を設定することができる。このような各レンダリング・オブジェクト691は、レンダリング・オブジェクト691が再描画される準備ができていることをビューア64に通知するために、その再描画準備OK方法696を使用する。ビューア・モデル69は、また、アラーム35を受信したプロファイル77に対する親のような関連するリソース・プロファイル77を発見するために、同期マネージャ66のキャッシュをチェックする。ビューア・モデル69は、これらの関連するリソース・プロファイル77にアラーム35を通知する。そうすることにより、関連するリソース・プロファイル77は、それ自身の状態の値775を更新することができる。
【0138】
ビューア・モデル69は、ドリル・ダウンおよびマウスオーバを含むレンダリングとのユーザの会話により発生したイベントを処理する。ビューア・モデル69は、また、アプリケーション・オーバーライドを処理する。ドリル・ダウンおよびマウスオーバについてはすでに説明した。図8に示すアプリケーション全体にわたるアラーム・オーバーライド697により、クライアント・アプリケーション22は、リソース・プロファイル77の伝搬規則772(図5Aに示す)にオーバーライドしているあるタイプのアラーム35を抑制することができる。より詳細に説明すると、この実施形態の場合には、ルータのCPUはレンダリングされない。何故なら、ルータ自身だけがレンダリングされるからである。この特徴は、簡単にするために、ユーザ23に提示される情報の量を低減するために追加される。またそうすることにより、他のオブジェクトのレンダリングするための空間が増大する。CPUはレンダリングされないので、ビューア・モデル69は、ルータCPUアラーム35をルータ自身上で統合する。ルータのリソース・プロファイル77(図5Aに示す)のドリル・ダウン・リスト778内のオプションにより、依然としてユーザは各ルータCPUに関する詳細を入手することができる。
【0139】
もう1つのオーバーライド697が、モデムを含むRAS(遠隔アクセス・サービス)グループに対して発生する。この場合、レンダリングは抑制されない。モデムおよびRASグループの両方が表示される。しかし、RASグループ内のモデムに対してアラーム35が発生した場合には、ビューア・モデル69は、関連するリソース・プロファイル77上の設定が何であれ、自動的に、アラーム35をモデムおよびRASグループの両方に関連づける。
【0140】
ビューア・モデル69は、論理階層30の構造に対する変化の通知を受信する。この受信により、ビューア・モデル69は、リソース・プロファイル77へのレンダリング・オブジェクト691の関連が依然として正確なものであることを確認させ、この変化により追加された任意の新しいリソース・プロファイル77に対する、新しいレンダリング・オブジェクト691を生成させる。ビューア・モデル69は、また、任意のリソース・プロファイル77が、論理階層30に追加されたか、そこから削除された場合には、ビューア64に表示パネル515を再描画するように指示する。
【0141】
ビューア
ビューア64は、モデル−デリゲイト・アーキテクチャ・スキームのデリゲイト構成要素である。ビューア64は、ユーザ23にGUIを提示し、GUI内でユーザの行動に応答する。
【0142】
ビューア64は、論理階層30を、フィッシュボーン・レイアウト45またはスノーフレーク・レイアウト46のような視覚的階層40としてレンダリングし、論理階層30内に定義されている順序に従って視覚的階層40をレイアウトする。これに対して、ビューア64は、図8に示すビューア・レイアウト・クラス641を使用する。ビューア64は、分岐(背骨とも呼ばれる)を表示パネル515内に表示する。上記分岐は、ビューア分岐クラス642によりすでにレンダリングされている。ビューア分岐クラス642は、分岐のレンダリングを包み込み、先端を切除し、また再スケールすることができる。
【0143】
ビューア64は、ユーザの会話イベントを受信し、それをビューア・モデル69に送る。ユーザの会話イベントは、クリック、右クリック、マウスオーバ、メニュー・バー選択、およびウィンドウのサイズの変更を含む。
【0144】
クライアント側のポーラ
クライアント側のポーラ62は、ウェブ・サーバ60と通信する。より詳細に説明すると、図8に示すように、クライアント側のポーラ62は、ネットワークを通してJava(登録商標)オブジェクトを送るためにHTTP直列化機能621を使用し、HTTPプロトコル601によりネットワークを通して直列化したオブジェクトを送り、およびウェブ・サーバ60は、オブジェクトを受信するために、HTTP直列化機能602を使用する。このプロセスは、ウェブ・サーバ60からクライアント側のポーラ62へ通信するために、同じような方法で逆方向にも動作する。
【0145】
クライアント側のHTTP直列化機能621およびサーバ側のHTTP直列化機能602は、例えば、ネットワーク・トラヒックまたは通信オーバーヘッドを低減するために、複数のメッセージを1つの直列化オブジェクトに多重化することができる。
【0146】
サーバ
ウェブ・サーバ60は、クライアント・アプリケーション22に、HTTPをベースとするインタフェースを供給する。インタフェースを通して、ウェブ・サーバ60により、クライアント・アプリケーション22は、状態リポジトリ70および表示リポジトリ75にアクセスすることができる。状態リポジトリ70内の状態ファイル71は、アラーム35に関する情報および論理階層30への構成の変更に関する情報を含む。論理階層30は、図8に示すように、表示リポジトリ75内の表示記録752内に記憶される。
【0147】
ウェブ・サーバ60は、ウェブ・サーバ内にCGIプロセスを含む。ウェブ・サーバ60は、表示するための論理階層30のデフォールト・リスト603を有し、そのためクライアント・アプリケーション22のユーザ23が、「ファイル」ドロップダウン・メニュー518(図6Bに示す)から、「サーバへ接続」ドロップダウン項目519を選択し、ウェブ・サーバ60に接続すると、デフォールト・リスト603をクライアント・アプリケーション22に提示することができる。
【0148】
状態ファイル71は、モニタ・エンジン80により維持される。状態ファイル71は、アラーム35および名前の変更のような構成の変更を含む、リソース24の状態に関する情報を含む。状態ファイル71は、また、追加、削除、および(関係への変化、および異なるルート・プロファイル32の指定を含む)再配置を含む、論理階層30の構造への変化を追跡する。状態ファイル71は、また、図4Aに示すリソース24とその監視エージェント82との間で、状態情報が自由に流れているかどうかを示す。状態情報の中断は、監視サービスの管理上の中断(すなわち、故意の中断)および通信チャネル内の問題または故障(意図的でない中断)を含む。
【0149】
表示リポジトリ75は、リソース・エンティティ795(図4Bに示す)およびそのリソース・プロファイル77(図5Aに示す)の両方を含む。表示リポジトリ75は、また、リソース・プロファイル77および従属関係78を参照する論理階層30を含む。表示リポジトリ75は、それにより表示リポジトリ75の内容をユーザ23が生成し、維持することができる編集機能も提供する。表示リポジトリ75は、この実施形態が必要とする以上の追加機能および目的を持つことができる。表示リポジトリを供給する製品の一例としては、米国マサチューセッツ州マールボロ所在のConcord Communications社が市販しているNetworkHealthがある。
【0150】
監視エンジン80は、状態ファイル71に書込みを行い、維持し、ウェブ・サーバ60は、クライアント・アプリケーション22の代わりに探索を行うことができる。監視エンジン80は、ネットワーク・リソース24上でデータを収集する分散型エージェントである、監視エージェント82(図4Aに示す)から状態ファイル71に関する情報を収集する。監視エージェント82は、リソース24に関するデータを収集し、そのデータをASCIIファイル(図示せず)内に入れ、そのファイルを監視サーバ81に送る。監視エージェント82は、意図的な理由(保守、または執務時間中だけしか監視が必要でないというような)、または故障または破壊を含む、種々の理由でデータの送信を中止することができる。監視エージェント82が稼働中である場合には、監視エージェント82は、リソース・プロファイル77に基づいてアラーム35を発生しなければならない条件が存在するかどうかを判断する。アラーム35が発生した場合には、監視エンジン80は、そのアラームをリソース・プロファイル77に対応する状態ファイル71に書き込む。
【0151】
分析ソフトウェア
分析ソフトウェア90により、ユーザ23は監視エンジン80が収集した監視データをブラウズすることができる。分析ソフトウェア90は、分類、合計などによるような個々のイベントの詳細を示し、それらを統合するスナップショットを供給する。分析ソフトウェア90は、また、生の動的報告および履歴トレンドも供給する。
【0152】
分析ソフトウェア90は、フィッシュボーン・レイアウト45から、ドリル・ダウン項目516を通してアクセスすることができる。
【0153】
市販の分析ソフトウェア90の例としては、LiveExceptions、LiveTrend、およびNetworkHealth等がある。これら3つの製品はすべて、米国マサチューセッツ州マールボロ所在のConcord Communications社から入手することができる。
【0154】
他の実施形態
本発明の多数の実施形態について説明してきた。しかし、本発明の精神および範囲から逸脱することなしに、種々の修正を行うことができることを理解することができるだろう。例えば、監視エンジン80は、状態ファイル71を維持するために、監視エージェント82からデータを収集する必要はなく、監視エンジン80は、何らかの他の情報源を持つことができる。クライアント・アプリケーション22は、データをダウンロードまたは「プルダウン」するために、ウェブ・サーバ80をポーリングする必要はなく、「プッシュ」アーキテクチャ、すなわち、それに対するポーリングを行わなければならないクライアント・アプリケーション22を使用しないで、データがクライアント・アプリケーション22に送られるアーキテクチャにより、ウェブ・サーバ60からデータを送ることもできる。フィッシュボーン・レイアウト45またはスノーフレーク・レイアウト46を含む表示パネル515は、表示装置の先端を切除しないでスクロールすることができる。このスクロールは、スクロール・バーにより行うことができる。図3Aは、2つのフィッシュボーン・レイアウト45を含むスノーフレーク・レイアウト46を示しているが、スノーフレーク・レイアウト46は、3つ以上のフィッシュボーン・レイアウト45を含むことができる。
【0155】
最も少ない数の分岐で背骨を包むための方法が、少なくとも2つある。長さ優先アプローチについてはすでに説明した。他の実施形態は、各サブセグメント446が大体同じ長さになるように、図2Aに示すように、サブセグメント446を分配する「バランシング」アプローチを使用する。
【0156】
都合のよいことに、下に位置する論理階層30、フィッシュボーン・レイアウト45内の背骨は、ルート・アイコン/ラベル421の方向に均等に送ることができるし、ルート・アイコン/ラベル421の反対方向に均等に送ることもできるし、またはルート・アイコン/ラベル421に関して、所与のフィッシュボーン・レイアウト45内で種々の方向に配列することもできる。
【産業上の利用可能性】
【0157】
上記実施形態の場合には、クライアント・アプリケーション22の一部は、Java(登録商標)プログラミング言語で書かれている。何故なら、Java(登録商標)は、アプリケーションを広い範囲のオペレーティング・システムおよび計算プラットフォームに移植することができるからである。しかし、Java(登録商標)の代わりに他のプログラミング言語も使用することもできる。
【0158】
従って、他の実施形態も上記の特許請求の範囲に入る。
【図面の簡単な説明】
【0159】
【図1A】会話型階層状態表示用のシステムのブロック図である。
【図1B】計算プラットフォームのブロック図である。
【図2A】デフォールト・モードでのフィッシュボーンの表示を含む表示パネルである。
【図2B】稠密モードでのフィッシュボーンの表示を含む表示パネルである。
【図3A】スノーフレーク表示を含む表示パネルである。
【図3B】従来技術によるGUI要素および技術である。
【図4A】従来技術による監視システムである。
【図4B】表示リポジトリのブロック図である。
【図5A】プロファイルを通しての多重コンテキスト内の表示用の1つのリソースである。
【図5B】論理階層表示リソースである。
【図6A】あるイベントのデータの流れを示す。
【図6B】表示ウィンドウ用のGUI要素と技術である。
【図7A】クライアント・アプリケーションおよびサーバ内のソフトウェア要素である。
【図7B】クライアント・アプリケーション内のソフトウェアのクラスである。
【図8】クライアント・アプリケーション内のクラスのブロック図である。
【図9A】従来技術による有向木データ・モデルである。
【図9B】論理階層の構造である。
【符号の説明】
【0160】
45 レンダリング・フィッシュボーン・レイアウト
30 リソース・プロファイル
77 リソース・プロファイル
46 スノーフレーク・レイアウト
Claims (48)
- ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法であって、
フィッシュボーン・レイアウト内に、複数のリソース・プロファイルおよび前記複数のリソース・プロファイル内のリソース・プロファイル間の複数の従属関係を含む階層をレンダリングするステップを含み、前記リソース・プロファイルがネットワークで接続しているリソースを表す方法。 - さらに、
前記フィッシュボーン・レイアウト内に、監視下のリソース・プロファイルを有する監視下のリソースの状態を入手するステップと、
前記状態を反映するために前記フィッシュボーン・レイアウトを更新するステップとを含む、請求項1に記載の方法。 - 前記状態を入手するステップが、一定の時間間隔で、前記状態を反復して入手するステップを含む、請求項2に記載の方法。
- 前記状態を反復して入手するステップが、前記一定の時間間隔内の最も最近の時間間隔中に変化した前記監視下のリソースの特性に関する情報を入手するステップを含む、請求項3に記載の方法。
- 前記監視下のリソース・プロファイルが、前記監視下のリソース・プロファイルとのコンシューマの従属関係の従属リソース・プロファイルに、前記入手した状態をどのように伝搬すべきかについての伝搬規則を含み、
前記フィッシュボーン・レイアウトを更新するステップが、従属リソース・プロファイルのレンダリングを更新するステップを含む、請求項4に記載の方法。 - 前記レンダリング・ステップが、最初に、前記フィッシュボーン・レイアウトの第1の密度モードで表示パネルに前記フィッシュボーン・レイアウトを表示し、さらに、
前記第1の密度モードを第2の密度モードで置換するステップを含む、請求項1に記載の方法。 - 前記置換ステップが、前記表示パネルのサイズに対する前記フィッシュボーン・レイアウトの部材の比率で変化に応じる、請求項6に記載の方法。
- 前記フィッシュボーン・レイアウトの前記第1の密度モードが、層2のリソース・プロファイルを背骨としてレンダリングする標準モードであり、前記第2の密度モードが、第1の密度モードに対して、もっと高い密度で前記フィッシュボーン・レイアウトの構成要素をレンダリングするためのモードである、請求項6に記載の方法。
- 前記フィッシュボーン・レイアウトの前記第1の密度モードが、前記第2の密度モードに対してもっと高い密度で、前記フィッシュボーン・レイアウトの構成要素をレンダリングするためのモードであり、前記第2の密度モードが、層2のリソース・プロファイルを背骨としてレンダリングする標準モードである、請求項6に記載の方法。
- 第1のリソース・プロファイルのレンダリングと前記フィッシュボーン・レイアウトの第2のリソース・プロファイルのレンダリングとの間の位相的接続が、前記第1のリソース・プロファイルと前記第2のリソース・プロファイルとの間の直接の従属関係に対応し、
第1のリソース・プロファイルのレンダリングと前記フィッシュボーン・レイアウトの第3のリソース・プロファイルのレンダリングとの間の位相的接続が存在しないことが、前記第1のリソース・プロファイルと前記第3のリソース・プロファイルとの間の任意の直接の従属関係が存在しないことに対応する、請求項6に記載の方法。 - 前記フィッシュボーン・レイアウトの前記第2の密度モードが、層2のリソース・プロファイルを平行四辺形としてレンダリングする稠密モードである、請求項10に記載の方法。
- さらに、
継続したマウスオーバに応答して、前記フィッシュボーン・レイアウトの構成要素を記述するダイアログの要約を提示するステップを含む、請求項1に記載の方法。 - さらに、
構成要素上での右クリックに応じて、前記フィッシュボーン・レイアウトの構成要素に対するコンテキスト・メニューを表示するステップを含み、前記コンテキスト・メニューが、前記構成要素を呼び出す手順を提供するドリル・ダウン・リストを含む、請求項1に記載の方法。 - 前記コンテキスト・メニューが、前記構成要素に対してカスタマイズされる、請求項13に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザによる選択に応じて、ネットワーク分析ツール内の報告を呼び出す、請求項13に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザによる選択に応じて、前記フィッシュボーン・レイアウトを再度レンダリングさせ、前記フィッシュボーン・レイアウトが根を有し、前記構成要素が前記フィッシュボーン・レイアウトの根になる、請求項13に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザによる選択に応じて、根を有し、前記構成要素を前記根として使用するフィッシュボーン・レイアウトを有する新しい表示パネルを開く、請求項13に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザによる選択に応じて、根を有し、前記構成要素を前記根として使用する新しいスノーフレーク表示を開く、請求項13に記載の方法。
- ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法であって、
各従属リソース・プロファイルからルート・リソース・プロファイルへの一連の従属関係を含む最短経路が、前記各従属リソース・プロファイルに対する前記階層内の1つの層に対応する経路の長さを有するように、ルート・リソース・プロファイルおよび前記ルート・リソース・プロファイルと従属関係にある複数の従属リソース・プロファイルを含む階層を供給し、前記リソース・プロファイルが、ネットワークで接続しているリソースを表すステップと、
前記ルート・リソース・プロファイルであるか、または前記複数の従属リソース・プロファイル内に位置する監視下のリソース・プロファイルの状態を入手するステップと、
前記状態を重大度レベルと関連づけるステップと、
フィッシュボーン・レイアウト内に、前記重大度レベルを示す視覚的特徴により、前記監視下のリソース・プロファイルのレンダリングを含む階層をレンダリングするステップとを含む方法。 - 前記視覚的特徴が、重大度レベルを表す複数のカラーから選択した1つのカラーを含む、請求項19に記載の方法。
- 前記状態を重大度レベルと関連づけるステップが、前記監視下のリソース・プロファイルと関連する状態測定基準を使用するステップを含む、請求項20に記載の方法。
- さらに、
前記状態の変化の通知を入手するステップと、
前記重大度レベルを更新するステップと、
前記更新した重大度レベルを表示するために、前記監視下のリソース・プロファイルのレンダリングを含むように、フィッシュボーン・レイアウト内に前記階層を再レンダリングするステップとを含む、請求項21に記載の方法。 - 前記重大度レベルを更新するステップが、前記状態の測定基準が示す行動から逸脱するために、アプリケーション全体のオーバーライドを適用するステップを含む、請求項22に記載の方法。
- 前記逸脱が重大度レベルの変化を抑制するステップを含む、請求項23に記載の方法。
- 前記フィッシュボーン・レイアウトがスノーフレーク・レイアウトに含まれる、請求項19に記載の方法。
- ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法であって、
複数のリソース・プロファイルと、前記複数のリソース・プロファイル内のリソース・プロファイル間の複数の従属関係とを含む論理階層を入手するステップであって、前記リソース・プロファイルがネットワークで接続しているリソースを表すステップと、
前記論理階層から視覚的階層を入手するステップであって、前記視覚的階層が木になるように、前記視覚的階層の構成要素が前記論理階層の構成要素に対応するステップと、
フィッシュボーン・レイアウト内に前記視覚的階層をレンダリングするステップとを含む方法。 - 前記視覚的階層が有向木である、請求項26に記載の方法。
- 前記フィッシュボーン・レイアウトがスノーフレーク・レイアウトに含まれる、請求項26に記載の方法。
- ネットワークで接続しているリソースの状態を表示するための計算装置であって、
プロセッサ、主記憶装置、視覚的表示装置、記憶装置およびネットワーク接続を含む、その中で実施されたコンピュータ可読プログラム・コード手段を有するコンピュータが使用することができる媒体を備え、前記プログラム・コード手段が、
コンピュータに複数のリソース・プロファイルおよび前記複数のリソース・プロファイル内のリソース・プロファイル間の複数の従属関係を含む階層を表示させるためのコンピュータ可読プログラム・コード手段であって、前記リソース・プロファイルが、ネットワークで接続しているリソースを表すコンピュータ可読プログラム・コード手段と、
前記コンピュータに前記複数のリソース・プロファイル内の監視下のリソース・プロファイルの状態を入手させるためのコンピュータ可読プログラム・コード手段と、
前記コンピュータに、前記監視下のリソース・プロファイルの状態の視覚的表現のレンダリングを含む、前記階層をフィッシュボーン・レイアウト内にレンダリングさせるためのコンピュータ可読プログラム・コード手段とを備える計算装置。 - ネットワークで接続しているリソースの状態を表示するためのコンピュータをベースとする方法であって、
スノーフレーク・レイアウト内に、それぞれが、複数のリソース・プロファイルと、前記複数のリソース・プロファイル内のリソース・プロファイル間の複数の従属関係を含む階層を特徴とする複数のフィッシュボーン・レイアウトをレンダリングするステップを含み、前記リソース・プロファイルが、各階層が共通の根を共有するように、ネットワークで接続しているリソースを表す方法。 - さらに、
監視下のリソースの状態を入手するステップと、
前記入手した状態を反映するために、前記スノーフレーク・レイアウト内の前記監視下のリソースの監視下のリソース・プロファイルを更新するステップとを含む、請求項30に記載の方法。 - 状態を入手するステップが、一定の時間間隔で、前記状態を反復して入手するステップを含む、請求項31に記載の方法。
- 前記状態を反復して入手するステップが、前記一定の時間間隔内の最も最近の時間間隔中に変化した前記監視下のリソースの特性に関する情報を入手するステップを含む、請求項32に記載の方法。
- 前記監視下のリソース・プロファイルが、前記監視下のリソース・プロファイルとのコンシューマの従属関係の従属リソース・プロファイルに、前記入手した状態をどのように伝搬すべきかについての伝搬規則を含み、
前記スノーフレーク・レイアウトを更新するステップが、前記従属リソース・プロファイルのレンダリングを更新するステップを含む、請求項31に記載の方法。 - 前記レンダリングが、最初に、フィッシュボーン・レイアウトの第1の密度モードで、表示パネルに前記複数のフィッシュボーン・レイアウトのうちの1つのフィッシュボーン・レイアウトを表示し、さらに、
前記第1の密度モードを第2の密度モードで置換するステップを含む、請求項30に記載の方法。 - 前記置換ステップが、前記表示パネルのサイズに対する前記フィッシュボーン・レイアウトの部材の比率で変化に応じる、請求項35に記載の方法。
- 前記フィッシュボーン・レイアウトの前記第1の密度モードが、層2のリソース・プロファイルを背骨としてレンダリングする標準モードであり、前記第2の密度モードが、前記第1の密度モードに対して、もっと高い密度で前記フィッシュボーン・レイアウトの構成要素をレンダリングするためのモードである、請求項35に記載の方法。
- 前記フィッシュボーン・レイアウトの前記第1の密度モードが、前記第2の密度モードに対して、もっと高い密度で前記フィッシュボーン・レイアウトの構成要素をレンダリングするためのモードであり、前記第2の密度モードが、層2のリソース・プロファイルを背骨としてレンダリングする標準モードである、請求項35に記載の方法。
- 前記フィッシュボーン・レイアウトの第1のリソース・プロファイルのレンダリングと第2のリソース・プロファイルのレンダリングとの間の位相的接続が、前記第1のリソース・プロファイルと前記第2のリソース・プロファイルとの間の直接の従属関係に対応し、
前記フィッシュボーン・レイアウトの第1のリソース・プロファイルの前記レンダリングと第3のリソース・プロファイルのレンダリングとの間の位相的接続が存在しないことが、前記第1のリソース・プロファイルと前記第3のリソース・プロファイルとの間の任意の直接の従属関係が存在しないことに対応する、請求項35に記載の方法。 - 前記フィッシュボーン・レイアウトの前記第2の密度モードが、層2のリソース・プロファイルを平行四辺形としてレンダリングする稠密モードである、請求項36に記載の方法。
- さらに、
継続したマウスオーバに応答して、前記フィッシュボーン・レイアウトの構成要素を記述するダイアログの要約を提示するステップを含む、請求項30に記載の方法。 - さらに、
前記構成要素上での右クリックに応じて、前記フィッシュボーン・レイアウトの構成要素に対するコンテキスト・メニューを表示するステップを含み、前記コンテキスト・メニューが、前記構成要素を呼び出す手順を提供するドリル・ダウン・リストを含む、請求項30に記載の方法。 - 前記コンテキスト・メニューが、前記構成要素に対してカスタマイズされる、請求項42に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザの選択に応じて、ネットワーク分析ツール内の報告を呼び出す、請求項42に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザの選択に応じて前記フィッシュボーン・レイアウトを再度レンダリングさせ、前記フィッシュボーン・レイアウトが根を有し、前記構成要素が前記フィッシュボーン・レイアウトの根になる、請求項42に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザの選択に応じて、根を有し、前記構成要素を前記根として使用するフィッシュボーン・レイアウトを有する新しい表示パネルを開く、請求項42に記載の方法。
- 前記ドリル・ダウン・リスト内のある手順が、ユーザの選択に応じて、根を有し、前記構成要素を前記根として使用する新しいスノーフレーク表示を開く、請求項42に記載の方法。
- ネットワークで接続しているリソースの状態を表示するための計算装置であって、
プロセッサ、主記憶装置、視覚的表示装置、記憶装置およびネットワーク接続を含む、その中で実施されたコンピュータ可読プログラム・コード手段を有するコンピュータが使用することができる媒体を備え、前記プログラム・コード手段が、
コンピュータに、スノーフレーク・レイアウト内に、それぞれが、複数のリソース・プロファイルおよび前記複数のリソース・プロファイル内のリソース・プロファイル間の複数の従属関係を含む階層を特徴とする複数のフィッシュボーン・レイアウトをレンダリングさせるためのコンピュータ可読プログラム・コード手段を備え、各階層が共通の根を共有するように、前記リソース・プロファイルが、ネットワークで接続しているリソースを表す計算装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29721901P | 2001-06-08 | 2001-06-08 | |
US09/988,976 US7415671B2 (en) | 2001-06-08 | 2001-11-19 | Interactive hierarchical status display |
PCT/US2002/017972 WO2002101536A1 (en) | 2001-06-08 | 2002-06-06 | Interactive hierarchical status display |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004533185A true JP2004533185A (ja) | 2004-10-28 |
Family
ID=26970042
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003504231A Pending JP2004533185A (ja) | 2001-06-08 | 2002-06-06 | 会話型階層状態の表示 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1393158B1 (ja) |
JP (1) | JP2004533185A (ja) |
AU (1) | AU2002349131B2 (ja) |
CA (1) | CA2449603A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4933608B2 (ja) * | 2006-04-04 | 2012-05-16 | ヤフー! インコーポレイテッド | コンテンツのディスプレイ及びナビゲーションのインターフェイス |
JP6600120B1 (ja) * | 2019-02-06 | 2019-10-30 | オーウエル株式会社 | 管理システム及びそのための機械学習装置並びに管理方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110908741A (zh) * | 2018-09-14 | 2020-03-24 | 阿里巴巴集团控股有限公司 | 应用性能管理的展示方法及装置 |
CN113708983B (zh) * | 2021-11-01 | 2022-02-11 | 湖南新云网科技有限公司 | 一种分布式节点id生成方法、装置、设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2048306A1 (en) * | 1990-10-02 | 1992-04-03 | Steven P. Miller | Distributed configuration profile for computing system |
US5684967A (en) * | 1995-09-13 | 1997-11-04 | International Business Machines Corporation | System and method for generalized network topology representation |
US6199098B1 (en) * | 1996-02-23 | 2001-03-06 | Silicon Graphics, Inc. | Method and apparatus for providing an expandable, hierarchical index in a hypertextual, client-server environment |
US5958012A (en) * | 1996-07-18 | 1999-09-28 | Computer Associates International, Inc. | Network management system using virtual reality techniques to display and simulate navigation to network components |
US6040834A (en) * | 1996-12-31 | 2000-03-21 | Cisco Technology, Inc. | Customizable user interface for network navigation and management |
EP0959398A1 (en) * | 1998-05-01 | 1999-11-24 | The Foxboro Company | Alarm analysis tools method and apparatus |
GB2344963A (en) * | 1998-12-17 | 2000-06-21 | Northern Telecom Ltd | Object-oriented network management system |
-
2002
- 2002-06-06 AU AU2002349131A patent/AU2002349131B2/en not_active Ceased
- 2002-06-06 EP EP02778947.8A patent/EP1393158B1/en not_active Expired - Lifetime
- 2002-06-06 JP JP2003504231A patent/JP2004533185A/ja active Pending
- 2002-06-06 CA CA002449603A patent/CA2449603A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4933608B2 (ja) * | 2006-04-04 | 2012-05-16 | ヤフー! インコーポレイテッド | コンテンツのディスプレイ及びナビゲーションのインターフェイス |
JP6600120B1 (ja) * | 2019-02-06 | 2019-10-30 | オーウエル株式会社 | 管理システム及びそのための機械学習装置並びに管理方法 |
Also Published As
Publication number | Publication date |
---|---|
AU2002349131B2 (en) | 2008-02-14 |
EP1393158A4 (en) | 2007-07-11 |
CA2449603A1 (en) | 2002-12-19 |
EP1393158B1 (en) | 2013-12-18 |
EP1393158A1 (en) | 2004-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7415671B2 (en) | Interactive hierarchical status display | |
US20080316213A1 (en) | Topology navigation and change awareness | |
US11616703B2 (en) | Scalable visualization of health data for network devices | |
US10373094B2 (en) | Automated model based root cause analysis | |
US7010593B2 (en) | Dynamic generation of context-sensitive data and instructions for troubleshooting problem events in a computing environment | |
US8862998B2 (en) | Method and system for generating a network monitoring display with animated utilization information | |
US6628304B2 (en) | Method and apparatus providing a graphical user interface for representing and navigating hierarchical networks | |
US20060095461A1 (en) | System and method for monitoring a computer environment | |
US20030135382A1 (en) | Self-monitoring service system for providing historical and current operating status | |
EP3316139B1 (en) | Unified monitoring flow map | |
US20020135610A1 (en) | Visualization of multi-layer network topology | |
US20040155899A1 (en) | Method and system for presenting an arrangement of management devices operable in a managed network | |
US11003691B2 (en) | Determining affinities for data set summarizations | |
JP5458995B2 (ja) | システム構造管理装置、システム構造管理方法、及びプログラム | |
US6161136A (en) | High performance user interface and method of structuring same | |
US11074283B2 (en) | Linking data set summarizations using affinities | |
US11625254B1 (en) | Interface for customizing dashboards based on parallel edges | |
EP1393158B1 (en) | Interactive hierarchical status display | |
US20070180385A1 (en) | Apparatus for visual navigation of large, complex out-of-band and in-band network management and access entities | |
AU2002349131A1 (en) | Interactive hierarchical status display | |
US6795853B1 (en) | Integration of additional computer components into a computer operation through attribute enabled interactive selections presented in composite lists available to the user in a variety of display screens | |
US20200396138A1 (en) | System and interfaces for entity management | |
EP1332436B1 (en) | Method and apparatus for selectively displaying layered network diagrams | |
AU2007202675A1 (en) | Method and apparatus for selectively displaying layered network diagrams |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050602 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070227 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070724 |