Network programming can be a challenging task. However, with full-featured and well-documented libraries, Python makes it an enjoyable experience.This book is an extensive resource that will help you learn everything about employing Python for network programming. You’ll begin with a detailed revision of the Transmission Control Protocol/Internet Protocol (TCP/IP) suite and the Python language. Once you’ve brushed up on the basics, you’ll understand how to use Python libraries to automate network tasks and employ the Ansible framework to achieve your network goals. Next, the book will guide you in using Python for DevOps by employing open source tools to test, secure, and analyze your network. You’ll then build on your knowledge by understanding how to retrieve network information using a polling mechanism and flow-based monitoring. You will also learn how to build customized network web services. In the last module, you’ll use Python for SDN and compare the performance of tools such as OpenFlow, OpenDaylight, and Network Functions Virtualization (NFV). In the concluding chapters, you’ll apply what you’ve learned to construct a migration plan to advance from a legacy to a scalable SDN-based network. By the end of this book, you’ll have developed the skills you need to confidently design high-performance network server apps using Python.
About the Author
Eric Chou is a seasoned technologist with over 18 years of industry experience. He has worked on and helped managed some of the largest networks in the industry while working at Amazon AWS, Microsoft Azure, and other companies. Eric is passionate about network automation, Python, and helping companies build better security postures. Eric is the author of several books and online classes on networking with Python and network security. He is the proud inventor of two patents in IP telephony. Eric shares his deep interest in technology through his books, classes, and his blog, and contributes to some of the popular Python open source projects.
- Basic familiarity with various networking protocols and the Python language will be useful.