IT-Administrator

IT-Administrator

Praxiswissen für Admins.

Verkehrsmonitoring in geswitchten Netzumgebungen (1)

Der sFlow-Collector dient als zentrale Datensammelstelle und nimmt die sFlow Datagrams entgegen.

Je komplexer Netzwerke werden, desto wichtiger wird ein detaillierter Einblick in die übermittelten Daten – auch aus Sicherheitsgründen. Ein Verkehrsmonitoring in modernen Highspeed-Netzwerken auf Basis von Switchen und Routern ist mit den gängigen Technologien nicht mehr zu leisten. Die Konsequenz: Viele Netzverbindungen werden als Black Box betrieben. Daher ist für ein kostengünstiges Management aller Netzressourcen eine Monitoring-Technologie notwendig.

Im Netzwerkmarkt wurden in den vergangenen Jahren einige Monitoring-Mechanismen entwickelt: Das Simple Network Management Protokoll (SNMP) ist dabei der Veteran der Messmethoden. In SNMP-Systemen werden die zu überwachenden Daten von den Agenten ständig über das Netz übermittelt. Dies hat in der Regel eine hohe Netzbelastung zur Folge. Der Remote-Monitoring-Standard RMON legt hingegen die Grundlage für einen Verkehrsmonitoring in Shared-Media-Netzen fest.

Ein RMON-Agent überwacht und dekodiert den gesamten Datenverkehr eines angeschlossenen Netzwerks, bereitet diese Daten auf und leitet diese an die Netzmanagementstation weiter. Beim Switched-Monitoring-Standard SMON handelt es sich um eine Adaption von RMON auf die Funktionalität von Switchen. Ein SMON-Agent überwacht bestimmte vom Netzmanager festgelegte Datenströme bei der Übermittlung über einen Switch.

Mit Stichproben arbeiten dank sFlow

Im RFC 3176 ("sFlow: A Method for Monitoring Traffic in Switched and Routed Networks") wurde 2001 eine neue Technologie zum Monitoring des Datenverkehrs in modernen Netzwerken festgelegt. Das besondere Merkmal der sFlow-Technik besteht in den Sampling-Mechanismen (Stichproben) zur Reduzierung der Messdaten. Ein sFlow-Agent nutzt hierfür statistisches Paket-Sampling für die von den Switchen übermittelten Datenflüsse sowie zeitbezogenes Sampling der Interface-Statistiken.

Als Datenfluss werden alle Pakete bezeichnet, die ein Router- oder Switch-Interface empfängt beziehungsweise übermittelt. Erreicht ein Paket ein Interface, entscheidet ein Filter, ob das betreffende Paket weitergeleitet oder verworfen wird. Für die Weiterleitung des Pakets ermittelt die Switching/Routing-Funktion dann das Destinations-Interface.

Zu diesem Zeitpunkt wird auch festgelegt, ob das betreffende Paket als Stichprobe dienen soll. Der Entscheidungsmechanismus beruht auf einen Zähler, der bei jedem empfangenen Datenpaket zurückzählt. Erreicht der Zähler den Wert 0, wird das betreffende Paket als Stichprobe herangezogen. Außerdem wird jedes empfangene Paket in einem Total_Packets-Zähler verzeichnet. Dieser Zähler stellt somit die maximale Anzahl der möglichen Paket-Samples dar.

Die Stichprobe erfordert das Kopieren der Paket-Header beziehungsweise das Herauslösen der spezifischen Paketinformationen. Jede Stichprobe erhöht den Total_Samples-Zähler. Die Stichproben werden anschließend an den sFlow-Agenten zur weiteren Verarbeitung übermittelt.

Das Sample enthält somit die eigentliche Paketinformation und die Werte der Total_Packets- und Total_Samples-Zähler. Bei einer Stichprobe legt der Paketzähler fest, nach welcher Anzahl empfangener Pakete eine weitere Stichprobe aus dem Datenstrom entnommen wird. Die Sampling-Rate errechnet sich über das Verhältnis Total_Packets zu Total_Samples.

Die sFlow MIB ermöglicht die Integration von Sampling-Funktion in unterschiedlichen physischen oder logischen Elementen eines Switches/Routers (beispielsweise Interfaces, Backplanes oder VLANs). Jede Sampling-Engine sammelt die spezifischen Informationen (zum Beispiel Total_Packets, Total_Samples, Rate) selbständig und leitet diese an den sFlow-Agenten weiter. Der sFlow-Agent übermittelt die gesammelten Statistikdaten dann anschließend über das Netz an die Managementstation.

Sampling der Interface-Statistiken

Den Überblick über das gesamte Netzwerkgeschehen ermöglicht sFlow durch das Sammeln wichtiger Statistikdaten auf den Interfaces. Die in einem sFlow-System integrierten Agenten sammeln die notwendigen Daten per Poll-Mechanismus und bereiten die Ergebnisse (Samples) für den Transfer zur Netzmanagementstation vor. Hierzu legen Sie auf dem sFlow-Agenten eine Liste von Messparametern an.

Der Agent entnimmt anschließend für diese Werte auf dem jeweiligen Interface die entsprechenden Stichproben. Zur Übermittlung spezifischer Flow-Informationen an die NMS-Station ruft der sFlow-Agent die betreffende Parameterliste ab und ordnet den jeweiligen Parametern die entsprechenden Zählerstände zu. Dieser Vorgang lässt sich ohne zusätzliche Belastung der CPU oder des Arbeitsspeichers periodisch (beispielsweise im Sekundenbereich) abarbeiten. Die Übermittlung von Interface-Statistiken resultiert in einem kontinuierlichen Informationsstrom.

Die sFlow-Technologie lässt sich in die meisten heute verfügbaren Switch- und Router-Architekturen integrieren. Ein sFlow-Agent stellt letztendlich nur einen Softwareprozess dar, der als Funktionsmodul des Netzmanagements auf dem jeweiligen Gerät arbeitet. Die Statistiken beziehungsweise Informationsstichproben werden vom jeweiligen Switching/Routing-ASIC erzeugt. Der eigentliche sFlow-Agent muss dabei relativ wenige Verarbeitungsprozesse ausführen. Seine Aufgabe besteht hauptsächlich im Versenden der sFlow-Datagramme. Das minimiert die notwendigen Anforderungen an die CPU und den Speicher auf dem jeweiligen Gerät.

Das Bild zeigt die Grundelemente eines sFlow-Systems. In modernen Switchen und Routern bildet diese Architektur die Grundlage für das kontinuierliche Monitoring aller Datenströme auch auf unterschiedlichen Ebenen in einem Netz. Die verteilten sFlow-Agenten übermitteln dabei einen kontinuierlichen Strom an sFlow-Informationen an die zentrale Managementstation (sFlow Collector). Diese sammelt und analysiert die parallelen Informationsströme und bereitet aus den Daten eine Darstellung der Verkehrsflüsse im Netzwerk in Echtzeit auf. Der Einsatz von sFlow in Highspeed-Routern beziehungsweise -Switchen bietet verschiedene Vorteile:

  • Genauigkeit: Die Sampling-Mechanismen sind so einfach gestaltet, dass sich diese in Hardware implementiert lassen. Dies ermöglicht hohe Verarbeitungsgeschwindigkeiten (Wire Speed) auf den unterstützen Interfaces und das sFlow-System garantiert eine Messgenauigkeit auch bei höchsten Übertragungsraten.
  • Detailtiefe: Mit sFlow lassen sich sämtliche Paket-Header und Switching/Routing-Informationen auf allen Ebenen von Layer 2 bis Layer 7 analysieren.
  • Skalierbarkeit: Ein sFlow-System lässt sich sowohl in Bezug auf die Anzahl der Agenten als auch die Geschwindigkeit der überwachten Netzwerk-Interfaces skalieren. Aufgrund der hardwarenahen Integration von sFlow lassen sich auch Highspeed-Netze mit 100 GBit/s und mehr problemlos überwachen. Der praktische Einsatz von sFlow zeigt, dass sich auch Tausende von sFlow-Komponenten ohne signifikante Netzlasterhöhung von einem einzigen sFlow Collector überwachen lassen.

Datenexport per UDP mit NetFlow

Mit Hilfe der NetFlow-Technik können Router oder Switche die über die Datenströme gesammelten Informationen per UDP-Protokoll exportieren. Die UDP-Pakete werden von NetFlow-Kollektoren empfangen, gespeichert und verarbeitet. Die von einem NetFlow-Kollektor empfangenen Daten werden ähnlich wie bei sFlow zur Verkehrsanalyse, Kapazitätsplanung und QoS-Analyse genutzt. Ursprünglich von Cisco als Gegenkonzept zu sFlow entwickelt, wird die Technologie inzwischen von vielen Herstellern unterstützt. Neben NetFlow gibt es von Juniper Networks das "cFlow" und von Huawei das "Netstream". Beide NetFlow-Varianten sind technisch mit dem RFC 3954 identisch.

Ein Verkehrsstrom lässt sich auf viele Arten beschreiben. NetFlow in Version 5 definiert als Verkehrsstrom eine unidirektionale Folge von Paketen, die über die folgenden Werte verfügen:

  • Ingress-Schnittstelle (SNMP ifIndex)
  • Versionsnummer und Sequenznummer
  • Zeitstempel
  • Byte- und Paketzähler
  • Quell- und Ziel-IP-Adressen
  • Quell- und Ziel-IP-Ports
  • Ingress- und Egress-Port-Nummern
  • Kennung der höheren Protokolle
  • Type of Service (ToS) beziehungsweise DifServ-Informationen
  • AS-Nummern (BGP)
  • TCP-Flags

Im ersten Teil drehte sich alles um sFlow und NetFlow. Im zweiten Teil sehen wir uns dann an, inwieweit Überlast zu Netzwerkausfällen führen kann. Der dritte Teil erklärt, warum es wichtig ist, die Anforderungen des eigenen IT-Betriebs genau zu kennen. Und im vierten Teil gehen wir schließlich auf die Vermeidung von Flaschenhälsen und die Integration einer Netzwerkvisualisierung ein.

Autor: Mathias Hein

IT-Administrator
IT-Administrator

Praxiswissen für Admins.

IT-Administrator ist das Praxismagazin für System- und Netzwerkadministratoren und liefert jeden Monat passgenaues, sofort umsetzbares Fachwissen. Auf zahlreichen Intensivseminaren und Trainings vor Ort sowie online können sich Admins zudem umfassend fortbilden. Auf Xing informiert die Redaktion über aktuelle Trends und Themen aus der IT.
Mehr anzeigen