Hitachi

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


2.1.5 UAの開局と閉局

TP1/NET/User Agentは,相手システムとのコネクションの確立時,UAを開局してメッセージを送受信します。

〈この項の構成〉

(1) UAの開局

UAの開局方法には,次の三つがあります。

コネクション確立時に,「個別開局」指定をした場合,または論理端末に障害があって閉局した場合は,次のどちらかの方法で開局します。

すべてのUAの開局モードが個別開局(コネクション定義(mcftalccn -k)にeachを指定)の場合,該当するコネクション内のすべてのUAに関連する論理端末を閉塞扱いします。なお,論理端末が閉塞状態であっても,該当する論理端末に対するUAPからの送信要求はできます。ただし,メッセージは出力キューに格納するので,論理端末定義(mcftalcle -m)で指定したメモリ出力メッセージ最大格納数またはディスク出力メッセージ最大格納数を超えない範囲が限度となります。

(a) コネクション確立時のUAの自動開局

すべてのUAの開局モードが一括開局(コネクション定義(mcftalccn -k)にtogetherを指定)の場合,コネクション確立時に,すべてのUAがメッセージ送受信可能状態になります。

UAが開局すると,該当するUAの論理端末の閉塞状態を解除します。論理端末の閉塞解除時に状態通知イベント(COPNEVT)を起動する場合(コネクション定義(mcftalccn -f)のleopnevtオペランドにuseを指定)は,COPNEVTを通知します。

(b) 運用コマンドによるUAの個別開局

TP1/NET/User Agentは,開局されていないUAに対して運用コマンド(mcftactle)を受け付けると,相手システムにUOPN要求を送信します。そして相手システムからUOPN応答を受信すると,UAが開局し,メッセージ送受信可能状態になります。

UAが開局すると,該当するUAの論理端末の閉塞状態を解除します。運用コマンドによるUAの個別開局の処理の流れを次の図に示します。

図2‒8 運用コマンドによるUAの個別開局

[図データ]

注※

論理端末の閉塞解除時に状態通知イベント(COPNEVT)を起動する場合(コネクション定義(mcftalccn -f)のleopnevtオペランドにuseを指定)だけ通知します。

(c) APIによるUAの個別開局

TP1/NET/User Agentは,開局されていないUAに対してAPI(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))を発行すると,相手システムにUOPN要求を送信します。そして,TP1/NET/User Agentが相手システムからUOPN応答を受信すると,UAが開局し,メッセージ送受信可能状態になります。

UAが開局すると,該当するUAの論理端末の閉塞状態を解除します。APIによるUAの個別開局の処理の流れを次の図に示します。

図2‒9 APIによるUAの個別開局

[図データ]

注※

論理端末の閉塞解除時に状態通知イベント(COPNEVT)を起動する場合(コネクション定義(mcftalccn -f)のleopnevtオペランドにuseを指定)だけ通知します。

(2) UAの閉局

UAの閉局方法には,次の四つがあります。

また,TP1/NET/User AgentはUAを閉局するとき,UERRを使用します。

(a) 運用コマンドによるUAの閉局

TP1/NET/User Agentは,運用コマンド(mcftdctle)を受け付けると,UERRを送信します。そして相手システムからのUERR(障害処理完了)を受信し,UAが閉局します。

UAが閉局すると,TP1/NET/User Agentは関連する論理端末を閉塞すると同時に,障害通知イベント(CERREVT)を起動します。

運用コマンドによるUAの閉局の処理の流れを次の図に示します。

図2‒10 運用コマンドによるUAの閉局

[図データ]

(b) APIによるUAの閉局

TP1/NET/User Agentは,API(dc_mcf_tdctle関数またはCBLDCMCF('TDCTLE△△'))を発行すると,UERRを送信します。そして相手システムからのUERR(障害処理完了)を受信し,UAが閉局します。

UAが閉局すると,TP1/NET/User Agentは関連する論理端末を閉塞すると同時に,障害通知イベント(CERREVT)を起動します。

APIによるUAの閉局の処理の流れを次の図に示します。

図2‒11 APIによるUAの閉局

[図データ]

(c) 相手システムからのUAの閉局

相手システムからUERRを受信すると,TP1/NET/User AgentではUERR(障害処理完了)を送信し,UAを閉局します。UAを閉局すると,TP1/NET/User Agentは関連する論理端末を閉塞すると同時に,障害通知イベント(CERREVT)を起動します。

相手システムからのUAの閉局の処理の流れを次の図に示します。

図2‒12 相手システムからのUAの閉局

[図データ]

(d) MCF検出障害時のUAの閉局

TP1/NET/User Agentは,UAP異常終了,キュー障害などを検出した場合,UERRを送信します。そして相手システムからのUERR(障害処理完了)を受信し,UAが閉局します。

UAが閉局すると,TP1/NET/User Agentは関連する論理端末を閉塞すると同時に,障害通知イベント(CERREVT)を起動します。

MCF検出障害時のUAの閉局の処理の流れを次の図に示します。

図2‒13 MCF検出障害時のUAの閉局

[図データ]