Book Image

Network Programming and Automation Essentials

By : Claus Töpke
Book Image

Network Programming and Automation Essentials

By: Claus Töpke

Overview of this book

Network programming and automation, unlike traditional networking, is a modern-day skill that helps in configuring, managing, and operating networks and network devices. This book will guide you with important information, helping you set up and start working with network programming and automation. With Network Programming and Automation Essentials, you’ll learn the basics of networking in brief. You’ll explore the network programming and automation ecosystem, learn about the leading programmable interfaces, and go through the protocols, tools, techniques, and technologies associated with network programming. You’ll also master network automation using Python and Go with hands-on labs and real network emulation in this comprehensive guide. By the end of this book, you’ll be well equipped to program and automate networks efficiently.
Table of Contents (16 chapters)
1
Part 1: Foundations for Network Automation
6
Part 2: Network Programming for Automation
11
Part 3: Testing, Hands-On, and Going Forward

Accessing the Network

In the previous chapter, we looked into programmable networks and their history. One of the ideas we explored was Software-Defined Networking (SDN), where we saw why the separation between the data plane and the control plane was important. One important point of SDN was its architecture and how it separates the North Bound Interface (NBI) and South Bound Interface (SBI). In this chapter, we are going to explore how to access the network devices that can be interpreted as the SBI for SDN when OpenFlow is not available on the device.

As we have seen before, OpenFlow is not a widely adopted protocol, and its availability is limited to a few manufacturers and devices. Therefore, if you are planning to use SDN, you may need to use the available native methods to configure the devices.

Network access is not only used for SDN but also for a variety of software, such as network configuration, configuration audit, upgrade tools, and automation, among others. Additionally...