(57)【要約】【課題】複数のプロセッサを実装する並列プロセッサシステムにおける並列プロセッサ間通信の試験方法に関し、競合状態での通信試験の実現と、通信試験の障害発生時における障害部位の解析精度の向上。【解決手段】複数のプロセッサを実装するネットワーク中継装置において、並列に接続された並列プロセッサ間通信の試験方法であって、プロセッサよりパケットを送信先へ送信する送信部と、パケットを受信元より受信する受信部と、パケットを受信元より受信する受信部の待機時間を監視するタイマー部と、受信したパケットと比較する期待値を生成する期待値生成部と、受信したパケットと期待値を比較するチェック部と、パケットを期待値と比較するチェック部の結果より送信部と期待値生成部と受信部の待機時間を監視するタイマー部を制御する制御部とを備え、並列プロセッサ間通信の試験を効率よく実現する。【選択図】図１
2007207050.tif 000002
【特許請求の範囲】
【請求項１】
並列プロセッサを有する装置における並列プロセッサ間通信の試験方法であって、
第１のプロセッサから第２のプロセッサへ１の第１のパケットを送信させ、
前記第１のプロセッサから送信させてから前記第２のプロセッサが受信するまでの時間を監視し、
所定時間内に前記第２のプロセッサでパケットを受信したとき、当該パケットが前記第１のパケットと対応するかを判定し、
前記第１のパケットと対応すると判定したときには正常と判定し、
所定時間内に前記第２のプロセッサでパケットを受信しなかったとき、又は、前記第１のパケットと対応しないと判定したとき、前記第１のプロセッサの障害と判定することを特徴とする試験方法。
【請求項２】
並列プロセッサを有する装置で実行させる並列プロセッサ間の試験プログラムであって、
第１プロセッサから第２プロセッサへパケットを送信させる送信機能と、
前記第２プロセッサで受信するまでの待機時間を監視するタイマー機能と、
前記第２プロセッサで受信を期待するパケットのデータの期待値を生成する期待値生成機能と、
前記第１プロセッサから前記第２プロセッサで受信したパケットが前記期待値と該当する否か比較するチェック機能とを有することを特徴とする試験プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のプロセッサが接続された伝送路網における通信の試験方法に関し、特に装置に並列に実装されたプロセッサ間の通信の試験方法に関する。
【背景技術】
【０００２】
従来の技術では、スター状又は環状に接続された伝送路上のプロセッサ間の通信試験を、前記伝送路上のプロセッサの内、メインプロセッサより送信されたパケットを１つ又は複数のサブプロセッサが受信し、送信元へ折り返し送信することで、パケットの送受信機能の検証を実現していた。また、上記の環境を持つ複数のプロセッサに個別のプログラムを実行することでプロセッサ間通信の試験を実現している。図８に従来ある並列プロセッサ間通信試験の一例を示す。
【０００３】
【特許文献１】特開平５−１５８９０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、前記技術は、プロセッサの数が膨大となるに従い、高精度な試験を効率よく実現することが難しくなり、また、プロセッサに固有の試験の実施も困難となる問題点がある。
【０００５】
また、並列プロセッサ間通信の送受信処理において、障害が発生した場合に、送信処理と受信処理のどちらの論理回路で障害が起きたか、従来技術では不分明である。
【０００６】
また、プロセッサ間の送受信処理において、受信処理が実行されるまでの、待ち時間を監視する処理が無い場合に試験の終了までの所要時間が従来技術では延長する。
【０００７】
複数のプロセッサが接続されているネットワーク網のプロセッサ間通信試験において、プロセッサ単位で試験のチェックをする処理と、障害発生時の障害論理を切り分ける処理の実現方法が、従来技術では明確でない。
【０００８】
複数のプロセッサ上で実行されるプログラムの構造を簡素にすると、実現する競合試験の精度と、障害発生時の解析精度が、従来技術では低下する。
【０００９】
上記の問題点を考慮し、複数のプロセッサに試験用のプログラムを実行させ、高精度な試験を効率よく実現し、障害発生時も解析の精度を向上させることを目的とする。
【００１０】
また、プロセッサ間の送受信処理において、障害が発生した場合に、送信処理論理と受信処理論理の障害の個所を切り分ける手段を提供することを目的とする。
【００１１】
また、受信処理が実行されるまでの、待ち時間を監視する手段を提供することを目的とする。
【課題を解決するための手段】
【００１２】
そこで、複数のプロセッサが接続されたネットワーク中継装置において、１つ又は１つ以上のプロセッサに、試験用のプログラムを１つ又は１つ以上、介在させて、プロセッサ単位の送受信機能を試験し、且つ、障害発生時に、プロセッサ単位で解析する機能を持たせることで、並列プロセッサ間通信の試験を可能とする。
【００１３】
また、並列に接続されたプロセッサに前記プログラムを実行することで、プロセッサ単位での通信パラメータを保持し、単一なデータパターンやデータ長、試験時間、のみならず、いくつかの選択幅のある、通信パラメータにより、例えばデータ長を変化させ、データパターンを振ることにより、並列プロセッサ間通信の通信試験を効率よく実現することを可能とする。
【００１４】
また、並列又は複数のプロセッサ間通信において、試験中に障害が発生した場合に、受信側プロセッサが送信元プロセッサにパケットを送信することにより、障害の発生した送受信論理の切り分けを可能とする。又、折り返し経路の送受信処理の試験を、自動でおこない、送受信機能の試験を効率よく高精度で実現することを可能とする。
【００１５】
前記折り返し送受信を、障害発生時に自動で実行することで、送信先のプロセッサの送信論理部と受信論理を試験し、障害発生時は送受信論理のいずれか、又は共通論理部を試験することを可能とする。
【００１６】
前記試験を実現する為に、プログラムの内部にパケットを送信する送信部と、送信元からパケットを受信する受信部と、受信するまでの待機時間を監視するタイマー部と、送信元から受信したパケットが期待していたパケットか比較するチェック部と、期待するパケットのデータの期待値を生成する期待値生成部と、受信が終了した場合のパケットの送信を制御し、受信が異常終了した場合の送信元へパケットを送信するか指示し、送信元が異常終了した場合に受信するパケットをチェックし、試験の終了時に試験結果を報告し、試験を終了する、制御部とを備えたプログラムによる試験方法を用いることで前記の試験及び効果を実現する。
【発明の効果】
【００１７】
上記の手段により、並列に接続されたプロセッサ間の通信試験が、従来より容易に実施でき、障害発生時の解析精度が向上する。
【００１８】
上記以外の課題、手段、効果は、後述する実施例により明らかにされる。
【発明を実施するための最良の形態】
【００１９】
本発明に好適な実施形態の例を説明する。但し、本発明は本実施形態に限定されない。
【００２０】
本実施形態では、複数のプロセッサが並列に接続されている場合のプロセッサ間通信を競合させ、又、障害発生時の解析を適切に実現するという目的を等価なプログラムの機能の構成により実現する。
【００２１】
図３にプロセッサ間通信の原理図を示す。プロセッサ間通信は、プロセッサ１と受信経路２と送信経路３より構成され、通信先のプロセッサへパケットを送信する場合は、送信経路３より送信し、通信先のプロセッサよりパケットを受信する場合は、受信経路２より受信する。よって、プロセッサ間通信においては、プロセッサ１より通信先に繋がる送信経路３と、通信先の受信経路上の通信は、プロセッサ１からパケットを送信することで実現でき、通信先からのパケット受信は、通信先が送信するパケットを、通信先の送信経路と、プロセッサ１の受信経路２より受信することで実現される。
【００２２】
図４に図３のプロセッサ通信を並列に実現する、並列に接続されたプロセッサの形態を示す。任意のプロセッサ部N（４０１）は、任意のプロセッサ部N+1（４０２）及び、任意のプロセッサ部N＋２（４０３）と伝送路４００により接続され、並列プロセッサシステムを構成している。本システムにおいては、任意のプロセッサ部N（４０１）は、他のプロセッサ部とネットワーク網で、同一の装置において、接続されており、任意のプロセッサ部N（４０１）は、他のプロセッサ部と非同期で動作している。
【００２３】
前記並列プロサッセシステムにおいて、並列プロセッサ間通信の試験を実施するプログラムの機能部を図１に示す。
【００２４】
図１は、並列プロセッサ間通信の実施の形態を示すブロック図で、特にプロセッサ１（１００）とプロセッサ２（２００）のプロセッサ間通信試験の実施の形態を示す。プロセッサ間通信試験において、プロセッサ１（１００）はプロセッサ１送信部（１１０）とプロセッサ１受信部（１２０）からなるプログラム上で実現され、プロセッサ１送信部（１１０）は、送信部１（１０１）と、制御部１（１０２）を備え、プロセッサ１受信部（１２０）は、チェック部１（１０３）と、受信部１（１０４）と、期待値生成部１（１０５）と、タイマー部１（１０６）を備える。又、プロセッサ１（１００）の通信先であるプロセッサ２（２００）も、プロセッサ１（１００）と等価な機能を備えている。
【００２５】
前記並列プロセッサ間通信の一実施例である図１の実施の手順を図５より説明する。
【００２６】
前記並列プロセッサ間通信において、プロセッサ１（１００）は、送信部１（１０１）で送信データを生成し、制御部１（１０２）からの送信指示を受け、送信先となるプロセッサ２（２００）へ伝送路１３０を経由して送信する（ステップ５０１）。この間、プロセッサ２（２００）は、タイマー部２（２０６）の待機時間を設定すると共に、期待値生成部２（２０５）で期待値を作成し（ステップ５０２）、受信部２（２０４）においてデータ受信を監視する（ステップ５０３）。受信部２（２０４）において、プロセッサ１（１００）から伝送路１３０を経由して、パケットを受信した場合は、チェック部２（２０３）において、期待値と比較し、結果を制御部２（２０１）に報告する（ステップ５０４）。尚、受信部２（２０４）において、プロセッサ１（１００）からのパケットを未受信な場合は、タイマー部２（２０６）の待機時間を過ぎたか評価し、待機時間を過ぎていない場合は、データ受信の監視を継続し（ステップ５１０）、待機時間を過ぎた場合は、障害発生時の切り分け処理を実行する（ステップ５１１）。制御部２（２０２）は、チェック部２（２０３）の結果を取得し（ステップ５０６）、制御部２（２０２）の結果が正常か評価する（ステップ５０７）。評価後、異常であった場合は、障害発生時の切り分け処理を実行し（ステップ５１１）、正常である場合は、受信処理を終了する（ステップ５０８）。プロセッサ２（２００）よりパケットを送信する場合も前記送信処理と同等の処理を実施し、又、並列に接続されたプロセッサ間通信においても、同等の処理を実施することで、前記並列プロセッサ間通信の送受信処理と、パケット受信時のパケットデータのチェックと、パケットを受信する際の待機時間の監視と、パケットのデータが異常であった場合と、パケットが待機時間内に受信されなかった場合の障害の切り分け処理（図９参照）を実現する。
【００２７】
図６に並列プロセッサ間通信のパケットのフレーム形式の一例を示す。フレーム形式６００は、フレームの識別子６０１と送信先プロセッサアドレス６０２と送信元プロセッサアドレス６０３を備え、例えば、前記フレームの識別子６０１は、パケットの試験パケットと制御パケットの識別に使用でき、送信先プロセッサアドレス６０２と送信元プロセッサアドレス６０３は、送信先の指定と送信元の情報として使用される。又、データ番号６０４と、データ長６０５と、受信回数６０６とデータパターン６０７は、試験のパラメータとして使用され、データパターン６０７は、例えば、データパターンの例１（６２１）やデータパターンの例２（６２２）やデータパターンの例３（６２３）やデータパターンの例４（６２４）など、複数のデータパターンをパラメータとして持ち、多様な試験パターンを実現する。
【００２８】
図１０に並列プロセッサ間通信のテスト情報テーブルの一例を示す。テスト情報テーブルは、識別子１００１と、送信側の通信経路情報１００２と、受信側の通信経路情報１００３と、データ番号１００４と、データ長１００５と、試験回数１００６と、停止フラグ１００７と、有効フラグ１００８と、実行時間１００９と、データバターン１０１０とを備える。識別子１００１は、本テスト情報テーブルが有効か無効かを示し、送信側の通信経路情報１００２は、該当のプロセッサがパケットを送信する際の通信経路を規定し、受信側の通信経路情報１００３は、該当のプロセッサがパケットを受信する際の通信経路を規定し、データ番号１００４は通信にて使用するデータ番号を指定し、データ長１００５は、通信で使用するパケットデータのデータ長を指定し、試験回数１００６は、通信試験の送受信回数を示し、停止フラグ１００７は、送受信試験の停止を指示し、有効フラグ１００８は送受信試験の開始を指示し、実行時間１００９は受信するパケットの待機時間を規定し、データバターン１０１０はデータを生成する際のパターンを保持する。
【００２９】
並列プロセッサ間通信の試験は、前記テスト情報テーブルを元に送信データの生成、受信するパケットの期待値の生成、受信するパケットの監視処理の待機時間と、プロセッサ間通信において障害が発生した場合の試験の停止通知と、並列プロセッサ間通信の試験の開始通知を規定し、並列プロセッサ間通信の試験を実現する。
【００３０】
図７に並列プロセッサ間通信におけるテスト管理テーブルの構成を示す。テスト管理テーブルは、並列に接続されているプロセッサに対応し、試験のパラメータを保持する、テスト情報テーブルを管理し、プロセッサは、テスト情報テーブルが管理するテスト情報テーブルより、通信先と、試験パラメータを得る。例えば、並列プロセッサ装置７００に実装されているプロセッサN（７０４）は、テスト管理テーブルN（７１４）が管理するテスト情報テーブルN（７２４）より並列プロセッサ間通信において使用する試験パラメータを取得し、並列プロセッサ間通信の競合試験を実現する。
【００３１】
尚、テスト情報テーブルの内容は、試験プログラムのコンパイル時に確定する。又、本テスト情報テーブルの内容を、例えば、メモリアクセスにより変更することで、試験のパラメータを変えることができる。
【００３２】
図２に、本実施形態により試験の対象となるプロセッサ間通信の送受信論理部を示す。プロセッサ部１３にパケットが送信されると、伝送路１（１１）を通り、プロセッサ部の受信論理部１２を通過し、プロセッサ部１３へと到達する。又、プロセッサ部１３よりパケットが送信されると、プロセッサ部の送信論理部１４を通り、伝送路２（１５）を通過し、通信先への送信される。
【００３３】
図９に並列プロセッサ間通信で障害を検出した場合の処理手順を示す。図１のチェック部１（１０３）又はチェック部２（２０３）で異常を検出した場合（ステップ９００）、制御部１（１０２）又は制御部２（２０２）は、送信部１（１０１）又は送信部２（２０１）に障害個所の切り分けを目的とするパケットの送信処理を指示し（ステップ９０１）、送信部１（１０１）又は送信部２（２０１）は、送信先に送信データを転送し（ステップ９０２）、並列プロセッサ間通信の試験を終了する（ステップ９０３）。
【００３４】
前記の障害検出時の処理により、プロセッサ間通信の送受信論理部の、送信論理部と受信論理部の障害発生の個所の切り分けを実現する。すなわち、送信論理部と受信論理部のどちらで障害が発生したかを区別して出力などする。
【００３５】
ネットワーク網により接続したプロセッサシステムにおいて、プロセッサ間通信試験の競合試験を支援する外部試験装置（例えば、パケットジェネレータなど）を接続した場合の高負荷試験の競合試験や、複数の端末を接続した場合のトレーサー部、さらに、他のプロセッサを搭載した装置（例えば、携帯電話など）とのプロセッサ間通信の試験方法にも適用できる。
【００３６】
本実施形態は、以下の方法も含む。
【００３７】
（１）複数のプロセッサを搭載したネットワーク中継装置の並列に接続された並列プロセッサ間通信の試験方法であって、１つ又は１つ以上のプロセッサ上で動作するプログラムにより、プロセッサ毎にプロセッサ間の送受信機能を試験し、且つ、障害発生時にプロセッサ毎に解析する機能を持つ並列プロセッサ間通信の試験方法。
【００３８】
（２）並列に接続されたプロセッサ上で動作する試験用プログラムを実行することで、プロセッサ毎に通信試験のパラメータを保持し、並列プロセッサ間通信の通信論理の試験を効率よく実現することを特徴とする並列プロセッサ間通信の試験方法。
【００３９】
（３）並列又は複数に接続するプロセッサ間通信の試験において、障害が発生した場合に、障害を検出したプロセッサが、パケットの送信元プロセッサに向かって、パケットを送信することにより、障害発生の論理部の切り分けと、前記パケットの送信元プロセッサへのパケット送信を自動で実行することにより、プロセッサ間の送受信機能試験の効率化と、障害発生時の障害論理の解析精度を向上することを特徴とする並列プロセッサ間通信の試験方法。
【００４０】
（４）前記（３）において、プロセッサの送信論理部と受信論理部を試験し、障害発生時は送受信論理部のいずれか、又は共通論理部を試験することを特徴とする並列プロセッサ間通信の試験方法。
【００４１】
（５）プログラムの内部にパケットを送信する送信部と、送信元からパケットを受信する受信部と、受信するまでの待機時間を監視するタイマー部と、送信元から受信したパケットが期待していたパケットか比較するチェック部と、期待するパケットのデータの期待値を生成する期待値生成部と、受信が終了した場合のパケットの送信を制御し、受信が異常終了した場合の送信元へパケットを送信する指示し、送信元が異常終了した場合は受信するパケットをチェックし、試験の終了時に試験結果を報告し、試験を終了する制御部とを備えたプログラムを用いることを特徴とする並列プロセッサ間通信の試験方法。
【図面の簡単な説明】
【００４２】
【図１】並列プロセッサ間通信の実施例を示したブロック図である。
【図２】プロセッサ間通信の被試験対象となる論理回路例のブロック図である。
【図３】プロセッサ間通信の実施方法例を示した原理図である。
【図４】並列に接続されたプロセッサの形態例を示したシステム図である。
【図５】並列プロセッサ間通信の実施の手順例を説明する図である。
【図６】並列プロセッサ間通信におけるフレーム形式の一例を示す図である。
【図７】並列プロセッサ間通信のテスト情報テーブルの構成例を説明する図である。
【図８】従来ある並列プロセッサ間通信の一例を示した図である。
【図９】並列プロセッサ間通信で障害を検出した場合の処理手順例の説明図である。
【図１０】並列プロセッサ間通信のテスト情報テーブルの一例を示した図である。
【符号の説明】
【００４３】
１    プロセッサ
２    受信経路
３    送信経路
４    受信経路１
５    受信経路２
６    受信経路３
７    送信経路１
８    送信経路２
９    送信経路３
１１    伝送路１
１２    プロセッサ受信論理
１３    プロセッサ部
１４    プロセッサ送信論理
１５    伝送路２
１００    プロセッサ１
１０１    送信部１
１０２    制御部１
１０３    チェック部１
１０４    受信部１
１０５    期待値生成部１
１０６    タイマー部１
１１０    プロセッサ１送信部
１２０    プロセッサ１受信部
１３０、４００    伝送路
２００    プロセッサ２
２０１    送信部２
２０２    制御部２
２０３    チェック部２
２０４    受信部２
２０５    期待値生成部２
２０６    タイマー部２
２１０    プロセッサ２送信部
２２０    プロセッサ２受信部
４０１    プロセッサＮ
４０２    プロセッサＮ＋１
４０３    プロセッサＮ＋２
６００    フレーム形式
６０１    識別子
６０２    送信先プロセッサアドレス
６０３    送信元プロセッサアドレス
６０４    データ番号
６０５    データ長
６０６    受信回数
６０７    データパターン
６２１    データパターンの例１
６２２    データパターンの例２
６２３    データパターンの例３
６２４    データパターンの例４
８００    環状またはスター状伝送路
８０１    メインプロセッサ部
８０２    送信手段
８０３    受信手段
８０４    比較手段
８２０    サブプロセッサ部２
８２１    折り返し手段２
８３０    サブプロセッサ部３
７００    並列プロセッサ装置
７０１    プロセッサ１
７０２    プロセッサ２
７０３    プロセッサ３
７０４    プロセッサＮ
７１０    プログラムのテスト管理テーブル
７１１    テスト管理テーブル１
７１２    テスト管理テーブル２
７１３    テスト管理テーブル３
７１４    テスト管理テーブルＮ
７２０    プログラムのテスト情報テーブル
７２１    テスト情報テーブル１
７２２    テスト情報テーブル２
７２３    テスト情報テーブル３
７２４    テスト情報テーブルＮ
１０００    テスト情報テーブルの一例
１００１    識別子
１００２    送信側の通信経路情報
１００３    受信側の通信経路情報
１００４    データ番号
１００５    データ長
１００６    試験回数
１００７    停止フラグ
１００８    有効フラグ
１００８    実行時間
１０１０    データパターン
【図１】
2007207050.tif 000003
【図２】
2007207050.tif 000004
【図３】
2007207050.tif 000005
【図４】
2007207050.tif 000006
【図５】
2007207050.tif 000007
【図６】
2007207050.tif 000008
【図７】
2007207050.tif 000009
【図８】
2007207050.tif 000010
【図９】
2007207050.tif 000011
【図１０】
2007207050.tif 000012