Ağ Hızını ve Bant Genişliğini Test Etmek İçin iPerf Kullanma
IPerf, iki ağ ana bilgisayarı arasındaki ağ verimini test etmek için tasarlanmış açık kaynaklı bir komut satırı aracıdır. iPerf, iki ana bilgisayar arasında TCP ve UDP trafiği (yük) oluşturmaya izin verir. Bir sunucu ve bir istemci arasındaki maksimum ağ bant genişliğini (verimlilik) hızlı bir şekilde ölçmek ve ISP bağlantısı, yönlendirici, ağ geçidi (güvenlik duvarı), Ethernet veya Wi-Fi ağ performansı üzerinde stres testi yapmak için iPerf'i kullanabilirsiniz.
Bu makalede, Windows Linux ve üzerinde ağ hızını (verim) test etmek için iPerf aracını nasıl kuracağınızı ve kullanacağınızı göstereceğiz. VMware ESXi (Android, macOS, MikroTik'ten RouterOS ve diğer platformlar için iPerf sürümleri vardır).
IPerf, platformlar arası bir araçtır ve Windows'ta kurulum gerektirmez. Yürütülebilir dosyayı indirin ve aralarındaki ağ veriminin test edilmesi gereken iki cihazda çalıştırın. IPerf, istemci-sunucu modunda çalışır. İlk cihazda iPerf sunucu modunda başlar (iPerf istemcisinden gelen trafiği bekler). İkinci bilgisayarda iPerf istemci modunda başlar, TCP veya UDP trafiği oluşturur ve maksimum veri aktarım hızını ölçer.
Çoğu durumda, artık iPerf3 sürümü kullanılmaktadır (yüksek hızlı UDP testini destekler, varsayılan olarak 5201 numaralı TCP/UDP bağlantı noktası kullanılır).
Windows'ta iPerf Nasıl Kurulur ve Kullanılır?
Windows için iPerf 3.1.3'ü aşağıdaki bağlantıdan https://iperf.fr/iperf-download.php indirebilirsiniz. iPerf 2.0'ı kullanmak istiyorsanız buradan edinebilirsiniz. iPerf'i Windows'a yüklemeniz gerekmez, iPerf arşivini indirip sürücüdeki yerel bir dizine çıkartmanız yeterlidir. Arşivde sadece iki dosya var:
cygwin1.dll
Ve
iperf3.exeiPerf arşivini indirebilir ve PowerShell betiğini kullanarak yerel bir sürücüye çıkarabilirsiniz:
$iPerfZip = "https://iperf.fr/download/windows/iperf-3.1.3-win64.zip"
$TargetFolder = Join-Path $env:TEMP "iperf.zip"$iPerfPath = Join-Path $env:TEMP "iperf"
if (!(Test-Path $iPerfPath))
{ Invoke-WebRequest -Uri $iPerfZip -OutFile $TargetFolder
Expand-Archive -Path $TargetFolder -DestinationPath $iPerfPath
}Iperf bir konsol aracıdır ve onu komut satırında çalıştırmanız gerekir. Bir komut istemi (cmd.exe) açın ve yardımcı programla dizine gidin. Örneğin:
cd c:\tools\iperfiperf3.exe programını parametreler olmadan çalıştırırsanız, mevcut seçenekleri listeleyecektir.
iPerf yardımcı programı sunucu modunda çalışabilir (
-sseçenek) veya istemci modu (
-c). Windows'ta bir iPerf sunucusu çalıştırıyorsanız, TCP ve UDP protokolleri için gelen bağlantı noktası 5201'i açmanız gerekir. Windows Defender Güvenlik Duvarı GUI'sini veya PowerShell komutlarını kullanarak bağlantı noktalarını açabilirsiniz. Bunun gibi güvenlik duvarı kuralları oluşturun ve etkinleştirin:
New-NetFirewallRule -DisplayName 'iPerf-Server-Inbound-TCP' -Direction Inbound -Protocol TCP -LocalPort 5201 -Action Allow | Enable-NetFirewallRule
New-NetFirewallRule -DisplayName 'iPerf-Server-Inbound-UDP' -Direction Inbound -Protocol UDP -LocalPort 5201 -Action Allow | Enable-NetFirewallRule
Windows için birkaç iPerf GUI uygulaması vardır. Örneğin, Iperf3-Cygwin-GUI veya jperf.
Jperf Java üzerine yazılmıştır (jperf'i çalıştırmak için bilgisayarda Java VM kurulu olmalıdır). CLI arabirimi için grafik forma ek olarak Jperf, iletişim kanalı yükünün gerçek zamanlı grafik bant genişliği çizelgelerini oluşturabilir. Kullanmak için iPerf sunucu adresini belirtmeniz ve ağ çıktı testini başlatmanız yeterlidir.
PowerShell Komut Dosyası Galerisi'nde, PowerShell komut dosyalarınızda ağ performansı ölçümlerini almak için kullanılabilecek ayrı bir iPerfAutomate modülü vardır. Modülü şu komutla kurabilirsiniz:
Install-Module -Name iPerfAutomateiPerf'i Linux'a Kurmak
CentOS/RHEL/Fedora/Rocky Linux/Oracle Linux 8'de, iperf3 paketi temel AppStream deposunda bulunur (CentOS 7'de iperf3'ü EPEL deposunda bulabilirsiniz).
dnf (yum) komutu ile kurabilirsiniz:
# dnf install iperf3Debian/Ubuntu/Mint dağıtımlarında iperf3'ü şu komutla kurabilirsiniz:
$ sudo apt install iperf3 Linux ana makinenizi iperf3 sunucusu olarak kullanmak istiyorsanız, güvenlik duvarı (veya iptables) içinde 5201 numaralı TCP/UDP bağlantı noktalarını açmanız gerekir:
# firewall-cmd --permanent --add-port=5201/udp
# firewall-cmd --permanent --add-port=5201/tcp
# firewall-cmd --reloadVMware ESXi'de iPerf Kullanımı
VMware, iPerf aracını ESXi 6.7'de kaldırdı ancak 6.7U1'de geri getirdi. ESXi sunucunuzda iPerf'in kurulu olduğundan emin olun. ESXi konsoluna SSH aracılığıyla bağlanın, /usr/lib/vmware/vsan/bin dizinine gidin ve iperf veya iperf3 ikili dosyasını içerip içermediğini kontrol edin.
iPerf kurulu değilse, iperf çevrimdışı paketini buradan manuel olarak indirebilirsiniz (http://vibsdepot.v-front.de/depot/bundles/iperf-2.0.5-1-offline_bundle.zip). ESXi ana bilgisayarına kopyalayın ve şu komutla kurun:
# esxcli software vib install -d /iperf-2.0.5-1-offline_bundle.zip -no-sig-checkAraç, /opt/iperf/bin dizinine yüklenecektir. iPerf'i VMware ESXi üzerinde çalıştırmak için aşağıdaki komutu kullanın:
# /opt/iperf/bin/iperf3v-front web sitesinde ESXi için çok sayıda topluluk sürücüsü ve aracı bulabilirsiniz. ESXi kurulum görüntüsüne sürücü eklemek için komut dosyaları da burada mevcuttur.
Bir ESXi ana bilgisayarında bir iPerf sunucusu çalıştırıyorsanız, 5201 numaralı bağlantı noktasını açmanız gerekir. Bu bağlantı noktası, ESXi güvenlik duvarında varsayılan olarak devre dışıdır. Bunları açmak için ESXi güvenlik duvarını geçici olarak devre dışı bırakabilirsiniz:
# esxcli network firewall get
# esxcli network firewall set --enabled=false# esxcli network firewall set --enabled trueiPerf'i ESXi üzerinde çalıştırırken, vmkernel arayüzüne bağlı olmalıdır:
# esxcli network ip interface ipv4 getESXi ana bilgisayarları arasındaki kullanılabilirliği vmkping komutuyla kontrol edebilirsiniz:
# vmkping IP_addressiPerf'i vmkernel IP adresinde çalıştırın:
# iperf -s -B 192.168.31.50Ağ Hızını/Bant Genişliğini Test Etmek İçin iPerf Aracını Kullanın
Şimdi ağ verimini test etmek için iPerf kullanmanın bazı örneklerine bakalım. Bu örnekte, iperf sunucusu olarak bir Linux ana bilgisayarı kullanacağız. İperf'i sunucu modunda çalıştıralım:
# iperf3 -siPerf sunucusu çalışıyor, 5201 TCP bağlantı noktasındaki bağlantıları bekliyor.
Server listening on 5201.İpucu. iPerf bağımsız değişkenleri büyük/küçük harfe duyarlıdır!
İstemci ve sunucu arasındaki güvenlik duvarı ayarlarına bağlı olarak, dinleme bağlantı noktasını -p [port_number] bağımsız değişkenini kullanarak değiştirebilirsiniz. iPerf sunucusunu büyük bir TCP pencere boyutunda ve farklı bir TCP bağlantı noktasında çalıştırabilirsiniz. Şu komutu kullanın:
# iperf3 -s -w 32768 -p 5200-w 32768 - TCP pencere boyutunu 32 kB olarak değiştirin (varsayılan olarak yaklaşık 8 kB'dir);
-p 5200 - iPerf'in bağlantıları beklediği bağlantı noktası (iperf2'nin varsayılan olarak 5001 numaralı bağlantı noktasını ve iperf3'ün 5201 numaralı bağlantı noktasını dinlediğini unutmayın).
-D bağımsız değişkenini kullanarak iPerf sunucusunu bir Windows Hizmeti olarak çalıştırabilirsiniz.
iPerf istemcisi olarak Windows 10 yüklü bir bilgisayar kullanıyorum. Komut istemini açın ve çalıştırılabilir iPerf ile dizine geçin:
cd c:\tools\iperfİstemciden bir ağ bant genişliği testi çalıştırmak için iPerf sunucu adresini (veya DNS adını) belirtin:
iperf3.exe -c 192.168.1.200İstemci ağ trafiği oluşturmaya başlayacak, bağlantıyı 10 saniye test edecek ve aşağıdaki sonuç tablosunu görüntüleyecektir.
Aralık - test aralığı (saniye olarak);
Aktarım - aktarılan verilerin boyutu;
Bant genişliği - ortalama veri aktarım hızı.
iPerf sunucusunu artırılmış bir TCP pencere boyutuyla başlattıysanız, maksimum ağ yükünü elde etmek için aşağıdaki komutu kullanabilirsiniz:
iperf3.exe -c 192.168.1.200 -P 8 -t 30 -w 32768 -i 5 -f g-c 192.168.1.200 - iPerf sunucusunun IP adresi;
-w 32768 - TCP pencere boyutunu artırın;
-t 30 - saniye cinsinden test süresi (varsayılan olarak 10 saniye);
-P 8 - maksimum kanal yükünü elde etmek için paralel iş parçacığı sayısıdır;
-i 5 - iPerf istatistiklerini her 5 saniyede bir görüntüler. Parametre, uzun testler için (birkaç dakika, saat) kullanıma uygundur;
-f m — sonuçları Mbps cinsinden görüntüler. Burada kmgKMG değerlerini (kilobit, megabit, megabayt, gigabit vb.) kullanabilirsiniz.
Örneğimde, test 30 saniye sürdü. Nihai raporda, son [SUM] satırında listelenen Bant genişliği sütununun değerleriyle ilgileniyoruz. Bu, ağ üzerinden ortalama veri gönderme ve alma hızını gösterir. Bizim durumumuzda, iki ana bilgisayar arasındaki ortalama ağ bant genişliği 85,9 Mbit/sn'dir. 307 MB veri simetrik hızda (gönderen=alıcı) aktarıldı (Aktarım sütunu).
iPerf'i ters modda çalıştırabilirsiniz (sunucu verileri gönderir ve istemci verileri alır). Bunun için istemcide -R seçeneğini kullanın.
Varsayılan olarak, iPerf TCP trafiği oluşturur, ağ bant genişliğinizi UDP paketleri için kontrol etmeniz gerekirse, -u seçeneğini kullanmalısınız. Bu durumda iPerf sunucusunu şu komutla başlatmalısınız: iperf3 -s -u).
İnternet servis sağlayıcınızın bant genişliğini test etmeniz gerekiyorsa, genel iPerf sunucularından birini kullanabilirsiniz (iPerf genel ana bilgisayar listesi burada mevcuttur):
iperf3 -c iperf.scottlinux.comiPerf3 sunucusunun aynı anda yalnızca tek bir istemci bağlantısını kabul ettiğini unutmayın (iPerf2'de birden çok eşzamanlı istemci testine izin verilir). iPerf sunucusu şu anda bir istemci bağlantısına hizmet veriyorsa, bir hata alırsınız: iperf3: error — sunucu bir test yapmakla meşgul. daha sonra tekrar deneyin.
Maksimum ağ hızını her iki yönde de ölçmeniz gerekiyorsa (çift yönlü modda), istemcide -d seçeneğini kullanın:
iperf3.exe -c IP -P 8 -t 30 -w 32768 -diPerf kullanarak bir ağ testi çalıştırırken, Görev Yöneticisi aracılığıyla ağ bağlantı çıkış grafiğinizi izleyebilirsiniz.
Test sırasında iPerf'in istemci ile sunucu arasındaki iletişim kanalının tüm kullanılabilir bant genişliğini kullandığını ve bunun üretken uygulamaları ve kullanıcıları olumsuz etkileyebileceğini unutmamak önemlidir.
Seçeneklerin tam listesini aşağıdaki gibi görüntüleyebilirsiniz:
iperf3 -helpIperf, ağ bağlantısı performansını ve iki cihaz arasındaki maksimum veri aktarım hızını ölçmenize yardımcı olan, kullanımı kolay ve kullanışlı bir ağ aracıdır.










