iperf command and usage
Iperf is een open source netwerk tool die gebruikt wordt om de doorvoer of prestaties van een netwerk te meten. Het kan worden gebruikt om TCP en UDP te testen. Iperf kan worden gebruikt in Windows, Linux en MAC etc besturingssysteem.
Intentie van dit artikel:
Er zijn verschillende versies van Iperf, we zullen ons alleen richten op iperf versie 2.+ alleen. Deze versie wordt veel gebruikt in alle systemen.
algemeen schema:
Iperf werkt in server client model dat betekent dat er één server en één client moet zijn om Iperf traffic flow te starten.
Draadloze Verbinding
uit het diagram kunnen we begrijpen dat PC1 en PC2 een geldig IP-adres moeten hebben.
verbinding tussen twee pc ‘ s kan bedraad of draadloos zijn.
werkelijke instelling:
- in ons experiment is PC1 windows en PC2 Linux.
- PC1 IP is 192.168.1.6 en PC2 is 192.168.0.102
- PC1 iperf versie
Commando:
iperf Versie 2.0.5 (08 Jul 2010) pthreads
4. PC2 iperf version
Commando:
iperf version 2.0.5 (08 Jul 2010) pthreads
iperf Voorwaarden:
Er zijn enkele voorwaarden voordat Iperf werkt.
- PC1 moet ping naar PC2 en vice versa. We kunnen ping 192.168.1.102 van PC1 console of command line gebruiken om te zien of PC1 PC2 kan bereiken. Doe ping van PC2 naar PC1 om de bereikbaarheid van PC1 van PC3 te controleren.
Hier is een screenshot voor ping van PC1 naar PC2
Hier is een screenshot voor ping van PC2 naar PC1
- Beide Pc ‘ s moeten Iperf binaire. Het is beter om dezelfde versie van Iperf of close versies te houden. Maar vergeet niet Iperf 2.0 werkt niet met Iperf 3.0.
opmerking: UDP maakt geen UDP-verbinding voordat gegevens worden overgedragen en UDP heeft geen ACK van andere zijde nodig. Dus zelfs als IPERF server niet draait client in staat zal zijn gegevens te verzenden in tegenstelling tot TCP. Dus controleer altijd in server kant voor UDP gegevens.
belangrijke iperf-argumenten:
Argument | Meaning |
-s | Run server |
-c | Run Client |
-u | UDP |
-b | Bandwidth |
-i | Output interval in Sec |
-t | Time in sec |
-p | Port number |
-w | Windows size |
-d | Bi-directional traffic |
-l | Length |
-V | Used when IPv6 address is used instead of IPv4 |
Er zijn andere argumenten die in het algemeen niet worden gebruikt. We kunnen het man iperf commando in Linux gebruiken om alle argumenten te krijgen.
Iperf commando’s:
Er zijn veel argumenten voor Iperf Commando, we zullen alleen belangrijke en nuttige argumenten bespreken. Hieronder staan minimale argumenten die gebruikt kunnen worden om iperf uit te voeren.
TCP server:
TCP client:
UDP server:
UDP client:
iperf –c 192.168.1.102 –i1 –t60 –U –B 1000M
Start Iperf:
nu hebben we PC1 en PC2 dus onderstaande combinaties kunnen worden uitgevoerd tussen deze twee pc ‘ s.
- TCP-server in PC1 en TCP-client PC2
- TCP-client in PC1 en TCP-server PC2
- UDP-server in PC1 en UDP-client PC2
- UDP-client in PC1 en UDP-server PC2
Experiment 1:
probeer combinatie a
Hier is het schermafdruk van TCP-server in PC1.
dus eerst moeten we de server starten en als het succesvol is dan zal het in listing mode zijn.
Hier is het screenshot van TCP client in PC2.
Hier is de schermafbeelding voor TCP-serverzijde
volgende als we combinatie B willen proberen, moeten we alleen TCP-server in PC2 en TCP-client in PC1 draaien.
Experiment 2:
laten we combinatie d proberen
Hier is het screenshot van UDP-server in PC2.
dus eerst moeten we de server starten en als het succesvol is dan zal het in listing mode zijn.
Hier is de schermafbeelding van UDP-client in PC1.
Hier is het screenshot van de UDP-serveruitvoer in PC2
bekende fouten:
- Connect failed or connection refused:
wanneer we TCP-client zonder TCP-server uitvoeren, treedt deze fout op.
Hier is de schermafbeelding
- UDP zonder server:
wanneer we UDP-client zonder server draaien, kunnen we dit identificeren met enkele observaties
- nadat de doorvoersnelheid van de UDP-client is voltooid, zouden we geen serverrapport voor gemiddeld moeten gebruiken. Controleer het punt B in onderstaande screenshot.
- doorvoer kan hoger zijn dan de verbonden bandbreedte. Controleer de punt A in onderstaande screenshot.
- hier is de verwachte UDP client screenshot
sommige ervaringsargumenten:
-w:
venstergrootte kan worden vergroot.
Hier is de schermafbeelding voor standaard en aangepaste venstergrootte:
-i:
Interval kan worden verhoogd.
Hier-t 20sec en-i 5sec dus we zouden Iperf uitvoer moeten zien op 5sec interval. Hier is de screenshot.