Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit comment surveiller les performances de iftask / NPU sur QvPC-DI.
Les informations de ce document sont basées sur QvPC-DI.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
iftask est un processus dans QvPC-DI. Elle active la fonctionnalité DPDK (Data Plane Development Kit) sur la carte virtuelle de fonction de service (SF) et la carte virtuelle de fonction de contrôle (CF) pour les ports réseau DI et les ports de service. DPDK est un moyen plus efficace de gérer les entrées/sorties dans les environnements virtualisés.
Les pilotes de périphériques des contrôleurs d'interface réseau (NIC) hautes performances sont maintenant déplacés vers l'espace utilisateur, ce qui évite les commutateurs de contexte coûteux (espace utilisateur/espace noyau).
Les pilotes s'exécutent en mode non interruptible dans l'espace utilisateur, et les threads ont un accès direct aux files d'attente matérielles/tampons d'anneau dans ces pilotes de carte réseau.
La documentation relative à l'architecture est disponible à :
Guide d'administration de la plate-forme Ultra Services Platform (USP) à partir de la plate-forme Ultra Gateway.
Disponibilité pour différentes versions.
En détail si l'architecture des tâches (pour SF) est vue dans ce schéma :
Pendant le déploiement, une certaine quantité d'unités centrales virtuelles (vCPU) est allouée de manière statique au processus iftask. Cela réduit la quantité de coeurs pour les applications d'espace utilisateur (sessmgr, etc.), mais améliore considérablement les performances d'E/S.
Cette allocation est effectuée via le paramètre ci-dessous dans ce modèle param.cfg qui est associé à chaque SF/CF pendant le déploiement :
La commande « show cloud hardware iftask » donne plus de détails sur ce point sur votre déploiement QVPC-DI :
[local]UGP# show cloud hardware iftask Card 1: Total number of cores on VM: 8 Number of cores for PMD only: 0 Number of cores for VNPU only: 0 Number of cores for PMD and VNPU: 2 <-- CF: 2 out of 8 cores are assigned to iftask PMD/VNPU Number of cores for MCDMA: 0 <-- CF: no cores allocated to MCDMA as there is no sessmgr process on CF Number of cores for Crypto: 0 Hugepage size: 2048 kB Total hugepages: 3670016 kB NPUSHM hugepages: 0 kB CPU flags: avx sse sse2 ssse3 sse4_1 sse4_2 Poll CPU's: 1 2 KNI reschedule interval: 5 us ... Card 3: Total number of cores on VM: 8 Number of cores for PMD only: 0 Number of cores for VNPU only: 0 Number of cores for PMD and VNPU: 2 <-- SF: 2 out of 8 core are assigned to iftask PMD/VNPU
Number of cores for MCDMA: 1 <-- SF: 1 out of 8 cores is assigned to iftak MCDMA
Number of cores for Crypto: 0
Hugepage size: 2048 kB
Total hugepages: 4718592 kB
NPUSHM hugepages: 0 kB
CPU flags: avx sse sse2 ssse3 sse4_1 sse4_2
Poll CPU's: 1 2 3
KNI reschedule interval: 5 us
La commande 'show cloud configuration' donnera plus de détails sur les paramètres utilisés :
[local]UGP# show cloud configuration Card 1: Config Disk Params: ------------------------- CARDSLOT=1 CPUID=0 CARDTYPE=0x40010100 DI_INTERFACE=BOND:TYPE:ixgbevf-1,TYPE:ixgbevf-2 DI_INTERFACE_VLANID=2111 VNFM_INTERFACE=MAC:fa:16:3e:23:aa:e9 VNFM_PROXY_ADDRS=172.16.180.3,172.16.180.5,172.16.180.6 MGMT_INTERFACE=MAC:fa:16:3e:87:23:9b VNFM_IPV4_ENABLE=true VNFM_IPV4_DHCP_ENABLE=true Local Params: ------------------------- CARDSLOT=1 CARDTYPE=0x40010100 CPUID=0 ... Card 3: Config Disk Params: ------------------------- CARDSLOT=3 CPUID=0 CARDTYPE=0x42030100 DI_INTERFACE=BOND:TYPE:ixgbevf-1,TYPE:ixgbevf-2 SERVICE1_INTERFACE=BOND:TYPE:ixgbevf-3,TYPE:ixgbevf-4 SERVICE2_INTERFACE=BOND:TYPE:ixgbevf-5,TYPE:ixgbevf-6 DI_INTERFACE_VLANID=2111 VNFM_INTERFACE=MAC:fa:16:3e:29:c6:b7 IFTASK_CORES=30 VNFM_IPV4_ENABLE=true VNFM_IPV4_DHCP_ENABLE=true Local Params: ------------------------- CARDSLOT=3 CARDTYPE=0x42010100 CPUID=0
Le processus iftask peut être surveillé de plusieurs manières.
Consolidez la liste des commandes show :
show subscribers data-rate show npumgr dinet utilization pps show npumgr dinet utilization pps show cloud monitor di-network summary show cloud hardware iftask show cloud configuration show iftask stats summary show port utilization table show npu utilization table show npumgr utilization information show processes cpu
La commande #show cpu info verbose ne donnera pas d'informations sur les coeurs iftask. Ils seront toujours répertoriés à 100 % d'utilisation.
Dans l'exemple ci-dessous, les ressources de base 1,2,3 sont associées à iftask et sont répertoriées à 100 % d'utilisation, ce qui est attendu.
Card 3, CPU 0: Status : Standby, Kernel Running, Tasks Running Load Average : 3.12, 3.12, 3.13 (3.95 max) Total Memory : 16384M Kernel Uptime : 4D 21H 56M Last Reading: CPU Usage All : 1.9% user, 0.3% sys, 0.0% io, 0.0% irq, 97.8% idle Core 0 : 5.8% user, 0.2% sys, 0.0% io, 0.0% irq, 94.0% idle Core 1 : Not Averaged (Poll CPU) Core 2 : Not Averaged (Poll CPU) Core 3 : Not Averaged (Poll CPU) Core 4 : 2.2% user, 0.2% sys, 0.0% io, 0.0% irq, 97.6% idle Core 5 : 0.8% user, 0.5% sys, 0.0% io, 0.0% irq, 98.7% idle Core 6 : 0.4% user, 0.5% sys, 0.0% io, 0.0% irq, 99.1% idle Core 7 : 0.1% user, 0.3% sys, 0.0% io, 0.0% irq, 99.6% idle Poll CPUs : 3 (1, 2, 3) Core 1 : 100.0% user, 0.0% sys, 0.0% io, 0.0% irq, 0.0% idle Core 2 : 100.0% user, 0.0% sys, 0.0% io, 0.0% irq, 0.0% idle Core 3 : 100.0% user, 0.0% sys, 0.0% io, 0.0% irq, 0.0% idle Processes / Tasks : 143 processes / 16 tasks Network mcdmaN : 0.002 kpps rx, 0.001 mbps rx, 0.002 kpps tx, 0.001 mbps tx File Usage : 1504 open files, 1627405 available Memory Usage : 7687M 46.9% used Memory Details: Static : 330M kernel, 144M image System : 10M tmp, 0M buffers, 54M kcache, 79M cache Process/Task : 6963M (120M small, 684M huge, 6158M other) Other : 104M shared data Free : 8696M free Usable : 5810M usable (8696M free, 0M reclaimable, 2885M reserved by tasks)
La commande #show npu used table donnera un bon résumé sur l'utilisation de chaque coeur associé au processus iftask (sur chaque carte).
Remarque : Il est important ici d'identifier si certains coeurs sont toujours plus utilisés que d'autres.
[local]UGP# show npu utilization table -------iftask------- lcore now 5min 15min -------- ------ ------ ------ 01/0/1 0% 0% 0% 01/0/2 0% 0% 0% 02/0/1 0% 0% 0% 02/0/2 2% 1% 0% 03/0/1 0% 0% 0% 03/0/2 0% 0% 0% 03/0/3 0% 0% 0% 04/0/1 0% 0% 0% 04/0/2 0% 0% 0% 04/0/3 0% 0% 0% 05/0/1 0% 0% 0% 05/0/2 0% 0% 0% 05/0/3 0% 0% 0%
Commande #show npumgr utilisation information (commande masquée)
Cette commande donne plus d'informations sur chaque coeur iftask, et sur ce qui consomme le CPU sur ces coeurs.
Remarque : Les coeurs PMD utilisent leur CPU sur PortRX, PortTX, KNI, Cipher.
Remarque : Le processeur des coeurs MCDMA est utilisé par MCDMA.
Les coeurs PMD et MCDMA ont une charge égale.
Si ce n'est pas le cas, un certain réglage peut être nécessaire (allocation de plus/moins de coeurs MDMA par exemple).
******** show npumgr utilization information 3/0/0 ******* 5-Sec Avg: lcore01| lcore02| lcore03| lcore04| lcore05| lcore06| lcore07| lcore08| lcore09| lcore10| lcore11| lcore12| Idle: 41%| 47%| 73%| 62%| 48%| 49%| 69%| 71%| 49%| 64%| 48%| 69%| PortRX: 32%| 36%| 0%| 0%| 0%| 0%| 31%| 29%| 0%| 0%| 0%| 31%| PortTX: 16%| 18%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| KniRX: 3%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| McdmaRX: 0%| 0%| 11%| 15%| 22%| 21%| 0%| 0%| 20%| 14%| 20%| 0%| Mcdma: 0%| 0%| 1%| 2%| 3%| 2%| 0%| 0%| 3%| 3%| 3%| 0%| McdmaFlush: 0%| 0%| 15%| 21%| 27%| 27%| 0%| 0%| 27%| 18%| 28%| 0%| Cipher: 7%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| rx kbits/sec: 173914| 257249| 248543| 224081| 319973| 299437| 450992| 380112| 391400| 325099| 355809| 399515| rx frames/sec: 30557| 36549| 37465| 32560| 46914| 43938| 70711| 54818| 58482| 47462| 53477| 58793| tx kbits/sec: 169641| 251958| 253930| 228760| 326714| 305750| 440773| 372187| 399806| 331914| 363491| 391002| tx frames/sec: 30551| 36524| 37465| 32560| 46914| 43938| 70681| 54785| 58483| 47462| 53477| 58749| 5-Min Avg: lcore01| lcore02| lcore03| lcore04| lcore05| lcore06| lcore07| lcore08| lcore09| lcore10| lcore11| lcore12| Idle: 18%| 36%| 60%| 62%| 46%| 45%| 65%| 62%| 44%| 53%| 39%| 65%| PortRX: 29%| 45%| 0%| 0%| 0%| 0%| 35%| 38%| 0%| 0%| 0%| 35%| PortTX: 17%| 20%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| KniRX: 3%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| Kni: 1%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| McdmaRX: 0%| 0%| 17%| 17%| 23%| 24%| 0%| 0%| 24%| 19%| 26%| 0%| Mcdma: 0%| 0%| 2%| 2%| 3%| 3%| 0%| 0%| 4%| 3%| 4%| 0%| McdmaFlush: 0%| 0%| 21%| 20%| 28%| 28%| 0%| 0%| 28%| 24%| 30%| 0%| Cipher: 32%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| rx kbits/sec: 217296| 297699| 261605| 268546| 389380| 397101| 479195| 528945| 438931| 360583| 454262| 468575| rx frames/sec: 39194| 42022| 40122| 40086| 58217| 59507| 80931| 76094| 67224| 54592| 68565| 67013| tx kbits/sec: 211773| 291616| 267373| 274308| 397747| 405655| 467493| 517944| 448590| 368412| 464116| 458868| tx frames/sec: 39182| 41998| 40122| 40086| 58217| 59507| 80895| 76058| 67224| 54592| 68565| 66973| 15-Min Avg: lcore01| lcore02| lcore03| lcore04| lcore05| lcore06| lcore07| lcore08| lcore09| lcore10| lcore11| lcore12| Idle: 22%| 37%| 60%| 61%| 45%| 46%| 64%| 64%| 44%| 49%| 41%| 66%| PortRX: 33%| 43%| 0%| 0%| 0%| 0%| 36%| 36%| 0%| 0%| 0%| 34%| PortTX: 18%| 20%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| KniRX: 4%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| McdmaRX: 0%| 0%| 16%| 16%| 24%| 24%| 0%| 0%| 24%| 22%| 25%| 0%| Mcdma: 0%| 0%| 2%| 2%| 3%| 3%| 0%| 0%| 4%| 4%| 4%| 0%| McdmaFlush: 0%| 0%| 21%| 20%| 28%| 28%| 0%| 0%| 28%| 26%| 30%| 0%| Cipher: 23%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| 0%| rx kbits/sec: 225682| 297062| 267631| 272770| 419821| 405286| 489633| 511100| 476834| 401810| 467134| 466549| rx frames/sec: 39670| 42772| 40892| 40834| 62740| 61170| 83540| 76519| 72158| 60242| 70707| 67961| tx kbits/sec: 220089| 290875| 273510| 278639| 428840| 414080| 477557| 500037| 487201| 410421| 477298| 456711| tx frames/sec: 39657| 42748| 40892| 40834| 62740| 61170| 83504| 76484| 72158| 60242| 70707| 67925| @ tick 896633 (+ve-skew-cnt=123633, -ve-skew-cnt=0), failed samples 0
Commandes #show npumgr dinet use pps, #show npumgr dinet use bbps et #show port use table
Ils fournissent des informations sur la charge des ports DI et des ports de services.
Les performances réelles dépendent de l'allocation de la carte réseau/du processeur et du processeur pour iftask.
[local]UGP# show npumgr dinet utilization pps ------ Average DINet Port Utilization (in kpps) ------ Port Type Current 5min 15min Rx Tx Rx Tx Rx Tx ----- ------------------------ ------- ------- ------- ------- ------- ------- 1/0 Virtual Ethernet 0 0 0 0 0 0 2/0 Virtual Ethernet 0 0 0 0 0 0 3/0 Virtual Ethernet 0 0 0 0 0 0 4/0 Virtual Ethernet 0 0 0 0 0 0 5/0 Virtual Ethernet 0 0 0 0 0 0
[local]UGP# show npumgr dinet utilization bps ------ Average DINet Port Utilization (in mbps) ------ Port Type Current 5min 15min Rx Tx Rx Tx Rx Tx ----- ------------------------ ------- ------- ------- ------- ------- ------- 1/0 Virtual Ethernet 1 1 1 1 1 1 2/0 Virtual Ethernet 1 0 1 0 1 0 3/0 Virtual Ethernet 0 0 0 0 0 0 4/0 Virtual Ethernet 0 0 0 0 0 0 5/0 Virtual Ethernet 0 0 0 0 0 0
[local]UGP# show port utilization table ------ Average Port Utilization (in mbps) ------ Port Type Current 5min 15min Rx Tx Rx Tx Rx Tx ----- ------------------------ ------- ------- ------- ------- ------- ------- 1/1 Virtual Ethernet 0 0 0 0 0 0 2/1 Virtual Ethernet 0 0 0 0 0 0 3/10 Virtual Ethernet 0 0 0 0 0 0 3/11 Virtual Ethernet 0 0 0 0 0 0 4/10 Virtual Ethernet 0 0 0 0 0 0 4/11 Virtual Ethernet 0 0 0 0 0 0 5/10 Virtual Ethernet 0 0 0 0 0 0 5/11 Virtual Ethernet 0 0 0 0 0 0
Commande #show cloud monitor di-network summary
Cette commande surveille l'intégrité du réseau DI. Les cartes s'envoient des pulsations et la perte est surveillée. Dans un système sain, aucune perte n'est signalée.
[local]UGP# show cloud monitor di-network summary Card 3 Heartbeat Results: ToCard Health 5MinLoss 60MinLoss 1 Good 0.00% 0.00% 2 Good 0.00% 0.00% 4 Good 0.00% 0.00% 5 Good 0.00% 0.00% Card 4 Heartbeat Results: ToCard Health 5MinLoss 60MinLoss 1 Good 0.00% 0.00% 2 Good 0.00% 0.00% 3 Good 0.00% 0.00% 5 Good 0.00% 0.00% Card 5 Heartbeat Results: ToCard Health 5MinLoss 60MinLoss 1 Good 0.00% 0.00% 2 Good 0.00% 0.00% 3 Good 0.00% 0.00% 4 Good 0.00% 0.00%
Commande #show iftask stats summary
Avec des charges NPU plus élevées, il est possible que le trafic soit abandonné.
Pour évaluer cela, la commande #show iftask stats summary peut être utilisée.
Remarque : Les REJETS peuvent être différents de zéro.
Remarque : tous les autres compteurs ne doivent pas être incrémentés.
[local]VPC# show iftask stats summary^M Thursday January 18 16:01:29 IST 2018 ----------------------------------------------------------------------------------------------- Counter SF3 SF4 SF5 SF6 SF7 SF8 SF9 SF10 SF11 SF12 ___TOTAL___ ------------------------------------------------------------------------------------------------ svc_rx 32491861127 16545600654 37041906441 37466889835 32762859630 34931554543 38861410897 16025531220 33566817747 32823851780 312518283874 svc_tx 46024774071 14811663244 40316226774 39926898585 40803541378 48718868048 35252698559 1738016438 4249156512 40356388348 312198231957 di_rx 42307187425 14637310721 40072487209 39584697117 41150445596 44534022642 31867253533 1731310419 4401095653 40711142205 300996952520 di_tx 28420090751 16267050562 36423298668 36758561246 32731606974 30366650898 35201117980 16009902791 33536789041 32815316570 298530385481 __ALL_DROPS__ 1932492 252 17742 790473 11228 627018 844812 60402 0 460830 4745249 svc_tx_drops 0 0 0 0 0 0 0 0 0 0 0 di_rx_drops 0 1 0 0 49 113 579 30200 0 4888 35830 di_tx_drops 0 0 0 0 0 0 0 0 0 0 0 sw_rss_enq_drops 0 0 0 0 0 0 0 0 0 0 0 kni_thread_drops 0 0 0 0 0 0 0 0 0 0 0 kni_drops 0 1 0 0 0 0 124 30200 0 0 30325 mcdma_drops 0 0 0 168 80 194535 758500 0 0 11628 964911 mux_deliver_hop_drops 0 0 0 0 0 0 0 0 0 1019 1019 mux_deliver_drops 0 0 0 0 0 0 0 0 0 0 0 mux_xmit_failure_drops 0 3 0 0 0 0 7 2 0 0 12 mc_dma_thread_enq_drops 0 0 0 0 49 113 580 0 0 3457 4199 sw_tx_egress_enq_drops 1904329 0 0 787971 9004 429214 85022 0 0 429810 3645350 cpeth0_drops 0 0 0 0 0 0 0 0 0 0 0 mcdma_summary_drops 28163 247 17742 2334 2046 3043 0 0 0 10028 63603 fragmentation_err 0 0 0 0 0 0 0 0 0 0 0 reassembly_err 0 0 0 0 0 0 0 0 0 0 0 reassembly_ring_enq_err 0 0 0 0 0 0 0 0 0 0 0 __DISCARDS__ 20331090 9051092 23736055 23882896 23807520 24231716 24116576 8944291 22309474 20135799 20135799
Le schéma Bulkstat est développé pour les performances QPVC-DI liées à iftask/dinet. Ceci est utile pour surveiller le dinet, les ports de service et l'utilisation de l'unité centrale du point de vue des performances/de la charge :
card schema iftask-dinet format EMS,IFTASKDINET,%date%,%time%,%dinet-rxpkts-curr%,%dinet-txpkts-curr%,%dinet-rxpkts-5minave%,%dinet-txpkts-5minave%,%dinet-rxpkts-15minave%,%dinet-txpkts-15minave%,%dinet-txdrops-curr%,%dinet-txdrops-5minave%,%dinet-txdrops-15minave%,%npuutil-now% file 2 port schema iftask-port format EMS,IFTASKPORT,%date%,%time%,%util-rxpkts-curr%,%util-txpkts-curr%,%util-rxpkts-5min%,%util-txpkts-5min%,%util-rxpkts-15min%,%util-txpkts-15min%,%util-txdrops-curr%,%util-txdrops-5min%,%util-txdrops-15min% file 3 card schema npu-util format EMS,NPUUTIL,%date%,%time%,%npuutil-now%,%npuutil-5minave%,%npuutil-15minave%,%npuutil-rxbytes-5secave%,%npuutil-txbytes-5secave%,%npuutil-rxbytes-5minave%,%npuutil-txbytes-5minave%,%npuutil-rxbytes-15minave%,%npuutil-txbytes-15minave%,%npuutil-rxpkts-5secave%,%npuutil-txpkts-5secave%,%npuutil-rxpkts-5minave%,%npuutil-txpkts-5minave%,%npuutil-rxpkts-15minave%,%npuutil-txpkts-15minave%