本記事ではACIにおけるQoS Policyの設定方法についてご紹介します。
ACIにおけるQoSの全体像については「ACI QoS - 概要」をご参照ください。
1. QoS Policy in Contract
Contractに QoS Policy を紐づけることで、特定のEPG間の通信に対して TCP/UDP ポート番号 等を指定してQoS Classの割り当てを行うことができます。

設定を行うには、まず Tenants > (対象のテナント) > Contracts > Filters を右クリックし"Create Filter"を選択しフィルターを作成する。続いてContractを作成し、作成したフィルターを紐づける。

続いて Contract を作成し、"QoS Class"のプルダウンからフィルターで指定した通信に割り当てたい QoS Class を選択する。

尚、QoS Class は Contract に対して指定を行うことも、Subject に対して指定を行うことも両方可能。
複数のSubjectが設定されている場合はよりSpecificな条件が優先される。

2. Custom QoS

Custom QoS 設定では、ACIに着信したパケットのオリジナルのヘッダーにセットされた CoS もしくは DSCP 値に従って QoS Class の割り当てを行います。ACI内部では、QoS Class に従って優先制御が行われます。
Custom QoS を設定することで、着信したパケットに EF(DSCP:46) がセットされていた場合 Strict Priority に設定された QoS Class Level1 に割り当てる といった動作を行うことが可能になります。
また、Custom QoS ではリマーキングの設定を行うことも可能です。
リマーキングの設定を行うことで、パケットをACIファブリックの外部に送信する際に特定の CoS / DSCP 値をセットして送出することが可能になります。
※ パケットがACIファブリックに着信し外部に送出される時どのように CoS / DSCP 値が処理されるか、また、ACI内部のVXLAN Outer ヘッダーにはどのように CoS / DSCP値がセットされるか については「ACI QoS - Dot1.p Preservation」の記事で詳しく解説します。
Custom QoS の設定を行うには、まず Tenants > (対象のテナント) > Policies > Custom QoS を右クリックし"Create Custom QoS Policy" を選択します。
オリジナルパケットの DSCP値 に基づいて QoS Class へのマッピングを行う場合は "DSCP to priority map"、CoS 値に基づいて QoS Class へのマッピングを行う場合は"Dot1P Classifiers"の"+"ボタンを押してエントリを作成します。
両方の条件が設定されていてコンフリクトする場合、DSCPが優先されます。
リマーキングを行わない場合は"Unspecified"を選択することも可能です。
※ CoS のリマーキングを行いたい場合はグローバル設定で "Dot1P Preserve"設定を有効化する必要があります。

作成した Custom QoS Policy をEPGに対して紐づけます。
Tenants > (対象のテナント) > Application Profile > (対象のAP) > Application EPG > (対象のEPG) を選択し、"Custom QoS"のプルダウンから先ほど作成したCustom QoS Policyを選択します。

3. EPG default class
特定のEPGを送信元とするトラフィックの優先制御を行いたい場合には、EPG dafault class の設定を行う。
EPG:A の default class を Level1 に設定している場合に、EPG: A を 宛先とする通信についても QoS Class Level1 に割り当てられるわけではなく、あくまで送信元のEPGに従ってマーキングが行われる。

Tenants > (対象のテナント) > Application Profile > (対象のAP) > Application EPG > (対象のEPG) を選択し、"QoS Class"のプルダウンから設定したい QoS Class を選択します。

「ACI QoS - 概要」にも記載の通り、これらの QoS Policy には優先順位があり、以下の順で適用されます。
1. QoS Policy in Contract
↓
2. Custom QoS
↓
3. EPG default class