Hitachi

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


2.1.1 論理端末の閉塞解除と閉塞

論理端末の閉塞解除と閉塞の処理の流れについて説明します。

〈この項の構成〉

(1) 論理端末の閉塞解除

TP1/NET/UDPでAP間通信をするためには,論理端末の閉塞を解除する必要があります。論理端末の閉塞を解除すると,自システムのUDPプロトコルに自ポート番号が登録されて,TP1/NET/UDPでAP間通信ができる状態になります。

論理端末の閉塞を解除するには,次の3とおりの方法があります。

(a) OpenTP1の開始時および再開始時の閉塞解除

OpenTP1の開始時および再開始時に論理端末を自動的に閉塞解除できます。

論理端末を自動的に閉塞解除するには,論理端末定義(mcftalcle -i)にautoを指定します。

このオプションにmanualを指定する場合,次のどちらかの方法でTP1/NET/UDPの起動後に論理端末の閉塞を解除する必要があります。

  • TP1/NET/UDPの起動後に運用コマンド(mcftactle)を入力する

  • API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))を発行する

デフォルトはmanualです。

(b) 運用コマンドの入力による閉塞解除

運用コマンド(mcftactle)の入力によって論理端末の閉塞を解除する処理の流れを次の図に示します。

図2‒1 運用コマンド(mcftactle)の入力による論理端末の閉塞解除

[図データ]

(c) APIの発行による閉塞解除

API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))の発行によって論理端末の閉塞を解除する処理の流れを次の図に示します。

図2‒2 API(dc_mcf_tactle関数またはCBLDCMCF('TACTLE△△'))の発行による論理端末の閉塞解除

[図データ]

論理端末の閉塞解除が完了すると,論理端末の閉塞解除を通知するメッセージ(KFCA18900-I)が出力されます。さらに,UAPに対して状態通知イベント(COPNEVT)が通知されます。したがって,COPNEVTの通知を契機に業務を開始するようにUAPを設計してください。

論理端末の閉塞解除の処理中に障害が発生した場合は,論理端末の閉塞解除の失敗を通知するメッセージ(KFCA18903-E)が出力され,UAPに対して障害通知イベント(CERREVT)が通知されます。

注意事項

TP1/Message ControlおよびTP1/NET/Libraryから,コネクションに関連するメッセージが出力される場合があります。これらのメッセージでコネクション名として出力される情報には,論理端末名称が出力されます。

(2) 論理端末の閉塞

TP1NET/UDPは,次に示す場合に論理端末を閉塞します。

論理端末を閉塞すると,自システムのUDPプロトコルから自ポート番号が削除されて,TP1/NET/UDPでAP間通信ができない状態になります。

運用コマンド(mcftdctle)の入力によって論理端末を閉塞する処理の流れを次の図に示します。

図2‒3 運用コマンド(mcftdctle)の入力による論理端末の閉塞

[図データ]

論理端末の閉塞が完了すると,論理端末の閉塞を通知するメッセージ(KFCA18901-I)が出力されます。さらに,UAPに対して次に示すイベントが通知されます。

(3) TP1/NET/UDPで使用しているポート番号

ポート番号を指定できるシステム定義のオペランドを,次の表に示します。

表2‒1 ポート番号を指定できるシステム定義のオペランド

定義名

定義

指定できる範囲

デフォルト値

対象システムサービス

MCF通信構成定義

mcftalcle -r portno

1〜65535

MCF通信サービス

(凡例)

−:該当しません(省略できません)。

注※

予約ポート(1〜1023)を使用する論理端末が一つでもある場合,OpenTP1管理者のユーザIDには,スーパユーザ権限を持つユーザを登録する必要があります。

(4) 複数のMCF通信プロセスによる同一ポート番号の共用

TP1/NET/UDPでは,同一マシン上の複数のMCF通信プロセス間で,同一の自ポート番号を共用できます。共用しているポート番号あてのブロードキャストメッセージおよびマルチキャストメッセージは,複数のMCF通信プロセスで受信できます。

同一の自ポート番号を複数のMCF通信プロセスで共用した構成で,論理端末の閉塞を解除するには,ポート番号を共用するすべてのMCF通信プロセスの論理端末定義(mcftalcle -r)のreuseオペランドにyesを指定してください。

これによって,次の図に示すような相互ホットスタンバイ構成での運用ができます。

図2‒4 相互ホットスタンバイ構成での運用例

[図データ]

注意事項
  • 一つのMCF通信プロセスの複数の論理端末で,同一の自ポート番号は共用できません。MCF通信構成定義の定義オブジェクト生成時にエラーとなります。複数の論理端末で同一のポートを共用する場合は,MCF通信プロセスを分割してください。

  • 複数のMCF通信プロセスで同一のポート番号を共用する場合,MCF通信構成定義の指定値は統一してください。指定値が混在する場合,二つ目以降の論理端末の閉塞解除に失敗します。