JP2003283594A - 通信プロトコルの試験装置 - Google Patents

通信プロトコルの試験装置

Info

Publication number
JP2003283594A
JP2003283594A JP2002083132A JP2002083132A JP2003283594A JP 2003283594 A JP2003283594 A JP 2003283594A JP 2002083132 A JP2002083132 A JP 2002083132A JP 2002083132 A JP2002083132 A JP 2002083132A JP 2003283594 A JP2003283594 A JP 2003283594A
Authority
JP
Japan
Prior art keywords
communication protocol
test
device under
under test
data
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.)
Pending
Application number
JP2002083132A
Other languages
English (en)
Inventor
Tomohiko Ogishi
智彦 大岸
Toru Hasegawa
亨 長谷川
Satohiko 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.)
KDDI Research Inc
Original Assignee
KDDI R&D Laboratories Inc
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 KDDI R&D Laboratories Inc filed Critical KDDI R&D Laboratories Inc
Priority to JP2002083132A priority Critical patent/JP2003283594A/ja
Publication of JP2003283594A publication Critical patent/JP2003283594A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Maintenance And Management Of Digital Transmission (AREA)

Abstract

(57)【要約】 【課題】 被試験装置の通信プロトコルに関する内部変
数を推定し、この推定結果に基づいて通信プロトコルを
評価する通信プロトコルの試験装置を提供する。 【解決手段】 被試験装置と通信してデータを交換し、
被試験装置に実装されている通信プロトコルを評価する
通信プロトコルの試験装置において、被試験装置の通信
プロトコルに関する内部変数を推定する推定手段と、前
記推定した内部変数に基づいて、被試験装置の通信プロ
トコルを評価する評価手段とを含む。前記推定手段は、
被試験装置から試験装置に送信されたデータ、および試
験装置から被試験装置へ送信されたデータに基づいて前
記内部変数を推定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、通信プロトコルの
試験装置に係り、特に、シナリオ記述に基づいて通信プ
ロトコルを試験する通信プロトコル試験装置に関する。
【0002】
【従来の技術】ネットワークを介して接続された端末同
士は、所定の通信プロトコルにしたがって動作すること
で情報を相互に送受し合う。このような装置の通信プロ
トコルを試験するために、従来から通信プロトコルの試
験装置が用いられている。通信プロトコル試験装置は、
被試験装置に送信したメッセージに対する応答の有無や
そのメッセージの内容等をチェックすることで、被試験
装置に実装されている通信プロトコルが正常か否かを調
べる。従来から種々の通信プロトコル試験装置が提案さ
れており、たとえば以下のようなものがあった。
【0003】(1) 通信プロトコル適合性試験装置 特開平7−245641号公報では、OSI通信システム
を対象に、送受信のPDU(Protocol Data Unit) を全てシ
ナリオに記述して試験を実行する通信プロトコル適合性
試験装置が提案されている。送信PDUを処理する場合
は、設定されたパラメータの情報も含め、そのPDUの送
信を行う。受信PDUを処理する場合は、そのPDUが受信さ
れたかどうかを確認し、PDUのパラメータも含めて一致
するか否かの判定を行う。
【0004】(2) トラヒックジェネレータ IPアドレスやTCPのポート番号など一部のパラメータが
固定され、他のパラメータがランダムに設定されるパケ
ットを大量に生成・送出してネットワークのパフォーマ
ンスを測定するトラヒックジェネレータとして、例えば
IXIA(http://www.ixiacom.com)が知られている。IXIA
では、パケットの送信が一定周期あるいはランダムな
周期で行われる。
【0005】(3) ttcpなどのTCP試験ツール ttcp (RFC2398の2.11.参照) は、TCP上で動作するアプ
リケーションであり、パケットのサイズや送受信バッフ
ァサイズなどを設定して、TCPのデータ転送に関するパ
フォーマンスを測定する。
【0006】
【発明が解決しようとする課題】通信プロトコルの評価
は、これを実装した被試験装置からネットワーク上に出
力されるデータを監視することにより行われる。しかし
ながら、通信プロトコルは、その内部変数をパラメータ
として制御されることから、通信プロトコルを正確に評
価するためには、当該通信プロトコルの内部変数を推定
し、この推定結果と出力データとに基づいて通信プロト
コルの挙動を認識することが望ましい。
【0007】しかしながら、上記した従来技術では被試
験装置の通信プロトコルに関する内部変数を推定するこ
とができなかったので、正確な評価を下すことがでなか
った。
【0008】本発明の目的は、上記した従来技術の課題
を解決し、被試験装置の通信プロトコルに関する内部変
数を推定し、この推定結果に基づいて通信プロトコルを
評価する通信プロトコルの試験装置を提供することにあ
る。
【0009】
【課題を解決するための手段】上記した目的を達成する
ために、本発明は、被試験装置と通信してデータを交換
し、被試験装置に実装されている通信プロトコルを評価
する通信プロトコルの試験装置において、被試験装置の
通信プロトコルに関する内部変数を推定する推定手段
と、前記推定した内部変数に基づいて、被試験装置の通
信プロトコルを評価する評価手段とを含むことを特徴と
する。
【0010】上記した特徴によれば、被試験装置の通信
プロトコルに関する内部変数を分岐条件や判断条件のパ
ラメータとするシナリオを作成できるので、多種多様な
試験を簡単なシナリオで正確に行えるようになる。
【0011】
【発明の実施の形態】以下、図面を参照して本発明の好
ましい実施の形態について説明する。 図1、2は、本
発明を適用したTCP試験装置のネットワークへの適用例
を示したブロック図である。
【0012】本発明のTCP試験装置1は、試験対象とな
る被試験装置2とftpやttcpなどの汎用的なTCP通信アプ
リケーションを用いて試験用のTCP通信を行う。被試験
装置2は、図1に示したように、LAN上に存在する場合
(形態1) と、図2のように、インターネット3を介し
て存在する場合 (形態2) とが考えられる。
【0013】図3は、上記した試験装置1の構成を示し
たブロック図である。上位層11は、当該試験装置1に
対してデータの送受信を要求するアプリケーションに相
当する。通常プロトコル処理部12は、通信プロトコル
本来の手順に従って自身の内部変数を管理し、上位層1
1および下位層15とパケットの送受信を行う。シナリ
オインタプリタ部14は、被試験装置2の通信プロトコ
ルに関する内部変数を推定する内部変数推定部141、
および前記被試験装置2の内部変数と出力データとに基
づいて通信プロトコルを評価する評価部142を含み、
下位層15に送信あるいは下位層15から受信するパケ
ットに対して、シナリオに記述された条件に応じた処理
を行う。
【0014】ログ収集部13は、下位層15が送受信し
たパケット、およびシナリオインタプリタ14の制御に
より下位層15が送受信しなかったパケットを通信ログ
として記録する。試験結果表示部16は、ログ収集部1
3が収集した通信ログに従って試験結果を表示する。下
位層15は 上位層11からのデータ送信要求に応答し
てネットワーク上にデータを送信し、ネットワークから
受信したデータを上位層11へ送信する。
【0015】前記試験装置1のシナリオインタプリタ部
14における内部変数推定部141は、被試験装置2の
通信プロトコルに関する内部変数の一部を推定する機能
を備え、これらの内部変数はシナリオの分岐条件や判断
条件として記述することができる。本実施形態では、被
試験装置2の内部変数のうち、以下の4つを推定でき
る。 (1)現在の送信シーケンス番号(snd_nxt) (2)応答確認済みの送信シーケンス番号(snd_una) (3)被試験装置2のウインドウサイズ(snd_win) (4)試験装置1が送信し、被試験装置2が受信したシー
ケンス番号(rcv_nxt)
【0016】なお、本実施形態では試験装置1の内部変
数と試験装置1が推定した被試験装置2の内部変数とを
区別するために、試験装置1により推定された被試験装
置2の内部変数には識別子[被]を付している。したがっ
て、単にsnd_unaと表記すれば、これは試験装置1の通
信プロトコルに関する内部変数であり、snd_una[被]と
表記すれば、これは試験装置1が推定した被試験装置2
の通信プロトコルに関する内部変数である。
【0017】(1)前記送信シーケンス番号(snd_nxt[被])
は、試験装置1の下位層15が被試験装置2から新しい
データを受信したときに、このデータに登録されている
シーケンス番号seqとデータ長lenとの加算値(seq+le
n)として推定される。推定値の更新は、前記加算値が
現在の送信シーケンス番号よりも大きい場合のみ行わ
れ、データがシナリオによって処理されない場合にも行
われる。
【0018】(2)前記応答確認済みの送信シーケンス番
号(snd_una[被])は、試験装置1の下位層15が新しい
データに対する応答確認を送信したとき (seq>=rcv_n
xt[被]かつack>snd_una[被]の場合)に、応答番号ackの
値として推定される。推定値の更新は応答確認が実際に
送出された場合のみ行われ、この送出がシナリオのアク
ションとしてなされた場合、通常処理でなされた場合を
問わない。
【0019】(3)前記被試験装置2のウインドウサイズ
(snd_win[被])は、試験装置1の下位層15が新しいデ
ータに対する応答確認あるいはウインドウを更新する応
答確認を送信したとき (seq>=rcv_nxt[被]かつ(ack>
snd_una[被]または(ack=snd_una[被]かつwin>snd_win
[被]))の場合)にwinの値として推定される。推定値の更
新はデータが実際に送出された場合のみ行われ、シナリ
オのアクションとして送出された場合、通常処理で送出
された場合が共に該当する。
【0020】(4)前記被試験装置のシーケンス番号 (rcv
_nxt[被])は、試験装置1の下位層15が新しいデータ
を送信したとき (seq+len>rcv_nxt[被]の場合)にseq
+lenの値として推定される。推定値の更新はデータが
実際に送出された場合のみ行われ、シナリオのアクショ
ンとして送出された場合、通常処理で送出された場合が
共に該当する。
【0021】被試験装置2の内部変数の値に基づく条件
判定として、本実施形態では「retransmit」(再送パケ
ットであるか否か), 「snd_flight」(被試験装置2が
送信し、試験装置1が確認していないパケットの総バイ
ト数), 「newack」(ニューアックであるか否か),「d
upack」(重複アックであるか否か), 「winupdack」
(ウインドウサイズ更新アックであるか否か)の判定が
可能である。
【0022】条件「retransmit」は、受信パケットにお
いて、len>0, seq<snd_nxt[被]の場合に成立する。
条件「snd_flight」は、受信パケットにおいて、前記
(2)における送信シーケンス番号(snd_una[被])の推定後
におけるsnd_nxt[被]−snd_una[被]の値を表す。条件
「newack」は、送信パケットにおいてack>rcv_una[被]
の場合に成立する。条件dupackは、送信パケットにおい
て、ack=snd_una[被],win=snd_win[被]の場合に成立
する。条件「winupdack」は、送信パケットにおいてack
=snd_una[被],win>snd_win[被]の場合に成立する。
【0023】次いで、本実施形態による通信プロトコル
の試験方法を、データ転送開始時の輻輳制御アルゴリズ
ムである「slow start」が正しく実行されているか否か
を確認する試験を例にして詳細に説明する。
【0024】TCP/IPにおける「slow start」では、デー
タ転送に先立って受信局(本実施形態では、試験装置
1)から送信局(本実施形態では、被試験装置2)へ自
身のTCPウインドウサイズが宣言される。TCPウインドウ
サイズは、送信局がACKパケットを受信するまで送り続
けることが可能なデータ量である。したがって、被試験
装置2に「slow start」が正しく実装されていれば、デ
ータがウインドウサイズを超えて送信されることはな
い。
【0025】図4は、試験装置1のシナリオインタプリ
タ部14に格納されているシナリオの内容を示した図で
あり、本実施形態のシナリオは8つのシナリオ行から構
成されている。
【0026】シナリオ第1行ないし第3行では、上位層
11から受信したnewack(新しいデータに対する応答確
認:ニューアック)を、シナリオインタプリタ部14が
通常の通信プロトコルにしたがって(transparent)ネ
ットワークに送信する。シナリオ第4行−第8行では、
「{}」内の各シナリオ行のいずれか(ALTERNATIVE)
が実行されると次の処理へ進む。但し、(ALWAYS)から
始まるシナリオ行は除かれるので、本実施形態では、第
6行または第7行が実行されると次の処理へ進む。
【0027】シナリオ第5行では、新しいデータに対す
る応答確認の送信(send newack)が常に(ALWAYS)無
視(ignore)される。すなわち、newackの送信が禁止さ
れる。シナリオ第6行では、データを受信しようとした
とき、送信しようとしたデータの最大シーケンス番号を
表す内部変数(snd_nxt)からrcv_unaを引いた値で代表
されるsnd_fight が最大セグメント長の5倍よりも大き
い場合に、試験結果が失敗であったという記録(FAIL)を
残して試験を終了する。シナリオ第7行では、受信パケ
ットが再送パケットであった場合に、試験が成功した旨
の記録(PASS)を残して試験を終了する。
【0028】図5、6は、前記シナリオに基づいて試験
装置1と被試験装置2との間で実行されるデータ通信の
シーケンスを示した図であり、図5は、被試験装置2に
実装されている輻輳制御アルゴリズムが正常である場合
のシーケンス、図6は、被試験装置2に実装されている
輻輳制御アルゴリズムが異常である場合のシーケンスを
示している。
【0029】図5において、被試験装置2がシーケンス
番号1−100(seq=1,len=100)のパケットを
含むデータを送信し、さらにシーケンス番号101−2
00のパケットを含むデータを送信すると、試験装置1
では、通常プロトコル処理部12が応答番号201のA
CKパケットをシナリオインタプリタ部14へ転送す
る。シナリオインタプリタ部14は、前記シナリオ第1
行に基づいて、これがnewackであるか否かを判定し、ne
wackであれば、当該ACKパケット(ack=201)を通常
のプロトコルにしたがって送信する。
【0030】前記ACKパケットがnewackであるか否かの
判別は、被試験装置2の内部変数の一つであるsnd_una
[被](応答確認済み送信シーケンス番号)と前記ACKパ
ケットの応答番号(ack)とを比較し、ACKパケットの応
答番号ackがsnd_una[被]よりも大きければ、今回のACK
パケットがnewackと判定される。ここではnewackと判定
されたものとして説明を続ける。試験装置1はさらに、
前記ACKパケットの送信と同時に前記内部変数snd_una
[被]を更新する。
【0031】被試験装置2は、前記ACKパケット(ack=
201)を受信すると、シーケンス番号201−300
のパケットを含むデータ、シーケンス番号301−40
0のパケットを含むデータおよびシーケンス番号401
−500のパケットを含むデータを続けて送信する。
【0032】試験装置1は、前記データ(seq=301
−400)を受信すると、前記シナリオ第2行に基づい
てACKパケット(ack=401)を送信し、前記デー
タ(seq=401−500)を受信すると、前記シナリ
オ第3行に基づいてACKパケット(ack=501)を
送信する。
【0033】被試験装置2は、前記2つのACKパケッ
ト(ack=401,501)を受信すると、シーケンス
番号501−600のパケットを含むデータ、シーケン
ス番号601−700のパケットを含むデータ、シーケ
ンス番号701−800のパケットを含むデータ、シー
ケンス番号801−900のパケットを含むデータおよ
びシーケンス番号901−1000のパケットを含むデ
ータを続けて送信する。
【0034】試験装置1では、前記データ(seq=60
1−700)、同(seq=801−900)および同(s
eq=901−1000)のそれぞれに対して通常プロト
コル処理部12がACKパケットを送信しようとするが、
シナリオ第5行により、これらのACKパケットの送信が
シナリオインタプリタ部14において阻止される。な
お、試験装置1のシナリオインタプリタ部14は、前記
各データを受信するごとに前記被試験装置2の内部変数
推定値snd_nxt[被](送信シーケンス番号)を更新す
る。
【0035】さらに、試験装置1では前記シナリオ第6
行に基づいて、各データが受信される毎にsnd_nxt[被]
(試験装置1において推定した、被試験装置2の送信シ
ーケンス番号)からsnd_una[被](試験装置1において
推定した、被試験装置2の応答確認済み受信シーケンス
番号)を減じた値、すなわちACKパケットを未受信であ
る送信済みバイト数snd_flight[被]を求め、これが最大
セグメント長の5倍を超えているか否かが判定される。
【0036】ここで、被試験装置2に実装されている
「slow start」が正常に動作していれば、snd_flight
[被]が最大セグメント長の5倍を超えるよりも前に被試
験装置2から再送データが送信される。そして、この再
送データが試験装置1において受信されると、シナリオ
第7行に基づいて、試験に成功した旨の識別子「PASS」
を残して当該処理を終了する。
【0037】これに対して、図6に示したように、試験
装置1からの2つのACKパケット(ack=401,5
01)に応答して、前記5つのデータに続いて、さらに
データ(seq=1001−1100)が送信されると、
試験装置1では、前記snd_flight[被]が最大セグメント
長の5倍を超えたと判断されるので、試験に失敗した旨
の識別子「FAIL」を残して当該処理を終了する。
【0038】このように、本実施形態によれば、試験装
置1が被試験装置2の内部変数を推定し、この推定値を
パラメータとするシナリオに基づいて当該被試験装置を
評価するので、多様な評価が可能になる。
【0039】
【発明の効果】本発明によれば、被試験装置の通信プロ
トコルに関する内部変数を分岐条件や判断条件のパラメ
ータとするシナリオを作成できるので、多種多様な試験
を簡単なシナリオで正確に行えるようになる。
【図面の簡単な説明】
【図1】 試験装置と被試験装置との接続例(その1)
を示した図である。
【図2】 試験装置と被試験装置との接続例(その2)
を示した図である。
【図3】 試験装置のブロック図である。
【図4】 シナリオの一例を示した図である。
【図5】 試験装置−被試験装置間の通信シーケンスを
示した図である。
【図6】 試験装置−被試験装置間の通信シーケンスを
示した図である。
【符号の説明】
1…試験装置,2…被試験装置,11…上位層,12…
通常プロトコル処理部,13…ログ収集部,14…シナ
リオインタプリタ部,15…下位層,16…試験結果表
示部
フロントページの続き (72)発明者 加藤 聰彦 埼玉県上福岡市大原二丁目1番15号 株式 会社ケイディーディーアイ研究所内 Fターム(参考) 5K035 AA03 AA07 CC03 CC06 EE01 EE03 GG05 GG15 HH06

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 被試験装置と通信してデータを交換し、
    被試験装置に実装されている通信プロトコルを評価する
    通信プロトコルの試験装置において、 被試験装置の通信プロトコルに関する内部変数を推定す
    る推定手段と、 前記推定した内部変数に基づいて、被試験装置の通信プ
    ロトコルを評価する評価手段とを含むことを特徴とする
    通信プロトコルの試験装置。
  2. 【請求項2】 前記推定手段は、被試験装置から試験装
    置に送信されたデータに基づいて前記内部変数を推定す
    ることを特徴とする請求項1に記載の通信プロトコルの
    試験装置。
  3. 【請求項3】 前記推定手段は、試験装置から被試験装
    置へ送信されたデータに基づいて前記内部変数を推定す
    ることを特徴とする請求項1または2に記載の通信プロ
    トコルの試験装置。
JP2002083132A 2002-03-25 2002-03-25 通信プロトコルの試験装置 Pending JP2003283594A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002083132A JP2003283594A (ja) 2002-03-25 2002-03-25 通信プロトコルの試験装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002083132A JP2003283594A (ja) 2002-03-25 2002-03-25 通信プロトコルの試験装置

Publications (1)

Publication Number Publication Date
JP2003283594A true JP2003283594A (ja) 2003-10-03

Family

ID=29231037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002083132A Pending JP2003283594A (ja) 2002-03-25 2002-03-25 通信プロトコルの試験装置

Country Status (1)

Country Link
JP (1) JP2003283594A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005074244A1 (en) * 2004-01-16 2005-08-11 Huawei Technologies Co., Ltd. Improved method and system for testing service cards on a multi-service provisioning platform
CN100459530C (zh) * 2005-10-13 2009-02-04 华为技术有限公司 测试适配器和测试工具系统及其测试方法
US8792358B2 (en) 2006-04-27 2014-07-29 Futurewei Technologies, Inc. Content aware transport layer multicast

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005074244A1 (en) * 2004-01-16 2005-08-11 Huawei Technologies Co., Ltd. Improved method and system for testing service cards on a multi-service provisioning platform
CN100459530C (zh) * 2005-10-13 2009-02-04 华为技术有限公司 测试适配器和测试工具系统及其测试方法
US8792358B2 (en) 2006-04-27 2014-07-29 Futurewei Technologies, Inc. Content aware transport layer multicast

Similar Documents

Publication Publication Date Title
JP3343054B2 (ja) インターネット対応リンクモニタ方法
Casetti et al. TCP Westwood: end-to-end congestion control for wired/wireless networks
US6757255B1 (en) Apparatus for and method of measuring communication performance
US5430709A (en) Network monitoring method and apparatus
EP1755314A2 (en) TCP normalisation engine
EP2234333A1 (en) System and method for estimation of round trip times within a tcp based data network
US10355961B2 (en) Network traffic capture analysis
US20090106448A1 (en) Data distribution management device and data distribution management method
US20070223529A1 (en) Methods and apparatus for estimating bandwidth of a data network
US6401127B1 (en) Adaptive timer for LLC type 2 reliable transport in a computer network
EP1709767A1 (en) Method of retransmitting data frame and network apparatus using the method
CN107222403A (zh) 一种数据传输方法、系统和电子设备
CN107104892A (zh) 网络加速的方法和装置
JP2003060735A (ja) 通信プロトコル試験装置
JP2003283594A (ja) 通信プロトコルの試験装置
JP3961415B2 (ja) プロトコル不具合自動検出方法、及び、プロトコル不具合自動検出装置
KR101376583B1 (ko) 이동통신 시스템에서 패킷 데이터 수신 응답 신호 구성방법 및 장치
JP3485066B2 (ja) トラフィックジェネレータ装置
JP2004140596A (ja) Tcp上のデータ転送における品質を推定する方法およびシステム
Kato et al. Intelligent protocol analyzer with TCP behavior emulation for interoperability testing of TCP/IP protocols
JP2017034627A (ja) 通信制御システムおよび通信制御方法
Buchholcz et al. Explicit loss notification to improve TCP performance over wireless networks
JP3919488B2 (ja) データ中継装置、データ中継方法、データ中継処理プログラム及びデータ中継処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2003224547A (ja) フロー制御方法
Gecse et al. Automated test of TCP congestion control algorithms