Network Service Orchestration or NSO, commonly refers to a software solution that helps network operators configure and automate multiple network elements as per a given service definition. Some examples of a network service include configuring L2 and L3 VPNs, On-boarding remote branch office equipment using zero touch provisioning, configuring Security and QoS policies for 3-Tier applications in Data Center, Configuring Bandwidth control and Application routing policies in a remote branch etc.
A network service typically spans multiple network elements such as routers, firewalls, load-balancers, VPN gateways, WAN optimizers, Web Security Services. These elements can be physical or virtual appliances and often sourced from different vendors (E.g. Arista, Brocade, Cisco, Checkpoint, Citrix, F5, Fortinet, Juniper, Huawei, Riverbed, Palo Alto Networks, VMware etc). The network elements may reside in an enterprise Data Center (also known as Private Cloud), a Remote Branch office, a Service Provider backbone network or in public cloud (such as AWS VPC).
Traditional Network Management software is not able to keep up with the demands on the network operators. Every year, the underlying hardware keeps evolving (e.g. Fabric path, SDN controllers), the number of networking vendors increase and the communication methods (E.g. CLI, API, SNMP, NETCONF) keep changing. In many companies, the developer who wrote the expect or TCL scripts left the company and every simple change becomes a new project. Ultimately, network operators are resorting to spreadsheets to maintain VLAN numbers, Router credentials etc.
A Network Service Orchestrator uses the concept of abstraction to simplify the task of configuring multiple network elements. For example, let’s say the operator has to create a VLAN for a specific application. In the traditional approach, the operator has to login to each and every router and configure using CLI or GUI. On the other hand, a Network Service Orchestrator automatically discovers the network topology and all the dependancies for creating a VLAN. It auto generates the CLI or API calls for each vendor device and executes an atomic transaction across all devices.
To quote Ivan Pepelnjak, “Network Automation = Squeezing Grapes” and “Network Orchestration = Making wine”.