tutorial iperf3: Testarea vitezei rețelei pe Linux și Windows

10 min citire - 7 mai 2026

hero section cover
Cuprins
  • tutorial iperf3: Măsurarea performanței rețelei pe Linux și Windows
  • Instalarea iperf3
  • Configurarea serverului
  • Efectuarea testelor client
  • Teste avansate
  • Reglare și depanare
  • Recomandare video
Distribuie

Instalați iperf3, rulați teste de lățime de bandă și reglați tampoanele TCP pentru rezultate precise pe Linux și Windows. Acoperă testele UDP, bidirecționale și 10GbE+

tutorial iperf3: Măsurarea performanței rețelei pe Linux și Windows

iperf3 este un instrument de linie de comandă pentru măsurarea lățimii de bandă a rețelei, a jitter-ului și a pierderii de pachete între două mașini. Utilizează un model client-server: o mașină ascultă, cealaltă trimite trafic și obțineți cifre precise privind debitul. Acest ghid acoperă instalarea, testele de bază și avansate și modul de reglare a sistemului pentru a obține rezultate precise pe legături de mare viteză.

Instalarea iperf3

Debian / Ubuntu

sudo apt update
sudo apt install iperf3

Confirmați instalarea cu iperf3 --version. Instalați-l atât pe server, cât și pe mașinile client.

Fedora / CentOS / Rocky / Alma

Pe Fedora 22+ sau CentOS 8+, Rocky sau AlmaLinux:

sudo dnf install iperf3

Pe CentOS 7, utilizați în schimb yum. Dacă pachetul nu este găsit, activați mai întâi depozitul EPEL:

sudo yum install epel-release
sudo yum install iperf3

Dacă firewall-ul dvs. este activ, deschideți portul 5201:

sudo firewall-cmd --add-port=5201/tcp --permanent
sudo firewall-cmd --reload

Windows

Descărcați executabilul independent de pe iperf.fr sau din repo-ul GitHub ar51an/iperf3-win-builds. Extrageți-l într-un folder precum C:\iperf3, apoi verificați:

cd C:\iperf3
iperf3.exe -v

Pentru a rula iperf3 din orice director, adăugați folderul la PATH-ul sistemului dvs. prin System Properties > Advanced > Environment Variables. De asemenea, va trebui să creați o regulă firewall de intrare care să permită TCP pe portul 5201 în Windows Defender Firewall.

Configurarea serverului

Porniți serverul cu:

iperf3 -s

Acesta ascultă implicit pe portul TCP 5201. Pentru a-l rula în fundal cu logare:

iperf3 -s -D --logfile /var/log/iperf3.log

Verificați dacă rulează cu ss -tulpn | grep 5201.

Dacă portul 5201 este blocat în rețeaua dvs., utilizați -p pentru a alege un port diferit. Pentru a vă conecta la o anumită interfață, utilizați -B:

iperf3 -s -B 192.168.1.10

Pentru teste punctuale, iperf3 -s -1 gestionează o singură conexiune client și apoi iese. Pe legături cu lățime de bandă mare (40 Gbps+), executați mai multe instanțe de server pe porturi diferite pentru a depăși limitele CPU cu un singur fir.

Asigurați-vă că firewall-ul permite traficul pe portul ales. Pe Ubuntu/Debian cu UFW:

sudo ufw allow 5201/tcp
sudo ufw allow 5201/udp   # if testing UDP

Efectuarea testelor client

Test TCP de bază

iperf3 -c 192.168.1.10

Acesta măsoară lățimea de bandă de încărcare prin TCP timp de 10 secunde. Extindeți durata cu -t:

iperf3 -c 192.168.1.10 -t 30

Pe legături de 10 Gbps sau 25 Gbps, un singur flux TCP ajunge adesea la 3-5 Gbps din cauza limitelor CPU single-core. Utilizați fluxuri paralele pentru a satura legătura:

iperf3 -c 192.168.1.10 -P 8

Citirea rezultatelor

Fiecare linie de interval arată Transfer (date trimise) și Bitrate (debit). Pentru TCP, urmăriți și:

  • Retr (retransmisii). Un număr mare înseamnă pierdere de pachete sau congestie.
  • Cwnd (fereastra de congestie). Dacă este scăzut sau blocat, limitele de dimensiune ale bufferului sau ferestrei blochează debitul.

Pe o legătură curată de 1 Gbps, așteptați-vă la aproximativ 940 Mbps după depășirea protocolului. Testul se încheie cu linii de rezumat pentru expeditor și receptor. Pe o rețea stabilă, acestea ar trebui să corespundă îndeaproape.

Pentru testele UDP( flagul-u ), rezultatul adaugă jitter (variația sosirii pachetelor) și datagrame pierdute/total. Jitter sub 1 ms și 0% pierderi sunt ideale pentru traficul în timp real, cum ar fi VoIP.

Indicatoare utile

IndicatorScop
-c <IP>Conectare la server
-p <port>Utilizează un port specific (implicit: 5201)
-t <sec>Durata testului în secunde (implicit: 10)
-i <sec>Interval de raportare
-P <num>Fluxuri paralele
-uMod UDP
-b <n>MLățime de bandă țintă (UDP; valoarea implicită este 1 Mbps dacă este omisă)
-RMod invers (serverul trimite, clientul primește)
-w <n>KDimensiunea ferestrei TCP / a tamponului socket
-JIeșire JSON
-ZZerocopy (reduce CPU pe legături rapide)

Teste avansate

Testarea bidirecțională

Indicatorul --bidir (iperf3 3.7+) testează încărcarea și descărcarea simultan:

iperf3 -c 192.168.1.10 --bidir

Ambele conexiuni provin de la client, astfel încât acest lucru funcționează prin NAT fără a deschide porturi suplimentare. Dacă rezultatele bidirecționale sunt mult mai scăzute decât cele ale testelor unidirecționale, este posibil ca routerul sau modemul dvs. de cablu să se confrunte cu traficul full-duplex.

Modul invers

Indicatorul -R inversează fluxul de date astfel încât serverul să trimită și clientul să primească. Acest lucru măsoară viteza de descărcare fără a schimba rolurile:

iperf3 -c 192.168.1.10 -t 30 -i 5 -R

Diferențele mari între rezultatele forward și reverse indică căi asimetrice, congestie sau configurații greșite ale bufferului.

Teste UDP

Testele UDP dezvăluie jitter și pierderi de pachete, pe care TCP le ascunde în spatele retransmisiei. Setați întotdeauna o lățime de bandă țintă cu -b, deoarece iperf3 setează implicit 1 Mbps pentru UDP:

iperf3 -c 192.168.1.10 -u -b 1G

Pentru a simula traficul VoIP (100 de apeluri, pachete de 200 de octeți):

iperf3 -c 192.168.1.10 -u -b 8M -l 200

Repere de calitate: jitter sub 5 ms este bun pentru VoIP, peste 30 ms provoacă probleme audibile. Pierderea de pachete mai mare de 0,1 % degradează vizibil media în timp real.

Reglare și depanare

Probleme comune

Obțineți doar 100 Mbps pe o legătură gigabit? Verificați viteza interfeței fizice cu ethtool eth0. Auto-negocierea eșuează uneori și scade legătura la o viteză mai mică.

MSS arată 536 de octeți pe Ethernet? Path MTU Discovery este probabil dezactivat. MSS implicit pentru un MTU de 1 500 de octeți este de 1 460 de octeți. Utilizați -m în timpul testării pentru a verifica. Un MSS de 536 de octeți irosește lățime de bandă și adaugă supraîncărcare.

CPU este la maxim pe legături rapide? Utilizați -Z (zerocopy) pentru a reduce sarcina CPU. Pentru 40 Gbps+, rulați mai multe instanțe de server pe porturi diferite și repartizați-le pe nucleele CPU.

Rezultate inconsecvente? Utilizați -O 3 pentru a omite primele câteva secunde în care fereastra de congestie TCP crește. Lăsați 30 de secunde între teste pentru a goli tampoanele de rețea.

Un singur flux este mult mai lent decât fluxurile paralele combinate? Dacă un flux ajunge la 200 Mbps, dar opt fluxuri combinate ajung la 1,6 Gbps, fereastra TCP sau tampoanele sistemului de operare limitează fluxul unic. Reglați tampoanele mai jos.

Reglarea tampoanelor TCP

Începeți prin a calcula produsul lățime de bandă - întârziere: lățime de bandă x RTT. O legătură de 10 Gbps cu RTT de 50 ms oferă un BDP de 62,5 MB. Setați bufferul maxim la cel puțin de 2 ori BDP.

Adăugați acestea la /etc/sysctl.d/99-tcp-tuning.conf și aplicați-le cu sudo sysctl -p:

ParametruRecomandat (1-10 Gbps)
net.core.rmem_max134217728 (128 MB)
net.core.wmem_max134217728 (128 MB)
net.ipv4.tcp_rmem4096 131072 134217728
net.ipv4.tcp_wmem4096 131072 134217728
net.core.default_qdiscfq
net.ipv4.tcp_congestion_controlbbr

Păstrați net.ipv4.tcp_moderate_rcvbuf setat la 1 astfel încât kernelul să se acordeze automat în aceste intervale. Activați net.ipv4.tcp_window_scaling (setat la 1) pentru ferestre TCP mai mari de 64 KB.

De asemenea, puteți trece de la algoritmul implicit de congestionare CUBIC la BBR de la Google. Pe legăturile cu latență ridicată și cu unele pierderi de pachete, BBR oferă în mod constant un debit mai mare decât CUBIC.

Utilizați marcajul -w în iperf3 pentru a testa anumite dimensiuni ale bufferului, dar rețineți că acestea nu pot depăși rmem_max sau wmem_max ale kernelului. Începeți cu 8 MB pentru legături gigabit, 512 KB pentru 100 Mbps.

Dacă furnizați servere dedicate și doriți să validați performanța rețelei, rulați testele de referință iperf3 imediat după configurare și după orice modificare a rețelei pentru a detecta rapid regresiile.

Recomandare video

Blog

În prim plan săptămâna aceasta

Mai multe articole
tutorial iperf3: Testarea vitezei rețelei pe Linux și Windows

tutorial iperf3: Testarea vitezei rețelei pe Linux și Windows

Instalați iperf3, rulați teste de lățime de bandă și reglați tampoanele TCP pentru rezultate precise pe Linux și Windows. Acoperă testele UDP, bidirecționale și 10GbE+

10 min citire - 7 mai 2026

ZFS Snapshots: Cum să le creați, să le restaurați și să le automatizați

10 min citire - 5 mai 2026

Mai multe articole
background image

Aveți întrebări sau aveți nevoie de o soluție personalizată?

icon

Opțiuni flexibile

icon

Acoperire globală

icon

Implementare instantanee

icon

Opțiuni flexibile

icon

Acoperire globală

icon

Implementare instantanee