Client
In a network, there are usually two types of end devices: clients and servers. For example, the term client refers to a computer that is connected to a server and uses its services. More commonly, however, it is used to refer to software that makes requests to a server. A server, on the other hand, provides various data or services that are used by the clients.
The client-server model
The so-called client-server model has become the standard concept for the distribution of tasks within a network. Tasks are distributed to different computers by the server. Several clients can request these as required. These tasks can be standard tasks such as sending or receiving emails or calling up Internet pages, but also specific tasks of a software or a program. In the communication between client and server, the server is always passive and waits for requests, while the client always actively requests a service. A protocol, which is specific to the particular service, defines the rules of communication for that service. The client makes requests to the server. The server, which is responsible for solving such a task, sends a response as a result. For example, when a mail client contacts the corresponding mail server, it retrieves mail back and forth from the server. In addition to the client-server model, there is also the peer-to-peer model. The English word “peer” means “equal”. Accordingly, the computers in a network have equal rights in the peer-to-peer model. They can both provide various services themselves and use these services for themselves.
Thin client or thick client
The distribution of tasks between client and server is determined by the functionality and equipment of the client. The thin client is only equipped with the most necessary input and output functions. It is only a user interface, all data processing takes place on the server. The thick client, on the other hand, is a powerful, fully equipped computer that processes data itself on site and also provides the graphical user interface. A further development is the so-called rich client or smart client, which offers richer problem solutions and can also solve related or even unrelated problems.