JP2010093431A - 通信異常発生装置 - Google Patents

通信異常発生装置 Download PDF

Info

Publication number
JP2010093431A
JP2010093431A JP2008259757A JP2008259757A JP2010093431A JP 2010093431 A JP2010093431 A JP 2010093431A JP 2008259757 A JP2008259757 A JP 2008259757A JP 2008259757 A JP2008259757 A JP 2008259757A JP 2010093431 A JP2010093431 A JP 2010093431A
Authority
JP
Japan
Prior art keywords
communication
test
application data
abnormality
communication software
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.)
Granted
Application number
JP2008259757A
Other languages
English (en)
Other versions
JP5235588B2 (ja
Inventor
Yoshihiro Fukagawa
義裕 深川
Tetsuya Tamura
哲也 田村
Kazuhiro Noda
和裕 野田
Palaniappan Senthilkumar Chinnappan
パラニアッパン センティルクマール チナッパン
Toyoyuki Kato
豊行 加藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anritsu Engineering Co Ltd
Original Assignee
Anritsu Engineering Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Anritsu Engineering Co Ltd filed Critical Anritsu Engineering Co Ltd
Priority to JP2008259757A priority Critical patent/JP5235588B2/ja
Publication of JP2010093431A publication Critical patent/JP2010093431A/ja
Application granted granted Critical
Publication of JP5235588B2 publication Critical patent/JP5235588B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Maintenance And Management Of Digital Transmission (AREA)
  • Monitoring And Testing Of Exchanges (AREA)

Abstract

【課題】ネットワーク対応機器の通信プロトコルの異常試験を簡単に実現する。
【解決手段】通信異常発生装置14は、通信制御部14Aと、通信ソフトウェア15と被試験装置2との間で通信を行うため必要な情報と通信ソフトウェア15が生成するアプリケーションデータに対する異常発生動作条件とが記憶された記憶部14Dとを有し、通信ソフトウェア15とプロトコルスタック13におけるアプリケーションデータのやり取りが行われる間に配置される。通信制御部14Aは、記憶部14Dに記憶された異常発生動作条件に基づいて、通信ソフトウェア15が生成したアプリケーションデータを通信プロトコルの異常試験を行うための擬似アプリケーションデータに書き換えるとともに、この擬似アプリケーションデータをプロトコルスタック13に送る。
【選択図】図1

Description

本発明は、各種ネットワーク対応機器の通信プロトコルの異常試験を行う際に用いられる通信異常発生装置に関する。
従来より、各種ネットワーク対応機器の通信プロトコル試験は、通信相手となる試験対向装置と被試験装置とをネットワークで接続して行われる。
その際、専用のシミュレータを試験対向装置とする場合、サーバ等の実機を試験対向装置として用いる場合、PC等の端末を試験対向装置として試験用通信プログラム(以下、通信ソフトウェアと言う)を動作させる場合などがある。
しかしながら、上述した構成では、以下に示すような課題が存在していた。
(1)専用のシミュレータでは、装置自体が高価になる。
(2)サーバ等の実機では、容易に異常状態を発生させることができない。
(3)装置の構造やソースコードを読解して既存の通信ソフトウェアを改造する必要があり、その難易度が高い。
(4)多くの試験環境で用いられているサーバなどは、ソースコードが一般公開されておらず、環境も整備されていない。このため、バイナリオブジェクトしか入手できない場合が多く、改造自体ができない。
そこで、上記課題に対して、下記特許文献1に開示されるシステムが提案されている。この特許文献1に開示される回線障害発生システムは、図8に示すように、試験対向装置101と被試験装置102との間に通信異常発生装置103を配置し、それぞれの間がLANケーブルで接続される。この回線障害発生システムは、通信異常発生装置103によって異常を発生させる構成であり、試験対向装置101側の通信ソフトウェア101aを改造することなく、被試験装置102の通信プロトコルの異常試験を行うことが可能である。
特開2002−009884号公報
しかしながら、上述した特許文献1に開示される回線障害発生システムでは、以下に示すような課題が存在している。
(1)従来技術による試験構成において、データの伝送媒体が無線LAN等のようなワイヤレス環境である場合、試験対向装置から送信された無線データは、途中の異常発生装置に届くタイミングで被試験装置にも届いてしまう。すなわち、異常発生装置によって改変したパケットと改変されていないオリジナルのパケットの両方が被試験装置に届いてしまうことになる。このため、無線LANのように、被試験装置に対して改変したパケットのみを届けるためには、各装置をシールドボックス等によって遮蔽する必要があり、試験環境が非常に複雑になる。
(2)IPSecやSSLなどで暗号化通信を行う場合、通信経路上に配置した通信異常発生装置では暗号を復号しないとパケットの中身が判断できない。そのため、特定のパケットを選択して異常を発生することができない。
(3)通信異常発生装置において、TCPパケット等の偽造やセッションのなりすまし等を行った場合、試験対向装置のプロトコルスタックと、被試験装置のプロトコルスタックの状態に不整合が生じる。そのため、異常発生後に継続して試験を行うことができない。
なお、試験対向側の通信ソフトウェアと被試験装置側の通信ソフトウェア間の送受信データは、まず送信元の通信ソフトウェアから自身のプロトコルスタックに入力される。本発明では、この入力される送受信データを「アプリケーションデータ」と表記する。その後、プロトコルスタックにおいて、Ethernet(登録商標)ヘッダ、IPヘッダ、TCP/UDPヘッダなどが付与され通信相手へ送信される。本発明では、「アプリケーションデータ」と区別するため、プロコトルスタックにおいてヘッダが付与された状態の送受信データを「パケット」と表記する。
そこで、本発明は上記問題点に鑑みてなされたものであって、ネットワーク対応機器の通信プロトコルの異常試験を簡単に実現することができる通信異常発生装置を提供することを目的としている。
上記目的を達成するため、本発明の請求項1に記載された通信異常発生装置は、ネットワーク対応機器である被試験装置2とネットワーク接続される試験対向装置3に組み込んで前記被試験装置の通信プロトコルの異常試験を行うときに用いられ、ネットワーク上で通信を行うための通信ソフトウェア15と、前記被試験装置と通信するために必要な付加情報であるヘッダを前記通信ソフトウェアが生成するアプリケーションデータに付加するプロトコルスタック13とを有する通信異常発生装置14であって、
前記通信ソフトウェアと前記被試験装置との間で通信を行うために必要な情報と前記通信ソフトウェアが生成する前記アプリケーションデータに対する異常発生動作条件とが記憶された記憶部14Dを有しており、
前記通信ソフトウェアと前記プロトコルスタックにおける前記アプリケーションデータのやり取りが行われる間に配置され、
前記記憶部に記憶された異常発生動作条件に基づいて、前記通信ソフトウェアが生成した前記アプリケーションデータを前記通信プロトコルの異常試験を行うための擬似アプリケーションデータに書き換えるとともに、当該擬似アプリケーションデータを前記プロトコルスタックに送る通信制御部14Aと、を備えたことを特徴とする。
請求項2に記載された通信異常発生装置は、請求項1の通信異常発生装置において、
前記試験対向装置3が装備する物理NIC11とブリッジ接続され、複数の通信ソフトウェア15それぞれにIPアドレスを割り当てて、前記複数の通信ソフトウェアをネットワーク上で通信させるための複数の仮想NIC12を備えたことを特徴とする。
本発明に係る通信異常発生装置は、通信異常を生じさせる機能を通信ソフトウェアとプロトコルスタックとの間に配置した構成なので、プロトコルスタック13に受け渡される前のアプリケーションデータを直接変更することが可能となり、またプロトコルスタックが生成したパケットは、変更していないのでプロトコルスタックでの不整合が生じない。これにより、既存の通信ソフトウェアを改造したり、プロトコルスタックの不整合の処理をすることなく異常試験が可能となり、特に通信ソフトウェアが改造できない場合や改造の難易度が高い場合に有効である。
また、アプリケーションデータをフィルタリングするためのフィルタ定義と動作定義を組み合わせて異常発生動作条件として記憶部に記憶しておけば、様々なバリエーションの異常を発生させることが可能である。
さらに、既存の通信ソフトウェアが被試験装置のプロトコルシーケンスの一部分しか実装出来ていない場合でも、未実装部分を通信異常発生装置によって代替動作させることで試験を実施することが可能になる。また、通信仕様の変更などで通信ソフトウェアの改造が必要である場合に、通信ソフトウェアを改造することなくアプリケーションデータの書き換えが可能であり、被試験装置と通信ソフトウェアを同時に開発するような場合に有効である。
記憶部には、複数の試験対向装置を登録することが可能であり、それぞれ別々のIPアドレスを割り当てることができる。また、そのIPアドレスに応じて仮想NICを生成することが可能になる。これにより、被試験装置に対して、あたかも複数のノードが動作しているように擬似することが可能であり、複数のノードが同時にアクセスするような試験や一つのノードだけが異常であるような試験を行う場合に有効である。
以下、本発明の実施の形態を図面を参照しながら具体的に説明する。図1は本発明に係る通信異常発生装置を含むネットワーク通信異常発生装置の全体構成を示すブロック図、図2は本発明に係る通信異常発生装置を中心とする送受信データの流れを示す図、図3は本発明に係る通信異常発生装置における起動画面の一例を示す図、図4は本発明に係る通信異常発生装置における試験対向ノード設定画面の一例を示す図、図5(a),(b)は本発明に係る通信異常発生装置におけるログ確認画面の変更前後の表示の一部を示す図、図6は本発明に係る通信異常発生装置に記憶される試験対向ノード管理テーブルの一例を示す図、図7(a)〜(c)は本発明に係る通信異常発生装置に記憶される異常発生動作定義テーブルの一例を示す図である。
本例のネットワーク通信異常発生装置1は、各種ネットワーク対応機器の通信プロトコルの異常試験を行う際に用いられるもので、図1に示すように、各種ネットワーク対応機器からなる被試験装置2と、被試験装置2と通信して試験を行うためのPC等の端末からなる試験対向装置3とによって概略構成される。そして、試験の際には、被試験装置2と試験対向装置3とを1本の通信線(LANケーブル)4により接続して通信を行う。
試験対向装置3は、図1及び図2に示すように、物理NIC(Network Interface Card)11と、仮想NIC12と、プロトコルスタック13と、本発明の要部である通信異常発生装置14と、通信ソフトウェア15とを備えて構成される。
物理NIC11は、通常のPC等の端末に標準で装備されるものであって、被試験装置2との間でEthernet(登録商標)を介して通信するためのネットワークカードで構成される。
仮想NIC12は、1台のPC等の端末で複数のノードを擬似するべく、物理NIC11に複数のIPアドレスを割り当てることが可能であり、1台の試験対向装置(PC等の端末)3上でそれぞれ別々のIPアドレスを持つ通信ソフトウェア15を複数動作させる場合に設けられる。
なお、上記機能は、物理NIC11を複数台の試験対向装置3に装着することで実現可能であるが、例えば物理的に100個の物理NIC11を装着することは不可能である。このため、本例では、物理NIC11を各仮想NIC12にブリッジ接続し、1台の試験対向装置3で複数のIPアドレスを持つ装置としてエミュレーションしている。これは、既に実現されている仮想化技術で使用されている技術である。
すなわち、1つの通信ソフトウェア15に対して1つの仮想NIC12が対で関連付けられ、複数の通信ソフトウェア15を同時に動作させる場合は、それぞれの通信ソフトウェア15に対応して仮想NIC12が設けられることになる。なお、1つの通信ソフトウェア15を動作させる場合には、仮想NIC12が省かれた構成となる。
プロトコルスタック13は、通常のPC等の端末で動作するOS等に標準で装備されるもので、通信ソフトウェア15が外部機器と通信するための通信プロトコル群であり、ネットワーク上の通信機器(被試験装置2)と通信するために必要な付加情報であるヘッダをアプリケーションデータに付加する機能を有している。また、プロトコルスタック13は、図2に示すように、MAC層、IP層、TCP/UDP層、通信用I/Fを備えている。
通信異常発生装置14は、図1及び図2に示すように、通信制御部14A、設定制御部14B、ログ管理部14C、記憶部14Dを備えて構成される。
通信制御部14Aは、既存の通信ソフトウェア15と被試験装置2との間のアプリケーションデータのやり取りを制御するもので、プロトコルスタック13と通信ソフトウェア15との間に入って通信状態を把握し、試験条件に合致するか否かをフィルタリングする機能を有している。
さらに説明すると、通信制御部14Aは、図2に示すように、fake通信用I/F14Aa、擬似アプリケーションデータ生成部14Ab、管理部14Acを備えて構成される。
fake通信用I/F14Aaは、通信ソフトウェア15とプロトコルスタック13との間に入ってアプリケーションデータを抽出するためのインターフェースであり、既存のプロトコルスタック13の通信用I/Fと同じI/Fを持っている。そして、既存の通信ソフトウェア15がリンクしている通信用I/Fのライブラリの実行アドレスを後述する設定制御部14Bで設定された条件に基づいてfake通信用I/F14Aaの実行アドレスに書き換えることでアプリケーションデータがfake通信用I/F14Aaを経由することになり、アプリケーションデータが抽出できる。
ここで、上述したアプリケーションデータがfake通信用I/F14Aaを経由する仕組みについて簡単に説明する。プログラムを実行する場合、OSは、プログラム実行用に用意したプロセスのメモリ空間(PCのOSが管理するメモリ)に、実行モジュール本体と実行モジュールが依存しているDLL(ダイナミック・リンク・ライブラリ)をメモリにマッピングし、それ以降、DLL内のコードを実行モジュールのプロセスの一部として扱う。これを利用し、自作のDLLを所定のプロセスのメモリ空間に強制的にマッピングし、そこに含まれるコードを当該プロセスの一部として認識させる。この手法は一般に「DLL インジェクション」と呼ばれており、DLL名を変更したり、メモリのマッピング方法自体を変更するなど複数の方法で実現することが可能である。
擬似アプリケーションデータ生成部14Abは、fake通信用I/F14a経由でやり取りするアプリケーションデータをバッファリングし、後述する記憶部14Dに記憶されたテーブル情報に基づいてアプリケーションデータの改変、廃棄、遅延を行って擬似アプリケーションデータを生成している。
なお、擬似アプリケーションデータ生成部14Abの動作ログは、ログ管理部14Cに通知されてログ管理部14Cに逐次記憶されるようになっている。
管理部14Acは、後述する異常発生動作定義テーブル14Dbへの書込み・読出しのアクセス管理を行い、擬似アプリケーションデータ生成部14Abにフィルタ情報、動作内容を提供している。また、管理部14Acは、後述する試験対向ノード管理テーブル14Daにおいて、ノードのID、IPアドレス、通信ソフトウェア情報、仮想NICデバイスIDにより、通信ソフトウェア15の動作(どの試験対向ノードで、どのIPアドレスで、どの仮想NICを使って通信させるのか)を管理している。
なお、本例では、既存の通信ソフトウェア15をそれぞれ個別のIPアドレスを持つ試験対向(試験対向ノード)として動作させることが可能であり、図1の一点鎖線で囲まれる部分が一つの試験対向ノードを表している。1ノードには、1つの通信ソフトウェア15を動作させることが可能である。それぞれのノードは、IPアドレスで識別され、そのIPアドレスとノード上で動作させる既存の通信ソフトウェア15の情報(実行ファイルのパス、実行時のプロセスID)を一対として管理を行っている。また、それぞれのノード毎に、対応するIPアドレスを設定した仮想NIC12が割り当てられる。そして、ノードのIPアドレス、通信ソフトウェア15の情報、仮想NICの対応情報は、後述する試験対向ノード管理テーブル14Daに保持する。
設定制御部14Bは、通信異常の各種条件設定を行うユーザインタフェースであり、試験環境の設定とフィルタおよび動作の設定、通信ソフトウェア等の各種アプリケーションのリンク先を定める実行アドレスの設定を提供している。
ここで、ユーザインタフェースについて図3及び図4を参照しながら簡単に説明する。図3は通信異常発生装置14を含む試験対向装置3のGUIイメージを示しており、装置を起動したときに表示される起動画面21である。
起動画面21は、試験対向ノードの設定、フィルタ条件の設定、異常発生時のログを確認する際に操作される各種ボタン(試験対向ノード設定ボタン21a、フィルタ設定ボタン21b、ログ確認ボタン21c)を有している。また、何れかのボタンが押された際に、そのボタンに対応した詳細画面22が表示されるようになっている。
図4は図3の起動画面21において、試験対向ノード設定ボタン21aが押下されたときに詳細画面22に表示される試験対向ノード設定画面を示している。この試験対向ノード設定画面において、ユーザは、追加したい試験対向ノードがあった場合、ボタンセット23の追加ボタンを押下すると、ノードを表すノードアイコン24が画面上に追加表示される。そして、追加表示されたノードアイコン24をマウスデバイスでクリックすると、選択したノードの詳細内容がノード詳細設定画面25に表示される。
このノード詳細画面25では、試験対向ノードのIPアドレス、通信ソフトウェア15のパス情報を指定することができる。通信ソフトウェア15のパスは、直接入力する方法と、通信ソフトウェア15のアイコンをマウスでドラッグし、ノードアイコン24上にドロップすることでも設定することが可能である。
なお、ノード詳細設定画面25の仮想NICデバイスIDとプロセスIDは、ユーザが直接設定することができない情報である。また、仮想NICデバイスについては、試験対向ノードの設定を保存した際に、OSに対して通信ソフトウェア15が生成・起動命令を行い、起動した際のデバイスIDを記憶部14Dに記憶し、ノード詳細設定画面25上に表示する。また、プロセスIDは、ユーザが通信ソフトウェア15を実行する際にOSから割り当てられたものをノード詳細設定画面25上に表示する。プロセスIDが設定時に割り当てられていない場合には、図4に示すように、例えば「*****」と表示される。
また、特に図示はしないが、図3の起動画面21において、フィルタ設定ボタン21bが押下された場合には、フィルタ設定画面が詳細画面22に表示される。そして、このフィルタ設定画面において、フィルタに関する設定(フィルタID、内容)、フィルタにマッチした場合の動作設定(動作ID、種別(「改変」、「廃棄」、「遅延」)、内容)、フィルタと動作を関連付けする関連設定(ノードID、フィルタID、動作ID)が行われる。
さらに、図3の起動画面21において、ログ確認ボタン21cが押下された場合には、ログ確認画面が詳細画面22に表示される。このログ確認画面には、アプリケーションデータの送受信の記憶が時間とともに表示される画面と、画面の任意行を選択することで、その行の詳細をバイナリ表示する画面と、バイナリを文字コードとしてASCII表示する画面(図5参照)とが表示されるようになっている。
設定制御部14Bは、上述したユーザインタフェースによるユーザからの要求に対して、通信制御部14Aの管理部14Acとやり取りを行い、後述する記憶部14Dの試験対向ノード管理テーブル14Daおよび異常発生動作定義テーブル14Dbに設定情報を記憶している。
なお、試験対向ノード管理テーブル14Daや異常発生動作定義テーブル14Dbは、被試験装置2に応じて試験前に予め記憶部14Dに記憶させておく他、別途記憶させておいた各種外部記憶媒体や端末装置等から読み出して記憶部14Dに記憶させておくこともできる。
ログ管理部14Cは、通信ソフトウェア15と被試験装置2との間のアプリケーションデータのやり取りが発生したタイミング、フィルタマッチング時に、時刻とともにログを逐次記憶している。
記憶部14Dは、試験対向ノード管理テーブル14Daと異常発生動作定義テーブル14Dbとを記憶している。試験対向ノード管理テーブル14Daは、通信ソフトウェア15と被試験装置2との間で通信を行うために必要な情報として、図6に示すように、ノード(ノードID)毎に、IPアドレス、通信ソフトウェア情報、仮想NICデバイスIDを関連づけたものである。
なお、通信ソフトウェア情報には、通信ソフトウェア15の実行ファイルのパス情報とプロセス実行時のプロセスIDが保存される。また、プロセスIDは、ユーザが設定するのではなく、本例の試験対向装置3(通信異常発生装置14)によって通信ソフトウェア15が実行される際に、試験対向装置3(通信異常発生装置14)のOSによって割り当てられるIDである。
異常発生動作定義テーブル14Dbは、通信ソフトウェア15が生成するアプリケーションデータに対する異常発生動作条件として、図7(a),(b),(c)に示すように、フィルタとそのフィルタにマッチした場合の動作の関連を保持するためのフィルタ−動作関連テーブル14Db−1と、フィルタの詳細を定義したフィルタ定義テーブル14Db−2と、動作の詳細を定義した動作定義テーブル14Db−3の3つのテーブルで構成される。
フィルタ−動作関連テーブル14Db−1は、図7(a)に示すように、フィルタIDとそのフィルタにマッチした場合に作動させる動作IDを関連づけしたもので、各ノード(ノードID)単位で定義することが可能である。
なお、フィルタ−動作関連テーブル14Db−1におけるフィルタIDと動作IDは再利用が可能である。例えば、図7(a)の例では、ノード1に設定したフィルタID=1と同じフィルタをノード2にも適用している。また、動作IDについてもノード1のフィルタID=2で実施する動作ID=1001と同様の動作IDをノード2においても適用している。
フィルタ定義テーブル14Db−2は、フィルタの詳細条件を定義したもので、図7(b)に示すように、トランスポート層のアプリケーションデータを先頭としたOFFSET値(どこのデータからフィルタするかを指定)と、フィルタ対象とするデータのバイト数であるLENGTH(どこまでフィルタするかを指定)と、EQ(値が同じであることを意味する)か、NEQ(値が違うことを意味する)のいずれかの比較方法と、それに続いて、比較するデータの値をノード(ノードID)単位で記述する。
動作定義テーブル14Db−3は、動作の詳細定義を保持するもので、動作の種別には、図7(c)に示すように、「廃棄」、「改変」、「遅延」の3種類がある。「廃棄」はアプリケーションデータを廃棄することを意味している。「遅延」は、内容に記述されたWAIT=の値(ms単位)の時間分、アプリケーションデータの送受信を遅延させることを意味している。「改変」は、OFFSETとLENGTHで指定されたデータ部分を、CHANGE=で指定された値に書き換えることを意味している。
通信ソフトウェア15は、ネットワーク上で通信を行うためのものであり、被試験装置2の通信対向となる既存のソフトウェアであって、試験対向装置3内に1つ乃至複数設けられ(図1の例では2つ)、それぞれ別々のIPアドレスを割り当てることが可能で、複数同時に動作させることも可能である。
なお、本例では、それぞれの通信ソフトウェア15を識別する単位として「ノード」という表現を用いている。
次に、上記構成によるネットワーク通信異常発生装置1における送受信データの流れについて図2を参照しながら簡単に説明する。
なお、図2において、従来のパケットデータの流れを点線矢印で示し、本例における送受信データの流れを実線矢印で示している。
従来のパケットデータの流れは、既存の通信ソフトウェア15からアプリケーションデータを送信する場合、図2に示すように、プロトコルスタック13が提供する通信用I/Fを経由して、TCP/IPの各レイヤを通過して物理NIC11へとデータが受け渡される。受信の場合は反対経路でアプリケーションデータが受け渡される。
これに対し、上述した本例の構成を採用すると、既存の通信ソフトウェア15からアプリケーションデータを送信する場合、図2に示すように、通信ソフトウェア15からfake通信用I/F14Aa、擬似アプリケーションデータ生成部14Abと経由して、プロトコルスタック13へアプリケーションデータが受け渡される。受信の場合はその逆である。
次に、本例のネットワーク通信異常発生装置1における具体的な試験の流れの一例について説明する。
ここでは、一例として、被試験装置2をWebサーバ、試験対向装置3内で動作する既存の通信ソフトウェア15をWebブラウザとして試験を実施する場合の流れについて説明する。
なお、通信ソフトウェア15には、例で示したWebブラウザの他に、WebサーバやFTPサーバ、クライアント、DHCPサーバ、DNSサーバなど様々なネットワーク通信ソフトウェアを適用することが可能である。
・異常発生内容
WebブラウザとWebサーバ間の通信において、WebクライアントからのGETメソッドを以下のように改変した場合のWebサーバの内部状態と返送メッセージを確認する。WebサーバのIPアドレスは、192.168.1.100、WebクライアントのIPアドレスを192.168.1.1とする。
・試験の流れ
(1)試験環境の設定
装置を起動して図3に示す起動画面21の試験対向ノード設定ボタン21aを例えばマウスでクリックすると、図4に示す試験対向ノード設定画面を詳細画面22に表示する。続いて、試験対向ノード設定画面において、ボタンセット23の追加ボタンを押下すると、新規ノードのノードアイコン24を表示する。
次に、ノードアイコン24として表示された「ノード ID=1」をクリックすると、クリックしたノードの詳細設定画面25を表示する。このノードの詳細設定画面25において、IPアドレスには、WebクライアントのIPアドレスである192.168.1.1を入力する。また、Webクライアントのパスには、例えば今回使用するWebクライアントソフトウェアの「Mozilla Firefox(登録商標)」のパスを入力する。この際、「Mozilla Firefox(登録商標)」のアイコンをノードアイコン24にドラッグ&ドロップしてもパスを設定することも可能である。
以上の入力を終えた後にボタンセット23の保存ボタンを押下すると、IPアドレスと通信ソフトウェア情報が記憶部14Dの試験対向ノード管理テーブル14Daに記憶される。続いて、仮想NICデバイスの生成・起動を行い、記憶部14Dの試験対向ノード管理テーブル14Daに記憶しているIPアドレスを仮想NICデバイスに設定する。そして、仮想NICデバイスの生成時に取得できるデバイスIDを記憶部14Dの試験対向ノード管理テーブル14Daに記憶する。
(2)異常発生条件の設定
図3に示す起動画面21のフィルタ設定ボタン21bを例えばマウスでクリックすると、フィルタ設定画面を詳細画面22に表示する。このフィルタ設定画面において、ボタンセットの追加ボタンを押下した後、フィルタ設定画面のフィルタID領域にフィルタIDとして「1」を入力する。また、フィルタ設定画面の内容領域に、OFFSET=11バイト目から3バイトのデータが「1.1」である場合にフィルタにマッチさせる旨の内容を入力する。以上の入力を終えた後にフィルタ設定画面の保存ボタンを押下する。これにより、フィルタID=1のエントリがフィルタ定義テーブル14Db−2に記憶される。
続いて、動作設定画面の追加ボタンを押下し、動作設定画面の動作ID領域に対し、動作IDとして「1000」を入力する。また、動作設定画面の種別領域で「改変」を選択し、「1.1」から「5.0」に変更するためのフィルタ内容を動作設定画面の内容領域に入力する。以上の入力を終えた後に動作設定画面の保存ボタンを押下する。これにより、動作ID=1000のエントリが動作定義テーブル14Db−3に記憶される。
続いて、関連設定画面の追加ボタンを押下すると、関連設定画面のノードID領域に「1」が設定される。そして、関連設定画面のフィルタIDで「1」を選択し、動作IDで「1000」を選択した後に関連設定画面の保存ボタンを押下すると、ノードID=1、フィルタID=1、動作ID=1000のエントリがフィルタ−動作関連テーブル14Db−1に記憶される。
(3)試験実施
Webサーバである被試験装置2とWebブラウザが動作する試験対向装置3をEthernet(登録商標)ケーブルで接続する。その後、Webブラウザを起動し、WebサーバのホームページURLを指定してアクセスすると、WebブラウザがGETメソッドメッセージを通信制御部14Aのfake通信用I/F14Aaを経由して送信する。
その際、fake通信用I/F14Aaは、記憶部14Dの試験対向ノード管理テーブル14Daを確認し、メッセージを送信した通信ソフトウェア15がどのノードIDかを把握する。そして、fake通信用I/F14Aaは、送信するメッセージとノードIDを擬似アプリケーションデータ生成部14Abに引き渡す。
続いて、管理部14Acは、引き渡したメッセージとノードIDに基づいて記憶部14Dのフィルタ定義テーブル14Db−2と動作定義テーブル14Db−3を検索し、マッチするか否かを検証する。そして、フィルタにマッチした場合は、該当する動作定義にしたがって、アプリケーションデータを改変する。この際、擬似アプリケーションデータ生成部14Abは、ログ管理部14Cに対して、ログを記憶するよう要求し、ログ管理部14Cがログを記憶する。
そして、fake通信用I/F14Aaは、プロトコルスタック13の通信用I/Fに改変後のGETメソッドメッセージを引き渡す。この引き渡されたデータは、プロトコルスタック13を経由し、送信元IPアドレスにしたがって、仮想NICデバイスを経由してメッセージを送信する。
なお、送信元IPアドレスと仮想NICの関連付けは、プロトコルスタック13のIP層およびMAC層の機能によって自動的に行われる。
その後、Webサーバから応答メッセージが返送されると、受信したデータは、プロトコルスタック13を経由してfake通信用I/F14Aaに引き渡される。fake通信用I/F14Aaは、引き渡されたメッセージを擬似アプリケーションデータ生成部14Abに引き渡し、ログ管理部14Cがそのときのログを記憶する。その後、fake通信用I/F14Aa経由で通信ソフトウェア15にデータが引き渡される。
(4)異常発生結果確認
図3に示す起動画面21のログ確認ボタン21cを例えばマウスでクリックすると、ログ確認画面を詳細画面22に表示する。このログ確認画面において、該当するアプリケーションデータを例えばマウスでクリックすると、該当アプリケーションデータの詳細を表示する。ユーザは、フィルタの設定どおり、「1.1」という文字列が「5.0」に変更されて出力されていることを表示から確認する(図5(a),(b)の点線で囲まれた文字列)。また、Webサーバ上のログなどでWebサーバの挙動を確認する。さらに、ログ確認画面において、Webサーバから返送されてきたメッセージの内容を確認する。また、Webクライアントの画面やログなどを確認して、Webクライアントの挙動を確認する。
このように、本例のネットワーク通信異常発生装置によれば、通信異常発生装置14をプロトコルスタック13と通信ソフトウェア15との間に配置して試験対向装置3に組み込む構成により、プロコトルスタック13に受け渡される前のアプリケーションデータを直接変更することが可能となり、通信ソフトウェア15とプロトコルスタック13との間の依存関係を維持、制御しながら通信異常を発生させることができる。これにより、既存の通信ソフトウェアを改造することなく異常試験を行うことができ、通信ソフトウェアの改造ができない場合や改造の難易度が高い場合などにおいて有効である。
異常発生動作条件として、アプリケーションデータをフィルタリングするためのフィルタ定義と動作定義を定義し、それぞれの組み合わせを図6及び図7に示すようなテーブル形式で関連付けて記憶部14Aに記憶保持させておけば、フィルタを変更するだけで様々なバリエーションの異常を発生させて試験を実施することが可能となる。
既存の通信ソフトウェア15が被試験装置2のプロトコルシーケンスの一部分しか実装できていない場合でも、未実装部分を異常発生動作条件に基づくフィルタ処理により代替動作させることで試験を実施することが可能となる。また、通信仕様の変更などで通信ソフトウェア15の改造が必要である場合に、通信ソフトウェア15を改造することなくフィルタの変更によってアプリケーションデータを書き換えることが可能となり、被試験装置2と通信ソフトウェア15を同時に開発するような場合に有効である。
試験対向ノード管理テーブル14Daには、複数の通信ソフトウェア15を登録することが可能で、それぞれ別々のIPアドレスを割り当てることができる。しかも、そのIPアドレスに応じて仮想NIC12を生成することが可能となる。これにより、被試験装置2に対して、あたかも複数のノードが動作しているように擬似することが可能となり、複数のノードが同時にアクセスするような試験や一つのノードだけが異常であるような試験を行う場合に有効である。
IPSecなどはプロトコルスタック13が暗号化や圧縮を行うが、プロトコルスタック13が行う暗号化前のアプリケーションデータに対して、異常を発生させることにより容易に暗号化通信での異常発生が可能になる。
プロトコルスタック13に対しても制御することが可能であり、プロトコルスタック13の状態を確認したり、通信路に対するパラメータの変更なども可能となり、プロトコルスタック13の状態を維持しながら通信異常を発生させることができる。
通信ソフトウェア15がプロトコルスタック13に送信要求を行ったタイミングで送信動作をブロックすることが可能となり、通信ソフトウェア15自体の動作を一時停止させるなどの制御を行うことができる。以上により、既存の通信ソフトウェアを改造することなく、暗号化通信時の異常試験や異常発生後の継続試験が可能になる。
ところで、上述した実施の形態では、被試験装置2と試験対向装置3との間が通信線4により有線接続された構成について説明したが、無線LANによって被試験装置2と試験対向装置3との間をネットワーク接続する構成としてもよい。この場合、従来のように、シールドボックスなどによって各装置を遮蔽する必要もなく、試験対向装置3に組み込まれた通信異常発生装置14で異常発生を行うことができる。
本発明に係る通信異常発生装置を含むネットワーク通信異常発生装置の全体構成を示すブロック図である。 本発明に係る通信異常発生装置を中心とする送受信データの流れを示す図である。 本発明に係る通信異常発生装置における起動画面の一例を示す図である。 本発明に係る通信異常発生装置における試験対向ノード設定画面の一例を示す図である。 (a),(b) 本発明に係る通信異常発生装置におけるログ確認画面の変更前後の表示の一部を示す図である。 本発明に係る通信異常発生装置に記憶される試験対向ノード管理テーブルの一例を示す図である。 (a)〜(c) 本発明に係る通信異常発生装置に記憶される異常発生動作定義テーブルの一例を示す図である。 特許文献1に開示される回線障害発生システムの概略構成図である。
符号の説明
1 ネットワーク通信異常発生装置
2 被試験装置
3 試験対向装置
4 通信線
11 物理NIC
12 仮想NIC
13 プロトコルスタック
14 通信異常発生装置
14A 通信制御部
14Aa fake通信用I/F
14Ab 擬似アプリケーションデンータ生成部
14Ac 管理部
14B 設定制御部
14C ログ管理部
14D 記憶部
14Da 試験対向ノード管理テーブル
14Db 異常発生動作定義テーブル
14Db−1 フィルタ−動作関連テーブル
14Db−2 フィルタ定義テーブル
14Db−3 動作定義テーブル
15 通信ソフトウェア
21 起動画面
21a 試験対向ノード設定ボタン
21b フィルタ設定ボタン
21c ログ確認ボタン
22 詳細画面
23 ボタンセット
24 ノードアイコン
25 ノード詳細設定画面

Claims (2)

  1. ネットワーク対応機器である被試験装置(2)とネットワーク接続される試験対向装置(3)に組み込んで前記被試験装置の通信プロトコルの異常試験を行うときに用いられ、ネットワーク上で通信を行うための通信ソフトウェア(15)と、前記被試験装置と通信するために必要な付加情報であるヘッダを前記通信ソフトウェアが生成するアプリケーションデータに付加するプロトコルスタック(13)とを有する通信異常発生装置(14)であって、
    前記通信ソフトウェアと前記被試験装置との間で通信を行うために必要な情報と前記通信ソフトウェアが生成する前記アプリケーションデータに対する異常発生動作条件とが記憶された記憶部(14D)を有しており、
    前記通信ソフトウェアと前記プロトコルスタックにおける前記アプリケーションデータのやり取りが行われる間に配置され、
    前記記憶部に記憶された異常発生動作条件に基づいて、前記通信ソフトウェアが生成した前記アプリケーションデータを前記通信プロトコルの異常試験を行うための擬似アプリケーションデータに書き換えるとともに、当該擬似アプリケーションデータを前記プロトコルスタックに送る通信制御部(14A)と、を備えたことを特徴とする通信異常発生装置。
  2. 前記試験対向装置(3)が装備する物理NIC(11)とブリッジ接続され、複数の通信ソフトウェア(15)それぞれにIPアドレスを割り当てて、前記複数の通信ソフトウェアをネットワーク上で通信させるための複数の仮想NIC(12)を備えたことを特徴とする請求項1記載の通信異常発生装置。
JP2008259757A 2008-10-06 2008-10-06 通信異常発生装置 Active JP5235588B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008259757A JP5235588B2 (ja) 2008-10-06 2008-10-06 通信異常発生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008259757A JP5235588B2 (ja) 2008-10-06 2008-10-06 通信異常発生装置

Publications (2)

Publication Number Publication Date
JP2010093431A true JP2010093431A (ja) 2010-04-22
JP5235588B2 JP5235588B2 (ja) 2013-07-10

Family

ID=42255765

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008259757A Active JP5235588B2 (ja) 2008-10-06 2008-10-06 通信異常発生装置

Country Status (1)

Country Link
JP (1) JP5235588B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014060634A (ja) * 2012-09-19 2014-04-03 Anritsu Corp 試験システム及び試験方法並びに試験装置
JP2016213736A (ja) * 2015-05-12 2016-12-15 コハダ株式会社 試験プログラム及び試験装置
WO2020129531A1 (ja) * 2018-12-20 2020-06-25 日立オートモティブシステムズ株式会社 車両用電子制御装置、異常信号生成方法、異常信号生成プログラム
CN111880134A (zh) * 2020-06-24 2020-11-03 南方电网科学研究院有限责任公司 一种电子式互感器测量系统品质异常的测试方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05167650A (ja) * 1991-12-12 1993-07-02 Nec Corp Osiコンフォーマンス試験システム
JPH06188952A (ja) * 1992-12-22 1994-07-08 Matsushita Electric Works Ltd プロトコル検証装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05167650A (ja) * 1991-12-12 1993-07-02 Nec Corp Osiコンフォーマンス試験システム
JPH06188952A (ja) * 1992-12-22 1994-07-08 Matsushita Electric Works Ltd プロトコル検証装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014060634A (ja) * 2012-09-19 2014-04-03 Anritsu Corp 試験システム及び試験方法並びに試験装置
JP2016213736A (ja) * 2015-05-12 2016-12-15 コハダ株式会社 試験プログラム及び試験装置
WO2020129531A1 (ja) * 2018-12-20 2020-06-25 日立オートモティブシステムズ株式会社 車両用電子制御装置、異常信号生成方法、異常信号生成プログラム
JP2020101877A (ja) * 2018-12-20 2020-07-02 日立オートモティブシステムズ株式会社 車両用電子制御装置、異常信号生成方法、異常信号生成プログラム
JP7204471B2 (ja) 2018-12-20 2023-01-16 日立Astemo株式会社 車両用電子制御装置、異常信号生成方法、異常信号生成プログラム
CN111880134A (zh) * 2020-06-24 2020-11-03 南方电网科学研究院有限责任公司 一种电子式互感器测量系统品质异常的测试方法及装置
CN111880134B (zh) * 2020-06-24 2023-01-03 南方电网科学研究院有限责任公司 一种电子式互感器测量系统品质异常的测试方法及装置

Also Published As

Publication number Publication date
JP5235588B2 (ja) 2013-07-10

Similar Documents

Publication Publication Date Title
US8554534B2 (en) Virtualized policy tester
US10686568B2 (en) Active flow diagnostics for cloud-hosted networks
CN108965203B (zh) 一种资源访问方法及服务器
US9712486B2 (en) Techniques for the deployment and management of network connected devices
US7921197B2 (en) Dynamic configuration of virtual machines
CN101388800B (zh) 对服务器的网络性能进行压力测试的方法、设备及系统
WO2016042587A1 (ja) 攻撃観察装置、及び攻撃観察方法
CN104219330A (zh) 一种基于web代理进行录屏审计的方法及系统
JP7045050B2 (ja) 通信監視システム及び通信監視方法
CN108881425B (zh) 一种数据包处理方法及系统
CN112988608B (zh) 数据测试方法、装置、计算机设备及存储介质
JP5235588B2 (ja) 通信異常発生装置
CN112231209A (zh) 参数获取方法、装置、计算机设备和存储介质
US11621908B2 (en) Methods, systems and computer readable media for stateless service traffic generation
Hine et al. Scalable emulation of enterprise systems
Gallenstein Integration of the network and application layers of automatically-configured programmable logic controller honeypots
CN117478570B (zh) 基于容器化技术的设备测试方法、装置及存储介质
CN112910666B (zh) 设备处理数据包的仿真方法、装置和计算机设备
Spiekermann et al. Encapcap: Transforming Network Traces to Virtual Networks
CN115442158B (zh) 一种网络请求方法、系统及存储介质和终端设备
Krainyk et al. Software-defined network application-aware controller for Internet-of-Things
Mente MASTERARBEIT/MASTER’S THESIS
Kloiber et al. Test-beds and guidelines for securing IoT products and for
Girtz Dynamic Honeypot Configuration for Programmable Logic Controller Emulation
JP2006135704A (ja) ルーターおよびその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110516

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121211

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130204

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130326

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5235588

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160405

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350