A Socket is an End-Point of to and From (Bidirectional) communication link between two programs (Server Program and Client Program) running on the network. We need A Server Socket Program (Server) and a Client Socket Program (Client); for running a socket program.
Server Program: A Server Socket Program running on a computer has a socket that bound to a Port Number on that computer which is listening to the client's requests.
Client Program: A client Socket Program has to know the IP Address (Hostname) of the computer that the Server Socket Program resides and the Port Number assign for listening for client's request.
Once the connection is established, the Server and Client can read or write their own sockets.
There are two types of communication protocols which we can use for Socket programming; they are TCP/IP (Transmission Control Protocol/Internet protocol) Communication and UDP/IP (User Datagram Protocol/Internet protocol) Communication.
In the following section we are going to connect a Server Socket Program and Client Socket Program through VB.NET code using TCP/IP Communication.
In the above picture shows the communication interfaces.
Server Socket Program:
Here Server Socket Program is done through a Console based VB.NET application. The Server listens for the client's request, and when it gets a request from the Client, it sends a response to Client.
Client Socket Program:
The Client Socket Program is a window based application and when it starts it gets connected to the server and sends requests, and also receives the response from Server.
Let’s see how to run this program? The Socket Programming has two sections.
- Server Socket Program
- Client Socket Program
When you finish coding the program, first you have to run the Server Socket program; once it is started you will get the DOS screen with a message Server Started.
Next start the Client Socket Program. Then you will get message in client screen Client Started, at the same time check the server screen you will get a message as Accept connection from client.
Now the Server Socket Program and Client Socket Program get connected. If you click the button (Click here to send data to Server) in client window, and then you can see changes in Server and Client screen messages.