Load Balancers for UK business
Today’s data centre manager faces an extraordinarily challenging business environment, with exploding traffic and rapid technological change. A surge of new content types such as Voice over IP, streaming video, apps and VPN, coupled with diversifying access technology and demands for 24/7 working, simply means more data. Cisco®, for example, estimate that global data traffic will triple over the next five years to reach over eight zettabytes per annum, with the typical data centre doubling its workload.1 Throw in an architectural shift towards the use of cloud-based delivery, agile working and Software-as-a-Service (SaaS) and it’s a potent mix.
1 Cisco, Cisco Global Cloud Index: Forecast and Methodology 2013–2018 White Paper, (San Jose, CA: Cisco, 2014), http://www.cisco.com/c/en/us/solutions/collateral/service-provider/global-cloud-index-gci/Cloud_Index_White_Paper.html
Balancing computer and data traffic resources, managing networks and smoothly handling new technologies and equipment has never been more important.
A key weapon for the data centre manager is the load balancer. It’s not particularly new – load balancing has been a keystone of network management for at least twenty years – but modern load balancing offers highly sophisticated support for today’s complex and diverse operating environments.
In general, computer science terms, load balancing is the systematic process of distributing computing workloads across a number of resources such as servers or networks in order to deliver optimal use and efficiency. However, the term is most commonly applied to systems that distribute incoming network data traffic across a pool (‘farm’ or ‘cluster’) of back-end servers.
The classic example of this scenario, known as reverse proxy, is publishing a website and the process of distributing HTTP requests from client browsers to its available servers. If traffic becomes too heavy on a particular server it can be automatically rerouted to other servers based on availability, performance, or location. The load balancer does this by dynamically changing the IP and port address of the intended destination web server and, effectively, rerouting it.
In effect a load balancer acts as the traffic police, directing network data across a server pool to maximise efficiency and utilise capacity.
Why use a load balancer?
Load balancing is essential for a number of reasons. It allows for efficient and scalable use of server resource capacity and improves the user experience by ensuring availability, responsiveness and seamless interaction. It also facilitates traffic flow policies and helps ensure data centres can deal with unanticipated traffic spikes and network congestion issues. It also provides a way to deal with an individual server being out of service (preventing ‘single point of failure’ problems), and makes it easier to dynamically add and remove servers, and adopt new business and IT working practices.
Load balancing’s ability to help provide a seamless user experience is particularly important in the modern Web environment. This ability, known as session persistence, is often essential; for example, in e-commerce, where details of a user’s session are stored locally in the client browser. If a server fall-over is not handled correctly during a user interaction this can cause performance problems or even a financial transaction failure.
Types of Load Balancer
Physically, load balancers come in two fundamental format types: as specialized, proprietary hardware devices; or as software which can be incorporated into standard, commodity server hardware, virtualized architectures or used via a cloud environment.
Load balancing can be performed at different levels in the networking technologies hierarchy (i.e. the OSI reference model). The most common are layers 4 (transport) – that is acting on TCP or UDP packets – and 7 (application) – that is dealing with the content of messages (e.g. HTTP). Layer 7 load balancing is much more sophisticated and responsive to needs, allowing for more ingenious balancing decisions that make use of information in HTTP headers, cookies and associated data within the application message. It is this layer at which reverse proxy decisions are normally made. Modern load balancers tend to make use of both levels and are often referred to as 4/7 or 4-7 load balancing.
Load balancers also vary as to the precise technical balancing act they are undertaking and their position in the data centre architecture. Examples of these different types include link balancers, perimeter load balancers and cloud load balancers. A modern data centre environment is likely to have a highly developed mix of these.
Load Balancing Algorithms
Like many computer technologies load balancing relies at root on computer science theory; in this case on load balancing algorithms. Fundamentally a load balancer is only as good as the algorithm it employs to distribute traffic. There are a number available and each has its own benefits and drawbacks. Most load balancers offer a configurable choice and systems administrators make decisions based on their own networking requirements.
Key algorithms include:
- Round Robin: a simple process of passing incoming traffic to servers in turn, hopping from one to the next.
- Least Connections: traffic is sent to the server with the fewest current connections.
- Weighted Round Robin: allows the administrator to assign a weight factor to each server based on its traffic handling abilities. Higher weighted servers are favoured by the algorithm as traffic is distributed.
- IP hash: the IP addresses of the source and destination is used to determine which server is sent the traffic, via a hash function calculation.
More sophisticated load balancers offer what is known as adaptive scheduling, a process of dynamically assigning the algorithmic weights to servers based on real-time information about their current memory load, server request connections and so forth.
Application Delivery Controllers
Although load balancing is standard in almost all data centres, the requirements have changed dramatically in recent years, and load balancers have evolved to cope with new circumstances. Legacy load balancers can distribute and balance traffic loads across multiple servers, but they do not provide advanced traffic management. For example, modern load balancers allow distribution of workload across data centres in different geographical locations (Global Server Load Balancing (GSLB)), an important consideration in the globalised business environment.
These modern load balancers are increasingly being referred to as Application Delivery Controllers (ADCs), an emerging new class of product that provides important additional capabilities like caching, data compression and security.
activereach Load Balancing solutions
activereach offers a wide range of expertise, consultancy and support for the implementation of advanced load balancing technologies in even the most complex data centre environments. Whether it is hardware-based, virtualized software, or cloud, our world-class team can support an organization’s rapid adoption of modern, highly secure application delivery controller technologies and balancing techniques.