Implementing a synchronous TCP client
A synchronous TCP client is a part of a distributed application that complies with the following statements:
- Acts as a client in the client-server communication model
- Communicates with the server application using a TCP protocol
- Uses I/O and control operations (at least those I/O operations that are related to communication with a server) that block the thread of execution until the corresponding operation completes, or an error occurs
A typical synchronous TCP client works according to the following algorithm:
- Obtain the IP-address and the protocol port number of the server application.
- Allocate an active socket.
- Establish a connection with the server application.
- Exchange messages with the server.
- Shut down the connection.
- Deallocate the socket.
This recipe demonstrates how to implement a synchronous TCP client application with Boost.Asio.
How to do it…
The following code sample demonstrates a possible implementation of a synchronous TCP client application...