Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プロトコル TP1/NET/TCP/IP編


2.1.15 無通信状態監視

無通信状態とは,任意のコネクションにおいて,相手システムとの間で,メッセージの送信または受信がない状態のことです。TP1/NET/TCP/IPは,この無通信状態を監視します。無通信状態の監視時間は,コネクション定義(mcftalccn -k)のnotrftimeオペランドで指定します。指定した時間を超過した場合,何らかの障害が発生しているものとして,コネクションを強制解放します。

コネクション障害を検出する機能としてキープアライブがあります。キープアライブがソケットオプション「SO_KEEPALIVE」を使用して一定間隔でパケットを送信しながらコネクションの状態を監視するのに対し,無通信状態監視機能はパケットを送信しないでコネクションの状態を監視します。

なお,無通信状態の監視時間がタイムアウトした場合は,KFCA16520-Eが出力されます。

TP1/NET/TCP/IPは,各コネクションに対して該当の論理端末が閉塞解除された時点から,論理端末の閉塞またはOpenTP1の終了(正常終了,計画停止A,計画停止B)までを監視します。また,メッセージを受信,または送信すると,状態監視をリセットし,改めて次のメッセージの受信または送信までの監視を開始します。

TP1/NET/TCP/IPが無通信状態を監視する区間を,dc_mcf_send関数およびdc_mcf_receive関数を使用する場合を例に,次の図に示します。

図2‒29 無通信状態を監視する区間

[図データ]