Iintroduction
Ce document décrit le concept de Policy Class Tag(pcTag) / Class dans l'infrastructure axée sur les applications (ACI) de Cisco. Les informations contenues dans ce document sont basées sur la version logicielle 4.2(3n).
Conditions préalables
Pour mieux comprendre la conception présentée dans ce document, le lecteur doit posséder des connaissances de base sur l'ACI Cisco.
Qu'est-ce que pcTag ?
En d'autres termes, pcTag est un ID numérique utilisé pour la représentation interne de Endpoint Policy Group (epg) dans l'ACI, également appelé Classe source (sclass) ou Classe de destination (dclass). Il est utilisé pour la classification du trafic et pour l'application des politiques (exécution des contrats). Lorsque le trafic entre dans un terminal ACI, en fonction de la direction configurée d'application de la stratégie (par défaut - en entrée) et des informations de préfixe disponibles localement, le terminal ACI classifie et marque le trafic source et de destination dans des groupes de terminaux en lui attribuant une valeur pcTag. Le pcTag attribué à l'EPG source est appelé SCLASS tandis que le pcTag attribué à l'EPG de destination est appelé DCLASS.
La valeur de pcTag est comprise entre 1 et 65535. Elle peut être subdivisée en trois catégories.
System : il s'agit de balises système internes comprises entre 1 et 15. Par exemple, 13 correspond à un EPG de suppression et 15 à un sous-réseau l3out avec 0.0.0.0/0 dans EPG.
Global - Par défaut, la portée de pcTag est locale à VRF (Virtual Routing and Forwarding). Cependant, en cas de contrats inter-VRF, pcTag doit avoir une portée globale et doit être unique sur l'ensemble du fabric api. La plage 16-16385 est réservée à une utilisation globale.
Local : la portée par défaut de pcTag est locale au VRF et peut être réutilisée sur les VRF. Sa valeur est comprise entre 16386 et 65535.
Comment obtenir la valeur pctag d'un EPG ?
-
Utilisation de l'interface utilisateur graphique du contrôleur APIC (Application Policy Infrastructure Controller)
Sur l'interface graphique APIC, sélectionnez l'EPG pour lequel vous souhaitez obtenir le pctag et pcTag peut être vu sous Policy -> General
Locataires —> Profils d'application (AP) (Sélectionnez l'AP) —> EPG d'application (Sélectionnez l'EPG)—> Stratégie —>Général

De même, pour l'EPG L3out (Layer 3 Out), sélectionnez L3out EPG et le pcTag se trouve sous Policy -> General tab
Locataires —> Mise en réseau —> Sorties L3out—>Sélectionnez les EPG L3out —> Externes ( Sélectionnez l'EPG) —>Stratégie —>Général

-
Utilisation de l'interface de ligne de commande APIC
À l'aide de l'interface CLI APIC, pcTag d'un EPG peut être obtenuen utilisant la commande givenshow ou en utilisant une requête d'objet géré(Requête MO).
apic# show epg EPG1 detail
Application EPg Data:
Tenant : Prod
Application : AP01
AEPg : EPG1
BD : BD1
uSeg EPG : no
Intra EPG Isolation : unenforced
Proxy ARP : none
Policy Tag : 49155
Vlan Domains : prod-phy-dom
Consumed Contracts : default
Provided Contracts :
Denied Contracts :
Qos Class : unspecified
Tag List :
apic# moquery -c fvAEPg -f 'fv.AEPg.name=="EPG1"' | egrep "^name|^dn|^pcTag|^scope"
name : EPG1
dn : uni/tn-Prod/ap-AP01/epg-EPG1
nameAlias :
pcTag : 49155
scope : 2326533
Moquery pour obtenir la valeur pcTag d'une page L3Out :
apic# moquery -c l3extInstP -f 'l3ext.InstP.name=="ext_EPG"' | egrep "^name|^dn|^pcTag"
name : ext_EPG
dn : uni/tn-Prod/out-L3out_BGP/instP-ext_EPG
nameAlias :
pcTag : 16386
-
Utilisation de Leaf CLI
- Lorsque le terminal a été appris dans unEPG normal, vous pouvez obtenir le pcTag/SCLASS à partir de EndPoint Manager (EPM).
bgl-aci05-leaf5# show system internal epm endpoint ip 192.168.10.10
MAC : 002c.c80a.7ca9 ::: Num IPs : 1
IP# 0 : 192.168.10.10 ::: IP# 0 flags : ::: l3-sw-hit: No
Vlan id : 74 ::: Vlan vnid : 13894 ::: VRF name : Prod:vrfA
BD vnid : 15826927 ::: VRF vnid : 2326533
Phy If : 0x1a011000 ::: Tunnel If : 0
Interface : Ethernet1/18
Flags : 0x80000c04 ::: sclass : 49155 ::: Ref count : 5 <<<<<<<
Par getthepcTagvaleurpour L3Out EPG, la table de préfixe Policy Manager (Policy-mgr) est utilisée :
Dansrésultat,16386 est le pcTag pour le sous-réseau 10.20.20.0/24.
bgl-aci05-leaf5# vsh -c 'show system internal policy-mgr prefix' | egrep "Vrf-Vni|==|2326533"
Vrf-Vni VRF-Id Table-Id Table-State VRF-Name Addr Class Shared Remote Complete
======= ====== =========== ======= ============================ ================================= ====== ====== ====== ========
2326533 5 0x5 Up Prod:vrfA 0.0.0.0/0 15 True True False
2326533 5 0x80000005 Up Prod:vrfA ::/0 15 True True False
2326533 5 0x5 Up Prod:vrfA 10.20.20.0/24 16386 True True False
Comment obtenir le nom EPG lorsque vous connaissez la valeur pcTag ?
La façon la plus simple derécupérez le nom EPG de l'interface de ligne de commande APIC lorsque vous connaissez pcTagis pour utiliser la requête MO ci-dessous
Pour un EPG régulier,
apic# moquery -c fvAEPg -f 'fv.AEPg.pcTag=="16387"' | egrep "name|^dn"
name : EPG1
dn : uni/tn-mgmt/ap-AP/epg-EPG1
nameAlias :
scope : 2621440
Pour un EPG L3out :
apic# moquery -c l3extInstP -f 'l3ext.InstP.pcTag=="16386"'| egrep "name|^dn|scope"
name : ext_EPG
dn : uni/tn-Prod/out-L3out_BGP/instP-ext_EPG
nameAlias :
scope : 2326533
Remarque : Il y a des chances que vous puissiez obtenir plusieurs EPG par rapport à une valeur pcTag, car le pcTag local a une portée locale au VRF. Un filtre supplémentaire avec l'ID de segment VRF peut vous fournir la correspondance exacte.
Règles de pilotage du pc sourceTag et du pc de destinationTag SCLASS/DCLASS d'un flux
Cespeuvent être utilisées pour déterminer la classe et la dclass d'un intra-VRFflow et consultation des règles de zonage
Sclass |
Dclass |
SCLASS = pctag Epg source, si l'EPG d'entrée est un EPG normal.
SCLASS = pctag vrf, si entrée dans une L3Out sous le sous-réseau 0.0.0.0/0 dans L3Out EPG.
SCLASS = Ext. EPG pcTag, si vous touchez un autre sous-réseau non par défaut dans L3Out externe EPG.
|
DCLASS= Balise pcTag EPG de destination, si le point d'extrémité de destination a appris sur le leaf d'entrée.
DCLASS =1, si le point d'extrémité de destination n'est pas appris et que nous envoyons le paquet au fabric (proxy matériel ou inondation). L'application de la politique serait sur la destination Leaf.
DCLASS = 15, si la réponse est sur le sous-réseau 0.0.0.0/0 sous L3Out externe EPG.
DCLASS = External EPG pcTag, lorsqu'un résultat se trouve sur un sous-réseau plus spécifique ou non par défaut.
|
Remarque : Le sous-réseau mentionné ci-dessus est le sous-réseau que vous configurez sous EPG externe et non le sous-réseau dans une table de routage.
Obtention de SCLASS/DCLASS à l'aide du module ELAM (Embedded Logic Analysis Module)
ELAM est l'un des outils préférés pour obtenir les valeurs pcTag source et de destination d'un flux. Dans l'ELAM, sous "pkt rw vecteur", on peut obtenir les SCLASS et DCLASS d'un flux en utilisant les champs donnés. Les valeurs sont au format hexadécimal et doivent être converties au format décimal pour obtenir l'EPG pcTag.
sug_lurw_vec.info.nsh_special.dclass : <val>
sug_lurw_vec.info.nsh_special.sclass : <val>
Exemple :
sug_lurw_vec.info.nsh_special.dclass: 0x8004 << dst epg pctag is 32772
sug_lurw_vec.info.nsh_special.sclass: 0x8002. << src epg pctag is 32769
Avec les valeurs pcTag source et de destination, nous pouvons vérifier les règles de zonage sur les commutateurs Leaf d'entrée et de sortie.
Pour plus d'informations sur les règles de zonage, cliquez ici.