Iperf2 vs Iperf3 – Mesure de la performance des réseaux

bardimin pic

Bardimin

10 septembre 2022
iperf2

Iperf2 vs Iperf3 – Mesure de la performance des réseaux

Home » Blogs » Logiciel » Mise en réseau » Iperf2 vs Iperf3 – Mesure de la performance des réseaux

est un outil de mesure et d'optimisation des performances des réseaux.

L'application est un programme multiplateforme qui fournit des mesures standard de performance du réseau. Iperf comprend un client et un serveur qui peuvent générer un flux de données pour évaluer le débit entre deux points d'extrémité dans une ou deux directions.

iperf2

Une sortie iperf typique comprend un rapport temporel estampillé de la quantité de données transportées et du débit mesuré.

Iperf2

Iperf2 est un outil de mesure du débit et de la réactivité du réseau qui prend en charge TCP et UDP. L'un de ses objectifs est de maintenir le fonctionnement de la base de code iperf sur différentes plates-formes et systèmes d'exploitation.

Il s'agit d'une architecture multithread qui croît proportionnellement au nombre de CPU ou de cœurs dans un système avec lequel elle peut obtenir et rapporter les performances du réseau en utilisant des stratégies à fort et à faible impact.

Caractéristiques d’Iperf2

  • Prend en charge des intervalles de rapport plus petits (100 us ou plus, configurer –enable-fast sampling pour une sortie de temps d'intervalle de haute précision).
  • Prise en charge de SO_RCVTIMEOUT pour les serveurs de rapports, indépendamment de l'absence de paquetage
  • Supporte SO_SNDTIMEO lors de l'envoi afin que les écritures sur le socket ne soient pas bloquées au-delà de -t ou -i
  • Prise en charge de SO_TIMESTAMP pour l'horodatage des paquets au niveau du noyau
  • Prend en charge le temps de latence final en format moyen/min/max/stdev (UDP) (-e requis) (en supposant que les horloges du client et du serveur soient synchronisées, par exemple avec le Precision Time Protocol à l'OCXO par oscillateur Spectracom).
  • Prise en charge des flux limités au niveau TCP (via -b) à l'aide d'un seau de jetons simplifié
  • Prend en charge les paquets par seconde (UDP) et les pps en tant qu'unités (par exemple, -b 1000pps).
  • Afficher le PPS dans les rapports du client et du serveur (UDP) (-e requis)
  • Prise en charge des ordonnanceurs en temps réel en tant qu'options de (–real-time ou -z, en supposant que l'utilisateur dispose des droits appropriés).
  • Affichage du temps de boucle cible dans l'en-tête initial du client (UDP)
  • Ajouter le support local des liens ipv6 (ex. iperf -c fe80::d03a:d127:75d2:4112%eno1)
  • La charge utile UDP ipv6 est fixée par défaut à 1450 octets par trame Ethernet et par charge utile.
  • Prise en charge du trafic isochrone (via –isochrone) et de la rafale de trames avec trafic à débit variable (vbr) et identification des trames.
  • La prise en charge de la multidiffusion SSM pour v4 et v6 utilise -H ou -ssm-host, c'est-à-dire iperf -s -B ff1e::1 -u -V -H fc00::4
  • Histogrammes de latence pour les paquets et les trames (par exemple –udp-histogram=10u.200000, 0.03, 99.97)
  • Prise en charge des clients qui augmentent l'IP de destination avec -P via –incr-dstip
  • Honor -T (ttl) pour unicast et multicast
  • UDP utilise un numéro de séquence de 64 bits (bien qu'il fonctionne encore avec 2.0.5 qui utilise un numéro de séquence de 32 bits).

Systèmes d’exploitation supportés par l’Iperf2

  • , Windows 10, Windows 7, Windows XP, macOS, Android et certains décodeurs OS.

Télécharger Iperf2

Iperf2 Windows v2.1.8

Iperf2 Linux v2.1.8

Iperf3

L'application Iperf3 est une réécriture d'iperf à partir de zéro pour créer une base de code plus petite et plus simple.

iPerf3 est un outil permettant de mesurer en temps réel la largeur de bande maximale possible sur un réseau IP. Il vous permet de régler avec précision divers délais, tampons et protocoles (TCP, UDP, SCTP avec IPv4 et IPv6). Il fournit également des rapports sur la bande passante, les pertes et d'autres pour chaque test.

Caractéristiques d’Iperf3

  • TCP et SCTP (mesure de la bande passante, rapport sur la taille du MSS/MTU et la taille de la lecture observée, prise en charge de la taille de la fenêtre TCP sur la mémoire tampon de la socket).
  • UDP (le client peut créer un flux UDP à partir d'une bande passante spécifiée, mesurer la perte de paquets, mesurer la gigue du délai, permettre la multidiffusion)
  • Le client et le serveur peuvent avoir plusieurs connexions simultanées (option -P).
  • Le serveur gère plusieurs connexions, au lieu de s'arrêter après un seul test.
  • Peut fonctionner pendant une durée déterminée (option -t), plutôt que sur une quantité de données à transférer (option -n ou -k).
  • Rapports périodiques d'impression, de bande passante moyenne, de gigue et de perte à des intervalles spécifiques (option-i).
  • Exécuter le serveur en tant que démon (option -D)
  • Utiliser des flux représentatifs pour tester l'impact de la compression de la couche de liaison sur la bande passante disponible (option -F).
  • Un serveur reçoit un client simultanément (iPerf3) et plusieurs clients simultanément (iPerf2).
  • Ignorer le démarrage lent de TCP (option -O).
  • Définir la bande passante cible pour UDP et (nouveau) TCP (option -b).
  • Définir l'étiquette de flux IPv6 (option -L)
  • Définir l' de contrôle de la congestion (-option -C)
  • Utiliser SCTP au lieu de TCP (option –sctp)
  • La sortie est au format JSON (option -J).
  • Test de lecture de (serveur : iperf3 -s / client : iperf3 -c testhost -i1 -F nom de fichier)
  • Test d'écriture sur (serveur : iperf3 -s -F nom de fichier / client : iperf3 -c testhost -i1)

Systèmes d’exploitation supportés par Iperf3

  • Windows, , Android, macOS X, FreeBSD, OpenBSD, NetBSD, VxWorks, Solaris

Télécharger Iperf3

Iperf3 Windows 64bit v3.1.3

Iperf3 Windows 32bit v3.1.3

Iperf3 Linux v3.1.3

Iperf2 vs Iperf3

En vedetteIperf 2Iperf 3
Types de trafic
Trafic TCPYY
Trafic UDPYY
Trafic SCTPNY
IPv4YY
IPv6YY
Trafic de multidiffusion (y compris SSM)YN
Connexion TCP uniquementYN
Contrôles de la couche 2YN
Options de sortie
Format humainYY
Sortie JSONNY
CSV (de base uniquement)YN
Masquer les adresses IP dans la sortie (v4 uniquement)YN
Rapports du serveur côté clientNY
Profils de trafic
Limitation du taux de file d'attente équitableYY
Limitation du taux d'écritureYY
Limitation du débit de lecture (TCP)YN
ÉclatsYY
Isochrone (vidéo) TCP/UDPYN
Inverser les rôlesYY
Trafic bidirectionnelYY
Duplex intégral même priseYN
TCP bounceback avec charge(s) de travail optionnelle(s)YN
Trafic à faible cycle de service avec statistiques côté serveurYN
TCP_NOTSENT_LOWAT avec select() (en utilisant l'option –tcp-write-prefetch)YN
TCP proche de la congestion (expérimental)YN
Métriques
DébitYY
Réactivité par seconde (RPS)YN
Paquets UDP (total/perdu)YY
Gigue UDPYY
Latences des paquets UDPYN
TCP/UDP frame/burst latenciesYN
Temps de latence entre l'écriture et la lecture TCPYN
Puissance du réseau (latence/débit)YN
InP – octets dans les files d'attente (loi de Little)YN
TCP CWNDYN
TCP retriesYY
TCP RTTYY
Histogrammes des délais d'écriture côté émissionYN
Paquets UDP par secondeYN
Histogrammes de latenceYN
Temps de connexion TCPYN
Réponse TCP par intervalleYN
Sortie de la somme seulementYN
Autres
Conception multithreadYN
Parallel -P techniqueThreadsProcesses
Programmation en temps réelYN
-t support pour le serveurYN
Support de l'interface virtuelle TAP (réception uniquement) via –tap-devYN
Affinité avec l'unité centraleNY
Copie zéroNY
Étiquettes de flux IPv6NY
option –omit (sauter les premiers échantillons par temps en secondes)NY
Option Incr dst ip avec -PYN
Option Incr dst ip avec -PYN
Option Incr dst port avec -PYN
Option Incr src port avec -PYN
Liaison avec un dispositif ou une interfaceYY
Liaison du port sourceYN
Heure de début de transmission programméeYN
Retarder l'heure de début de la transmissionYN
Mot de passe de l'utilisateurNY
Clés de permisY (TCP only)N
UDP sans étatYN
Cadre (asyncio)Y (flows)N
Test du WiFi à travers le 100GYN/a
Passage à plus de 1000 threadsYN/a
link nyemin

Derniers articles

Qu’est-ce qu’une fuite de mémoire et comment la résoudre ?

Qu’est-ce qu’une fuite de mémoire et comment la résoudre ?

La fuite de mémoire est l'un des problèmes souvent rencontrés par les développeurs de logiciels, en particulier ceux qui utilisent des langages de programmation tels que C et C++. Les fuites de mémoire se produisent lorsqu'un programme alloue de la mémoire à partir...

Comment créer un mot de passe fort et facile à retenir

Comment créer un mot de passe fort et facile à retenir

Un mot de passe est la clé pour accéder à vos comptes en ligne, qu'il s'agisse de courriels, de médias sociaux, de services bancaires ou de toute autre chose. Un mot de passe fort et sécurisé protégera votre compte contre les attaques de pirates, le vol d'identité ou...

Comment trouver et réparer la perte de paquets sous Windows

Comment trouver et réparer la perte de paquets sous Windows

La perte de paquets est un problème grave qui peut avoir un impact négatif sur diverses applications et services. Il est important de savoir comment tester et corriger la perte de paquets pour vous assurer que vous disposez d'une connexion stable et fiable. La perte...

LACP vs PAgP : Quelle est la différence et la relation ?

LACP vs PAgP : Quelle est la différence et la relation ?

LACP (Link Aggregation Control Protocol) et PAgP (Port Aggregation Protocol) sont deux protocoles utilisés pour combiner plusieurs ports physiques en un seul port logique, appelé agrégation de liens ou port de canal. L'objectif de l'agrégation de liens est d'augmenter...