Python network programming cookbook overcome real-world networking challenges

Discover practical solutions for a wide range of real-world network programming tasks About This Book Solve real-world tasks in the area of network programming, system/networking administration, network monitoring, and more. Familiarize yourself with the fundamentals and functionalities of SDN Impro...

Descripción completa

Detalles Bibliográficos
Otros Autores: Kathiravelu, Pradeeban, author (author), Sarker, Faruque, author
Formato: Libro electrónico
Idioma:Inglés
Publicado: Birmingham, England : Packt Publishing 2017.
Edición:Second edition
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009630519806719
Tabla de Contenidos:
  • Cover
  • Copyright
  • Credits
  • About the Author
  • About the Reviewers
  • www.PacktPub.com
  • Customer Feedback
  • Table of Contents
  • Preface
  • Chapter 1: Sockets, IPv4, and Simple Client/Server Programming
  • Introduction
  • Printing your machine's name and IPv4 address
  • Getting ready
  • How to do it...
  • How it works...
  • Retrieving a remote machine's IP address
  • How to do it...
  • How it works...
  • Converting an IPv4 address to different formats
  • How to do it...
  • How it works...
  • Finding a service name, given the port and protocol
  • Getting ready
  • How to do it...
  • How it works...
  • Converting integers to and from host to network byte order
  • How to do it...
  • How it works...
  • Setting and getting the default socket timeout
  • How to do it...
  • How it works...
  • Handling socket errors gracefully
  • How to do it...
  • How it works...
  • Modifying a socket's send/receive buffer sizes
  • How to do it...
  • How it works...
  • Changing a socket to the blocking/non-blocking mode
  • How to do it...
  • How it works...
  • Reusing socket addresses
  • How to do it...
  • How it works...
  • Printing the current time from the internet time server
  • Getting ready
  • How to do it...
  • How it works...
  • Writing an SNTP client
  • How to do it...
  • How it works...
  • Writing a simple TCP echo client/server application
  • How to do it...
  • How it works...
  • Writing a simple UDP echo client/server application
  • How to do it...
  • How it works...
  • Chapter 2: Multiplexing Socket I/O for Better Performance
  • Introduction
  • Using ForkingMixIn in your socket server applications
  • How to do it...
  • How it works...
  • Using ThreadingMixIn in your socket server applications
  • Getting ready
  • How to do it...
  • How it works...
  • Writing a chat server using select.select
  • How to do it...
  • How it works.
  • Multiplexing a web server using select.epoll
  • How to do it...
  • How it works...
  • Multiplexing an echo server using Diesel concurrent library
  • Getting ready
  • How to do it...
  • How it works...
  • Chapter 3: IPv6, Unix Domain Sockets, and Network Interfaces
  • Introduction
  • Forwarding a local port to a remote host
  • How to do it...
  • How it works...
  • Pinging hosts on the network with ICMP
  • Getting ready
  • How to do it...
  • How it works...
  • Waiting for a remote network service
  • How to do it...
  • How it works...
  • Enumerating interfaces on your machine
  • Getting ready
  • How to do it...
  • How it works...
  • Finding the IP address for a specific interface on your machine
  • Getting ready
  • How to do it...
  • How it works...
  • Finding whether an interface is up on your machine
  • Getting ready
  • How to do it...
  • How it works...
  • Detecting inactive machines on your network
  • Getting ready
  • How to do it...
  • How it works...
  • Performing a basic IPC using connected sockets (socketpair)
  • Getting ready
  • How to do it...
  • How it works...
  • Performing IPC using Unix domain sockets
  • How to do it...
  • How it works...
  • Finding out if your Python supports IPv6 sockets
  • Getting ready
  • How to do it...
  • How it works...
  • Extracting an IPv6 prefix from an IPv6 address
  • How to do it...
  • How it works...
  • Writing an IPv6 echo client/server
  • How to do it...
  • How it works...
  • Chapter 4: Programming with HTTP for the Internet
  • Introduction
  • Downloading data from an HTTP server
  • How to do it...
  • How it works...
  • Serving HTTP requests from your machine
  • How to do it...
  • How it works...
  • Extracting cookie information after visiting a website
  • How to do it...
  • How it works...
  • Submitting web forms
  • Getting ready
  • How to do it...
  • How it works.
  • Sending web requests through a proxy server
  • Getting ready
  • How to do it...
  • How it works...
  • Checking whether a web page exists with the HEAD request
  • How to do it...
  • How it works...
  • Spoofing Mozilla Firefox in your client code
  • How to do it...
  • How it works...
  • Saving bandwidth in web requests with the HTTP compression
  • How to do it...
  • How it works...
  • Writing an HTTP fail-over client with resume and partial downloading
  • How to do it...
  • How it works...
  • Writing a simple HTTPS server code with Python and OpenSSL
  • Getting ready
  • How to do it...
  • How it works...
  • Building asynchronous network applications with Twisted
  • Getting ready
  • How to do it...
  • How it works...
  • Building asynchronous network applications with Tornado
  • Getting ready
  • How to do it...
  • How it works...
  • Building concurrent applications with Tornado Future
  • Getting ready
  • How to do it...
  • How it works...
  • Chapter 5: Email Protocols, FTP, and CGI Programming
  • Introduction
  • Listing the files in a remote FTP server
  • Getting ready
  • How to do it...
  • How it works...
  • Common error
  • Uploading a local file to a remote FTP server
  • Getting ready
  • How to do it...
  • How it works...
  • Emailing your current working directory as a compressed ZIP file
  • Getting ready
  • How to do it...
  • How it works...
  • See also
  • Downloading your Google email with POP3
  • Getting ready
  • How to do it...
  • How it works...
  • Checking your remote email with IMAP
  • Getting ready
  • How to do it...
  • How it works...
  • Sending an email with an attachment via Gmail SMTP server
  • Getting ready
  • How to do it...
  • How it works...
  • Writing a guestbook for your (Python-based) web server with CGI
  • Getting ready
  • How to do it...
  • How it works...
  • Finding the mail server from an email address
  • Getting ready.
  • How to do it...
  • How it works...
  • Writing a simple SMTP server
  • Getting ready
  • How to do it...
  • How it works...
  • Writing a secure SMTP client using TLS
  • Getting ready
  • How to do it...
  • How it works...
  • Writing an email client with POP3
  • Getting ready
  • How to do it...
  • How it works...
  • Chapter 6: Programming Across Machine Boundaries
  • Introduction
  • Executing a remote shell command using telnet
  • Getting ready
  • How to do it...
  • How it works...
  • Copying a file to a remote machine by SFTP
  • Getting ready
  • How to do it...
  • How it works...
  • Printing a remote machine's CPU information
  • Getting ready
  • How to do it...
  • How it works...
  • Installing a Python package remotely
  • Getting ready
  • How to do it...
  • How it works...
  • Running a MySQL command remotely
  • Getting ready
  • How to do it...
  • How it works...
  • Transferring files to a remote machine over SSH
  • Getting ready
  • How to do it...
  • How it works...
  • Configuring Apache remotely to host a website
  • Getting ready
  • How to do it...
  • How it works...
  • Chapter 7: Working with Web Services - XML-RPC, SOAP, and REST
  • Introduction
  • Querying a local XML-RPC server
  • Getting ready
  • How to do it...
  • How it works...
  • Writing a multithreaded, multicall XML-RPC server
  • How to do it...
  • How it works...
  • Running an XML-RPC server with a basic HTTP authentication
  • How to do it...
  • How it works...
  • Collecting some photo information from Flickr using REST
  • How to do it...
  • How it works...
  • Searching for SOAP methods from an Amazon S3 web service
  • Getting ready
  • How to do it...
  • How it works...
  • Searching Amazon for books through the product search API
  • Getting ready
  • How to do it...
  • How it works...
  • Creating RESTful web applications with Flask
  • Getting ready
  • How to do it...
  • How it works.
  • Chapter 8: Network Monitoring and Security
  • Introduction
  • Sniffing packets on your network
  • Getting ready
  • How to do it...
  • How it works...
  • Saving packets in the pcap format using the pcap dumper
  • How to do it...
  • How it works...
  • Adding an extra header in HTTP packets
  • How to do it...
  • How it works...
  • Scanning the ports of a remote host
  • How to do it...
  • How it works...
  • Customizing the IP address of a packet
  • How to do it...
  • How it works...
  • Replaying traffic by reading from a saved pcap file
  • How to do it...
  • How it works...
  • Scanning the broadcast of packets
  • How to do it...
  • How it works...
  • Chapter 9: Network Modeling
  • Introduction
  • Simulating networks with ns-3
  • Getting ready
  • How to do it...
  • How it works...
  • Emulating networks with Mininet
  • Getting ready
  • How to do it...
  • How it works...
  • Distributed network emulation with MaxiNet
  • Getting ready
  • How to do it...
  • How it works...
  • Emulating wireless networks with Mininet-WiFi
  • Getting ready
  • How to do it...
  • How it works...
  • Extending Mininet to emulate containers
  • Getting ready
  • How to do it...
  • How it works...
  • Chapter 10: Getting Started with SDN
  • Introduction
  • SDN emulation with Mininet
  • Getting ready
  • How to do it...
  • How it works...
  • Developing Software-Defined Networks with OpenDaylight controller
  • Getting ready
  • How to do it...
  • How it works...
  • Developing Software-Defined Networks with ONOS controller
  • Getting ready
  • How to do it...
  • How it works...
  • Developing Software-Defined Networks with Floodlight controller
  • Getting ready
  • How to do it...
  • How it works...
  • Developing Software-Defined Networks with Ryu controller
  • Getting ready
  • How to do it...
  • How it works...
  • Developing Software-Defined Networks with POX controller
  • Getting ready.
  • How to do it.