1339 lines · plain
1.. SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB2.. include:: <isonum.txt>3 4================5Ethtool counters6================7 8:Copyright: |copy| 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.9 10Contents11========12 13- `Overview`_14- `Groups`_15- `Types`_16- `Descriptions`_17 18Overview19========20 21There are several counter groups based on where the counter is being counted. In22addition, each group of counters may have different counter types.23 24These counter groups are based on which component in a networking setup,25illustrated below, that they describe::26 27 ----------------------------------------28 | |29 ---------------------------------------- ---------------------------------------- |30 | Hypervisor | | VM | |31 | | | | |32 | ------------------- --------------- | | ------------------- --------------- | |33 | | Ethernet driver | | RDMA driver | | | | Ethernet driver | | RDMA driver | | |34 | ------------------- --------------- | | ------------------- --------------- | |35 | | | | | | | | |36 | ------------------- | | ------------------- | |37 | | | | | |--38 ---------------------------------------- ----------------------------------------39 | |40 ------------- -----------------------------41 | |42 ------ ------ ------ ------ ------ ------ ------43 -----| PF |----------------------| VF |-| VF |-| VF |----- --| PF |--- --| PF |--- --| PF |---44 | ------ ------ ------ ------ | | ------ | | ------ | | ------ |45 | | | | | | | |46 | | | | | | | |47 | | | | | | | |48 | eSwitch | | eSwitch | | eSwitch | | eSwitch |49 ---------------------------------------------------------- ----------- ----------- -----------50 -------------------------------------------------------------------------------51 | |52 | |53 | Uplink (no counters) |54 -------------------------------------------------------------------------------55 ---------------------------------------------------------------56 | |57 | |58 | MPFS (no counters) |59 ---------------------------------------------------------------60 |61 |62 | Port63 64Groups65======66 67Ring68 Software counters populated by the driver stack.69 70Netdev71 An aggregation of software ring counters.72 73vPort counters74 Traffic counters and drops due to steering or no buffers. May indicate issues75 with NIC. These counters include Ethernet traffic counters (including Raw76 Ethernet) and RDMA/RoCE traffic counters.77 78Physical port counters79 Counters that collect statistics about the PFs and VFs. May indicate issues80 with NIC, link, or network. This measuring point holds information on81 standardized counters like IEEE 802.3, RFC2863, RFC 2819, RFC 3635 and82 additional counters like flow control, FEC and more. Physical port counters83 are not exposed to virtual machines.84 85Priority Port Counters86 A set of the physical port counters, per priority per port.87 88Types89=====90 91Counters are divided into three types.92 93Traffic Informative Counters94 Counters which count traffic. These counters can be used for load estimation95 or for general debug.96 97Traffic Acceleration Counters98 Counters which count traffic that was accelerated by Mellanox driver or by99 hardware. The counters are an additional layer to the informative counter set,100 and the same traffic is counted in both informative and acceleration counters.101 102.. [#accel] Traffic acceleration counter.103 104Error Counters105 Increment of these counters might indicate a problem. Each of these counters106 has an explanation and correction action.107 108Statistic can be fetched via the `ip link` or `ethtool` commands. `ethtool`109provides more detailed information.::110 111 ip –s link show <if-name>112 ethtool -S <if-name>113 114Descriptions115============116 117XSK, PTP, and QoS counters that are similar to counters defined previously will118not be separately listed. For example, `ptp_tx[i]_packets` will not be119explicitly documented since `tx[i]_packets` describes the behavior of both120counters, except `ptp_tx[i]_packets` is only counted when precision time121protocol is used.122 123Ring / Netdev Counter124----------------------------125The following counters are available per ring or software port.126 127These counters provide information on the amount of traffic that was accelerated128by the NIC. The counters are counting the accelerated traffic in addition to the129standard counters which counts it (i.e. accelerated traffic is counted twice).130 131The counter names in the table below refers to both ring and port counters. The132notation for ring counters includes the [i] index without the braces. The133notation for port counters doesn't include the [i]. A counter name134`rx[i]_packets` will be printed as `rx0_packets` for ring 0 and `rx_packets` for135the software port.136 137.. flat-table:: Ring / Software Port Counter Table138 :widths: 2 3 1139 140 * - Counter141 - Description142 - Type143 144 * - `rx[i]_packets`145 - The number of packets received on ring i.146 - Informative147 148 * - `rx[i]_bytes`149 - The number of bytes received on ring i.150 - Informative151 152 * - `tx[i]_packets`153 - The number of packets transmitted on ring i.154 - Informative155 156 * - `tx[i]_bytes`157 - The number of bytes transmitted on ring i.158 - Informative159 160 * - `tx[i]_recover`161 - The number of times the SQ was recovered.162 - Error163 164 * - `tx[i]_cqes`165 - Number of CQEs events on SQ issued on ring i.166 - Informative167 168 * - `tx[i]_cqe_err`169 - The number of error CQEs encountered on the SQ for ring i.170 - Error171 172 * - `tx[i]_tso_packets`173 - The number of TSO packets transmitted on ring i [#accel]_.174 - Acceleration175 176 * - `tx[i]_tso_bytes`177 - The number of TSO bytes transmitted on ring i [#accel]_.178 - Acceleration179 180 * - `tx[i]_tso_inner_packets`181 - The number of TSO packets which are indicated to be carry internal182 encapsulation transmitted on ring i [#accel]_.183 - Acceleration184 185 * - `tx[i]_tso_inner_bytes`186 - The number of TSO bytes which are indicated to be carry internal187 encapsulation transmitted on ring i [#accel]_.188 - Acceleration189 190 * - `rx[i]_gro_packets`191 - Number of received packets processed using hardware-accelerated GRO. The192 number of hardware GRO offloaded packets received on ring i. Only true GRO193 packets are counted: only packets that are in an SKB with a GRO count > 1.194 - Acceleration195 196 * - `rx[i]_gro_bytes`197 - Number of received bytes processed using hardware-accelerated GRO. The198 number of hardware GRO offloaded bytes received on ring i. Only true GRO199 packets are counted: only packets that are in an SKB with a GRO count > 1.200 - Acceleration201 202 * - `rx[i]_gro_skbs`203 - The number of GRO SKBs constructed from hardware-accelerated GRO. Only SKBs204 with a GRO count > 1 are counted.205 - Informative206 207 * - `rx[i]_gro_large_hds`208 - Number of receive packets using hardware-accelerated GRO that have large209 headers that require additional memory to be allocated.210 - Informative211 212 * - `rx[i]_hds_nodata_packets`213 - Number of header only packets in header/data split mode [#accel]_.214 - Informative215 216 * - `rx[i]_hds_nodata_bytes`217 - Number of bytes for header only packets in header/data split mode218 [#accel]_.219 - Informative220 221 * - `rx[i]_hds_nosplit_packets`222 - Number of packets that were not split in header/data split mode. A223 packet will not get split when the hardware does not support its224 protocol splitting. An example such a protocol is ICMPv4/v6. Currently225 TCP and UDP with IPv4/IPv6 are supported for header/data split226 [#accel]_.227 - Informative228 229 * - `rx[i]_hds_nosplit_bytes`230 - Number of bytes for packets that were not split in header/data split231 mode. A packet will not get split when the hardware does not support its232 protocol splitting. An example such a protocol is ICMPv4/v6. Currently233 TCP and UDP with IPv4/IPv6 are supported for header/data split234 [#accel]_.235 - Informative236 237 * - `rx[i]_lro_packets`238 - The number of LRO packets received on ring i [#accel]_.239 - Acceleration240 241 * - `rx[i]_lro_bytes`242 - The number of LRO bytes received on ring i [#accel]_.243 - Acceleration244 245 * - `rx[i]_ecn_mark`246 - The number of received packets where the ECN mark was turned on.247 - Informative248 249 * - `rx_oversize_pkts_buffer`250 - The number of dropped received packets due to length which arrived to RQ251 and exceed software buffer size allocated by the device for incoming252 traffic. It might imply that the device MTU is larger than the software253 buffers size.254 - Error255 256 * - `rx_oversize_pkts_sw_drop`257 - Number of received packets dropped in software because the CQE data is258 larger than the MTU size.259 - Error260 261 * - `rx[i]_csum_unnecessary`262 - Packets received with a `CHECKSUM_UNNECESSARY` on ring i [#accel]_.263 - Acceleration264 265 * - `rx[i]_csum_unnecessary_inner`266 - Packets received with inner encapsulation with a `CHECKSUM_UNNECESSARY`267 on ring i [#accel]_.268 - Acceleration269 270 * - `rx[i]_csum_none`271 - Packets received with a `CHECKSUM_NONE` on ring i [#accel]_.272 - Acceleration273 274 * - `rx[i]_csum_complete`275 - Packets received with a `CHECKSUM_COMPLETE` on ring i [#accel]_.276 - Acceleration277 278 * - `rx[i]_csum_complete_tail`279 - Number of received packets that had checksum calculation computed,280 potentially needed padding, and were able to do so with281 `CHECKSUM_PARTIAL`.282 - Informative283 284 * - `rx[i]_csum_complete_tail_slow`285 - Number of received packets that need padding larger than eight bytes for286 the checksum.287 - Informative288 289 * - `tx[i]_csum_partial`290 - Packets transmitted with a `CHECKSUM_PARTIAL` on ring i [#accel]_.291 - Acceleration292 293 * - `tx[i]_csum_partial_inner`294 - Packets transmitted with inner encapsulation with a `CHECKSUM_PARTIAL` on295 ring i [#accel]_.296 - Acceleration297 298 * - `tx[i]_csum_none`299 - Packets transmitted with no hardware checksum acceleration on ring i.300 - Informative301 302 * - `tx[i]_stopped` / `tx_queue_stopped` [#ring_global]_303 - Events where SQ was full on ring i. If this counter is increased, check304 the amount of buffers allocated for transmission.305 - Informative306 307 * - `tx[i]_wake` / `tx_queue_wake` [#ring_global]_308 - Events where SQ was full and has become not full on ring i.309 - Informative310 311 * - `tx[i]_dropped` / `tx_queue_dropped` [#ring_global]_312 - Packets transmitted that were dropped due to DMA mapping failure on313 ring i. If this counter is increased, check the amount of buffers314 allocated for transmission.315 - Error316 317 * - `tx[i]_nop`318 - The number of nop WQEs (empty WQEs) inserted to the SQ (related to319 ring i) due to the reach of the end of the cyclic buffer. When reaching320 near to the end of cyclic buffer the driver may add those empty WQEs to321 avoid handling a state the a WQE start in the end of the queue and ends322 in the beginning of the queue. This is a normal condition.323 - Informative324 325 * - `tx[i]_timestamps`326 - Transmitted packets that were hardware timestamped at the device's DMA327 layer.328 - Informative329 330 * - `tx[i]_added_vlan_packets`331 - The number of packets sent where vlan tag insertion was offloaded to the332 hardware.333 - Acceleration334 335 * - `rx[i]_removed_vlan_packets`336 - The number of packets received where vlan tag stripping was offloaded to337 the hardware.338 - Acceleration339 340 * - `rx[i]_wqe_err`341 - The number of wrong opcodes received on ring i.342 - Error343 344 * - `rx[i]_mpwqe_frag`345 - The number of WQEs that failed to allocate compound page and hence346 fragmented MPWQE’s (Multi Packet WQEs) were used on ring i. If this347 counter raise, it may suggest that there is no enough memory for large348 pages, the driver allocated fragmented pages. This is not abnormal349 condition.350 - Informative351 352 * - `rx[i]_mpwqe_filler_cqes`353 - The number of filler CQEs events that were issued on ring i.354 - Informative355 356 * - `rx[i]_mpwqe_filler_strides`357 - The number of strides consumed by filler CQEs on ring i.358 - Informative359 360 * - `tx[i]_mpwqe_blks`361 - The number of send blocks processed from Multi-Packet WQEs (mpwqe).362 - Informative363 364 * - `tx[i]_mpwqe_pkts`365 - The number of send packets processed from Multi-Packet WQEs (mpwqe).366 - Informative367 368 * - `rx[i]_cqe_compress_blks`369 - The number of receive blocks with CQE compression on ring i [#accel]_.370 - Acceleration371 372 * - `rx[i]_cqe_compress_pkts`373 - The number of receive packets with CQE compression on ring i [#accel]_.374 - Acceleration375 376 * - `rx[i]_arfs_add`377 - The number of aRFS flow rules added to the device for direct RQ steering378 on ring i [#accel]_.379 - Acceleration380 381 * - `rx[i]_arfs_request_in`382 - Number of flow rules that have been requested to move into ring i for383 direct RQ steering [#accel]_.384 - Acceleration385 386 * - `rx[i]_arfs_request_out`387 - Number of flow rules that have been requested to move out of ring i [#accel]_.388 - Acceleration389 390 * - `rx[i]_arfs_expired`391 - Number of flow rules that have been expired and removed [#accel]_.392 - Acceleration393 394 * - `rx[i]_arfs_err`395 - Number of flow rules that failed to be added to the flow table.396 - Error397 398 * - `rx[i]_recover`399 - The number of times the RQ was recovered.400 - Error401 402 * - `tx[i]_xmit_more`403 - The number of packets sent with `xmit_more` indication set on the skbuff404 (no doorbell).405 - Acceleration406 407 * - `ch[i]_poll`408 - The number of invocations of NAPI poll of channel i.409 - Informative410 411 * - `ch[i]_arm`412 - The number of times the NAPI poll function completed and armed the413 completion queues on channel i.414 - Informative415 416 * - `ch[i]_aff_change`417 - The number of times the NAPI poll function explicitly stopped execution418 on a CPU due to a change in affinity, on channel i.419 - Informative420 421 * - `ch[i]_events`422 - The number of hard interrupt events on the completion queues of channel i.423 - Informative424 425 * - `ch[i]_eq_rearm`426 - The number of times the EQ was recovered.427 - Error428 429 * - `ch[i]_force_irq`430 - Number of times NAPI is triggered by XSK wakeups by posting a NOP to431 ICOSQ.432 - Acceleration433 434 * - `rx[i]_congst_umr`435 - The number of times an outstanding UMR request is delayed due to436 congestion, on ring i.437 - Informative438 439 * - `rx_pp_alloc_fast`440 - Number of successful fast path allocations.441 - Informative442 443 * - `rx_pp_alloc_slow`444 - Number of slow path order-0 allocations.445 - Informative446 447 * - `rx_pp_alloc_slow_high_order`448 - Number of slow path high order allocations.449 - Informative450 451 * - `rx_pp_alloc_empty`452 - Counter is incremented when ptr ring is empty, so a slow path allocation453 was forced.454 - Informative455 456 * - `rx_pp_alloc_refill`457 - Counter is incremented when an allocation which triggered a refill of the458 cache.459 - Informative460 461 * - `rx_pp_alloc_waive`462 - Counter is incremented when pages obtained from the ptr ring that cannot463 be added to the cache due to a NUMA mismatch.464 - Informative465 466 * - `rx_pp_recycle_cached`467 - Counter is incremented when recycling placed page in the page pool cache.468 - Informative469 470 * - `rx_pp_recycle_cache_full`471 - Counter is incremented when page pool cache was full.472 - Informative473 474 * - `rx_pp_recycle_ring`475 - Counter is incremented when page placed into the ptr ring.476 - Informative477 478 * - `rx_pp_recycle_ring_full`479 - Counter is incremented when page released from page pool because the ptr480 ring was full.481 - Informative482 483 * - `rx_pp_recycle_released_ref`484 - Counter is incremented when page released (and not recycled) because485 refcnt > 1.486 - Informative487 488 * - `rx[i]_xsk_buff_alloc_err`489 - The number of times allocating an skb or XSK buffer failed in the XSK RQ490 context.491 - Error492 493 * - `rx[i]_xdp_tx_xmit`494 - The number of packets forwarded back to the port due to XDP program495 `XDP_TX` action (bouncing). these packets are not counted by other496 software counters. These packets are counted by physical port and vPort497 counters.498 - Informative499 500 * - `rx[i]_xdp_tx_mpwqe`501 - Number of multi-packet WQEs transmitted by the netdev and `XDP_TX`-ed by502 the netdev during the RQ context.503 - Acceleration504 505 * - `rx[i]_xdp_tx_inlnw`506 - Number of WQE data segments transmitted where the data could be inlined507 in the WQE and then `XDP_TX`-ed during the RQ context.508 - Acceleration509 510 * - `rx[i]_xdp_tx_nops`511 - Number of NOP WQEBBs (WQE building blocks) received posted to the XDP SQ.512 - Acceleration513 514 * - `rx[i]_xdp_tx_full`515 - The number of packets that should have been forwarded back to the port516 due to `XDP_TX` action but were dropped due to full tx queue. These packets517 are not counted by other software counters. These packets are counted by518 physical port and vPort counters. You may open more rx queues and spread519 traffic rx over all queues and/or increase rx ring size.520 - Error521 522 * - `rx[i]_xdp_tx_err`523 - The number of times an `XDP_TX` error such as frame too long and frame524 too short occurred on `XDP_TX` ring of RX ring.525 - Error526 527 * - `rx[i]_xdp_tx_cqes` / `rx_xdp_tx_cqe` [#ring_global]_528 - The number of completions received on the CQ of the `XDP_TX` ring.529 - Informative530 531 * - `rx[i]_xdp_drop`532 - The number of packets dropped due to XDP program `XDP_DROP` action. these533 packets are not counted by other software counters. These packets are534 counted by physical port and vPort counters.535 - Informative536 537 * - `rx[i]_xdp_redirect`538 - The number of times an XDP redirect action was triggered on ring i.539 - Acceleration540 541 * - `tx[i]_xdp_xmit`542 - The number of packets redirected to the interface(due to XDP redirect).543 These packets are not counted by other software counters. These packets544 are counted by physical port and vPort counters.545 - Informative546 547 * - `tx[i]_xdp_full`548 - The number of packets redirected to the interface(due to XDP redirect),549 but were dropped due to full tx queue. these packets are not counted by550 other software counters. you may enlarge tx queues.551 - Informative552 553 * - `tx[i]_xdp_mpwqe`554 - Number of multi-packet WQEs offloaded onto the NIC that were555 `XDP_REDIRECT`-ed from other netdevs.556 - Acceleration557 558 * - `tx[i]_xdp_inlnw`559 - Number of WQE data segments where the data could be inlined in the WQE560 where the data segments were `XDP_REDIRECT`-ed from other netdevs.561 - Acceleration562 563 * - `tx[i]_xdp_nops`564 - Number of NOP WQEBBs (WQE building blocks) posted to the SQ that were565 `XDP_REDIRECT`-ed from other netdevs.566 - Acceleration567 568 * - `tx[i]_xdp_err`569 - The number of packets redirected to the interface(due to XDP redirect)570 but were dropped due to error such as frame too long and frame too short.571 - Error572 573 * - `tx[i]_xdp_cqes`574 - The number of completions received for packets redirected to the575 interface(due to XDP redirect) on the CQ.576 - Informative577 578 * - `tx[i]_xsk_xmit`579 - The number of packets transmitted using XSK zerocopy functionality.580 - Acceleration581 582 * - `tx[i]_xsk_mpwqe`583 - Number of multi-packet WQEs offloaded onto the NIC that were584 `XDP_REDIRECT`-ed from other netdevs.585 - Acceleration586 587 * - `tx[i]_xsk_inlnw`588 - Number of WQE data segments where the data could be inlined in the WQE589 that are transmitted using XSK zerocopy.590 - Acceleration591 592 * - `tx[i]_xsk_full`593 - Number of times doorbell is rung in XSK zerocopy mode when SQ is full.594 - Error595 596 * - `tx[i]_xsk_err`597 - Number of errors that occurred in XSK zerocopy mode such as if the data598 size is larger than the MTU size.599 - Error600 601 * - `tx[i]_xsk_cqes`602 - Number of CQEs processed in XSK zerocopy mode.603 - Acceleration604 605 * - `tx_tls_ctx`606 - Number of TLS TX HW offload contexts added to device for encryption.607 - Acceleration608 609 * - `tx_tls_del`610 - Number of TLS TX HW offload contexts removed from device (connection611 closed).612 - Acceleration613 614 * - `tx_tls_pool_alloc`615 - Number of times a unit of work is successfully allocated in the TLS HW616 offload pool.617 - Acceleration618 619 * - `tx_tls_pool_free`620 - Number of times a unit of work is freed in the TLS HW offload pool.621 - Acceleration622 623 * - `rx_tls_ctx`624 - Number of TLS RX HW offload contexts added to device for decryption.625 - Acceleration626 627 * - `rx_tls_del`628 - Number of TLS RX HW offload contexts deleted from device (connection has629 finished).630 - Acceleration631 632 * - `rx[i]_tls_decrypted_packets`633 - Number of successfully decrypted RX packets which were part of a TLS634 stream.635 - Acceleration636 637 * - `rx[i]_tls_decrypted_bytes`638 - Number of TLS payload bytes in RX packets which were successfully639 decrypted.640 - Acceleration641 642 * - `rx[i]_tls_resync_req_pkt`643 - Number of received TLS packets with a resync request.644 - Acceleration645 646 * - `rx[i]_tls_resync_req_start`647 - Number of times the TLS async resync request was started.648 - Acceleration649 650 * - `rx[i]_tls_resync_req_end`651 - Number of times the TLS async resync request properly ended with652 providing the HW tracked tcp-seq.653 - Acceleration654 655 * - `rx[i]_tls_resync_req_skip`656 - Number of times the TLS async resync request procedure was started but657 not properly ended.658 - Error659 660 * - `rx[i]_tls_resync_res_ok`661 - Number of times the TLS resync response call to the driver was662 successfully handled.663 - Acceleration664 665 * - `rx[i]_tls_resync_res_retry`666 - Number of times the TLS resync response call to the driver was667 reattempted when ICOSQ is full.668 - Error669 670 * - `rx[i]_tls_resync_res_skip`671 - Number of times the TLS resync response call to the driver was terminated672 unsuccessfully.673 - Error674 675 * - `rx[i]_tls_err`676 - Number of times when CQE TLS offload was problematic.677 - Error678 679 * - `tx[i]_tls_encrypted_packets`680 - The number of send packets that are TLS encrypted by the kernel.681 - Acceleration682 683 * - `tx[i]_tls_encrypted_bytes`684 - The number of send bytes that are TLS encrypted by the kernel.685 - Acceleration686 687 * - `tx[i]_tls_ooo`688 - Number of times out of order TLS SQE fragments were handled on ring i.689 - Acceleration690 691 * - `tx[i]_tls_dump_packets`692 - Number of TLS decrypted packets copied over from NIC over DMA.693 - Acceleration694 695 * - `tx[i]_tls_dump_bytes`696 - Number of TLS decrypted bytes copied over from NIC over DMA.697 - Acceleration698 699 * - `tx[i]_tls_resync_bytes`700 - Number of TLS bytes requested to be resynchronized in order to be701 decrypted.702 - Acceleration703 704 * - `tx[i]_tls_skip_no_sync_data`705 - Number of TLS send data that can safely be skipped / do not need to be706 decrypted.707 - Acceleration708 709 * - `tx[i]_tls_drop_no_sync_data`710 - Number of TLS send data that were dropped due to retransmission of TLS711 data.712 - Acceleration713 714 * - `ptp_cq[i]_abort`715 - Number of times a CQE has to be skipped in precision time protocol due to716 a skew between the port timestamp and CQE timestamp being greater than717 128 seconds.718 - Error719 720 * - `ptp_cq[i]_abort_abs_diff_ns`721 - Accumulation of time differences between the port timestamp and CQE722 timestamp when the difference is greater than 128 seconds in precision723 time protocol.724 - Error725 726 * - `ptp_cq[i]_late_cqe`727 - Number of times a CQE has been delivered on the PTP timestamping CQ when728 the CQE was not expected since a certain amount of time had elapsed where729 the device typically ensures not posting the CQE.730 - Error731 732 * - `ptp_cq[i]_lost_cqe`733 - Number of times a CQE is expected to not be delivered on the PTP734 timestamping CQE by the device due to a time delta elapsing. If such a735 CQE is somehow delivered, `ptp_cq[i]_late_cqe` is incremented.736 - Error737 738.. [#ring_global] The corresponding ring and global counters do not share the739 same name (i.e. do not follow the common naming scheme).740 741vPort Counters742--------------743Counters on the NIC port that is connected to a eSwitch.744 745.. flat-table:: vPort Counter Table746 :widths: 2 3 1747 748 * - Counter749 - Description750 - Type751 752 * - `rx_vport_unicast_packets`753 - Unicast packets received, steered to a port including Raw Ethernet754 QP/DPDK traffic, excluding RDMA traffic.755 - Informative756 757 * - `rx_vport_unicast_bytes`758 - Unicast bytes received, steered to a port including Raw Ethernet QP/DPDK759 traffic, excluding RDMA traffic.760 - Informative761 762 * - `tx_vport_unicast_packets`763 - Unicast packets transmitted, steered from a port including Raw Ethernet764 QP/DPDK traffic, excluding RDMA traffic.765 - Informative766 767 * - `tx_vport_unicast_bytes`768 - Unicast bytes transmitted, steered from a port including Raw Ethernet769 QP/DPDK traffic, excluding RDMA traffic.770 - Informative771 772 * - `rx_vport_multicast_packets`773 - Multicast packets received, steered to a port including Raw Ethernet774 QP/DPDK traffic, excluding RDMA traffic.775 - Informative776 777 * - `rx_vport_multicast_bytes`778 - Multicast bytes received, steered to a port including Raw Ethernet779 QP/DPDK traffic, excluding RDMA traffic.780 - Informative781 782 * - `tx_vport_multicast_packets`783 - Multicast packets transmitted, steered from a port including Raw Ethernet784 QP/DPDK traffic, excluding RDMA traffic.785 - Informative786 787 * - `tx_vport_multicast_bytes`788 - Multicast bytes transmitted, steered from a port including Raw Ethernet789 QP/DPDK traffic, excluding RDMA traffic.790 - Informative791 792 * - `rx_vport_broadcast_packets`793 - Broadcast packets received, steered to a port including Raw Ethernet794 QP/DPDK traffic, excluding RDMA traffic.795 - Informative796 797 * - `rx_vport_broadcast_bytes`798 - Broadcast bytes received, steered to a port including Raw Ethernet799 QP/DPDK traffic, excluding RDMA traffic.800 - Informative801 802 * - `tx_vport_broadcast_packets`803 - Broadcast packets transmitted, steered from a port including Raw Ethernet804 QP/DPDK traffic, excluding RDMA traffic.805 - Informative806 807 * - `tx_vport_broadcast_bytes`808 - Broadcast bytes transmitted, steered from a port including Raw Ethernet809 QP/DPDK traffic, excluding RDMA traffic.810 - Informative811 812 * - `rx_vport_rdma_unicast_packets`813 - RDMA unicast packets received, steered to a port (counters counts814 RoCE/UD/RC traffic) [#accel]_.815 - Acceleration816 817 * - `rx_vport_rdma_unicast_bytes`818 - RDMA unicast bytes received, steered to a port (counters counts819 RoCE/UD/RC traffic) [#accel]_.820 - Acceleration821 822 * - `tx_vport_rdma_unicast_packets`823 - RDMA unicast packets transmitted, steered from a port (counters counts824 RoCE/UD/RC traffic) [#accel]_.825 - Acceleration826 827 * - `tx_vport_rdma_unicast_bytes`828 - RDMA unicast bytes transmitted, steered from a port (counters counts829 RoCE/UD/RC traffic) [#accel]_.830 - Acceleration831 832 * - `rx_vport_rdma_multicast_packets`833 - RDMA multicast packets received, steered to a port (counters counts834 RoCE/UD/RC traffic) [#accel]_.835 - Acceleration836 837 * - `rx_vport_rdma_multicast_bytes`838 - RDMA multicast bytes received, steered to a port (counters counts839 RoCE/UD/RC traffic) [#accel]_.840 - Acceleration841 842 * - `tx_vport_rdma_multicast_packets`843 - RDMA multicast packets transmitted, steered from a port (counters counts844 RoCE/UD/RC traffic) [#accel]_.845 - Acceleration846 847 * - `tx_vport_rdma_multicast_bytes`848 - RDMA multicast bytes transmitted, steered from a port (counters counts849 RoCE/UD/RC traffic) [#accel]_.850 - Acceleration851 852 * - `vport_loopback_packets`853 - Unicast, multicast and broadcast packets that were loop-back (received854 and transmitted), IB/Eth [#accel]_.855 - Acceleration856 857 * - `vport_loopback_bytes`858 - Unicast, multicast and broadcast bytes that were loop-back (received859 and transmitted), IB/Eth [#accel]_.860 - Acceleration861 862 * - `rx_steer_missed_packets`863 - Number of packets that was received by the NIC, however was discarded864 because it did not match any flow in the NIC flow table.865 - Error866 867 * - `rx_packets`868 - Representor only: packets received, that were handled by the hypervisor.869 - Informative870 871 * - `rx_bytes`872 - Representor only: bytes received, that were handled by the hypervisor.873 - Informative874 875 * - `tx_packets`876 - Representor only: packets transmitted, that were handled by the877 hypervisor.878 - Informative879 880 * - `tx_bytes`881 - Representor only: bytes transmitted, that were handled by the hypervisor.882 - Informative883 884 * - `dev_internal_queue_oob`885 - The number of dropped packets due to lack of receive WQEs for an internal886 device RQ.887 - Error888 889Physical Port Counters890----------------------891The physical port counters are the counters on the external port connecting the892adapter to the network. This measuring point holds information on standardized893counters like IEEE 802.3, RFC2863, RFC 2819, RFC 3635 and additional counters894like flow control, FEC and more.895 896.. flat-table:: Physical Port Counter Table897 :widths: 2 3 1898 899 * - Counter900 - Description901 - Type902 903 * - `rx_packets_phy`904 - The number of packets received on the physical port. This counter doesn’t905 include packets that were discarded due to FCS, frame size and similar906 errors.907 - Informative908 909 * - `tx_packets_phy`910 - The number of packets transmitted on the physical port.911 - Informative912 913 * - `rx_bytes_phy`914 - The number of bytes received on the physical port, including Ethernet915 header and FCS.916 - Informative917 918 * - `tx_bytes_phy`919 - The number of bytes transmitted on the physical port.920 - Informative921 922 * - `rx_multicast_phy`923 - The number of multicast packets received on the physical port.924 - Informative925 926 * - `tx_multicast_phy`927 - The number of multicast packets transmitted on the physical port.928 - Informative929 930 * - `rx_broadcast_phy`931 - The number of broadcast packets received on the physical port.932 - Informative933 934 * - `tx_broadcast_phy`935 - The number of broadcast packets transmitted on the physical port.936 - Informative937 938 * - `rx_crc_errors_phy`939 - The number of dropped received packets due to FCS (Frame Check Sequence)940 error on the physical port. If this counter is increased in high rate,941 check the link quality using `rx_symbol_error_phy` and942 `rx_corrected_bits_phy` counters below.943 - Error944 945 * - `rx_in_range_len_errors_phy`946 - The number of received packets dropped due to length/type errors on a947 physical port.948 - Error949 950 * - `rx_out_of_range_len_phy`951 - The number of received packets dropped due to length greater than allowed952 on a physical port. If this counter is increasing, it implies that the953 peer connected to the adapter has a larger MTU configured. Using same MTU954 configuration shall resolve this issue.955 - Error956 957 * - `rx_oversize_pkts_phy`958 - The number of dropped received packets due to length which exceed MTU959 size on a physical port. If this counter is increasing, it implies that960 the peer connected to the adapter has a larger MTU configured. Using same961 MTU configuration shall resolve this issue.962 - Error963 964 * - `rx_symbol_err_phy`965 - The number of received packets dropped due to physical coding errors966 (symbol errors) on a physical port.967 - Error968 969 * - `rx_mac_control_phy`970 - The number of MAC control packets received on the physical port.971 - Informative972 973 * - `tx_mac_control_phy`974 - The number of MAC control packets transmitted on the physical port.975 - Informative976 977 * - `rx_pause_ctrl_phy`978 - The number of link layer pause packets received on a physical port. If979 this counter is increasing, it implies that the network is congested and980 cannot absorb the traffic coming from to the adapter.981 - Informative982 983 * - `tx_pause_ctrl_phy`984 - The number of link layer pause packets transmitted on a physical port. If985 this counter is increasing, it implies that the NIC is congested and986 cannot absorb the traffic coming from the network.987 - Informative988 989 * - `rx_unsupported_op_phy`990 - The number of MAC control packets received with unsupported opcode on a991 physical port.992 - Error993 994 * - `rx_discards_phy`995 - The number of received packets dropped due to lack of buffers on a996 physical port. If this counter is increasing, it implies that the adapter997 is congested and cannot absorb the traffic coming from the network.998 - Error999 1000 * - `tx_discards_phy`1001 - The number of packets which were discarded on transmission, even no1002 errors were detected. the drop might occur due to link in down state,1003 head of line drop, pause from the network, etc.1004 - Error1005 1006 * - `tx_errors_phy`1007 - The number of transmitted packets dropped due to a length which exceed1008 MTU size on a physical port.1009 - Error1010 1011 * - `rx_undersize_pkts_phy`1012 - The number of received packets dropped due to length which is shorter1013 than 64 bytes on a physical port. If this counter is increasing, it1014 implies that the peer connected to the adapter has a non-standard MTU1015 configured or malformed packet had arrived.1016 - Error1017 1018 * - `rx_fragments_phy`1019 - The number of received packets dropped due to a length which is shorter1020 than 64 bytes and has FCS error on a physical port. If this counter is1021 increasing, it implies that the peer connected to the adapter has a1022 non-standard MTU configured.1023 - Error1024 1025 * - `rx_jabbers_phy`1026 - The number of received packets d due to a length which is longer than 641027 bytes and had FCS error on a physical port.1028 - Error1029 1030 * - `rx_64_bytes_phy`1031 - The number of packets received on the physical port with size of 64 bytes.1032 - Informative1033 1034 * - `rx_65_to_127_bytes_phy`1035 - The number of packets received on the physical port with size of 65 to1036 127 bytes.1037 - Informative1038 1039 * - `rx_128_to_255_bytes_phy`1040 - The number of packets received on the physical port with size of 128 to1041 255 bytes.1042 - Informative1043 1044 * - `rx_256_to_511_bytes_phy`1045 - The number of packets received on the physical port with size of 256 to1046 512 bytes.1047 - Informative1048 1049 * - `rx_512_to_1023_bytes_phy`1050 - The number of packets received on the physical port with size of 512 to1051 1023 bytes.1052 - Informative1053 1054 * - `rx_1024_to_1518_bytes_phy`1055 - The number of packets received on the physical port with size of 1024 to1056 1518 bytes.1057 - Informative1058 1059 * - `rx_1519_to_2047_bytes_phy`1060 - The number of packets received on the physical port with size of 1519 to1061 2047 bytes.1062 - Informative1063 1064 * - `rx_2048_to_4095_bytes_phy`1065 - The number of packets received on the physical port with size of 2048 to1066 4095 bytes.1067 - Informative1068 1069 * - `rx_4096_to_8191_bytes_phy`1070 - The number of packets received on the physical port with size of 4096 to1071 8191 bytes.1072 - Informative1073 1074 * - `rx_8192_to_10239_bytes_phy`1075 - The number of packets received on the physical port with size of 8192 to1076 10239 bytes.1077 - Informative1078 1079 * - `link_down_events_phy`1080 - The number of times where the link operative state changed to down. In1081 case this counter is increasing it may imply on port flapping. You may1082 need to replace the cable/transceiver.1083 - Error1084 1085 * - `rx_out_of_buffer`1086 - Number of times receive queue had no software buffers allocated for the1087 adapter's incoming traffic.1088 - Error1089 1090 * - `module_bus_stuck`1091 - The number of times that module's I\ :sup:`2`\C bus (data or clock)1092 short-wire was detected. You may need to replace the cable/transceiver.1093 - Error1094 1095 * - `module_high_temp`1096 - The number of times that the module temperature was too high. If this1097 issue persist, you may need to check the ambient temperature or replace1098 the cable/transceiver module.1099 - Error1100 1101 * - `module_bad_shorted`1102 - The number of times that the module cables were shorted. You may need to1103 replace the cable/transceiver module.1104 - Error1105 1106 * - `module_unplug`1107 - The number of times that module was ejected.1108 - Informative1109 1110 * - `rx_buffer_passed_thres_phy`1111 - The number of events where the port receive buffer was over 85% full.1112 - Informative1113 1114 * - `tx_pause_storm_warning_events`1115 - The number of times the device was sending pauses for a long period of1116 time.1117 - Informative1118 1119 * - `tx_pause_storm_error_events`1120 - The number of times the device was sending pauses for a long period of1121 time, reaching time out and disabling transmission of pause frames. on1122 the period where pause frames were disabled, drop could have been1123 occurred.1124 - Error1125 1126 * - `rx[i]_buff_alloc_err`1127 - Failed to allocate a buffer to received packet (or SKB) on ring i.1128 - Error1129 1130 * - `rx_bits_phy`1131 - This counter provides information on the total amount of traffic that1132 could have been received and can be used as a guideline to measure the1133 ratio of errored traffic in `rx_pcs_symbol_err_phy` and1134 `rx_corrected_bits_phy`.1135 - Informative1136 1137 * - `rx_pcs_symbol_err_phy`1138 - This counter counts the number of symbol errors that wasn’t corrected by1139 FEC correction algorithm or that FEC algorithm was not active on this1140 interface. If this counter is increasing, it implies that the link1141 between the NIC and the network is suffering from high BER, and that1142 traffic is lost. You may need to replace the cable/transceiver. The error1143 rate is the number of `rx_pcs_symbol_err_phy` divided by the number of1144 `rx_bits_phy` on a specific time frame.1145 - Error1146 1147 * - `rx_corrected_bits_phy`1148 - The number of corrected bits on this port according to active FEC1149 (RS/FC). If this counter is increasing, it implies that the link between1150 the NIC and the network is suffering from high BER. The corrected bit1151 rate is the number of `rx_corrected_bits_phy` divided by the number of1152 `rx_bits_phy` on a specific time frame.1153 - Error1154 1155 * - `rx_err_lane_[l]_phy`1156 - This counter counts the number of physical raw errors per lane l index.1157 The counter counts errors before FEC corrections. If this counter is1158 increasing, it implies that the link between the NIC and the network is1159 suffering from high BER, and that traffic might be lost. You may need to1160 replace the cable/transceiver. Please check in accordance with1161 `rx_corrected_bits_phy`.1162 - Error1163 1164 * - `rx_global_pause`1165 - The number of pause packets received on the physical port. If this1166 counter is increasing, it implies that the network is congested and1167 cannot absorb the traffic coming from the adapter. Note: This counter is1168 only enabled when global pause mode is enabled.1169 - Informative1170 1171 * - `rx_global_pause_duration`1172 - The duration of pause received (in microSec) on the physical port. The1173 counter represents the time the port did not send any traffic. If this1174 counter is increasing, it implies that the network is congested and1175 cannot absorb the traffic coming from the adapter. Note: This counter is1176 only enabled when global pause mode is enabled.1177 - Informative1178 1179 * - `tx_global_pause`1180 - The number of pause packets transmitted on a physical port. If this1181 counter is increasing, it implies that the adapter is congested and1182 cannot absorb the traffic coming from the network. Note: This counter is1183 only enabled when global pause mode is enabled.1184 - Informative1185 1186 * - `tx_global_pause_duration`1187 - The duration of pause transmitter (in microSec) on the physical port.1188 Note: This counter is only enabled when global pause mode is enabled.1189 - Informative1190 1191 * - `rx_global_pause_transition`1192 - The number of times a transition from Xoff to Xon on the physical port1193 has occurred. Note: This counter is only enabled when global pause mode1194 is enabled.1195 - Informative1196 1197 * - `rx_if_down_packets`1198 - The number of received packets that were dropped due to interface down.1199 - Informative1200 1201Priority Port Counters1202----------------------1203The following counters are physical port counters that are counted per L21204priority (0-7).1205 1206**Note:** `p` in the counter name represents the priority.1207 1208.. flat-table:: Priority Port Counter Table1209 :widths: 2 3 11210 1211 * - Counter1212 - Description1213 - Type1214 1215 * - `rx_prio[p]_bytes`1216 - The number of bytes received with priority p on the physical port.1217 - Informative1218 1219 * - `rx_prio[p]_packets`1220 - The number of packets received with priority p on the physical port.1221 - Informative1222 1223 * - `tx_prio[p]_bytes`1224 - The number of bytes transmitted on priority p on the physical port.1225 - Informative1226 1227 * - `tx_prio[p]_packets`1228 - The number of packets transmitted on priority p on the physical port.1229 - Informative1230 1231 * - `rx_prio[p]_pause`1232 - The number of pause packets received with priority p on a physical port.1233 If this counter is increasing, it implies that the network is congested1234 and cannot absorb the traffic coming from the adapter. Note: This counter1235 is available only if PFC was enabled on priority p.1236 - Informative1237 1238 * - `rx_prio[p]_pause_duration`1239 - The duration of pause received (in microSec) on priority p on the1240 physical port. The counter represents the time the port did not send any1241 traffic on this priority. If this counter is increasing, it implies that1242 the network is congested and cannot absorb the traffic coming from the1243 adapter. Note: This counter is available only if PFC was enabled on1244 priority p.1245 - Informative1246 1247 * - `rx_prio[p]_pause_transition`1248 - The number of times a transition from Xoff to Xon on priority p on the1249 physical port has occurred. Note: This counter is available only if PFC1250 was enabled on priority p.1251 - Informative1252 1253 * - `tx_prio[p]_pause`1254 - The number of pause packets transmitted on priority p on a physical port.1255 If this counter is increasing, it implies that the adapter is congested1256 and cannot absorb the traffic coming from the network. Note: This counter1257 is available only if PFC was enabled on priority p.1258 - Informative1259 1260 * - `tx_prio[p]_pause_duration`1261 - The duration of pause transmitter (in microSec) on priority p on the1262 physical port. Note: This counter is available only if PFC was enabled on1263 priority p.1264 - Informative1265 1266 * - `rx_prio[p]_buf_discard`1267 - The number of packets discarded by device due to lack of per host receive1268 buffers.1269 - Informative1270 1271 * - `rx_prio[p]_cong_discard`1272 - The number of packets discarded by device due to per host congestion.1273 - Informative1274 1275 * - `rx_prio[p]_marked`1276 - The number of packets ecn marked by device due to per host congestion.1277 - Informative1278 1279 * - `rx_prio[p]_discards`1280 - The number of packets discarded by device due to lack of receive buffers.1281 - Informative1282 1283Device Counters1284---------------1285.. flat-table:: Device Counter Table1286 :widths: 2 3 11287 1288 * - Counter1289 - Description1290 - Type1291 1292 * - `rx_pci_signal_integrity`1293 - Counts physical layer PCIe signal integrity errors, the number of1294 transitions to recovery due to Framing errors and CRC (dlp and tlp). If1295 this counter is raising, try moving the adapter card to a different slot1296 to rule out a bad PCI slot. Validate that you are running with the latest1297 firmware available and latest server BIOS version.1298 - Error1299 1300 * - `tx_pci_signal_integrity`1301 - Counts physical layer PCIe signal integrity errors, the number of1302 transition to recovery initiated by the other side (moving to recovery1303 due to getting TS/EIEOS). If this counter is raising, try moving the1304 adapter card to a different slot to rule out a bad PCI slot. Validate1305 that you are running with the latest firmware available and latest server1306 BIOS version.1307 - Error1308 1309 * - `outbound_pci_buffer_overflow`1310 - The number of packets dropped due to pci buffer overflow. If this counter1311 is raising in high rate, it might indicate that the receive traffic rate1312 for a host is larger than the PCIe bus and therefore a congestion occurs.1313 - Informative1314 1315 * - `outbound_pci_stalled_rd`1316 - The percentage (in the range 0...100) of time within the last second that1317 the NIC had outbound non-posted reads requests but could not perform the1318 operation due to insufficient posted credits.1319 - Informative1320 1321 * - `outbound_pci_stalled_wr`1322 - The percentage (in the range 0...100) of time within the last second that1323 the NIC had outbound posted writes requests but could not perform the1324 operation due to insufficient posted credits.1325 - Informative1326 1327 * - `outbound_pci_stalled_rd_events`1328 - The number of seconds where `outbound_pci_stalled_rd` was above 30%.1329 - Informative1330 1331 * - `outbound_pci_stalled_wr_events`1332 - The number of seconds where `outbound_pci_stalled_wr` was above 30%.1333 - Informative1334 1335 * - `dev_out_of_buffer`1336 - The number of times the device owned queue had not enough buffers1337 allocated.1338 - Error1339