What is a Load Balancer?by Bethany Hendricks on Glossary • November 26, 2020
A load balancer is a network function or application service that distributes client traffic across a pool of backend/application servers.
Load balancing can be implemented to operate at either Layer 4 (transport layer) or Layer 7 (application layer) of the OSI networking model. Layer 4 load balancing entails distributing traffic for protocols that operate at the transport layer (TCP, UDP) and sometimes at the network layer (IP). Layer 7 load balancing operates at the application layer and makes balancing decisions based on data content and metadata available at that layer.
Different load balancing algorithms can be employed to operate on the data available at the relevant OSI networking layer to facilitate decision-making around the distribution of client traffic. Common hashing algorithms used include round-robin, weighted least connections, and resource based, among others.
A load balancer monitors the backend servers they proxy by performing health checks to the specified network (layer 4) or application (layer 7) endpoints. A load balancer takes the health of backend servers into account when deciding what server to send client traffic to, in addition to other decision-making mechanisms such as hashing.
A load balancer can be provisioned as an appliance or, more recently, as a service using the Load Balancing as a Service model.