sFlow (von InMon, RFC 3176) ist ein leichtgewichtiges Verfahren für Traffic-Monitoring auf Basis von Paket-Stichproben. Anders als NetFlow führt sFlow keinen Flow-Cache, sondern nimmt statistisch verteilte Samples direkt im Datenpfad und ergänzt sie um periodische Zählerwerte der Interfaces.
Sampling statt Flow-Cache
Ein sFlow-Agent, meist fest im Switching-ASIC eines Switch implementiert, entscheidet bei jedem Paket zufällig, ob es als Sample exportiert wird — typisch eines von 4096 oder 8192 Paketen. Dazu sammelt er regelmäßig Interface-Zähler wie Pakete, Bytes und Fehler. Die Daten gehen als sFlow-Datagramme über UDP auf Port 6343 an den Collector.
Vorteile und Grenzen
Weil die Sampling-Logik in der Hardware sitzt, skaliert sFlow auch auf 100-Gigabit- und 400-Gigabit-Leitungen mit minimalem Overhead. Der Preis: Die Daten sind statistische Schätzungen — ideal für Echtzeit-Monitoring, Top-N-Analysen und DDoS-Erkennung, aber weniger geeignet für lückenlose Forensik. NetFlow liefert dort die vollständigeren Records.
Praxis
sFlow findet sich vor allem in High-End-Switches und Routern, die den Datenverkehr ohne nennenswerte Last beobachten sollen. Collectoren und Analysewerkzeuge verarbeiten die Datagramme und stellen dar, welche Geräte wie viel Verkehr erzeugen.
Verwandte Grundlagen: Netzwerkprotokoll, Netzwerkpaket, Router, UDP, Port, Bandbreite, NetFlow, SNMP, Monitoring.