IPQoS の管理

flowacct モジュール

IPQoS の flowacct モジュールは、トラフィックフローに関する情報を記録します。このプロセスは、「フローアカウンティング」と呼ばれます。フローアカウンティングによって得られたデータは、顧客への課金や特定クラスへのトラフィック量の評価に使用できます。

フローアカウンティングは、オプションです。通常、flowacct は、メーターまたはマーカーに処理されたトラフィックフローが、ネットワークストリームへ送出される前に通る、最後のモジュールです。diffserv モデル内での flowacct の位置については、図 1–1 を参照してください。flowacct の詳細な技術情報については、flowacct(7ipp) のマニュアルページを参照してください。

フローアカウンティングを有効にするには、flowacct に加えて、Solaris の exacct アカウンティング機能および acctadm コマンドを使用する必要があります。フローアカウンティングの設定に関する全般的な手順については、表 5–1 を参照してください。

flowacct パラメータ

flowacct は、「フローレコード」で構成された「フローテーブル」内に、フローに関する情報を収集します。テーブル内の各エントリには、1 つのフローレコードが含まれます。フローアカウントテーブルは、表示できません。

フローレコードを測定してテーブルへ書き込むには、IPQoS 構成ファイル内で次の flowacct パラメータを定義します。

IPQoS 構成ファイル内での flowacct パラメータの使用例については、IPQoS 構成ファイル内でフロー制御を構成する方法を参照してください。

フローレコードテーブル

flowacct モジュールは、flowacct インスタンスが認識するすべてのパケットフローを記録するフローテーブルを管理します。フローは、次のパラメータによって特定されます。これらを、flowacct の 8 タプルと呼びます。

フローの 8 タプルのパラメータが変化しないかぎり、フローテーブルには 1 つのエントリだけが含まれます。max_limit パラメータにより、フローテーブルに含めることのできるエントリ数が決定されます。

フローテーブルは、IPQoS 構成ファイル内の timer パラメータに指定された間隔でスキャンされます。デフォルトは 15 秒です。IPQoS 構成ファイル内の timeout に指定された時間以上、IPQoS システムがパケットを認識しない場合、フローは「タイムアウト」します。デフォルトのタイムアウト間隔は 60 秒です。タイムアウトしたエントリは、acctadm コマンドを使用して作成されたアカウンティングファイルに書き込まれます。

flowacct レコード

flowacct レコードには、次の属性が含まれます。

表 6–4 flowacct レコードの属性

属性名 

属性の内容 

タイプ 

src -addr-address_type

オリジネータの発信元アドレス。address_type は、IPQoS 構成ファイルの指定に従い、v4 (IPv4 の場合) または v6 (IPv6 の場合) になる

基本 (Basic)

dest_ addr_address_type

パケットの着信先アドレス。address_type は、IPQoS 構成ファイルの指定に従い、v4 (IPv4 の場合) または v6 (IPv6 の場合) になる

基本 (Basic)

src- port

フローの起点となる発信元ポート 

基本 (Basic)

dest-port

ブローの宛先となる着信先ポート番号 

基本 (Basic)

protocol

フローのプロトコル番号 

基本 (Basic)

total-packets

フロー内のパケット数 

基本 (Basic)

total-bytes

フロー内のバイト数 

基本 (Basic)

action_name

このフローを記録した flowacct アクションの名前

基本 (Basic)

creation_time

flowacct がそのフローのパケットを最初に認識した時間

拡張 (Extended) のみ

last_seen

そのフローのパケットを最後に認識した時間 

拡張 (Extended) のみ

diffserv-field

フローの発信パケットヘッダー内の DS コードポイント 

拡張 (Extended) のみ

user

アプリケーションから取得される UNIX UserID またはユーザー名 

拡張 (Extended) のみ

projid

アプリケーションから取得されるプロジェクト ID 

拡張 (Extended) のみ

flowacct モジュールでの acctadm の使用

acctadm コマンドを使用して、flowacct により生成されるさまざまなフローレコードを格納するファイルを作成します。acctadm は、拡張アカウンティング機能と連動して動作します。acctadm の技術情報については、acctadm(1M) のマニュアルページを参照してください。

flowacct は、フローを監視し、テーブルにフローレコードを記録します。次に flowacct は、timer に指定された間隔でパラメータと属性を評価します。last_seen 値に timeout 値を加えた時間以上パケットが検出されない場合、パケットはタイムアウトします。タイムアウトしたエントリはすべて、フローテーブルから削除されます。削除されたタイムアウトエントリは、timer パラメータに指定された時間が経過するたびに、アカウンティングファイルに書き込まれます。

acctadm を呼び出して flowacct モジュールで使用するには、次の構文を使用します。

acctadm -e type -f filename flow

acctadm -e

acctadm-e オプションを指定して呼び出す。-e は、直後にタイプを指定することを示す

type

収集するタイプを指定する。file-type は、basic または extended に置き換える必要がある。各ファイルタイプの属性については、表 6–4 を参照

-f file_name

フローレコードを格納するファイル file_name を作成する

flow

acctadm を IPQoS 上で実行することを示す