Application Delivery Controller Definition
Application Delivery Controllers (ADCs) provide load balancing, application acceleration, SSL termination, and security along with seamless access to applications. ADCs may be delivered in three form factors: hardware appliances, virtual appliances (the software extracted from legacy hardware) and software-only load balancers.
What Is an Application Delivery Controller?
Application Delivery Controllers (ADCs) provide security and access to applications at peak times. As computing moves to the cloud, software ADCs perform tasks that have been traditionally performed by custom-built hardware. They also come with added functionality and flexibility for application deployment. They let an organization quickly and securely scale up its application services based on demand in the cloud. Modern software ADCs allow organizations to consolidate network-based services. Critical capabilities for application delivery controllers include SSL/TLS offload, caching, compression, intrusion detection, web application firewalls, and service mesh for container applications. This creates even faster delivery times and greater scalability.
What Is an Application Delivery Controller Used For?
Traditional application delivery controllers (ADCs) were used for load balancing application servers to manage traffic and application deployment. Next-generation ADCs have new functions that include SSL offloading, visibility, application analytics, multi-cloud support, TCP optimizations, rate shaping and web application firewalls.
How Do Application Delivery Controllers Work?
An application delivery controller (ADC) is primarily a load balancer that manages traffic flow to servers. ADCs help optimize end-user performance and application deployment. ADCs also assist in application acceleration and provide security for applications.
An ADC uses techniques like application classification, compression and reverse caching to improve acceleration of business applications. ADCs determine security needs as the single point of control for multiple servers.
ADCs handle distributed denial-of-service (DDoS) attacks and secure web applications against common threats using web application firewalls (WAFs). ADCs can also provide SSL offloading and application autoscaling.
The following techniques are most commonly used by ADCs to enhance application performance:
• Load balancing: Distributes incoming requests across a group of servers. Algorithms consider server capacity, type of content requested and client location to improve performance.
• Caching: Stores content locally on the ADC, which speeds delivery and reduces server load.
• Compression: Large files such as images, music and video are compressed to speed delivery and increase network capacity.
• Offloading SSL processing: The ADC replaces backend servers as the SSL endpoint for client connections. By doing the decryption and encryption work for servers, the ADC speeds content delivery by freeing up servers for other tasks.
Where Is an Application Delivery Controller Deployed?
An application Delivery Controller (ADC) is positioned between enterprise web servers and end-customers to manage application traffic. For additional security, ADCs often deploy a web application firewall in addition to the load balancer.
When Is an Application Delivery Controller Required?
Application delivery controllers (ADCs) are essential for industries such as retail, financial services, ecommerce, and healthcare that have hundreds of web servers to handle thousands of simultaneous customer requests. Load-balancing provided by ADCs ensures applications run smoothly despite spikes in traffic.
Does Avi Networks Offer an Application Delivery Controller?
Yes. The Avi Vantage Platform offers an intent-based and software-defined solution that is disrupting the ADC (load balancer) market and changing the way that businesses consume application services through automation and analytics. Avi Vantage is a multi-cloud and enterprise-grade solution that accelerates cloud transformation for enterprises with on premises (traditional / monolithic) and public cloud (containerized) applications.
For more information on application delivery controllers see the following resources: