N CSCI

この章では、CSCI (Client Server Communications Interface) コンポーネントについて説明します。

この章で扱う内容は、次のとおりです。

  • CSCI の概要

  • エラーメッセージ

  • 環境変数

CSCI のインストールは、オペレーティングシステムのインストールおよび ACSLS のインストールと構成のあとに行うようにしてください。

注:

ACSLS が正しく機能するには、START_CSCI_PROCESS 構成変数が TRUE に設定されている必要があります。これは、acsss_config のオプション 1 で実行します。ACSLS の動作を制御する変数の設定を参照してください。

CSCI の概要

CSCI (Client Server Communications Interface) は、クライアントシステムとサーバーシステムの間のリクエストおよび応答パケットを渡す役割を果たすスタンドアロンのコンポーネントです。CSCI は、MVS または RMLS/CSC クライアントが ACSLS と通信できるようにするオプションコンポーネントです。CSCI を使用しない場合、デフォルトでは CSI を使用して ACSLS と通信します。

CSCI 接続

CSCI は、ACSLS サーバーを MVS クライアントまたは RMLS/CSC クライアントにリンクする IPC および TCP/IP 接続を提供します。

アーキテクチャーおよびサブシステム

次の図は、全体的な CSCI アーキテクチャーおよびサブシステムを示しています。

図N-1 CSCI アーキテクチャーおよびサブシステム

図N-1 については、周囲のテキストで説明しています。

次の図は、CSCI システムがネットワークインタフェースに接続する方法を示しています。サーバー側では、データは、ネットワークハブから TCP/IP インタフェース経由で CSCI インタフェースに流れます。ここから、データは IPC インタフェース経由で ACSLS ソフトウェアに両方向に、ただし半二重モードで (つまり、一度には一方向に) 流れます。

図N-2 トークンリングインタフェースを使用した CSCI システム

図N-2 については、周囲のテキストで説明しています。

エラーメッセージ

CSCI のインストールおよび構成エラーメッセージは、次の状態に関連しています。

  • 正しくない所有権

  • 正しくないアクセス権

  • 未定義の環境変数

  • その他のさまざまな状態

  • 正しくない CSCI および TCP/IP 構成

一般的なエラーメッセージ

Communication failure, verb = cmroutine, rc = xx, errno = yyy IPC failure on Socket CSCIzzzzz

説明: 指定された接続で読み取りに失敗しました。

変数:

  • xx は、IBM CPI リターンコードです

  • yyy は、/usr/include/sys/errno.h 内の UNIX の errno 値です

  • CSCIzzzzz は、使用中であったソケット番号です

  • cmroutine は、失敗した IBM CPI ルーチン名です

Read failed for connection: connection_name

説明: 指定された接続で読み取りに失敗しました。

変数: connection_name は、読み取りに失敗した接続の名前です。

Write failed for connection: connection_name

説明: 指定された接続で書き込みに失敗しました。

変数: connection_name は、書き込みに失敗した接続の名前です。

環境変数

CSCI は、ACSLS 実行可能ファイルが存在する /$ACS_HOME/bin ディレクトリ内のトランザクションプログラム名 (TPN) である csciTcpServer.sh によって呼び出されます。このシェルスクリプトは、CSCI 環境変数を定義します。

次の表は、サーバーサブシステムの CSCI 環境変数と、ACSLS/CSCI ソフトウェアの配布パッケージで提供されているものと同様のシェルスクリプトについて説明しています。このシェルスクリプトは、サーバー上の TCP/IP によって開始されます。

表N-1 CSCI サーバーサブシステムの環境変数

名前 説明

START_CSCI_PROCESS

ACSLS の起動時に CSCI を自動的に起動します (TRUE または FALSE)

CSCI_TRACE

この変数は、CSCI トレースが ON または OFF のどちらであるかを示します。

CSCI_SLEEP_TIME

この変数は、接続テーブルを使用した各ラウンドロビンループの最後の PER スリープ時間 (ポーリングタイムアウト) を示します。デフォルトは 100 ミリ秒です。

CSCI_INITIAL_CONNECTION

この変数は、最初に開く CSCI の初期接続名を示します。これは、CSCI の初期起動時の I/O に必要な接続サービス名です。通常、クライアントは最初に IPC を開き、サーバーは最初に TCP/IP を開きます。

CSCI_SERVER_NAME

この変数は、CSCI サーバーの名前を示します。これは、1 つの CSCI サーバーに対して定義されているすべての CSCI クライアントで同じに設定されている必要があります。このサーバー名は、その CSCI クライアントの CSCI_SERVER_NAME に一致している必要があります。サーバーとクライアントの CSCI_SERVER_NAME の一致により、マシン間のエンドツーエンドの論理リンクが提供されます。最後に、この名前は、あとでほかの環境変数内の「connectionname」に使用されます。CSCI_SERVER_NAME に割り当てられた値を、以降の変数の connectionname 部分にレプリケートする必要があります。

CSCI_connectionname_NET_TYPE

この変数は、この CSCI が CIF サブシステムから構成されているネットワークタイプを示します。NETTYPE は、この CSCI によって使用されるトランスポートレイヤーを定義します。有効な割り当ては LU62 または IPC です。

CSCI_connectionname_INPUT_
SOCKET

この変数は、この CSCI への入力として使用する入力ソケット番号を示します。この番号は、サーバーまたはクライアントアプリケーションの出力ソケット番号に一致します。

CSCI_connectionname_CON_
TYPE

この変数は、この CSCI のタイプを示します。この CON_TYPE は、この CSCI を SERVER または CLIENT として定義します。

CSCI_connectionname_
TRANSLATE_TYPE

この変数は、実行中に使用されるこの CSCI の XDR タイプを示します。これは、XDR または NONE に割り当てることができます。

CSCI_connectionname_
DESTINATION_SOCKET

この変数は、CSCI サーバーによって使用される宛先または出力ソケット番号を示します。このソケット番号は、CSCI サーバーアプリケーションへの入力ソケット番号に一致します。