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

Using advanced testing techniques

I created this section to explore some methods that can be used for testing that are not commonly used but might be somehow useful. These techniques are perhaps not used much today but might become mainstream in the future, so keep an eye on how things evolve.

First, let’s see how we can use time dilation in our network code testing.

Using time dilation

When building your test environment, you might face requirements for testing that are physically impossible to do in a lab with emulated routers, such as measuring protocol convergence time or sending large amounts of data between devices. The reason these high-performance tests are physically impossible using emulation is that the CPU and I/O on an emulated router are smaller and limited compared to real routers. One way to overcome this limitation is to use time dilation.

Time dilation is a technique that changes the CPU clock of the emulated environment in such a way that the emulated...