•
• 図2-1に示すように、TMA TCP for IMSゲートウェイは、IMSとリモートのOracle Tuxedo Mainframe Adapterゲートウェイとの間のTCP/IPを介したインタフェースとして機能します。図2-1 IMSの処理ゲートウェイは、リモート・ゲートウェイからのTCP/IP接続リクエストの着信をリスニングします。リクエストを受信すると、着信セッションが確立され、そのセッションを介してリモート・ゲートウェイからサービスに対するリクエストを送信できる状態になります。図2-2に示すように、リモート・システムからリクエストが受信されると、IMSに中継され、そのリクエストに対応するサーバー・トランザクションがリクエストを処理するようにスケジュールされます。レスポンスが要求されている場合は、サーバー・トランザクションはレスポンスをIMSメッセージ・キューに格納します。TMA TCP GatewayがOTMAクライアントとして実行されている場合、レスポンスはトランザクション・パイプ宛てのキューに格納され、システム間結合機能(XCF)を介してクライアントに配信されます。レスポンスはTCP/IP接続を介してリモート・システムに戻されます。図2-2 IMSの着信処理TMA TCP for IMS製品は、リモート・システムとのTCP/IP接続も開始できます。これらの発信セッションは、処理先のリモート・システムにIMSクライアント・リクエストを送信する際に使用されます。図2-3に示すように、IMSクライアント・トランザクションは、適切にフォーマットされたメッセージをIMSメッセージ・キューに格納することで、リクエストを開始します。ゲートウェイを実行する際に、OTMAクライアントにメッセージを送信するためのIMSユーザー・イグジットを2つインストールする必要があります。(リクエスト/レスポンス処理の詳細は、「Oracle TMA TCP for IMSのプログラミング」の項を参照、サンプルのユーザー・イグジットについては、「JCLおよびユーザー・イグジットのサンプル」の項を参照。)ゲートウェイはリクエストを取得し、処理先の該当リモート・システムに転送します。リモート・システムから受信したレスポンス(必要な場合)は、処理先のトランザクションに配信されるようにIMSに戻されます。図2-3 IMSの発信処理
1. ゲートウェイ(ロード・モジュール名はBEATCPI)が、実行中に発行されるすべてのメッセージの書込み先に当たるメッセージ・ログ(通常はディスク・データセットに割り当てられる)を開きます。
2. メッセージ・ログを開くことができない場合、ゲートウェイはすぐに終了します。デフォルトでは、なんらかのメッセージがSYSOUTデータセットに書き込まれます。IMSサーバー・リクエストは、着信リクエスト(IMS側から見たとき)とも呼ばれ、IMSサーバー・トランザクションが提供するサービスに向けてリモート・クライアントから発行されるリクエストです。
1. TMA TCP for IMSがリモート・システムからリクエストを受信すると、リクエスト・メッセージがフォーマットされてから、IMSメッセージ・キューに挿入され、指定のIMSサーバー・トランザクション(リクエストを処理するIMSサーバー・トランザクションのトランザクション・コードに該当するリクエスト対象のサービス名)に処理されるまで待機します。
4. レスポンスが要求されている場合、サーバー・トランザクションはレスポンス・メッセージをフォーマットしてから、TMA TCP for IMSゲートウェイ宛てのIMSメッセージ・キューに挿入します。IMSクライアント・リクエストは、発信リクエスト(IMS側から見たとき)とも呼ばれ、リモート・システムが提供するサービスに向けてIMSアプリケーション・メッセージ処理プログラム(MPP)から発行されるリクエストです。
1. 一方のトランザクション(T1)が実行中にリクエストを発行するリクエスト・フェーズ。
2. もう一方のトランザクション(T2)が実行中にレスポンスを処理する、対応するレスポンス・フェーズ。
注意: IMSユーザー・イグジットの詳細は、 「JCLおよびユーザー・イグジットのサンプル」の項を参照してください。
2.
6. レスポンスが要求されている場合、TMA TCP for IMSはレスポンスの受信時に(なんらかのレスポンス・データが格納された)レスポンス・トランザクションを送信するようにスケジュールします。
7. 最終的にリモート・システムからのレスポンスの受信がない場合、リクエストはタイムアウトし、エラーが発生したものとして認識され、所定の戻りコードを持つレスポンス・トランザクションがスケジュールされます。