Network Automation is the new buzz word which essentially means use of software and technology to reduce human effort to perform the tasks that we have been conventionally doing thus far.
You could read up on the definitions and different perspectives of major players in this industry like
Here in this post on beginners guide to network automation I will try to summarise all of them.
Challenges that Network Automation addresses
- The rate at which the networks are growing is very fast. This means more CAPEX ( Capital Expenditure ) and OPEX ( Operational Expenditure ). It’s specially important to reduce these costs in the age of optimization and cost cuttings.
- Managing all these devices manually is a huge error prone and extremely slow task. As per a survey by Cisco, nearly 95% of devices are still managed manually.
- If you need to setup new offices quickly, that can’t be done using conventional methods of provisioning the networks which can directly impact network availability and customer sentiments.
- What about access to remote sites and if in case some troubleshooting is required at remote sites ?
Application areas of Network Automation
- Network planning and design.
- Inventory management.
- Device testing and configuration verification.
- Provisioning of deployed physical devices and services.
- Deployment and provisioning of virtual devices.
- Collection of network data pertaining to devices, systems, software, network topology, traffic, and services in real-time.
- Configuration & security compliance, which ensures that all the network devices and services are running as intended.
- Updating software, including rollback of software if required.
- Provide insight into reports, dashboards, alerts, and alarms.
- Analysis of data, including AI and ML predictive analytics, which delivers insights into current and future networks.
How does Network Automation actually function ?
There are hundreds of ways network automation can be categorised into and the network functions can be automated. However, there are broadly two major categories
- Scripting based network automation
- Software based network automation
Scripting Based Network Automation
While it might seem that python is where all the network automation started but if you look closely we have been using CLI based scripting for a really long time with languages like Perl and TCL. However python has gained a lot of popularity recently simply because its ease of usage and adoption. Along with huge share of scripting being done in python, you are also likely to see flavours of java, Go, Ruby as well.
Software Based Network Automation
Or more appropriately knows as Software Defined Networking. Well, there are many names to this, call it Intent Based Networking, AI driven Networking, Software Defined Networks, Intelligent Networks but they are all essentially driven by a software and the term SDx ( Software Defined ** Everything **). A software is a well defined framework that eliminates the need to execute the scripts that we write in python though a GUI web portal. These platforms usually provide templates for creating and executing tasks based on simple language policies