Apa itu application delivery controller (ADC)?
Application delivery controller (ADC) adalah komponen jaringan yang mengatur dan mengoptimalkan cara client machine terkoneksi ke web server dan enterprise application server. Secara umum, controller adalah perangkat hardware atau program software yang mengatur atau mengarahkan aliran data antara dua entitas.
ADC melakukan load balancing antar server dan mempercepat performa aplikasi. Seiring perkembangan teknologi, ADC generasi baru memiliki fungsi lebih luas dibandingkan load balancer tradisional atau ADC generasi pertama, misalnya Secure Sockets Layer/Transport Layer Security (SSL/TLS) offloading, rate shaping, serta web application firewall.
Cara kerja application delivery controller
Secara konsep, ADC berfungsi sebagai load balancer. Ia mengoptimalkan performa end-user, reliability, pemakaian resource data center, dan keamanan untuk enterprise application. Namun, ADC juga punya fungsi tambahan lain, di antaranya:
- Application acceleration.
- Caching.
- Compression.
- Traffic shaping.
- Content switching.
- Multiplexing.
- Application security.
ADC mempercepat performa aplikasi yang berjalan di atas wide area network (WAN) dengan teknik optimasi seperti application classification, compression, dan reverse caching.
Biasanya, ADC ditempatkan di belakang firewall dan di depan satu atau lebih application server. Ia bertindak sebagai single point of control yang bisa menentukan kebutuhan keamanan aplikasi serta menyediakan authentication, authorization, dan accounting (AAA) yang lebih sederhana.

Fitur ADC
ADC bisa di-deploy secara fisik sebagai hardware appliance atau secara virtual sebagai software yang berjalan di server berbasis x86. Virtual ADC sangat berguna di data center enterprise skala besar maupun lingkungan cloud computing, di mana kapasitas perlu bisa scale up/down sesuai kebutuhan aplikasi. Sistem ini juga semakin banyak mendukung fitur virtualisasi, multi-tenancy, serta bentuk autentikasi terpusat.
Load balancing
ADC mendukung load balancing pada Layer 3, 4, dan 7.
– Di Layer 3 dan 4, traffic dibagi berdasarkan subnet, alamat IP, informasi sesi TCP, protokol, dan nomor port.
– Di Layer 7, load balancing berbasis konten memungkinkan distribusi traffic berdasarkan URL, domain, HTTP header, atau query.
Setiap ADC berbeda dalam hal dukungan untuk berbagai tipe aplikasi.
Monitoring
ADC mengatur koneksi antar perangkat dengan metode seperti round robin, response time, atau least packets. ADC modern menggunakan monitoring untuk memeriksa health server sebelum mengirim traffic, agar tidak terkirim ke server yang overload. Proses monitoring ini mendukung banyak protokol, termasuk DNS, FTP, HTTP, HTTPS, TCP, UDP, dan lainnya.
Multiplexing
Dengan melakukan TCP multiplexing, ADC mengurangi jumlah sesi TCP untuk menghemat bandwidth jaringan, sehingga bisa mengirim banyak sinyal secara paralel. Multiplexing sangat bermanfaat untuk application server, karena beban perangkat dan traffic meningkat drastis seiring bertambahnya sesi baru.
Protocol integration
Mayoritas ADC juga mendukung integrasi dengan jaringan yang ada dan protokol routing dinamis, seperti Open Shortest Path First (OSPF), Border Gateway Protocol (BGP), dan Virtual Extensible LAN (VXLAN). Selain itu, ADC bisa mengambil alih proses SSL/TLS dari server, mempercepat aplikasi, dan menjaga high availability.
Keamanan ADC
ADC berperan penting dalam network security. Salah satu manfaatnya adalah menjadi lini pertahanan pertama terhadap serangan distributed denial-of-service (DDoS). ADC menggunakan teknik seperti firewall load balancing, intrusion prevention and detection, serta web application firewall (WAF) untuk menangani traffic serangan DDoS agar tidak membanjiri server.
Selain itu, ADC juga bisa menghentikan serangan berbasis SSL/TLS tunneling. Beberapa ADC bahkan dilengkapi DNS application firewall untuk menghentikan lonjakan traffic mendadak ke server DNS.
WAF juga digunakan untuk mencegah cross-site scripting (XSS). Bergantung pada vendor, fitur ini bisa jadi sudah built-in dalam lisensi ADC atau tersedia sebagai add-on terpisah. WAF mampu memblokir SQL injection, mencegah cookie poisoning, dan melindungi akses ke data sensitif.
Beberapa ADC juga menyediakan data loss protection (DLP). Dengan fitur ini, ADC akan memeriksa data untuk memastikan kesesuaian dengan kebijakan perusahaan, menandai atau memblokir data yang berbahaya atau melanggar kebijakan tersebut.
Kelebihan dan kekurangan ADC
ADC menyediakan load balancing aplikasi, pengiriman aplikasi yang aman, serta manajemen perilaku aplikasi. Mereka bisa diinstal sebagai hardware maupun software virtual, memberi fleksibilitas lebih bagi enterprise dalam deployment. ADC juga mendukung penggunaan microservices di lingkungan enterprise dengan mengelola traffic data internal yang dihasilkan layanan tersebut.
ADC modern kini mendukung aplikasi berbasis container dan analitik yang lebih komprehensif. Upgrade ini memungkinkan enterprise mengelola traffic lebih efisien dalam operasionalnya. Hasilnya, ADC menawarkan lebih banyak fitur dengan performa yang meningkat.
Namun, ada juga kekurangannya. Fitur ADC biasanya bersifat proprietary, sehingga sulit bagi enterprise untuk membandingkan antar vendor. Setiap ADC memproses traffic dengan cara berbeda, yang bisa menimbulkan bottleneck performa atau masalah operasional lain. Proses dekripsi dan offloading SSL/TLS juga bisa mengonsumsi resource yang signifikan.
Catatan editor: Definisi ini awalnya ditulis oleh Eamon McCarthy Earls dan diperbarui oleh editor untuk meningkatkan pengalaman pembaca.