(57)【特許請求の範囲】
【請求項１】
ネットワーク内の端末から供された通信プロトコルデータに基づきロギング対象出力データを出力する機能を有する通信プロトコルデータ取得手段と、
この通信プロトコルデータ取得手段から供給されたロギング対象出力データを格納する共有メモリと、
この共有メモリに格納されたデータを引き出すデータ収集手段と
によってネットワークのエラーを検出する方法であって、
前記共有メモリはエラー検出用のパラメータ領域を有し、
前記通信プロトコルデータ取得手段が、ネットワークアダプタのステータスの取得要求を発行してステータス情報を取得し、このステータス情報にてデータ編集中にエラーが発生したことを検出した場合に前記パラメータ領域に当該エラーのステータスを書き込む過程と、
前記パラメータ領域内の前記エラーのステータスを前記データ収集手段が前記ネットワーク内の他の端末に送信する過程と
を有すること
を特徴とするネットワークのエラー検出方法。
【請求項２】
前記エラーはネットワークのケーブル抜けであることを特徴とする請求項１に記載のネットワークのエラー検出システム。
【請求項３】
前記エラーはパケットの取りこぼしであることを特徴とする請求項１に記載のネットワークのエラー検出システム。
【請求項４】
ネットワーク内の端末から供された通信プロトコルデータに基づきロギング対象出力データを出力する機能を有する通信プロトコルデータ取得手段と、
この通信プロトコルデータ取得手段から供給されたロギング対象出力データを格納する共有メモリと、
この共有メモリに格納されたデータを引き出すデータ収集手段と
を備え、
前記共有メモリはエラー検出用のパラメータ領域を有し、
前記通信プロトコルデータ取得手段は、ネットワークアダプタのステータスの取得要求を発行してステータス情報を取得し、このステータス情報にてデータ編集中にエラーが発生したことを検出した場合に前記パラメータ領域に当該エラーのステータスを書き込み、
前記データ収集手段は前記パラメータ領域内の前記エラーのステータスを前記ネットワーク内の他の端末に送信すること
を特徴とするネットワークのエラー検出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はイーサネット（登録商標）に例示されるＬＡＮ規格に準拠するネットワークを介して接続される端末同士で通信データをキャプチャリングして編集する技術に関する。
【背景技術】
【０００２】
イーサネットに準拠するローカルエリアネットワークにおいては、その回線を流れるＴＣＰ／ＩＰデータの収集時にネットワークケーブル抜け等の原因で正常にデータをキャプチャリングできなかった場合には編集側の端末のみでエラー表示されるようになっている（例えば特許文献１や特許文献２等）。
【特許文献１】特開２００５−９２７９１
【特許文献２】特開平５−３５５１９
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、キャプチャリングしたデータの編集中にエラーが発生した端末のモニター装置の電源が投入されていない場合、その端末で異常が発生していたかを知る術がない。
【０００４】
また、キャプチャリングしたデータを外部の端末へ送信する場合、そのデータが送信されてこない原因を受信側の端末で知ることができなかった。
【課題を解決するための手段】
【０００５】
そこで、前記課題を解決するためのネットワークのエラー検出方法は、ネットワーク内の端末から供された通信プロトコルデータに基づきロギング対象出力データを出力する機能を有する通信プロトコルデータ取得手段と、この通信プロトコルデータ取得手段から供給されたロギング対象出力データを格納する共有メモリと、この共有メモリに格納されたデータを引き出すデータ収集手段とによってネットワークのエラーを検出する方法であって、前記共有メモリはエラー検出用のパラメータ領域を有し、前記通信プロトコルデータ取得手段が、ネットワークアダプタのステータスの取得要求を発行してステータス情報を取得し、このステータス情報にてデータ編集中にエラーが発生したことを検出した場合に前記パラメータ領域に当該エラーのステータスを書き込む過程と、前記パラメータ領域内の前記エラーのステータスを前記データ収集手段が前記ネットワーク内の他の端末に送信する過程とを有する。
【０００６】
また、前記課題を解決するためのネットワークのエラー検出システムは、ネットワーク内の端末から供された通信プロトコルデータに基づきロギング対象出力データを出力する機能を有する通信プロトコルデータ取得手段と、この通信プロトコルデータ取得手段から供給されたロギング対象出力データを格納する共有メモリと、この共有メモリに格納されたデータを引き出すデータ収集手段とを備え、前記共有メモリはエラー検出用のパラメータ領域を有し、前記通信プロトコルデータ取得手段は、ネットワークアダプタのステータスの取得要求を発行してステータス情報を取得し、このステータス情報にてデータ編集中にエラーが発生したことを検出した場合に前記パラメータ領域に当該エラーのステータスを書き込み、前記データ収集手段は前記パラメータ領域内の前記エラーのステータスを前記ネットワーク内の他の端末に送信する。
【０００７】
以上のネットワークのエラー検出方法及びそのシステムによればネットワークの共有メモリにエラー検出用パラメータ領域が確保され、データ編集中にエラーが発生した場合に前記領域にエラーステータスが書き込まれる。そして、共有メモリに書き込まれたデータはネットワーク内の端末に送信される。
【０００８】
尚、前記ネットワークのエラー検出方法及びそのシステムにおいては、前記エラーとしてはネットワークのケーブル抜けやパケットの取りこぼしが挙げられる。
【発明の効果】
【０００９】
したがって、以上の発明によればキャプチャリング実行時にエラーが起きた場合、ネットワーク内の端末及びプロセスにおいてエラーを検出できる。
【発明を実施するための最良の形態】
【００１０】
図１は発明の実施形態に係るエラー検出システム１のプロセス構成図である。
【００１１】
エラー検出システム１はＴＣＰ／ＩＰデータ取得プロセス２とデータ収集Ｃｏｒｅシステムプロセス群３と収集データ受信プロセス４を実行する。
【００１２】
ＴＣＰ／ＩＰデータ取得プロセス２は通信データキャプチャスレッド２１とパケットデータ格納スレッド２２とキャプチャデータ解析スレッド２３とロギング対象データ出力スレッド２４を実行する。さらにはキャプチャドライバ内エラー検出スレッド２５とケーブル抜け検出スレッド２６とメインスレッド２７を実行する。メインスレッド２７は各スレッドの起動及び終了を待つ。
【００１３】
図１を参照しながらエラー検出システム１におけるデータの流れについて（エラーステータスへデータを書き込む手順を含めて）説明する。
【００１４】
キャプチャドライバ内エラー検出スレッド２５とケーブル抜け検出スレッド２６とが起動している状態で、通信データキャプチャスレッド２１はキャプチャドライバ２０から受け取ったキャプチャデータをパイプ送信によってパケットデータ格納スレッド２２に供する。尚、キャプチャドライバ２０はパケットキャプチャドライバとＤＬＬ（Ｄｙｎａｍｉｃ Ｌｉｎｋ Ｌｉｂｒａｒｙ）の機能を有している。
【００１５】
パケットデータ格納スレッド２２はパイプ送信によってキャプチャデータをキャプチャデータ解析スレッド２３に供する。また、パケットデータ格納スレッド２２は必要に応じてキャプチャデータをコモンデータに変換（キャプチャデータ成型）したものをキャプチャデータ解析スレッド２３に供する。
【００１６】
キャプチャデータ解析スレッド２３で解析されたデータはパイプ送信によってロギング対象データ出力スレッド２４に供される。そして、ロギング対象データ出力スレッド２４から出力されたロギング対象データはトレースデータ用共有メモリ５及びイベントデータ用共有メモリ６に書き込まれる。
【００１７】
データ収集Ｃｏｒｅシステムプロセス群３はトレースデータ用共有メモリ５またはイベントデータ用共有メモリ６から引き出したデータを収集データ受信プロセス４に送信する。
【００１８】
例えば、エラーが検出された場合、そのデータがロギング対象データ出力スレッド２４に送信される。前記データは共有メモリ（例えばイベントデータ用共有メモリ６）内のエラーステータス用領域に書き込まれる。前記共有メモリに書き込んだデータは収集データ受信プロセス４を実行する外部の端末へ送信される。エラー発生時にはエラー検出が可能となる。
【００１９】
また、図２はエラー検出システム１のプロセス起動処理の説明図である。
【００２０】
プロセス起動後、ＴＣＰ／ＩＰデータ取得プロセス２では、各種設定ファイル（例えばデータキャプチャ用設定ファイル（パケットキャプチャ用設定ファイル）１１、共有メモリファイル１２等）からプロセス稼動に必要なデータをコモンデータ２８として取得する。次いで、イーサネットフレームデータのキャプチャが準備完了するタイミングでマンマシンプロセス１０に起動完了を報告する。
【００２１】
本プロセスでは例えば以下のファイルから設定情報を取得する。
【００２２】
１．共有メモリ設定ファイル（ＣｏｍｍｏｎＭｅｍｏｒｙ．ｘｍｌ）
本プロセスが書き込む共有メモリに関する情報の定義ファイル（ＸＭＬフォーマット）。
【００２３】
２．パラメータ設定ファイル（Ｐａｒａｍｅｔｅｒ．ｘｍｌ）
本プロセスが取得対象とするパラメータ及び共有メモリ書き込み位置オフセットに関する情報の定義ファイル（ＸＭＬフォーマット）。
【００２４】
３．パケットキャプチャ用設定ファイル（ｐｒｏｃｃａｐ＿ｉｎｆｏ．ｃｓｖ、ｐｒｏｃｔｒｘ＿ｉｎｆｏ．ｃｓｖ）
パケットキャプチャドライバで使用されるＩＰアドレス設定等の各種設定値の定義ファイル。例えば（ア）及び（イ）のファイルが挙げられる。
【００２５】
（ア）キャプチャリング機能設定ファイルから以下に例示されるデータが読み込まれる。
【００２６】
・ネットワークアダプタ名
・パケットキャプチャドライバ内バッファサイズ
・最大ロギング対象メッセージサイズ
・受信時タイムアウト時間
・データ部格納バッファサイズ
・ＳＥＱ番号管理テーブルサイズ
・ケーブル抜け検出有無（０：検出なし，１：検出あり）
・エラーステータス用パラメータ名称
（イ）通信設定ファイルから以下に例示されるデータが読み込まれる。
【００２７】
・装置側ＩＰアドレス
・装置側ポート番号
・ホスト側ＩＰアドレス
・ホスト側ポート番号
・アクティブ側エンティティ
そして、起動時にエラー検出用パラメータを定義したファイルを読み込み、エラー検出時に共有メモリへ書き込むパラメータを決定する。
【００２８】
図３はエラー検出システム１によるケーブル抜け検出スレッド処理の一例を説明したフローチャートである。
【００２９】
１．初期処理
（１）ＮＩＣ（Ｎｅｔｗｏｒｋ Ｉｎｔｅｒｆａｃｅ Ｃａｒｄ）であるネットワークアダプタ（デバイス）に対するハンドルを作成する。
【００３０】
（２）ネットワークアダプタの状態（ステータス）を取得する要求を発行する。ネットワークアダプタがケーブル抜け検出に対応しているか判断するためである。
【００３１】
（３）イニシャライズ処理の成功または失敗の戻り値をセットし、以下のメイン処理の（１）に移行する。
【００３２】
２．メイン処理
（１）イニシャライズの成功または失敗に応じてその旨を表すイベントを発行する（Ｓ１）。イニシャライズの失敗の場合は終了する。
【００３３】
（２）ネットワークアダプタの状態を取得する要求を発行する（Ｓ２）。
【００３４】
（３）ネットワークアダプタの状態が「ケーブル抜け」を表していた場合（Ｓ３）、ケーブル抜けを検出した旨をロギング対象データ出力スレッドに報告する（Ｓ４）。さらに「ケーブル抜け」をイベントビューアログに報告する（Ｓ５）。「ケーブル抜け」をマンマシンプロセスに報告する（Ｓ６）。
【００３５】
（４）マンマシンプロセスへの報告はメールスロットを介して行う。
【００３６】
（５）排他制御を行う。
【００３７】
（６）ステータス検知用パラメータに（ｚ＿ｓｔｓ＿ｕｉ＝１）を設定する。
【００３８】
（７）排他制御を解除する。その後、（１０）へ進む。
【００３９】
（８）ネットワークアダプタの状態が「ケーブル抜け」を表していない場合、（１０）へ進む。
【００４０】
（９）イニシャライズ処理で取得したケーブル抜け検出周期の間は停止する（Ｓ７）。その後、（３）に戻る。
【００４１】
図４はエラー検出システム１によるパケットキャプチャドライバ内エラー検出スレッド処理の一例を説明したフローチャートである。
【００４２】
１．初期処理
本スレッドでのイニシャライズ処理は存在しない。
【００４３】
２．メイン処理
（１）イニシャライズ処理完了イベントを発行する。実際にはイニシャライズ処理は存在しない。
【００４４】
（２）パケットキャプチャドライバのステータスを取得する関数をコールする（Ｓ８）。
【００４５】
（３）ステータスをもとに「パケットの取りこぼし」を検出した場合（Ｓ９）、ロギング対象データ出力スレッドに報告する（Ｓ１０）。さらに「パケットの取りこぼし」をイベントビューアログに報告する（Ｓ１１）する。「パケットの取りこぼし」をマンマシンプロセスに報告する（Ｓ１２）。
【００４６】
（４）マンマシンプロセスへの報告はメールスロットを介して行う。
【００４７】
（５）排他制御を行う。
【００４８】
（６）ステータス検知用パラメータに（ｚ＿ｓｔｓ＿ｕｉ＝２）を設定する。
【００４９】
（７）排他制御を解除する。
【００５０】
（８）ステータスをもとにパケットの取りこぼしを検出しなかった場合（Ｓ９）、１秒間待機する。その後、（２）に戻る。
【００５１】
以上のようにエラー検出システム１によればキャプチャリング実行時にエラーが起きた場合、ネットワーク内の端末及びプロセスにおいてエラーを検出できる。
【図面の簡単な説明】
【００５２】
【図１】発明の実施形態に係るエラー検出システムのプロセス構成図。
【図２】発明の実施形態に係るエラー検出システムのプロセス起動処理の説明図。
【図３】発明の実施形態に係るエラー検出システムによるケーブル抜け検出スレッド処理の一例を説明したフローチャート。
【図４】発明の実施形態に係るエラー検出システムによるパケットキャプチャドライバ内エラー検出スレッド処理の一例を説明したフローチャート。
【符号の説明】
【００５３】
１…エラー検出システム
２…ＴＣＰ／ＩＰデータ取得プロセス
３…データ収集Ｃｏｒｅシステムプロセス群
４…収集データ受信プロセス
５…トレースデータ用共有メモリ
６…イベントデータ用共有メモリ
１０…マンマシンプロセス
１１…データキャプチャ用設定ファイル
１２…共有メモリ設定ファイル
２０…キャプチャドライバ
２１…通信データキャプチャスレッド、２２…パケットデータ格納スレッド、２３…キャプチャデータ解析スレッド、２４…ロギング対象データ出力スレッド、２５…キャプチャドライバ内エラー検出スレッド、２６…ケーブル抜け検出スレッド、２７…メインスレッド、２８…コモンデータ
【図１】
0004930234.tif 000002
【図２】
0004930234.tif 000003
【図３】
0004930234.tif 000004
【図４】
0004930234.tif 000005