Offene Datenebene (ODP)
Die Performance von Linux-basierten Netzwerklösungen war in der Vergangenheit eines der größten Probleme und deshalb hat Intel das Data Plane Development Kit (DPDK)-Projekt gestartet. Das Ziel der ODP-Umgebung ist es, ein plattformübergreifendes Framework für Anwendungen auf Datenebene bereitzustellen. ODP ist ein Open-Source-Projekt, das die Umgebung für Anwendungen auf Datenebene bereitstellt. Es ist einfach zu bedienen, bietet eine hohe Leistung und ist auch über verschiedene Netzwerk-System-on-Chip (SoCs) und Befehlssätze und Architekturen wie ARM und Intel portierbar. Die OPD-Umgebung besteht aus Konfigurationsdateien, Diensten, APIs für verschiedene Architekturen und Dienstprogramme, die für die verschiedenen zugrunde liegenden Hardwareanbieter optimiert sind. Der Zweck der ODP-Umgebung besteht darin, die API von den zugrunde liegenden Architekturen zu trennen, und sie ist so konzipiert, dass sie sowohl Software- als auch Hardwareimplementierungen unterstützt, um die in modernen SoCs vorhandenen Beschleunigungsfunktionen umfassend auszunutzen.
Öffnen Sie Fast Path (OFP)
Wie wir wissen, werden für den exponentiell wachsenden Datenverkehr leistungsstarke Geräte benötigt, die schnelle Paketverarbeitungsgeräte oder -maschinen im Netzwerk erfordern. OpenFastPath ist eine weitere Open-Source-Implementierung eines Hochleistungs-TCP/IP-Stacks, der für Netzwerkanwendungen mit einem herkömmlichen Linux-Stack hilfreich ist. Die Hauptfunktionalität von OFP wird als Bibliothek für verschiedene Anwendungen bereitgestellt, die ODP für die Vervollständigung, das Ausführungsmodell und das Framework verwenden. OFP unterstützt sowohl DPDK als auch ODP für eine hohe Leistung von Netzwerklösungen.
Erstellen Sie das Umgebungs-Setup
Laut OFP-Projektwebsite wurde es auf generischen 32/64-Bit-x86-Linux-Maschinen getestet. In diesem Tutorial wird OFP auf einer Ubuntu 16.04-VM installiert.
Voraussetzungen
Die folgenden Schritte werden als Root-Benutzer ausgeführt. Ausführen:
sudo -s
Root auf dem Server werden.
Die folgenden Pakete sind erforderlich, um OFP- und ODP-Code auf Ubuntu zu kompilieren.
Diese sind für den Zugriff auf und den Aufbau von ODP und OFP obligatorisch:
apt-get install git libtool automake build-essential pkg-config
Die folgenden Pakete sind jedoch Optionen.
apt-get install libssl-dev valgrind libcunit1 libcunit1-doc libcunit1-dev
OFP-Pfad kann mit ODP und DPDK (Intel) verwendet werden. In diesem Tutorial wird ODP jedoch mit dem OFP-Projekt verwendet. Verwenden des Git-Dienstprogramms zum Herunterladen des ODP-Codes wie unten gezeigt.
git clone https://git.linaro.org/lng/odp.git
Wechseln Sie in das Stammverzeichnis des ODP-Quellcodes und führen Sie den folgenden Befehl aus.
./bootstrap
In diesem Tutorial ist das Installationsverzeichnis von ODP "/usr/local/odp".
mkdir /usr/local/odp
Führen Sie das Konfigurationsskript mit der Präfixoption aus, wie im folgenden Screenshot gezeigt.
./configure --prefix=/usr/local/odp/
Die Ausgabe des Konfigurationsskripts ist unten dargestellt.
Führen Sie make und make install aus, um ODP auf der Ubuntu-Plattform zu kompilieren und zu installieren.
make
make install
Laden Sie den OFP-Code wie unten gezeigt mit dem Befehl git herunter.
git clone https://github.com/OpenFastPath/ofp
Gehen Sie in das Stammverzeichnis des OFP-Quellcodes und führen Sie den Befehl ./bootstrap aus.
cd ofp/
./bootstrap
Das Installationsverzeichnis des OFP-Projekts ist "/usr/local/ofp". Führen Sie das folgende Konfigurationsskript aus, um die Abhängigkeiten des Projekts zu überprüfen.
./configure --prefix=/usr/local/ofp/ --with-odp=/usr/local/odp/ --enable-cunit
Die Ausgabe des configure-Skripts wird im folgenden Schnappschuss gezeigt.
Führen Sie den Befehl „make“ aus, um den OFP-Projektcode zu erstellen. Es wird einige Zeit dauern, die OFP-Anwendung zu erstellen.
make
Der folgende Befehl platziert die Binärdateien und Bibliotheken des OFP-Projekts im Präfixpfad.
make install
Nach der Installation werden Binärdateien und Bibliotheken unter „/usr/local/ofp abgelegt "-Pfad. Alle zugehörigen Testanwendungen für das OFP-Projekt befinden sich unter dem "Papierkorb " Verzeichnis.
Ausführung der OFP-Anwendung
Zum Ausführen der OFP-Anwendung (fpm),
Wechseln Sie in das Skriptverzeichnis unter dem Stammverzeichnis des OFP-Quellcodes.
Standardmäßig wird die fpm-Anwendung auf der eth0-Schnittstelle ausgeführt. Unter Ubuntu 16.04 LTS lautet der Schnittstellenname jedoch „enp0s3 ". Der folgende Screenshot zeigt, wie die fpm-Anwendung mit der Datei "start_device.sh ausgeführt wird " Skript.
Nach dem Ausführen der Datei „fpm " Anwendung, eine neue Schnittstelle "fp0 " wird wie unten gezeigt erstellt.
Führen Sie den folgenden Befehl aus, um Zugriff auf die CLI von „fpm " Anwendung.
telnet localhost 2345
Die CLI der Anwendung unterstützt mehrere grundlegende Befehle. Der folgende Screenshot zeigt die Interface-Statistiken mit der Datei „stat "-Befehl. Nach dem Ausführen der Fastpath-Anwendung wird die Ethernet-Schnittstelle (enp0s3) von Linux getrennt und "NoARP" darauf gesetzt. Die neu erstellte virtuelle Schnittstelle (fp0) wird jetzt vom Linux-Betriebssystem für die Kommunikation verwendet.
Referenzen
- http://www.opendataplane.org/wp-content/uploads/2014/01/ODPIntroductionandOverview-2014Jan29.pdf
- http://www.openfastpath.org/index.php/service/technicaloverview/