紹介
本章では、OpenFrame GWの構造と特徴について説明します。
1. 概要
OpenFrame GWは、メインフレーム・リホスト・ソリューションであるOpenFrameを構成する製品の一つです。複数の3270端末をリアルタイムで管理および監視し、オンライン製品(OSC、OSI、AIM)と端末の間でデータ処理、トランザクション、端末管理などを行います。
ユーザーは、3270プロトコルの端末とOpenFrame GWが提供するWebプロトコル端末を使用して、OpenFrameと通信することができます。
以下は、OpenFrame GWが提供するサービスです。
-
アプリケーション・プログラムと端末間の接続管理
-
アプリケーション・プログラムと端末間のデータ転送
-
アプリケーション・プログラム間の端末共有
-
端末接続のためのLU名の自動割り当て
-
ネットワーク操作の監視および管理
-
Webブラウザーを介して3270エミュレーターを提供
2. 機能
OpenFrame GWはネットワーク通信を管理し、次のような機能をサポートしています。
-
端末の開始と終了およびアクセス制御
-
アプリケーション・プログラムを使用して端末の接続を終了することができ、設定により端末に接続することもできます。
-
割り当てられたリソースに基づいて端末の接続を制御します。
-
-
動的なリソース管理
-
実行中にリソースの変更があった場合、データベースを介して使用可能なリソースを読み込みます。
-
動的なリソース管理を通じて、リアルタイムで端末接続を制御します。
-
-
データベースを介してリソースを共有
-
データベースを介して、使用可能なアプリケーション・サーバーとそれに関連するリソースを共有します。
-
データベースを介して、接続中の端末とOpenFrame GWの情報を管理および共有します。
-
-
入出力処理
-
OpenFrame GWは、アプリケーション・プログラムと端末間のデータ転送を管理します。端末の接続はソケット通信とWeb通信を介して入出力を行い、アプリケーション・プログラムとの通信は、Tmaxを介して行います。
-
3270プロトコルとTmaxプロトコルを使用して、OpenFrame GWの内部でそれぞれのデータを変換して入出力を行います。
-
-
利便性と信頼性
-
ネットワーク通信で発生するエラーの影響を低減させます。
-
OpenFrame GWにより、アプリケーション・プログラムのデータ形式を保つことができます。
-
-
トランザクション・スケジューリング
-
アプリケーション・プログラムのトランザクションをスケジューリングします。
-
-
Web端末の使用
-
3270プロトコルの端末に加え、Web端末を提供します。
-
ユーザーは、Web端末を介してOpenFrame GW内での3270データ・プロトコルを維持し、3270プロトコル・エミュレーターと同様に使用することができます。
-
-
マルチ端末とマルチサーバーの通信
-
複数の端末との接続が可能であり、OpenFrame GWが接続を管理します。
-
複数のアプリケーション・サーバーとの接続が可能であり、それらの接続を管理します。また、それぞれのアプリケーション・サーバーが相互に通信することができます。
-
3. 構造
OpenFrame GWは、WAS上のWebサーバーとして実装されます。データベース(Tibero)には、現在接続している端末と起動しているオンライン・リージョン(OSC、OSI、AIM、...)の情報が保存されます。
OpenFrameのオンライン・リージョンには、TmaxのCLHを介してアクセスし、データベースを介してリソースを共有します。また、Tmaxによりコネクション・スケジューリングが実行されるため、Tmaxコネクションの許容数内であれば、接続する端末の数が増えても接続することができます。

-
WAS(Webアプリケーション・サーバー)
OpenFrame GWは、WAS(JEUS)上で動作します。
-
DB
現在接続している端末、VTAM、およびオンライン・リージョンの情報を保存します。具体的には以下のような情報が保存されます。
-
接続しているゲートウェイ情報
現在起動しているOpenFrame GWの情報を保存します。
-
接続している端末情報
ゲートウェイごとに接続している端末の情報を保存します。この情報を基に同じLU名で接続を許可しない機能を提供し、システム管理者には現在接続している端末のリストを提供して運用上発生する問題に対応できるようにします。
-
LU自動割り当てリソース情報
各ゲートウェイ(ポート)で自動で割り当てられるLUについて定義されているVTAMリソース情報を保存します。詳細については、LUの自動割り当てを参照してください。
-
オンライン・リージョン情報
現在起動しているオンライン・リージョン(OSCOIVP1、AIM、OSI、...)の情報を保存します。
-
-
CLH
Tmaxのクライアント・ハンドラーです。クライアントとサーバの間を中継し、サービスを提供する業務処理サーバーにサービスを要求し、サーバーへの接続および管理を行います。tpcallなどの関数によって受信されるクライアントの要求を該当するサーバーに転送します。
-
REGION
アプリケーション・プログラムを実行させ、CLHを介してOpenFrame GWと通信します。
-
Webブラウザー
Webブラウザーは、WAS(JEUS)の要求に対する応答に基づいてユーザーに結果を表示し、入力を受けるUIを提供します。
4. 動作プロセス
以下の図は、3270端末にログオンして、オンライン・リージョンのトランザクションを実行するプロセスです。

-
Terminal AがOpenFrame GWに接続した後、オンライン・リージョンへのログオンを試みます。(OSCおよびOSIではリージョン・サーバー名で、AIMではプロシージャ名で試行します)
-
OpenFrame GWはDBにアクセスしてTerminal Aの整合性をチェックします。
-
データベースは、Terminal Aが有効な場合にログオンを許可します。
-
ログオンに成功した後、トランザクション名を入力します。
-
OpenFrame GWはオンライン・リージョンにトランザクションを渡し、実行結果を受け取ります。
-
オンライン・リージョンから受信したデータを分析して、Terminal Aに結果値を表示します。
5. OpenFrameとJEUSの連携
OpenFrame GWは、WAS(JEUS)上で動作します。したがって、1つのWASに1つ以上のサーバーが存在することができます。また、各サーバーにOpenFrame GWを搭載して、1つのWASに複数のOpenFrame GWを動作させることも可能です。OpenFrame GWは、同じOpenFrameに接続することも、異なるOpenFrameにそれぞれ接続することも可能です。

WASの詳細については、『JEUS ドメインガイド』を参照してください。 |
6. OpenFrame GWとOpenFrame間の文字セットの変換
OpenFrame GWは、3270エミュレーターだけでなく、Web端末と通信してOpenFrameで処理されたメッセージを適切な文字セット(CPM)を使用して変換してから送信する機能を提供します。
基本的に3270エミュレーターは、各国の文字をEBCDIC文字としてOpenFrame GWに送信し、Web端末はASCII文字としてデータを送信します。OpenFrameは、EBCDIC文字でのみデータを送受信できるため、Web端末の場合は、ASCII文字をEBCDIC文字に変換する必要があります。そのため、OpenFrame GWは、事前定義されたCPM文字セットを利用して処理しています。
以下は、日本語文字セット(ASCEBCJP:EBCASCJP)を利用し、Web端末がOpenFrame GWを経由してOpenFrameとデータを送受信するプロセスです。

-
送信プロセス
Web端末がUTF-16エンコードでJSONデータをOpenFrame GWに送信します。OpenFrame GWは、データをEBCDIC文字に変換するために、まず、UTF-16エンコード・データをASCII形式に変換します。そのとき、IBM943.ucm文字セットを使用してUnicodeとして表現されたデータをASCII形式に変換します。ASCIIに変換されたデータは、ASCEBCJP.cpm文字セットを使用して再びEBCDICに変換されます。
-
応答プロセス
EBCDIC形式でOpenFrame GWに送信されたデータを、再びWeb端末に送信するためにUTF-16エンコードで変換される必要があります。そのとき、IBM290_300.ucmを使用してEBCDICデータをUnicode形式に変換します。