
[NFStream][repo] ist ein plattformübergreifendes Python-Framework, das schnelle, flexible und ausdrucksstarke Datenstrukturen bereitstellt, die die Arbeit mit Online- oder Offline-Netzwerkdaten einfach und intuitiv machen. Es soll Pythons grundlegender High-Level-Baustein für die praktische reale Netzwerkdatenanalyse sein. Darüber hinaus hat es das übergeordnete Ziel, ein einheitliches Netzwerkdatenanalyse-Framework für Forscher zu werden, das die Reproduzierbarkeit von Daten über Experimente hinweg gewährleistet.
| Live-Notebook |
|
| Projekt-Webseite |
|
| Diskussionskanal |
|
| Aktuelle Version |
|
| Unterstützte Versionen |
|
| Projektlizenz |
|
| Kontinuierliche Integration |
|
| Codequalität |
|
Inhaltsverzeichnis
Hauptmerkmale
- Leistung: NFStream ist auf Geschwindigkeit ausgelegt: [AF_PACKET_V3/FANOUT][packet] unter Linux, Multiprocessing, native [CFFI-basierte][cffi] Berechnungs-Engine und vollständige [PyPy][pypy]-Unterstützung.
- Verschlüsselte Layer-7-Einsicht: Die Deep-Packet-Inspection von NFStream basiert auf [nDPI][ndpi]. Dadurch kann NFStream eine [zuverlässige][reliable] Identifizierung verschlüsselter Anwendungen und Metadaten-Fingerabdrücke (z. B. TLS, SSH, DHCP, HTTP) durchführen.
- Systemeinsicht: NFStream untersucht den Kernel des überwachten Systems, um Informationen über offene Internet-Sockets zu erhalten, und sammelt garantiert echte Ground-Truth-Daten (Prozessname, PID usw.) auf Anwendungsebene.
- Extraktion statistischer Merkmale: NFStream bietet den neuesten Stand der flussbasierten statistischen Merkmalsextraktion. Dazu gehören Post-Mortem-Merkmale (z. B. Minimum, Mittelwert, Standardabweichung und Maximum der Paketgröße und Zwischenankunftszeit) sowie frühe Flussmerkmale (z. B. Sequenz der ersten n Paketgrößen, Zwischenankunftszeiten und Richtungen).
- Flexibilität: NFStream ist einfach erweiterbar mit [NFPlugins][nfplugin]. Es ermöglicht die Erstellung eines neuen Flussmerkmals innerhalb weniger Zeilen Python.
- Machine Learning ausgerichtet: NFStream zielt darauf ab, Machine-Learning-Ansätze für das Netzwerkverkehrsmanagement reproduzierbar und einsetzbar zu machen. Durch die Verwendung von NFStream als gemeinsames Framework stellen Forscher sicher, dass Modelle mit derselben Merkmalsberechnungslogik trainiert werden, und somit ein fairer Vergleich möglich ist. Darüber hinaus können trainierte Modelle mit [NFPlugins][nfplugin] in Live-Netzwerken bereitgestellt und evaluiert werden.
Wie erhalte ich es?
Binärinstallateure für die neueste veröffentlichte Version sind auf Pypi verfügbar.```bash
pip install nfstream
> **Windows-Hinweise**: NFStream enthält keine Capture-Treiber für Windows (Lizenzbeschränkungen). Es ist erforderlich,
> [Npcap-Treiber][npcap] zu installieren, bevor NFStream installiert wird.
> Wenn Wireshark bereits unter Windows installiert ist, dann sind die Npcap-Treiber bereits installiert, und Sie müssen
> keine weiteren Aktionen durchführen.