Sådan testes netværksgennemstrømning ved hjælp af iperf3 Tool i Linux


iperf3 er et gratis open source, cross-platform kommandolinjebaseret program til udførelse af realtidsnetværksgennemstrømningsmålinger. Det er et af de kraftfulde værktøjer til test af den maksimalt opnåelige båndbredde i IP-netværk (understøtter IPv4 og IPv6).

Med iperf kan du indstille flere parametre forbundet med timing, buffere og protokoller såsom TCP, UDP, SCTP. Det er praktisk til justering af netværksydelse.

For at opnå maksimal eller snarere forbedret netværksydelse skal du øge kapaciteten såvel som latenstiden til dit netværks modtagelses- og afsendelsesfunktioner. Inden du kan gå ind i faktisk indstilling, skal du dog udføre nogle test for at indsamle overordnede netværksydelsesstatistikker, der vil styre din indstillingsproces.

Dens resultater inkluderer tidsinterval i sekunder, data overført, båndbredde (overførselshastighed), tab og andre nyttige parametre for netværksydelse. Det er primært beregnet til at hjælpe med at indstille TCP-forbindelser over en bestemt sti, og det er det, vi vil fokusere på i denne vejledning.

  • To netværkscomputere, som begge har iperf3 installeret.

Sådan installeres iperf3 i Linux-systemer

Inden du begynder at bruge iperf3, skal du installere det på de to maskiner, du vil bruge til benchmarking. Da iperf3 er tilgængelig i de officielle softwarelagre for de mest almindelige Linux-distributioner, skal det være nemt at installere det ved hjælp af en pakkehåndtering som vist.

$ sudo apt install iperf3	#Debian/Ubuntu
$ sudo yum install iperf3	#RHEL/CentOS
$ sudo dnf install iperf3	#Fedora 22+ 

Når du har installeret iperf3 på begge maskiner, kan du begynde at teste netværksgennemstrømning.

Sådan testes netværksgennemstrømning mellem Linux-servere

Opret først forbindelse til den eksterne maskine, som du vil bruge som server, og fyr iperf3 op i servertilstand ved hjælp af -s -flaggen, den lytter som standard på port 5201.

Du kan angive formatet (k, m, g for Kbits, Mbits, Gbits eller K, M, G for KBytes, Mbytes, Gbytes), der skal rapporteres i, ved hjælp af -f -kontakten som vist.

$ iperf3 -s -f K 

Hvis port 5201 bruges af et andet program på din server, kan du angive en anden port (f.eks. 3000) ved hjælp af -p -omskifteren som vist.

$ iperf3 -s -p 3000

Eventuelt kan du køre serveren som en dæmon ved hjælp af -D -flagget og skrive servermeddelelser til en logfil som følger.

$ iperf3 -s -D > iperf3log 

Derefter kører iperf3 i klienttilstand ved hjælp af -c flag på din lokale maskine, som vi vil behandle som klienten (hvor den aktuelle benchmarking finder sted) og specificer den vært, som serveren kører på (enten ved hjælp af dens IP-adresse eller domæne eller værtsnavn).

$ iperf3 -c 192.168.10.1 -f K

Efter ca. 18 til 20 sekunder skal klienten afslutte og producere resultater, der angiver den gennemsnitlige gennemstrømning for benchmarket, som vist i det følgende skærmbillede.

Vigtigt: Fra benchmarkresultaterne, som vist i ovenstående skærmbillede, er der en variation i værdier fra serveren og klienten. Men du bør altid overveje at bruge resultaterne opnået fra iperf-klientmaskinen i hver test, du udfører.

Sådan udføres avanceret netværkstestgennemstrømning i Linux

Der er en række klientspecifikke muligheder for at udføre en avanceret test som forklaret nedenfor.

En af de vigtige faktorer, der bestemmer mængden af data i netværket en given tid, er TCP-vinduesstørrelsen - det er vigtigt at indstille TCP-forbindelser. Du kan indstille vinduesstørrelse/stikket buffer størrelse ved hjælp af -w flag som vist.

$ iperf3 -c 192.168.10.1 -f K -w 500K	

For at køre det i omvendt tilstand, hvor serveren sender og klienten modtager, skal du tilføje -R -kontakten.

$ iperf3 -c 192.168.10.1 -f K -w 500K -R	

For at køre en tovejs test, hvilket betyder at du måler båndbredde i begge retninger samtidigt, skal du bruge indstillingen -d .

$ iperf3 -c 192.168.10.1 -f K -w 500K -d

Hvis du ønsker at få serverresultater i klientoutputtet, skal du bruge indstillingen --get-server-output .

$ iperf3 -c 192.168.10.1 -f K -w 500K -R --get-server-output

Det er også muligt at indstille antallet af parallelle klientstrømme (to i dette eksempel), der kører på samme tid ved hjælp af indstillingerne -P .

$ iperf3 -c 192.168.10.1 -f K -w 500K -P 2

For mere information, se mandsiden iperf3.

$ man iperf3

iperf3-hjemmeside: https://iperf.fr/

Det er alt! Husk altid at udføre netværkets ydelsestest, inden du går til den faktiske netværksindstilling. iperf3 er et kraftfuldt værktøj, der er nyttigt til at køre netværkets gennemløbstest. Har du nogle tanker at dele eller spørgsmål at stille, brug kommentarformularen nedenfor.