One of the hottest areas in networking today is Layer 4 load balancing, a function that's increasingly vital for the smooth operation of a company's e-business site.
There are two basic types of load balancers: Server-based and hardware-based. A server-based load balancer runs on a standard operating system on a PC box. Special software runs on top of the operating system to perform the load-balancing functions.
Hardware-based load balancers, typically running on a switch, employ an Application Specific Integrated Circuit (ASIC) chip to perform the basic IP functions associated with load balancers. ASICs are chips with the software for a specific function hard-wired into the circuitry, rather than a chip with a general instruction set, such as a Pentium.
The advantage of having the software hard-coded into a chip is speed. Without the abstraction layer of software on top of the operating system on top of machine code on top of a general processor, you can perform a task much more efficiently.
The drawback is a lack of flexibility, because an ASIC chip cannot be reprogrammed. However, because IP functions don't change, those tasks can be allocated to an ASIC while higher functions - such as deciding which server to send a particular packet to - can be done on a general processor.
If the history of Layer 3 routers is any indication, hardware-based products will probably prevail in the long run. In the early days of routing, routers were servers with additional code to perform routing functions. The levels of traffic did not necessitate anything supplementary. As traffic levels increased, solutions were needed to handle higher packets per second and address the limitations of software-based network functions and the limited I/O available on a server. IP functions were burned into ASIC chips, and the modern router was born. While a rudimentary operating system (such as Cisco's IOS) handles the routing protocols and underlying algorithms, a chip handles IP functions at a much faster rate than an operating system could. It's a simple matter of computer science: The fewer layers of abstraction, the more efficient the operations are, creating greater speed and capacity.
On a competitive level, server-based load balancers are sprouting up all the time, and the server-based segment of the market will most likely reach a saturation point. There are even several Linux-based freeware load-balancing projects in development (www.linas.org/linux/load.html). Although current Web site traffic levels generally do not hit the performance wall of server-based load balancers, it is only a matter of time before they do.
Given all these factors, switch vendors seem to be the perfect arena for the next generation of load balancers. Alteon Websystems, Foundry Networks and ArrowPoint Communications offer load-balancing switches, and Extreme Networks is rolling out load-balancing functionality. The advantages of these devices are they are built with ASIC chips and backplanes capable of handling multiple gigabytes of bandwidth.
Layer 5 load balancing, also known as URL parsing, is fast becoming a standard in load-balancing products. Layer 5 load balancing differs from Layer 4 in that Layer 5 can differentiate based on the URL rather than just the IP address and port number. Currently, Alteon WebSystems, ArrowPoint Communications, Foundry Networks and F5 Networks offer Layer 5 features.
The latest wrinkle
Firewall load balancing is a new product category. Many firewalls run on a server platform, so they suffer the same bandwidth limitations as their server-based, load-balancing counterparts. One way to overcome those limitations is to distribute the load among several firewalls or groups of firewalls. Alteon and Foundry offer this feature, and other vendors will most likely follow suit.
Overall, the Layer 4 load-balancing industry is off to a strong start, but there's still a long way to go. Eventually, code releases will stabilize and the technology will enjoy a greater degree of reliability. Layer 4/Layer 5 load balancing is and will continue to be an integral part of the modern Web infrastructure, and new, creative ways to implement load balancing will be developed.
Bourke is a senior performance engineer with GlobalCenter. He can be reached at firstname.lastname@example.org.