らくがきちょう

なんとなく ~所属組織/団体とは無関係であり、個人の見解です~

Cisco ACI で Policy CAM の利用状況を確認する

従来の機器でも「ACL を設定すると TCAM 領域を消費」すると思います。 Cisco ACI でも ACI に相当する「Contract」を設定すると TCAM (Policy CAM) を消費していきます。 スイッチごとの最大 Policy CAM 数は概ね、以下の要素で決定されます。

  1. スイッチの型番
  2. Forwarding Scale Profile 設定

今回は実際に Contract を設定し、どのように Policy CAM が消費されるのか?を確認してみます。 尚、今回は 5.0(2h) 環境でテストしました。 且つ、Enable Policy Compression設定されていないもの としてテストしています。

Policy CAM 消費量の計算式

Policy CAM の消費量は以下の式で計算することが出来ます。

Apply Both Directions 設定 計算式
チェック無し Consumer EPG 数 x Provider EPG 数 x Filter Entry 数 x 1
チェック有り Consumer EPG 数 x Provider EPG 数 x Filter Entry 数 x 2

Both Directions に設定されている場合は Zoning-rule が双方向に作成される (つまり、2 倍になる) 為、「x 2 」することになります。

前提コンフィグ

以下のコンフィグが設定されている前提でテストしていきます。

tenant Tenant1
  access-list Filter1
    match tcp dest 10000
    match tcp dest 10001
    match tcp dest 10002
    match tcp dest 10003
    match tcp dest 10004
    match tcp dest 10005
    match tcp dest 10006
    match tcp dest 10007
    match tcp dest 10008
    match tcp dest 10009
    exit
  contract Contract1
    subject Subject1
      access-group Filter1 both
      exit
    exit
  vrf context Vrf1
    exit
  bridge-domain Bd1
    arp flooding
    vrf member Vrf1
    exit
  bridge-domain Bd2
    arp flooding
    vrf member Vrf1
    exit
  bridge-domain Bd3
    arp flooding
    vrf member Vrf1
    exit
  bridge-domain Bd4
    arp flooding
    vrf member Vrf1
    exit
  bridge-domain Bd5
    arp flooding
    vrf member Vrf1
    exit
  application Ap1
    epg Epg1
      bridge-domain member Bd1
      set qos-class level3
      vmware-domain member Vmm1 deploy immediate
        exit
      exit
    epg Epg2
      bridge-domain member Bd2
      set qos-class level3
      vmware-domain member Vmm1 deploy immediate
        exit
      exit
    epg Epg3
      bridge-domain member Bd3
      set qos-class level3
      vmware-domain member Vmm1 deploy immediate
        exit
      exit
    epg Epg4
      bridge-domain member Bd4
      set qos-class level3
      vmware-domain member Vmm1 deploy immediate
        exit
      exit
    epg Epg5
      bridge-domain member Bd5
      set qos-class level3
      vmware-domain member Vmm1 deploy immediate
        exit
      exit
    exit
  exit

Filter 設定前

Leaf 毎の Policy CAM 消費量は Capacity Dashboard から確認することが出来ます。 Contract 設定前の Policy CAM は 59 でした。

f:id:sig9:20200826233219p:plain

Filter 設定後

Contract を接続していきます。 徐々に Contract されている EPG の数を増やしていきます。

ケース 1

Epg1 と Epg2 を接続します。

tenant Tenant1
  application Ap1
    epg Epg1
      contract consumer Contract1
      exit
    epg Epg2
      contract provider Contract1
      exit
    exit
  exit

ケース 2

Provider 側に Epg3 を追加します。

tenant Tenant1
  application Ap1
    epg Epg3
      contract provider Contract1
      exit
    exit
  exit

ケース 3

更に、Provider 側に Epg4 を追加します。

tenant Tenant1
  application Ap1
    epg Epg4
      contract provider Contract1
      exit
    exit
  exit

ケース 3

更に、Provider 側に Epg5 を追加します。

tenant Tenant1
  application Ap1
    epg Epg5
      contract provider Contract1
      exit
    exit
  exit

結果

結果は以下のようになります。

f:id:sig9:20200826235223p:plain

Consumer / Provider EPG が複数あるパターン

Consumer / Provider EPG が複数ある場合も、同じ式で Policy CAM の消費量を計算することが出来ます。

f:id:sig9:20200827000959p:plain