GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Améliorer les performances du réseau avec openDataplane et Open Fast Path sur Ubuntu 16.04

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

  1. http://www.opendataplane.org/wp-content/uploads/2014/01/ODPIntroductionandOverview-2014Jan29.pdf
  2. http://www.openfastpath.org/index.php/service/technicaloverview/

Ubuntu
  1. Surveiller le trafic réseau avec vnStat sur Ubuntu 20.04

  2. Une infrastructure ouverte haute performance arrive sur Ubuntu

  3. Erreurs avec Vagrant et Ubuntu 12.10 avec RVM ?

  4. Problème avec Nvidia Gpu et Ubuntu 16.04 ?

  5. Analysez le réseau local avec arp-scan sur ubuntu

Comment installer Django avec PostgreSQL et Nginx sur Ubuntu 16.04

Surveiller le trafic réseau avec Ntopng sur Ubuntu 18.04 LTS

Remplacement d'Amavisd par Rspamd dans ISPConfig 3.1 sur Debian et Ubuntu

Comment installer et créer un blog avec Hexo sur Ubuntu 20.04

Hébergement virtuel avec vsftpd et MySQL sur Ubuntu 12.04

Hébergement virtuel avec vsftpd et MySQL sur Ubuntu 12.10