The Client Server system, which is fundamental for services such as hosting, is based on two elements. The first is the Server, a machine which makes available static and dynamic content from the web and also software and hardware connected to the network, which can be accessed from a browser, or by FTP.
The Server may also be required for database management, as well as data updating. A well-known example is that of the electronic mail server, which may be compared to a post office. The term Server can be used for any program which offers a service accessible online, operating it and producing an output for the user.
The term Client refers to a series of devices connected to the net which can access resources provided by the Server using the HTTP/HTTPS protocol. The Client, in other words, is non-other than the device the user is working from.
Software applications work on the Client device, known as Client programs. These programs carry out a range of tasks. The first consists of allowing the user to send the Server a request for information.
The second, on the other hand, involves the formatting of the request so that it becomes legible to the Server. The third and final task includes the formatting of the Server’s response, making it legible to the user.
The Client Server system, whose success is closely linked to the availability of low cost mobile networks and widespread Internet access, is therefore based on a modular design, with distinct inter-linked modules, allowing websites – especially dynamic ones – to function transparently. This is also very useful for the operation of printer Servers.
This model brings several advantages, above all in its efficiency. Each individual Client, thanks to this peculiarity, can benefit from an optimal service speed. The individual requests are in fact managed independently, without any overlap at all.
Communication between Client and Server, which requires a common language, is independent from the operating system, in as much as it is managed by the above mentioned protocols, which may be encrypted or not, as required.
It happens via the channels mentioned above. In this category we can include FTP, especially useful for downloading files quickly, but also the SSH, a protocol which allows highly complex commands to be sent to the Server.
All protocols listed here must be supported by TCP/IP network protocols and on DNS, so that they can exchange requests via the internet.
Communication between elements of the Client Server system involves data transfer being preceded by an exchange of control packages. This procedure, known as handshaking, prepares two modules for optimal interaction.
It is very important to remember that the number of requests reaching the server from the Clients cannot easily be foreseen and happens in an irregular fashion. In some cases, the Servers may actually have a queue of requests waiting to be dealt with. In such situations overcrowding results. It is up to the manager to deal with these requests and to take steps in order to make more resources available.
Sometimes the queue of requests is artificially increased. However, this happens when IT attacks such as DOS or DDOS are launched against the Client Server system, recognisable by the targeted manipulation of one or more Clients.
Translated by Joanne Beckwith