3.1.1 HSC2手順(非同期モード)の送受信の方法
(1) コネクションの確立
TP1/NET/HSCは,コネクションを確立してから,相手システムとの回線を接続して,メッセージの送受信をします。コネクションは,通信管理との論理的な通信路です。
ユーザは,通信相手システムとID交換をするかどうかを,MCF通信構成定義(mcftalccn -j)のidchangeオペランドで指定できます。ID交換をすることを指定した場合,回線接続時にターミナルIDを交換して,正しい相手システムであるかどうかを確認できます。ID交換をしないことを指定した場合,ターミナルIDによる相手システムの確認をしないでコネクションを確立し,回線の接続をします。
コネクションの確立には,自動確立と手動確立があります。コネクションが確立すると,状態通知イベント(COPNEVT)を通知します。
- 自動確立
MCF通信構成定義(mcftalccn -i)でautoを指定した場合,OpenTP1開始時および再開始時に自動的に確立します。
- 手動確立
MCF通信構成定義(mcftalccn -i)でmanualを指定した場合,運用コマンド(mcftactcn)で確立します。
HSC2手順の場合のコネクションの確立について,次の図に示します。
図3-1 HSC2手順(非同期モード)のコネクションの確立
![[図データ]](figure/zu030100.gif)
- OpenTP1システムの開始および再開始,または運用コマンド(mcftactcn)を入力します。
- TP1/NET/HSCは,通信管理に対して,該当するコネクションに定義されているすべての回線の接続準備をします。
- 1回線の回線接続の準備が終了した時点で,コネクション確立とみなされます。
- TP1/NET/HSCは,コネクションが確立されると状態通知イベント(COPNEVT)を通知します。MCFアプリケーション定義にCOPNEVTが定義されていない場合は,MHPは起動しません。
- コネクションが確立し,相手システムとの回線を接続できる状態です。
(2) 回線の接続
コネクション確立後,回線の接続をします。
回線が接続されると,自システムの論理端末,回線,相手システムの三者の結び付きは,回線が切断されるまで固定しています。したがって,回線の接続から切断までの間,メッセージは固定された論理端末と回線を経由して送受信されます。
回線の接続には,発信と着信の場合があります。
(a) 発信の場合の回線の接続
- ID交換する場合
- コネクション確立後にsend関数でメッセージの送信を要求すると,TP1/NET/HSCは,MCF通信構成定義(mcftalcle -d)のdialnoオペランドで指定した相手システムのダイヤル番号を決定します。
- MCF通信構成定義(mcftalccn -n)のtidオペランドで指定した相手システムのターミナルIDと,1.のダイヤル番号でダイヤリングをされた相手システムからのターミナルIDを交換します。IDが一致した場合,回線を接続します。IDが一致しないときは,障害通知イベント(CERREVT)が通知されます。
- ID交換しない場合
- コネクション確立後にsend関数でメッセージの送信を要求すると,TP1/NET/HSCは,MCF通信構成定義(mcftalcle -d)のdialnoオペランドで指定した相手システムのダイヤル番号を決定します。
- 1.のダイヤル番号でダイヤリングをし,相手システムが受諾すると,回線が接続されます。
(b) 着信の場合の回線の接続
- ID交換する場合
- 相手システムからの回線接続を着信した場合,IDを交換します。IDが一致していれば相手システムからのメッセージの送信を待ちます。UAPに対して回線接続したことの通知はしません。
- IDが許可されないときは回線を切断し,障害通知イベント(CERREVT)は通知されません。
- 回線接続後,TP1/NET/HSCは,MCF通信構成定義(mcftalcle -n)のtidオペランドから,受信したターミナルIDに対応する論理端末を検索し,通信に使用する論理端末名称を決定します。
- ID交換しない場合
- 相手システムからの回線接続を着信した場合,TP1/NET/HSCは,相手システムからのメッセージを受信します。最終セグメントを受信した時点で,論理端末名称決定UOCを呼び出します。
- 論理端末名称決定UOCでメッセージ送受信に使用する論理端末を決定します。論理端末名称決定UOCが登録されていない場合,該当するコネクションに定義されている論理端末のうち,先頭の論理端末を使用します。ただし,先頭の論理端末がほかの回線と結び付いている場合は,回線を切断します。
(3) AP間通信
(4) 回線の切断
相手システムと接続中の回線を切断する方法は次のとおりです。
(a) 相手システムからの切断
相手システムから回線切断要求を受信すると,回線が切断されます。
(b) 自システムからの切断
EOT交換または時間監視の結果,一定時間にメッセージの送受信が発生しない場合,TP1/NET/HSCは,回線を切断します。EOT交換については,「3.6.1 非同期モードのEOT交換」を参照してください。
(5) コネクションの解放
コネクションの解放には,自動解放と手動解放があります。コネクションが解放されると,状態通知イベント(CCLSEVT)を通知します。
- 自動解放
オンライン終了時,自動的にコネクションを解放します。
- 手動解放(正常解放)
運用コマンド(mcftdctcn)に-fオプションを指定しないで入力して,コネクションを正常に解放します。コマンド入力時に送受信中のメッセージがある場合,送受信が完了した時点でコネクションを解放します。
- 手動解放(強制解放)
運用コマンド(mcftdctcn)に-fオプションを指定して入力して,コネクションを強制的に解放します。コマンド入力時に送受信中のメッセージがある場合,送信メッセージは出力キューに戻し,受信メッセージは破棄してコネクションを解放します。
コネクションの自動解放および手動解放(正常解放)の流れを次の図に示します。
図3-2 HSC2手順(非同期モード)のコネクションの解放
![[図データ]](figure/zu030200.gif)
- OpenTP1システムの終了,または運用コマンド(mcftdctcn)を入力します。
- TP1/NET/HSCは,該当するコネクション配下のすべての回線を切断します。
- すべての回線が切断され,コネクション解放の準備が終了すると,コネクションが解放されます。
- TP1/NET/HSCは,コネクションが解放されると状態通知イベント(CCLSEVT)を通知します。MCFアプリケーション定義にCCLSEVTが定義されていない場合は,MHPは起動しません。
(6) コネクション切断後の再確立
すべての回線が使用できなくなると,コネクションを切断状態にします。コネクションが切断状態になると,障害通知イベント(CERREVT)を通知します。
コネクションを切断したあと,ユーザはログメッセージでコネクションの再確立が必要かどうかを判断します。必要であれば,運用コマンド(mcftactcn)を入力してコネクションの再確立をします。