iperf3 adalah alat open-source yang digunakan untuk mengukur bandwidth jaringan dan menganalisis kinerja koneksi. Dengan iperf3, kita dapat melakukan pengujian kecepatan jaringan secara real-time antara dua perangkat.

Instalasi iperf3

Menginstal iperf3 di client dan server.

Debian/Ubuntu

sudo apt install iperf3

CentOS/RHEL

sudo dnf install iperf3

Konfigurasi Firewall

iperf3 menggunakan port 5201. Pastikan port ini dibuka di server agar client dapat terhubung.

Jika menggunakan ufw sebagai firewall, buka port 5201 dengan perintah berikut:

sudo ufw allow 5201/tcp
sudo ufw allow 5201/udp

Jika menggunakan iptables, tambahkan aturan berikut:

sudo iptables -A INPUT -p tcp --dport 5201 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 5201 -j ACCEPT

Jika menggunakan firewalld, jalankan perintah berikut:

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

Pengujian Kecepatan Jaringan

Setelah instalasi dan konfigurasi selesai, siap untuk menjalankan pengujian kecepatan jaringan.

Di server tujuan jalankan perintah berikut:

iperf3 -s

Di client, jalankan perintah berikut untuk menguji kecepatan ke server:

iperf3 -c 170.64.184.198

170.64.184.198 merupakan alamat IP server.

Yang tampil di server setelah pengujian berjalan:

-----------------------------------------------------------
Server listening on 5201 (test #1)
-----------------------------------------------------------
Accepted connection from 94.237.15.2, port 43620
[  5] local 170.64.184.198 port 5201 connected to 94.237.15.2 port 43626
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  10.8 MBytes  90.1 Mbits/sec                  
[  5]   1.00-2.00   sec  41.9 MBytes   351 Mbits/sec                  
[  5]   2.00-3.00   sec  43.4 MBytes   364 Mbits/sec                  
[  5]   3.00-4.00   sec  37.9 MBytes   317 Mbits/sec                  
[  5]   4.00-5.00   sec  43.0 MBytes   361 Mbits/sec                  
[  5]   5.00-6.00   sec  42.1 MBytes   353 Mbits/sec                  
[  5]   6.00-7.00   sec  38.6 MBytes   324 Mbits/sec                  
[  5]   7.00-8.00   sec  39.6 MBytes   332 Mbits/sec                  
[  5]   8.00-9.00   sec  43.1 MBytes   362 Mbits/sec                  
[  5]   9.00-10.00  sec  42.1 MBytes   353 Mbits/sec                  
[  5]  10.00-10.09  sec  4.00 MBytes   359 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.09  sec   386 MBytes   321 Mbits/sec                  receiver

Yang tampil di client setelah pengujian berjalan:

Connecting to host 170.64.184.198, port 5201
[  5] local 94.237.15.2 port 43626 connected to 170.64.184.198 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  14.8 MBytes   124 Mbits/sec    0   7.90 MBytes       
[  5]   1.00-2.00   sec  41.9 MBytes   351 Mbits/sec    0   8.10 MBytes       
[  5]   2.00-3.00   sec  43.2 MBytes   363 Mbits/sec    0   8.10 MBytes       
[  5]   3.00-4.00   sec  38.0 MBytes   319 Mbits/sec    0   8.10 MBytes       
[  5]   4.00-5.00   sec  42.9 MBytes   360 Mbits/sec    0   8.10 MBytes       
[  5]   5.00-6.00   sec  42.4 MBytes   355 Mbits/sec    0   8.10 MBytes       
[  5]   6.00-7.00   sec  39.1 MBytes   328 Mbits/sec    0   8.10 MBytes       
[  5]   7.00-8.00   sec  39.0 MBytes   327 Mbits/sec    0   8.10 MBytes       
[  5]   8.00-9.00   sec  43.0 MBytes   361 Mbits/sec    0   8.10 MBytes       
[  5]   9.00-10.00  sec  42.2 MBytes   354 Mbits/sec    0   8.10 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   386 MBytes   324 Mbits/sec    0             sender
[  5]   0.00-10.09  sec   386 MBytes   321 Mbits/sec                  receiver

iperf Done.

Analisis Hasil Pengujian

Hasil pengujian di atas menunjukkan performa jaringan antara client (94.237.15.2) dan server (170.64.184.198) menggunakan protokol TCP. Berikut adalah analisis berdasarkan output yang diberikan:

Ringkasan Hasil

  • Rata-rata Throughput Sender: 324 Mbits/sec
  • Rata-rata Throughput Receiver: 321 Mbits/sec
  • Total Data Transfer: 386 MBytes dalam 10 detik
  • Retransmissions: 0 (tidak ada paket yang perlu dikirim ulang)
  • Congestion Window (Cwnd): Stabil di sekitar 8.10 MBytes

Penjelasan Hasil

1. Throughput

  • Throughput Awal: Pada detik pertama, throughput hanya mencapai 124 Mbits/sec. Ini biasanya terjadi karena koneksi baru membutuhkan waktu untuk “ramp-up” (TCP slow start).
  • Throughput Stabil: Setelah beberapa detik, throughput stabil di kisaran 320-360 Mbits/sec. Ini menunjukkan bahwa jaringan memiliki bandwidth yang cukup untuk mendukung lalu lintas pada level ini.
  • Rata-rata Total: Rata-rata throughput selama 10 detik adalah 324 Mbits/sec, yang merupakan nilai yang cukup baik untuk koneksi internet atau jaringan lokal.

2. Retransmissions

  • Jumlah Retransmissions: 0
    • Tidak ada retransmissions sama sekali, yang menunjukkan bahwa koneksi sangat stabil dan tidak ada packet loss. Ini adalah indikator baik bahwa jaringan antara client dan server bekerja dengan optimal.

3. Congestion Window (Cwnd)

  • Nilai Cwnd: Stabil di sekitar 8.10 MBytes setelah beberapa detik awal.
    • Nilai ini menunjukkan bahwa algoritma TCP congestion control (misalnya, Cubic atau Reno) berhasil mengelola aliran data tanpa menyebabkan bottleneck.

4. Perbedaan Sender vs Receiver

  • Sender: 324 Mbits/sec
  • Receiver: 321 Mbits/sec
    • Ada sedikit perbedaan antara throughput sender dan receiver (3 Mbits/sec). Hal ini wajar karena adanya overhead protokol TCP, latensi, atau buffering di sisi receiver.

Interpretasi Hasil

Performa Jaringan

  • Bandwidth Terbatas: Dengan throughput maksimal sekitar 324 Mbits/sec, hasil ini menunjukkan bahwa bandwidth jaringan atau koneksi internet Anda dibatasi pada level ini. Kemungkinan besar, ini adalah batas dari ISP (Internet Service Provider) atau perangkat keras jaringan (misalnya, router atau switch).
  • Stabilitas Koneksi: Tidak ada retransmissions dan nilai jitter rendah (tidak ditampilkan secara eksplisit) menunjukkan bahwa latensi rendah dan koneksi sangat stabil.
  • Kemampuan Scaling: Kenaikan throughput dari 124 Mbits/sec ke 324 Mbits/sec menunjukkan bahwa jaringan mampu menyesuaikan diri dengan beban lalu lintas yang meningkat.

Rekomendasi

  1. Periksa Batasan ISP
    • Jika Anda menggunakan koneksi internet, hubungi ISP untuk memastikan apakah bandwidth yang Anda dapatkan sesuai dengan paket yang dibeli.
    • Jika bandwidth terbatas oleh ISP, pertimbangkan untuk meningkatkan paket layanan.
  2. Optimalkan Perangkat Keras
    • Pastikan router, switch, dan NIC mendukung throughput tinggi.
    • Gunakan kabel Ethernet berkualitas tinggi (misalnya, Cat6 atau Cat6a) jika menggunakan jaringan kabel.
  3. Tes dengan UDP
    • Untuk memeriksa apakah bandwidth dapat ditingkatkan lebih lanjut, coba jalankan tes dengan protokol UDP:
      iperf3 -c 170.64.184.198 -u -b 500M
      
    • Ini akan membantu mengidentifikasi apakah bottleneck berasal dari kontrol aliran TCP.
  4. Gunakan Stream Paralel
    • Jika bandwidth masih terbatas, coba gunakan stream paralel untuk memaksimalkan utilisasi:
      iperf3 -c 170.64.184.198 -P 4
      
  5. Monitor Latensi
    • Gunakan ping untuk memantau latensi ke server:
      ping -c 10 170.64.184.198
      
    • Latensi tinggi bisa menjadi penyebab throughput yang lebih rendah.

Kesimpulan Performa

  • Baik untuk Aplikasi Umum: Bandwidth 324 Mbits/sec cukup untuk aplikasi umum seperti browsing, streaming video HD, dan transfer file kecil hingga sedang.
  • Tidak Ideal untuk Aplikasi Intensif: Untuk aplikasi intensif seperti streaming 4K/8K, backup data besar, atau komunikasi real-time dengan throughput tinggi, bandwidth ini mungkin kurang memadai.

Kesimpulan

Hasil pengujian menunjukkan bahwa jaringan yang diuji memiliki performa yang stabil dengan throughput rata-rata 324 Mbits/sec. Tidak ada retransmissions, yang menunjukkan bahwa koneksi sangat andal. Namun, bandwidth ini mungkin terbatas oleh ISP atau perangkat keras jaringan.

Untuk aplikasi umum, performa ini sudah cukup baik. Namun, jika membutuhkan bandwidth lebih tinggi, pertimbangkan untuk mengoptimalkan perangkat keras, meningkatkan paket ISP, atau menggunakan teknik seperti stream paralel.