Python Network Programming
Power up your network applications with Python programming
Master Python skills to develop powerful network applications
Grasp the fundamentals and functionalities of SDN
Design multi-threaded, event-driven architectures for echo and chat servers
This Learning Path highlights major aspects of Python network programming such as writing simple networking clients, creating and deploying SDN and NFV systems, and extending your network with Mininet. You’ll also learn how to automate legacy and the latest network devices. As you progress through the chapters, you’ll use Python for DevOps and open source tools to test, secure, and analyze your network. Toward the end, you’ll develop client-side applications, such as web API clients, email clients, SSH, and FTP, using socket programming.
By the end of this Learning Path, you will have learned how to analyze a network’s security vulnerabilities using advanced network packet capture and analysis techniques.
This Learning Path includes content from the following Packt products:
Practical Network Automation by Abhishek Ratan
Mastering Python Networking by Eric Chou
Python Network Programming Cookbook, Second Edition by Pradeeban Kathiravelu, Dr. M. O. Faruque Sarker
What you will learn
Create socket-based networks with asynchronous models
Develop client apps for web APIs, including S3 Amazon and Twitter
Talk to email and remote network servers with different protocols
Integrate Python with Cisco, Juniper, and Arista eAPI for automation
Use Telnet and SSH connections for remote system monitoring
Interact with websites via XML-RPC, SOAP, and REST APIs
Build networks with Ryu, OpenDaylight, Floodlight, ONOS, and POX
Configure virtual networks in different deployment environments
Who this book is for
If you are a Python developer or a system administrator who wants to start network programming, this Learning Path gets you a step closer to your goal. IT professionals and DevOps engineers who are new to managing network devices or those with minimal experience looking to expand their knowledge and skills in Python will also find this Learning Path useful. Although prior knowledge of networking is not required, some experience in Python programming will be helpful for a better understanding of the concepts in the Learning Path.