(57)【要約】【課題】  パケットの伝送遅延を高精度に発生してネットワークを模擬することで、ネットワーク評価の精度及び信頼性の向上を図る。【解決手段】  基準タイマ３１は、装置内の基準時間を計る。受信制御部３２は、パケットを受信して、パケット長と、パケットを受信した時の基準タイマが示すタイムスタンプとを検出する。パケット情報書き込み／読み出し部３３は、パケット長、タイムスタンプ及びパケットを含むパケット情報をメモリに書き込み、送出可能時に読み出す。補正値設定部３４は、装置内部で発生するパケット長に依存する遅延時間を補正値として設定する。パケット送信タイミング算出部３５は、基準タイマ３１が示す基準時間、タイムスタンプ及び補正値にもとづき、パケットの送信タイミングを算出し、外部から設定された遅延時間でパケットを出力する。【選択図】  図１
2006050319.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上の事象として、パケットの伝送遅延を発生させて、ネットワークを模擬するネットワーク模擬装置において、
装置内の基準時間を計る基準タイマと、
パケットを受信して、パケット長と、前記基準タイマが示すパケットの受信時間であるタイムスタンプと、を検出する受信制御部と、
パケット長、タイムスタンプ及びパケットを含むパケット情報をメモリに書き込み、送出可能時に読み出すパケット情報書き込み／読み出し部と、
装置内部で発生するパケット長に依存する遅延時間を補正値として設定する補正値設定部と、
前記基準タイマが示す基準時間、タイムスタンプ及び補正値にもとづき、パケットの送信タイミングを算出し、外部から設定された遅延時間でパケットを出力するパケット送信タイミング算出部と、
を有することを特徴とするネットワーク模擬装置。
【請求項２】
前記パケット書き込み／読み出し部は、パケット長とタイムスタンプをパケットに先行して読み出して、前記パケット送信タイミング算出部へ送信することを特徴とする請求項１記載のネットワーク模擬装置。
【請求項３】
パケットの入力処理を行うパケット入力処理部と、パケットの出力処理を行うパケット出力処理部と、をさらに有し、前記補正値設定部は、前記パケット入力処理部及び前記パケット出力処理部で発生するパケット長に依存する遅延時間を補正値として設定したテーブルを構成し、パケット長をテーブルの検索キーにして、受信パケット毎に補正値を求めることを特徴とする請求項１記載のネットワーク模擬装置。
【請求項４】
前記パケット送信タイミング算出部は、外部から設定された遅延時間を保持する遅延時間設定レジスタと、タイムスタンプをパケットに付加してから、前記パケット出力処理部へパケットを送信するまでに発生させるべき遅延発生時間を、保持している前記遅延時間から前記補正値を差し引いて求め、前記遅延発生時間とタイムスタンプの値とを加算した時間が、前記基準タイマが示す基準時間となったときに送信指示を出す遅延時間演算処理部と、前記送信指示により、パケットを前記パケット出力処理部へ送信する送信制御部と、を含むことを特徴とする請求項３記載のネットワーク模擬装置。
【請求項５】
ネットワーク上の事象として、パケットの伝送遅延を発生させて、ネットワークを模擬するネットワーク模擬装置において、
パケットの入力処理を行うパケット入力処理部と、
パケットの出力処理を行うパケット出力処理部と、
装置内の基準時間を計る基準タイマと、前記パケット入力処理部から出力したパケットを受信して、パケット長と、前記基準タイマが示すパケットの受信時間であるタイムスタンプと、を検出する受信制御部と、パケット長、タイムスタンプ及びパケットを含むパケット情報をメモリに書き込み、送出可能時に読み出すパケット情報書き込み／読み出し部と、前記パケット入力処理部と前記パケット出力処理部で発生するパケット長に依存する遅延時間を補正値として設定する補正値設定部と、外部から設定された遅延時間を保持する遅延時間設定レジスタ、タイムスタンプをパケットに付加してから、前記パケット出力処理部へパケットを送信するまでに発生させるべき遅延発生時間を、外部から設定された遅延設定時間から前記補正値を差し引いて求め、前記遅延発生時間とタイムスタンプの値とを加算した時間が、前記基準タイマが示す基準時間となったときに送信指示を出す遅延時間挿入部、前記送信指示により、パケットを前記パケット出力処理部へ送信する送信制御部を含むパケット送信タイミング算出部と、から構成される遅延時間制御部と、
を有することを特徴とするネットワーク模擬装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク模擬装置に関し、特にネットワーク上の事象として、パケットの伝送遅延を発生させて、ネットワークを模擬するネットワーク模擬装置に関する。
【背景技術】
【０００２】
近年、情報ネットワーク・サービスは、多種多様なものが求められ、これらのサービスを提供するための情報インフラストラクチャは、複雑化、巨大化している。このような状況の中で、ネットワークに接続する機器の機能、またはネットワークを経由するアプリケーション・ソフトウェアなどを確認したり、性能を検証したりするネットワーク評価に対する重要性は増してきており、高精度で効率の高いネットワークの評価技術が求められている。
【０００３】
ネットワークの評価を精度よく行うには、実際のネットワーク上で起こりうる事象を、ユーザの設定に応じて擬似的に発生させて、機能確認や性能検証を定量的に行う必要がある。
【０００４】
例えば、ＩＰネットワーク上に音声を通すＶｏＩＰ（voice over internet protocol）を考えた場合、音声パケットの伝送遅延が大きくなると、音声を受信する側では、音声再生処理が対応しきれずに、音が途切れてしまったり、またはテレビ電話などでは映像と音声のタイミングがずれてしまうといった現象が生じることになる。
【０００５】
したがって、このようなネットワークに対しては、パケットの遅延という事象を擬似的に発生させることで、どの程度の遅延ならば正常動作可能であるか等の検証を行うことが重要となる。
【０００６】
パケットの伝送遅延を制御する従来技術として、入力パケットのタイムスタンプに出力先への転送に要する時間のオフセット値を加算してパケット転送を制御する技術が提案されている（例えば、特許文献１）。
【特許文献１】特開２０００−３３２７９８号公報（段落番号〔００４２〕〜〔００４３〕，第９図）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来のソフトウェアによるネットワーク模擬では、設定された遅延時間を発生させるために、ソフトウェアタイマを使用しているが、ソフトウェアタイマは、ＣＰＵの処理状況などにより発生する誤差が大きいため、高精度な遅延時間の挿入を行うことはできないといった問題があった。また、従来のハードウェアによるネットワーク模擬では、ソフトウェア処理と比べれば精度の高い遅延挿入は可能ではあるものの、装置内で発生する誤差によりミリ秒単位以上の高精度な遅延挿入を図ることが難しいといった問題があった。
【０００８】
一方、装置内で発生する遅延の誤差は、パケット長に大きく依存するが、上記の従来技術（特開２０００−３３２７９８号公報）では、パケット長に応じて変化する遅延誤差については考慮されていないため、高精度に遅延時間を発生させることができなかった。
【０００９】
従来のネットワーク評価では、使用帯域がそれほど大きくないアプリケーション・ソフトウェアなどの検証が主であり、それほど高精度な制御が要求されることはなかったが、近年のネットワークのブロードバンド化の進展及びＩＰストレージ関連の市場拡大などにより、従来よりも高精度化の要求が増加してきている。
【００１０】
本発明はこのような点に鑑みてなされたものであり、パケットの伝送遅延を高精度に発生してネットワークを模擬することで、ネットワーク評価の精度及び信頼性の向上を図ったネットワーク模擬装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明では上記課題を解決するために、図１に示すような、ネットワーク上の事象として、パケットの伝送遅延を発生させて、ネットワークを模擬するネットワーク模擬装置１において、装置内の基準時間を計る基準タイマ３１と、パケットを受信して、パケット長と、基準タイマ３１が示すパケットの受信時間であるタイムスタンプと、を検出する受信制御部３２と、パケット長、タイムスタンプ及びパケットを含むパケット情報をメモリに書き込み、送出可能時に読み出すパケット情報書き込み／読み出し部３３と、装置内部で発生するパケット長に依存する遅延時間を補正値として設定する補正値設定部３４と、基準タイマが示す基準時間、タイムスタンプ及び補正値にもとづき、パケットの送信タイミングを算出し、外部から設定された遅延時間でパケットを出力するパケット送信タイミング算出部３５と、を有することを特徴とするネットワーク模擬装置１が提供される。
【００１２】
ここで、基準タイマ３１は、装置内の基準時間を計る。受信制御部３２は、パケットを受信して、パケット長と、基準タイマ３１が示すパケットの受信時間であるタイムスタンプとを検出する。パケット情報書き込み／読み出し部３３は、パケット長、タイムスタンプ及びパケットを含むパケット情報をメモリに書き込み、送出可能時に読み出す。補正値設定部３４は、装置内部で発生するパケット長に依存する遅延時間を補正値として設定する。パケット送信タイミング算出部３５は、基準タイマが示す基準時間、タイムスタンプ及び補正値にもとづき、パケットの送信タイミングを算出し、外部から設定された遅延時間でパケットを出力する。
【発明の効果】
【００１３】
本発明のネットワーク模擬装置は、装置内部で発生するパケット長に依存する遅延時間を補正値として設定し、基準タイマが示す基準時間、パケットを受信した時の基準タイマが示すタイムスタンプ及び補正値にもとづき、パケットの送信タイミングを算出して、外部から設定された遅延時間でパケットを出力する構成とした。これにより、パケットの伝送遅延を高精度に発生してネットワークを模擬することができ、ネットワーク評価の精度及び信頼性の向上を図ることが可能になる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態を図面を参照して説明する。図１はネットワーク模擬装置の原理図である。ネットワーク模擬装置１は、ネットワーク上の事象として、パケットの伝送遅延を発生させて、ネットワークを模擬する装置である。
【００１５】
パケット入力処理部１０は、パケットの入力処理を行う。基準タイマ３１は、装置内の基準時間を計る。受信制御部３２は、パケットを受信して、パケット長（＝ヘッダの長さ＋ペイロードの長さ）と、基準タイマ３１が示すパケットの受信時間であるタイムスタンプとを検出する。パケット情報書き込み／読み出し部３３（以下、パケット情報Ｒ／Ｗ部３３）は、パケット長、タイムスタンプ及びパケットを含むパケット情報をメモリに書き込み、送出可能時に読み出す。
【００１６】
補正値設定部３４は、装置内部で発生するパケット長に依存する遅延時間を補正値として設定する。具体的には、パケット入力処理部１０と、パケットの出力処理を行うパケット出力処理部２０とで発生するパケット長に依存する遅延時間を補正値として設定する。
【００１７】
パケット送信タイミング算出部３５は、基準タイマが示す基準時間、タイムスタンプ及び補正値にもとづき、パケットの送信タイミングを算出し、外部から設定された遅延時間ｔｄでパケットを出力する。
【００１８】
図２はネットワークシステムに対するネットワーク模擬装置１の適用例を示す図である。端末２−１〜２−３にルータ（orスイッチ）Ｒ１が接続し、端末２−４〜２−６にルータ（orスイッチ）Ｒ２が接続する。ルータＲ１、Ｒ２は、ＩＰネットワークＮ１と接続し、ネットワーク模擬装置１は、ＩＰネットワークＮ１内に配置される。
【００１９】
ネットワーク模擬装置１は、パケットの伝送遅延を発生させて、ネットワーク上の事象を模擬し、ルータＲ１、Ｒ２や端末２−１〜２−６の機能や性能を検証する。
次にネットワーク模擬装置１の詳細な構成及び動作について説明する。図３はネットワーク模擬装置１の構成を示す図である。ネットワーク模擬装置１は、パケット入力処理部１０（以下、ＭＵＸ処理部１０と呼ぶ）、パケット出力処理部２０（以下、ＤＭＵＸ処理部２０と呼ぶ）、遅延時間制御部３０から構成され、遅延時間制御部３０は、基準タイマ３１、受信制御部３２、パケット情報Ｒ／Ｗ部３３、補正値設定部３４、パケット送信タイミング算出部３５から構成される。
【００２０】
パケット情報Ｒ／Ｗ部３３は、パケットＲ／Ｗ部３３ａ、パケットポインタＲ／Ｗ部３３ｂ、パケットバッファメモリｍ１、パケットポインタ管理メモリｍ２から構成される。
また、補正値設定部３４は、テーブルアドレス生成部３４ａと補正値テーブルＴ１から構成され、パケット送信タイミング算出部３５は、遅延時間設定レジスタ３５ａ、遅延時間演算処理部３５ｂ、送信制御部３５ｃから構成される。
【００２１】
ＭＵＸ処理部１０は、ネットワークから流れてきたパケットを複数ポートＰ０〜Ｐｎで受信して多重化する（図４で後述）。受信制御部３２は、ＭＵＸ処理部１０から出力された１つのパケットを受信すると、そのパケットのパケット長と、そのパケットを受信した時の基準タイマ３１が示すタイムスタンプ（受信時間）とを検出する。そして、パケット長及びタイムスタンプをパケットに付加して出力する。
【００２２】
パケットＲ／Ｗ部３３ａは、パケットと、パケット長及びタイムスタンプをパケットバッファメモリｍ１に書き込む。また、パケットバッファメモリｍ１内の各パケットの格納位置を示すポインタを、パケットポインタＲ／Ｗ部３３ｂへ通知する。
【００２３】
パケットポインタＲ／Ｗ部３３ｂは、ポインタをパケットポインタ管理メモリｍ２に格納し、パケットバッファメモリｍ１のどのアドレスにどのパケットがあるかといった管理を行う。
【００２４】
パケットＲ／Ｗ部３３ａは、パケットの送信可能時に、パケットと、パケット長及びタイムスタンプをパケットバッファメモリｍ１から読み出す。このとき、パケットは送信制御部３５ｃへ出力し、パケット長はテーブルアドレス生成部３４ａへ出力し、タイムスタンプは遅延時間演算処理部３５ｂへ出力する。なお、遅延時間演算処理部３５ｂでは、発生させるべき遅延時間の演算を行うために、パケット長及びタイムスタンプは、パケットに先行して読み出して出力しておく。
【００２５】
テーブルアドレス生成部３４ａは、パケット長を受信すると、パケット長をテーブルアドレスに変換して補正値テーブルＴ１の検索キーとして用い、補正値テーブルＴ１から該当パケット長の補正値を検索する（図６で後述）。
【００２６】
遅延時間設定レジスタ３５ａは、外部から設定された遅延時間ｔｄを保持する。遅延時間演算処理部３５ｂは、タイムスタンプをパケットに付加してから、ＤＭＵＸ処理部２０へパケットを送信するまでに発生させるべき遅延発生時間を、遅延時間設定レジスタ３５ａで保持している遅延時間から補正値を差し引いて求める。そして、遅延時間ｔｄとタイムスタンプの値とを加算した時間が、基準タイマ３１が示す基準時間となったときに送信指示を出す（遅延時間を発生させる詳細な動作については図７以降で後述する）。
【００２７】
送信制御部３５ｃは、送信指示を受信すると、パケットＲ／Ｗ部３３ａから送られたパケットをＤＭＵＸ処理部２０へ出力する。ＤＭＵＸ処理部２０は、パケットを受信すると、ポートＰ０〜Ｐｎの中の該当ポートを介して、パケットをネットワーク側へ出力する（図５で後述）。
【００２８】
次にＭＵＸ処理部１０、ＤＭＵＸ処理部２０の構成について説明する。図４はＭＵＸ処理部１０の構成を示す図である。ＭＵＸ処理部１０は、受信ＦＩＦＯ１１−１〜１１−ｎ（総称する場合は、受信ＦＩＦＯ１１と呼ぶ）、受信ＦＩＦＯ制御部１２、ＭＵＸ１３から構成される。
【００２９】
受信ＦＩＦＯ１１−１〜１１−ｎは、ポートＰ０〜Ｐｎから流れてきたパケットをポート毎に受信して格納する。受信ＦＩＦＯ制御部１２は、ポートＰ０〜Ｐｎ毎に受信ＦＩＦＯ１１−１〜１１−ｎへパケットを書き込む制御を行い、ポートＰ０〜Ｐｎ毎にパケットを読み出す制御を行う。
【００３０】
ＭＵＸ１３は、受信ＦＩＦＯ制御部１２から出力される多重化の順番を決めるポート切り替え指示にもとづいて、受信ＦＩＦＯ１１−１〜１１−ｎから読み出されたパケットを多重化し、受信制御部３２へ送信する。
【００３１】
図５はＤＭＵＸ処理部２０の構成を示す図である。ＤＭＵＸ処理部２０は、ＤＭＵＸ２１、送信ＦＩＦＯ２２−１〜２２−ｎ、送信ＦＩＦＯ制御部２３から構成される。ＤＭＵＸ２１は、送信制御部３５ｃから送信されたパケットを受信し、送信ＦＩＦＯ制御部２３からの出力先を決めるポート切り替え指示にもとづいて、送信ＦＩＦＯ２２−１〜２２−ｎへパケットを出力する。
【００３２】
送信ＦＩＦＯ２２−１〜２２−ｎは、ＤＭＵＸ２１から出力されたパケットを格納し、ポートＰ０〜Ｐｎ毎にパケットを出力する。送信ＦＩＦＯ制御部２３は、送信ＦＩＦＯ２２−１〜２２−ｎに対し、ポートＰ０〜Ｐｎ毎にパケットを書き込む制御を行い、ポートＰ０〜Ｐｎ毎にパケットを読み出す制御を行う。
【００３３】
次に補正値設定部３４の構成について説明する。図６は補正値設定部３４の構成を示す図である。補正値設定部３４は、テーブルアドレス生成部３４ａと補正値テーブルＴ１からなり、テーブルアドレス生成部３４ａは、パケット長／テーブルアドレス変換部３４ａ−１とエンコーダ３４ａ−２を含む。
【００３４】
ここで、ＭＵＸ処理部１０とＤＭＵＸ処理部２０では、上記で示したように、ＦＩＦＯによりＭＵＸ・ＤＭＵＸの処理を行うために、扱うパケットのパケット長が短ければ処理時間が短く、パケット長が長ければ処理時間が長くなる。すなわち、パケット長に応じてＭＵＸ処理部１０とＤＭＵＸ処理部２０で発生する遅延時間は異なることになる。したがって、補正値設定部３４では、ＭＵＸ処理部１０とＤＭＵＸ処理部２０で発生するパケット長に依存する遅延時間を、あらかじめ補正値として設定しておくものである。
【００３５】
パケット長／テーブルアドレス変換部３４ａ−１は、パケット長を受信すると、テーブルアドレスに変換する。エンコーダ３４ａ−２は、テーブルアドレスを補正値テーブルＴ１に与えて補正値を読み出す。補正値テーブルＴ１は、複数のパケット長に対応した遅延時間の補正値を管理するテーブルである（補正値はソフトウェアにより書き込み可能）。
【００３６】
例えば、テーブルアドレス１４５８には、パケット長が１５２２byteのときの補正値として４８８．３２μsecであることが記されている。このことは、ＭＵＸ処理部１０において、パケット長が１５２２byteのパケットのＭＵＸ処理を行うと４８８．３２μsecの遅延時間が発生することを意味する。同様に、ＤＭＵＸ処理部２０において、パケット長が１５２２byteのパケットのＤＭＵＸ処理を行うと、４８８．３２μsecの遅延時間が発生することを意味する（ＭＵＸ、ＤＭＵＸは同じ遅延時間が発生するとしている）。
【００３７】
次にネットワーク模擬装置１におけるパケットの遅延設定動作について、具体的な数値を用いて詳しく説明する。まず、ＭＵＸ処理部１０とＤＭＵＸ処理部２０で発生する遅延時間の算出及び補正値の設定について説明する。
【００３８】
ネットワークの回線速度を１００Mbpsとし、パケット長が６４byteと１５２２byteの２つのパケットの場合を考える。受信ＦＩＦＯ１１へのパケット書き込みに要する時間は以下の通りとなる（なお、受信ＦＩＦＯ１１へのパケット書き込み時には、パケット長に加えて、イーサネット（登録商標）フレームのプリアンブルに相当するバイト数８byte分の時間が加算される）。
【００３９】
（ａ）パケット長が６４byteの場合
（６４byte＋８byte）÷１００Mbps＝５．７６μsec
（ｂ）パケット長が１５２２byteの場合
（１５２２byte＋８byte）÷１００Mbps＝１２２．４μsec
また、受信ＦＩＦＯ１１に完全にパケットが書き込まれた直後に、書き込み側と同じ転送レートで受信ＦＩＦＯ１１からパケットが読み出される場合のパケット読み出し時間は以下の通りとなる（パケットのみのデータが読み出されるものとする）。
【００４０】
（ｃ）パケット長が６４byteの場合
６４byte÷１００Mbps＝５．１２μsec
（ｄ）パケット長が１５２２byteの場合
１５２２byte÷１００Mbps＝１２１．７６μsec
ここで、ＭＵＸ処理部１０で発生する遅延時間をΔａとすると、Δａは、パケット長が６４byteの場合は、５．７６＋５．１２＝１０．８８μsecとなり、パケット長が１５２２byteの場合は、１２２．４＋１２１．７６＝２４４．１６μsecとなる。
【００４１】
また、ＤＭＵＸ処理部２０の送信ＦＩＦＯ制御部２３においても、ＭＵＸ処理部１０と同様な制御を行うものとすれば、ＤＭＵＸ処理部２０で発生する遅延時間をΔｂとすると、Δｂは、パケット長が６４byteの場合は１０．８８μsec、パケット長が１５２２byteの場合は２４４．１６μsecとして、ＭＵＸ側と同じ値と見なすことができる。
【００４２】
したがって、補正値テーブルＴ１から出力されるべき補正値Δｔは、以下の通りとなる。
（ｅ）パケット長が６４byteの場合
Δｔ＝Δａ＋Δｂ＝１０．８８μsec＋１０．８８μsec＝２１．７６μsec
（ｆ）パケット長が１５２２byteの場合
Δｔ＝Δａ＋Δｂ＝２４４．１６μsec＋２４４．１６μsec ＝４８８．３２μsec
これらの補正値Δｔは、上記のようにあらかじめ算出できるので、図６に示す補正値テーブルＴ１に設定しておく。
【００４３】
次にネットワーク模擬装置１に遅延時間を設定して、ネットワーク側からパケットを受信して、遅延時間経過後にネットワーク側へパケットを送出するまでのパケット送出動作について説明する。
【００４４】
図７は設定した遅延時間後にパケットを送出するまでの動作概要を示す図である。ネットワーク模擬装置１に対して、例えば、１００μsecの遅延時間ｔｄが設定されたならば、ネットワーク模擬装置１は、パケットを受信してから１００μsec経過後に出力することになる。
【００４５】
ここで、受信したパケットのパケット長がＬであったときのＭＵＸ処理部１０の伝送遅延時間Δａと、ＤＭＵＸ処理部２０の伝送遅延時間Δｂとが共に２０μsecであるとすると、遅延時間制御部３０では６０（＝１００−（２０＋２０））μsecの遅延時間Δｃを発生させればよいことになる。
【００４６】
この場合、ＭＵＸ処理部１０から出力したパケットを遅延時間制御部３０内の受信制御部３２が受信したときの、基準タイマ３１が示すタイムスタンプが１５μsecであったならば、基準タイマ３１が示す基準時間が７５（＝６０＋１５）μsecを示したときに、遅延時間制御部３０内の送信制御部３５ｃからＤＭＵＸ処理部２０へパケットを送信すれば、遅延時間制御部３０において、遅延時間Δｃ＝６０μsecを生成することができる。
【００４７】
図８は設定した遅延時間後にパケットを送出するまでの動作を示すフローチャートである。図３〜図６で示したブロック図にもとづき、具体的な数値で説明する詳細動作フローである。なお、外部から設定する遅延時間ｔｄを１００００μsecとする。
【００４８】
〔Ｓ１〕遅延時間設定レジスタ３５ａは、設定された１００００μsecの遅延時間ｔｄを保持する。
〔Ｓ２〕ＭＵＸ処理部１０は、パケット（パケット長を１５２２byteとする）を受信し、内部での処理を行って受信制御部３２へ出力する。
【００４９】
〔Ｓ３〕受信制御部３２は、受信パケットのパケット長が１５２２byteであり、パケットの受信時間が、基準タイマ３１の基準時間で１５μsecであったとする。受信制御部３２は、パケット長（１５２２byte）及びタイムスタンプ（１５μsec）の情報をパケットに付加してパケットＲ／Ｗ部３３ａへ出力する。
【００５０】
〔Ｓ４〕パケットＲ／Ｗ部３３ａは、パケットバッファメモリｍ１に、パケット長（１５２２byte）＋タイムスタンプ（１５μsec）＋パケットを格納し、パケットポインタＲ／Ｗ部３３ｂとパケットポインタ管理メモリｍ２は、パケットの格納状態を管理する。
【００５１】
〔Ｓ５〕パケットＲ／Ｗ部３３ａは、パケットが送信可能であると認識すると、パケット長（１５２２byte）とタイムスタンプ（１５μsec）をパケットに先行して読み出し、パケット長をテーブルアドレス生成部３４ａへ送信し、タイムスタンプを遅延時間演算処理部３５ｂへ送信する。そして、一定時間経過後にパケットを読み出して送信制御部３５ｃへ送信する。
【００５２】
〔Ｓ６〕テーブルアドレス生成部３４ａは、パケット長が１５２２byteなので、テーブルアドレスを１４５８番とし、補正値テーブルＴ１から補正値＝４８８．３２μsecを検索する（∵図６）。そして、この補正値（４８８．３２μsec）は、遅延時間演算処理部３５ｂへ送信される。
【００５３】
〔Ｓ７〕遅延時間演算処理部３５ｂは、パラメータとして、タイムスタンプ（１５μsec）、補正値（４８８．３２μsec）、遅延時間ｔｄ（１００００μsec）を受信する。
〔Ｓ８〕遅延時間演算処理部３５ｂは、受信制御部３２がタイムスタンプ（１５μsec）をパケットに付加してから（＝受信制御部３２がパケットを受信してから）、送信制御部３５ｃがＤＭＵＸ処理部２０へパケットを送信するまでに発生させるべき遅延発生時間を求める（すなわち、遅延時間制御部３０内部で発生させるべき遅延時間を求める）。
【００５４】
この場合、保持してある遅延時間（１００００μsec）から補正値（４８８．３２μsec）を差し引いたが時間９５１１．６８μsec（＝１００００μsec−４８８．３２μsec）が、遅延発生時間となる。
【００５５】
〔Ｓ９〕遅延時間演算処理部３５ｂは、遅延発生時間（９５１１．６８μsec）と、タイムスタンプ（１５μsec）とを加算した時間（９５２６．６８μsec）を、基準タイマ３１が示したときに送信指示を送信制御部３５ｃへ出す。
【００５６】
〔Ｓ１０〕送信制御部３５ｃは、送信指示を受信すると、パケットＲ／Ｗ部３３ａから送られたパケットをＤＭＵＸ処理部２０へ出力する。
〔Ｓ１１〕ＤＭＵＸ処理部２０は、パケットを受信すると、ＤＭＵＸ処理後、ポートＰ０〜Ｐｎの中の該当ポートを介して、パケットをネットワーク側へ出力する。
【００５７】
ここで、パケット長を考慮した遅延時間を発生させることができない従来のネットワーク評価技術においては、図８の例でいえば、１５２２byteのパケット長ならば、１０４８８．２μsecとなり、約５００μsecの誤差を発生することになる。また、装置内部で発生する遅延誤差はパケット長により異なるために、遅延ジッタ（遅延時間の揺らぎ）が加わり、遅延時間が変動するといった欠点があった。
【００５８】
一方、上記で説明したネットワーク模擬装置１によれば、（Δａ＋Δｂ）の値をパケット毎にパケット長に応じて求め、パケット送出タイミングのための演算パラメータの１つとして計算することにより、実際のパケット遅延時間は、設定された遅延時間ｔｄにきわめて近い値とすることが可能となる。
【００５９】
したがって、従来と比べて高精度なパケットの伝送遅延を発生することが可能となり、遅延により影響を受けるネットワークアプリケーションやネットワーク機器の検証に有益であり、今後のＩＰネットワークの品質向上に寄与するところが大きい。
【図面の簡単な説明】
【００６０】
【図１】ネットワーク模擬装置の原理図である。
【図２】ネットワークシステムに対するネットワーク模擬装置の適用例を示す図である。
【図３】ネットワーク模擬装置の構成を示す図である。
【図４】ＭＵＸ処理部の構成を示す図である。
【図５】ＤＭＵＸ処理部の構成を示す図である。
【図６】補正値設定部の構成を示す図である。
【図７】設定した遅延時間後にパケットを送出するまでの動作概要を示す図である。
【図８】設定した遅延時間後にパケットを送出するまでの動作を示すフローチャートである。
【符号の説明】
【００６１】
１  ネットワーク模擬装置
１０  パケット入力処理部
２０  パケット出力処理部
３１  基準タイマ
３２  受信制御部
３３  パケット情報書き込み／読み出し部
３４  補正値設定部
３５  パケット送信タイミング算出部
ｔｄ  遅延時間
【図１】
2006050319.tif 000003
【図２】
2006050319.tif 000004
【図３】
2006050319.tif 000005
【図４】
2006050319.tif 000006
【図５】
2006050319.tif 000007
【図６】
2006050319.tif 000008
【図７】
2006050319.tif 000009
【図８】
2006050319.tif 000010