Compaq OpenVMS
OpenVMS Cluster システム


前へ 次へ 目次 索引


E.5.1 状態

このサブルーチンは,特定のネットワーク・パスを記述するネットワーク・コンポーネントの方向付きリストを作成します。 SYS$LAVC_DEFINE_NET_PATH が正常終了すると, CLST データ構造が作成されます。1 つのノードがローカル・ノードの場合,このデータ構造は PEDRIVER チャネルに対応付けられます。さらに,リスト内の各ネットワーク・コンポーネントの参照カウントが増分されます。どのノードもローカル・ノードでない場合は, used_for_analysis_status アドレスにエラー状態が格納されます。

SYS$LAVC_DEFINE_NET_PATH サブルーチンは, 表 E-6 に示すように,レジスタ R0 に状態値を返し,ネットワーク・コンポーネント・リストが正しい構造であるかどうかを示します。

表 E-6 SYS$LAVC_DEFINE_NET_PATH から返される状態
状態 結果
Success used_for_analysis_status の値は,ネットワーク・パスがローカル・ノードでネットワーク分析を実行するのに役立つかどうかを示す。
Failure R0 に返されたエラー状態が SS$_INVCOMPID の場合は, bad_component_id アドレスに,バッファから検出された bad_component_id の値が格納される。

E.5.2 エラー・メッセージ

SYS$LAVC_DEFINE_NET_PATH は,以下の表に示すエラー状態コードを返すことがあります。

状態コード 説明
SS$_ACCVIO この状態値は,以下の場合に返されることがある。

  • 記述子またはネットワーク・コンポーネント ID 値バッファにアクセスできない。

  • 引数リストにアクセスできない。

  • used_for_analysis_status アドレスに書き込みアクセスできない。

  • bad_component_id アドレスに書き込みアクセスできない。

SS$_DEVACTIVE 分析がすでに実行されている。ネットワーク・コンポーネントおよびネットワーク・コンポーネント・リストを定義する前に, SYS$LAVC_DISABLE_ANALYSIS 機能を呼び出すことにより,分析を停止しなければならない。
SS$_INSFARG 指定された引数の数が不足している。
SS$_INVCOMPID バッファに指定されたネットワーク・コンポーネント ID が不正である。 bad_component_id アドレスに,エラーのあるコンポーネント ID が格納される。
SS$_INVCOMPLIST この状態値は以下の場合に返されることがある。

  • ノード・リストに指定されているノードの数が 2 未満である。

  • リストに指定されているノードの数が 3 以上である。

  • 最初のネットワーク・コンポーネント ID が COMP$C_NODE タイプでない。

  • 最後のネットワーク・コンポーネント ID が COMP$C_NODE タイプでない。

  • リストに指定されているアダプタの数が 2 未満である。

  • リストに指定されているアダプタの数が 3 以上である。

SS$_IVBUFLEN ネットワーク・コンポーネント ID バッファの長さが 16 未満であるか, 4 の倍数でないか,508 より大きい。
SS$_RMTPATH ネットワーク・パスがローカル・ノードに関連付けられていない。この状態は,ローカル・ノードでのネットワーク障害分析で,このパスが必要かどうかを示すためだけに返される。

E.6 ネットワーク・コンポーネント障害分析の起動

SYS$LAVC_ENABLE_ANALYSIS サブルーチンは,ネットワーク・コンポーネント障害分析を開始します。

例: 以下の例では,SYS$LAVC_ENABLE_ANALYSIS サブルーチンの使い方を示しています。


STATUS = SYS$LAVC_ENABLE_ANALYSIS ( ) 

E.6.1 状態

このサブルーチンは,ネットワーク・コンポーネント障害分析コードを有効にしようとします。少なくとも 1 つのコンポーネント・リストが定義されていれば,分析は有効になります。

SYS$LAVC_ENABLE_ANALYSIS はレジスタ R0 に状態を返します。

E.6.2 エラー・メッセージ

SYS$LAVC_ENABLE_ANALYSIS は,以下の表に示すエラー状態コードを返すことがあります。

状態コード 説明
SS$_DEVOFFLINE PEDRIVER が正しく初期化されていない。ROOT または PORT ブロックが使用できない状態である。
SS$_NOCOMPLSTS ネットワーク接続リストが存在しない。ネットワーク分析が実行できない。
SS$_WASSET ネットワーク・コンポーネント分析がすでに実行中である。

E.7 ネットワーク・コンポーネント障害分析の停止

SYS$LAVC_DISABLE_ANALYSIS サブルーチンは,ネットワーク・コンポーネント障害分析を停止します。

例: 以下の例は SYS$LAVC_DISABLE_ANALYSIS の使い方を示しています。


STATUS = SYS$LAVC_DISABLE_ANALYSIS ( ) 

このサブルーチンは,ネットワーク・コンポーネント障害分析コードを無効にし,分析が有効に設定されていた場合は,すべてのネットワーク・コンポーネント定義とネットワーク・コンポーネント・リスト・データ構造を非ページング・プールから削除します。

E.7.1 状態

SYS$LAVC_DISABLE_ANALYSIS はレジスタ R0 に状態を返します。

E.7.2 エラー・メッセージ

SYS$LAVC_DISABLE_ANALYSIS は,以下の表に示すエラー状態コードを返すことがあります。

状態コード 説明
SS$_DEVOFFLINE PEDRIVER が正しく初期化されていない。ROOT または PORT ブロックが使用できない状態である。
SS$_WASCLR ネットワーク・コンポーネント分析はすでに停止されている。


付録 F
NISCA プロトコルのトラブルシューティング

NISCA は,イーサネットおよび FDDI LAN を介して,クラスタ内の他のノードにディスク I/O やロック・メッセージなどのメッセージを伝達するトランスポート・プロトコルです。NISCA という頭字語は, SCA (System Communications Architecture) に従ってイーサネットまたは FDDI ネットワーク・インターコネクト (NI) を実装しているプロトコルのことを示しています。

OpenVMS ソフトウェア・インタフェースは,NISCA プロトコルを使用して,CI ポート・インタフェースをエミュレートします。つまり,データが LAN を介して転送されることを除けば,ソフトウェア・インタフェースは CI バスのインタフェースと同じです。 NISCA プロトコルを使用することにより,OpenVMS Cluster は特殊なハードウェアを必要とせずに,LAN 上で通信を行うことができます。

ここでは,NISCA トランスポート・プロトコルについて説明し,ネットワーク・マネージャがネットワーク関連の問題を突き止めるのに役立つトラブルシューティングの手法についても示します。LAN で発生したハードウェア・コンポーネント障害のトラブルシューティングは, LAN アナライザを使用して行うのが最適なので,この付録では, LAN 分析ツールの機能と設定についても説明します。

注意

改訂した PEDRIVER 固有のトラブルシューティングの追加情報については,本書の次の改訂版に記載される予定です。

F.1 NISCA が SCA にどのように適しているか

NISCA プロトコルは,SCA の PPD (Port-to-Port Driver) プロトコルを実装したものです。

F.1.1 SCA プロトコル

第 2 章 で説明したように,SCA は,下位レベルの分散アプリケーション (たとえばデバイス・ドライバ,ファイル・サービス,ネットワーク・マネージャ) に効率のよい通信サービスを提供するソフトウェア・アーキテクチャです。

SCA では,SYSAP (System Applications), SCS (System Communications Services),PPD (Port-to-Port Driver),デバイス・ドライバと LAN アダプタの PI (Physical Interconnect: 物理インターコネクト) も含めて, OpenVMS Cluster システム用に多くのプロトコルが指定されています。 図 F_1 では,SCA アーキテクチャを構成する相互に依存するレベルとして,これらのプロトコルを示しています。 図 F-1 では, NISCA プロトコルは,SCA アーキテクチャの PPD レイヤの特定の実装として示されています。

図 F-1 SCA アーキテクチャのプロトコル


表 F_1 は, 図 F-1 に示した SCA プロトコルの各レベルについて説明しています。

表 F-1 SCA プロトコル・レイヤ
プロトコル 説明
SYSAP 各ノードで実行されるクラスタ単位のシステム・アプリケーションを表す。これらのシステム・アプリケーションは,ノード間でメッセージを送信するために通信パスを共用する。システム・アプリケーションの例として,ディスク・クラス・ドライバ (DUDRIVER など), MSCP サーバ,接続マネージャなどがある。
SCS OpenVMS Cluster を中心とした接続を管理し, 仮想サーキット と呼ばれる共通のトランスポートを介して,システム・アプリケーション間のメッセージを多重化する ( 付録 F.1.2 項 を参照)。また,SCS レイヤは,接続で障害が発生したときに,個々のシステム・アプリケーションが適切に応答できるように,各アプリケーションに通知を出す。たとえば, SCS からの通知によって DUDRIVER が起動されてディスクがフェールオーバされたり,クラスタの状態遷移が開始されたりする。 SCS はまた,再接続間隔 (RECNXINTERVAL) の時間のカウントを開始するように,接続マネージャに通知する。
PPD OpenVMS Cluster システム内の他のノードにメッセージ配布サービスを提供する。

PPD レベル 説明
PPD (Port-to-Port Driver) 仮想サーキットを確立し,エラーを処理する。
PPC (Port-to-Port Communication) ポート間通信,データグラム,シーケンス・メッセージ,ブロック転送を提供する。"セグメント化"も PPC レベルで行われる。LAN での大きなデータ・ブロックのセグメント化は, CI バスや DSSI バスとは異なる方法で行われる。 LAN データ・パケットは,以下に示すように,特定の LAN 通信パスで認められているサイズに従って断片化される。

ポート間通信 認められるパケット・サイズ
Ethernet-to-Ethernet 1498 バイト
FDDI-to-Ethernet 1498 バイト
FDDI-to-Ethernet-to-FDDI 1498 バイト
FDDI-to-FDDI 4468 バイト
注意: デフォルト値は,イーサネットの場合も FDDIの場合も 1498 バイトである。

TR (Transport) ノード間に,仮想サーキットというエラーのないパスを提供する ( 付録 F.1.2 項 を参照)。PPC レベルでは,クラスタ内の 2 つのノード間でシーケンス・メッセージとデータグラムを転送するために,仮想サーキットが使用される。
Channel Control (CC) OpenVMS Cluster 内で,ノード間のネットワーク・パス (チャネルと呼ぶ) を管理する。CC レベルでは,ノード間で HELLO データグラム・メッセージを送信することによりチャネルを管理する。ノードは,まだ機能していることを示すために,HELLO データグラム・メッセージを送信する。 TR レベルでは,仮想サーキット・トラフィックを伝達するためにチャネルを使用する。
DX (Datagram Exchange) LAN ドライバへのインタフェース。

PI LAN デバイスへの接続を提供する。PI は,パケットが送受信されるときに使用される LAN ドライバとアダプタを表す。

PI コンポーネント 説明
LAN ドライバ NISCA および他の多くのクライアント (DECnet,TCP/IP,LAT, LAD/LAST など) を多重化し,イーサネットおよび FDDI ネットワーク・インタフェース上でデータグラム・サービスを提供する。
LAN アダプタ LAN ネットワーク・ドライバとアダプタ・ハードウェアで構成される。

F.1.2 通信のために使用されるパス

NISCA プロトコルは, 表 F-2 で説明しているパス上の通信を制御します。

表 F-2 通信パス
パス 説明
仮想サーキット 以下の目的で,OpenVMS Cluster 内のノード間の信頼性の高いポート間通信を提供する共通のトランスポート。

  • 重複や紛失を発生させずに,メッセージを確実に配布する。各ポートは他の各リモート・ポートとの間で仮想サーキットを維持する。

  • メッセージの順序を確保する。各仮想サーキット・シーケンス番号が個々のパケットで使用される。各送信メッセージはシーケンス番号を転送するため,重複するメッセージは破棄される。

各ポートの仮想サーキット記述子テーブルは,そのポート間サーキットの状態を示す。2 つのポート間に仮想サーキットが作成された後,ノード内の SYSAP 間で通信を確立することができる。

チャネル 異なるノードにある 2 つの LAN アダプタ間の論理通信パス。ノード間のチャネルは,2 つ 1 組のアダプタとそれを接続するネットワークによって決定される。たとえば,それぞれ 2 つのアダプタを装備している 2 つのノードは,4 つのチャネルを確立することができる。特定の仮想サーキットによって伝達されたメッセージは,2 つのノードを接続するどのチャネルを介しても送信できる。

注意: チャネルと仮想サーキットの相違は,チャネルがデータグラム・サービスのためのパスを提供できるという点にあります。仮想サーキットはチャネルの上の層にあり,ノード間にエラーのないパスを提供します。OpenVMS Cluster では,ノード間に複数のチャネルが存在できますが,仮想サーキットは同時に 2 つのノード間に 1 つしか存在できません。

F.1.3 PEDRIVER

ポート・エミュレータ・ドライバである PEDRIVER は, NISCA プロトコルを実装し,ローカル LAN ポートとリモート LAN ポートの間の通信のためのチャネルを確立し,制御します。

PEDRIVER は,メッセージが順に配布されることを保証するパケット配布サービス (NISCA プロトコルの TR レベル) を実装します。特定の仮想サーキットによって伝達されるメッセージは,2 つのノードを接続するどのチャネルを通じても送信できます。チャネルの選択は,メッセージの送信側 (PEDRIVER) によって決定されます。メッセージを送信するノードは,どのチャネルも選択できるため,受信側の PEDRIVER は,どのチャネルからでもメッセージを受信できる準備をしておかなければなりません。

どの時点でも,TR レベルは特定の仮想サーキットのトラフィックを伝達するために,1 つの "優先チャネル" を使用します。

関連項目: 転送チャネルの選択方法については, 付録 G を参照してください。


前へ 次へ 目次 索引