Oracle Tuxedo Mainframe Adapter for TCP Gateway(以後TMA TCP Gatewayと呼ぶ)製品は、ドメイン・ベースのゲートウェイ接続という特性を持ち、Oracle Tuxedoシステムのアプリケーション・プログラムが、TMA TCP Gatewayゲートウェイをサポートする別のOLTPシステムのアプリケーション・プログラムと連携して、トランザクション型ではない処理を実行できるようにする製品です。これらには次のものが含まれます。
TMA TCP Gatewayゲートウェイは、Oracle Tuxedoリージョンの外側にあるサービスに透過的にアクセスできるように設計されています。また、TMA TCP Gatewayを使用すると、リモートのアプリケーション・プログラムからもローカル・サービスにアクセスできるようになります。
このドキュメントが対象としている読者は、TMA TCP Gatewayの構成と管理を担当するシステム管理者です。それ以外にもプログラマ向けに、TMA TCP Gatewayを介してデータを送信するクライアント・プログラムやサービス・ルーチンの開発に役に立つ情報も記載しています。
このドキュメントでは、TMA TCP Gatewayコンポーネントと、TMA TCP Gatewayアプリケーションをビルドするツールの使用手順について説明しています。
このガイドでは、TMA TCP Gatewayの構成と管理を行う手順、およびOracle Tuxedo環境にTMA TCP Gatewayを組み込む手順について説明しています。この他に次の内容についても説明しています。
Oracle Tuxedoリージョンは、ネットワーク状に接続されたOracle Tuxedoシステム同士または連携可能なとシステム同士の間で相互にやり取りするクライアント・プログラムとサーバー・プログラムから構成されます。リージョン内の任意のコンピュータで実行している任意のサーバー・プログラムが提供するサービスを、どのクライアント・プログラムからもリクエストできます。サービスからサーバーへのマップに登録情報を使用しているため、サーバー・プログラムの配置の透過性が維持されます。
図1-1に示すように、TMA TCP Gatewayでは、この透過的なアクセスの範囲が広がるように、TCP/IPネットワーク・ソフトウェアを介して、リモートのリージョンやシステムとの間でリクエストを送受信します。
図1-1に示すように、TMA TCP GatewayはOracle TuxedoソフトウェアとTCP/IPの間にある単独のリージョンの中に組み込まれた形になっています。
TMA TCP Gateway製品はTuxedoドメインのゲートウェイとして実装されます。Oracle Tuxedoの標準的なサービス・リクエストを受け付け、標準的な応答を戻します。
単独のTMA TCP Gatewayゲートウェイが複数の通信相手と接続する場合も、その通信相手をゲートウェイと呼びます。それぞれの通信相手(ゲートウェイ)はネットワーク上の一意のエンドポイントです。
TMA TCP Gatewayの構成の中にリモート・システムの指定がありますが、それでもOracle Tuxedoソフトウェアからリモート・システムを認識することはできません。たとえば、TMA TCP Gatewayを介してアクセス可能なリモート・システムの指定は、UBBCONFIG
ファイルのMACHINES
セクションの中にはありません。
TMA TCP Gatewayゲートウェイは自身の制御情報を共有メモリーに維持しますが、これはOracle Tuxedoソフトウェアが自分自身を掲示板に維持することとほぼ同じです。TMA TCP GatewayからはOracle Tuxedo掲示板にアクセスできますが、Oracle TuxedoからはTMA TCP Gatewayの制御情報にアクセスできません。
運用上の注意事項は、機能を使用する際に常に意識する必要がある制限事項です。TMA TCP Gatewayの運用上の注意事項としては、次のものがあります。
注意: | これから説明するローカルのアプリケーション・プログラムとは、Oracle Tuxedoの管理下にあるユーザー側のリージョンの内側にあるアプリケーション・プログラムです。リモートのアプリケーション・プログラムとは、Oracle Tuxedoの管理下にあるユーザー側のリージョンの外側にあるアプリケーション・プログラムです。 |
tpsprio()
関数を使用するローカルのクライアント・プログラムとサーバー・プログラムは、TMA TCP Gatewayがサービス・リクエストをデキューするときの優先順位を設定します。このプロセスはリモート・システムの優先順位にはまったく影響を与えません。tpbroadcast()
関数を使用して、リモートのクライアント・プログラムとの間で任意通知型のメッセージを送受信することができません。tpbroadcast()
関数やtpnotify()
関数を使用して、リモートのクライアント・プログラムとの間でメッセージを送受信することができません。tpgprio()
関数を使用してリモート・サービスの優先順位を確認する場合は、ローカルのTMA TCP Gatewayリクエスタの優先順位が戻されます。これらの運用上の注意事項に関する背景的な説明は、「Oracle TMA TCP Gatewayの処理の仕組みについて」を参照してください。
次の機能は今回のバージョンのTMA TCPに備わっています。
TMA TCP製品にはドメイン・ベースのアーキテクチャが採用されており、双方向通信、リクエスト/レスポンスのサポート、およびMVS Open Transaction Manager Access(OTMA)インタフェースのサポートが実現されています。
TMA TCP Gateway製品は、リモート・ゲートウェイから渡されるユーザー名に基づいて、Oracle Tuxedoのサービスに対するアクセス権限を付与します。
TMA TCP for CICS製品からトランザクションを開始したり、プログラムにリンクできます。Oracle Tuxedoのセキュリティ機構からTMA TCP製品にユーザーIDの値が渡されて、トランザクションの開始前にセキュリティが適切かどうかテストされます。
TMA TCP for IMS製品には、セキュリティが強化されたOTMAインタフェースが備わっています。このインタフェースの特徴は、Oracle Tuxedoのリクエスタが、OTMAサーバーのインタフェースを介してユーザーIDを送信し、RACFなどのサード・パーティのセキュリティ・パッケージで認証できることです。
TMA TCP Gatewayでは、接続を1つ確立すると、その接続を介して複数のリクエストを同時に処理できます。このような特徴を接続の多重化といいます。2つの接続ゲートウェイは、接続時にどちらの側でも受付け可能な同時接続数を決定します。接続が確立されると、クライアントは複数のリクエスト(同時接続数の最大数まで送信可)をサーバー・ゲートウェイに送信できるようになります。接続を多重化すると、ソケットなどのシステム・リソースをTMA TCP Gatewayが有効活用できます。
注意: | それぞれの接続は片方向であるため、相手側のプラットフォーム上のクライアントは、リモート・サーバーとの通信に同じ接続を使用できません。 |
TMA TCP製品では、ドメイン・ネーム・サーバー(DNS)によるIPアドレスの解決がサポートされています。つまり、ドメイン・ネーム・サーバー側でIPアドレスを変更するため、TMA TCP Gatewayを再構成せずにアドレスを変更できます。
TMA TCP製品は、GWIDOMAIN
ゲートウェイという1つのコンポーネントで構成されています。このゲートウェイの役割は、着信リクエストと発信リクエストの両方を仲介することです。すべてのリモート・ゲートウェイとの接続も維持します。
Oracle Tuxedoソフトウェアが備えている高度な配置の透過性は、TMA TCP Gateway製品にも引き継がれています。具体的に言うと、実質的にはどのようなケースでも、プログラマはリモート・システムが提供するサービスについて詳しく知る必要がありません。
TMA TCP Gateway製品は、Oracle Tuxedoの主要な通信方式である、リクエスト/応答通信を(同期型と非同期型のいずれも)サポートしています。
データを交換する際に、Oracle Tuxedoのすべてのバッファ・タイプを使用できます。これらには次のものが含まれます。
X/Openの3つのバッファ・タイプはそれぞれ、Oracle TuxedoのATMIバッファ・タイプに相当します。実際に相当するもとの次のとおりです。
状況によっては、型付きバッファをターゲット・システムで受入れ可能なフォーマットに変換する必要があります。この目的のために、Oracle Tuxedoシステムの標準的なVIEW
定義の仕組みが採用されています。
VIEW
定義を使用すると、異なるプログラミング環境(CやCOBOLなど) の間の入出力データをマップできるようになります。また、システム間のデータ表現が自動的に変換されるようになります。
プログラマまたはシステム管理者はVIEW
定義を作成できます。詳細は、「Oracle TMA TCP Gatewayのデータ・マッピングに関する構成」の項を参照してください。プログラミングに関する注意事項の詳細は、「Oracle TMA TCP Gatewayの処理の仕組みについて」の項を参照してください。
FMLバッファをサポートしていないシステムまたはリージョンと直接通信するときに、FMLアプリケーションに対する透過性を確保した形で、TMA TCP GatewayがFMLバッファとユーザー定義レコードのレイアウトとの相互変換を実行できます。したがって、リモート・アプリケーションのレコード・レイアウトを記述したVIEW
定義を作成しておけば、その定義をレコードとFMLバッファとの相互変換に使用できます。サービスの記述の一部であるVIEW
の指定は、GWICONFIG
ファイル(TMA TCP Gateway構成ファイル)とDMCONFIG
ファイルの中で行います。
このようにATMIバッファとレコード構造との間で相互変換することで、TMA TCP GatewayはFMLデータを格納したフィールド化バッファをリージョン間で送信します。TMA TCP Gatewayソフトウェアは、VIEW
定義とフィールドの記述を使用して、送信元のリージョンでFMLバッファからユーザー定義レコードにデータを変換します。
代替のデータ・マッピング用のツールを使用して、メインフレーム・アプリケーションで扱うことが可能なフォーマットにFMLバッファをマップできます。代替のデータ・マッピング用ツールを使用できるようにTMA TCP Gatewayを構成する手順の詳細は、「Oracle TMA TCP Gatewayのデータ・マッピングに関する構成」と「Oracle TMA TCP Gatewayの構成」の項を参照してください。
TMA TCP Gatewayの管理ツールと管理機能はOracle Tuxedoの管理ツールに完全に一体化しています。具体的な例を次に示します。
DMCONFIG
)に、ローカルのOracle Tuxedoサービス名をリモート・サービス名にマップする方法を指定します。また、GWICONFIG
ファイルに、TMA TCP Gatewayが入出力データのトランスレートおよび変換に使用するVIEW
定義を指定します。TMA TCP Gatewayの構成の詳細は、「Oracle TMA TCP Gatewayの構成」の項を参照してください。TMA TCP Gatewayの管理コマンドの詳細は、Oracle Tuxedo管理者ガイドとOracle Tuxedoドメイン・ユーザー・ガイド を参照してください。