Skip to main content

Network Subsystem

Network Subsystem

Plugin: windows.plugin Module: PerflibNetwork

Maintained by Netdata

Overview​

Monitor Windows network interface traffic, packets, speed, errors, drops, and offload activity in charts. A live interface table also shows current operational state and the adapter's friendly name when Windows can match it to a discovered interface.

It queries the 'Network Interface' Perflib object and uses its 'Network Adapter' data when present, querying 'Network Adapter' separately when absent. The live interface table queries the Windows adapter API when opened and combines that result with the latest collected chart values.

This collector is only supported on the following platforms:

  • windows

This collector only supports collecting metrics from a single instance of this integration.

Default Behavior​

Auto-Detection​

The collector automatically detects all of the metrics, no further configuration is required.

Limits​

Operational state and friendly name are unavailable in the live table when a Perflib instance cannot be matched uniquely to a Windows adapter. A missing value is shown as unavailable, not as a down state. Per-interface charts start after the first received or sent byte; the live table can show idle interfaces before their charts start. Existing charts continue through later zero-byte counter values. When Windows cannot read an interface instance name, the aggregate bandwidth chart and removal of vanished interfaces pause for up to 60 collection cycles; after that they continue without the unnamed instance.

Performance Impact​

A separate 'Network Adapter' Perflib query runs only when the 'Network Interface' result lacks that object. The live interface table queries the Windows adapter API on demand. It does not add an adapter API call to each chart collection cycle.

Setup​

Prerequisites​

No action required.

Configuration​

Options​

OptionDescriptionDefaultRequired
update everyData collection frequency.1no
disable by default interfaces matchingSpace-separated, case-sensitive patterns matched against Perflib interface instance names. Use * to span spaces in a name (for example, Teredo*). Matching interfaces are excluded from per-interface charts and the live interface table. The physical network aggregate still includes them.no

via File​

The configuration file name for this integration is netdata.conf. Configuration for this specific integration is located in the [plugin:windows:PerflibNetwork] section within that file.

The file format is a modified INI syntax. The general structure is:

[section1]
option1 = some value
option2 = some other value

[section2]
option3 = some third value

You can edit the configuration file using the edit-config script from the Netdata config directory.

cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config netdata.conf
Examples​

There are no configuration examples.

Alerts​

The following alerts are available:

Alert nameOn metricDescription
interface_speed net.netNetwork interface ${label:device} current speed
1m_received_traffic_overflow net.netAverage inbound utilization for the network interface ${label:device} over the last minute
1m_sent_traffic_overflow net.netAverage outbound utilization for the network interface ${label:device} over the last minute
net_interface_inbound_packets net.packetsReceived packets for the network interface ${label:device} in the last 10 minutes
net_interface_outbound_packets net.packetsSent packets for the network interface ${label:device} in the last 10 minutes
inbound_packets_dropped_ratio net.dropsRatio of inbound dropped packets for the network interface ${label:device} over the last 10 minutes
outbound_packets_dropped_ratio net.dropsRatio of outbound dropped packets for the network interface ${label:device} over the last 10 minutes
1m_received_packets_rate net.packetsAverage number of packets received by the network interface ${label:device} over the last minute
10s_received_packets_storm net.packetsRatio of average number of received packets for the network interface ${label:device} over the last 10 seconds, compared to the rate over the last minute
network_interface_output_queue_length net.queue_lengthThe Output Queue Length on interface ${label:device} should be zero, otherwise there are delays and bottlenecks.

Metrics​

Metrics grouped by scope.

The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.

Per System​

These metrics refer to the entire System.

This scope has no labels.

Metrics:

MetricDescriptionDimensionsUnit
system.netPhysical Network Interfaces Aggregated Bandwidthreceived, sentkilobits/s
ip.tcppacketsTCP Packetsreceived, sentpackets/s
ipv4.packetsIPv4 Packetsreceived, sent, forwarded, deliveredpackets/s
ipv4.tcppacketsIPv4 TCP Packetsreceived, sentpackets/s
ipv4.udppacketsIPv4 UDP Packetsreceived, sentpackets/s
ipv4.icmpIPv4 ICMP Packetsreceived, sentpackets/s
ipv4.errorsIPv4 ErrorsInDiscards, OutDiscards, OutNoRoutes, InAddrErrors, InHdrErrors, InUnknownProtospackets/s
ipv4.icmpmsgIPv4 ICMP PacketsInEchoReps, OutEchoReps, InDestUnreachs, OutDestUnreachs, InRedirects, OutRedirects, InEchos, OutEchos, InRouterAdvert, OutRouterAdvert, InRouterSelect, OutRouterSelect, InTimeExcds, OutTimeExcds, InParmProbs, OutParmProbs, InTimestamps, OutTimestamps, InTimestampReps, OutTimestampRepspackets/s
ipv6.packetsIPv6 Packetsreceived, sent, forwarded, deliveredpackets/s
ipv6.tcppacketsIPv6 TCP Packetsreceived, sentpackets/s
ipv6.udppacketsIPv6 UDP Packetsreceived, sentpackets/s
ipv6.icmpIPv6 ICMP Packetsreceived, sentpackets/s
ipv6.errorsIPv6 ErrorsInDiscards, OutDiscards, OutNoRoutes, InAddrErrors, InHdrErrors, InUnknownProtospackets/s
ipv6.icmpmsgIPv6 ICMP PacketsInEchoReps, OutEchoReps, InDestUnreachs, OutDestUnreachs, InRedirects, OutRedirects, InEchos, OutEchos, InRouterAdvert, OutRouterAdvert, InRouterSelect, OutRouterSelect, InTimeExcds, OutTimeExcds, InParmProbs, OutParmProbs, InTimestamps, OutTimestamps, InTimestampReps, OutTimestampRepspackets/s

Per network device​

These metrics refer to Network Interfaces.

Labels:

LabelDescription
interface_typeClassification of the network interface (real or virtual).
devicePerflib network interface instance name.

Metrics:

MetricDescriptionDimensionsUnit
net.netBandwidthreceived, sentkilobits/s
net.packetsPacketsreceived, sentpackets/s
net.speedInterface Speedspeedkilobits/s
net.errorsInterface Errorsinbound, outbounderrors/s
net.dropsInterface Dropsinbound, outbounddrops/s
net.unknown_protocol_packetsPackets Received with Unknown Protocolinboundpackets/s
net.queue_lengthInterface Output Queue Lengthlengthpackets
net.rsc_connectionsActive TCP Connections Offloaded by RSCconnectionsconnections
net.rsc_packetsTCP RSC Coalesced Packetspacketspackets/s
net.rsc_exceptionsTCP RSC Exceptionsexceptionsexceptions/s
net.rsc_average_packet_sizeTCP RSC Average Packet Sizeaveragebytes
net.chimney_connectionsActive TCP Connections Offloaded with Chimneyconnectionsconnections

Live Data​

View current Windows network interface performance and operational state.

Network Interfaces​

Shows discovered physical and virtual interfaces with current traffic, packet, drop, speed, and operational state values. Friendly names and state are shown only when the Perflib instance name uniquely matches a Windows adapter description or, if none matches, an adapter friendly name. Physical carrier state, duplex, and multicast packets are unavailable.

AspectDescription
NamePerflibnetwork:network-interfaces
Require Cloudno
PerformanceQueries the Windows adapter API when the table is opened.
SecurityRequires signed-in, same-space access because adapter friendly names can contain user-entered text. This is intentionally stricter than the Linux network-interfaces Function, which allows anonymous access; anonymous dashboard users receive HTTP 412 on Windows.
AvailabilityAvailable after the Windows network collector successfully reads Perflib data.

Prerequisites​

No additional configuration is required.

Parameters​

This function has no parameters.

Returns​

One row per discovered, non-excluded interface; unavailable values are empty.

ColumnTypeUnitVisibilityDescription
InterfacestringPerflib network interface name.
TypestringPhysical or virtual interface.
UsedBystringInterface owner.
PhStatestringhiddenPhysical carrier state, currently unavailable.
OpStatestringCurrent Windows adapter operational state, when matched.
DuplexstringhiddenDuplex mode, currently unavailable.
SpeednumberMbit/sLink speed.
MTUnumberOctetsMaximum transmission unit.
InnumberMbit/sTraffic received.
OutnumberMbit/sTraffic sent.
TotalnumberMbit/shiddenTraffic received and sent.
PktsInnumberKppsReceived packets.
PktsOutnumberKppsSent packets.
McastInnumberKppshiddenMulticast received packets, currently unavailable.
DropsInnumberDropsDropped inbound packets.
DropsOutnumberDropsDropped outbound packets.
FriendlyNamestringWindows adapter friendly name, when matched.

Do you have any feedback for this page? If so, you can open a new issue on our netdata/learn repository.