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

Exploring the history of programmable networks and looking at those used in the present day

Several years have passed since programmable networks were initially conceived by engineers, so let’s touch on a few historical milestones before we get into the current technologies.

Active networking

The Defense Advanced Research Projects Agency (DARPA) began funding research in the mid-1990s to create a network that could easily be changed and customized by programming, called the active networking project. The main goal of the project was to create network technologies that, in contrast to then-current networks, were easy to innovate and evolve, allowing fast application and protocol development.

But it was not easy to create such a flexible network in the 1990s because programming languages, signaling and network protocols, and operating systems were not mature enough to accommodate such innovative ideas. For instance, operation systems were monolithic and adding features...