Netflow

Netflow-Architektur

Netflow ist eine Technik, bei der ein Gerät, in der Regel ein Router oder Layer-3-Switch, Informationen über den IP-Datenstrom innerhalb des Geräts per UDP exportiert. Diese UDP-Datagramme werden von einem Netflow-Kollektor empfangen, gespeichert und verarbeitet. Die anfallenden Daten werden zur Verkehrsanalyse, zur Kapazitätsplanung oder zur QoS-Analyse verwendet.

Technik

Netflow war ursprünglich eine Cisco-Technik, wird jetzt jedoch von vielen Herstellern unterstützt. Neben Netflow gibt es auch noch jFlow (Juniper) und Netstream (Huawei). Beide sind technisch identisch mit Netflow. Es existieren verschiedene Versionen von Netflow. Netflow Version 9 ist als offener Standard in der RFC 3954[1] beschrieben. Netflow Version 5 ist die in der Praxis am häufigsten verwendete Version. sFlow (RFC 3176[2]) verwendet statistisches Sampling und ist inkompatibel zu Netflow. Es existieren jedoch Konverter. Der IPFIX Standard (RFC 3917[3]) wird herstellerunabhängig entwickelt und stellt eine Erweiterung von Netflow Version 9 dar.

Ein Flow enthält typischerweise folgende Informationen:

Je nach Netflow-Version unterscheidet sich der Inhalt der Exportdatagramme leicht. Detaillierte Informationen können auf der Cisco-Seite gefunden werden.

Anwendung

Netflow ist, wie SNMP, ein passives Messverfahren, d. h. man beobachtet den Verkehr, ohne diesen zu beeinflussen. Wie alle passiven Messverfahren erzeugt auch Netflow Volumen-Informationen, typischerweise kBit/s.

Um die Netflow-Daten analysieren zu können, ist eine Kollektor-Software notwendig. Es werden in der Regel zwei Arten von Analysen durchgeführt:

Bei Top-N-Analysen werden in einem frei definierbaren Zeitraum, z. B. 24 Stunden, diejenigen Elemente gesucht, die den meisten Verkehr erzeugen. Kriterien können Sender-IP-Adressen (Top Talker), TCP-Ports (Top Applications) oder andere Einträge aus dem Netflow-Datagramm sein. In einigen Systemen wird diese Top-N-Analyse über SQL-Queries mittels "Group-By" zur Laufzeit erzeugt, oder es werden spezielle Analyse-Datenbestände bereitgehalten. Diese speziellen Datenbestände werden durch den Kollektor zur Laufzeit aktuell gehalten. Hierbei hat man den Vorteil, dass das Reporting-Frontend schnell auf fertige Datenbestände zugreifen kann, auf der anderen Seite wächst der Bedarf an Storage.

Zeitanalysen zeigen das Volumen von Verkehrskomponenten über einer Zeitachse.

Da die Netflow-Datagramme per UDP übertragen werden, muss der Kollektor schnell genug sein, die Daten zu empfangen, zu verarbeiten und zu speichern. Verlorene Datagramme können nicht wiederhergestellt werden. Besonders problematisch ist deshalb die Übertragung von Netflow-Daten über WAN-Strecken. Verteilte Systeme haben sich hier besonders gut bewährt. Einige Systeme sind in der Lage, Auswertungen in einem zentralen Data-Mart vorzuhalten. Das hat den Vorteil, dass Daten nicht wiederholt und mehrfach über WAN Strecken übertragen werden müssen.

Technisch verwenden die Hersteller meist eine erste Datenbank als "Raw-Data" in der die Netflow-Datagramme in Rohform gesichert werden. Erst ein nachfolgender Prozess normalisiert die Daten und speichert das Ergebnis in einer Datenbank, - meist einer relationalen Datenbank, auf die dann das Reporting-Frontend zugreift. Da die Daten hierbei einmal als Rohdaten und dann ein zweites Mal in einer normalisierten Form gespeichert werden, sind die Transferleistungen der Storagesysteme eine der wichtigsten und limitierenden Kenngrößen. Meist wird das Storage lokal als Hardware-Raid ausgebaut. Eine Implementierung über ein Software-Raid kann zu Leistungseinbußen führen.

Im Umfeld von Internetdienstanbietern ist die Mandantenfähigkeit eine wichtige Eigenschaft von Netflow-Systemen. Diese stellt sicher, dass Teilnehmer nur die für sie jeweils relevanten Daten einsehen können. Kunden haben hierbei dann nur Zugriff auf die Flows der eigenen Interfaces und nicht auf alle Interfaces des Flow-Senders.

Freie Software

  • flowd NetFlow collector
  • Nagios
  • NetWork analysis software
  • nfdump, Kollector und Analyse Werkzeuge und nfsen, Webfrontend zu nfdump
  • PMACCT Netflow, sFlow Collector. Verwendet libpcap
  • Pandora FMS

Bei beiden besteht die Möglichkeit zum Kauf eines Lizenzschlüssels.

Kommerzielle Software

Produkteigenschaften
ProduktNetflowcFlowjFlowNetstreamsFlowIPFIXVerteiltMandantenfähigZentraler Data-MartCluster oder Hierarchyweitere-FlowVersionenMax-Flow/MinuteAlarme based on Flows
AdvaICT NetHound (online service)janeinneinneinneinneinneinjaja
Caligare Flow Inspectorjajajajaneinneinjajaja
Ciscojajajajaneinneinneinneinnein
IBM Aurorajajajajajajajaneinnein
Infosim StableNetjaneinneinneinneinneinneinneinnein
INVEA-TECH FlowMonjajajajajajajajaja
IsarFlowjajajajajajajajajaHierarchie
IS-IT-ON NetFlow Analyzerjaneinneinneinneinneinjajaja
ManageEngine NetFlow Analyzerjajajajajajajajaja
Paessler PRTGjaneinjaneinjajajajaja
Progress WhatsUp Gold (ehem. IPSwitch)jajajajajajajajaja
Riverbed Network Performancejajajajajajajaja bezogen auf DashboardsjaClusterfähigNAM, NBAR, NBAR2, Cisco MediaNet, Cisco ASA NSEL, Citrix AppFlow, Packeteer FDR, Palo Alto Networks, and SteelFlow from SteelHead appliances10 M deduplizierte Flows /min (Clusterfähig)ja
SolarWinds Orion NetFlow Traffic Analyzerjaneinjaneinjajajajaja
SevOne Dedicated Netflow Collector (DNC) (auch Bestandteil von PAS)jajajajajajajajajaClusterSFLow, Cisco-NAM, -NBAR, -Medianet, dFlow, jFlow, NSEL, jedes Flowfeld kann als Key oder Metric registriert werden12M Flows/min auf DNC1000HFC, Clusterfähigja
IPHost Monitor Networks Monitoring SoftwarejajajaneinjaneinjajajaHierarchieCisco-NAM/NBAR
THB-NetflowjaneinneinneinneinjajajajaClusterCisco-AVC, -NBAR, Medianet, Barracuda, jedes Flowfeld kann dynamisch konfiguriert werdenvia Grafana

Einzelnachweise

  1. RFC 3954 – Cisco Systems NetFlow Services Export Version 9. Oktober 2004 (englisch).
  2. RFC3176 – InMon Corporation's sFlow: A Method for Monitoring Traffic in Switched and Routed Networks. September 2001 (englisch).
  3. RFC3917 – Requirements for IP Flow Information Export (IPFIX). Oktober 2004 (englisch).