Load Balancing

The 3 Generations of Load Balancing, According to a Lifer

Load balancing is a pretty narrow niche in the world of IT, but it has been my professional home for over 20 years. In fact, if you work in load balancing, you’ve potentially used technology with my name on the patent!

My first foray into load balancing was with F5 Networks, where I was a solutions architect for 13 years. From there, I joined Avi Networks in the same role (and as their first employee!). And since VMware’s acquisition of Avi Networks in 2019, I’ve been the Director of Global Sales Enablement for their load balancing product VMware NSX Advanced Load Balancer (Avi).

As a load balancing “lifer”, I get a lot of questions from customers and colleagues asking me why I’ve stayed in this industry for as long as I have. The main reason I find load balancing fascinating is that it is one of the few areas of IT that requires a deep understanding of the application, the infrastructure, and the network — all of which are constantly evolving. Twenty years ago application developers didn’t know much about networking and network engineers didn’t know much about applications. The load balancer has a very strategic role to bring all of these elements together, and I still find it exciting especially as enterprises modernize from monoliths to microservices.

Today, we are entering the 3rd generation of load balancing. But what does that mean? What are the previous generations? Well, let’s explore each.

The 1st Generation of Load Balancing

The first load balancers offered connection-based traffic management between clients and servers. These hardware appliances were used primarily between 1996-2004. This was a much simpler time. The application and server were one construct. There were no VMs. There was no cloud.

During the dot-com boom (bubble), enterprises realized that applications were becoming critical to the business. More than a few people were hitting their applications and they needed a way to provide high availability and scalability for their servers.

F5 Networks became the dominant player in load balancing in this era with the introduction of BIG-IP hardware which ran TMOS (traffic management operating system).

The 2nd Generation of Load Balancing

The second wave of load balancers were designed to connect clients and applications (not necessarily servers) deployed in a single infrastructure environment. Around 2004, virtualization took hold of the IT industry (thanks, VMware!) which led to significant changes to application architectures and infrastructure. Applications and servers were no longer a single construct, and load balancers now had to become a full application proxy.

This was significantly more complex than the 1st generation. NetScaler made a splash into the load balancing industry with gen 2 products that were ideal for virtualized environments. F5 Networks was caught off guard by this shift and had a difficult transition into gen 2. I was at F5 Networks during this time and I remember our teams working tirelessly to do a complete redesign of BIG-IP and an entire rewrite of the TMOS code. F5 Networks got their 2nd generation load balancers to market about a year after NetScaler did. Other vendors that did not rewrite their code quickly became obsolete.

The 3rd Generation of Load Balancing

Today’s modern applications are deployed as microservices on containers across hybrid and multi-cloud environments. Once again, enterprises demanded a modern approach to providing high availability, scalability, and security to this new breed of application and infrastructure.

In late 2012, I saw the rise of the cloud and heard the early rumblings of containers. This evolution in apps and infrastructure was going to be orders of magnitude greater than virtualization and would require a fresh new take on load balancing. Unfortunately, the application delivery industry as a whole was still too focused on hardware appliances and traditional applications.

Around this time I met the founders of Avi Networks and we shared a similar understanding of what the next generation of applications and infrastructure required from the load balancer. In 2013, I became the first employee of Avi Networks and we embarked on building 3rd generation load balancing.

The 3rd generation of load balancing is a software-defined fabric that spans across data centers and clouds. The core of this load balancing fabric is a centralized controller that automates L4-L7 services to provide high availability and security at any scale for container-based applications as well as traditional applications running on virtual machines and bare metal.

At Avi Networks, I’ve been able to help hundreds of the worlds largest technology, financial services, and media companies make the transition to 3rd generation load balancing. It has become a passion of mine. And now that we are part of VMware, I am excited to share this passion to an even greater audience.

Today at VMware, my time is spent primarily teaching workshops on this topic. And due to the current pandemic, my workshops have transitioned to a virtual format which allows for a lot more flexibility and capacity for attendance. So if this topic is of interest to you and you want to talk shop with a load balancing lifer, please check out the upcoming virtual workshop calendar.