Python Network Programming: Conquer all your networking challenges with the powerful Python language

Power up your network applications with Python programmingKey FeaturesMaster Python skills to develop powerful network applicationsGrasp the fundamentals and functionalities of SDNDesign multi-threaded, event-driven architectures for echo and chat serversBook DescriptionThis 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 ChouPython Network Programming Cookbook, Second Edition by Pradeeban Kathiravelu, Dr. M. O. Faruque SarkerWhat you will learnCreate socket-based networks with asynchronous modelsDevelop client apps for web APIs, including S3 Amazon and TwitterTalk to email and remote network servers with different protocolsIntegrate Python with Cisco, Juniper, and Arista eAPI for automationUse Telnet and SSH connections for remote system monitoringInteract with websites via XML-RPC, SOAP, and REST APIsBuild networks with Ryu, OpenDaylight, Floodlight, ONOS, and POXConfigure virtual networks in different deployment environmentsWho this book is forIf 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. Table of ContentsFundamental ConceptsPython for Network EngineersContinuous Integration for Network EngineersSDN Concepts in Network AutomationLow-Level Network Device InteractionsAPIs and Intent-Driven NetworkingThe Python Automation Framework - Ansible BasicsThe Python Automation Framework - Beyond BasicsAWS Cloud NetworkingWorking with GitSockets, IPv4, and Simple Client/Server ProgrammingMultiplexing Socket I/O for Better PerformanceIPv6, Unix Domain Sockets, and Network InterfacesProgramming with HTTP for the InternetEmail Protocols, FTP, and CGI ProgrammingProgramming across Machine BoundariesWorking with Web Services - XML-RPC, SOAP, and RESTNetwork Monitoring and SecurityNetwork ModelingAuthentication, Authorization, and Accounting (AAA)Open and Proprietary Networking SolutionsNFV and Orchestration - A Larger EcosystemProgramming the Internet

Author: Abhishek Ratan

Learn more