3.11.1 RPC応答受信待ち時間に関する定義(rpc_watchtime)
形式
[rpc_watchtime [-s {msg|def}] [-k {threshold|fixed}] [-t "[thresholdtime=タイムアウト時間設定の閾値] [watchtime=タイムアウト時間]"]]
機能
RPC・RAP電文の要求に対するテスト対象システムからの応答の到着待ち時間を決定する定義。省略した場合は、要求電文中に設定されている待ち時間を利用します。
(既存システムからの応答電文の到着待ち時間は、要求電文中に設定されている待ち時間を利用します。)
また、要求電文中に待ち時間の情報がない場合(※)は180秒を仮定します。
(※)例えば以下の場合があります。
-
SUP、SPPで応答待ち時間(watch_time定義)に0を指定した場合
-
CUPで、DCWATCHTIMRPCINHERIT定義がデフォルト(N)の場合、または同定義にYを指定し、かつ応答待ち時間(DCWATCHTIM定義)に0を指定した場合
-
RAPコネクション解放依頼電文
-
なお、待ち時間監視には以下の誤差が発生する場合があります。
- t≦T≦t+5
-
t:watchtime指定値または電文中に指定された応答待ち時間
T:システムテスト支援が実際に待ち合わせた時間
指定数
0〜1
オプション:-s
- なし
-
- 設定値と省略値
-
msg|def 《msg》
- 説明
-
電文に設定されている値を応答到着待ち時間とするか、-tに設定した値を応答到着待ち時間とするかを指定します。
msg:電文に設定されている値を応答待ち時間とします。
def:-tに定義されている値を応答待ち時間とします。
オプション:-k
- なし
-
- 設定値と省略値
-
fixed|threshold 《fixed》
- 説明
-
定義による応答到着待ち時間を設定する場合に、全ての電文に対して一律同じ値を設定するか、閾値を設定し、それを超える待ち時間を電文中に持っているものに対してのみ定義値を適用するかを決定します。
fixedの場合は全ての電文に対して一律に、thresholdの場合は閾値を超えている電文に対してのみ定義値を設定します。
- 前提条件
-
本フラグ引数は、rpc_watchtimeの-sにdefが指定されているときのみ有効です。
それ以外の場合は指定があると構文エラーとなります。
- ほかのオペランドとの関連
-
fixedを指定した場合は、rpc_watchtimeの-t watchtimeに、待ち時間の数値を指定してください。
thresholdを指定した場合は、rpc_watchtimeの-t thresholdtimeに待ち時間の数値を指定してください。
オプション:-t
- thresholdtime
-
- 設定値と省略値
-
〈符号なし整数〉(1〜65535) 《180》 (単位:秒)
- 説明
-
応答到着待ち時間を適応する際の閾値を設定します。
電文に元々設定されていた待ち時間が、この設定値より大きい場合(0による無限待ちを含む)、設定値を待ち時間として採用します。
電文に元々設定されていた待ち時間がない場合は、元の待ち時間を180秒と仮定して動作します。
- 前提条件
-
本フラグメンバはrpc_watchtimeの-sにdef、rpc_watchtimeの-kにthresholdの両方が指定されているときのみ有効です。
それ以外の場合は指定があると構文エラーとなります。
- 利点
-
閾値を利用することで、閾値よりも待ち時間が小さいものはそのまま変更せず、大きいものだけを閾値まで丸めることができます。
これにより、本番では余裕を持って応答待ち時間を設定していた電文と、余裕のない待ち時間を設定していた2種類の電文があり、これをシステムテスト支援でテスト対象システムへ送信するときに、全ての電文の待ち時間を一律で変更してしまうのではなく、余裕のあった電文だけを閾値により待ち時間を変更させることができます。
例
外部システムから既存システムへの要求電文として、
・応答待ち時間180秒の電文
・応答待ち時間10秒の電文
の2種類が存在し、これを並行実行・リプレイ実行・PCAP実行でテスト対象システムへ送信する際に、rpc_watchtime -s def -k threshold -t "thresholdtime=60"を設定しておくことで、
・応答待ち時間180秒の電文は応答待ち時間を60秒に変更してテスト対象システムへ送信
・応答待ち時間10秒の電文はそのままテスト対象システムへ送信
となります。
- watchtime
-
- 設定値と省略値
-
〈符号なし整数〉 (0〜65535) 《180》(単位:秒)
- 説明
-
応答到着待ち時間を秒単位で設定します。
0を指定した場合は無限待ちになります。
- 前提条件
-
本フラグメンバはrpc_watchtimeの-sにdef、rpc_watchtimeの-kにfixedの両方が指定されているときのみ有効です。
それ以外の場合は指定があると構文エラーとなります。
- ほかのオペランドとの関連
-
rpc_watchtime -sオプション
rpc_watchtime -kオプション
- 利点
-
定義で設定した数値でテスト対象システムからの電文応答を待つことができます。
全ての電文に対して一律で設定できるため、細かな待ち時間の調整が必要ない場合に、設定が容易になります。
- 注意事項
-
0を指定した場合は応答が来るまで無限に待ち続けるため、ネットワーク障害などにより電文が受信できなかった場合、処理が止まってしまう場合があります。
このような事態を避けるために、必要な場合以外は有限待ちになる数値を指定することをお勧めします。