Preface

Network applications were not very easy to develop about two decades ago. But thanks to Boost.Asio, which has provided us with the network programming function as well as the asynchronous operations functionality to program a network application, we can now develop them easily. Since data transmission over a network can take a long time, which means acknowledgments and errors may not be available as fast as the functions that send or receive data can execute, the asynchronous operations functionality is really required in network application programming. In this book, you will learn the basics of networking and also how to develop a network application using the Boost.Asio libraries.

What this book covers

Chapter 1, Simplifying Your Network Programming in C++, explains the preparation of a C++ compiler, which will be used to compile all the source code in this book. Also, it will tell us how to compile a single source code and link to multiple source codes.

Chapter 2, Understanding the Networking Concepts, covers the network reference models, which are OSI and TCP/IP. It also provides various TCP/IP tools that we will often be using to detect whether an error has occurred in our network connection.

Chapter 3, Introducing the Boost C++ Libraries, explains how to set up the compiler in order to compile the code that contains the Boost libraries and how to build the binaries of libraries that we have to compile separately.

Chapter 4, Getting Started with Boost.Asio, talks about concurrent and nonconcurrent programming. It also discusses the I/O service, which is used to access the operating system's resources and establish communication between our program and the operating system that performs I/O requests.

Chapter 5, Delving into the Boost.Asio Library, walks us through how to serialize an I/O service's work in order to ensure that the order of work completely matches the order we have designed. It also covers how to handle errors and exceptions and create time delays in network programming.

Chapter 6, Creating a Client-server Application, discusses developing a server that is able to send and receive data traffic from a client and also how to create a client-side program to receive data traffic.

Chapter 7, Debugging the Code and Solving the Error, covers the debugging process to trace the errors that may be produced by an unexpected result, such as getting crash in the middle of a program execution. After reading this chapter, you will be able to solve various errors by debugging the code.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset