IPQoS の管理

IPQoS 構成ファイル内でフロー制御を構成する方法

特定のトラフィックフローがネットワークに送出される速度を制御するには、メーターのパラメータを定義する必要があります。IPQoS 構成ファイル内で、2 つのメータリングモジュール tokenmttswtclmt とのどちらかを使用できます。

ここでは、例 3–3 に示したアプリケーションサーバー用 IPQoS 構成ファイルの構築を続けます。次の手順では、メーターを構成するだけではなく、メーターアクション文の内部で呼び出される 2 つのマーカーアクションも構成します。

  1. アプリケーションサーバー用に作成した IPQoS 構成ファイルを開きます。

    残りの手順の前に、フローを制御するアプリケーション用のクラスおよびフィルタを定義してあるものとします。/var/ipqos/BigAPPS.qos ファイルで、次のマーカーアクションのあとから作業を開始します。


    action {
        module dscpmk
        name markAF21
        params {
            global_stats FALSE
            dscp_map{0-63:18}
            next_action continue
        }
    }
  2. ftp クラスのトラフィックをフロー制御するメーターアクション文を作成します。


    action {
        module tokenmt
        name meterftp
                
    

    エントリ 

    定義 

    module tokenmt

    tokenmt メーターを呼び出す

    name meterftp

    アクション文に meterftp という名前を付ける

  3. メーターの速度を設定するパラメータを追加します。


    params {
           committed_rate 50000000
           committed_burst 50000000
      
    

    エントリ 

    説明 

    committed_rate 50000000

    ftp クラスのトラフィックに 50,000,000 bps の転送速度を割り当てる

    committed_burst 50000000

    ftp クラスのトラフィックに 50,000,000 ビットのバーストサイズを割り当てる

    tokenmt パラメータの詳細については、tokenmt をツーレートメーターとして構成するを参照してください。

  4. トラフィック適合度ごとの優先度を設定するパラメータを追加します。


        red_action_name markAF31
        green_action_name markAF22
        global_stats TRUE
        }
    }
    

    エントリ 

    説明 

    red_action_name markAF31

    ftp クラスのトラフィックフローが不適合になった (認定速度を超過した) 場合、パケットがマーカーアクション文 markAF31 に送られることを示す

    green_action_name markAF22

    ftp クラスのトラフィックフローが認定速度に適合する場合、パケットがアクション文 markAF22 に送られることを示す

    global_stats TRUE

    ftp クラスのメータリング統計取得を有効にする

    トラフィック適合の詳細については、メーターモジュールを参照してください。

  5. ホップ単位動作を ftp クラスの不適合トラフィックフローに割り当てるマーカーアクション文を追加します。


    action {
        module dscpmk
        name markAF31
        params {
            global_stats TRUE
            dscp_map{0-63:26}
            next_action continue
        }
    }
    

    エントリ 

    説明 

    module dscpmk

    dscpmk マーカーモジュールを呼び出す

    name markAF31

    アクション文に markAF31 という名前を付ける

    global_stats TRUE

    ftp クラスの統計取得を有効にする

    dscp_map{0–63:26}

    ftp クラスのトラフィックが認定速度を超過した場合は常に、DS コードポイント 26ftp クラスのパケットヘッダーに割り当てる

    next_action continue

    ftp クラスのパケットに対しこれ以上処理を行う必要がないことを示す。よって、これらのパケットはネットワークストリームに戻すことができる

    DS コードポイント 26 は、マーカーに対し、dscp マップ内のすべてのエントリを 10 進数値の 26 (バイナリ値 011010) に設定するよう指示します。 この値により、AF31 ホップ単位動作 (PHB) が設定され、ftp トラフィッククラスのパケットの DS フィールドに DS コードポイント 26 が指定されます。

    AF31 は、DS コードポイント 26 を持つすべてのパケットに低いドロップ優先度を保証しますが、優先順位は Class 3 にとどまります。このため、速度不適合の FTP トラフィックがドロップされる可能性は低くなりますが、ルーターは、Class 1 のトラフィッククラス、または Class 2 で低いドロップ優先度以上を持つトラフィッククラスの転送を優先します。利用可能な AF コードポイントについては、表 6–2 を参照してください。

  6. 認定速度に適合する ftp クラスのトラフィックフローにホップ単位動作を割り当てるマーカーアクション文を追加します。


    action {
        module dscpmk
        name markAF22
        params {
            global_stats TRUE
            dscp_map{0-63:20}
            next_action continue
        }
    }
    

    次の表に、これまでの手順で説明の済んでいないパラメータだけを示します。

    エントリ 

    説明 

    name markAF22

    marker アクションに markAF22 という名前を付ける

    dscp_map{0–63:20}

     

    ftp クラスのトラフィックが認定速度に適合する場合は常に、DS コードポイント 20 をパケットヘッダーに割り当てる

    DS コードポイント 20 は、マーカーに対し、dscp マップ内のすべてのエントリを 10 進数値の 20 (バイナリ値 010100) に設定するよう指示します。 この値により、AF22 ホップ単位動作 (PHB) が設定され、ftp トラフィッククラスのパケットの DS フィールドに DS コードポイント 20 が指定されます。

    AF22 は、DS コードポイント 20 を持つすべてのパケットに中程度のドロップ優先度と Class 2 の優先順位を保証します。このため、速度適合の FTP トラフィックは、IPQoS システムから同時に送出されるフロー内で中程度のドロップ優先度を保証されます。ただし、ルーターは、Class 1 で中程度のドロップ優先度以上を持つトラフィッククラスの転送を優先します。利用可能な AF コードポイントについては、表 6–2 を参照してください。

  7. アプリケーションサーバー用に作成した DS コードポイントを、diffserv ルーターの適切なファイルに追加します。詳細については、IPQoS 対応ネットワーク上でルーターを構成する方法を参照してください。

次に進む手順

作業 

参照先  

IPQoS 構成ファイルを有効にする 

新規構成の IPQoS カーネルモジュールへの適用方法

Web サーバーの構成情報を追加する 

IPQoS 構成ファイルの開始方法およびトラフィッククラスの定義方法

フローアカウンティングを構成する 

IPQoS 構成ファイル内でクラスのアカウンティングを有効にする方法

ルーターの転送動作を構成する 

IPQoS 対応ネットワーク上でルーターを構成する方法