(57)【要約】【課題】　実装やバージョンアップが容易で安全であり、費用対効果性に優れたアプリケーションインターフェイス技術によってネットワーク装置を遠隔制御する。【解決手段】　別のインターフェイス１２５によって制御される試験装置１００を遠隔制御するためのアプリケーションプログラミングインターフェイス２００、２０５、２１０、３００、４００、５００、５０５を定義する方法であって、インターフェイスよりも高度な抽象性を有するコマンド及びパラメータ２００、２０５、２１０、３００、４００、５００、５０５を定義するステップと、コマンド及びパラメータ２００、２０５、２１０、３００、４００、５００、５０５に基づいてＸＭＬ文書を生成し、これにより、試験装置１００を制御するためのアプリケーションプログラミングインターフェイス２００、２０５、２１０、３００、４００、５００、５０５を提供するステップとを含んでなる方法およびシステムを提供する。【選択図】　　　　図８
2004086904.tif 000002
【特許請求の範囲】
【請求項１】
　別のインターフェイスによって制御される試験装置を遠隔制御するためのアプリケーションプログラミングインターフェイスの定義方法であって、
　該インターフェイスよりも高度な抽象性を有するコマンド及びパラメータを定義するステップと、
　該コマンド及びパラメータに基づいてＸＭＬ文書を生成し、これにより、前記試験装置を制御するためのアプリケーションプログラミングインターフェイスを提供するステップと
を含んでなる方法。
【請求項２】
　ＸＭＬ文書の要素が、前記コマンド及びパラメータに対応している請求項１に記載の方法。
【請求項３】
　ネットワークを介して試験装置と通信状態にあるクライアントコンピュータであって、該試験装置に対してアプリケーションプログラミングインターフェイスを提供するＸＭＬ文書に基づいて前記試験装置を制御するアプリケーションを生成し、前記ネットワークを介して前記試験装置に該ＸＭＬ文書を送信し、送信した該ＸＭＬ文書に応答するデータを前記試験装置から受信するクライアントコンピュータを含む、ネットワーク上の試験装置を制御するシステム。
【請求項４】
　受信したＸＭＬ文書に前記試験装置からのデータが格納されている請求項３に記載のシステム。
【請求項５】
　ＦＴＰ及び／又はＨＴＴＰプロトコルを使用して前記試験装置からデータを受信する請求項３に記載のシステム。
【請求項６】
　前記クライアントコンピュータと前記試験装置との間における少なくとも１回のＸＭＬ文書交換によってユーザ認証が実行される請求項３に記載のシステム。
【請求項７】
　前記クライアントコンピュータと前記試験装置との間における前記ＸＭＬ文書交換が試験セッションに対応しており、試験セッションのセキュリティが前記ＸＭＬ文書を暗号化することによって提供される請求項３に記載のシステム。
【請求項８】
　アプリケーションプログラミングインターフェイスを提供する前記ＸＭＬ文書がコマンドを記述しており、前記試験装置は、前記コマンドを実行し、前記ネットワークを介して前記コマンドの実行に応答するデータを送信するものである請求項３に記載のシステム。
【請求項９】
　前記試験装置は、前記コマンドを前記試験装置と互換性を有するデータへと変換して前記コマンドを実行するものである請求項８に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、ネットワーク装置の遠隔制御に一般的に使用されているバイト駆動型インターフェイス（bite-driven interface）よりも高度な抽象性(abstraction)を有するアプリケーションインターフェイス技術を使用してネットワーク装置を安全に遠隔制御することにより、ネットワーク装置を制御するための安全なリモートコマンド駆動型ユーザインターフェイス(remote command-driven user interface)を提供することに関する。より詳細には、本発明は、マーク付け言語によってネットワーク試験／監視装置などのネットワーク装置を制御するアプリケーションを定義し、安全なリモートコマンド駆動型ユーザインターフェイスを提供することに関するものである。
【背景技術】
【０００２】
　一般的に、ネットワークオペレータは、ネットワーク試験装置／監視装置（以下、「試験装置」とよぶ）を使用して被試験ネットワークのデータ通信（またはトラフィック）を試験／監視している。これらの試験装置は、ローカルコマンド駆動型インターフェイス及び／又はグラフィカルユーザインターフェイスを介して、キーボード及び／又はディスプレイから入力されたデータによってローカルに制御することができる。また、ネットワークオペレータは、試験装置のベンダ（または製造者）から提供されたアプリケーションプログラミングインターフェイス（application programming interface：以下、「ＡＰＩ」とよぶ）を使用して試験装置を遠隔制御することもできる。具体的には、ネットワークオペレータ（即ち、試験装置の顧客）は、それらのＡＰＩを使用し、試験装置を遠隔制御して様々な試験／監視／計測を実行する試験装置コマンドをＡＰＩを介して交換することにより、ネットワークトラフィックに関する試験ソフトウェアアプリケーションを開発／構築する。しかしながら、通常、試験機器は、ネットワークオペレータによってインターネットなどの被試験ネットワーク上に広範囲に分散されており、この結果、非常に複雑な試験ソフトウェアを開発／保守することが必要となるため、これらの一般的なＡＰＩ技術は試験及び計測機器の制御には適していない。また、通常、試験装置は、例えば、試験装置のベンダごとに異なっていることから、試験ソフトウェアの複雑さが増大することになる。更には、試験装置のベンダによるＡＰＩのバージョンアップ作業も困難であり、この結果、ベンダによる試験装置の更新が滞りがちになる。また、このような複雑さのために、ＡＰＩに基づいたソフトウェアアプリケーションのデバッグ作業も容易ではない。
【０００３】
　所有権を主張できる（proprietary：またはプロプラエタリという）ソケットインターフェイスであるＣＯＲＢＡ（Ｃｏｍｍｏｎ　Ｏｂｊｅｃｔ　Ｒｅｑｕｅｓｔ　Ｂｒｏｋｅｒ　Ａｒｃｈｉｔｅｃｔｕｒｅ）とＳＣＰＩ（Ｓｔａｎｄａｒｄ　Ｃｏｍｍａｎｄｓ　ｆｏｒ　Ｐｒｏｇｒａｍｍａｂｌｅ　Ｉｎｓｔｒｕｍｅｎｔｓ）とが、代表的なＡＰＩ技術である。これらのプロプラエタリなソケットインターフェイスは、その静的でプロプラエタリな特性のために、バージョンアップと、顧客との共有と、デバッグとが困難である。具体的には、ソケットインターフェイスに基づく一般的なＡＰＩはバイト駆動型であり（即ち、ソケットインターフェイスはコマンド駆動型ではない）、このため、ネットワークオペレータは、ソケットインターフェイスによって複雑なソフトウェア試験アプリケーションを開発すると共に、ユーザにとって解読困難な試験装置コマンドの知識ベースの獲得が要求される。また、バイト駆動型とは、固定フォーマットのバイナリ構造によって通信する通信形態を意味しており、多数の試験装置が分散する環境においてバイト駆動型リモートインターフェイスを使用すれば、試験アプリケーションが非常に複雑なものになる。このため、ソケットインターフェイスＡＰＩの場合には、ＡＰＩの専門知識が必要となり、ネットワーク分析の費用が増大することになる。
【０００４】
　ＣＯＲＢＡの場合には、バージョンアップサポートがほとんど提供されず、また、ＣＯＲＢＡは、ネットワークオペレータにとって複雑過ぎる。例えば、問題点をデバッグする際に、顧客ソフトウェアのエラー（ネットワークオペレータのソフトウェアエラー）とＡＰＩ／コマンドエラーとを区別することが困難である。また、ＣＯＲＢＡは、十分なセキュリティを提供していない。ＳＣＰＩの場合も、バージョンアップや動的なポート割り当てがサポートされておらず、ネットワークオペレータが使用するには難しい複雑なコマンド構造が使用されている。更に、ＳＣＰＩの場合にも、十分なセキュリティは提供されていない。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
　従って、実装やバージョンアップが容易で安全であり、費用対効果性に優れたアプリケーションインターフェイス技術によってネットワーク装置を遠隔制御するニーズが存在している。
【課題を解決するための手段】
【０００６】
　別のインターフェイスによって制御される試験装置を遠隔制御するためのアプリケーションプログラミングインターフェイスを定義する本発明の一態様によれば、固有のインターフェイスよりも高度な抽象性を有するコマンド及びパラータを定義し、これらのコマンド及びパラメータに基づいて（ＳＯＡＰ等のＸＭＬ言語の派生物を含む）ＸＭＬを生成することによって試験装置を制御するアプリケーションプログラミングインターフェイスを提供することにより、本発明を達成することができる。
【０００７】
　更に、ＸＭＬ文書の要素が、これらのコマンド及びパラメータに対応している。
【０００８】
　ネットワークを介して試験機器を制御する本発明の別の態様によれば、データの記述に使用される拡張性のある自己文書化言語（self documenting language）を使用し、ネットワークを介して試験機器を制御するアプリケーションプログラミングインターフェイスを提供することにより、本発明を達成することができる。
【０００９】
　更に、ＸＭＬは自己文書化言語である。
【００１０】
　ネットワーク上の試験装置を制御するシステムを提供する本発明の別の態様によれば、ネットワークを介して試験装置と通信状態にあるクライアントコンピュータを使用し、試験装置に対してアプリケーションプログラミングインターフェイスを提供するＸＭＬ文書に基づいて試験装置を制御するアプリケーションを生成し、ネットワークを介してＸＭＬ文書を試験装置に送信し、送信したＸＭＬ文書に対する応答として試験装置からデータを受信することにより、本発明を達成することができる。
【００１１】
　更に、受信したＸＭＬ文書には試験装置からのデータが格納されており、又、ＦＴＰプロトコルを使用して試験装置からデータを読み出す。
【００１２】
　又、クライアントコンピュータと試験装置との間における少なくとも１回のＸＭＬ文書交換（document exchange）によってユーザ認証が行われる。
【００１３】
　更には、クライアントコンピュータと試験装置との間におけるＸＭＬ文書交換は試験セッション（test session）に対応しており、ＸＭＬ文書を暗号化することによって試験セッションのセキュリティが提供される。
【００１４】
　ネットワークと通信状態にある試験装置を提供する本発明の一態様によれば、試験装置内のプログラムされたプロセッサを使用し、アプリケーションプログラミングインターフェイスを試験装置に提供するＸＭＬ文書に記述されたコマンドをネットワークを介して受信し、これらのコマンドを実行し、コマンドの実行に対応したデータをネットワークを介して送信することにより、本発明を達成することができる。
【００１５】
　ネットワーク上の演算装置を遠隔制御するアプリケーションプログラミングインターフェイスを定義する本発明の一態様によれば、マーク付け言語に基づいて演算装置のユーザインターフェイス機能に対応する機能プロトコルを定義し、マーク付け言語及び機能プロトコルに従って生成された文書を演算装置と交換して演算装置とやり取りすることにより、本発明を達成することができる。
【発明を実施するための最良の形態】
【００１６】
　本項では、本発明の好適な実施例を詳細に参照するが、それらの実施例は添付の図面に例示されており、また、それら添付図面においては、同一の参照符号によって同一の要素が示されている。以下、添付図面を参照し、それらの実施例を解説することによって本発明について説明する。
【００１７】
　図１は、本発明の実施例によるネットワーク試験／監視装置制御システムのブロックダイアグラムである。この図１において、ネットワーク試験（または、計測及び／又は監視）装置（または機器）１００ａ〜ｎ（試験ユニット１００ａ〜ｎ）は、ネットワーク１０５ａ〜ｎと通信状態にあり、試験ネットワーク１５５ａ〜ｎ上のデータの様々な試験、計測、及び／又は、監視を実行する。通常、それぞれの試験ユニット１００は、ネットワーク１０５及び試験ネットワーク１５５と通信し、従来技術によって情報を送受信し、保存し、表示し、処理することができるコンピュータ、又は（例えば、デスクトップやポータブルやハンドヘルドなどの）なんらかの演算装置である。具体的には、試験ユニット１００では、通常、試験ネットワーク１５５上のデータ交換／ネットワークトラフィックの一般的な試験／監視、及び／又は、試験ネットワーク１５５上のデータ交換／ネットワークトラフィックに関連する計測機能を遂行するソフトウェアを実行する。例示の試験ユニット１００は、エンドツーエンドの音声品質を判定するためのＲＴＰ（Ｒｅａｌ−Ｔｉｍｅ　Ｔｒａｎｓｐｏｒｔ　Ｐｒｏｔｏｃｏｌ）パケットを監視する音声品質テスタ（voice quality tester：以下、「ＶＱＴ」とよぶ）、通信プロトコルを分析する分散ネットワークアナライザ（distributed network analyzer：以下、「ＤＮＡ」とよぶ）、及び／又は、ロジックアナライザを含んでいる（但し、これらに限定されるものではない）。なお、この試験ユニットは、本出願の譲受人である米国カリフォルニア州パロアルトに所在するアジレントテクノロジー社（Ａｇｉｌｅｎｔ　Ｔｅｃｈｎｏｌｏｇｉｅｓ，　Ｉｎｃ．，　Ｐａｌｏ　Ａｌｔｏ，　Ｃａｌｉｆｏｒｎｉａ）から入手することができる。
【００１８】
　図１において、ネットワーク１０５は、従来のトポロジーと従来のアーキテクチャとを有する有線又は無線ネットワークでありうる。このネットワーク１０５のアーキテクチャは、例えば、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ　Ｃｏｎｔｒｏｌ　Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ　Ｐｒｏｔｏｃｏｌ）などの従来の通信プロトコルを使用するクライアント／サーバーでありうる。更に、ネットワーク１０５は、例えば、ローカルエリアネットワークやワイドエリアネットワークなどでありうる。一方、試験ネットワーク１５５は、試験ユニット１００の試験対象となるどのようなデータ通信技術でありうる。例えば、試験ネットワーク１５５は、従来のトポロジーと従来のアーキテクチャとを有する有線又は無線ネットワークでありうる。試験ネットワーク１５５のアーキテクチャは、例えば、音声ネットワーク技術、Ｔ１、Ｅ１、ＶｏＩＰ、ＴＣＰ／ＩＰなどの従来の通信プロトコルを使用するクライアント／サーバーでありうる。また、試験ネットワーク１５５は、例えば、ローカルエリアネットワークやワイドエリアネットワークなどでありうる。
【００１９】
　図１においては、インターネットやイントラネットなどのＩＰネットワーク１０５に基づいたクライアント／サーバーネットワークアーキテクチャを使用する例として、クライアントコンピュータシステム１１０ａ〜ｎは、ＩＰネットワーク１０５を介して試験ユニット１００ａ〜ｎと通信状態にある。マーク付け言語を使用して試験ユニット１００のリモートバイト駆動型コマンドインターフェイスを定義することによって、マーク付け言語文書を介して試験ユニット１００を遠隔制御するマーク付け言語アプリケーションプログラミングインターフェイス（ＡＰＩ）を提供することにより、本発明を達成することができる。このマーク付け言語ＡＰＩは、試験ユニット１００を遠隔制御するのに一般的に使用されているリモートバイト駆動型コマンドインターフェイスよりも高度な抽象性を有している。従って、マーク付け言語ＡＰＩは、試験ユニット１００を制御するリモートコマンド駆動型ユーザインターフェイスを提供するものである。「コマンド駆動型（command-driven）」とは、特に、基礎をなすトランスポートソフトウェアによってコマンドの配置が処理／支配される制御（リモート）側のユーザの観点で、柔軟でユーザによる読解が可能なデータフォーマットを有する制御及び／又はデータ通信を意味している。受信側では、受信したコマンドとコマンドパラメータをアプリケーションプログラムによって解釈する。具体的には、通常、（限定されないが）ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）やＳＯＡＰ（Ｓｉｍｐｌｅ　Ｏｂｊｅｃｔ　Ａｃｃｅｓｓ　Ｐｒｏｔｏｃｏｌ）などのＳＧＭＬ（Ｓｔａｎｄａｒｄ　Ｇｅｎｅｒａｌｉｚｅｄ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）規則に従うマーク付け言語を使用してマーク付け言語ＡＰＩを定義する。一般的に、ＳＯＡＰなどのＸＭＬの拡張／派生物を含むＸＭＬは、データ通信用に構成されており（即ち、ＸＭＬはデータ通信用のタグを定義及び解釈するための規則を提供している）、拡張性に富み、ユーザによる理解が容易なフォーマットであるため、一般に好ましい言語である。
【００２０】
　図１においては、従来品（つまり、市販品及び／又はオープンソース）のＸＭＬ文書ライタ／エディタ１１５を使用し、試験装置１００とのインターフェイス及び制御に使用されているリモートインターフェイス（バイト駆動型インターフェイス）よりも高度な抽象性を有するコマンド／応答とコマンド／応答パラメータ（ＸＭＬインターフェイス文書）とを指定するＸＭＬ文書を、作成及び／又は生成することができる。従来のＸＭＬパーサ１２０を使用し、これらのＸＭＬインターフェイス文書を検証して解析し、試験ユニットアプリケーション１２７がそのＸＭＬデータを利用できるようにすることが可能である。従って、ＸＭＬ規格を使用して試験ユニット１００とクライアントコンピュータ１１０との間において、（例えば、応答／試験結果などの）試験ユニット１００のコマンドとパラメータとデータとを定義、送信、検証、及び解釈することにより、試験ユニット１００とインターフェイスして制御するためのＡＰＩを提供することができるのである。このＸＭＬに基づいて定義されたＡＰＩには、試験ユニット１００のローカルユーザインターフェイスの機能及びフローを反映することができる（つまり、通常、このＡＰＩのユーザは、試験を実行するＧＵＩユーザと同一の順序をほぼ踏襲することができる）。なお、例示の実施例では、ＸＭＬを使用して試験ユニットＡＰＩを定義しているが、本発明は、かかる構成に制限されるものではなく、ＳＧＭＬ規則に準拠するその他のマーク付け言語を含むデータ通信用のタグを定義して解釈するための規則を提供するその他のマーク付け言語を用いて実施することができる。
【００２１】
　図１において、クライアントアプリケーションソフトウェア１２５は、例えば、１つ以上のベンダの試験ユニット１００ａ〜ｎによって試験ネットワーク１５５ａ〜ｎのネットワークトラフィックに関連する計測／試験を行うために（つまり、試験ユニット１００上でＴｅｓｔ−Ｕｎｉｔアプリケーション１２７を実行するために）、ネットワークオペレータが作成した試験アプリケーションである。このクライアントアプリケーションソフトウェア１２５は、ＸＭＬ文書ライタ１１５及びＸＭＬ文書パーサ１２０に結合しており、ＸＭＬ文書ライタ１１５及びＸＭＬ文書パーサ１２０のそれぞれを介して試験ユニット１００を制御する制御コマンドを送受信する。本発明の一態様においては、クライアントアプリケーション１２５は、制御コマンドを入力データとしてＸＭＬ文書ライタ１１５に供給し、この入力データに基づいてＸＭＬ文書ライタがＸＭＬインターフェイス文書を生成することにより、クライアントアプリケーションロジックの一部としてＸＭＬインターフェイス文書を自動的に生成する。本発明の別の態様においては、クライアントアプリケーションソフトウェア１２５は、事前に定義された試験ユニット１００用の制御コマンドを有するＸＭＬインターフェイス文書ライブラリを使用することができる。又、本発明の別の態様においては、ＸＭＬ文書ライタ１１５を使用してＸＭＬインターフェイス文書を作成／生成し、生成されたＸＭＬインターフェイス文書をクライアントアプリケーション１２５が試験ユニット１００との間で送受信して試験ユニット１００を制御する。
【００２２】
　図１において、クライアントアプリケーション１２５は、生成されたＸＭＬインターフェイス文書をＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｃｏｌ）プロセス（ＨＴＴＰクライアント１３０）を介して、試験ユニット１００に送信する。ＨＴＴＰがトランスポートレイヤプロトコルとして使用されている理由は、その広範囲な普及と、単純なインターフェイスと、ＳＳＬ（Ｓｅｃｕｒｅ　Ｓｏｃｋｅｔ　Ｌａｙｅｒ）接続によって安全なデータ交換が提供されるセキュリティ上の利点とによる。別の実施例においては、安全なデータ交換をサポートするトランスポートレイヤプロトコルとしてＳ−ＨＴＴＰ（Ｓｅｃｕｒｅ−ＨＴＴＰ）プロセスを使用することもできる。
【００２３】
　図１においては、クライアントアプリケーション１２５は、更に、ＦＴＰ（Ｆｉｌｅ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｏｃｏｌ）プロセス（ＦＴＰクライアント１４０）を介して試験ユニット１００との間でデータセット（またはデータファイル）を送受信するために、ＦＴＰ　ＡＰＩ１３５と結合することができる。この図１における試験ユニット１００内のＨＴＴＰ／ＸＭＬサーバープロセス１４５及びＦＴＰサーバープロセス１５０は、ＨＴＴＰ／ＸＭＬクライアントプロセス１３０と１１５と１２０とのそれぞれとＦＴＰクライアントプロセス１４０とに対応しており、従来技術を使用してネットワーク通信を確立している。本発明は、例示の図１に示すクライアントコンピュータ１１０の例示の多層構成アプリケーションアーキテクチャに限定されるものではなく、その他のマーク付け言語ＡＰＩに対応する階層構造アプリケーションアーキテクチャを使用することができる。更に、例示の実施例においては、ＨＴＴＰ／ＸＭＬサーバープロセス１４５が試験ユニット１００内に提供されているが、本発明は、かかる構成に限定されるものではなく、このサーバープロセス１４５を試験ユニット１００と統合するか、又は試験ユニット１００と通信状態にある別途のコンピュータ上で実行することもできる（図７を参照されたい）。
【００２４】
　図２〜図５は、本発明の実施例によるネットワーク試験／監視装置を遠隔制御するアプリケーションプログラミングインターフェイス仕様のマーク付け言語ソースコードである。具体的には、図２〜図５は、試験ユニット１００であるネットワークアナライザを制御することにより、プログラマ（即ち、ネットワークオペレータ）によるネットワークアナライザ１００の制御を通じたネットワーク試験、計測、及び／又は、監視アプリケーションの作成を可能にする、（ソースコードのコメント／注釈を含む）例示ＸＭＬインターフェイス文書のソースコードである。この図２は、「ログイン（Login）」ＸＭＬインターフェイス２００と、「ログイン受付（Login Accept）」ＸＭＬインターフェイス２０５と、「ログアウト(Logout)」ＸＭＬインターフェイス２１０とのためのＸＭＬインターフェイス文書ソースコードである。図３は、「プロトコル統計計測（Ｐｒｏｔｏｃｏｌ　Ｓｔａｔｉｓｔｉｃ　Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００のためのＸＭＬインターフェイス文書ソースコードである。図４は、「プロトコル統計計測要求受付（Ｐｒｏｔｏｃｏｌ　Ｓｔａｔｉｓｔｉｃｓ　Ｍｅａｓｕｒｅｍｅｎｔ　Ｒｅｑｕｅｓｔ　Ａｃｃｅｐｔｅｄ）」ＸＭＬインターフェイス４００のためのＸＭＬインターフェイス文書ソースコードである。図５は、「プロトコル統計結果取得（Ｇｅｔ　Ｐｒｏｔｏｃｏｌ　Ｓｔａｔｉｓｔｉｃｓ　Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス５００と「プロトコル統計結果取得要求（Ｇｅｔ　Ｐｒｏｔｏｃｏｌ　Ｓｔａｔｉｓｔｉｃｓ　Ｒｅｓｕｌｔｓ　Ｒｅｓｐｏｎｓｅ）」ＸＭＬインターフェイス５０５とのためのＸＭＬインターフェイス文書ソースコードである。ネットワークアナライザ１００のユーザインターフェイスの機能及びフローを反映したその他のＸＭＬインターフェイス文書が、バージョンの問い合わせと、待機と、リブートと、フレームバッファの保存と、フレーム情報の読み出しとを実行することができる。
【００２５】
　図２〜図５では、通常、ＸＭＬに従って、試験ユニット１００のリモートコマンド及びコマンドパラメータよりも高度な抽象性を有するレコード及びフィールドの構造として、試験ユニット１００に結合するためのコマンド／応答及びコマンド／応答パラメータをそれぞれ編成することができる。有利なことに、コマンド／応答及びコマンド／応答パラメータは、レコード及びフィールドの構造よりも深くネストされた（nest：または、入れ子にされた）ノード／要素として編成することもできる。有利なことに、プログラマは、このＸＭＬに基づいたＡＰＩにより、人間が読解できる表現（値）によってコマンド及びコマンドパラメータを指定し、クライアントアプリケーション１２５を簡単に作成することができる。例えば、図３においては、プログラマは、オプションの「ＡＬＬ＿ＦＲＡＭＥＳ」と、「ＲＥＪＥＣＴ＿ＲＵＮＴ」と、「ＲＥＪＥＣＴ＿ＥＲＲＯＲＳ」と、「ＡＬＬ＿ＦＲＡＭＥＳ」と、「ＦＲＯＭ＿ＳＴＡＴＩＯＮ」と、「ＴＯ＿ＳＴＡＴＩＯＮ」と、「ＦＲＯＭ＿ＴＯ＿ＳＴＡＴＩＯＮ」とをそれぞれ入力することにより、「ＰｒｏｔｏｃｏｌＳｔａｔｓ」コマンドの「ＦｒａｍｅＦｉｌｔｅｒ」及び「ＣｏｕｎｔＦｒａｍｅｓ」パラメータを指定することができる。有利なことに、ＸＭＬ文書には、コマンド／応答機能と、コマンド／応答パラメータオプションと、その他のオプションとに関する注釈を格納することができる。更に、ＸＭＬに基づいたＡＰＩによれば、試験ユニット１００のベンダは、例えば、新機能をＡＰＩ文書に追加することにより、既存のクライアントアプリケーション１２５に対する影響を最小限に抑えつつ、ＡＰＩを簡単にバージョンアップ（または更新）することができる。
【００２６】
　図６は、本発明の実施例によるマーク付け言語文書を使用してネットワーク試験装置／監視装置を制御するステップを示すフローチャートである。具体的には、この図６では、ネットワークアナライザ１００によってネットワークトラフィックを試験／計測／監視するためのクライアントアプリケーション１２５とネットワークアナライザ１００との間における例示のＨＴＴＰセッションの確立とＸＭＬインターフェイス文書のフローとを示している。まず、ステップ６００では、クライアントアプリケーション１２５は、ＨＴＴＰクライアント１３０を介して「ログイン（Login）」ＸＭＬインターフェイス文書２００をネットワークアナライザ１００内のＨＴＴＰ／ＸＭＬサーバー１４５に送信する。この「ログイン（Login）」ＸＭＬインターフェイス２００は、ログインユーザ名とパスワードとを有することがある。この「ログイン（Login）」ＸＭＬインターフェイス２００などのＸＭＬインターフェイス文書は、ＸＭＬ文書ライタ１１５によって従来技法を使用して形成することができる。
【００２７】
　図６のステップ６０５では、ＨＴＴＰ／ＸＭＬサーバー１４５は、クライアントアプリケーション１２５に対して「ログイン受付（Ｌｏｇｉｎ　Ａｃｃｅｐｔ）」ＸＭＬインターフェイス２０５を用いて返信する。「ログイン受付（Ｌｏｇｉｎ　Ａｃｃｅｐｔ）」ＸＭＬインターフェイス２０５の「状態（status）」フィールドは、成功した場合の「承認（accepted）」と、失敗した場合の「拒否（rejected）」とのいずれかである。一般的に、ログインに成功した場合には、「ログイン受付（Ｌｏｇｉｎ−Ａｃｃｅｐｔ）」ＸＭＬインターフェイス２０５は、ＸＭＬインターフェイス文書の後続のＨＴＴＰ送信において使用するトークン（例えば、クッキー（Ｃｏｏｋｉｅ））を提供する。ＨＴＴＰ／ＸＭＬサーバー１４５との更なる通信には、通常、このクッキーを使用しなければならない。又、一般的にクッキーは、所定の時間の間に使用されないと失効し、クライアントアプリケーション１２５とＨＴＴＰ／ＸＭＬサーバー１４５との間において更なる「ログイン（Login）」ＸＭＬインターフェイス文書の交換が必要になる。ステップ６０５においてログインに成功した場合には、クライアントアプリケーション１２５がログアウトするか、又は、ＨＴＴＰ／ＸＭＬサーバー１４５がクッキーをタイムアウトしてクッキーを無効にすると、通常、ＨＴＴＰセッションが終了する。従って、ステップ６００及びステップ６０５は、ユーザ認証を実行している。このＸＭＬ　ＡＰＩは、ＨＴＴＰのクライアント／サーバーアーキテクチャで提供されているセキュリティ対策を使用することにより、試験セッションのセキュリティを提供することができる。
【００２８】
　図６のステップ６１０では、クライアントアプリケーション１２５は、「プロトコル統計計測（Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００を用いて、「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」コマンドをＨＴＴＰ／ＸＭＬサーバー１４５に送信する。ステップ６２０では、ＨＴＴＰ／ＸＭＬサーバー１４５は、この「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００を受信して解析し、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７に対する入力コマンドとしてそのＸＭＬデータを利用可能にする。「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００は、制御ノード「Ｍｅａｓｕｒｅ」を定義しており、この制御ノードは、高度な抽象性を有し、ネットワークアナライザ１００が認識可能なリモートインターフェイスコマンドに対応している。「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００は、「Ｍｅａｓｕｒｅ」制御ノードのパラメータノード「ＰｒｏｔｏｃｏｌＳｔａｔｓ」を更に定義しており、このパラメータノードは、高度な抽象性を有し、リモートインターフェイスコマンドのオプションパラメータに対応している。パラメータノード「ＰｒｏｔｏｃｏｌＳｔａｔｓ」には、属性と受け入れ可能な属性値が格納されている。属性名「ＵｐｄａｔｅＩｎｔｅｒｖａｌ」と「ＰｒｏｔｓＴｏＴｒａｃｋ」と「ＦｒａｍｅＦｉｌｔｅｒ」と「ＣｏｕｎｔＦｒａｍｅｓ」と「Ｏｐｅｒａｔｉｏｎ」とは、高度な抽象性を有し、リモートインターフェイスコマンドの対応するオプションパラメータの機能を記述する。これらの属性（パラメータ）の属性値は、高度な抽象性を有し、リモートインターフェイスコマンドの対応するオプションパラメータの利用可能な機能を記述する。
【００２９】
　図６のステップ６１５において、ＨＴＴＰ／ＸＭＬサーバー１４５は、「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００を受信して解析し、「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００に格納されているＸＭＬデータをＴｅｓｔ−Ｕｎｉｔアプリケーション１２７に対する入力コマンドとして利用可能にする。このステップ６１５では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「プロトコル統計計測要求受付（Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｍｅａｓｕｒｅｍｅｎｔ−Ｒｅｑｕｅｓｔ−Ａｃｃｅｐｔｅｄ）」ＸＭＬインターフェイス４００を用いて、「計測開始受付（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ−Ａｃｃｅｐｔ）」を返信する。ステップ６１５では、ＨＴＴＰ／ＸＭＬサーバー１４５が、「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００を受信すると、ＨＴＴＰ／ＸＭＬサーバー１４５は、ユーザのセキュリティレベル及び／又は「計測開始（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス３００に格納されている入力コマンドとパラメータの検証結果とに基づき、この要求を受け入れるか、又は拒否することができる。「計測開始受付（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ−Ａｃｃｅｐｔ）」ＸＭＬインターフェイス４００は、属性「状態（status）」と「説明（explanation）」と「Ｉｄ」とを格納する「ＭｅａｓｕｒｅＲｅｓｐｏｎｓｅ」ノードを定義しており、これらの属性によってクライアントアプリケーション１２５に返信情報が提供される。例えば、クライアントアプリケーション１２５は、「Ｉｄ」属性値を使用して計測結果を要求する。
【００３０】
　図６のステップ６２０では、クライアントアプリケーション１２５は、「プロトコル統計結果取得（Ｇｅｔ−Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス５００によって「結果取得（Ｇｅｔ−Ｒｅｓｕｌｔｓ）」コマンドをＨＴＴＰ／ＸＭＬサーバー１４５に送信する。ステップ６２５では、ＨＴＴＰ／ＸＭＬ１４５が、この「結果取得（Ｇｅｔ−Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス５００を受信して解析し、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７に対する入力コマンドとして受信したＸＭＬデータを利用可能にする。試験開始に対する返信の際にステップ６１５において、「計測開始受付（Ｒｕｎ−Ｍｅａｓｕｒｅｍｅｎｔ−Ａｃｃｅｐｔ）」ＸＭＬインターフェイス４００でＴｅｓｔ−Ｕｎｉｔアプリケーション１２７から返された「Ｉｄ」属性値を「ＰｔｏｔｏｃｏｌＳｔａｔｓ　Ｉｄ」属性に格納することができる。ステップ６２５では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「プロトコル統計結果要求（Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｒｅｓｕｌｔｓ−Ｒｅｓｐｏｎｓｅ）」ＸＭＬインターフェイス５０５を用いて、「計測結果蓄積（Ａｃｃｕｍｕｌａｔｅｄ−Ｍｅａｓｕｒｅｍｅｎｔ−Ｒｅｓｕｌｔｓ）」を返信する。具体的には、このステップ６２５では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「結果取得（Ｇｅｔ−Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス５００に応答し、要求された計測プロセスを実行して対応する計測結果を蓄積するが、これらの結果は「計測結果蓄積（Ａｃｃｕｍｕｌａｔｅｄ−Ｍｅａｓｕｒｅｍｅｎｔ−Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス５０５に格納される。この「計測結果蓄積（Ａｃｃｕｍｕｌａｔｅｄ−Ｍｅａｓｕｒｅｍｅｎｔ−Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス５０５は、例えば、ネットワークアナライザ１００によって検出されるデータリンクレイヤのそれぞれにＤＬＬＴｙｐｅノードを定義することができる。
【００３１】
　別の実施例においては、図６のステップ６２５では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、送信された「結果取得（Ｇｅｔ−Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス５００の指定に従って、例えば、ネットワークアナライザ１００内に存在するデータファイルに計測結果を蓄積することができる。クライアントアプリケーション１２５は、この蓄積された結果をネットワークアナライザ１００内のＦＴＰサーバー１５０によるＦＴＰ接続／セッションを通じて読み出すことができる。具体的には、クライアントアプリケーション１２５は、ＦＴＰ　ＡＰＩ１３５とＦＴＰクライアント１４０を介してＦＴＰサーバー１５０に対するＦＴＰ接続を確立する。Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「結果取得要求（Ｇｅｔ−Ｒｅｓｕｌｔｓ−Ｒｅｓｐｏｎｓｅ）」ＸＭＬインターフェイス５００を送信することにより、クライアントアプリケーション１２５に対して計測結果ファイルの可用性（availability）について通知することができる。有利なことに、クライアントアプリケーション１２５は、ＸＭＬインターフェイス文書によってネットワークアナライザ１００を管理することにより、試験を開始し、試験結果を蓄積し、返信のＸＭＬインターフェイス文書、及び／又は、データフレーム検索などの大規模なデータ検索の場合にはＦＴＰによって、試験結果を読み出すことができる。
【００３２】
　図６のステップ６００で開始された試験セッションでは、ステップ６３０及びステップ６３５は、ネットワークアナライザ１００を管理することによってネットワークトラフィックを試験／計測／監視するためのクライアントアプリケーション１２５とネットワークアナライザ１００との間でやり取りされるその他のＸＭＬインターフェイス文書でありうる。
【００３３】
　図６のステップ６４０では、クライアントアプリケーション１２５は、「ログアウト（logout）」ＸＭＬインターフェイス２１０をＨＴＴＰ／ＸＭＬサーバー１４５に送信することにより、試験セッションを終了させることができる。ステップ６５０では、ＨＴＴＰ／ＸＭＬサーバー１４５は、この「ログアウト（Logout）」ＸＭＬインターフェイス２１０を受信して解析し、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７に対する入力コマンドとしてそのＸＭＬデータを利用可能にする。このステップ６４５では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「ログアウト受付（Ｌｏｇｏｕｔ　Ａｃｃｅｐｔ）」ＸＭＬインターフェイス（図示せず）を送信することができる。ステップ６４５においてＨＴＴＰ／ＸＭＬサーバー１４５は、発行済みのクッキーを無効にして試験セッションを終了させる。
【００３４】
　図２〜図５に示されたＸＭＬインターフェイス文書に基づく図６のネットワーク試験／監視装置を制御する各ステップは例示を目的とするものであり、本発明は、かかる図２〜図５のＸＭＬインターフェイス文書のフロー及び／又はそれらのＸＭＬインターフェイス文書に限定されるものではない。即ち、ＸＭＬ規則に従って試験ユニット１００のリモートインターフェイスコマンドを定義及び／又は格納（またはカプセル化）するその他のＸＭＬタイプのインターフェイス文書を使用することもできる。ＸＭＬ規則に従い、試験ユニット１００のユーザインターフェイスの機能及びフローに対応するデータベース構造やネストされたノード／要素などに類似したもの（metaphor）に基づいて、試験ユニット１００のリモートインターフェイスコマンドを記述することができる。
【００３５】
　図７は、本発明の別の実施例による装置制御システムにおけるソフトウェアプロセスの詳細ブロックダイアグラムである。ＨＴＴＰ／ＸＭＬサーバー７００は、ＨＴＴＰ／ＸＭＬサーバー１４５に対応している。このＨＴＴＰ／ＸＭＬサーバー７００は、コンピュータシステムに実装されており、ネットワーク１０５ａ〜ｎ及び１５５ａ〜ｎを介してクライアントコンピュータシステム１００と試験ユニット１００ａ〜ｎとにそれぞれ接続されている。通常、それぞれの試験ユニット１００は、従来技法によって試験ネットワーク１５５と通信し、情報を送受信し、保存し、表示し、処理することができるコンピュータ又は任意の演算装置である。具体的には、それぞれの試験ユニット１００においては、通常、試験ネットワーク１５５上のデータ交換／ネットワークトラフィックの一般的な試験／監視、及び／又は、試験ネットワーク１５５上のデータ交換／ネットワークトラフィックに関連する計測機能を遂行するソフトウェアを実行する。
【００３６】
　図８は、図７に示す装置制御システムのネットワークアナライザを制御することにより試験セッションを確立する詳細なステップを示すフローチャートである。インターネットやイントラネットなどのＩＰネットワーク１０５ａ、１０５ｂ上のクライアント／サーバーネットワークアーキテクチャを使用する例として、クライアントコンピュータシステム１１０ａ〜ｎは、ＨＴＴＰ／ＸＭＬサーバー７００を介し、試験ユニット１００ａ〜ｎであるネットワークアナライザ１００ａ〜ｎと通信状態にある。具体的には、クライアントコンピュータシステム１１０ａ〜ｎは、ＩＰネットワーク１０５ａを介してＨＴＴＰ／ＸＭＬサーバー７００と通信状態にあり、ＨＴＴＰ／ＸＭＬサーバー７００は、ＩＰネットワーク１０５ｂを介して試験ユニット１００ａ〜ｎと通信状態にある。ステップ８００では、クライアントアプリケーション１２５は、ＵＲＬ（Ｕｎｉｖｅｒｓａｌ　Ｒｅｓｏｕｒｃｅ　Ｌｏｃａｔｏｒ）によって特定のＴｅｓｔ−Ｕｎｉｔアプリケーション１２７にリンクする。具体的には、クライアントアプリケーション１２５は、ネットワーク１０５ａを介してＨＴＴＰ／ＸＭＬサーバー７００内の静的及び動的なＵＲＬプロセス７０５に対してＵＲＬリンク要求メッセージを送信する。Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７に関しては、通常、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７が、試験ネットワーク１５５上のネットワークトラフィックに関する試験、計測、及び／又は、監視のソフトウェアプロセスを実装する試験機器アプリケーション７４５を備えている。更に、通常、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、試験ネットワーク１５５上のネットワークトラフィックに関する試験、計測、及び／又は、監視のハードウェアプロセスを実装する取得ハードウェア７５０を備えている。
【００３７】
　図８のステップ８０５では、静的及び動的なＵＲＬプロセス７０５と通信状態にあるＨＴＴＰ／ＸＭＬサーバー７００のＨＴＴＰサーバープロセス７１０は、受信したＵＲＬ要求に対するＨＴＴＰ接続を確立する。ステップ８１０では、クライアントアプリケーション１２５は、ＸＭＬ文書ライタ１１５及びＨＴＴＰクライアント１３０を用いて、「ログイン（Login）」ＸＭＬインターフェイス文書２００をＨＴＴＰ／ＸＭＬサーバー７００に送信する。「ログイン（Ｌｏｇｉｎ）」ＸＭＬインターフェイス２００には、ユーザ名及びパスワード、又はその他のユーザ認証情報を格納することができる。
【００３８】
　図８のステップ８１５では、ＨＴＴＰサーバー７１０は、この「ログイン（Ｌｏｇｉｎ）」ＸＭＬインターフェイス２００を受信し、サーブレットプロセス７１２に供給する。サーブレットプロセス７１２は、（例えば、ＣＯＲＢＡネームサービスなどの）試験ユニットサーブレット７１５及びＸＭＬパイプサーブレット７２０を有しており、これらによって、試験セッションに関連するＸＭＬ文書の作成と解析と検証と全般的なセキュリティ（ログイン）サービスとが提供される。ステップ８１５では、サーブレットプロセス７１２は、要求されたＴｅｓｔ−Ｕｎｉｔアプリケーション１２７（ステップ８００で要求されたもの）がＣＯＲＢＡネームサービスに登録されているかどうかを判定することにより、サーバー７００と試験装置１００との間にＸＭＬ通信パイプを確立できるかどうかをチェックする。ステップ８１５において、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７がＣＯＲＢＡネームサービスに登録されていなければ、ステップ８２０において、ＸＭＬパイプサーブレット７２０は、ネットワーク１０５ｂを介して試験ユニット１００のＣＯＲＢＡ　ＸＭＬパイププロセス７３０に対して「試験アプリケーションロード（Ｌｏａｄ−Ｔｅｓｔ−Ａｐｐｌｉｃａｔｉｏｎ）」要求を送信する。ステップ８３０では、ＸＭＬパイプサーブレット７２０に到来メッセージ（メッセージングクラス）用のコールバックを提供することによって要求されたＴｅｓｔ−Ｕｎｉｔアプリケーション１２７をＣＯＲＢＡ　ＸＭＬパイププロセス７３０が登録するまで、ＸＭＬパイプサーブレット７２０が待機する。
【００３９】
　図８では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７がＣＯＲＢＡネームサービスに登録された後に、ステップ８３５において、サーブレットプロセス７１２は、「ログイン受付（Ｌｏｇｉｎ−Ａｃｃｅｐｔ）」ＸＭＬインターフェイス文書２０５をクライアントアプリケーション１２５に返す。ステップ８４０では、クライアントアプリケーション１２５は、試験を開始するために、「プロトコル統計計測（Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス文書３００を送信する。ステップ８４５では、試験ユニットサーブレット７１５は、到来した計測要求３００のセッションキーを検証する。ステップ８５０では、ＸＭＬパイプサーブレット７１２は、到来した「プロトコル統計計測（Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス文書３００を、（例えば、試験機器アプリケーション７４５及び／又は取得ハードウェア７５０などの）Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７へとコールバックを介して渡す。
【００４０】
　図８のステップ８５５では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「プロトコル統計計測（Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｍｅａｓｕｒｅｍｅｎｔ）」ＸＭＬインターフェイス文書３００を（例えば、ＸＭＬ文書パーサ７４０を用いて）受信して解析し、計測タイプやパラメータなどのコマンド情報を読み出す。ステップ８６０では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「プロトコル統計計測要求受付（Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｍｅａｓｕｒｅｍｅｎｔ−Ｒｅｑｕｅｓｔ−Ａｃｃｅｐｔｅｄ）」ＸＭＬインターフェイス文書４００を（例えば、ＸＭＬ文書ライタ７３５を用いて）作成し、コールバックを介してクライアントアプリケーション１２５に作成したＸＭＬ文書４００を返す。ステップ８６０では、ＸＭＬインターフェイス文書４００は、ＸＭＬインターフェイス文書４００の「Ｉｄ」フィールドにバックチャネルＵＲＬパラメータを指定する。ステップ８６５では、クライアントアプリケーション１２５は、このバックチャネルＵＲＬへの接続をオープンし、「プロトコル統計結果取得要求（Ｇｅｔ−Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｒｅｓｕｌｔｓ）」ＸＭＬインターフェイス文書５００を送信することによって「取得（Ｇｅｔ）」を実行する。ステップ８７０では、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、この「取得（Ｇｅｔ）」を受信して計測を実行する。
【００４１】
　図８のステップ８７５では、計測結果が生成されると、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７は、「プロトコル統計結果取得要求（Ｇｅｔ−Ｐｒｏｔｏｃｏｌ−Ｓｔａｔｉｓｔｉｃｓ−Ｒｅｓｕｌｔｓ−Ｒｅｓｐｏｎｓｅ）」ＸＭＬインターフェイス文書５０５を形成し、結果を格納したこのＸＭＬ文書５００をメッセージングクラスによってクライアントアプリケーション１２５に送信する。ステップ８８０において、十分な結果が収集されている場合には、クライアントアプリケーション１２５は、「ログアウト（Logout）」ＸＭＬインターフェイス文書２１０などの停止用のＸＭＬインターフェイス文書を送信して試験セッションを終了させる。
【００４２】
　図８のステップ８６５〜８７５では、クライアントアプリケーション１２５は、試験ネットワーク１５５のフレームバッファを読み出すことができる。フレームバッファデータは、ＸＭＬ文書に格納／記述することができ、この結果、クライアントコンピュータ１１０側での判読率及び分析効率が向上する。具体的には、フレームバッファデータを記述するＸＭＬ文書は、（例えば、表示、出力、分析などの）処理のためにクライアントアプリケーション１２５に送信される。但し、フレームバッファデータはサイズが大きいため、クライアントアプリケーション１２５は、Ｔｅｓｔ−Ｕｎｉｔアプリケーション１２７を制御してよく知られた技法により、例えば、試験ユニット１００内のファイルにバッファデータを任意選択的に保存することができる。クライアントアプリケーション１２５は、伝送効率を向上させるために、ＸＭＬ文書を用いるかわりにＦＴＰセッションを介してこの保存されているフレームバッファデータを読み出すことができる。しかしながら、クライアントアプリケーション１２５は、ＨＴＴＰファイル転送セッションによってこの保存されているフレームバッファデータを読み出すこともできる。
【００４３】
　図７及び図８に示されているように、通常、本発明のコンポーネントは、サーブレット（servlet）とメッセージングクラスとアプリケーションローダとＸＭＬ文書ライブラリとである。サーブレットプロセス７１２などのサーブレットコンテナは、クライアント（試験）アプリケーション１２５を実行するクライアントコンピュータ１１０へのＨＴＴＰ接続を介してＸＭＬ文書をサービスする。通常、サーブレットは、ログインを処理し、セッションを管理し、計測の開始／停止などのコマンドを受け付け、試験ユニット１００のＴｅｓｔ−Ｕｎｉｔアプリケーション１２７から返されるデータ用の非同期バックチャネルを管理する。サーブレットとの通信は、通常、メッセージクラスによって行われる。アプリケーションローダは、特定のＴｅｓｔ−Ｕｎｉｔアプリケーション１２７にＵＲＬをバインドし、そのＵＲＬがクライアントアプリケーション１２５によって参照された際に、要求に応じて、それぞれの試験ユニット１００にＴｅｓｔ−Ｕｎｉｔアプリケーション１２７を任意選択的にロードすることができる。ＸＭＬ文書ライブラリは、ＸＭＬに基づいたＡＰＩソースコードを格納している。
【００４４】
　試験及び計測機器用のＡＰＩとしてＸＭＬを使用することにより、ウェブにおいて発行や配置や起動が可能な自己充足型（self-contained）で自己記述型(self-describing)のモジュラーアプリケーションが可能となる。ＸＭＬ　ＡＰＩに基づいた試験ソフトウェアアプリケーションは様々な機能を実行することが可能であり、それは単純な要求からステップを複雑に組織化したものにまで及ぶ。試験及び計測機器用のＡＰＩの基礎メカニズムとしてＸＭＬを使用することにより、「インターネットで試験及び計測機器を制御する単純なメカニズムがない」ことや、「広範な様々な試験ユニット顧客、試験ユニットを使用するそれら顧客の広範な様々な試験ソフトウェアアプリケーション、又は、広範な様々なＴｅｓｔ−Ｕｎｉｔアプリケーションを効率的にサポートすることができない（つまり、ＸＭＬによれば、試験及び計測機器とその他の既存システムを容易に統合することができる）」ことや、「ＸＭＬ　ＡＰＩなどのマーク付け言語ＡＰＩ以外のＡＰＩにアクセスする試験アプリケーションソフトウェアの作成が困難である」などの諸問題が解決される。
【００４５】
　本発明のその他の利点は、ＸＭＬが広範に使用されている十分な実績を有する言語であって、データを記述するのに理想的に適合しているということである。具体的には、ＸＭＬは、異なるコンピュータシステム（この場合には、試験及び計測機器）を統合するための手段として機能することができる。ＸＭＬ　ＡＰＩ文書は、テキストエディタによって簡単に変更可能であり、その優れたユーザ判読率のために、ＸＭＬに基づいたＡＰＩの場合には、ＡＰＩのバージョンアップが簡単である。例えば、通常、このバージョンアップは、新しい試験ユニット機能を追加する際にＸＭＬ　ＡＰＩ言語を拡張することによって実行される。この場合には、古いＡＰＩコマンドも依然としてそのまま解釈可能であり機能することができる。ＸＭＬによってこれを実現する１つの方法は、古いバージョンの構造を無効にすることなく、リモートインターフェイスコマンドを記述する構造を拡張することである。例えば、「ログイン（Ｌｏｇｉｎ）」ＸＭＬインターフェイス文書のＸＭＬ要素の構造は次のとおりである。
【００４６】
　＜ｐｅｏｐｌｅ＞
　　＜ｅｍｐｌｏｙｅｅ＞
　　　＜ｎａｍｅ＞Ｍｅｒｌｉｎ　Ｒｈｏｄａ＜／ｎａｍｅ＞
　　＜／ｅｍｐｌｏｙｅｅ＞
　＜／ｐｅｏｐｌｅ＞
【００４７】
　この構造は、新しいフィールド「ｔｉｔｌｅ」を含むように、次のようにバージョンアップすることができる。
【００４８】
　　＜ｐｅｏｐｌｅ＞
　　＜ｅｍｐｌｏｙｅｅ＞
　　　＜ｎａｍｅ＞Ｍｅｒｌｉｎ　Ｒｈｏｄａ＜／ｎａｍｅ＞
　　　＜ｔｉｔｌｅ＞Ｓｏｆｔｗａｒｅ　Ｅｎｇｉｎｅｅｒ＜／ｔｉｔｌｅ＞
　　＜／ｅｍｐｌｏｙｅｅ＞
　＜／ｐｅｏｐｌｅ＞
【００４９】
　このＸＭＬ文書を解析する（例えば、ＸＭＬ文書パーサ７４０などの）Ｔｅｓｔ−Ｕｎｉｔアプリケーションソフトウェアは、これらのいずれのバージョンも受け付けることができ、役職名が指定されていない場合には、ソフトウェアは、特別な処置を講じるか、又は特別な処置を講じないかを選択することができる。一方、このようなＸＭＬ　ＡＰＩとは対照的に、バイト駆動型ソケットインターフェイスの場合には、この同一の問題を解決するのに、（コマンドをバージョンアップするためのソフトウェアの作業量が倍になる）Ｔｅｓｔ−Ｕｎｉｔアプリケーションソフトウェア用の別のコマンドハンドラを定義する必要がある。この結果、コマンドハンドラの実行回数が増加して、Ｔｅｓｔ−Ｕｎｉｔアプリケーションソフトウェアが、例えば、「ログイン（Ｌｏｇｉｎ）」ＸＭＬインターフェイス文書の場合には、バグやセキュリティホールに対する処置が施されないままに放置されることにもなる。
【００５０】
　更に、ＸＭＬに基づいたＡＰＩの場合には、交換したＸＭＬ文書を読めば、問題がクライアントアプリケーション１２５にあるのか、又はＴｅｓｔ−Ｕｎｉｔアプリケーション１２７に対して発行されたＡＰＩコマンドに存在するのかを簡単に判定することができるため、デバッグが容易である。
【００５１】
　更に、試験ユニットが既にＸＭＬ以外の任意の種類の（例えば、バイト駆動型ソケットインターフェイス用の既存のコマンドハンドラなどの）ネイティブＡＰＩを有している場合には、Ｔｅｓｔ−Ｕｎｉｔソフトウェアを変更することなく、変換プログラムを用いてＸＭＬコマンドをネイティブＡＰＩコマンドへと変換することができる。
【００５２】
　例示の実施例では、試験ユニットを制御するためのＸＭＬ　ＡＰＩについて説明してきたが、本発明は、かかる構成に限定されるものではない。本発明は、（タグに基づいたスクリプト言語や自己文書化言語などの）マーク付け言語に基づいて演算装置のユーザインターフェイス機能に対応する（または反映する）インターフェイス／機能プロトコルを定義し、このマーク付け言語に準拠するインターフェイス／機能プロトコル文書を交換してネットワークを介して遠隔地から演算装置とやり取り（または、通信の制御／確立）することにより、達成されるものである。従って、このマーク付け言語に基づいたインターフェイス／機能プロトコルは、演算装置を遠隔制御するソフトウェアアプリケーションを開発するためのＡＰＩとして使用することができる。
【００５３】
　本発明によれば、リモート試験ソフトウェアは、ＸＭＬ文書要求を形成することにより、試験装置を制御することができる。通常、ＸＭＬ文書を試験装置と交換するためのトランスポートレイヤプロトコルとしては、ＨＴＴＰが使用される。ＨＴＴＰは、ワールドワイドウェブを含むインターネットにおいて広く普及しており、単純なインターフェイスと、ＳＳＬ（Ｓｅｃｕｒｅ　Ｓｏｃｋｅｔ　Ｌａｙｅｒ）によるセキュリティ上の利点を有している。従って、通常、ＸＭＬ文書は、試験装置と通信状態にあるサーバーへのＨＴＴＰ接続によって送信される。そして、このサーバーは、１組の応答ＸＭＬ文書によってデータをリモート試験ソフトウェアに返す。試験セッションのセキュリティのために、ＳＳＬ（Ｓｅｃｕｒｅ　Ｓｏｃｋｅｔ　Ｌａｙｅｒ）によるパケットの暗号化などのＨＴＴＰに提供されている拡張機能を有効にすることもできる。更に、少なくとも１回のＸＭＬ文書交換は、ユーザ認証用のものでありうる。試験装置に事前に設定されているユーザ名とパスワードを供給するよう、（リモート試験ソフトウェアを用いて）実行するユーザに対して試験を要求することができる。又、ファイル転送は、ＨＴＴＰ及び／又はＦＴＰによって実行可能であり、リモート試験ソフトウェアは、ＸＭＬを介することなく、サイズの大きなデータセットを読み出すことができ、設定ファイルをサーバー上に配置することができる。
【００５４】
　本発明のいくつかの実施例を例示して説明してきたが、当業者であれば、本発明の原理及び精神を逸脱することなく、これら例示の実施例を変更することができることを理解するであろう。従って、本発明の範囲は、請求項及びその均等物により定義される。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施例によるネットワーク試験／監視装置制御システムの機能ブロックダイアグラムである。
【図２】本発明の実施例によるネットワーク試験／監視装置を遠隔制御するためのアプリケーションプログラミングインターフェイス仕様のマーク付け言語ソースコードである。
【図３】本発明の実施例によるネットワーク試験／監視装置を遠隔制御するための別のアプリケーションプログラミングインターフェイス仕様のマーク付け言語ソースコードである。
【図４】本発明の実施例によるネットワーク試験／監視装置を遠隔制御するための別のアプリケーションプログラミングインターフェイス仕様のマーク付け言語ソースコードである。
【図５】本発明の実施例によるネットワーク試験／監視装置を遠隔制御するための別のアプリケーションプログラミングインターフェイス仕様のマーク付け言語ソースコードである。
【図６】本発明の実施例によるマーク付け言語文書を使用してネットワーク試験／監視装置を制御するステップを示すフローチャートである。
【図７】本発明の別の実施例による装置制御システムにおけるソフトウェアプロセスの詳細ブロックダイアグラムである。
【図８】図７に示す装置制御システムにおいて、ネットワークアナライザを制御することによって試験セッションを確立する詳細なステップを示すフローチャートである。
【符号の説明】
【００５６】
１００　試験装置
１０５　ネットワーク
１１０　クライアントコンピュータ
１２５　インターフェイス
１３０、１４０、７０５、７１０、７１２　ＦＴＰ／ＨＴＴＰプロトコル
２００、２０５、２１０、３００、４００、５００、５０５　アプリケーションプログラミングインターフェイス、コマンド及びパラメータ、ＸＭＬ文書要素
【図１】
2004086904.tif 000003
【図２】
2004086904.tif 000004
【図３】
2004086904.tif 000005
【図４】
2004086904.tif 000006
【図５】
2004086904.tif 000007
【図６】
2004086904.tif 000008
【図７】
2004086904.tif 000009
【図８】
2004086904.tif 000010