-->

Network Monitoring (Monitoring Latency, Packet Loss, Jitter, Status Host & Event Ganguan Secara Real Time

Imam Islamudin
0

 Network Monitoring (Monitoring Latency, Packet Loss, Jitter, Status Host & Event Ganguan Secara Real Time


  1. Muhammad Faisal
  2. Imam Islamudin
  3. Nelly Soraya
  4. Muhammad Naufal



Pendahuluan

Perkembangan teknologi jaringan komputer membuat kebutuhan terhadap sistem monitoring jaringan menjadi semakin penting. Dalam suatu jaringan, kestabilan koneksi harus selalu dijaga agar komunikasi data dapat berjalan dengan baik tanpa gangguan. Oleh karena itu, administrator jaringan memerlukan sistem yang mampu memantau kondisi jaringan secara terus-menerus dan real-time.

Project NetMonitor dibuat sebagai solusi monitoring jaringan berbasis web yang dapat membantu administrator dalam memantau kualitas koneksi jaringan dengan lebih mudah, cepat, dan terstruktur. Sistem ini mampu menampilkan informasi penting seperti latency, jitter, packet loss, status host, grafik monitoring, hingga notifikasi gangguan jaringan dalam satu dashboard terintegrasi. Dengan adanya sistem ini, proses monitoring jaringan tidak lagi dilakukan secara manual melalui terminal, tetapi dapat dilakukan secara otomatis melalui browser.


Latar Belakang

Monitoring jaringan merupakan proses penting untuk mengetahui kondisi dan kualitas suatu jaringan komputer. Pada praktiknya, proses monitoring masih sering dilakukan secara manual menggunakan perintah seperti ping atau tools sederhana lainnya. Cara tersebut kurang efektif apabila administrator harus memantau banyak host secara berkala karena membutuhkan waktu dan tenaga yang lebih besar.

Selain itu, hasil monitoring manual biasanya tidak tersimpan secara sistematis sehingga administrator kesulitan melakukan analisis terhadap riwayat gangguan jaringan. Kondisi ini menyebabkan sulitnya mengetahui host yang sering bermasalah, kapan gangguan terjadi, serta bagaimana performa jaringan dari waktu ke waktu.

Berdasarkan permasalahan tersebut, dibuatlah sistem NetMonitor berbasis web yang mampu melakukan monitoring jaringan secara otomatis dan real-time. Sistem ini dirancang untuk menampilkan parameter penting jaringan seperti latency, jitter, packet loss, dan status host, serta menyediakan fitur analytics, Telegram Alert, activity log, dan export Excel agar proses monitoring menjadi lebih efisien, informatif, dan terstruktur.


Tujuan Project

Tujuan dari project NetMonitor adalah sebagai berikut:

  1. Merancang dan membangun sistem monitoring jaringan berbasis web yang dapat bekerja secara real-time.
  2. Memudahkan administrator dalam memantau kondisi jaringan melalui dashboard yang informatif dan terintegrasi.
  3. Menampilkan parameter kualitas jaringan seperti latency, jitter, packet loss, dan status host secara otomatis.
  4. Menyediakan penyimpanan data monitoring untuk kebutuhan analisis dan dokumentasi jaringan.
  5. Membantu administrator mengetahui riwayat gangguan jaringan melalui fitur analytics dan activity log.
  6. Mengirimkan notifikasi gangguan jaringan secara otomatis melalui Telegram Alert.
  7. Menyediakan fitur export Excel untuk mempermudah pembuatan laporan monitoring jaringan.


Perangkat dan Software yang Digunakan

1. Perangkat Keras (Hardware)

Beberapa perangkat keras yang digunakan dalam project NetMonitor antara lain:

  • Laptop / PC Server
    Digunakan untuk menjalankan aplikasi monitoring berbasis web dan database.

  • Router / Gateway Jaringan
    Digunakan sebagai penghubung jaringan dan objek monitoring koneksi.

  • Perangkat Client / Host
    Berupa komputer, server, atau perangkat jaringan lain yang akan dipantau status koneksinya.

  • Koneksi Internet / LAN
    Digunakan untuk proses monitoring host lokal maupun publik secara real-time.


2. Software dan Teknologi

Berikut software dan teknologi yang digunakan dalam sistem NetMonitor:

  • Python 3
    Digunakan sebagai bahasa utama untuk menjalankan logika monitoring jaringan.

  • Flask
    Framework web Python yang digunakan untuk membangun dashboard dan API sistem monitoring.

  • SQLite
    Database ringan yang digunakan untuk menyimpan data monitoring, log aktivitas, dan event jaringan.

  • Nginx
    Digunakan sebagai web server dan reverse proxy untuk meningkatkan stabilitas akses aplikasi.

  • HTML, CSS, JavaScript
    Digunakan untuk membangun tampilan dashboard yang interaktif dan responsif.

  • Telegram Bot API
    Digunakan untuk mengirim notifikasi otomatis ketika terjadi gangguan jaringan.

  • Pandas & OpenPyXL
    Digunakan untuk mengolah data monitoring dan mengekspor laporan ke format Excel.


Konsep Dasar Sistem

Konsep dasar dari sistem NetMonitor adalah melakukan monitoring jaringan secara otomatis dan real-time terhadap beberapa host yang terhubung pada jaringan. Sistem akan melakukan pengecekan berkala menggunakan metode ping untuk mengetahui kualitas koneksi jaringan.

Parameter utama yang dianalisis meliputi:

  • Latency Jitter 

  • Packet Loss 

  • Status Host 

Data hasil monitoring kemudian disimpan ke database untuk kebutuhan:

  • Grafik monitoring

  • Riwayat gangguan

  • Analytics jaringan

  • Activity log

  • Export laporan

Semua informasi tersebut ditampilkan melalui dashboard berbasis web sehingga administrator dapat memantau kondisi jaringan secara lebih mudah dan terstruktur.


Langkah Implementasi Sistem

Implementasi sistem NetMonitor dimulai dengan tahap persiapan server yang digunakan sebagai tempat menjalankan aplikasi monitoring. Setelah server siap, dilakukan instalasi berbagai software pendukung seperti Python 3, Flask, SQLite, dan Nginx agar sistem dapat berjalan dengan baik.

Tahap berikutnya adalah pembuatan struktur project yang terdiri dari file utama aplikasi, folder template HTML, folder static untuk aset tampilan, serta database monitoring. Setelah struktur project selesai dibuat, dilakukan implementasi monitoring engine yang bertugas melakukan pengecekan host secara otomatis menggunakan ping untuk memperoleh nilai latency, jitter, packet loss, dan status host.

Data hasil monitoring kemudian disimpan ke dalam database SQLite untuk kebutuhan analytics, log monitoring, dan dokumentasi jaringan. Selanjutnya dilakukan pembuatan dashboard berbasis web menggunakan Flask, HTML, CSS, dan JavaScript agar administrator dapat melihat informasi monitoring secara visual melalui browser.

Sistem juga diintegrasikan dengan Telegram Bot API untuk mengirim notifikasi otomatis ketika terjadi gangguan jaringan atau perubahan status host. Setelah seluruh fitur selesai dibuat, dilakukan proses pengujian sistem untuk memastikan seluruh fungsi monitoring berjalan dengan baik secara real-time. Tahap terakhir adalah deployment aplikasi menggunakan Nginx sebagai reverse proxy sehingga sistem dapat diakses dengan lebih stabil dan aman melalui jaringan.

1. Menyiapkan Raspberry Pi Sebagai Server

  • Install Raspberry Pi OS
  • Update sistem operasi
  • Mengaktifkan SSH
  • Menghubungkan Raspberry Pi ke jaringan internet
  • Mengecek IP address Raspberry Pi

2. Menginstall Dependensi Project

  • Install Python dan pip
  • Install virtual environment
  • Membuat folder project
  • Membuat virtual environment Flask
  • Install library Flask dan library monitoring

3. Menjalankan Project Flask

  • Membuat file app.py
  • Membuat route dashboard
  • Menjalankan Flask server
  • Menguji akses dashboard melalui browser

4. Mengkonfigurasi Nginx Sebagai Reverse Proxy

  • Install Nginx
  • Membuat konfigurasi virtual host
  • Menghubungkan Nginx ke Flask
  • Restart service Nginx
  • Menguji akses menggunakan IP server

5. Menghubungkan Domain faisaljtd.my.id

  • Mengarahkan DNS domain ke IP public server
  • Mengatur port forwarding pada router
  • Menguji akses domain dari internet

6. Membuat Dashboard Monitoring

  • Membuat tampilan dashboard utama
  • Menambahkan navigasi dashboard
  • Membuat layout monitoring menggunakan Bootstrap

7. Menampilkan Statistik Monitoring

  • Mengambil data monitoring host
  • Menghitung host aktif dan host down
  • Menampilkan statistik dalam card dashboard

8. Menampilkan Status Host

  • Membuat card status host
  • Menampilkan informasi IP host
  • Menampilkan status UP dan DOWN
  • Memberikan indikator warna status

9. Membuat Grafik Monitoring

  • Mengintegrasikan Chart.js
  • Menampilkan grafik latency
  • Menampilkan grafik packet loss
  • Menampilkan grafik uptime monitoring

10. Membuat Tabel Log Monitoring

  • Membuat database log monitoring
  • Menyimpan hasil monitoring ke database
  • Menampilkan log monitoring pada tabel dashboard

11. Membuat Event Log Gangguan

  • Mendeteksi host down
  • Mendeteksi timeout jaringan
  • Menyimpan event gangguan ke database
  • Menampilkan event log pada dashboard

12. Membuat Fitur Hapus Log Host

  • Membuat tombol hapus log
  • Membuat route delete pada Flask
  • Menghapus data log dari database

13. Membuat Fitur Export Excel

  • Install library openpyxl dan pandas
  • Mengambil data monitoring dari database
  • Mengubah data menjadi file Excel
  • Membuat tombol download Excel

14. Memperbaiki Error Download Excel

  • Mengganti parameter attachment_filename
  • Menggunakan parameter download_name
  • Menguji kembali proses download file

15. Memperbaiki Format File Excel

  • Mengubah export dari CSV ke XLSX
  • Mengatur header tabel Excel
  • Menambahkan border dan auto width
  • Membuat tampilan Excel lebih rapi

16. Membuat Fitur Tambah Host

  • Membuat form tambah host
  • Menyimpan IP host ke database
  • Menampilkan host baru pada dashboard

17. Membuat Fitur Tambah Admin

  • Membuat tabel user admin
  • Menambahkan username dan password
  • Menggunakan hash password untuk keamanan

18. Membuat Pengaturan Threshold Monitoring

  • Menentukan batas latency
  • Menentukan batas packet loss
  • Menyimpan threshold ke database

19. Membuat Pengaturan Interval Monitoring

  • Menentukan interval monitoring
  • Menjalankan monitoring otomatis secara berkala
  • Menyimpan interval monitoring

20. Membuat Pengaturan Batas Log

  • Menentukan jumlah maksimal log
  • Menghapus log lama secara otomatis
  • Menjaga ukuran database tetap stabil

21. Memperbaiki Tampilan Halaman Pengaturan

  • Membuat tampilan lebih responsive
  • Menambahkan card dan sidebar
  • Menyesuaikan layout Bootstrap
  • Mempermudah navigasi pengaturan

22. Pengujian Sistem

  •  Menguji monitoring host
  • Menguji dashboard realtime
  • Menguji export Excel
  • Menguji akses domain
  • Menguji fitur pengaturan
  • Menguji performa Raspberry Pi sebagai server

Arsitektur Jaringan




Alur Flowchart







Hasil dan Pembahasan


1. Dashboard Monitoring Berjalan

2. Monitoring Host Berjalan



3. Detail Host Berjalan

Berdasarkan hasil implementasi sistem NetMonitor, seluruh fitur utama monitoring jaringan berhasil dijalankan dengan baik melalui dashboard berbasis web. Pada halaman pengaturan monitoring, sistem berhasil menjalankan proses monitoring host secara otomatis dengan status monitoring aktif dan interval pengecekan setiap 5 detik. Administrator dapat melakukan pengaturan monitoring, menambahkan host yang akan dipantau, menentukan batas alert, serta menambahkan akun admin baru secara langsung melalui dashboard. Hal ini menunjukkan bahwa sistem telah berhasil mengintegrasikan backend Flask, database monitoring, dan antarmuka web dalam satu sistem yang terpusat.

Selain itu, halaman detail host berhasil menampilkan hasil monitoring jaringan secara realtime dalam bentuk visualisasi grafik. Sistem mampu menampilkan grafik latency, packet loss, serta histori monitoring host dengan baik. Data monitoring yang tersimpan di database berhasil diproses dan divisualisasikan menggunakan grafik interaktif sehingga administrator dapat memantau perubahan kondisi jaringan secara lebih mudah dan informatif. Adanya fitur filter grafik juga membantu proses analisis performa jaringan berdasarkan rentang waktu tertentu.

Dari hasil tampilan dashboard dapat diketahui bahwa sistem monitoring tidak hanya menampilkan status host, tetapi juga mampu membantu administrator dalam mendeteksi gangguan jaringan seperti kenaikan latency, packet loss tinggi, maupun ketidakstabilan koneksi. Visualisasi data secara realtime membuat proses monitoring menjadi lebih efisien dibandingkan metode manual menggunakan terminal atau perintah ping secara langsung.

Secara keseluruhan, implementasi sistem NetMonitor berhasil memenuhi tujuan utama project yaitu membangun sistem monitoring jaringan berbasis web yang mampu melakukan pemantauan host secara otomatis, realtime, terstruktur, dan mudah dianalisis. Integrasi antara Flask, SQLite, dashboard interaktif, dan monitoring engine membuat sistem dapat digunakan sebagai solusi monitoring jaringan yang ringan, efektif, dan mudah diakses melalui browser.


Kesimpulan

Berdasarkan hasil implementasi, project NetMonitor berhasil dikembangkan sebagai sistem monitoring jaringan berbasis web yang mampu memantau kondisi jaringan secara real-time. Sistem ini dapat menampilkan parameter penting seperti latency, jitter, packet loss, status host, grafik monitoring, event gangguan, serta log monitoring dalam satu dashboard yang terpusat. Dengan adanya dashboard ini, administrator dapat memantau kondisi jaringan dengan lebih mudah tanpa harus melakukan pengecekan manual menggunakan terminal.

Selain fungsi monitoring utama, sistem juga dilengkapi fitur analytics monitoring, detail host, Telegram Alert, activity log, dan export Excel untuk mendukung proses analisis, dokumentasi, dan pelaporan jaringan. Penggunaan Flask, SQLite, Nginx, serta integrasi monitoring otomatis membuat sistem lebih ringan, efisien, dan mudah diakses melalui browser. Dengan demikian, NetMonitor dapat membantu administrator dalam meningkatkan efisiensi monitoring jaringan, mempercepat deteksi gangguan, serta menyediakan riwayat data yang terstruktur untuk evaluasi performa jaringan.

Post a Comment

0Comments

Post a Comment (0)