(57)【要約】【課題】  ゲートウェイの機能に加え、移動体端末と基地局またはＷｅｂのコンテンツを提供するサーバの動作を記述して実行可能なシーケンスファイルを利用してネットワークの遅延やエラーをエミュレートし、試験対象に合わせて所望のエミュレートを行う。【解決手段】  エミュレーション装置１は、インターネット上のサーバ３と、サーバ３とデータ通信を行う端末装置２との少なくとも一方を試験するためのものであり、シーケンスファイル１６と、制御手段１３を備える。シーケンスファイル１６には、サーバ３と移動体端末装置２との双方の動作手順が記述される。制御手段１３は、シーケンスファイル６からサーバ３の動作手順および移動体端末装置２の動作手順とのいずれか一方を選択し、この選択された動作手順に従ってサーバ３と移動体端末装置２のいずれか一方のプロトコルを模擬する。【選択図】    図２
2005175915.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上のサーバ（３）と、該サーバとデータ通信を行う端末装置（２）のうち少なくとも一方と通信して試験するためのエミュレーション装置（１）であって、
試験するためのエミュレーション装置の動作手順を記載したシーケンスファイル（１６）と、
前記シーケンスファイルを解析し、指定されたコマンドを抽出し実行する制御手段（１３）とを備えたエミュレーション装置。
【請求項２】
ネットワーク上のサーバ（３）と、該サーバとデータ通信を行う端末装置（２）と通信して試験するためのエミュレーション装置（１）であって、
試験するためのエミュレーション装置の動作手順を記載したシーケンスファイル（１６）と、
トリガーと、該トリガーに対応して定められた実行する動作とを含むトリガー情報を設定する設定手段（１１）と、
前記トリガー情報を記憶する記憶手段（１２）と、
前記サーバと前記端末装置との間の通信データを監視し、前記記憶手段に記憶されたトリガーと一致する通信データを検出し、前記記憶手段に記憶された前記トリガーに対応して定められている指定されたシーケンスファイルを呼び出し、前記サーバまたは前記端末装置を選択的に模擬するために前記シーケンスファイルから前記サーバまたは前記端末装置用のコマンドを抽出し、この抽出されたコマンドによる動作手順を実行して選択された前記サーバまたは前記端末装置を試験するように切り替わることを特徴とするエミュレーション装置。
【請求項３】
前記制御手段（１３）は、前記サーバ（３）を模擬するために前記シーケンスファイル（１６）から指定されたサーバ用のコマンドを抽出し、この抽出されたコマンドによる動作手順を実行して前記端末装置（２）を試験することを特徴とする請求項１記載のエミュレーション装置。
【請求項４】
前記制御手段（１３）は、前記端末装置（１３）を模擬するために前記シーケンスファイル（１６）から指定された端末装置用のコマンドを抽出し、この抽出されたコマンドによる動作手順を実行して前記サーバ（３）を試験することを特徴とする請求項１記載のエミュレーション装置。
【請求項５】
前記制御手段（１３）は、前記サーバ（３）とのデータ通信のログ情報（１５）と、前記端末装置（２）とのデータ通信のログ情報との少なくとも１つを記憶し、
前記記憶されたログ情報を解析し、前記動作手順として前記シーケンスファイル（１６）を生成するシーケンスファイル生成手段（１３ｄ）を備えたことを特徴とする請求項１〜４のいずれかに記載のエミュレーション装置。
【請求項６】
前記サーバ用のコマンドおよび前記端末装置用のコマンドが一つのシーケンスファイル（１６）に時系列に記憶されたことを特徴とする請求項１〜４のいずれかに記載のエミュレーション装置。
【請求項７】
前記請求項１〜６のいずれかのエミュレーション装置（１）における前記ネットワーク上のサーバ（３）と該サーバとデータ通信を行う端末装置（２）との少なくとも一方と通信して試験するために前記シーケンスファイル（１６）と前記制御手段（１３）として機能させるためのエミュレーションプログラム。
【請求項８】
インターネット上のサーバ（３）と、該サーバとデータ通信を行う移動体端末装置（２）との少なくとも一方を試験するためのエミュレーション装置（１）であって、
前記サーバと前記移動体端末装置との双方の動作手順を記憶したシーケンスファイル（１６）と、
前記シーケンスファイルから前記サーバの動作手順および前記移動体端末装置のいずれか一方のプロトコルを模擬するための制御手段（１３）とを備えたエミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば移動体端末やサーバが通信障害などネットワーク環境によりどのような影響を受けるかを擬似環境上で試験するためのゲートウェイ機能を兼ね備えたエミュレーション装置及びエミュレーションプログラムに関するものである。
【背景技術】
【０００２】
（従来例１）
従来、例えば移動体端末のアプリケーションやサーバが通信障害などネットワーク環境によりどのような影響を受けるかを試験する場合には、移動体端末とＷｅｂの接続を実網で行うことにより実施していた。
【０００３】
（従来例２）
下記特許文献１には、通信システムにおいて、ネットワーク上の通信プロトコルをモニタし、収集したメッセージ情報およびメッセージ動作フロー（シーケンス）情報から試験用シナリオを作成／編集し、この作成／編集された試験用シナリオに基づいて通信プロトコル試験を行う自動通信プロトコル試験システムが開示されている。
【０００４】
この特許文献１に開示される自動通信プロトコル試験システムは、通信回線を監視し、ビットデータを収集する機能、ビットデータから各プロトコルに定義されたメッセージに変換する機能、メッセージ（メッセージＩＤ、メッセージ名称、メッセージのもつパラメータ）を解析する機能、シーケンスフローを解析する機能、通信レイヤを判別する機能、通信プロトコルに対する適否判定を行う機能、収集した通信情報と既存シナリオからシナリオを生成する機能、シナリオに基づいて被テスト通信装置と通信を行う機能、ログを記録する機能、データ解析部で解析する内容・項目を試験者が任意に設定する機能を有している。
【０００５】
そして、上記各種機能を有する試験システムにおいて、通信データ解析を行う場合は、通信回線からすべてのデータビットを時系列的に抽出する。次に、抽出した収集データを各プロトコルメッセージフォーマットに変換する。その後、メッセージ種別判定、メッセージパラメータ解析、シーケンスフロー解析、送信レイヤ別情報解析、通信プロトコル適否判定を行う。
【０００６】
また、被テスト通信装置に用いるシナリオは、上記通信データ解析で収集したシーケンス情報やメッセージ情報、または作成したシナリオ、メッセージから選択する。シナリオ・メッセージを作成する場合は、自動生成機能を呼び出し、回線ノード単位のシナリオ検索、特定通信に限定したシナリオ検索、特定フローパターンに限定したシナリオ検索、特定時間抽出に限定したシナリオ検索、特定ノードに限定したシナリオ検索、メッセージパラメータ検索によって、シナリオ、メッセージを生成して格納する。
【０００７】
そして、擬似試験を行う場合は、生成されたシナリオをロードし、シナリオに書かれたメッセージをデータ変換し、回線送出用ビットデータを作成する。その後、作成された回線送出用ビットデータを被試験端末装置に送信し、試験終了時にログを出力する。
【特許文献１】特開２０００−１９６７０５号公報（特許第３２１２９５９号）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
（従来例１の課題）
しかしながら、従来のように、移動体端末とＷｅｂの接続試験を実網で行う構成では、正常系（データ通信が成功する基本シーケンス）の動作試験しかできず、異常系（異常終了で終わり、データ通信が正常に終了しないシーケンス）や準正常系（正常系とは違う何らかの手順を踏むが最終的には正常にデータ通信が終了するシーケンス）の動作試験を意識的に行うことができないという問題があった。また、テスト環境に合わせて自由に設定可能なゲートウェイが無いので、動作試験する側の切り口しか見えないという不具合があった。しかも、実網を用いた場合、新しいコンテンツ配信や新しい試験を実施できないという問題があった。
【０００９】
これら問題に対応するため、現在販売、提供されている擬似サーバ、擬似基地局、携帯電話シミュレータ等が個別に存在し、またゲートウェイ装置、ラインモニタ装置、サーバエミュレータ、端末エミュレータも個別に存在している。しかし、所望の動作試験を行う場合には、それぞれの試験に対応したシステムを構築する必要があり、これらを組み合わせたシステム構築が困難であった。
【００１０】
（従来例２の課題）
また、上記特許文献１に開示される自動通信プロトコル試験システムでは、通信データ解析とシナリオを用いた擬似試験に関連がなく、通信データ解析から擬似試験へ自動的に移行する機能を備えていなかった。また、擬似試験中に、例えば「あるデータが来たら通知」といった機能がなく、ログを参照するしかなかった。加えて、送信データの一部を変更する場合でも、新たにシナリオを作成する必要があった。さらに、通信データ解析中の送受信データをシーケンス情報やメッセージ情報として保存しており、ログが擬似試験中のみ取られるので、エミュレーションを行わない場合の送受信データとの比較が単純には行えないという問題があった。そして、使用されるシナリオがエミュレーションする装置のシーケンスやメッセージが記述されているので、例えば同公報の図７の通信設備Ｂと通信設備Ｃとの通信からシナリオを作成した場合、被試験装置が通信設備Ｂの場合と、通信設備Ｃの場合では異なるシナリオとなり、共通のシナリオを使用することができず、通信設備毎にシナリオを用意する必要があった。
【００１１】
本発明は、従来のような実網を使用せず、移動体端末からインターネット上のＷｅｂ閲覧を行うため、移動体端末および基地局とインターネット等のネットワーク上のサーバとの相互接続の動作試験用擬似環境の要求に答えるべくなされたものであり、ゲートウェイの機能を有する。また、移動体端末と基地局またはＷｅｂのコンテンツを提供するサーバの動作を記述して実行可能なシーケンスファイルを利用してネットワークの遅延やエラーをエミュレートし、試験対象に合わせて所望のエミュレートを行うことができるエミュレーション装置及びエミュレーションプログラムを提供することを目的としている。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、本発明の請求項１に記載されたエミュレーション装置は、ネットワーク上のサーバ３と、該サーバとデータ通信を行う端末装置２のうち少なくとも一方と通信して試験するためのエミュレーション装置１であって、
試験するためのエミュレーション装置の動作手順を記載したシーケンスファイル１６と、
前記シーケンスファイルを解析し、指定されたコマンドを抽出し実行する制御手段１３とを備えたことを特徴とする。
この構成を備えることで、エミュレーション装置１は擬似サーバとして動作するサーバエミュレーションモード（モード２）と擬似端末装置として動作する端末エミュレーションモード（モード３）を実現する。
【００１３】
請求項２に記載されたエミュレーション装置は、ネットワーク上のサーバ３と、該サーバとデータ通信を行う端末装置２と通信して試験するためのエミュレーション装置１であって、
試験するためのエミュレーション装置の動作手順を記載したシーケンスファイル１６と、
トリガーと、該トリガーに対応して定められた実行する動作とを含むトリガー情報を設定する設定手段１１と、
前記トリガー情報を記憶する記憶手段１２と、
前記サーバと前記端末装置との間の通信データを監視し、前記記憶手段に記憶されたトリガーと一致する通信データを検出し、前記記憶手段に記憶された前記トリガーに対応して定められている指定されたシーケンスファイルを呼び出し、前記サーバまたは前記端末装置を選択的に模擬するために前記シーケンスファイルから前記サーバまたは前記端末装置用のコマンドを抽出し、この抽出されたコマンドによる動作手順を実行して選択された前記サーバまたは前記端末装置を試験するように切り替わることを特徴とする。
この構成により、エミュレーション装置１は、サーバ３と端末装置２の間に入りデータ通信を行うゲートウェイ装置として動作するゲートウェイエミュレーションモード（モード１）を実現する。更に、記憶手段１２に記憶されたトリガー情報により、ゲートウェイモードで動作中にサーバ３と端末装置２との間のデータ通信の内容がトリガー情報に設定されたトリガーと一致する場合にゲートウェイエミュレーションモードから前述のサーバエミュレーションモードへ、ゲートウェイエミュレーションモードから前述の端末エミュレーションモードへ動作を切り替える。
【００１４】
請求項３に記載されたエミュレーション装置は、請求項１のエミュレーション装置において、前記制御手段１３は、前記サーバ３を模擬するために前記シーケンスファイル１６から指定されたサーバ用のコマンドを抽出し、この抽出されたコマンドによる動作手順を実行して前記端末装置２を試験することを特徴とする。
この構成により、エミュレーション装置１は、シーケンスファイル１６に記載されたコマンドからサーバ用のコマンドを抽出し、実行することでサーバ３をエミュレートするサーバエミュレーションモードを実現する。
【００１５】
請求項４に記載されたエミュレーション装置は、請求項１のエミュレーション装置において、前記制御手段１３は、前記端末装置１３を模擬するために前記シーケンスファイル１６から指定された端末装置用のコマンドを抽出し、この抽出されたコマンドによる動作手順を実行して前記サーバ３を試験することを特徴とする。
この構成により、エミュレーション装置１は、シーケンスファイル１６に記載されたコマンドから端末装置用のコマンドを抽出し、実行することで端末装置２をエミュレートする端末エミュレーションモードを実現する。
【００１６】
請求項５に記載されたエミュレーション装置は、請求項１〜４のいずれかのエミュレーション装置において、前記制御手段１３は、前記サーバ３とのデータ通信のログ情報１５と、前記端末装置２とのデータ通信のログ情報との少なくとも１つを記憶し、
前記記憶されたログ情報を解析し、前記動作手順として前記シーケンスファイル１６を生成するシーケンスファイル生成手段１３ｄを備えたことを特徴とする。
この構成を備えたことにより、ゲートウェイエミュレーションモードにおいてはサーバ３と端末装置２との通信内容、サーバエミュレーションモードにおいては端末装置２との通信内容、端末エミュレーションモードにおいてはサーバ３との通信内容をログ情報１５として記憶し、シーケンスファイルを生成する。
【００１７】
請求項６に記載されたエミュレーション装置は、請求項１〜４のいずれかのエミュレーション装置において、前記サーバ用のコマンドおよび前記端末装置用のコマンドが一つのシーケンスファイル１６に時系列に記憶されたことを特徴とする。
この構成により、請求項１〜４のいずれかのエミュレーション装置１は、シーケンスファイル１６にサーバ用コマンドと端末装置用コマンドが時系列に記憶されていてもエミュレーション装置１が動作しているモードに対応して必要なコマンドを抽出して実行する。
【００１８】
請求項７に記載されたエミュレーションプログラムは、前記請求項１〜６のいずれかのエミュレーション装置１における前記ネットワーク上のサーバ３と該サーバとデータ通信を行う端末装置２との少なくとも一方と通信して試験するために前記シーケンスファイル１６と前記制御手段１３として機能させることを特徴とする。
このプログラムにより、請求項１〜６のいずれかのエミュレーション装置１は、コンピュータにエミュレーションプログラムを読み込み実行することで実現する。
【００１９】
請求項８に記載されたエミュレーション装置は、インターネット上のサーバ３と、該サーバとデータ通信を行う移動体端末装置２との少なくとも一方を試験するためのエミュレーション装置１であって、
前記サーバと前記移動体端末装置との双方の動作手順を記憶したシーケンスファイル１６と、
前記シーケンスファイルから前記サーバの動作手順および前記移動体端末装置のいずれか一方のプロトコルを模擬するための制御手段１３とを備えたことを特徴とする。
この構成を備えることで、エミュレーション装置１はインターネット上のサーバ３を擬似して動作するサーバエミュレーションモード（モード２）と移動体端末装置２を擬似して動作する端末エミュレーションモード（モード３）を実現する。
【発明の効果】
【００２０】
請求項１の発明によれば、別々のシステムを構築することなく、ゲートウェイ装置を含むサーバまたは端末装置のエミュレートを行うことができる。また、実網で意識的に実現できないシーケンス（異常系、準正常系の実現とエラー発生時の試験対象の動作試験）をシーケンスファイルに記述することで実現することができる。
請求項２の発明によれば、サーバと端末装置間の通信データを監視し、予め設定した特定のトリガー条件が発生した場合に、ゲートウェイ装置を含むサーバまたは端末装置のエミュレートを行い、実網で意識的に実現できないシーケンス（異常系、準正常系の実現とエラー発生時の試験対象の動作試験）をシーケンスファイルに記述することで実現することができる。
請求項３、請求項４の発明によれば、シーケンスファイルにエミュレートする対象とは別のコマンドが記述されていても実行せず、エミュレートする対象に必要なコマンドを抽出し、実行するため、一つのシーケンスファイルにサーバと端末装置のエミュレートのための動作シーケンスを合わせて記述でき、一つのシーケンスファイルでサーバ、端末装置どちらのエミュレートにも使用することができ、シーケンスファイルの管理が容易になる。
請求項５の発明によれば、ゲートウェイエミュレーションモード、サーバエミュレーションモード、端末エミュレーションモードのいずれのデータ通信でもログ情報を記憶する。ゲートウェイエミュレーションモードにおいては、サーバと端末装置を実際に通信させ、そのログ情報を取得することで、サーバエミュレーションモードと端末エミュレーションモードの両方で使用することができるシーケンスファイルを作成することができる。また、ユーザがサーバエミュレーションモードや端末エミュレーションモードで使用するシーケンスファイルを直接記述した場合でも、そのシーケンスファイルを対象のモードで一度実行することによりサーバと端末装置間のデータ通信が時系列に記録されたログ情報が取得できる。そのログ情報からサーバエミュレーションモードと端末エミュレーションモードのどちらでも使用可能なシーケンスファイルを生成することが可能となる。
請求項６の発明によれば、データ通信が時系列に記録されたログ情報からサーバ用コマンドと端末装置用コマンドが時系列に混在した状態のままシーケンスファイルが作られてもエミュレーション装置で実行可能なため、シーケンス変更時においてもシーケンスファイル１本のみ修正すればよく、さらにシーケンス全体の流れも把握できる。
請求項７の発明によれば、エミュレーション装置をプログラムで提供できるため、プログラムを実行できるコンピュータがあれば容易に擬似環境を構築できる。
請求項８の発明によれば、移動体通信におけるインターネット上のサーバとのデータ通信をエミュレートすることができるため、実網で意識的に実現できないシーケンス（異常系、準正常系の実現とエラー発生時の試験対象の動作試験）をシーケンスファイルに記述することで実現することができ、さらに擬似環境でプロトコルを模擬しているため、実網に影響を及ぼす可能性のある新しいコンテンツの配信も実施することが可能である。
【発明を実施するための最良の形態】
【００２１】
図１は本発明に係るエミュレーション装置を含むＷＡＰ(Wireless Application Protocl)ゲートウェイの実環境の概略構成図、図２は本発明に係るエミュレーション装置のブロック構成図、図３（ａ）は本発明に係るエミュレーション装置と端末装置との間のデータ通信に使用されるＷＡＰデータフォーマットの概略図、図３（ｂ）は本発明に係るエミュレーション装置とサーバとの間のデータ通信に使用されるＴＣＰ／ＩＰデータフォーマットの概略図、図４はログ情報の項目一覧の例を示す図、図５（ａ）は所定のシーケンスファイルを実行したときの動作フローチャート、図５（ｂ）は図５（ａ）の動作時のログ情報を示す図、図６は図５（ｂ）のログ情報と、ログ情報から生成されるシーケンスファイルとの対応関係を示す図、図７は本発明に係るエミュレーション装置のモード１（ゲートウェイエミュレーションモード）の概念図、図８はモード１で使用されるトリガー情報に記述されたトリガーに対応して定められた実行する動作の記述例を示す図、図９は本発明に係るエミュレーション装置のモード１の動作手順を示すフローチャート、図１０は本発明に係るエミュレーション装置のモード１においてトリガー設定時の動作手順の一例を示すフローチャート、図１１は本発明に係るエミュレーション装置のモード１においてトリガー設定時の動作手順の他の例を示すフローチャート、図１２は本発明に係るエミュレーション装置のモード２（サーバエミュレーションモード）の概念図、図１３は本発明に係るエミュレーション装置のモード２の動作手順の概略を示すフローチャート、図１４は本発明に係るエミュレーション装置のモード３（端末エミュレーションモード）の概念図、図１５は本発明に係るエミュレーション装置のモード３の動作手順の概略を示すフローチャートである。
【００２２】
図１は、移動体端末装置２００から基地局４００に接続し、ゲートウェイ装置１００を通してインターネット上のサーバ３００に接続する場合の実網の状態を示している。これら実網に対比して以降に説明する実施形態での動作試験用擬似環境の構成を以下に説明する。移動体端末装置２００と基地局４００を擬似環境で一体とみなし端末装置２として記述する。インターネット上のサーバ３００を擬似環境でのサーバ３として記述する。移動体ネットワークとインターネットを接続するゲートウェイ装置１００を擬似環境で後述する機能を備えたエミュレーション装置１として記述する。
【００２３】
本例のエミュレーション装置１は、通常のゲートウェイの機能に加え、ネットワークの遅延やエラーをエミュレートし、テスト対象に合わせた３種類のエミュレーションモードを有している。そして、端末装置２とサーバ３の一方または双方の動作手順が時系列に記述されたシーケンスファイルを用い、追って詳述するユーザが選択設定したモード（モード２，３のいずれか）に応じてシーケンスファイルを選択し、この選択されたシーケンスファイルのコマンドによる動作手順を逐次実行している。
【００２４】
図２に示すように、本例のエミュレーション装置１は、設定手段１１、記憶手段１２、制御手段１３、表示手段１４を備えて概略構成される。
【００２５】
設定手段１１は、例えばマウス、キーボード等に相当する入力手段であり、モード選択設定手段１１ａとトリガー情報設定手段１１ｂを有する。モード選択設定手段１１ａは、ユーザの入力操作により後述するモード１〜３のいずれかのモードの選択設定を行っている。また、トリガー情報設定手段１１ｂは、トリガーとトリガーに対応して定められた実行する動作をトリガー情報として入力設定を行っている。設定されたモードとトリガー情報は、設定ファイル１７として記憶手段１２に記録される。設定手段１１は、上記設定のほか、データ通信時に取得したログ情報１５の中から読み込みを行うログ情報１５の指定を行っている。なお、設定手段１１からは、直接コマンドを入力してモード２またはモード３で使用するシーケンスファイルを設定することもできる。
【００２６】
記憶手段１２には、モード選択設定手段１１ａで選択設定されたモードに関係なくゲートウェイ手段１３ｇを通る通信データをモニタ（通信データを監視）して得られるログ情報１５を常時記憶している。また、記憶手段１２には、各モード２，３で使用するシーケンスファイル１６が記憶される。
【００２７】
記憶手段１２に保存されるログ情報１５には、（１）エミュレーション装置１（ゲートウェイ）の各レイヤで送受信したデータ、（２）ユーザがエミュレーション装置１に設定したコマンド（例えばトリガー条件の設定）、（３）エミュレーション装置１がユーザに通知したコマンド（例えばトリガー条件発生通知）が記録されている。
【００２８】
なお、ログ情報１５のファイルフォーマットは例えばＴＸＴ形式からなる。ログ情報１５の１つのファイルの１データ（１行）に保存する項目を図４に示す。図４に示すように、ログ情報１５は、行番号、日時、種別番号、データサイズ、データ内容がログ項目として記録される。
【００２９】
図２に示すように、制御手段１３は、ログ情報解析手段１３ａ、コマンド生成手段１３ｂ、内部記憶手段１３ｃ、シーケンスファイル生成手段１３ｄ、コマンド解析手段１３ｅ、コマンド抽出手段１３ｆ、ゲートウェイ手段１３ｇを備えている。
【００３０】
ログ情報解析手段１３ａは、記憶手段１２に記憶されたログ情報１５を開き、この開いたログ情報１５を１行単位で読み込み、読み込んだログの内容を解析している。
【００３１】
コマンド生成手段１３ｂは、ログ情報解析手段１３ａが解析したログの内容をパラメータとして、所定のコマンドを生成している。このコマンドの生成は、例えば予めログ情報１５の内容に応じたコマンドテーブルが内部記憶手段１３ｃに格納されており、この内部記憶手段１３ｃに格納されたコマンドテーブルを参照して、ログ情報解析手段１３ａが解析したログ情報１５の内容に応じたコマンドを生成している。
【００３２】
さらに説明すると、ログ情報１５からコマンドを生成する場合には以下の処理が実行される。（１）ログが、端末装置２からエミュレーション装置１（ゲートウェイ）へのデータ通信の場合…直前のログが「エミュレーション装置１から端末装置２へのデータ通信」の場合は、内部記憶手段１３ｃに記憶していた直前のログの時刻と処理中のログの時刻をパラメータとして、「処理遅延コマンド」を生成する。同時に、処理中のログのデータサイズ、データ内容をパラメータとして、「端末装置２からエミュレーション装置１へのデータ通信コマンド」を生成する。
【００３３】
（２）ログが、エミュレーション装置１から端末装置２へのデータ通信の場合…ログのデータサイズ、データ内容をパラメータとして、「エミュレーション装置１から端末装置２へのデータ通信コマンド」を生成し、処理したログの時刻を内部記憶手段１３ｃに記憶する。
【００３４】
（３）ログが、サーバ３からエミュレーション装置１へのデータ通信の場合…直前のログが「エミュレーション装置１からサーバ３へのデータ通信」の場合は、内部記憶手段１３ｃに記憶していた直前のログの時刻と処理中のログの時刻をパラメータとして、「処理遅延コマンド」を生成する。同時に、ログのデータサイズ、データ内容をパラメータとして、「サーバ３からエミュレーション装置１へのデータ通信コマンド」を生成する。
【００３５】
（４）ログが、エミュレーション装置１からサーバ３へのデータ通信の場合…ログのデータサイズ、データ内容をパラメータとして、「エミュレーション装置１からサーバ３へのデータ通信コマンド」を生成し、処理したログの時刻を内部記憶手段１３ｃに記憶する。
【００３６】
なお、ログが上記（１）〜（４）以外の場合には、ログ情報１５の末尾まで、繰り返し処理を行った後、ログ情報１５を閉じる。また、上述した（１），（３）では、データ通信の方向が逆方向の場合を説明したが、同方向への通信が連続する場合でも同様に「処理遅延コマンド」を生成する。また、所定の時間以下では、「処理遅延コマンド」を生成させないこともできる。
【００３７】
このように、ログ情報１５からコマンドを生成するには、ログ情報１５の中から、「端末装置２−エミュレーション装置１間」、「サーバ３−エミュレーション装置１間」のデータ通信ログを抜き出してコマンドに変換している。
【００３８】
シーケンスファイル生成手段１３ｄは、コマンド生成手段１３ｂによって生成されたコマンドをファイルの末尾に順次追加することによりシーケンスファイル１６を生成している。
【００３９】
コマンド解析手段１３ｅは、モード選択設定手段１１ａからモード２または３のいずれかのモードが選択設定されたとき、およびモード１の動作中にトリガー情報に設定されたトリガー条件が発生し、モードの切り替えとシーケンスファイル１６の呼び出しが行われたときに、記憶手段１２に記憶されたシーケンスファイル１６の先頭から順にコマンドを読み込み、この読み込んだコマンドの内容を解析している。
【００４０】
コマンド抽出手段１３ｆは、モード選択設定手段１１ａで選択設定された動作モードに従って、コマンド解析手段１３ｅで解析されたシーケンスファイルから該当するコマンドを抽出している。
【００４１】
ゲートウェイ手段１３ｇは、ゲートウェイ手段１３ｇを通る通信データをモニタ（通信データを監視）して常時ログ情報１５を取得している。また、ゲートウェイ手段１３ｇは、コマンド抽出手段１３ｆにより抽出されたコマンドによる動作手順を実行している。動作手順として実行されるコマンドには、例えばサーバ（端末）へのメッセージ受信待ち、サーバ（端末）からのメッセージ送信、指定時間のウェイトなどがある。
【００４２】
なお、本例で取り扱われる１つのシーケンスファイルの中には、端末装置２やサーバ３のメッセージ送受信コマンドが含まれている。そして、動作モードとしてサーバエミュレーションモード（モード２）が選択設定されている場合は、サーバ３のメッセージ送受信を有効なコマンドとして抽出し、端末装置２のメッセージ送受信コマンドは無視する。これに対し、動作モードとして端末エミュレーションモード（モード３）が選択設定されている場合は、端末装置２のメッセージ送受信を有効なコマンドとして抽出し、サーバ３のメッセージ送受信コマンドは無視する。
【００４３】
また、受信待ちコマンドは、指定のメッセージが受信されるか、異なるメッセージが受信されるか、タイムアウトになると完了する。送信コマンドは、指定のメッセージが送信されると完了する。コマンドを完了した後は、コマンド実行の正否に従い、次実行コマンド行を決定し、そのコマンドを実行する。以下、シーケンスファイルの次実行コマンドが「終了コマンド」になるまで各コマンドによる処理を実行する。
【００４４】
表示手段１４は、モード選択設定手段１１ａによりモードを選択設定する際の設定画面の表示の他、例えば送受信メッセージ内容、メッセージの方向、時刻等を含むログ情報１５の表示、データ通信状況、トリガー条件の成立やアラーム等の表示を行っている。
【００４５】
ここで、図３（ａ）は本例のエミュレーション装置１と端末装置２との間に用いられるＷＡＰデータフォーマット、図３（ｂ）は本例のエミュレーション装置１とサーバ３との間に用いられるＴＣＰ／ＩＰデータフォーマットを示している。
【００４６】
図３（ａ）に示すように、ＷＡＰデータフォーマットは、ベアラ依存のＩＰヘッダなど、ＷＤＰヘッダ、ＷＴＰヘッダ、ＷＳＰヘッダ、データ本体で構成される。ＩＰヘッダなどは、ベアラ・サービスによって異なるプロトコル（ＩＰ、ＳＭＳ、ＳＣＲなど）のヘッダが付加される。このデータは、ＷＡＰプロトコル対応の端末装置２とＷＡＰゲートウェイのみで使用され、ＴＣＰ／ＩＰデータフォーマットには使用されない。ＷＤＰヘッダは、下位レイヤがＩＰの場合、ＷＤＰがＵＤＰに置き換えられるため、ＵＤＰヘッダが付加される。それ以外の場合は、最低でも始点ポート番号と終点ポート番号を持つ、下位レイヤのプロトコル毎に定義されたＷＤＰヘッダが付加される。このデータは、ＷＡＰプロトコル対応の端末装置２とＷＡＰゲートウェイのみで使用され、ＴＣＰ／ＩＰデータフォーマットには使用されない。ＷＴＰヘッダは、再送制御、リンク確立に用いる。このデータは、ＷＡＰプロトコル対応の端末装置２とＷＡＰゲートウェイのみで使用され、ＴＣＰ／ＩＰデータフォーマットには使用されない。ＷＳＰヘッダは、後続のデータ本体に関する情報である。このＷＳＰヘッダのデータの一部は、ＴＣＰ／ＩＰデータフォーマットのデータ本体を作成する際に使用される。データ本体は、サーバ３と送受信されるデータ本体（規格で定義された文字列はバイナリデータに変換されている。）である。このデータは、ＴＣＰ／ＩＰデータフォーマットのデータ本体を作成する際に使用される。
【００４７】
図３（ｂ）に示すように、ＴＣＰ／ＩＰデータフォーマットは、ＩＰヘッダ、ＴＣＰヘッダ、データ本体で構成される。ＩＰヘッダは、サーバ３とＷＡＰゲートウェイのみで使用され、ＷＡＰデータフォーマットには使用されない。ＴＣＰ／ＩＰを用いてサーバ３と通信を行うため、ＷＡＰゲートウェイが作成しデータに付加する。ＴＣＰヘッダは、ＴＣＰ／ＩＰを用いてサーバ３と通信を行うため、ＷＡＰゲートウェイが作成しデータに付加する。このデータはサーバ３とＷＡＰゲートウェイのみで使用され、ＷＡＰデータフォーマットには使用されない。データ本体は、ＷＡＰゲートウェイと送受信されるデータ本体（バイナリデータへの変換等は行われていない）である。このデータは、ＷＡＰデータフォーマットのＷＡＰヘッダの一部とデータ本体を作成する際に使用される。
【００４８】
次に、サーバエミュレーションモード（モード２）又は端末エミュレーションモード（モード３）で使用されるシーケンスファイル１６をログ情報１５から生成する場合の動作について説明する。シーケンスファイル１６を生成するにあたっては、動作するモードに関係なく保存したログ情報（送受信メッセージ内容、メッセージの方向、時刻）から、モード２又はモード３で使用するシーケンスファイル１６を生成する。主として、ゲートウェイエミュレーションモード（モード１）時に端末装置２とサーバ３間の実動作で取得したログ情報１５を利用してシーケンスファイル１６を作成する。この作成されたシーケンスファイル１６は、サーバエミュレーションモード（モード２）、端末エミュレーションモード（モード３）に共通で使用できる。
【００４９】
さらに詳述すると、ゲートウェイ手段１３ｇは、端末装置２とサーバ３間のデータ通信の内容をログ情報１５として常時記録する。ログ情報１５として記録する内容は、例えば送受信メッセージ内容、メッセージの方向（どのレイヤからどのレイヤ、およびどの装置からどの装置に送受信されるかを示す）、時刻などがある。次に、ログ情報解析手段１３ａは、ゲートウェイ手段１３ｇが取得したログ情報１５のうち設定手段１１で指定されたログ情報１５のデータを開き、開いたデータを１行単位で読み込み、内容を解析する。具体的には、ログ情報１５の先頭行のログ内容を内部に読み込み、その送信元、受信先、送受信時刻、送受信データ内容をチェックする。次に、コマンド生成手段１３ｂは、ログ情報１５の内容をシーケンスコマンドに変換し、シーケンスファイル１６に書き込む。例えばログ内容の送信元が、端末装置２又はサーバ３であった場合、そのログ内容をシーケンス実行用のコマンドに変換し、シーケンスファイル１６に保存する。そして、上記処理はログ情報１５の最終行のログ内容を読み込んでファイルが終了するまで続けられる。すなわち、ログ情報１５のファイルの次のログ内容を読み込み、ログ情報１５のファイルに含まれるログ内容の終りまで上記処理を行う。
【００５０】
上記のようにして生成されるシーケンスファイル１６は、コマンドの連続で記述され、１コマンドが例えばコマンド名称、コマンド成功時の次実行コマンド番号（０の場合、現在の行を永久に実行）、コマンド失敗時の次実行コマンド番号（０の場合、現在の行を永久に実行）、コマンド実行のためのパラメータを示すデータで構成される。なお、永久に実行されている処理を停止する場合は、エミュレーション動作を停止すれば良い。
【００５１】
具体的に、コマンドの種類としては、サーバ３からエミュレーション装置１（ゲートウェイ）へのデータ通信（パラメータ：通信データサイズ、通信データ内容、タイムアウト）、エミュレーション装置１からサーバ３へのデータ通信（パラメータ：通信データサイズ、通信データ内容、タイムアウト）、端末装置２からエミュレーション装置１へのデータ通信（パラメータ：通信データサイズ、通信データ内容、タイムアウト）、エミュレーション装置１から端末装置２へのデータ通信（パラメータ：通信データサイズ、通信データ内容、タイムアウト）、通信データ比較（パラメータ：比較用の通信データ）、処理遅延（パラメータ：遅延時間）、処理無し（パラメータ：なし）、処理終了（パラメータ：なし）などがある。
【００５２】
次に、モード選択設定時に選択されたシーケンスファイル１６を解析して抽出されるコマンドを実行する場合には、以下の処理が実行される。
（１）起動処理：動作モードの指定と共に指定されたモードが２または３の場合にシーケンスファイル解析機能が起動されると、コマンド解析手段１３ｅは、シーケンスファイル１６の内容をコマンド単位で読み出し、内部記憶手段１３ｃに格納する。シーケンスファイル１６の内容を全て内部記憶手段１３ｃに格納すると、コマンド読み出し・解析処理へ移行する。
【００５３】
（２）コマンド読み出し・解析処理：コマンド解析手段１３ｅは、内部記憶手段１３ｃに格納されている先頭コマンドを読み出し、内容を解析してコマンド実行処理へ移行する。
【００５４】
（３ー１）コマンド実行処理：データ送信のエミュレート時、コマンド抽出手段１３ｆは、コマンド解析手段１３ｅが読み出したコマンド名称が、現在の動作モードでエミュレートしている装置から他方へのデータ通信である場合、読み出した通信データ内容をゲートウェイ手段１３ｇへ送信するように指示する。その際のコマンド実行は常に成功とし、コマンド実行後の処理へ移行する。
【００５５】
（３−２）コマンド実行処理：データ受信のエミュレート時、コマンド抽出手段１３ｆは、コマンド解析手段１３ｅが読み出したコマンド名称が、他方から現在の動作モードでエミュレートしている装置へのデータ通信である場合、読み出した通信データ内容の受信がゲートウェイ手段１３ｇから通知されるのを待つ。その際のコマンド実行は読み出したタイムアウト時間以内に受信が通知された場合に成功、それ以外を失敗とし、コマンド実行後の処理へ移行する。この処理は、端末エミュレーションモード（モード３）の場合、エミュレーション装置１から端末装置２のデータ通信をエミュレーションしている。
【００５６】
（３−３）コマンド実行処理：処理遅延のエミュレートで、コマンド抽出手段１３ｆは、コマンド解析手段１３ｅが読み出したコマンド名称が、処理遅延である場合、読み出した遅延時間が経過するのを待つ。その際のコマンド実行は常に成功とし、コマンド実行後の処理へ移行する。この処理は、端末エミュレーションモード（モード３）の場合、端末装置２と、エミュレーション装置１間のデータ通信の遅延をエミュレーションしている。
【００５７】
（３−４）コマンド実行処理：通信データ比較で、コマンド抽出手段１３ｆは、コマンド解析手段１３ｅが読み出したコマンド名称が、通信データ比較である場合、直前に受信した通信データとシーケンスファイル１６から読み出した比較用の通信データとを比較する。その際のコマンド実行は、比較データが等しい場合に成功、それ以外は失敗とし、コマンド実行後の処理へ移行する。
【００５８】
（３−５）コマンド実行処理：処理無しで、コマンド抽出手段１３ｆは、コマンド解析手段１３ｅが読み出したコマンド名称が、処理無しである場合、何も行わない。その際のコマンド実行は常に成功とし、コマンド実行後の処理へ移行する。
【００５９】
（３−６）コマンド実行処理：処理終了で、コマンド抽出手段１３ｆは、コマンド解析手段１３ｅが読み出したコマンド名称が、処理終了である場合、何も行わない。その際のコマンド実行は常に成功とし、コマンド実行後の処理へ移行する。
【００６０】
（３−７）コマンド実行処理：その他で、コマンド抽出手段１３ｆは、コマンド解析手段１３ｅが読み出したコマンド名称が、現在の動作モードではデータ受信・データ送信処理を行わない種類のデータ通信である場合、何も行わない。その際のコマンド実行は常に成功とし、コマンド実行後の処理へ移行する。この処理は、端末エミュレーションモード（モード３）で、サーバ３からエミュレーション装置１、エミュレーション装置１からサーバ３のデータ通信等が該当する。
【００６１】
（４ー１）コマンド実行後の処理：成功時、コマンド抽出手段１３ｆは、コマンド実行の結果が成功の場合、内部記憶手段１３ｃに格納されている読み出したコマンド成功時の次実行コマンド番号のコマンドを読み出し、内容を解析し、コマンド実行処理（３−１〜７）へ戻る。
【００６２】
（４−２）コマンド実行後の処理：失敗時、コマンド抽出手段１３ｆは、コマンド実行の結果が失敗の場合、内部記憶手段１３ｃに格納されている読み出したコマンド失敗時の次実行コマンド番号のコマンドを読み出し、内容を解析し、コマンド実行処理（３−１〜７）へ戻る。
【００６３】
（５）終了処理：シーケンスファイル解析機能は、再び、動作モードの指定と共に起動されるまで何も行わず、起動処理へ戻る。これら一連の処理（（１）〜（５））はサーバエミュレーションモード（モード２）においても同様に行われる。
【００６４】
次に、図５（ａ），（ｂ）はエミュレーション装置１がゲートウェイエミュレーションモード（モード１）で動作しているときの端末装置２からサーバ３に対してＷｅｂページの閲覧要求を行った場合の動作フローチャートと、この処理時に取得されるログ情報を示している。図５の例では、端末装置２からの接続要求から接続要求に対する応答までの時間を４００ｍｓ、エミュレーション装置１から端末装置２に対して接続要求に対する応答から要求Ｗｅｂページが通信されるまでの時間を５００ｍｓ、エミュレーション装置１からサーバ３への接続要求から接続要求に対する応答までの時間を１００ｍｓ、サーバ３からの接続要求に対する応答からエミュレーション装置１にＷｅｂページが通信されるまでの時間を５００ｍｓとしている。図５（ａ）に示す動作フローチャートの処理が実行された場合には、図５（ｂ）に示すような処理内容に応じた複数行のログ情報１５が得られる。
【００６５】
そして、図５（ｂ）に示すログ情報１５が得られると、このログ情報１５から前述した処理に基づいてシーケンスファイル１６が生成される。図６は図５（ｂ）のログ情報１５に基づいて生成されたシーケンスファイル１６を示している。図６の例では、ログ１からシーケンス番号１のコマンド、ログ４からシーケンス番号２のコマンド、ログ５からシーケンス番号３のコマンド、ログ８からシーケンス番号４のコマンド、ログ９からシーケンス番号５のコマンド、ログ１２からシーケンス番号６のコマンドが生成される。そして、ログ情報１５からシーケンスのコマンド生成が終了した後に、シーケンスの終了を示す行（図６の例ではシーケンス番号７のコマンド）が追加される。なお、ログ情報１５の内容が、外部（端末装置２又はサーバ３）からエミュレーション装置１（ゲートウェイ）へのデータ通信の場合、次の同方向通信の間の時間を、コマンド実行後の遅延時間に設定する。次の同方向通信がない場合は、遅延時間を０とする。図６の例では、ログ５に対応するシーケンス番号３に、ログ５とログ９の時間差（５００ｍｓ）を遅延時間としている。
【００６６】
図６のシーケンスファイル１６をサーバエミュレーションモード（モード２）で実行する場合には、図６のシーケンス番号１〜７の各行のコマンド各行に対し次の動作が行われる。サーバエミュレーションモードで実行する必要が無いコマンドを含むシーケンス行は、実行せずに成功時次行に遷移する。すなわち図６のシーケンス番号１の行はコマンドが実行されず成功時次行に示されたシーケンス番号２に遷移する。シーケンス番号２の行はサーバエミュレーションモードで実行するコマンドが含まれるため、コマンドが実行されその実行内容に従って成功時次行または失敗時次行に示されたシーケンス番号に遷移する。上述した動作を繰り返すことで図６のシーケンス番号１〜７の各行のコマンドのうち、シーケンス番号２、３、５、７の順に各行の各コマンドが実行される。これに対し、図６のシーケンスファイル１６を端末エミュレーションモード（モード３）で実行する場合には、上述した動作と同様に図６のシーケンス番号１〜７の各行に対し、端末エミュレーションモードで実行する必要があるコマンドか実行する必要が無いコマンドか判定を行い、図６のシーケンス番号１〜７の各行のコマンドのうち、シーケンス番号１、４、６、７の順に各行のコマンドが実行される。
【００６７】
このように、モード２とモード３では共通のシーケンスファイルを用い、各モードにおいて必要なコマンドのみが実行されるが、例えば端末装置２のみ、サーバ３のみのように、片側のエミュレーションのためだけのシーケンスファイル１６を作成する場合は、それぞれのエミュレーションで必要な行のコマンドのみを記述すれば良い。
【００６８】
ところで、本例のエミュレーション装置１は、動作モードとして３種類のモード（モード１：ゲートウェイエミュレーションモード、モード２：サーバエミュレーションモード、モード３：端末エミュレーションモード）を備えている。これらモード１〜３は、ゲートウェイ装置、端末装置２またはサーバ３を選択して模擬するため、モード選択設定手段１１ａからのユーザの選択設定、または設定ファイル１７により切り替えることができる。
【００６９】
図７に示すように、モード１は、ゲートウェイエミュレーションモードであり、エミュレーション装置１が端末装置２とサーバ３間でゲートウェイ装置として動作するモードである。
【００７０】
図８はモード１で使用されるトリガー情報の記述例を示している。図８の例では、イベント番号１から順に、サーバ３からエミュレーション装置１（ゲートウェイ）へのデータ送信中の〈／ｈｔｍｌ〉検出（パラメータ：なし）、サーバ３からゲートウェイへのデータ送信（パラメータ：データ遅延、５００ｍｓ）、端末装置２からゲートウェイへのデータ受信（パラメータ：データ破棄）、ＷＤＰからＷＴＰへのデータ送信（パラメータ：ユーザ指定）がコマンドとして記述されている。なお、ユーザ指定では、イベントを表示手段１４を通してユーザに通知後、ユーザにイベントに対する処理（データ破棄、データ遅延、処理無しなど）を設定手段１１からの入力により選択させている。図示されていないが、モードの変更、実行するシーケンスファイルの指定などを行うことができる。
【００７１】
また、モード１では、ゲートウェイ機能を実現しながら、端末装置２とサーバ３間のラインをモニタして前述したログ情報１５を取得している。さらに、モード１では、予め設定したトリガー情報に合致するデータが端末装置２とサーバ３との間のライン上に発生した場合、予めトリガー情報に設定したアクションを実行することができる。例えば流れているデータの一部の遅延や削除の他、別のモード（モード２又はモード３）に移行し、指定したシーケンスファイルを実行することができる。
【００７２】
ここで、ラインモニタ中のトリガー情報のチェック動作について説明する。この動作では、ラインモニタ中のデータがトリガー情報のデータにヒットしたとき、モード変更してシーケンス制御が可能となる。また、この動作では、レイヤ毎に条件が設定できるようになっている。条件例としては、送受信の発生、データに含まれる文字列の指定、レイヤ間メッセージの指定などがある。具体的に、送受信の発生では、例えばＨＴＴＰサーバにリクエストを送信、端末（基地局）からデータを受信などがある。データに含まれる文字列の指定では、〈／ｈｔｍｌ〉という文字列を含むデータを受信した、Ｈｏｓｔ：ｗｗｗ．ａｂｃ．ｃｏｍを含むＨＴＴＰリクエストを送信したなどがある。レイヤ間メッセージの指定では、下位レイヤよりＡｃｋを受信した、上位レイヤにＩｎｖｏｋｅを送信したなどがある。
【００７３】
また、トリガー情報には、トリガー情報の条件成立時のゲートウェイの動作が設定できる。動作例としては、応答遅延、無応答、指定メッセージでの応答、受信データの改変、ユーザ入力待ちがある。具体的に、応答遅延では、受信から５００ｍｓ経過するのを待ち応答するなどがある。無応答では、受信したデータ（メッセージ）に対する応答を行わないがある。指定メッセージでの応答は、条件成立時にはＡｃｋを返すなどがある。受信データ（メッセージ）の改変では、指定された文字列を受信データから削除などがある。ユーザ入力待ちでは、条件成立時にユーザに動作を選択させる。ユーザからの入力があるまで処理を停止する。ユーザの入力は受信データ・メッセージに対する動作を指定するものであり、上述の４つの動作から選択、またはいずれも行わない選択ができる。
【００７４】
これにより、ゲートウェイの内部状態やデータを制御することができ、実ネットワーク網では発生しにくい、または発生させることができない、様々なネットワーク状態を擬似的に作り出すことができる。例えば、データ送受信の最中に接続が途絶える、パケットの欠落が発生するなどの動作試験を行うことができる。
【００７５】
次に、上記構成によるエミュレーション装置１の動作について説明する。本例のエミュレーション装置１では、モード選択設定手段１１ａからユーザの動作モード切替の指示でモードを切り替える。そして、選択設定されたモードに応じたシーケンスファイル１６を選択し、この選択したシーケンスファイル１６の必要コマンドによる処理を制御手段１３の制御により実行する。なお、ゲートウェイエミュレーションモード（モード１）中にトリガー情報設定手段１１ｂから予め設定されたトリガー情報によるトリガー条件が発生した場合には、トリガー条件として予め設定されたモードに切り替わる。
【００７６】
まず、ゲートウェイエミュレーションモード（モード１）が選択設定された場合の動作として、端末装置２−エミュレ−ション装置１−サーバ３間のデータ通信の例について図９を参照しながら説明する。
【００７７】
図９において、端末装置２−エミュレーション装置１（ゲートウェイ）間の接続動作では、端末装置２からエミュレーション装置１に対して接続要求があると、端末装置２とゲートウェイ間の接続処理を行い、エミュレーション装置１が端末装置２に接続要求への応答を送信する。
【００７８】
次の端末装置２ーサーバ３間のデータ通信動作では、端末装置２からエミュレーション装置１に対してデータ要求があると、サーバ３とゲートウェイ間の接続処理として、エミュレーション装置１がサーバ３に接続要求し、サーバ３とゲートウェイ間が接続され、サーバ３がエミュレーション装置１に接続要求への応答を送信する。そして、端末装置２からの通信データ（データ要求）をエミュレーション装置１で変換し、エミュレーション装置１がサーバ３にデータ要求を送信する。サーバ３は、エミュレーション装置１からデータ要求があると、そのデータ要求に対する応答とデータをエミュレーション装置１に送信する。エミュレーション装置１は、サーバ３から受信した通信データを変換し、データ要求に対する応答とデータを端末装置２に送信する。そして、サーバ３とゲートウェイ間の切断処理として、エミュレーション装置１がサーバ３に切断要求すると、サーバ３とゲートウェイ間が切断され、サーバ３がエミュレーション装置１に切断要求への応答を送信する。
【００７９】
そして、端末装置２ーゲートウェイ間の切断動作では、端末装置２がエミュレーション装置１に切断要求すると、端末装置２とゲートウェイ間を切断し、エミュレーション装置１が端末装置２に切断要求への応答を送信する。
【００８０】
次に、モード１においてトリガー条件設定と条件成立の通知の動作の一例について図１０を参照しながら説明する。ここでは、トリガー情報設定手段１１ｂから以下の条件でトリガー情報が設定されているものとする。トリガー条件：指定のドメインを含むデータがサーバ３から送信された場合を設定する。トリガー条件成立時の処理：５００ｍｓの処理遅延（データ送信の遅延）を行う。
【００８１】
まず、ユーザがトリガー情報設定手段１１ｂより上記トリガー条件のトリガー情報を設定すると、このトリガー情報が設定ファイル１７内部に設定される。そして、端末装置２がエミュレーション装置１にデータ要求すると、通信データを変換し、エミュレーション装置１がサーバ３にデータ要求を送信する。サーバ３は、エミュレーション装置１からデータ要求があると、データ要求に対する応答とデータをエミュレーション装置１に送信する。
【００８２】
ここで、エミュレーション装置１は、サーバ３からデータ要求に対応する応答とデータを受信すると、トリガー条件の判定として、指定のドメインを含むデータがサーバ３から送信されたと判定する。これにより、トリガー条件が成立し、エミュレーション装置１が表示手段１４を通じてユーザにトリガー条件の成立を通知する。そして、エミュレーション装置１は、トリガー条件成立時の処理として、５００ｍｓの処理遅延を実行し、通信データを変換して５００ｍｓ後にサーバ３からのデータ要求に対する応答とデータを端末装置２に送信する。なお、上述したトリガー条件の判定は、通信動作中常時行われている。また、上記動作では、ユーザにトリガー条件の成立を通知しているが、通知を行わず、処理を実行することもできる。
【００８３】
次に、モード１においてトリガー条件設定と条件成立の通知の動作の他の例（モード１からモード２に切替）について図１１を参照しながら説明する。ここでは、トリガー情報設定手段１１ｂから以下の条件でトリガー情報が設定されているものとする。トリガー条件：指定のドメインに対してのデータ要求が端末装置２から送信された場合を設定する。トリガー条件成立時の処理：動作モードをモード２へ切り替え、指定のシーケンスファイルを実行する。
【００８４】
まず、ユーザがトリガー情報設定手段１１ｂより上記トリガー条件のトリガー情報を設定すると、このトリガー情報が設定ファイル１７内部に設定される。そして、エミュレーション装置１は、端末装置２からデータ要求されると、トリガー条件の判定として、指定のドメインに対してのデータ要求が端末装置２から送信されたと判定する。これにより、トリガー条件が成立し、エミュレーション装置１が表示手段１４を通じてユーザにトリガー条件の成立を通知する。そして、エミュレーション装置１は、トリガー条件成立時の処理として、モード１からモード２に切り替え、動作モードを設定し、予め設定されたシーケンスファイルを実行する。そして、設定されたシーケンスに従って次の動作を決定する。その後、エミュレーション装置１は、シーケンスファイルで指定のデータを送信し、通信データを変換してデータ要求に対する応答とデータを端末装置２に送信する。なお、上述したトリガー条件の判定は、通信動作中常時行われている。
【００８５】
図１２に示すように、モード２（サーバエミュレーションモード）は、ゲートウェイの機能に加え、エミュレーション装置１が端末装置２に向けてサーバをエミュレーションするモードである。サーバ動作（通信内容）は、予めユーザが作成したシーケンスファイル１６やログ情報１５に基づいて生成されるシーケンスファイル１６による動作シーケンスに従う。
【００８６】
次に、サーバエミュレーションモード（モード２）が選択設定された場合の動作として、端末装置２−エミュレ−ション装置１間のデータ通信の処理内容について図１３を参照しながら簡単に説明する。例としては、端末装置２からＷｅｂページの送信の要求があったときに、エミュレーション装置１がサーバ３の代わりに端末装置２へ必要なデータを送信してＷｅｂページを閲覧する場合の処理内容である。
【００８７】
まず、ユーザがモード選択設定手段１１ａにより動作モードをモード２に設定し、動作シーケンスを設定する。エミュレーション装置１は、端末装置２からデータ要求があると、動作シーケンスに従って次の動作を決定する。その後、エミュレーション装置１は、指定のデータを送信し、通信データを変換してデータ要求に対する応答とデータを端末装置２に送信する。
【００８８】
図１４に示すように、モード３（端末エミュレーションモード）は、ゲートウェイの機能に加え、エミュレーション装置１がサーバ３に向けて端末装置２をエミュレーションするモードである。端末装置動作（通信内容）は、予めユーザが作成したシーケンスファイル１６やログ情報１５に基づいて生成されるシーケンスファイル１６による動作シーケンスに従う。
【００８９】
次に、端末エミュレーションモード（モード３）が選択設定された場合の動作として、エミュレ−ション装置１ーサーバ３間のデータ通信の処理内容について図１５を参照しながら簡単に説明する。例としては、端末装置２からＷｅｂページの送信の要求があったときに、エミュレーション装置１が端末装置２の代わりにサーバ３へデータ要求を送信してＷｅｂページを閲覧する場合の処理内容である。
【００９０】
まず、ユーザがモード選択設定手段１１ａにより動作モードをモード３に設定し、動作シーケンスを設定する。エミュレーション装置１は、動作シーケンスに従って次の動作を決定する。その後、エミュレーション装置１は、指定のデータを送信し、通信データを変換してサーバ３にデータ要求を送信する。サーバ３は、エミュレーション装置１からデータ要求があると、データ要求に対する応答とデータをエミュレーション装置１に送信する。
【００９１】
このように、本例のエミュレーション装置１は、３種類の動作モード（モード１〜３）を備え、ユーザの選択設定によりモードを切り替えることができる。従って、エミュレーション装置単体で、ユーザがモードを切り替えることにより、通常のゲートウェイのエミュレーションモード、サーバエミュレーションモード、端末エミュレーションモードを行うことができる。これにより、別々のシステムを構築することなく、モード切替で全ての動作に対応できる。また、実網で意識的に実現できないシーケンス（異常系、準正常系の実現とエラー発生時の試験対象の動作試験）をシーケンスファイルに記述することで実現することができる。
【００９２】
また、ゲートウェイエミュレーションモード（モード１）からでも、ユーザが設定するトリガー情報によってサーバエミュレーションモード（モード２）、端末エミュレーションモード（モード３）のいずれかにモード切替を行うことができる。そして、上記トリガー機能により、サーバ又は端末エミュレーションモード（モード２又はモード３）中にもユーザ任意の条件で通知やデータ変更などの動作を行うことができる。
【００９３】
さらに、本例のエミュレーション装置１では、端末装置２とサーバ３間のラインモニタ（通信データの監視）により常にログ情報を取得するので、様々な場合で取得したログ情報の比較が容易となる。そして、取得したログ情報に基づき、サーバエミュレーションモード（モード２）と端末エミュレーションモード（モード３）の両モードで共用できるシーケンスファイルを生成し、自身の動作モードに合わせてシーケンスファイルを解析し、必要なシーケンスのみ実行している。これにより、シーケンス変更時にシーケンスファイル１本の管理で済み、全体の流れも把握できる。しかも、サーバ、クライアント両方の送受信データが含まれるシーケンスファイルを生成するので、被試験装置が入れ替わっても同じシーケンスファイルで試験することができる。また、予め用意したシーケンスファイルに記載された内容のデータを送信し、被試験通信端末との対向試験を行うことも可能である。
【００９４】
ところで、ネットワーク上のサーバ３と、サーバ３とデータ通信を行う端末装置２との少なくとも一方を試験するため、上述したエミュレーション装置１における設定手段１１、記憶手段１２、制御手段１３、表示手段１４としてコンピュータを機能させるためのエミュレーションプログラムとすることもできる。
【００９５】
また、本例のエミュレーション装置１では、端末装置２のためのシーケンスファイルと、サーバ３のためのシーケンスファイルとを共用する構成としているが、これらのシーケンスファイルを別々に作成または生成し、設定されたモードに応じてシーケンスファイルを選択してコマンドによる動作手順を順次実行する構成とすることもできる。
更に、別々に作成または生成されたシーケンスファイルを設定されたモードで実行し、その通信内容をログ情報としてシーケンスファイルを生成することで、サーバまたは端末エミュレーションモード（モード２又はモード３）で共通に使用することができる。
なお、本実施形態ではＷＡＰゲートウェイを含む移動体端末とインターネット等のネットワーク上にあるサーバとの相互接続の動作試験用擬似環境をエミュレーション装置で実現した例を示しているが、ｉ−ｍｏｄｅ（Ｒ）（ｉ−ｍｏｄｅ（Ｒ）は株式会社エヌ・ティ・ティ・ドコモの登録商標）等の異種プロトコル間相互のデータ交換の場合でも同様に動作試験用擬似環境を構築できる。
【図面の簡単な説明】
【００９６】
【図１】本発明に係るエミュレーション装置を含むＷＡＰゲートウェイの実環境の概略構成図である。
【図２】本発明に係るエミュレーション装置のブロック構成図である。
【図３】（ａ）本発明に係るエミュレーション装置と端末装置との間のデータ通信に使用されるＷＡＰデータフォーマットの概略図である。  （ｂ）本発明に係るエミュレーション装置とサーバとの間のデータ通信に使用されるＴＣＰ／ＩＰデータフォーマットの概略図である。
【図４】ログ情報の項目一覧の例を示す図である。
【図５】（ａ）所定のシーケンスファイルを実行したときの動作フローチャートである。  （ｂ）（ａ）の動作時のログ情報を示す図である。
【図６】図５（ｂ）のログ情報と、ログ情報から生成されるシーケンスファイルとの対応関係を示す図である。
【図７】本発明に係るエミュレーション装置のモード１（ゲートウェイエミュレーションモード）の概念図である。
【図８】モード１で使用されるトリガー情報に記述されたトリガーに対応して定められた実行する動作の記述例を示す図である。
【図９】本発明に係るエミュレーション装置のモード１の動作手順を示すフローチャートである。
【図１０】本発明に係るエミュレーション装置のモード１においてトリガー設定時の動作手順の一例を示すフローチャートである。
【図１１】本発明に係るエミュレーション装置のモード１においてトリガー設定時の動作手順の他の例を示すフローチャートである。
【図１２】本発明に係るエミュレーション装置のモード２（サーバエミュレーションモード）の概念図である。
【図１３】本発明に係るエミュレーション装置のモード２の動作手順の概略を示すフローチャートである。
【図１４】本発明に係るエミュレーション装置のモード３（端末エミュレーションモード）の概念図である。
【図１５】本発明に係るエミュレーション装置のモード３の動作手順の概略を示すフローチャートである。
【符号の説明】
【００９７】
１  エミュレーション装置
２  端末装置
３  サーバ
４  基地局
１１  設定手段
１１ａ  モード選択設定手段
１１ｂ  トリガー情報設定手段
１２  記憶手段
１３  制御手段
１３ａ  ログ情報解析手段
１３ｂ  コマンド生成手段
１３ｃ  内部記憶手段
１３ｄ  シーケンスファイル生成手段
１３ｅ  コマンド解析手段
１３ｆ  コマンド抽出手段
１３ｇ  ゲートウェイ手段
１４  表示手段
１７  設定ファイル
【図１】
2005175915.tif 000003
【図２】
2005175915.tif 000004
【図３】
2005175915.tif 000005
【図４】
2005175915.tif 000006
【図５】
2005175915.tif 000007
【図６】
2005175915.tif 000008
【図７】
2005175915.tif 000009
【図８】
2005175915.tif 000010
【図９】
2005175915.tif 000011
【図１０】
2005175915.tif 000012
【図１１】
2005175915.tif 000013
【図１２】
2005175915.tif 000014
【図１３】
2005175915.tif 000015
【図１４】
2005175915.tif 000016
【図１５】
2005175915.tif 000017