Creating a simple TCP client and TCP server

The idea behind creating this application is that a socket client can establish a connection against a given host, port, and protocol. The socket server is responsible for receiving connections from clients in a specific port and protocol.