Oct 24, 2017

AOS Network Automation Services: Bridging Two Worlds

When we consider the networking industry, there is a clear and painful gap between the networking experts that need sophisticated applications to manage complex network services and the existence of these applications.Apstra recently launched AOS® 2.0 and introduced the Developer persona at Networking Field Day 16. Why did we decide to focus on the Developer persona at a network engineering event? Because if you are a network engineer considering a future in data center network automation, or you are on a software engineering team looking to develop lifecycle network service applications, you are really going to love the Apstra Operating System!

Today, professionals across many industries use sophisticated products that improve service, streamline operations, and achieve business agility. Surgeons, for example, use sophisticated medical equipment to perform procedures that save lives and improve the human condition. Structural architects use complex design engineering products to create blueprints for building modern cities. Auto mechanics use computer-based diagnostic systems to service today’s complex automobiles. A common theme emerges — experts use sophisticated solutions that they did not create to solve complex problems and achieve remarkable outcomes.

When we consider the networking industry, there is a clear and painful gap between the networking experts that need sophisticated applications to manage complex network services and the existence of these applications.

A New Approach Brings a Bright Future

Apstra believes in a future where network professionals will efficiently design the products they need and collaborate with software engineers to produce these solutions in weeks, not months or months not years. We envision a new process, and a new set of career steps for network engineers:  Network Automation Specialists and Network Automation Professionals. In our context of AOS operator and developer personas, we see people working together in a new way:

With Apstra AOS, network operators and developers can work together in new ways.

Everybody Plays, Everybody Wins

Operators are responsible for managing the lifecycle of network services.  They architect, build, deploy, and operate their networks.  They are the Users of AOS applications.  Developers are responsible for building the sophisticated AOS application products the Operators use.  AOS application specifications (“specs”) are documents that provide for a shared understanding between the two.

One of our “secret ingredients” is a new approach that enables the efficient and rapid development of sophisticated new AOS applications for network operators.  The spec defines AOS intent-based applications using well-defined software engineering methodologies.  Our approach to AOS application design and implementation solves a very critical problem — that most software engineers do not have network domain knowledge and much time is spent on this knowledge “impedance mismatch”.  The AOS application specification is a formal engineering approach that communicates the requirements of the application without requiring software engineers to have, or learn complex network domain expertise.  Want to learn more?  Keep reading!

These two groups using AOS network automation services work together in the following way:


  1. Network Automation Professionals are responsible for understanding the business level requirements and translating them into an AOS application specification.  They are in a way the product managers of AOS applications.  They create the bridge between the required network services and network engineering and operations-specific features, functions, user-experience, and outcomes.
  2. Network Automation Professionals and Software Engineers co-develop the AOS application software.  The Software Engineering team is responsible for the development of the complex network service lifecycle application logic.  This part of the app is not specific to any network vendor operating systems (NOS).  The Network Automation Professionals are responsible for the “plugin” modules that are specific to the NOS.  Stay tuned for an upcoming blog covering this co-development approach in more detail!


  1. Network Automation Specialists are responsible for using the AOS REST API to create scripts and other power-user like tools.  These “scripts” are created to improve the network team’s operational efficiency and agility.
  2. Network Engineers use the AOS application (GUI, CLI) and any internally developed power-tools created by the Network Automation Specialists.

Crossing the Network Automation Chasm

With Apstra and AOS, everyone will have the opportunity to learn new skills and advance their career in the network automation profession. Everyone means network engineers with varying degrees of automation experience, as well as software engineers that need to develop complex network automation solutions.

If you are a Software Engineer you will learn how to develop AOS applications using intent-based networking methodologies and AOS core technologies.  You may find this challenging, but perhaps excitingly so!  Building AOS applications require advanced Python developer skills and a mindset for thinking about complex distributed systems.  If you’ve been delivering Python-based products for a few years and are now focused on distributed systems, then you are going to love AOS.  Many of the mainstream compute distributed systems topics apply to the network.  The network is fundamentally a complex distributed system made up of hardware and software, produced by different network equipment vendors, spanning decades.  AOS provides the core technology — a technology that has been lacking in the market —  that now enables a new generation of advanced lifecycle network service automation solutions.

If you are a Network Engineer or Architect whose primary responsibility is translating business problems into network design solutions, and you do not have much interest or appetite for writing code, you will first learn how to create AOS application specifications.  You will learn to “think like a programmer” without having to actually be one.  As a network architect, you have a deep understanding of network design and the network mechanisms that make those designs real.  Working with Apstra you will learn to model those mechanisms and their aggregate behavior into the AOS application spec.  The Software Engineers use that spec to develop AOS applications that will validate that those network designs are being realized on an ongoing basis.  We refer to this intent-based validation process as “closed-loop”.  Perhaps after learning this new modeling and specification skill you will want to go on to writing code for AOS.  Apstra will help get you there.  As a network engineer today you can advance into a Network Automation Professional role, and that role can optionally include Python development for AOS device-oriented plugins.

Perhaps you are a Network Engineer just starting to learn Python, scripting in various forms, and maybe even putting together more complex tools using what can be found online and in the open-source community.  Maybe you feel there is too much to learn, and so many tools and libraries can be overwhelming.  Where do you start?  How do you start?  Working with Apstra will advance you into a Network Automation Specialist.  You will learn the same introductory materials as the developers, focusing on the fundamentals of AOS application specification and intent-based application modeling.  Your primary programming focus will be on using REST APIs and the advanced capabilities of GraphQL and LiveQuery systems that are included in all AOS applications.  You will attain the necessary skills to be the power user of AOS applications and create the tools your team needs to be efficient and your business agile.

Autonomous Networks are Achievable with Apstra on Your Side

Have you been on a network team sidelined by internal software teams that cannot deliver the solutions you need?  Have you been a software engineer on such a team? Apstra and AOS can help you build and deliver the solutions your business needs to be efficient and agile.  Are you working as a System Integrator contracted to deliver network solutions?  Perhaps you have tried and found that building-from-scratch network applications are much, much harder than you first considered.  Even after spending over a year on a project, you had to either give up or under deliver.  AOS enables you to deliver intent-based networking applications to manage different equipment vendors, network operating systems, and networking domains such as routing, security, switch, wireless, and who knows what comes next.  Using AOS enables your organization to deliver these applications in weeks or months.

At Apstra our mission is clear — deliver business agility with autonomous infrastructure.  AOS is purpose-built for creating the sophisticated network service applications, used by network experts, that will one day lead to autonomous infrastructure.  Apstra is already solving the technical problems that have beleaguered the networking industry, and we are now providing a clear and realistic career path for network engineers to advance into the automation world.  As for myself, I have taken on a new role as a Developer Advocate.  I am thrilled to be dedicated to working with the network engineers and software engineers making this journey together!