Sockets are the fundamental technology for programming software to communicate on TCP/IP networks. A socket provides a bidirectional communication endpoint for sending and receiving data with another socket. Socket connections normally run between two different computers on a LAN or across the Internet, but they can also be used for inter-process communication on a single computer.
It involves the use of Socket Programming. Client creates a local TCP socket specifying the IP and port ?number of server process , the client’s TCP establishes connection to server’s TCP. When contacted by a client, server creates a new socket for server process to communicate with client. Client sends a request to the Server and then Server responds to the client . Data Transmission is over TCP/ IP protocol. Data exchanging protocol is build by creating our own network protocol stack over the socket stack.