Rabu, 21 Februari 2024

Menguji Kecepatan Koneksi Antara Server dan Client dengan iPerf3

Halo Guys.. Pernah kalian melakukan Uji Kecepatan Koneksi ?
Bicara mengenai Uji kecepatan koneksi biasanya kita identik dengan menggunakan speedtest yang terkenal di media-media online.  Seperti: Fast.com, Speedtest by Ookla, LibreSpeed, dan lain-lainya

Tapi WebApps di tersebut rasanya hanya untuk mengetest kecepatan dari internet yg kita miliki. Sudah pasti bottle neck nya di gateway ISP yang kita gunakan, tidak mungkin hasil speedtest nya melebihi dari status berlangganan yg kita beli.

Ok, sekarang bagaiman kalau contoh kasus nya kita harus melakukan uji koneksi antara Server dengan Client ?
Solusi yang biasa kita temui seperti melakukan koneksi Peer-to-Peer pakai suatu services seperti SCP, FTP, atau services lainya lalu test mengirim data. Tapi menurutku itu cukup ribet & dan kurat readable laporan nya.


Untung nya ada aplikasi "iperf3" - https://github.com/esnet/iperf

Iperf3 adalah tools untuk mengukur bandwidth dan kecepatan suatu jaringan.
Iperf3 mendukung TCP, UDP, SCTP dan bisa berjalan pada banyak platforms seperti windows, Linux, Android, Mac, dan lainya. Tools ini juga dapat melakukan pengujian koneksi untuk IPv4 & IPv6 bahkan tools ini juga dapat melakukan pengukuran hingga throughput maksimum / "extreme best case".

Cara penggunaan dari tools Iperf3 ini juga cukup mudah, kita cukup install tools ini pada kedua server( Server & Client ) yang akan melakukan test koneksi.

For sample command line usage:
https://fasterdata.es.net/performance-testing/network-troubleshooting-tools/iperf/


Pada Sisi Server :
Kita cukup menjalankan command berikut :

$  iperf3 -s
Gunakan option " -s " untuk menjalankan tools ini sebagai mode server.


Pada Sisi Client :
Kita cukup menjalankan command berikut :

$  iperf3 -c [Alamat-Server]
Gunakan option " -c " untuk menjalankan tools ini sebagai mode client, lalu masukan alamat dari server iperf3.

Setelah menjalankan command di atas pada sisi client, biarkan aplikasi berjalan sampai selesai melakukan pengujian seperti gambar berikut. 

Pengujian koneksi ini bisa jadikan kegiatan untuk validasi metrics dari Prometheus pada Grafana Dashboard, yang kebetulan sekarang saya sedang bermain Grafana.


Melalkukan Test Download/Received dengan rate 100Mb/s, menggunakan command :
$  iperf3 -c [Alamat-Server] -i 1 -t 120 -b 120M


Melalkukan Test Upload/Transmit dengan rate 100Mb/s, menggunakan command :
$  iperf3 -c [Alamat-Server] -i 1 -t 120 -b 120M -R
** penambah command -R untuk reverse package nya


Oiya.. pada sisi server juga kita dapat mengaktifkan autentikasi. Bagaimana tools ini cukup membantu kah ?

Semoga Bermanfaat. 

Share: