Cisco Nexus 3548 スイッチ NX-OS Quality of Service コンフィギュレーション ガイド リリース 6.x
リンクレベル フロー制御の設定
リンクレベル フロー制御の設定

リンクレベル フロー制御の設定

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

リンクレベル フロー制御

リンクレベル フロー制御とは、システムの輻輳が解決されるまでデータ伝送を一時停止する輻輳管理技術です。受信デバイスは輻輳が発生すると、ポーズ フレームを送信してトランスミッタと通信します。ポーズ フレームを受信した送信デバイスは、以降のデータ フレームの送信を短時間停止します。リンクレベル フロー制御機能は、リンク上のすべてのトラフィックに適用されます。送受信方向は個別に設定できます。デフォルトでは、リンクレベル フロー制御は両方向でディセーブルです。

リンクレベル フロー制御の注意事項と制約事項

  • イーサネット インターフェイスは、リンクレベル フロー制御機能を自動検出しません。機能を明示的に設定する必要があります。

  • リンクレベル フロー制御のみがサポートされます。プライオリティ フロー制御(PFC)はサポートされていません。

  • リンクレベル フロー制御をイネーブルにするには、バッファの一部を予約する必要があります。これにより、使用可能な共有バッファ スペースが減少します。

  • フロー制御は 40G ポートではサポートされていません。

  • Data Center Bridging Exchange(DCBX)プロトコルはサポートされていません。

  • ポーズ フレームの設定時間量子はサポートされていません。

  • 各イーサネット インターフェイスで、スイッチは PFC または LLFC のいずれかをイネーブルにできますが、両方をイネーブルにすることはできません。

  • 純粋な CoS ベースのトラフィック クラスの分類のみがサポートされます。

  • ポーズしきい値の設定には制限があります。

  • インターフェイスでリンクレベル フロー制御を設定すると、インターフェイス フラップが発生して一時的なトラフィック損失の原因となります。

  • no-drop QoS グループを設定する場合は、フロー制御 send-on が設定されていないポートで受信したパケットが no-drop QoS グループに分類されないようにしてください。

  • no-drop QoS グループでのみリンクレベルのポーズ フレームを生成できます。

  • 出力キューのドロップが発生する可能性があるため、no-drop クラスで Weighted Random Early Detection(WRED)をイネーブルにしないでください。

  • CLI を使用してバッファ サイズを指定すると、リンク速度と MTU サイズに関係なく、すべてのポートに同じバッファ サイズが割り当てられます。したがって、no-drop クラスにはデフォルト バッファ サイズを使用することを推奨します。

  • トラフィックがない場合は、LLFC 設定の変更を推奨します。変更しないと、すでにシステムの MMU 内にあるパケットが予期するとおりに処理されない可能性があります。

リンクレベル フロー制御に関する情報

インターフェイスでのリンクレベル フロー制御

リンクレベル フロー制御を設定すると、指定したインターフェイスがアップ状態の場合、システムはインターフェイスの状態をダウンに変更してフロー制御設定を適用します。設定が正常にインターフェイスに適用された後、システムはインターフェイスをアップ状態に戻します。

ポートでのリンクレベル フロー制御

ポートのシャットダウン イベント中、インターフェイスのフロー制御設定は保持されますが、リンク上でトラフィックは送受信されません。ポートの起動イベント中にフロー制御設定はハードウェア上で元の状態に戻ります。

リンクレベル フロー制御設定の不一致

送受信の方向は個別に設定でき、ネットワーク上のデバイスごとに異なるリンクレベル フロー制御(LLFC)設定を使用することが可能です。次の表では、設定が一致していないデバイスの相互の影響について説明します。

スイッチ A スイッチ B 説明

ポーズ フレームを送受信するように LLFC を設定。

ポーズ フレームを受信するように LLFC を設定。

スイッチ A は 802.3x ポーズ フレームの送信と 802.3x ポーズ フレームの受信が可能です。スイッチ B は 802.3x ポーズ フレームの受信のみ可能です。

ポーズ フレームを送受信するように LLFC を設定。

ポーズ フレームを送信するように LLFC を設定。

スイッチ A は 802.3x ポーズ フレームの送信と 802.3x ポーズ フレームの受信が可能です。スイッチ B は 802.3x ポーズ フレームを送信できますが、受信されるポーズ フレームはすべてドロップします。

リンクレベル フロー制御の設定方法

リンクレベル フロー制御 receive の設定

手順
     コマンドまたはアクション目的
    ステップ 1enable


    例:
    Device> enable
     

    特権 EXEC モードをイネーブルにします。

    • パスワードを入力します(要求された場合)。

     
    ステップ 2configureterminal


    例:
    Device# configure terminal
     

    グローバル コンフィギュレーション モードを開始します。

     
    ステップ 3interface ethernet 1/1


    例:
    Device(config)# interface ethernet 1/1
     

    インターフェイス タイプを設定し、インターフェイス コンフィギュレーション モードを開始します。

     
    ステップ 4 flowcontrol receive on


    例:
    Device(config-if)# flowcontrol receive on
     

    インターフェイスでポーズ フレームを受信および処理できるようにします。

     
    ステップ 5exit


    例:
    Device(config-if)# exit
     

    インターフェイス コンフィギュレーション モードを終了します。

     

    リンクレベル フロー制御 transmit の設定

    インターフェイスでリンクレベル フロー制御 transmit を設定するには、インターフェイスでフロー制御をイネーブルにして、network-qos タイプの QoS ポリシーを設定して no-drop QoS グループをイネーブルにします。さらに no-drop 動作を必要とするトラフィックを no-drop クラスに分類するために qos タイプの QoS ポリシーを適用します。

    no-drop クラスを定義する際に、キューイング ポリシーを使用して帯域幅が no-drop QoS クラスに割り当てられていることを確認してください。詳細については、「タイプ キューイング ポリシーの設定」の項を参照してください。


    (注)  


    no-drop QoS グループを設定する場合は、フロー制御 send-on が設定されていないポートで受信したパケットが no-drop QoS グループに分類されないようにしてください。これは、フロー制御 send-on が設定されていない入力ポートではリンクレベルのポーズ フレームを生成できず、送信デバイスに送信の停止を要求する方法がないためです。したがって、すべてのインターフェイスでフロー制御 send-on が設定されていない場合は、システム ポリシーを使用してパケットを no-drop QoS グループに分類しないでください。代わりに、フロー制御 send-on がイネーブルになっているインターフェイスにインターフェイス QoS ポリシーを適用する必要があります。


    手順
       コマンドまたはアクション目的
      ステップ 1enable


      例:
      Device> enable
       

      特権 EXEC モードをイネーブルにします。

      • パスワードを入力します(要求された場合)。

       
      ステップ 2configureterminal


      例:
      Device# configure terminal
       

      グローバル コンフィギュレーション モードを開始します。

       
      ステップ 3interface ethernet 1/1


      例:
      Device(config)# interface ethernet 1/1
       

      インターフェイス タイプを設定し、インターフェイス コンフィギュレーション モードを開始します。

       
      ステップ 4 flowcontrol send on


      例:
      Device(config-if)# flowcontrol send on
       

      インターフェイスからリモート デバイスにポーズ フレームを送信できるようにします。

       
      ステップ 5 exit


      例:
      Device(config-if)# exit
       

      インターフェイス コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに戻ります。

       
      ステップ 6class-maptypenetwork-qosclass-name


      例:
      Device(config)# class-map type network-qos class1
       

      network-qos クラスを作成し、デバイスをネットワーク QoS クラスマップ コンフィギュレーション モードにします。

       
      ステップ 7match qos-groupgroup-number


      例:
      Device(config-cmap-nq)# match qos-group 1
       

      インターフェイスのタイプと番号を指定し、デバイスをインターフェイス コンフィギュレーション モードにします。

       
      ステップ 8policy-maptypenetwork-qospolicy-map-name


      例:
      Device(config-cmap-nq)# policy-map type network-qos my_network_policy
       

      network-qos ポリシー マップを作成し、デバイスをネットワーク QoS ポリシーマップ コンフィギュレーション モードにします。

       
      ステップ 9classtypenetwork-qosclass-name


      例:
      Device(config-pmap-nq)# class type network-qos class1
       

      このポリシーで照合に使用するネットワーク QoS クラス マップを指定して、デバイスをネットワーク QoS ポリシーマップクラス コンフィギュレーション モードにします。

       
      ステップ 10pauseno-drop


      例:
      Device(config-pmap-nq-c)# pause no-drop
       

      このクラスのポーズ特性を指定します。

       
      ステップ 11systemqos


      例:
      Device(config-pmap-nq-c)# system qos
       

      QoS システム コンフィギュレーション モードを開始します。

       
      ステップ 12service-policy type network-qos policy-name


      例:
      Device(config-sys-qos)# service-policy type network-qos my_network_policy
       

      ネットワークに QoS ポリシー マップを適用します。

       
      ステップ 13 exit


      例:
      Device(config-sys-qos)# exit
       

      QoS システム コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに戻ります。

       
      ステップ 14class-map type qos class-map-name


      例:
      Device(config)# class-map type qos class1
       

      クラス マップを作成し、クラスマップ コンフィギュレーション モードを開始します。

       
      ステップ 15match cos cos-value


      例:
      Device(config-cmap-qos)#  match cos 2
       

      タイプ qos クラス マップのサービス クラス(CoS)値を使用してトラフィックのクラスを定義します。

       
      ステップ 16policy-map type qos policy-name


      例:
      Device(config-cmap-qos)#  policy-map type qos my_qos_policy
       

      ポリシー マップを作成し、ポリシー マップ タイプ qos コンフィギュレーション モードを開始します。

       
      ステップ 17class type qos class-name


      例:
      Device(config-pmap-qos)# class type qos class1
       

      ポリシー マップの既存の QoS クラス マップに参照を追加し、クラス モードを開始します。

       
      ステップ 18set qos-group group-number


      例:
      Device(config-pmap-c-qos)# set qos-group 1
       

      次に、タイプ qos ポリシー マップのトラフィックのクラスに QoS グループ ID を割り当てます。

       
      ステップ 19system qos


      例:
      Device(config-pmap-c-qos)# system qos
       

      QoS システム ポリシーを設定し、システム QoS コンフィギュレーション モードを開始します。

       
      ステップ 20service-policy type qos input policy-map-name


      例:
      Device(config-sys-qos)# service-policy type qos input my_qos_policy
       

      ポリシー マップをシステム ポリシーに関連付けます。

       
      ステップ 21 exit


      例:
      Device(config-sys-qos)# exit
       

      QoS システム コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに戻ります。

       
      ステップ 22exit


      例:
      Device(config)# exit
       

      グローバル コンフィギュレーション モードを終了します。

       
      ステップ 23show running ipqos


      例:
      Device# show running ipqos
       

      IP QoS マネージャの実行コンフィギュレーションを表示します。

       

      リンクレベル フロー制御の設定例

      例:リンクレベル フロー制御 receive の設定

      リンクレベル フロー制御 receive の設定

      次に、デバイスでリンクレベル フロー制御 receive を設定する例を示します。

      Device# configure terminal
      Device(config)# interface ethernet 1/1
      Device(config-if)# flowcontrol receive on
      Device(config-if)# exit