A. Pengetahuan Dasar Load Balancing
Load balancing adalah suatu metode yang digunakan untuk mendistribusikan beban kerja atau trafik secara merata di antara beberapa server atau sumber daya komputasi. Tujuannya agar lalu lintas dapat berjalan optimal, memaksimalkan throughput, memperkecil waktu tanggap dan menghindari overload pada salah satu jalur koneksi.
1. Fungsi Load Balancing
Beberapa fungsi load balancing antara lain
a. Menyediakan redundancy dengan menggunakan lebih dari satu unit failover scenario
b. Menginterupsi lalu lintas jaringan yang diarahkan ke sebuah situs tertentu
c. Menawarkan distribusi content-aware seperti melakukan pembacaan URL, intercepting cookies, dan XML parsing
d. Memonitor server yang ada serta memastikan server tersebut merespon lalu lintas
e. Membagi lalu lintas jaringan menjadi individual request dan menentukan server yang akan menerima individual request
Kinerja algoritma load balancing diukur dengan berbagai parameter berikut ini.
a. Overload rejection
b. Fault toleran
c. Forecasting accuracy
d. Stabilitas
e. Sentralisasi atau desentralisasi
2. Tipe Load Balancing
a. Hardware load balancing
Beberapa load balance hardware di antaranya adalah Cisco System Casalyst, Coyote Point, F5 Network BIG-IP, dan Baraccuda Load Balance.
b. Software load balancing
Perangkat keras yang memengaruhi performa metode software load balancing adalah penggunaan kartu jaringan (Network Interface Card), kapasitas RAM yang digunakan, media penyimpanan yang besar, dan sebagainya. Jenis load balancing software yang paling banyak digunakan adalah Linux Virtual Server.
3. Fitur Load Balancing
Beberapa fitur pada load balancing hardware maupun software, yaitu sebagai berikut.
a. Proteksi dari serangan DDoS
Fitur jenis ini melakukan prosedur SYN Cookies dan delayed-binding pada saat terjadi serangan SYN Flood
b. Priority queuing
Fitur jenis ini berguna untuk memberikan perbedaan prioritas traffic pacet
c. Kompresi HTTP
Fitur jenis ini memungkinkan data bisa mentransfer objek HTTP dengan memanfaatkan pengguna utilisasi kompresi gzip yang terdapat di semua web browser modern
d. Aktivitas berdasarkan prioritas
Fitur jenis ini digunakan pada saat load jaringan mengalami kelambatan, dimana server akan membagi aktivitas berdasarkan prioritas dan link cadangan
e. Spam Filtering
Spam merupakan penyalahgunaan dalam pengiriman berita elektronik untuk menampilkan berita iklan dan keperluan lainnya yang mengakibatkan ketidaknyamanan bagi para user web. Bentuk berita spam yang umum dikenal meliputi spam surat elektronik, spam instan messaging, spam Usenet newsgroup, spam mesin pencari informasi web, spam blog, spam berita pada telepon genggam, spam forum internet, dan lain lain.
f. TCP Buffering
Fitur jenis ini dapat membuat respon buffer dari server dan berakibat dapat pada task lebih cepat.
g. Asymmetric load
Fitur jenis ini berupa rasio yang dapat dibuat dengan menetukan koneksi menjadi primary yang dianggap terbaik dari segi backbone-nya dan path routingnya.
h. HTTP Caching
Fitur jenis ini dapat menyimpan content statis, sehingga beberapa request dapat ditangani tanpa harus melakukan kontak ke web sercer diluar jaringan yag berakibat akses terasa makin cepat.
i. Content Filtering
Beberapa load balancing dapat melakukan perubaha trafik pada saat dijalankan.
j. HTTP Security
Fitur jenis ini memiliki beberapa karakteristik sebagai system load balancing yaiu menyembunyikan HTTP error pages, menghapus identifikasi header server dari respons HTTP, serta melakukan enkripsi cookies agar user tidak dapat memanipulasinya.
4. Jenis-Jenis Algoritma Load Balancing
Algoritma load balancing yang paling sederhana yaitu membagi beban secara bergiliran dan berurutan dari satu server ke server lain. Jenis-jenis dari algoritma load balancing antara lain
a. Algoritma rasio
Algoritma jenis ini sebenernya sebuah parameter yang diberikan untuk setiap server yang akan dimasukkan ke dalam sistem load balancing. Server dengan rasio terbesar diberi beban besar dan server dengan rasio kecil akan lebih sedikit diberi beban.
b. Algoritma round robin
Algoritma round robin merupakan algoritma yang paling sederhana dan banyak digunakan oleh perangkat load balancing. Keuntungan dari algoritma round robin adalah bahwa hal itu tidak memerlukan komunikasi antarproses.
c. Algoritma least connection
Algoritma least connection akan melakukan pembagian beban berdasarkan banyaknya koneksi yang sedang dilayani oleh sebuah server. Server dengan pelayanan koneksi yang paling sedikit akan diberikan beban berikutnya akan masuk.
d. Algoritma fastest
Algoritma jenis ini melakukan pembagian beban dengan mengutamakan server-server yang memiliki respons yang paling cepat.
5. HAProxy (High Availability Proxy)
HAProxy bermanfaat sebagai proxy. HAProxy identik dengan perangkat lunak open source yang berguna untuk TCP load balancing.