Plan de données ouvert (ODP)
Les performances des solutions réseau basées sur Linux étaient l'un des plus gros problèmes dans le passé et c'est pourquoi Intel a lancé le projet Data Plane Development Kit (DPDK). L'objectif de l'environnement ODP est de fournir un cadre multiplateforme pour les applications de plan de données. ODP est un projet open source qui fournit l'environnement pour les applications de plan de données. Il est facile à utiliser, offre des performances élevées et est également portable sur divers systèmes de réseau sur puce (SoC) et ensembles d'instructions et architectures telles que ARM et Intel. L'environnement OPD se compose de fichiers de configuration, de services, d'API pour différentes architectures et d'utilitaires optimisés pour les différents fournisseurs de matériel sous-jacents. Le but de l'environnement ODP est de séparer l'API des architectures sous-jacentes et il est conçu de manière à prendre en charge les implémentations logicielles et matérielles pour exploiter en profondeur les fonctionnalités d'accélération présentes dans les SoC modernes.
Open Fast Path (OFP)
Comme nous le savons, des appareils hautes performances sont nécessaires pour le trafic de données à croissance exponentielle qui exige des appareils ou des machines de traitement de paquets rapides dans le réseau. OpenFastPath est une autre implémentation open source d'une pile TCP/IP hautes performances, utile pour les applications réseau avec une pile Linux traditionnelle. La fonctionnalité principale d'OFP est fournie en tant que bibliothèque pour différentes applications qui utilisent ODP pour l'achèvement, le modèle d'exécution et le cadre. OFP prend en charge à la fois DPDK et ODP pour des performances élevées des solutions réseau.
Créer la configuration de l'environnement
Selon le site Web du projet OFP, il a été testé sur des machines Linux x86 32/64 bits génériques. Dans ce tutoriel, OFP sera installé sur une machine virtuelle Ubuntu 16.04.
Prérequis
Les étapes suivantes sont exécutées en tant qu'utilisateur root. Exécuter :
sudo -s
pour devenir root sur le serveur.
Les packages suivants sont nécessaires pour compiler le code OFP et ODP sur Ubuntu.
Ceux-ci sont obligatoires pour accéder et construire ODP et OFP :
apt-get install git libtool automake build-essential pkg-config
Cependant, les packages suivants sont des options.
apt-get install libssl-dev valgrind libcunit1 libcunit1-doc libcunit1-dev
Le chemin OFP peut être utilisé avec ODP et DPDK (intel). Cependant, dans ce tutoriel, ODP sera utilisé avec le projet OFP. Utilisation de l'utilitaire git pour télécharger le code ODP comme indiqué ci-dessous.
git clone https://git.linaro.org/lng/odp.git
Allez dans le répertoire racine du code source ODP et exécutez la commande suivante.
./bootstrap
Dans ce tutoriel, le répertoire d'installation d'ODP est "/usr/local/odp".
mkdir /usr/local/odp
Exécutez le script de configuration avec l'option de préfixe comme indiqué dans la capture d'écran suivante.
./configure --prefix=/usr/local/odp/
La sortie du script de configuration est illustrée ci-dessous.
Exécutez make et make install pour la compilation et l'installation d'ODP sur la plate-forme Ubuntu.
make
make install
Comme indiqué ci-dessous, téléchargez le code OFP à l'aide de la commande git.
git clone https://github.com/OpenFastPath/ofp
Entrez dans le répertoire racine du code source OFP et exécutez la commande ./bootstrap.
cd ofp/
./bootstrap
Le répertoire d'installation du projet OFP est "/usr/local/ofp". Exécutez le script de configuration suivant pour vérifier les dépendances du projet.
./configure --prefix=/usr/local/ofp/ --with-odp=/usr/local/odp/ --enable-cunit
La sortie du script de configuration est affichée dans l'instantané suivant.
Exécutez la commande "make" pour générer le code du projet OFP. La création de l'application OFP prendra un certain temps.
make
La commande suivante placera les fichiers binaires et les bibliothèques du projet OFP dans le chemin du préfixe.
make install
Après l'installation, les binaires et bibliothèques sont placés sous le dossier "/usr/local/ofp ". Toutes les applications de test associées au projet OFP se trouvent sous le "bin " répertoire.
Exécution de l'Application OFP
Pour exécuter l'application OFP (fpm),
allez dans le répertoire des scripts sous le répertoire racine du code source OFP.
Par défaut, l'application fpm s'exécute sur l'interface eth0. Cependant, sur Ubuntu 16.04 LTS, le nom de l'interface est "enp0s3 ". La capture d'écran suivante montre comment l'application fpm est exécutée à l'aide de "start_device.sh " script.
Après avoir exécuté le "fpm " application, une nouvelle interface " fp0 " sera créé comme indiqué ci-dessous.
Exécutez la commande suivante pour accéder à la CLI du "fpm " demande.
telnet localhost 2345
La CLI de l'application prend en charge plusieurs commandes de base. La capture d'écran suivante montre les statistiques de l'interface à l'aide de "stat ". Après avoir exécuté l'application fastpath, l'interface Ethernet (enp0s3) sera déconnectée de Linux et "NoARP" sera défini dessus. L'interface virtuelle nouvellement créée (fp0) sera utilisée par le système d'exploitation Linux pour la communication maintenant.
Références
- http://www.opendataplane.org/wp-content/uploads/2014/01/ODPIntroductionandOverview-2014Jan29.pdf
- http://www.openfastpath.org/index.php/service/technicaloverview/