In this section
This section describes the features of the statistics counters.
Basically the statistics block counts the frames received or transmitted by the SmartNIC.
These categories of counter sets are available:
Port counter sets
These counter sets contain the raw interface counters. They include a full RMON1 (RFC2819) EtherStats counter set extended with counters for jumbo frames and others, as well as checksum counters, packet decoding counters, extended drop counters and IP fragment counters. Port counter sets are available on a per-port basis for both captured and discarded frames. The port counter sets are described in Port Counters.Note: The discard size can be configured using the DiscardSize parameter in the ntservice.ini file (see DN-0449).
Color counter sets
These counter sets consist of 2 counters, counting frames and bytes per color. The color counter sets are described in Color Counters.
Stream ID counter sets
These counter sets consist of 6 counters, counting forwarded, flushed and dropped frames and bytes per stream ID. The stream ID counter sets are described in Stream ID Counters.
Handling of counters
The counting is performed by the SmartNIC. The driver library administers the counting and ensures the counters are transparently and non-destructively transferred to host memory and made available to the host application.
Statistical counters are available through the statistics streams (see DN-0449).
RX frames are counted just before they are written to the DDR-SDRAM or discarded. This enables the statistics block to utilize information from the frame decoder block, the filter block and the multi-CPU distribution block.
TX frames are counted just before they are delivered to the MAC. The frames are counted even if they are not sent due to an unavailable link.
The SmartNIC updates the statistics counters regularly. By default new values are available to the user every 500 ms. This interval can be changed using the StatInterval parameter in the ntservice.ini file (see DN-0449).
Set of consistent counters
The counter sets are updated consistently, so that all counters for a port or color include all frames seen for that port or color for a certain amount of time. When the FPGA has finished counting for a certain time interval, a switch between counter sets is made, and the completed counter set is DMAed to the host. The switch between counter sets is an atomic operation.
Time-stamping of statistical data
The generated statistical data is time-stamped just before the switch between counter sets.
The counter values are provided frequently to the driver, and extended in software to 64-bit counters when presented to the application.
Counting bytes is done as follows.
- Port statistics
- RX counters: Based on the length of the frames received from the ingress port.
- TX counters: Based on the length of the frames transmitted to the egress port.
- Stream statistics: Based on the length of the frames received from ingress ports
(which are delivered to a specific stream). Note: If the frames delivered to the host are changed due to slicing, header stripping or VLAN tagging, the changes in the length of the frames are not applied to stream statistics.
- Color statistics: Based on the length of the frames received from the port and the length matched by a filter with the given color.