(57)【特許請求の範囲】
【請求項１】
通信システムエミュレータ（７２）をデータネットワークに接続するためのプロトコルインターフェースゲートウェイ（８４）であって、
データネットワークプロトコルでフォーマット化されたデータ信号を前記データネットワークから受信し、これらデータ信号を前記データネットワークに送るための手段と、
前記データ信号を通信ネットワークプロトコルでフォーマット化された通信信号に変換し、前記通信信号を前記データ信号に変換するための手段と、
前記通信信号をエミュレータ符号の命令に変換し、エミュレータ符号の処理された命令を前記通信ネットワークプロトコルの通信信号に変換する手段と、
エミュレータ符号の前記命令を前記通信システムエミュレータ（７２）に送り、エミュレータ符号の前記処理された命令を前記エミュレータから受信するための手段とを備えた、プロトコルインターフェースゲートウェイ（８４）。
【請求項２】
データネットワークプロトコルでフォーマット化された、前記データネットワークからの信号を受信するための前記手段が、前記データネットワークプロトコルの開放型システム間相互接続（ＯＳＩ）層１および２の代わりとなるＵＮＩＸソケットを含む、請求項１記載のプロトコルインターフェースゲートウェイ（８４）。
【請求項３】
ネットワークプロトコルでフォーマット化された前記データネットワークからのデータ信号を受信するための前記手段が、信号システム７（ＳＳ７）とコンパーチブルなプロトコルでフォーマット化されたデータ信号を受信するための手段を含む、請求項２記載のプロトコルインターフェースゲートウェイ（８４）。
【請求項４】
前記エミュレータがエミュレータ符号の前記命令を処理し、次に前記目標通信ノードで使用されるアプリケーションソフトウェアのブロックで符号を実行することにより、目標通信ノードをエミュレートするための手段を含む、請求項３記載のプロトコルインターフェースゲートウェイ（８４）。
【請求項５】
前記データネットワークがローカルエリアネットワーク（ＬＡＮ）である、請求項４記載のプロトコルインターフェースゲートウェイ（８４）。
【請求項６】
前記ローカルエリアネットワークがイーサネットＬＡＮ（７９）である、請求項５記載のプロトコルインターフェースゲートウェイ（８４）。
【請求項７】
前記ネットワークがワイドエリアネットワーク（ＷＡＮ）である、請求項４記載のプロトコルインターフェースゲートウェイ（８４）。
【請求項８】
目標通信ノードをエミュレートする通信システムエミュレータ（７２）をデータネットワークに接続する方法であって、
プロトコルインターフェースゲートウェイ（８４）により前記データネットワークからデータネットワークプロトコルでフォーマット化されたデータ信号を受信する工程と、
前記プロトコルインターフェースゲートウェイ（８４）において、前記受信されたデータ信号を通信ネットワークプロトコルでフォーマット化された通信信号に変換する工程と、
前記プロトコルインターフェースゲートウェイ（８４）で前記通信信号をエミュレータ符号の命令に変換する工程と、
エミュレータ符号の前記命令を前記プロトコルインターフェースゲートウェイ（８４）から処理のために前記エミュレータへ送る工程と、
前記目標通信符号で利用されるアプリケーションソフトウェアのブロック内の符号を前記エミュレータで実行する工程と、
前記プロトコルインターフェースゲートウェイ（８４）により前記エミュレータからエミュレータ符号の前記処理された命令を受信する工程と、
前記プロトコルインターフェースゲートウェイ（８４）において、エミュレータ符号の処理された命令を前記通信ネットワークプロトコルの通信信号に変換する工程と、
前記プロトコルインターフェースゲートウェイ（８４）において、前記通信信号を前記データネットワークプロトコルでフォーマット化されたデータ信号に変換する工程と、
前記データネットワークプロトコルの前記データ信号を前記プロトコルインターフェースゲートウェイ（８４）から前記データネットワークに送る工程とを備えた、通信システムエミュレータをデータネットワークに接続する方法。
【請求項９】
ネットワークプロトコルでフォーマット化された前記データネットワークからのデータ信号を受信する前記工程が、前記データネットワークプロトコルの開放型システム間相互接続（ＯＳＩ）層１および２をＵＮＩＸソケットに置換する工程を含む、請求項８記載の方法。
【請求項１０】
データネットワークプロトコルでフォーマット化された前記データネットワークからのデータ信号を受信する前記工程が、信号システム７（ＳＳ７）とコンパーチブルなプロトコルでフォーマット化された信号を受信することを含む、請求項９記載の方法。
【請求項１１】
前記プロトコルインターフェースゲートウェイ（８４）による前記データネットワークからのデータ信号を受信する前記工程が、ローカルエリアネットワーク（ＬＡＮ）からの前記データ信号を受信することを含む、請求項１０記載の方法。
【請求項１２】
ローカルエリアネットワークからの前記データ信号を受信する前記工程が、イーサネットＬＡＮ（７９）から前記データ信号を受信することを含む、請求項１１記載の方法。
【請求項１３】
前記プロトコルインターフェースゲートウェイ（８４）により前記ネットワークからの信号を受信する前記工程が、ワイドエリアネットワーク（ＷＡＮ）からの前記信号を受信することを含む、請求項１０記載の方法。
【発明の詳細な説明】
発明の背景
発明の技術分野
本発明は、開発テストシステムに関し、より詳細には、通信システムエミュレータをネットワークに接続するデバイスおよび方法に関する。
関連技術の説明
通信業界では開放型システム間相互接続（ＯＳＩ）モデルに基づくプロトコルを利用して標準通信ネットワークを互いにリンクしている。ＯＳＩモデルとは異なるベンダーによって製造された異なるシステム間で通信をするための企画の国際的に受け入れられたフレームワークである。このＯＳＩモデルは任意のネットワークに接続された任意のベンダーのコンピュータシステムが、そのネットワークまたはリンクされたネットワーク上で他の任意のコンピュータシステムと自由にデータを共有する開放型システム間ネットワーク環境を創り出すものである。
ＯＳＩモデルはユーザーに対する関係に基づき、層状シーケンスで相互に関連したプロトコルの７つの異なる層に通信プロセスを構成している。図１は、ＯＳＩモデルの７つの層を示すＯＳＩスタック１０のブロック図である。層１〜３はネットワークアクセスを取り扱い、層４〜７はメッセージソースとメッセージ着信先との間のエンド間の通信を取り扱うようになっている。各層は上部論理境界と下方の論理境界との間に含まれる少なくとも１つの機能を含む。各層のサービスは高いほうの層が利用できる新しいサービスを創り出すように下方の層のサービスと組み合わされている。これら層は次のとおりである。
層１とは、信号を送信し、物理接続を起動したり、除勢したりする物理層である。
層２とは、信号同期、誤り訂正、シーケンス制御およびフロー制御を含むデータリンク層である。この層も１つまたは数個の物理接続を横断するデータ送信リンクを提供する。
層３とはルーチングおよび交換機能を提供するネットワーク層である。
層４とは、高い層の機能のための特性を必要としたエンド間サービスを提供するために、層１〜３を利用するトランスポート層である。
層５とは、セッション接続を設定し、かつ特定の通信サービスのためのデータの定期的交換および関連する制御機能をサポートするための手段を提供するセッション層である。
層６とは、データのフォーマット化および符号変換のための手段を提供するプレゼンテーション層である。
層７とは、エンドユーザーが求める実際のサービスをプロトコルが提供するアプリケーション層である。
通信システムおよび新サービスアプリケーションの開発およびテスト中は、一組の相互に関連するソフトウェアプログラムを開発するのが一般的であり、これらソフトウェアプログラムは組み合わされてシステムのハードウェアをモデル化、すなわちシミュレートする。新しいサービスアプリケーションを加える効果は、すなわちシステムの提案されたハードウェアまたはソフトウェアの変更の効果は、システムのハードウェアを実際に変えたり、または実際のシステムに新しいサービスアプリケーションをロードするコストと時間のかかるプロセスを経ることなく、短時間にモデル化し、解析することが可能となることである。しかしながら、問題が生じ、検査すべき機能が２つ以上の通信システムの間の通信を必要とする場合には、検査のコストがかなり増すことになる。
標準的な通信システムをリンクするのに使用される現在の通信リンクは、ＯＳＩ層３〜７を実行し、アセンブルする計算ソフトウェアと、ＯＳＩ層１〜２を実行する送信用ハードウェアとを一般に含む。テスト用には２つの通信システム間のリンクまたは通信システムとシステムシミュレータとの間のリンクが必要である場合、これらシステムは通常、フィールド内に設置された通信システムを物理的に接続するのに使用される同じ送信ハードウェアによって互いに直接接続される。次に、リンクをモニタし、プロトコルの解析またはその他の評価テストを行うために、システムおよびシステム間の物理リンクにテスト機器およびテストツールが接続される。
しかしながら、これら現在のテスト方法には数種の欠点がある。第１に、通信システムの開発テストに利用されるテスト機器およびテストツールは極めて高価であり、第２に、これら現在のテスト方法はテスト中のシステム間で物理送信ハードウェアを利用しなければならなく、これによりテスト方法の設定時間が長くなり、コストが増す。第３に、これら方法は多数の異なる開発グループによって多く要求され得る有益な通信システムへのかなり長いアクセス時間を必要とする。
最後に、物理通信システムおよび物理送信ハードウェアの使用により、試験者はテスト中のシステムに極めて近い物理的位置に拘束される。
上記欠点に対する解決案を教示する従来技術は知られていないが、チャン外（以下チャン）に対する米国特許第５，０２７，３４３号は、本明細書に述べる事項にある程度関連した要旨を検討している。上記チャンの米国特許は統合サービスデジタルネットワーク（ＩＳＤＮ）システムにおける製品の遠隔テストを行うためのテストアクセスシステムを開示している。テストされるプロトコルは、物理通信パスの設定、ホールドおよびレリースに主に関連するＯＳＩ層１〜３に関するものである。上記米国特許は層１〜３を含むネットワークメッセージをパケット化、すなわちカプセル化し、試験者からテスト中のシステムへテスト方法を通信するのにパケット交換ネットワークを利用している。テスト中のシステムはパケットを逆カプセル化し、ネットワークメッセージを除き、これらメッセージを処理のために送るようになっている。
上記チャンの米国特許はフィールド内の通信システム間の送信に使用されるテスト用の同じ物理送信ハードウェアを利用するという欠点の一部を克服している。しかしながらこの米国特許は、特に実際の物理ハードウェアの遠隔テストをサポートするようになっている。テスト機器を含むローカルサイトはテスト中のシステムに遠隔地よりリンクされる。しかしながらこの米国特許は信号の物理的送信、ルーチングおよび交換に関係するＯＳＩ層１〜３にしか関係していないと、発明者のチャンは特に述べている。従って、この米国特許はハードウェアのタイミング条件に極めて影響され易い、ハードウェアに依存した解決案となっており、ＯＳＩ層３〜７のテストのために物理送信ハードウェアを用いることなく、多数の通信システムまたはシステムエミュレータを接続する方法を、教示も示唆もしていない。
１９９４年３月３日公開されたアメリカ電話通信会社の、欧州特許出願第０５８９５７６号は、信号エミュレータを使用する通信ネットワークテスト環境について述べている。しかしながら、この特許出願は電話ネットワークエミュレータとデータネットワークとの統合については述べていない。
通信ネットワーク用のシミュレーションソフトウェア：アヴェリール・Ｍ・ローおよびミカエル・マッコマス両氏による技術状態は、利用可能なデータシステムシミュレータの概要を述べている。しかしながら、この論文はデータネットワークによる電話ネットワークシミュレーションについて述べていないし、このようなネットワークシミュレーションを可能にするものでもない。
フィールドにおいて、設置された通信システムを物理的に接続するために利用される同じ送信ハードウェアを利用する必要のない通信ノードでＯＳＩ層３〜７を実現するソフトウェアの開発テストのために、多数の通信システム及び／または通信システムとシステムエミュレータをプロトコルシミュレータにリンクするシステムおよび方法を提供することは、極めて有利である。かかるシステムおよび方法は、通信リンクをモニタし、プロトコルの解析またはその他の評価テストを実行するために高価なテスト機器およびテストツールを不要にするものである。
発明の概要
１つの特徴によれば、本発明は、エミュレータをネットワークに接続するためのプロトコルインターフェースゲートウェイである。このゲートウェイはネットワークから信号を受信し、ネットワークのプロトコルでフォーマット化された信号をネットワークに送る手段を含む。このネットワークは受信した信号をエミュレータの符号で命令に変換し、かつ処理した命令をエミュレータ符号でネットワークプロトコルの信号に変換する手段も含む。更にゲートウェイはエミュレータの符号でエミュレータに命令を送り、かつエミュレータからのエミュレータ符号の処理された命令を受信するための手段も含む。このプロトコルインターフェースゲートウェイはネットワークとの間で信号を送受信するために、ネットワークプロトコルの開放型システム間相互接続（ＯＳＩ）層１および２の代わりとなるＵＮＩＸソケットも使用できる。
別の特徴によれば、本発明は、エミュレータをネットワークに接続する方法に関する。この方法は、プロトコルインターフェースゲートウェイによりネットワークからのネットワークプロトコルでフォーマット化された信号を受信する工程と、プロトコルインターフェースゲートウェイ内で受信された信号をエミュレータ符号の命令に変換する工程と、エミュレータ符号の命令を処理するためにプロトコルインターフェースゲートウェイからエミュレータへ送る工程とを含む。この方法は、前記プロトコルインターフェースゲートウェイによりエミュレータからのエミュレータ符号の処理された符号を受信する工程と、プロトコルインターフェースゲートウェイ内でエミュレータ符号の処理された命令をネットワークプロトコルの信号に変換する工程と、プロトコルインターフェースゲートウェイからネットワークにネットワークプロトコルの信号を送る工程も含む。この方法はネットワークプロトコルの開放型システム間相互接続（ＯＳＩ）層１および２をＵＮＩＸソケットに置換する工程も含むことができる。
【図面の簡単な説明】
明細書と共に次の図面を参照すれば、当業者には本発明およびそれらの多数の課題および利点がより明らかとなろう。
図１（従来技術）は、ＯＳＩモデルの７つの層を示すＯＳＩスタックのブロック図である。
図２は、本発明の要旨に従って層３レベルで接続された２つのＯＳＩスタック間でインターネットソケットを利用する通信リンクの略ブロック図である。
図２Ａは、本発明で利用される種々のプロトコルの間の関係を示す略ブロック図である。
図３は、ＯＳＩモデルからのプロトコルを利用する２つの通信システムエミュレータの間でインターネットソケットを利用する通信リンクの略ブロック図である。
図４は、発信シミュレーションと着信シミュレーションとをリンクするためにインターネットソケットおよびＬＡＮ接続を利用するようにプロトコルシミュレーションツールを改造した本発明の実施例を示す略ブロック図である。
図５は、図３のプロトコルスタックおよび通信リンクをより詳細に示すブロック図である。
図６は、インターネットソケットを介し、プロトコルシミュレーションテストデバイスが通信交換エミュレータとインターフェースする本発明の実施例のブロック図である。
図７は、本発明の要旨に従い、目標通信交換機および交換機エミュレータの双方がプロトコルシミュレータに接続された自動化された診断システムの略ブロック図である。
図８は、図７のエミュレータおよびＰＩＧツールのより詳細なブロック図である。
図９は、プロトコルシミュレータによる複数の回線インターフェースカード（ＬＩＣ）のシミュレーションおよびインターネットソケットおよびＬＡＮを介したエミュレータおよび複数のシミュレートされた信号ポイントへのそれらの接続を示す略ブロック図である。
図１０は、本発明の開発テストシステムによるテストを開始するためにオペレータによって利用できる、コンピュータによってディスプレイされるアイコンツールボックスの図である。
図１１は、テスト用のリアルハードウェアシステムまたはエミュレートされたシステムをオペレータが選択できるようにする、コンピュータによってディスプレイされたシェルフ選択メニューの図である。
図１２は、開発テストシステムに対するテスト環境を定めるために利用される、コンピュータによってディスプレイされるネットワークマップエディターの図である。
図１３は、パーソナル通信システム（ＰＣＳ）モービル通信システムにおける基地局コントローラ（ＢＳＣ）で実行される簡単なロケーション更新シーケンスのプロトコルシミュレータにおけるシミュレーションを示す、コンピュータによってディスプレイされるネットワークマップの図である。
図１４は、ＰＩＧツールがアクセスできるエミュレートされたシステム（バーチャルシェルフ）のコンピュータによってディスプレイされるメニューの図である。
図１５は、プロトコルシミュレータ、ＰＩＧツールおよびエミュレータに対応する３つのステータスウィンドを示すコンピュータディスプレイの図である。
図１６は、図１５のＰＩＧツールステータスウィンドのメッセージモニタセクションのより詳細なリストである。
実施例の詳細な説明
通信システムの間で送信される新しい機能およびサービスを開発する間、ＯＳＩ層１および２（物理ハードウェアおよびネットワークへのリンク）は、頻繁に影響を受けることはない。これと対照的に、層３〜７はほとんど常時、ある態様で変更される。換言すれば、新しい機能およびサービスの開発は情報を送信する手段をいつも変えるわけではないが、送信される情報はほとんど常に変化する。従って、物理層は通常影響を受けないので、ＯＳＩ層３〜７にしか関係しないテストはネットワークモデル間で接続される高価で特殊な送信テスト機器を必要としない。むしろ開発者はほとんどの通信システムが、あるタイプのローカルエリアネットワーク（ＬＡＮ）プロトコルをサポートするという事実を活用できる。
図２は、層３レベルに接続された２つのＯＳＩスタック２２と２３との間でインターネットソケット２１を利用する通信リンク２０の略ブロック図である。本発明の要旨に従えば、現在のレベル１および２の通信プロトコル、物理レベルおよびデータリンクレベルは、例えばイーサネットのような（ＬＡＮ）プロトコルと置換される。通信プロトコルは送信制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）によってカプセル化され、次にインターネットソケットインターフェース２１を利用して（ＬＡＮ）ネットワークを介し、送信される。インターネットソケットインターフェース２１は異なるホストプロセッサ上で作動するアプリケーション間でネットワーク通信を行う、あるタイプのＵＮＩＸファイルでよい。ソケットインターフェースはアプリケーションプログラムが互いに通信することを可能にする。一般にアプリケーションプログラムはＴＣＰクライアントソケットを創出し、ＴＣＰサーバーソケットに接続し、次にそのインターフェースを通してデータを送受信する。
インターネットソケットインターフェース２１は通信のエンドポイントを提供するＵＮＩＸファイルアクセスメカニズムの一般化と見なしてもよい。アプリケーションプログラムはソケットが必要とされる際にこれをオペレーティングシステムが創り出すことを要求する。ソケットは特定の着信先アドレスに拘束されることなく創出される。次に、アプリケーションはソケットを使用する度に（例えばプログラムを送る際に）着信先アドレスを供給してもよいし、着信先アドレスをソケットにバインドするように選択し、（例えばＴＣＰ接続をする際に）着信先の繰り返し指定を回避することができる。サーバーソケットにはクライアントソケットが接続し、アプリケーションプログラム間の通信を可能にする。
標準インターネットプロトコルは、ユーザーデータグラムプログラム（ＵＤＰ）である。このＵＤＰプロトコルはリモートプロセッサ上の多数の着信先（アプリケーションプログラム）を送り手が区別できるようにする、プロトコルポート番号を含む。データを信頼できる状態で転送するために、ＴＣＰ／ＩＰソケットを利用しながら、アプリケーションプログラム間の通信を設定し、維持し、除くために、ＵＤＰ／ＩＰソケットが利用される。
図２Ａは、本発明で利用される種々のプロトコルの間の関係を示す略ブロック図である。ユーザープロセス２４および２５は、ＯＳＩ層５〜７を含み、ＴＣＰプロトコル２６（ＯＳＩ層４）を使ってレーザープロセス２４と２５の間でデータが転送される。ユーザープロセスの間の他の通信は、ＵＤＰプロトコル２７（ＯＳＩ層４）を利用し、データおよび通信の双方はユーザープロセス間の接続を完了するためにＩＰプロトコル２８（ＯＳＩ層３）およびイーサネット２９（ＯＳＩ層１〜２）を利用する。
インターネットソケットは従来の動作、例えば読み出しおよび書き込みによって利用できる。例えば、一旦アプリケーションプログラムソケットを創り出し、このソケットから着信先アドレスまでのＴＣＰ接続を創り出すと、アプリケーションプログラムはこの接続を通してデータのストリームを送るのに書き込み動作を利用できる。他方のエンド側の受信アプリケーションプログラムはデータを受信するのに読み出し動作を利用できる。
図３は、ＯＳＩモデルからのプロトコルを利用する２つの通信システムエミュレータ３２と３３との間でインターネットソケット３１を利用する通信リンク３０の略ブロック図である。本明細書で使用するように、「エミュレータ」なる用語は、処理ノードのハードウェアをエミュレートし、アプリケーションソフトウェアが目標マシン上で作動するかのごとく、アプリケーションソフトウェアを解釈するソケットプログラムを意味する。「シミュレータ」なる用語は、予想されるメッセージへの応答をするように予めプログラムされたプロセッサを意味する。好ましい実施例では、プロトコルシミュレータおよび通信システムエミュレータはＵＮＩＸに基づくプロセッサ上で作動する。従って、これらシステムはインターネットソケットおよびＬＡＮに基づくネットワーク、例えばイーサネットを利用して互いに通信する。プロトコルに基づく情報は通信システムによってサポートされたＬＡＮプロトコルを利用して、送信システムから受信システムへ送信される。プロトコルシミュレータと通信システムエミュレートとの間の通信はＬＡＮに基づくネットワーク上でＴＣＰ／ＩＰフォーマットでＯＳＩ層３〜７からパッケージデータを送信するようインターネットソケットを利用する。受信エミュレータはソケットを利用するプロトコルインターフェースゲートウェイを介し、プロトコルシミュレータからの情報を受信し、層３〜７をアンパックし、情報を処理する。プロトコルシミュレータと通信システムエミュレータとの間の通信リンクはインターネットソケットに連動する全く異なるプロトコルスタックによって制御されるので、テスト中の通信プロトコル（例えばメッセージ転送部分（ＭＴＰ）内の固定されたＯＳＩ層２も利用できる。
通信ノード間が通信リンクされている時は、ＯＳＩ層３〜７は任意のＡＮＳＩ信号システム７（ＳＳ７）、ＣＣＩＴＴまたはその他のコンパーチブルなプロトコルスタックに対応することができる。図３は、トランザクション機能アプリケーション部分（ＴＣＡＰ）プロトコルスタック３３からスタック３２へのトランスポートまたはこの逆のトランスポートを示す。モービルアプリケーション部分（ＭＡＰ）プロトコルスタック３３ａおよび統合サービスユーザー部分（ＩＳＵＰ）プロトコルスタック３３ｂも示されている。ＴＣＡＰ３４およびＭＡＰ３５はレベル７のアプリケーションであるが、ＩＳＵＰ３６はレベル４〜７のアプリケーションである。ＳＳ７スタックはＭＴＰ層１および２を置換するのにイーサネットを使ってＬＡＮを通し、インターネットソケット３１を介してトランスポートできる。物理目標通信ノードまたは通信システムエミュレータはＬＡＮ上のＴＣＡＰ／ＩＰリンク上の情報を取り込み、層３〜７の情報を復号する。一部の通信ノードは通常のＭＴＰ層１および２を置換するのに、ＴＣＡＰ／ＩＰを通し、ＬＡＮ接続との通信をするために変更を必要とすることがある。かかる変更は当業者には周知のものであるので、本明細書ではこれ以上詳細に説明しないことにする。
通信信号を出力するユニックスプロセッサとＬＡＮ情報を受信し、入進信号情報を抽出するのに設けられた物理目標通信ノードとの間の通信に、このような通信プロセスを利用することも可能である。
図４は、インターネットソケット４２および４３、ならびにＬＡＮ接続４４を利用し、発信シミュレーション４５を着信シミュレーション４６にリンクするようにプロトコルシミュレーションツール４１が変更された本発明の一実施例を示す略ブロック図である。この実施例では、外部ネットワークまたはハードウェアを必要とすることなく、発信シミュレーション４５から着信シミュレーション４６へ、またはこの逆方向にＯＳＩモデルの層３〜７のための通信プロトコルシミュレーションソフトウェアが送信される。発信シミュレーション４５は発信機能を実行するテストスクリプトソフトウェアを備え、これらスクリプトはブロック４７において層３〜７に組み立てられ、ＵＮＩＸアダプタ４８へ送られる。ＵＮＩＸアダプタ４８はブロック４９でＴＣＰ／ＩＰフォーマットに層をパッケージし、インターネットソケット４２、ＬＡＮ接続４４およびインターネットソケット４３を介し、ＵＮＩＸアダプタ４８の受信側５０へ送信し、この受信側で層をアンパックする。次に、これら層はブロック５１で分解され、シミュレーションツール４１内の着信シミュレーション４６に送られる。このように、シミュレーションツールソフトウェアパッケージからの信号は、それ自身のシミュレーションツール内にループバックされ、ＯＳＩ層３〜７のテストスクリプト検証をイネーブルする。予めプログラムされたテストスクリプトによって決定されたダイヤローグ内で処理が続けられる。各スクリプトはテスト中の通信プロトコルの層３〜７によって組み立てられたプロトコルメッセージを送受信するようになっている。
図５は、図２のプロトコルスタック２２および２３、ならびに通信リンク２０をより詳細に示すブロック図である。プロトコルスタック２２はインターネットソケット２１を介しテスト中のユニット５２と通信するＵＮＩＸに基づくテストアプリケーションでよい。このテストアプリケーションはＯＳＩモデルプロトコルスタックを含むＭＴＰを含む。このＭＴＰのユーザーレベル（層７）では、ＭＴＰユーザーと通信するためのＭＴＰプロトコルを利用するＵＮＩＸに基づくアプリケーション５３がある。プロトコルスタックを下に移動すると、信号接続制御部分（ＳＣＣＰ）層５４および信号ネットワーク機能を実行するＭＴＰ層３（５５）がある。ＭＴＰ層３の下にＭＴＰ層１および２があり、本発明では、この層では通常のＭＴＰ層１および２のハードウェアに関連した部品がＵＮＩＸアプリケーション５６に置換されている。
インターネットソケット２１はＵＮＩＸに基づくテストアプリケーション内のＵＮＩＸアプリケーション５６から第２ＵＮＩＸアプリケーション５７へパッケージデータをトランスポートし、テスト中のユニット５２内の通常の層１および２ハードウェア部品をシミュレートしている。ＵＮＩＸアプリケーション５６と５７の間で作成された仕様により、これらアプリケーションはＵＮＩＸユーティリティを使用することにより、層２の情報をダイナミックに割り当てることなく、ＬＡＮ通信およびプロトコルを使用したり、使用することなく、アプリケーション間でＯＳ層３〜７の情報を送ることができる。
ＳＳ７メッセージがＡＮＳＩ  ＳＳ７プロトコルを送る特定のアプリケーションで使用される場合には、このメッセージはＯＳＩ層７から層３レベルまでパッケージされ、ＵＮＩＸプラットフォームおよびユーティリティを使用してテストアプリケーション２２からテスト中のユニット５２へ送られる。テスト中のユニットは処理用のデータを受信し、テスト中のユニット内の機能を実行し、テストアプリケーション内の取り扱いのためにＯＳＩ層３〜７のための応答情報をパッケージできる。
図６は、プロトコルシミュレーションテストデバイス（プロトコルシミュレータ）６０がインターネットソケット６１および６２を介し目標システムエミュレーションを作動させるＵＮＩＸプロセス６３とインターフェースする、本発明の実施例のブロック図である。このプロトコルシミュレータ６０は標準シミュレーションツールを作動させるＵＮＩＸプロセスを含む。標準ツールは発信機能を実行するテストスクリプトソフトウェア６４を含む。これらスクリプトはブロック６５でＯＳＩ層３〜７に組み立てられ、ＵＮＩＸアダプタ６６へ送られる。ＵＮＩＸアダプタはＴＣＰ／ＩＰフォーマットで層をパッケージし、インターネットソケット６１および６２、ならびにＬＡＮ接続６７を介し、目標システムエミュレーション６３を作動するＵＮＩＸプロセスへ送信できるようにする。エミュレーションプロセス６３はプロトコルインターフェースゲートウェイ（ＰＩＧ）ツール６８と、目標システムエミュレータ６９を含む。ＰＩＧツール６８はＴＣＰ／ＩＰフォーマットでソケットから受信したＯＳＩ層をアンパックし、これら層をプロセッサ命令に変換する。次にこれら命令は目標システムエミュレータ６９へ送られる。
目標システムエミュレータ６９はＵＮＩＸ環境で作動する目標通信ノードのハードウェアをエミュレートし、ＯＳＩ層４のレベルまたはそれ以上のレベルで信号情報を送受信できる。エミュレータ６９はインターネットソケットまたは他のＵＮＩＸ設備、例えばパイプまたはインターフェース６７を使ってインターフェースアプリケーションと通信し、ＯＳＩ層３〜７の情報を送受信する。受信した情報上の必要な機能を実行した後、エミュレータはＴＣＰ／ＩＰフォーマットのパッケージングの同じ方法を使用するプロトコルシミュレータ６０までの通信およびインターネットソケットを介した送信に応答し、データをプロトコルシミュレータに転送し、テストスクリプトによる検証を行う。
図７は、本発明の要旨により目標通信交換機７１と交換機エミュレータ７２の双方がプロトコルシミュレータ７３に接続された、自動化された診断システム７０の略ブロック図である。プロトコルシミュレータ７３は種々のコンピュータで作成された図では、プロトコルアダプタブルステートマシン（ＰＡＳＭ）またはメッセージゼネレータトラフィックシミュレータ（ＭＧＴＳ）と別称できる。このプロトコルシミュレータ７３によりユーザーは実施の目標ハードウェアノードまたはＯＳＩ層３〜７のテストをするためのソフトウェアによってエミュレータされるノードのいずれかを選択することができる。ハードウェアノード（例えば目標通信スイッチ７１）が選択された場合、通信マネージャー７４はこの選択をプロトコルシミュレーションソケットアダプテーションモジュール（プロトコルシミュレーションアダプタ７５）に対し識別し、このモジュールは次にハードウェアノードに対する適当なプロトコルシミュレーションソフトウェア７６およびプロトコルスタック７７を選択する。複数のインターネットソケット７８のうちの１つを介し、ＬＡＮ７９へＵＮＩＸに基づくＴＣＰ／ＩＰプロトコルのメッセージが送られる。これらメッセージはインターネットソケット８１を通ってＬＡＮを出てＵＮＩＸアダプタ８２に向けられる。ＵＮＩＸアダプタ８２はＴＣＰ／ＩＰプロトコルをＳＳ７メッセージに変換し、これらメッセージは目標通信交換機７１によって理解される。
エミュレータ（例えば交換機エミュレータ７２）が選択された場合、通信マネージャー７４はプロトコルシミュレーションアダプタ７５に対しこの選択を識別し、次にシミュレーションアダプタ７５はエミュレートされたシステムに対し適当なプロトコルシミュレーションソフトウェア７６およびプロトコルスタック７７を選択する。複数のインターネットソケット７８のうちの１つを介し、ＬＡＮ７９にＵＮＩＸに基づくＴＣＰ／ＩＰプロトコルのメッセージが送られる。これらメッセージはゲートウェイインターネットソケット８３を通ってＬＡＮから出て、好ましい実施例ではプロトコルインターフェースゲートウェイ（ＰＩＧツール）８４へ向けられる。
プロトコルシミュレーションアダプタ７５は、ワークステーション上でプロセスまたはプロセスのグループとして作動するメッセージ発生トラヒックシミュレータ（ＭＧＴＳ）ハードウェアシャーシのシミュレーションである。このプロトコルシミュレーションアダプタ７５はプロトコルシミュレーションソフトウェア７６と、関連するプロトコルスタック７７を含む。このアダプタはハードウェアシャーシにアクセスすることなく、テストシーケンス検証を実行する能力を提供するものである。ユーザーは目標ハードウェアノード７１または７２を接続する前に、テストシーケンスのデバッグをし、トラブルシューティングすることができる。
プロトコルシミュレーションアダプタ７５はエミュレータと通信するためにＳＳ７  ＴＣＰ／ＩＰプロトコルを利用する。テストメッセージはメッセージのソース、メッセージ長さ、プロトコル改訂などを識別するためにプロトコルシミュレータと目標またはエミュレートされた通信ノードとの間の所有権のあるヘッダーオクテットも含むことができる。テストメッセージはＬＡＮ７９、例えばイーサネットを通し、インターネットソケット７８のうちの１つを介し、更にゲートウェイインターネットソケット８３を介し、ＰＩＧツール８４へ送られる。このＰＩＧツール８４はＴＣＰ／ＩＰプロトコルおよびヘッダーをストリップし、テストメッセージをＣＰＵ命令に変換する。次に、これらＣＰＵ命令はエミュレータ７２へ送られ、テストすべきソフトウェアの処理および訓練を行う。エミュレータ７２はシミュレートされた通信ノードからのアプリケーションソフトウェアブロック８５だけでなく目標ノードのハードウェアをエミュレートするソフトウェアモジュールも含む。エミュレータはテストすべきソフトウェアを訓練し、目標通信ノードによるシミュレートされた通信プロトコルの使用を検証し、プロトコルシミュレータ７３に向かって応答する。従って、ユーザーがエミュレータ７２上のアプリケーションのためのテストシーケンスを開発した後に、同じテストシーケンスを使う目標ハードウェア７１上のアプリケーションをテストするのに、プロトコルシミュレータ７３を使用できる。
プロトコルシミュレータ７３はインターネットソケット７８および目標ホストハードウェア７１との物理インターフェース８６を介し、同時にアプリケーションをテストすることもできる。更に、プロトコルシミュレータ７３は、インターネットソケット７８およびＬＡＮ７９を介し、他のテストデバイス（図示せず）を制御できる。
図８は、ＵＮＩＸに基づくエミュレータ７２および図７のＰＩＧツール８４のより詳細なブロック図である。プロトコルシミュレーションアダプタ７５内へのフックを含むプロトコルシミュレータ７３は、プロトコルシミュレーションソフトウェア７６を作動させる。好ましい実施例では、プロトコルシミュレータ７３は１２人のユーザーにサービスするようになっており、３２メガバイドのＲＡＭおよびサーバーのハードドライブ上に１０００メガバイトのスワップスペースを有する、ＳＵＮマイクロシステムズ社からのスパーク２０サーバーを利用するものである。３２メガバイトのＲＡＭおよびワークステーションのハードドライブ上に２００メガバイトのスワップスペースを有するＳＵＮ社のスパーク５マイクロステーションでは、ＵＮＩＸに基づくエミュレータ７２およびＰＩＧツール８４を作動させることができる。一人のユーザーにサービスする実施例では、ＳＵＮのスパーク５ワークステーションでプロトコルシミュレータ７３も作動させることができる。これらハードウェアの構造は単に説明のために記載したものであり、他のハードウェア構造で実現できる本発明の範囲を限定するものではない。
ＰＩＧツール８４はイーサネットＬＡＮ７９に接続されたゲートウェイインターネットソケット８３からの所有権のある（ｐｒｏｐｒｉｅｔａｒｙ）ヘッダーオクテットを用いたり、用いることなく、未処理のＳＳ７オクテット（ＯＳＩ層３〜７）８７を受信する。ＳＳ７は仮想パッチパネル（ＶＰＰ）８８を通してＰＩＧツール８４を入力する。ＰＩＧツール内では完全なＳＳ７メッセージ信号ユニット（ＭＳＵ）が受信されるまで、ＳＳ７オクテットが収集される。
ＰＩＧツール８４はＭＳＵを受信したインターネットソケットを介し、ＭＳＵのソースを決定する。プロトコルシミュレータ７３からＭＳＵが受信された場合、所有権のあるヘッダーオクテットが存在している場合にはこれがストリップオフされ、処理される。エミュレータ７２から１つ以上のシミュレータ命令状のＭＳＵが受信された場合、これら命令はＰＩＧツールによりＭＳＵバッファ（図示せず）内に処理される。
ＭＳＵが完全に受信された場合、ＰＩＧツール８４は、ユーザーによって指定され、ＶＰＰ８８内に記憶され、維持されているルーチングテーブルにコンサルトする。ルーチングテーブルはソースエンティティと着信先エンティティとを関連づける。ルーチングテーブルからＭＳＵの着信先が一旦決定されると、ＰＩＧツールはメッセージを着信先に適したフォーマットに処理する。着信先がプロトコルシミュレータ７３である場合、この処理は、処理されている場合のプロプリエタリヘッダーによるＭＳＵのオプションのキャプセル化を行う。ＭＳＵの着信先がエミュレータ７２である場合、ＭＳＵは適当な数のエミュレータ命令に分解され、テスト中のソフトウェア命令によって処理されるようエミュレータへ送られる。
図９は、プロトコルシミュレータ７３による複数の回線インターフェースカード（ＬＩＣ）９１のシミュレーションおよびインターネットソケット７８および８３ならびにＬＡＮ７９を介したエミュレータ７２および複数のシミュレートされた信号ポイント９３へのカードの接続を示す略ブロック図である。本発明の一実施例では、プロトコルシミュレータ７３は１６個までのＬＩＣ９１をシミュレートでき、エミュレータ９２は１６個までの信号ポイント９３を備えたＬＡＮに接続でき、これら信号ポイントのいずれもインターネットソケット７８および８３ならびにイーサネットＬＡＮ７９を介して接続される。ＬＩＣおよび信号ポイントのこの数は、本発明を限定するものでなく、単に例として示したものにすぎない。別の実施例では、これよりも多いか、または少ない数のＬＩＣおよび信号ポイントを利用できる。
詳細な例
図１０は、本発明の開発テストシステムによるテストを開始するためにオペレータが利用できる、コンピュータによってディスプレイされるアイコンツールボック１００の図である。オペレータはエミュレータワークステーションまたはプロトコルシミュレータワークステーションのいずれかからシステムを制御できる。第１ＰＩＧツールアイコン１０１は「ＳＯＣＫＥＴ」（ソケット）と表示されており、第２ＰＩＧツールアイコン１０２は「ＮＯＲＭＡＬ」（通常）と表示されている。ＰＩＧツール８４は２つの異なるエミュレータ、すなわちソケットに基づくエミュレータとソケットに基づいていない通常のエミュレータとインターフェースでき、これらアイコンはＰＩＧツールとインターフェースするためのエミュレータのタイプを選択するのに利用される。ＭＧＴＳアイコン１０３はプロトコルシミュレータ７３におけるプロトコルシミュレーションソフトウェア７６を開始するのに使用される。
図１１は、テスト用にオペレータが実際のハードウェアシステムまたはエミュレートされたシステムを選択できるようにする。コンピュータによってディスプレイされるシェルフ選択メニュー１１０の図である。「ｒｅａｌ」と表示されたメニューアイテムを選択すると、プロトコルシミュレータ７３はリアル目標ハードウェアシステムに選択される。「ｅｘｕ．．．．」で開始するメニューアイテムを選択すると、プロトコルシミュレータ７３はエミュレートされたシステムに接続される。エミュレートされたシステムは選択されたメニューアイテムに関連する回線インターフェースカード（ＬＩＣ）９１の数に応じて３つのカテゴリー、すなわち大中小のカテゴリーに分けられている。
図１２は、本発明の開発テストシステムに対するテスト環境を定めるのに使用される、コンピュータによってディスプレイされるネットワークマップエディタ１２０の図である。ディスプレイの中心に位置するテスト中のノード（テストノード）１３１をシミュレートされたノード１２１〜１３０の一組が運んでいる。テストノード１３１は図１１のシェルフ選択メニュー１１０を利用するオペレータによって選択されるシステムのタイプに応じ、リアル目標ハードウェアシステムまたはエミュレートされたシステムとすることができる。オペレータがリアル目標ハードウェアシステムを選択した場合、テストノード１３１とこれを囲むノード１２１〜１３０との間の接続部１３２は物理リンクとなる。オペレータがエミュレートされたシステムを選択すれば、テストノード１３１とこれを囲むノード１２１〜１３０との間の接続部１３２はシミュレートされたＳＳ７リンクとなる。各ノードは信号ポイント符号（例えば７−９−６０）およびシミュレートされているノードのためのショートネーム（例えばＭＳＣ４）と表示される。
図１３は、パーソナル通信システム（ＰＣＳ）移動通信システムにおける基地局コントローラ（ＢＳＣ）で実行される簡単なロケーション更新シーケンスのプロトコルシミュレータにおけるシミュレーションを示す、コンピュータによってディスプレイされるネットワークマップ（シミュレーションスクリプト）の図である。移動電話の加入者が移動電話をオンにすると、ＢＳＣのプロトコルシミュレーションのステップ１３６に示されるようにロケーション更新シーケンスが開始される。ＢＳＣは次にロケーション更新リクエストメッセージ１３７を移動交換センター（ＭＳＣ）に送り、次に交換センターは加入者のホームロケーションレジスタ（ＨＬＲ）における移動電話加入者のロケーションを更新する。次に、ステップ１３８でＭＳＣからＢＳＣへ確認メッセージがリターンされる。
図１３では、メッセージを受けるシミュレートされたノードは中心垂直線の左側までの矢印で示されている。メッセージを送信するシミュレートされたノードは中心垂直ラインの右側までの矢印で示されている。メッセージを送受信するシミュレートされたノードは中心垂直ラインの両側の矢印で示されている。ディスプレイの中心には「ＬＯＯＰ」と表示されたシミュレートされたノード１３９が位置しており、シミュレーションが受信すべき別のメッセージを待機するホールドポイントとなっている。タイマー１４１はアクティビティのループをモニタし、プリセットされた時間（例えば１０秒）の間アクティビティがない場合、テストシーケンスを停止するようになっている。
プロセスはノード１３６でスタートし、ノード１３７まで進み、このノードでＢＳＣはＭＳＣにロケーション更新リクエストメッセージを送信する。本発明の開発テストシステムでは、このリクエストメッセージはリアル目標ＭＳＣおよびＨＬＲまで進むか、またはＰＩＧツール８４を通ってトラヒック取り扱いソフトウェアおよび内蔵ＨＬＲを備えたエミュレータまで進むことができる。ロケーション更新リクエストメッセージはＳＳ７フォーマットであり、ＰＩＧツールはこのメッセージをエミュレータの命令に変換する。エミュレータがリクエストを処理し、これに応答すると、ＰＩＧツールはＢＳＣシミュレーションに送信できるよう、この応答をＳＳ７フォーマットに変換する。ＭＳＣエミュレータがリクエストメッセージに応答すると、ＢＳＣシミュレーションはノード１３８で接続確認（ＣＣ）メッセージを受信する。次にプロセスはループノード１３９へ進み、リクエストメッセージに応答するためにＭＳＣエミュレータを待つ。ロケーション更新リクエストが受け入れられた場合、ＢＳＣシミュレーションはノード１４２でロケーション更新受け入れメッセージを受信する。次にノード１４３でＭＳＣ／エミュレータに対するリンクがクリアされ、ノード１４４でレリース完了メッセージが送られる。次にプロセスはステップ１４５で終了する。
図１４はＰＩＧツール８４がアクセスできるプロトコルシミュレーションシステム（仮想シェルフ）１４８の、コンピュータによってディスプレイされたメニュー１４６の図である。このリストは、図１１に示されたプロトコルシミュレータにおけるシェルフ選択メニュー１１０にリストされたプロトコルシミュレーションシステムと同一である。プロトコルシミュレーションシステム（例えばｅｘｕｂｏｇｅ  ｌａｒｇｅ１４９）が選択されると、選択されたシステムに関連する利用可能なノードまたは回線インターフェースカード（ＬＩＣ）１５１のリストがディスプレイされる。ＬＩＣ１５１のリストはエミュレートされた通信システムにおけるデータに対応する信号ポイント（ＳＴ）に対するレファレンスも含む。オペレータがプロトコルシミュレーションシステムおよびテスト時に利用すべきＬＩＣを選択した場合、「ＭＧＴＳ  Ｖｉｒｔｕａｌ  Ｓｈｅｌｆ（仮想シェルフ）」と表示されたボタン１５２をクリックすると、ゲートウェイインターネットソケット８３までの接続が設定される（図７）。この接続がなされた際に、「Ｅｍｕｌａｔｏｒ（エミュレータ）」ボタン１５３をクリックすると、エミュレータへの接続が設定される。従って、ＰＩＧツール８４はプロトコルシミュレータによって発生されたシミュレートされたＬＩＣと、エミュレートされたシステム内の信号ポイントとの間を接続する。
図１５は、プロトコルシミュレータ（ＰＡＳＭシミュレーションと表示）１５６、ＰＩＧツール１５７およびエミュレートされたシステム（ＥｍｕＴｏｏｌと表示）１５８に対応する３つのステータスウィンドを示すコンピュータディスプレイ１５５の図である。プロトコルアダプタブルステートマシン（ＰＡＳＭ）シミュレーションウィンド１５６の上部部分１５９は、移動交換センター／ホームロケーションレジスタ（ＭＳＣ／ＨＬＲ）でロケーション更新シーケンスが実行され、かつプロトコルシミュレータによりＢＳＣプロトコルシミュレーションが検証されたことを表示する。中間部分１６１は特定のメッセージが送受信された回数を示すログである。底部部分１６２は矢印によって表示されたシミュレーションパスを備えた図１３のシミュレーションスクリプト１３５を示す。
ＰＩＧツールウィンド１５７はＰＩＧツール８４がアクセスできるプロトコルシミュレーションシステム（仮想シェルフ）１４８のメニューを示す上部部分１６３を含む。下方部分１６４はメッセージモニタであり、このモニタはデータがゲートウェイソケット８３を通過する際に（図７）、プロトコルシミュレータ７３とＰＩＧツール８４との間で送受信されるメッセージに関するデータを提供する。
エミュレータウィンド１５８はＰＩＧツール８４からエミュレータ７０まで進むコマンドおよびデータに関する情報を提供する。図９に示されるようにＰＩＧツール８４におけるコンバータ９４はＳＳ７（１６進）をエミュレータ符号に変換し、この符号をアプリケーションプログラミングインターフェース（ＡＰＩ）９５へ送る。上方エミュレータログ部分１６５（図１５）は、エミュレータ符号１６６で受信されたコマンドおよび受信された各コマンドのための信号接続ポイント１６７を示す。下方コマンド部分１６８（一部が隠されている）は、ＰＩＧツール８４からエミュレータ７２まで送られるコマンドの凝縮されたバージョンである。
図１６は、図１５のＰＩＧツールステータスウィンドのメッセージモニタ部分１６４のより詳細なリストである。テストのため選択されたすべてのＬＩＣ上でデータが提供される。ウィンド１６４は各メッセージのためのソース（例えばＭＧＴＳプラットフォームから受信）１７１、所有権のあるヘッダー情報１７２およびメッセージ内で送られるデータ１７３をディスプレイする。ヘッダー情報１７２はＳＳ７メッセージの改訂、プロトコル、方向および長さを表示する。メッセージデータ１７３は１６進表示されたＳＳ７データのオクテット（８ビット）で示される。ＰＩＧツール８４はプロトコルシミュレータ７３からメッセージを受信すると同時に、エミュレータ７２へメッセージを送ることができる（図７）。
従って、以上の説明から本発明の作動および構造が明らかとなったと信じる。ここに示し、説明した方法、装置およびシステムは、好ましいとして示した事項を特徴とするが、次の請求の範囲に記載した発明の要旨および範囲から逸脱することなく、種々の変更および変形が可能であることは容易に明らかとなろう。
【図１】
0003706144.tif 000002
【図２】
0003706144.tif 000003
【図２Ａ】
0003706144.tif 000004
【図３】
0003706144.tif 000005
【図４】
0003706144.tif 000006
【図５】
0003706144.tif 000007
【図６】
0003706144.tif 000008
【図７】
0003706144.tif 000009
【図８】
0003706144.tif 000010
【図９】
0003706144.tif 000011
【図１０】
0003706144.tif 000012
【図１１】
0003706144.tif 000013
【図１２】
0003706144.tif 000014
【図１３】
0003706144.tif 000015
【図１４】
0003706144.tif 000016
【図１５】
0003706144.tif 000017
【図１６Ａ】
0003706144.tif 000018
【図１６Ｂ】
0003706144.tif 000019