Network Statistics¶
Overview¶
Network statistics are collected if CONFIG_NET_STATISTICS
is set.
Individual component statistics for IPv4 or IPv6 can be turned off
if those statistics are not needed. See various options in
subsys/net/ip/Kconfig.stats file for details.
By default, the system collects network statistics per network interface. This
can be controlled by CONFIG_NET_STATISTICS_PER_INTERFACE
option.
The CONFIG_NET_STATISTICS_USER_API
option can be set if the
application wants to collect statistics for further processing. The network
management interface API is used for that. See Network Management for
details.
The CONFIG_NET_STATISTICS_ETHERNET
option can be set to collect
generic Ethernet statistics. If the
CONFIG_NET_STATISTICS_ETHERNET_VENDOR
option is set, then
Ethernet device driver can collect Ethernet device specific statistics.
These statistics can then be transferred to application for processing.
If the CONFIG_NET_SHELL
option is set, then network shell can
show statistics information with net stats
command.
API Reference¶
-
group
net_stats
Network statistics library.
Typedefs
-
typedef uint32_t
net_stats_t
¶ Network statistics counter.
-
struct
net_stats_bytes
¶ - #include <net_stats.h>
Number of bytes sent and received.
Public Members
-
net_stats_t
sent
¶ Number of bytes sent
-
net_stats_t
received
¶ Number of bytes received
-
net_stats_t
-
struct
net_stats_pkts
¶ - #include <net_stats.h>
Number of network packets sent and received.
-
struct
net_stats_ip
¶ - #include <net_stats.h>
IP layer statistics.
Public Members
-
net_stats_t
recv
¶ Number of received packets at the IP layer.
-
net_stats_t
sent
¶ Number of sent packets at the IP layer.
-
net_stats_t
forwarded
¶ Number of forwarded packets at the IP layer.
-
net_stats_t
drop
¶ Number of dropped packets at the IP layer.
-
net_stats_t
-
struct
net_stats_ip_errors
¶ - #include <net_stats.h>
IP layer error statistics.
Public Members
-
net_stats_t
vhlerr
¶ Number of packets dropped due to wrong IP version or header length.
-
net_stats_t
hblenerr
¶ Number of packets dropped due to wrong IP length, high byte.
-
net_stats_t
lblenerr
¶ Number of packets dropped due to wrong IP length, low byte.
-
net_stats_t
fragerr
¶ Number of packets dropped because they were IP fragments.
-
net_stats_t
chkerr
¶ Number of packets dropped due to IP checksum errors.
-
net_stats_t
protoerr
¶ Number of packets dropped because they were neither ICMP, UDP nor TCP.
-
net_stats_t
-
struct
net_stats_icmp
¶ - #include <net_stats.h>
ICMP statistics.
Public Members
-
net_stats_t
recv
¶ Number of received ICMP packets.
-
net_stats_t
sent
¶ Number of sent ICMP packets.
-
net_stats_t
drop
¶ Number of dropped ICMP packets.
-
net_stats_t
typeerr
¶ Number of ICMP packets with a wrong type.
-
net_stats_t
chkerr
¶ Number of ICMP packets with a bad checksum.
-
net_stats_t
-
struct
net_stats_tcp
¶ - #include <net_stats.h>
TCP statistics.
Public Members
-
struct net_stats_bytes
bytes
¶ Amount of received and sent TCP application data.
-
net_stats_t
resent
¶ Amount of retransmitted data.
-
net_stats_t
drop
¶ Number of dropped packets at the TCP layer.
-
net_stats_t
recv
¶ Number of received TCP segments.
-
net_stats_t
sent
¶ Number of sent TCP segments.
-
net_stats_t
seg_drop
¶ Number of dropped TCP segments.
-
net_stats_t
chkerr
¶ Number of TCP segments with a bad checksum.
-
net_stats_t
ackerr
¶ Number of received TCP segments with a bad ACK number.
-
net_stats_t
rsterr
¶ Number of received bad TCP RST (reset) segments.
-
net_stats_t
rst
¶ Number of received TCP RST (reset) segments.
-
net_stats_t
rexmit
¶ Number of retransmitted TCP segments.
-
net_stats_t
conndrop
¶ Number of dropped connection attempts because too few connections were available.
-
net_stats_t
connrst
¶ Number of connection attempts for closed ports, triggering a RST.
-
struct net_stats_bytes
-
struct
net_stats_udp
¶ - #include <net_stats.h>
UDP statistics.
Public Members
-
net_stats_t
drop
¶ Number of dropped UDP segments.
-
net_stats_t
recv
¶ Number of received UDP segments.
-
net_stats_t
sent
¶ Number of sent UDP segments.
-
net_stats_t
chkerr
¶ Number of UDP segments with a bad checksum.
-
net_stats_t
-
struct
net_stats_ipv6_nd
¶ - #include <net_stats.h>
IPv6 neighbor discovery statistics.
-
struct
net_stats_ipv6_mld
¶ - #include <net_stats.h>
IPv6 multicast listener daemon statistics.
Public Members
-
net_stats_t
recv
¶ Number of received IPv6 MLD queries
-
net_stats_t
sent
¶ Number of sent IPv6 MLD reports
-
net_stats_t
drop
¶ Number of dropped IPv6 MLD packets
-
net_stats_t
-
struct
net_stats_ipv4_igmp
¶ - #include <net_stats.h>
IPv4 IGMP daemon statistics.
Public Members
-
net_stats_t
recv
¶ Number of received IPv4 IGMP queries
-
net_stats_t
sent
¶ Number of sent IPv4 IGMP reports
-
net_stats_t
drop
¶ Number of dropped IPv4 IGMP packets
-
net_stats_t
-
struct
net_stats_tx_time
¶ - #include <net_stats.h>
Network packet transfer times for calculating average TX time.
-
struct
net_stats_rx_time
¶ - #include <net_stats.h>
Network packet receive times for calculating average RX time.
-
struct
net_stats_tc
¶ - #include <net_stats.h>
Traffic class statistics.
-
struct
net_stats_pm
¶ - #include <net_stats.h>
Power management statistics.
-
struct
net_stats
¶ - #include <net_stats.h>
All network statistics in one struct.
Public Members
-
net_stats_t
processing_error
¶ Count of malformed packets or packets we do not have handler for
-
struct net_stats_bytes
bytes
¶ This calculates amount of data transferred through all the network interfaces.
-
struct net_stats_ip_errors
ip_errors
¶ IP layer errors
-
net_stats_t
-
struct
net_stats_eth_errors
¶ - #include <net_stats.h>
Ethernet error statistics.
-
struct
net_stats_eth_flow
¶ - #include <net_stats.h>
Ethernet flow control statistics.
-
struct
net_stats_eth_csum
¶ - #include <net_stats.h>
Ethernet checksum statistics.
-
struct
net_stats_eth_hw_timestamp
¶ - #include <net_stats.h>
Ethernet hardware timestamp statistics.
-
struct
net_stats_eth
¶ - #include <net_stats.h>
All Ethernet specific statistics.
-
struct
net_stats_ppp
¶ - #include <net_stats.h>
All PPP specific statistics.
Public Members
-
net_stats_t
drop
¶ Number of received and dropped PPP frames.
-
net_stats_t
chkerr
¶ Number of received PPP frames with a bad checksum.
-
net_stats_t
-
typedef uint32_t