Boost.Asio C++ Network Programming Cookbook

Over 25 hands-on recipes to create robust and highly-efficient cross-platform distributed applications with the Boost.Asio library

Boost.Asio C++ Network Programming Cookbook

This ebook is included in a Mapt subscription
Dmytro Radchuk

1 customer reviews
Over 25 hands-on recipes to create robust and highly-efficient cross-platform distributed applications with the Boost.Asio library
$0.00
$20.00
$49.99
$29.99p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781783986545
Paperback248 pages

Book Description

Starting with recipes demonstrating the execution of basic Boost.Asio operations, the book goes on to provide ready-to-use implementations of client and server applications from simple synchronous ones to powerful multithreaded scalable solutions. Finally, you are presented with advanced topics such as implementing a chat application, implementing an HTTP client, and adding SSL support. All the samples presented in the book are ready to be used in real projects just out of the box.

As well as excellent practical examples, the book also includes extended supportive theoretical material on distributed application design and construction.

Table of Contents

Chapter 1: The Basics
Introduction
Creating an endpoint
Creating an active socket
Creating a passive socket
Resolving a DNS name
Binding a socket to an endpoint
Connecting a socket
Accepting connections
Chapter 2: I/O Operations
Introduction
Using fixed length I/O buffers
Using extensible stream-oriented I/O buffers
Writing to a TCP socket synchronously
Reading from a TCP socket synchronously
Writing to a TCP socket asynchronously
Reading from a TCP socket asynchronously
Canceling asynchronous operations
Shutting down and closing a socket
Chapter 3: Implementing Client Applications
Introduction
Implementing a synchronous TCP client
Implementing a synchronous UDP client
Implementing an asynchronous TCP client
Chapter 4: Implementing Server Applications
Introduction
Implementing a synchronous iterative TCP server
Implementing a synchronous parallel TCP server
Implementing an asynchronous TCP server
Chapter 5: HTTP and SSL/TLS
Introduction
Implementing the HTTP client application
Implementing the HTTP server application
Adding SSL/TLS support to client applications
Adding SSL/TLS support to server applications
Chapter 6: Other Topics
Introduction
Using composite buffers for scatter/gather operations
Using timers
Getting and setting socket options
Performing a stream-based I/O

What You Will Learn

  • Boost your working knowledge of one of the most reputable C++ networking libraries—Boost.Asio
  • Familiarize yourself with the basics of TCP and UDP protocols
  • Create scalable and highly-efficient client and server applications
  • Understand the theory behind development of distributed applications
  • Increase the security of your distributed applications by adding SSL support
  • Implement a HTTP client easily
  • Use iostreams, scatter-gather buffers, and timers

Authors

Table of Contents

Chapter 1: The Basics
Introduction
Creating an endpoint
Creating an active socket
Creating a passive socket
Resolving a DNS name
Binding a socket to an endpoint
Connecting a socket
Accepting connections
Chapter 2: I/O Operations
Introduction
Using fixed length I/O buffers
Using extensible stream-oriented I/O buffers
Writing to a TCP socket synchronously
Reading from a TCP socket synchronously
Writing to a TCP socket asynchronously
Reading from a TCP socket asynchronously
Canceling asynchronous operations
Shutting down and closing a socket
Chapter 3: Implementing Client Applications
Introduction
Implementing a synchronous TCP client
Implementing a synchronous UDP client
Implementing an asynchronous TCP client
Chapter 4: Implementing Server Applications
Introduction
Implementing a synchronous iterative TCP server
Implementing a synchronous parallel TCP server
Implementing an asynchronous TCP server
Chapter 5: HTTP and SSL/TLS
Introduction
Implementing the HTTP client application
Implementing the HTTP server application
Adding SSL/TLS support to client applications
Adding SSL/TLS support to server applications
Chapter 6: Other Topics
Introduction
Using composite buffers for scatter/gather operations
Using timers
Getting and setting socket options
Performing a stream-based I/O

Book Details

ISBN 139781783986545
Paperback248 pages
Read More
From 1 reviews

Read More Reviews