It may be mentioned here that one of the most important rather significant concepts in Internet information provision is the idea of client/server architecture. Most of the net-based tools relie on this basic approach in order to be able to function efficiently. It is very important for us to understand as to how it works, as it can have a direct effect on how we search and the results we receive. The client/server model is a simple one. As its name implies, it is constituted of two parts, two programs, a client and a server, for each application. The client software runs on the local machine, the PC. The server software runs on another machine, perhaps a main frame, the host or the server of the information we want to retrieve. The application works by the combination of both the pieces of software working co-operatively together. A client without a server, or a server without clients, would be able to do nothing useful. Software tools for client/server systems always work in pairs and share the computing workload. The server program is responsible for holding the data which is to be made available, and for finding and returning data requested by the clients. In other words, it is responsible for creating indexes, searching, and sometimes collecting and organising data. Most importantly, the server provides the means of allowing common access to data mounted on it. It waits for the client software to send it requests to do something, and returns the results of its efforts in response to such requests. In a way, the client programme is responsible for dealing with the user. It runs locally and provides interface between the user and the system, collecting information about what the user wants, transforming the requests into the agreed language of communication between the client and the server, packaging them up and sending them off to the relevant server computer. When the server responds with some data, the client 'unpacks' the coded materials and converts it for appropriate display and/or filing on the user's machine.
One of the greatest advantages of client/server architecture is that communications between the client and server do not need to be continuous. They can be intermittent. There is no need to maintain a connection between the client and the server. Using client/server architecture, it is easy to communicate across different systems. In other words, for each application, the client/ server will speak the same language for communication of what they want each other to do, as well as using Internet protocols for transmitting the requests and responses back and forth.