3. デバイスの設定

本節では、デバイス固有の設定作業と、 ATM や SONET レベルで行なう一般的な診断手順を説明します。 ハードウェアの取り付けと診断に関する詳細は、 ぜひそのアダプターのドキュメントを参照して下さい。

3.1. ATM Over TCP の設定

本物の ATM ハードウェアが無くても、 "ATM over TCP" ドライバを使えば、 API が使えます。 この API は、 リモートデバイスに直結している ATM デバイスをエミュレートするものです (つまり、VPI/VCI スワッピングはありません)。

(双方向の)"ワイア"を一本確立するには、 両システムで root になり (または、同一システムの両側を走らせて、 "インタフェース"を二つ作ってそれを接続し)、 どちらかで、以下のコマンドを実行します(それを "a" としましょう)。

それから、別のシステム("b")で、 以下のコマンドを実行します。

双方の atmtcp はその状況を報告し、 カーネルは両方のシステムで、以下のようなメッセージを表示するはずです。

および この際、atmtcp が動き続けることと、 割り込みをかけると仮想ワイアが切れることに注意して下さい。

ポート番号(デフォルトは 2812)を指定すれば、 同一マシンに "ワイア" が複数付けられます。 しかし AAL 処理がまったく実行されないことに注意して下さい。 したがって、データを送信したものとは別の AAL(例えば AAL0) を使ってデータを受信するのは不可能です

3.2. ZN1221/ZN1225 の調整

ZeitNet 社の ZN1221 アダプターと ZN1225 アダプターは、 受信用に予めアロケートしておいた、 フリーメモリバッファのプールを用います。 SDU がある最大サイズになっている VC を受信用にオープンすると、 デバイスドライバが対応するプールにフリーバッファを詰め込みます。 データの受信中は、アダプターはバッファを削除します。 そして残りのバッファ数があるしきい値を下回ると、 デバイスドライバは、再度プールにフリーバッファを補充します。

フリーバッファ数の上限と下限、 および新しいデータオフセットに適用するしきい値は、 zntune プログラムを使って設定できます。 使い方は次のとおりです。

zntune [-l low_water] [-h high_water] [-t threshold] itf [pool]

プール番号を指定しないと、すべてのプールにその変更内容を適用します。 プール 2 には 64 バイトのパケットを格納し、 プール 3 には 128 バイトのパケットを格納します、等々。 プール 0 とプール 1 は現在未使用です。

以下のように、 新しいパラメータをつけずに zntune を実行すれば、 その時点の設定といくつかの使用状況の統計が得られます。

zntune [-z] itf [pool]

"Size" 欄は、バイト単位のバッファサイズを表しています。 "Ref" 欄は、そのプールを使用している、オープン中の VC 数です。 "Alarm" 欄は、カウンタのリセット後に、 フリーバッファ数が下限値を下回った回数です。 同様に、"Under" 欄は、対応するプールが空だったという理由で、 内向きの PDU を破棄した回数です。

"Offs", "NxOf", "Count" および "Thres"、 これらの欄は、整列の適用状況を表しています。 "Offs" は、その時点でドライバが内向きの PDU 内に想定している、 ユーザーデータのオフセットです。 シングルコピーの場合、 データをページ境界で受信するように受信バッファが整列します。 "NxOf" は、一番新しく受信した PDU のユーザーデータオフセットです。 このオフセットは、その時点で想定しているオフセットとは別のものです。 "Count" は、"NxOf" のオフセット順に受信した PDU 数です。 最後の "Thres" はしきい値で、 "Count" がこのしきい値を越えないと、 "NxOf" は新しいカレントオフセットになりません。

"Alarm"カウンタ と "Under"カウンタをリセットする場合は、 -z オプションを使って下さい。

3.3. /proc/net/atm/にあるファイル

ATM サブシステムに関するある種のステータス情報は、 /proc/net/atm/ にあるファイルからわかります。 /proc/net/atm/arp ファイルには、"クラシカル IP over ATM" 固有の情報が入っています。 CLIP を参照して下さい。

アクティブな ATM デバイスは、すべて /proc/net/atm/devices にリストされています。 この中には、各デバイスのインタフェース番号、 種類を表すラベル、エンドシステムの識別子 (ESI)、 それに統計情報が示してあります。 この統計情報の内容は、 atmdiag を使ってわかるものに該当します。

個々の ATM デバイスについては、 (例えば、eni:0 のような) 種類:番号 という形式のエントリを複数登録することがあり、 これにデバイス固有の情報が入っています。

/proc/net/atm/pvc/proc/net/atm/svc には、PVC と SVC ソケットがすべてリストされています。 ここには、いずれのタイプのソケットについても、VPI と VCI 番号が載っています。 PVC に関しては、その後に AAL とトラフィッククラス、 それに受信と送信のそれぞれの方向について選んだ PCR が載っています。 一方 SVC に関しては、SVC の状態と通信相手のアドレスが載っています。 インタフェース番号が 999 になっている SVC は、 "State" 欄で示しているように、 特別な制御用に使用します。

さらに、/proc/net/atm/vc は、バッファサイズと、 ATM ソケットすべてに関する内部の追加情報を示しています。

3.4. ATM の診断

atmdiag プログラムを使って、 ATM デバイスドライバの様々なカウンタの問い合わせができます。 詳細は該当するマニュアルページを参照して下さい。

3.5. SONET の診断

SONET の診断ツールはリンクの性能を監視したり、 エラーをシミュレートするのに使用できます。 現在の SONET の統計情報を得るには、 引数に ATM のインタフェース番号を付けて、 このツールを実行します。例えば以下のようにします。

カウンタは、-z オプションを付ければリセットできます。

シミュレートできるネットワーク障害には、 次のものがあります。 [1]

sbip

セクションエラー (B1) を挿入します。

lbip

ラインエラー (B2) を挿入します。

pbip

パスエラー (B3) を挿入します。

frame

強制的にフレームロス (RX) を起こします。

los

ロスオブシグナルを挿入します。

lais

ラインアラーム通知シグナルを挿入します。

pais

パスアラーム通知シグナルを挿入します。

hcs

ヘッダーのチェックサムエラーを挿入します。

障害は、対応するキーワードをコマンドラインに追加すれば有効になり、 キーワードの直前にマイナス記号 (-) を付ければ、障害をクリアします。 例えば以下のように使います。

何らかの診断エラーが挿入できるようになっていると、 sonetdiag を使用して統計情報を取得する際、そのキーワードを表示します。 ハードウェアが自動的に無効にするエラー挿入もあることに注意して下さい。

Notes

[1]

中には、この一部しかサポートしていないアダプタもあります。