Preface
Howdy! As I transition from network engineering to software engineering, I understand how hard it is for developers to understand computer network concepts and how hard it is for network engineers to understand software concepts.
As applications become cloud-based and content is stored in the cloud, network infrastructure is the most important asset for today’s businesses. A 10 GE interface down for 15 minutes is equivalent to 1 TB of missing data. Minimizing downtime, maximizing capacity and speed, and lowering latency and jitter are the major performance indicators for network providers today. And it’s becoming impossible to improve these indicators without network automation, from the concept and design of the network to daily network operations.
This book will start with a brief description of network basics, then will start to explore network programming concepts and the automation ecosystem in a bit more depth. It will then describe protocols, tools, and techniques for network programming. All of these will be based on the two most popular computer languages for network automation, which are Go and Python.
Hands-on labs will be used to support the concepts covered in the book using a real-time network emulation. By the end of the book, you will have enough knowledge to start programming and creating network automation solutions.