説明

XPath表現を含むXML表現された管理トランザクションを生成するための方法およびデバイス

【課題】例えば、構成変更をデータ・ネットワーク・デバイス上に転送するために使用される、XPath表現を含む新しいXML管理トランザクション要求を提供すること。
【解決手段】これらの新しい要求の生成および使用は、データ・ネットワーク・デバイスの設計またはアップグレードに関連付けられたコストを削減する助けとなる。これらの新しい要求を、より多くの構成機能へのアクセスをユーザーに与えるために増補されている、新規なコマンド・ライン・インタフェースにおいて生成することができる。複数の複雑な管理トランザクションを、実質的に同時に中央管理モジュールによって、新しい要求およびそれらの関連付けられたXPath表現を使用して実行することができる。構成変更に加えて、新しい要求を使用して、データ・ネットワーク・デバイスの現在の構成を得ることができる。

【発明の詳細な説明】
【背景技術】
【0001】
今日のデータ・ネットワークには、いくつかのリモート管理されたデータ・ネットワーク・デバイスが含まれる。次第に、このようなデバイスのリモート管理はより複雑になってきており、これは、ネットワークへのサブスクライバが異なるサービスを要求してきたからであり、ネットワークのオペレータが新しい管理ツールを必要としてきたからである。
【0002】
サブスクライバ、および、オペレータの管理上の必要性によって必要とされたサービスのすべてをサポートする能力は、重要な課題である。今日、データ・ネットワーク・デバイスがいくつかの異なるデバイスに接続されることは珍しいことではなく、これらの異なるデバイスは「クライアント」または「エージェント」と呼ばれ(集合的に以下で「エージェント」と称する)、各々は別々のサービスをサブスクライバに供給する。残念ながら、これらの各エージェントはデータ・ネットワーク・デバイスと、異なる「管理トランザクション要求」を使用して通信する。例えば、これらの各エージェントは、構成変更をデータ・ネットワーク・デバイスに、異なるプロトコル、フォーマットおよび/または表現における命令を使用して送信しようと試みる場合がある。
【0003】
このため、ルーターなど、データ・ネットワーク・デバイスは、多数の異なる管理トランザクション要求を解釈または変換するように設計されなければならない。これにより、このようなデバイスを設計するコストが増す。
【0004】
したがって、いかなる数のエージェントによっても、構成(または、場合によっては再構成)変更をデータ・ネットワーク・デバイスに通信するために使用することができる、共通管理トランザクション要求を提供することが望ましい。
【0005】
あるソフトウェア言語は、拡張マークアップ言語(XML)と呼ばれ、そのうちでこのような共通管理トランザクション要求を作成することができるフレームワークまたは構造を作成するために、使用することができる言語としての将来性を発揮している。
XMLは、以前はネットワーク電気通信環境において使用されてきた。ある技術は、XMLベースのネットワーク管理エージェントのためのアーキテクチャを作成しようとする。しかし、今まで、この技術は、可能であると信じられた潜在的な柔軟性およびパフォーマンスの利益を実現できていない。
【0006】
サブシステム・インタフェースに加えて、いくつかの主要なデータ・ネットワーキング機器ベンダーは、XMLベースの表現および技術を、ネットワーク管理システムおよび管理されたエージェント/デバイス内で使用している。しかし、これらの表現および技術はそれらの欠点を有し、これは、これらの表現および技術がなお、構成コマンドをデータ・ネットワーク・デバイスに入力、送信し、処理するために著しい量の時間を必要とするからであり、または、これらの表現および技術が再構成プロセス中にデータ・ネットワーク・デバイスの構成を「ロック」させることを必要とするからである。後者は、個々のユーザーの再構成が上書きされ、したがって失われる場合がある可能性を回避するために、データ・ネットワーク・デバイスに強制的に、個々のユーザーからの再構成に関連した管理トランザクション要求を一度に1つずつ処理させるので、望ましくない。
【0007】
したがって、管理トランザクション要求を可能な限り高速に処理し、複数のユーザーが再構成ベースの管理トランザクション要求をデータ・ネットワーク・デバイスに、データ・ネットワーク・デバイスまたはそのサブシステムの1つの現在の構成をロックすることなく、送信することを可能にする、方法およびデバイスを提供することもまた望ましい。
【0008】
あるタイプのプログラムは、コマンド・ライン・インタフェース(CLI)と呼ばれ、一般に、構成に関連した管理トランザクション要求をデータ・ネットワーク・デバイス(例えば、TCP/IPルーター、マルチプロトコル・ラベル・スイッチング(MPLS)スイッチなど)に通信するために使用される。しかし、CLIの開発に関係するコストのために、既存のCLIは、データ・デットワーク・デバイスを再構成する、機能的に完全または効率的な手段を提供しない。
【0009】
したがって、データ・ネットワーク・デバイスまたは関連付けられたサブシステムの管理機能への全アクセスを提供する、CLIを提供することが、追加として望ましい。
構成情報をデータ・ネットワーク・デバイスに送信することができることに加えて、ユーザーはまた、データ・ネットワーク・デバイスの1つまたは複数のサブシステムの現在の構成を定期的に得る必要もある。
【0010】
したがって、このような構成を、共通管理トランザクション要求を使用して得るための手段を提供することがさらに望ましい。
【発明の概要】
【発明が解決しようとする課題】
【0011】
我々は、「XPath表現」を含むように生成されたXML管理トランザクション要求(以下で「XML要求」と称する)を、データ・ネットワーク・デバイスの1つまたは複数のサブシステムを再構成するため、または、このようなサブシステムの現在の構成を得るための、共通の管理トランザクション要求を作成するための構造として使用することができると認識している。
【課題を解決するための手段】
【0012】
このようなXML要求は、複雑な管理トランザクションに関連付けられるXPath表現を含むことができる。このような要求の実行により、XPath表現がパターン・マッチング表現として、例えば、実質的に同じ時間に変更などがされるべきである、所与のサブシステム構成のいくつかの異なる要素を識別することが可能となる。これにより、データ・ネットワーク・デバイスまたは関連付けられたサブシステムを再構成する時間およびコストが削減される。
【0013】
Xpath表現を含むXML要求の使用により、使いやすいCLIまたは他の類似のエージェントの設計もまた可能となる。
本発明によって提供された各エージェントは、同じXML要求構造を使用して要求を生成するので、これらの要求を、データ・ネットワーク・デバイス内の中央管理モジュール(CMM)などによって、高速に処理することができる。
【0014】
CMMは、1つの共通構造を使用してトランザクションを処理することのみを必要とするので、データ・ネットワーク・デバイスを設計するコストを削減することができる。
小規模データ・ネットワークがこの共通のXML要求構造を利用することができることを確認するために、本発明は、受信されたXML要求を、XPath表現を含まない、拡張された内部要求に変換することに備える。これは、XPath表現を処理することができないデータ・ネットワーク・デバイスの所与のサブシステムが、それにもかかわらず、XPath表現を処理することなくXML要求を処理することを可能とするために行われる。これにより、このようなサブシステムのコストが低く保たれる。
【0015】
代替として、このようなサブシステムのリソース使用が最大の関心事ではない、より大規模なデータ・ネットワーク・デバイスでは、本発明は追加として、XML要求を、その中に含まれたXPath表現を含めて処理のためにサブシステム上に渡す、CMMに備える。
【図面の簡単な説明】
【0016】
【図1】本発明の一実施形態による、XML要求を利用するデータ・ネットワークを示す図である。
【図2】1つまたは複数のエージェントによって生成された、XPath表現を含む、外部XML要求の簡易化された実施例を示す図である。
【図3】本発明の一実施形態による、XML要求を妥当性検査するため、および、XMLスキーマ・ドリブンのCLIのオペレーションを指示するために使用される、増補されたXMLスキーマを示す図である。
【図4】本発明のもう1つの実施形態による、CMMなどによって拡張されておらず、1つまたは複数のサブシステムによる使用のためのXPath表現を含まない、内部XML表現された管理トランザクション要求を示す図である。
【発明を実施するための形態】
【0017】
このとき図1を見ると、本発明の一実施形態によるデータ・ネットワーク1が図示される。図のように、ネットワーク1は、1つまたは複数のエージェント30a、30b、...30n(ただし「n」は最後のエージェント)を含み、各エージェントは、パスウェイ40を介してCMM10に接続されたXMLインタフェース31a、31b、...31nを含む。CMM10は、データ・ネットワーク・デバイスの一部であり、ルーター、MPLSスイッチなどである。CMM10は、外部XML要求を1つまたは複数のエージェント30a、30b、...30nから受信するための、入出力(I/O)ユニット11を含むことができる。XML要求を受信すると、入出力ユニット11を、これらの要求をパーサー12に転送するように動作可能にすることができ、パーサー12は、格納XMLスキーマ・セクション13を使用して、受信された各要求の構文を妥当性検査するように動作可能である。以下でさらに説明するように、受信された各XML要求の構文の妥当性検査はオプショナルであることを理解されたい。引き続き、CMM10はまた、DOMツリー・セクション14を含むようにも図示され、DOMツリー・セクション14は、サブシステム20a、20b、...20nのすべての構成を表現する全体のDOMツリーを格納するように動作可能である。DOMツリー・セクション14はまた、受信された各XML要求が、サブシステム20a、20b、...20nのうち1つに含まれた構成要素を含むかどうかを判断することにおける工程として、受信された各XML要求を表現する1つまたは複数のDOMツリーを生成するようにも動作可能である。別の言い方では、DOMツリー・セクション14を、XSLTセクション15と共に使用して、各要求のセマンティクスを妥当性検査することができる。これもまたオプショナルである。
【0018】
CMM10内にまた、比較セクション16、変換セクション17およびコントロール・セクション18も図示される。これらのセクションのオペレーションを、以下でより詳細に論じる。
【0019】
本発明の一実施形態では、図1のサブシステム20a、20b、...20nの各々は、XML要求を受信するように動作可能であり、これらのXML要求は、それらの構成を変更すること、状態情報(例えば、カウンタの値)へのアクセスを可能にすること、またはそうでない場合はサブシステムを管理することができる。代替として、各サブシステム20a、20b、...20nは、仮想DOMツリー・インタフェース21a、21b、...21nを含むことができる。アドホック・クエリがXPath表現、XQuery表現またはプログラミング言語スクリプトの形態でサブシステムに送信されるとき、インタフェース21a、21b、...21nは必要である。サブシステム20a、20b、...20nはCMM10に、パスウェイ50などを使用して接続され、エージェント30a、30b、...30nに、パスウェイ70によって接続される。
【0020】
別々のセクションとして図示するが、CMM10を構成するセクションの各々を結合してより少数のセクションを形成することができ、あるいは代替として、分解してさらに追加のセクションを形成することができることを理解されたい。本発明の一実施形態では、エージェント、インタフェース、CMM、CMMセクションおよびサブシステムの各々を、ソフトウェア、ファームウェア、ハードウェア、またはこれら3つのある組み合わせにおいて実施することができる。ソフトウェアまたはファームウェアの場合、各々は、上述および後述の本発明の特徴および機能を実行することができる、1つまたは複数のプログラムまたはプログラム・コンポーネントを含むことができる。
【0021】
図1に示すコンポーネントのオペレーションを論じる前に、このとき図2を参照し、図2では、本発明の一実施形態による、生成された外部XML要求の一実施例が示される。
【0022】
前述のように、共通管理トランザクション要求構造の使用は、ルーターおよびスイッチなど、データ・ネットワーク・デバイスを設計することに関連付けられたコストを大幅に削減するようになる。これを理解して、本発明者は、XML表現された管理トランザクション要求の新しい構造または形式を発見した。すなわち、本発明者は、XPath表現を含んだXML表現された管理トランザクション要求が、複雑な管理トランザクションが以前に可能だと考えられたよりも高速に実行されることを可能にすることを発見した。これは、部分的には、XPath表現がパターン・マッチング表現として動作して、サブシステム内で1つまたは複数のターゲット構成要素を識別するという事実による。複雑なトランザクションを、XPath表現を使用して実行するための能力は、複雑なトランザクション要求のほぼ同時処理を、最小のロッキング要件により可能にする。相対的に、既存のXMLスキームは、データ・ネットワーク・デバイスの構成が、延長された期間に渡ってロックされて、複雑なトランザクション要求を複数のソースから受信することが可能になることを必要とする。
【0023】
図2に示す外部XML要求200は、一連の異なるセグメントから構成される。説明を容易にするため、これらのセグメントのうちいくつかのみを論じる。図のように、要求200は、要求名セグメント201、そのうちの1つがセグメント202である、1つまたは複数の属性名セグメント、および、XPath表現セグメント203を含む。
【0024】
一般に、角括弧「<>」は、XML開始タグまたはXML終了タグを描く。XML要求200は開始タグ301で開始し、終了タグ302で終了する。開始タグ301内に、要素の「属性」がリストされる。
【0025】
属性名セグメント202は、XPath表現セグメント203内に含まれた属性値204に関連付けられる。属性値204および属性名セグメント202を使用して、XML要求200のターゲットを識別することができる。
【0026】
本発明の一実施形態では、要素名セグメント201は、サブシステムの構成の少なくとも1つのターゲット構成要素上で実行されるべきオペレーションを指示して、例えば、CMM10に関連付けられたサブシステム20a、20b、...20nのオペレーションを再構成する。
【0027】
上述のように、XPath表現が実行されるとき、XPath表現はパターン・マッチング表現としての機能を果たす。具体的には、XPath表現は、例えば、要素のシーケンス204がXML構成ツリー内でネストされる順序で、要素のシーケンス204によって定義されたパスに従うことによって、ターゲット構成要素を識別する。
【0028】
つまり、本発明によって提供されたXML要求を使用することによって、ユーザー60によって最初に発信された単純または複雑な管理トランザクション要求のターゲットである、サブシステム内の構成要素を、高速に識別することができる。実際に、以前に可能であると考えられたよりもはるかに高速である。
【0029】
図2に示す要素名を「addRequest」として示すが、いくつかの要素名を使用することができることを理解されたい。本発明のさらなる実施形態では、要素名セグメント201を、2、3例を挙げると、addRequest、deleteRequest、mergeRequest、replaceRequest、getRequestおよびcommandRequestからなるグループから選択することができる。
XML要求は、1つまたは複数の構成要素を識別するXPath表現を含むので、XPath表現は、ユーザー60によって1つまたは複数のエージェント30a、30b、...30nに入力された元の管理トランザクション要求のターゲットを含む、と言うこともできる。
【0030】
やや引き返すと、図2に示すXML要求200を、1つまたは複数のエージェント30a、30b、...30nによって生成し、次いでCMM10に送信することができることを理解されたい。このXML要求を後述の他のXML表現された管理トランザクション要求と区別するために、このタイプのトランザクションを「外部XML要求」と称しており、以下でもそのように称する。また、XML要求200を、エージェント30a、30b、...30nから離れて、例えば、XML要求ジェネレータ80(例えば、リモート管理システム、サーバーなど)によって生成し、次いで、エージェント30a、30b、...30nにダウンロード、またはそうでない場合は入力することができることも理解されたい。
【0031】
上述のように、本発明によって提供されたXML要求は、複雑な管理トランザクションを表現するXPath表現を含むことができる。このような複雑なトランザクションは、複数のターゲット構成要素が同時に再構成または変更されることを必要とする場合がある。これに関して、本発明は、複数のターゲット構成要素上で実行されるべきオペレーションを指示する要素名セグメント、複数のターゲット構成要素の各々に関連付けられた属性名を含む属性名セグメント、および、複数のターゲット構成要素の各々に関連付けられた属性値を含むXPath表現セグメントを含む、XML要求を提供する。
【0032】
上述のように、CMM10によってパスウェイ40に沿って受信されるXML要求は、1つまたは複数のエージェント30a、30b、...30nで発生する。これらのエージェントは、本発明によって提供された新規なエージェントである。
【0033】
具体的には、エージェント30a、30b、...30nの各々は、新規なXMLインタフェース・セクション31a、31b、...31nを含むことができ、これらのXMLインタフェース・セクションは、1つまたは複数の従来の管理トランザクション要求をユーザー60から受信するように動作可能である。1つまたは複数の要求を受信すると、各XMLインタフェース・セクション31a、31b、...31nは、少なくとも1つのXML要求(XPath表現を含む)を、受信された従来の要求毎に生成するように動作可能である。1つまたは複数の受信された従来の管理トランザクション要求は、単純または複雑な管理トランザクションを含むことができる。
【0034】
生成されたXML要求の構造は、図2に示すような類似の構造に従う。
【0035】
エージェント30a、30b、...30nは、いくつかのタイプのエージェントを含むことができ、これらのエージェントには、2、3例を挙げると、CLIクライアント、HTTP/SOAPクライアント、SNMPエージェントまたはスクリプト・クライアントが含まれる。CLIは、実際には、本発明の目的のクライアント/エージェント全体の一部でしかない場合があるが、CLIエージェントという用語は、特に明記しない限り、または、以下の考察の文脈が別のように示さない限り、単にCLIを指す。
【0036】
XML要求の生成に加えて、エージェント30a、30b、...30nの各々をさらに、そのように生成された各XML要求の構文を、XMLスキーマを使用して妥当性検査するように、動作可能にすることができる。一般的に言えば、XMLスキーマを文法または語彙と見なすことができる。本発明のさらなる実施形態では、エージェント30a、30b、...30nの各々は、生成された各XML要求が、要求をCMM10上に送信することに先立ってCMM10によって認識可能である語彙/文法に準拠することを検証するために、この文法または語彙を使用するように動作可能である。このように、認識可能な構文(例えば、認識可能な要素名、属性名)を含まない要求は、CMM10に到達することを防止される。認識不可能な要求は、無害のエラーの結果となる場合があり、あるいは代替として、CMM10をハッキングまたは中断しようとする、より故意の試みの結果となる場合がある。
【0037】
本発明のさらなる実施形態では、CLIエージェント30aをさらに、ユーザー60との1つまたは複数のインタラクティブなセッションを生成するように動作可能にすることができる。例えば、CLIエージェント30aは、ユーザー・コマンド・フィードバック、文脈依存ヘルプ、モーダル・ビヘイビア、および、XMLスキーマを使用する他のカスタマイズされた機能からなるグループから少なくとも選択された機能を含む、セッションを生成することができる。別の言い方では、CLIエージェント30aはユーザー60に、XMLスキーマに準拠する、カスタマイズされた文脈依存XML要求をインタラクティブに作成する機会を提供する。
【0038】
XMLスキーマを各エージェント30a、30b、...30n内に格納することができるが、本発明の代替実施形態では、エージェント30a、30b、...30nの各々を、XMLスキーマをCMM10から、または、リモート・ネットワーク管理システムからなど、リモート・デバイスから受信するように、動作可能にすることができる。
【0039】
XMLスキーマを受信すると、エージェント30a、30b、...30nの各々を、XMLスキーマを例えばプログラムにロードするように動作可能にすることができる。このようなプログラムを、XML要求の構文を妥当性検査するように動作可能にすることができる。
【0040】
さらに、本発明のさらなる実施形態では、CLIエージェント30a内のXMLインタフェース31aは、増補されたXMLスキーマを受信する(あるいは、増補されたXMLスキーマを格納する)ことができる。この増補されたXMLスキーマは、ユーザー60とCLIエージェント30aの間の対話をカスタマイズする、追加の命令を含む。図3は、本発明の一実施形態による、増補されたXMLスキーマの一実施例を示す。増補されたXMLスキーマを使用して、コマンド・モードおよび関連付けられたコマンド・ライン・プロンプトを定義することができ、ISOのような「no」プレフィックスを、例えばコマンドに適用することができるときを定義することができる。
【0041】
管理されたデバイスから機能が追加または除去されるとき、エージェント30a、30b、...30nによって使用されたXMLスキーマを増補することができる。
【0042】
CLIエージェント30aをさらにユーザー・フレンドリーにするために、本発明は、ユーザー60にコマンド履歴、コマンド完了プロンプト、およびコマンド・ライン編集を提供するCLIを提供する。
【0043】
前述のように、各エージェントは、同じXML要求構造を使用して、要求を生成する。このため、CMM10によって受信された管理要求はすべて共通の管理トランザクション要求構造に準拠し、これは、CMM10および/またはCMM10がその一部であるデータ・ネットワーク・デバイスの設計を削減する助けとなる。
【0044】
新しいXML要求構造、および、新しいXML要求を生成するための方法を発明した後、本発明者は、このような要求を処理することができる新しいCMMも提供される必要があることを理解した。
【0045】
一般に、今日存在するCMMは2つのタイプがあり、すなわち、限定リソースを有するもの、および、相対的に言うと、無制限のリソースを有するものである。別の言い方では、高度な処理を実行することができるサブシステムを含むCMMが存在する。これらは相対的に無制限のリソースのCMMである。対照的に、いくつかのCMMは、限定量の処理のみが可能であるサブシステムを含む。これらは、限定リソースCMMである。CMMが、限定リソースを有するサブシステムを含むか、無制限リソースを有するサブシステムを含むかに応じて、受信されたXML要求をCMMがどのように処理することができるかが決定する。
【0046】
まず、限定リソースCMMを論じる。
サブシステムが限定リソースを有する場合、ほとんど確実に、サブシステムはXPath表現を処理することができないようになる。したがって、1つまたは複数のエージェント30a、30b、...30nから受信された外部XML要求は、XPath表現を含まない要求に変換されなければならない。本発明の一実施形態では、XPath表現を含む少なくとも1つのXML要求を受信すると、CMM10は、要求内の属性名および属性値に関連付けられた少なくとも1つのサブシステム20a、20b、...20nを識別するように動作可能である。識別されたサブシステムが限定リソースを有するとき、CMM10はさらに、受信された要求を、XPath表現を含まない拡張された内部要求に変換するように動作可能である。CMM10はさらに、次いで、拡張された内部要求を、識別されたサブシステム上に転送するように動作可能である。このタイプのXML要求を、エージェントから受信された外部要求と区別するために、この要求を「内部」XML要求と称する。拡張された内部XML要求の一実施例を図4に示す。図4に示す要求は、図2に示す外部XML要求の拡張バージョンである。
【0047】
このサブシステムの識別を、例えば比較セクション16と共に、コントロール・セクション18によって実行することができる。
【0048】
具体的には、サブシステムを識別するため、CMM10は最初に「所有権登録」を1つまたは複数のサブシステム20a、20b、...20nから受信することができる。これらの所有権登録は、どの構成要素がどのサブシステム内に含まれるかを指示する。その後、特定のサブシステムを識別するために、CMM10をさらに、1つまたは複数の所有権登録を、受信されたXPath表現内のターゲット構成要素と比較するように、動作可能にすることができる。一致が生じる場合、これは、受信されたXML表現が、最終的にXPath表現に一致した所有権登録を以前に供給していた特定のサブシステム上に転送されるべきであるという指示である。
【0049】
このような一致が生じるとき、CMM10を、変換セクション17を使用して、例えば、受信された外部XML要求を、XPath表現を含まない拡張された内部要求に変換するように、動作可能にすることができる。その後、CMM10を、入出力セクション11を介して、例えば、拡張された内部要求を、識別されたサブシステム上に転送するように、動作可能にすることができる。再度、識別されたサブシステムが限定リソースを有し、したがって、XPath表現を処理することができないと仮定される。
【0050】
時として、あるサブシステムに、変更が他のサブシステムに行われていることが通知されることが望ましい。これを理解して、本発明は、1つまたは複数の「通知登録」を1つまたは複数のサブシステム20a、20b、...20nから受信することができる、CMM10を提供する。これらの通知登録は、サブシステムが、特定の変更が別のサブシステムに行われるたびに通知を受信することを望むことを、CMMに知らせるための方法である。具体的には、CMM10は、これらの登録のうち1つまたは複数を受信するように動作可能であり、各登録は、別のサブシステムの構成内の少なくとも1つの構成要素に関連付けられる。CMM10が、通知登録に関連付けられた構成要素の1つを含むXPath表現を含むXML要求を受信するとき、CMM10はさらに、通知メッセージを1つまたは複数のサブシステム20a、20b、...20nに転送し、それがこのようなXML要求を受信していることをサブシステムに通知するように動作可能である。このように、受信されたXML要求は、通知登録を発信したサブシステム上に送信されないが、それにもかかわらず、サブシステムには、別のサブシステムに行われた変更を追跡するために、このようなXML要求の受信が通知される。
【0051】
いくつかのCMMは、相対的に無制限のリソースを有するサブシステムを含む。このような場合、受信されたXML要求を、XPath表現を除去する内部要求に変換する必要はない。その代わりに、本発明のさらなる実施形態では、CMM10が、XML要求内の属性名および属性値に関連付けられる少なくとも1つのサブシステム20a、20b、...20nを識別した後、CMM10は、受信されたXML要求を、そのように識別されたサブシステム上に転送するように動作可能である。その後、サブシステムは、要求をXPath表現と共に処理することができる。
【0052】
今までは、受信されたXML要求の構文およびセマンティクスの両方が適切であったこと、または、エージェントが両方を妥当性検査していることが仮定された。本発明の追加の実施形態では、CMM10はさらに、各要求の構文およびセマンティクスを、このような要求をサブシステム上に転送する前に、妥当性検査するように動作可能である。特に、本発明のさらなる実施形態では、XPath表現を含む少なくとも1つの外部XML要求を受信した後、CMM10は、この要求の構文を、格納されたXMLスキーマを使用して妥当性検査するように動作可能である。この妥当性検査をパーサー12によって、1つまたは複数のXMLスキーマを格納するように動作可能であるXMLスキーマ・セクション13と共に、実行することができる。セクション13内に格納されたXMLスキーマの構成は、例えば、CMM10の機能に応じて変わる場合がある。前述のように、入ってくる各要求の構文を妥当性検査することは、オプショナルであることを理解されたい。いくつかの場合、これは、不適切な構文におけるいかなる要求、特に、ハッカーまたは他者によって有害な意図により生成されているものを除去するために、望ましい。
【0053】
各外部XML要求の構文を妥当性検査することに加えて、CMM10はまた、各要求のセマンティクスを、サブシステム20a、20b、...20nの全体の構成を表現する集中DOMツリーを使用して、妥当性検査することもできる。すなわち、受信された要求が適切な構文(例えば、要素名)を有する場合があるとしても、このような要求は、サブシステム20a、20b、...20nのいずれの内部にも存在しない属性値を含む場合がある。このような場合、時間を節約するために、要求をサブセクション上に転送して、エラー・メッセージを戻させるのではなく、CMM10はさらに、無効なセマンティクスを有するいかなる要求をも識別し、次いでエラー・メッセージを、発信元のエージェントまたは要求のソースに戻すように動作可能である。
【0054】
CMM10は、このセマンティック妥当性検査を、XSLTセクション15と共に、DOMツリー・セクション14を使用して実行することができる。具体的には、外部XML要求を受信すると、DOMツリー・セクション14を、受信された要求に関連付けられたDOMツリーを生成するように動作可能にすることができる。その後、DOMツリー・セクション14を、XSLTセクション15と共に、DOMツリー内で少なくとも1つのターゲット構成要素を識別するように動作可能にすることができる。生成されたDOMツリー内でターゲット構成要素を識別すると、DOMツリー・セクション14を、XSLTセクション15と共に、セクション14内に格納されたサブシステム20a、20b、...20nの構成全体を表現する集中DOMツリーを探索するように、動作可能にすることができ、これは、集中DOMツリーが識別された要素に対する一致を含むかどうかを判断するためである。そうである場合、DOMツリー・セクション14はさらに、一致され識別された要素に関連付けられるサブシステムを識別するように動作可能である。一致がない場合、DOMツリー・セクション14は命令を、エラー・メッセージを生成するコントロール・セクション18などに送信するように動作可能である。
【0055】
引き続き、一致が発見されるとき、要求を、識別されたサブシステム上に転送することができる。前述のように、識別されたサブシステムが、限定リソースを有するものである場合、この要求は、XPath表現を含まない拡張された内部要求に変換されなければならない。他方では、サブシステムが相対的に無制限のリソースを有する場合、XPath表現を含む元のXML要求を、識別されたサブシステム上に転送することができる。
【0056】
これまで、本発明によって提供された新規なXML要求、エージェントおよびCMMを論じた。残るものは、本発明によって提供された新規なサブシステムを論じることである(しかし、これらのすべては相互に関係がある)。
【0057】
前述のように、各サブシステム20a、20b、...20nは、所有権または通知登録を生成することができ、これらの所有権または登録通知はCMM10に送信され、これは、各サブシステム内に格納される構成要素の指示をCMM10に提供するため、および、所与のサブシステムが監視することを望む他のサブシステムのある種のリストをCMM10に提供するためである。サブシステムが無制限リソースを有するとき、サブシステムを、CMM10に関して上述した構文およびセマンティクス妥当性検査を実行するように動作可能にすることができる。
【0058】
本発明のさらに追加の実施形態では、サブシステム20a、20b、...20nの各々は、仮想DOMツリー・インタフェース21a、21b、...21nを含むことができる。これらの各インタフェースを、管理トランザクション要求を受信し、次いで要求に基づいて、(a)関連付けられたサブシステムの現在の構成を戻すように、または、(b)関連付けられたサブシステムの構成を修正するように、動作可能にすることができる。
【0059】
受信された要求のタイプは変わる場合がある。本発明の一実施形態では、要求を、少なくとも1つのターゲット構成要素を含むXPath表現を含む、XML要求にすることができる。本発明のもう1つの実施形態では、要求はXQuery表現を含むことができる。本発明のさらにもう1つの実施形態では、要求はプログラミング言語スクリプトを含むことができる。
【0060】
いずれにしても、所与の仮想DOMツリー・インタフェース21a、21b、...21nが要求を受信した後、この仮想DOMツリー・インタフェースはさらに、関連付けられたサブシステム構成を探索して、その構成が、要求に含まれた少なくとも1つのターゲット構成要素の一致を含むかどうかを判断するように、動作可能である。一致が発見されるとき、インタフェース21a、21b、...21nはさらに、発見されたいかなる一致する要素をも戻すように動作可能である。
【0061】
具体的には、要求を受信すると、各インタフェース21a、21b、...21nは、XML DOM APIを、構成および状態情報(例えば、カウンタの値など)に適用し、サブシステムを構成するように動作可能である。その後、各インタフェースは、XPath、XQueryまたはプログラミング言語スクリプトを仮想DOMツリーへ、適用されたAPIを使用して適用して、一致があるかどうかを判断し、あるいは、スクリプト指示処理(例えば、カウンタの値を抽出するなど)を実行するように、動作可能である。一致が発生する場合、一致する構成または状態要素は、応答のXMLメッセージにおいて戻される。そうでない場合、エラー・メッセージが、例えば1つまたは複数のエージェント30a、30b、...30nに戻される。元のXML要求がプログラミング言語スクリプトを含んだ場合、このスクリプトに応答して生成されたいかなる出力も、応答のXMLメッセージのコンテンツ内で戻される。
【0062】
スクリプトがインタフェース21a、21b、...21nによって受信されるとき、インタフェースを、例えば適切な一致が発見されるとき、スクリプトのコンテンツに基づいて、関連付けられたサブシステムの構成を修正するように動作可能にすることができる。
【0063】
上述の考察は本発明の実施例を示すように試みており、本発明の真の範囲は、以下に続く特許請求の範囲によって決定される。

【特許請求の範囲】
【請求項1】
中央管理モジュール(CMM)であって、
XPath表現を含む、少なくとも1つのXML表現された管理トランザクション要求を受信すること、
前記要求に関連付けられた少なくとも1つのサブシステムを識別すること、
前記要求を、XPath表現を含まない、拡張された内部要求に変換すること、および
前記内部要求を前記識別されたサブシステムに転送することを行うように動作可能であることを特徴とする中央管理モジュール(CMM)。
【請求項2】
中央管理モジュール(CMM)であって、
XPath表現を含む、少なくとも1つのXML表現された管理トランザクション要求を受信すること、
前記要求に関連付けられた少なくとも1つのサブシステムを識別すること、および
前記受信された要求を前記識別されたサブシステムに転送することを行うように動作可能であることを特徴とする中央管理モジュール(CMM)。
【請求項3】
中央管理モジュール(CMM)であって、
XPath表現を含む、少なくとも1つのXML表現された管理トランザクション要求を受信すること、
前記要求の構文を、XMLスキーマを使用して妥当性検査すること、および
前記要求のセマンティクスを、全体の構成を表現する集中DOMツリーを使用して妥当性検査することを行うように動作可能であることを特徴とする中央管理モジュール(CMM)。
【請求項4】
前記要求に関連付けられたDOMツリーを生成すること、
少なくとも1つのターゲット構成要素を前記DOMツリー内で識別すること、
集中DOMツリーを探索して、前記集中DOMツリーが前記識別された要素に対する一致を含むかどうかを判断すること、および
前記識別された要素の一致に関連付けられたサブシステムを識別することを行うようにさらに動作可能であることを特徴とする請求項3に記載のCMM。
【請求項5】
CMMサブシステムであって、
少なくとも1つのターゲット構成要素または状態要素を含む、少なくとも1つのXML表現された管理トランザクション要求を受信することであって、前記要求は、XPath表現、プログラミング言語スクリプト、およびXQuery表現から選択されたグループからの少なくとも1つの要求を含むこと、および、
構成および状態情報を探索して、前記少なくとも1つのターゲット構成要素または状態要素に対する一致があるかどうかを判断することを行うように動作可能であることを特徴とするCMMサブシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2011−138551(P2011−138551A)
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願番号】特願2011−76973(P2011−76973)
【出願日】平成23年3月31日(2011.3.31)
【分割の表示】特願2005−191300(P2005−191300)の分割
【原出願日】平成17年6月30日(2005.6.30)
【出願人】(596092698)アルカテル−ルーセント ユーエスエー インコーポレーテッド (965)
【Fターム(参考)】