31 Aug Microservices: Scalability For An Emerging Networking Paradigm
It seems the technology industry is always coining new buzz-words. “Intent-based” has been all the rage in networking lately, with Cisco Systems pushing its highly visible “Network. Intuitive” strategy. Today I’d like to talk about the buzz-word “disaggregation”—the notion of separating functions such as computing, storage, and networking in order to drive organizational efficiency and agility. While this concept isn’t entirely new, it is in respect to software development. By disaggregating the manner in which developers write code, similar benefits can be realized. In the past, this concept was referred to as service-oriented architecture. Today, it is best captured by the term microservices.
What are microservices?
Microservices are modular components that can be developed and deployed independently, that aim to improve the agility of software development and maintenance through the elimination of interdependence. The benefits are numerous, including but not limited to better scalability, faster deployment, and improved maintenance through an expedient issue isolation and resolution scheme. I like to think of microservices as a set of Lego building blocks like the kind I played with as a kid. Developers can build a series of blocks that comprise an application and link them together through common application program interfaces (APIs). The additional benefit of microservices is that there is less of a need to coordinate across development teams. Since each microservice is independent, software teams can focus on one particular component in isolation from the others.
You’ve probably interacted with a microservice and never knew it. Are you a Netflix subscriber? Do you shop on Amazon.com? Do you bid on eBay and use PayPal ? All of these companies rely on the flexibility and scalability of microservices to support millions of daily application requests.
How are microservices revolutionizing networking?
As it relates to networking, there are three companies that I believe are innovating with microservices.
Avi Networks provides application services, including a software load balancer, a firewall, and a self-service IT functionality, and more. Cisco Systems recognizes the potential of application services. In addition to reselling the Avi Vantage platform, the networking giant made an investment in Avi’s latest round of venture capital funding in June of this year. Vantage integrates with Cisco’s Application Centric Infrastructure (ACI) and in conjunction powers Cisco data center intent-based networking and automation solutions. The microservices architecture allows the Vantage platform to automate, scale, and be managed from a centralized location. That’s very compelling from an operational expense savings perspective, considering the increased efficiency and decreased reliance on human interaction.
MuleSoft is focused on helping companies connect applications, data, and devices through common APIs. What I find compelling about MuleSoft is that its Anypoint platform facilitates the ability to re-architect legacy, proprietary infrastructure into a microservices framework that can be deployed on-premise as well as to the public and/or private cloud. That capability and flexibility has the potential to be transformative; MuleSoft claims that new applications can be launched three times faster and boost overall productivity by 300%.
Anuta Networks was one of the first companies to apply a microservices architecture to networking applications. The company’s ATOM platform is comprised of a series of containers, each providing a specific function such as discovery, provisioning, telemetry, analytics, or assurance. Containers are standalone packages of software that are completely self-contained and include everything required to run a particular application. Through the deployment of microservices, Anuta utilizes containerization to support rolling upgrades and integration with other enterprises software applications such as performance monitoring and machine learning/ artificial intelligence systems. The company also claims massive scalability for one million or more network devices. As a case in point, Anuta customer Tata Communications was able to leverage microservices functionality to reduce network device provisioning time by 90%. That’s a pretty impressive outcome.
Enterprise networking is undergoing rapid change. Software-defined networking topologies are being embraced within many organizations for their ability to simplify operations and reduce cost. Microservices are enabling this revolution, delivering web-scale, high availability, and orchestration services that monolithic software design can’t measure up to. Granted, there are some disadvantages in employing microservices—the difficulty of debugging defects and the additional overhead in managing the coordination between microservices, to name a few. Still, the benefits of employing microservices to enhance networking functionality far outweigh the trade-offs.