Each packet sample carries information on the sampling probability and a counter of the number of packets that were eligible for sampling. The sampling metadata included with each packet sample is what allows the sFlow analyzer to properly aggregate and scale flow data:
Independently, the sFlow agent also periodically sends standard MIB2 interface counters (e.g. ifInOctets, ifOutOctets, etc.) for each interface, eliminating the need to use SNMP to poll for the information.
The counters and samples provide complementary information. For example, metadata like ifSpeed in the counters can be used to scale flow rates to calculate utilizations. Rare events, like packet errors and discards, are accurately captured in the hardware counters (ifInDiscards, ifInErrors, ifOutDiscards, ifOutErrors), and the packet samples can be used to determine the traffic flowing through the port.