Foundations of Python network programming /
Foundations of Python Network Programming, Third Edition, covers all of the classic topics found in the second edition of this book, including network protocols, network data and errors, email, server architecture, and HTTP and web applications, plus updates for Python 3. Some of the new topics in t...
Clasificación: | Libro Electrónico |
---|---|
Autores principales: | , |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Berkeley, CA :
Apress,
2014.
|
Edición: | Third edition. |
Colección: | Expert's voice in open source.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- At a Glance; Introduction; Chapter 1: Introduction to Client-Server Networking; The Building Blocks: Stacks and Libraries; Application Layers; Speaking a Protocol; A Raw Network Conversation; Turtles All the Way Down; Encoding and Decoding; The Internet Protocol; IP Addresses; Routing; Packet Fragmentation; Learning More About IP; Summary; Chapter 2: UDP; Port Numbers; Sockets; Promiscuous Clients and Unwelcome Replies; Unreliability, Backoff, Blocking, and Timeouts; Connecting UDP Sockets; Request IDs: A Good Idea; Binding to Interfaces; UDP Fragmentation; Socket Options; Broadcast.
- When to Use UDPSummary; Chapter 3: TCP; How TCP Works; When to Use TCP; What TCP Sockets Mean; A Simple TCP Client and Server; One Socket per Conversation; Address Already in Use; Binding to Interfaces; Deadlock; Closed Connections, Half-Open Connections; Using TCP Streams Like Files; Summary; Chapter 4: Socket Names and DNS; Hostnames and Sockets; Five Socket Coordinates; IPv6; Modern Address Resolution; Using getaddrinfo() to Bind Your Server to a Port; Using getaddrinfo() to Connect to a Service; Asking getaddrinfo() for a Canonical Hostname; Other getaddrinfo() Flags.
- Primitive Name Service RoutinesUsing getsockaddr() in Your Own Code; The DNS Protocol; Why Not to Use Raw DNS; Making a DNS Query from Python; Resolving Mail Domains; Summary; Chapter 5: Network Data and Network Errors; Bytes and Strings; Character Strings; Binary Numbers and Network Byte Order; Framing and Quoting; Pickles and Self-delimiting Formats; XML and JSON; Compression; Network Exceptions; Raising More Specific Exceptions; Catching and Reporting Network Exceptions; Summary; Chapter 6: TLS/SSL; What TLS Fails to Protect; What Could Possibly Go Wrong?; Generating Certificates.
- Offloading TLSPython 3.4 Default Contexts; Variations on Socket Wrapping; Hand-Picked Ciphers and Perfect Forward Security; Protocol Support for TLS; Learning Details; Summary; Chapter 7: Server Architecture; A Few Words About Deployment; A Simple Protocol; A Single-Threaded Server; Threaded and Multiprocess Servers; The Legacy SocketServer Framework; Async Servers; Callback-Style asyncio; Coroutine-Style asyncio; The Legacy Module asyncore; The Best of Both Worlds; Running Under inetd; Summary; Chapter 8: Caches and Message Queues; Using Memcached; Hashing and Sharding; Message Queues.
- Using Message Queues from PythonSummary; Chapter 9: HTTP Clients; Python Client Libraries; Ports, Encryption, and Framing; Methods; Paths and Hosts; Status Codes; Caching and Validation; Content Encoding; Content Negotiation; Content Type; HTTP Authentication; Cookies; Connections, Keep-Alive, and httplib; Summary; Chapter 10: HTTP Servers; WSGI; Asynchronous Server- Frameworks; Forward and Reverse Proxies; Four Architectures; Running Python Under Apache; The Rise of Pure-Python HTTP Servers; The Benefits of Reverse Proxies; Platforms as a Service.