What are servers

server

What is a server?

 

A server is a computer or system that provides resources, data, services, or programs to other computers called clients over a network. Whenever computers share resources with client machines, they are theoretically considered to be servers. There are many types of servers, e.g. B. web servers, mail servers and virtual servers.

A single system can provide resources and use them from another system at the same time. This means that a device could be a server and a client at the same time.

Some of the early servers were mainframe computers or minicomputers. Minicomputers were much smaller than mainframe computers, hence the name. However, as technology progressed, they became much larger than desktop computers, which made the term "microcomputer" somewhat absurd.

Initially, such servers were connected to clients known as terminals that did not actually do any data processing. These computers, known as “dumb terminals”, were only used to accept input from a keyboard or card reader and to display data processing results on a screen or printer. The actual data processing took place on the server.

Later on, servers were often single high-performance computers connected to a group of less powerful client computers over a network. This network architecture is often referred to as the client-server model, in which both the client computer and the server have computing power, but certain tasks are delegated to servers. In previous computing models, such as the mainframe terminal model, the mainframe computer acted as a server, although it was not called that.

As technology has advanced, so has the definition of a server. Today, a server can be mere software running on one or more physical computing devices. Such servers are often referred to as virtual servers. Originally, virtual servers were used to increase the number of server functions that a single hardware server could perform. Today, virtual servers are often run by a third party vendor on hardware that is distributed across the Internet. This arrangement is known as cloud computing.

A server can be designed for a single output, e.g. B. an e-mail server that accepts and stores e-mails and then makes them available to a requesting client. Servers can also perform multiple tasks, such as: B. a file and print server that stores files and accepts print jobs from clients, which it then forwards to a network-connected printer.

How a server works

 

To act as a server, a device must be configured to respond to requests from clients over a network connection. This functionality can exist as part of the operating system as an installed application, a role, or a combination of the two.

For example, Microsoft's Windows server operating system provides the functionality to listen to and respond to client requests. Additionally installed roles or services increase the type of client requests that the server can respond to. As another example, an Apache web server responds to requests from Internet browsers through an additional application - Apache - installed on top of an operating system.

When a client needs data or functions from a server, it sends a request over the network. The server receives this request and replies with the appropriate information. This is the request and response model of a client-server network, also known as the call and response model.

A server often performs numerous additional tasks as part of a single request and response, such as: For example, it verifies the identity of the requester, verifies that the client is authorized to access the requested data or resources, and formats or sends the requested response back as expected.

 

There are many types of servers, each of which performs different functions. Many networks contain one or more of the common types of servers:

File server

File servers store and distribute files. Multiple clients or users can share files that are stored on a server. In addition, central storage of files provides simpler data protection or fault tolerance solutions than trying to ensure the security and integrity of files on every single device within an organization. The file server hardware can be designed to maximize read and write speeds for increased performance.

Print server

Print servers enable the administration and distribution of printing functions. Instead of attaching a printer to each workstation, a single print server can respond to the printing requests of numerous clients. Today, some larger and upper-range printers have their own built-in print server, which eliminates the need for an additional computer-based print server. This internal print server also responds to print requests from a client.

Application server

Application servers run applications instead of client computers that would have to run them locally. Application servers often run resource-intensive applications that are shared by large numbers of users. This removes the need for each individual client to have sufficient resources to run their applications. In addition, there is no need to install and maintain software on many computers, only on one.

DNS server

Domain name servers (DNS) are application servers that perform name resolutions for client computers by converting names that humans can easily understand into machine-readable IP addresses. The DNS system is a widely distributed database of names and other DNS servers, any of which can be used to request an otherwise unknown computer name. When a client needs the address of a system, it sends a DNS request with the name of the desired resource to a DNS server. The DNS server responds with the required IP address from its table of names.

Email server

Email servers are a very common type of application server. They receive email sent to a user and store them until requested by a client on behalf of that user. By using an e-mail server, it is sufficient for a single computer to be correctly configured and connected to the network at all times. It is then ready to send and receive messages instead of having to run a separate email subsystem on each client computer.

Web server

One of the most common types of servers on the market today is the web server. A web server is a special type of application server that hosts programs and data requested by users across the Internet or an intranet. Web servers respond to requests from browsers running on client computers for websites or other web-based services. Common web servers are Apache web servers, Microsoft's "Internet Information Services" (IIS) and Nginx servers.

 

Database server

The amount of data used by businesses, users and other services is staggering. Much of this data is stored in databases. Databases must be accessible to many clients at all times and can take up enormous amounts of storage space. Both requirements can be met if such databases are housed on servers. Database servers run database applications and respond to many requests from clients. Common database server applications are Oracle, Microsoft's SQL Server, DB2, and Informix.

Virtual server

Virtual servers are taking the server world by storm. In contrast to conventional servers, which are installed as operating systems on the machine hardware, virtual servers are only defined within specialized software called a hypervisor. Each hypervisor can run hundreds or even thousands of virtual servers concurrently. The hypervisor provides virtual hardware to the server as if it were real physical hardware. The virtual server uses the virtual hardware as usual, and the hypervisor passes the actual computing and storage requirements on to the underlying real hardware that is shared by all the virtual servers.

Proxy server

A proxy server acts as an intermediary between a client and a server. Often used to isolate either clients or servers for security reasons, it accepts the client's request. Instead of responding to the client, it forwards the request to another server or process. The proxy server receives the response from the second server and then responds to the original client as if it were responding itself. This way, the client and the responding server do not need to be directly connected to each other.

Monitoring and management server

Some servers have the task of monitoring or managing other systems and clients. There are many types of monitoring servers. Some of them monitor the network and receive every client request and server response, but others don't request or respond to data themselves. This allows the monitoring server to keep track of all network traffic and requests and responses from clients and servers without affecting these operations. A monitoring server responds to requests from monitoring clients, such as those performed by network administrators who monitor the health of the network.

 

 

The concept of servers is almost as old as networks themselves. After all, the purpose of a network is to allow one computer to communicate with another computer and to distribute either work or resources. Computing has evolved since then, producing several types of server structures and hardware.

Mainframe or minicomputer (AS / 400)

You could say that the original servers - the mainframe computers - and later the minicomputers, did almost all computing, except for user interaction through a screen and keyboard, which was left to the client system.

Computer hardware server

The next larger group of servers comprised computer-based servers. In many ways, these servers were nothing more than larger, more powerful desktop computers. Such servers were generally more expensive and had significantly more storage space than most client computers. Each server was still a separate unit with its own motherboard, processor, memory, drives, and power supply. Such servers were often housed in air-conditioned rooms called server rooms and later installed on shelves for better storage and accessibility.

Blade server

The original computer server hardware was large and housed on shelves that could hold hundreds of pounds. Over time, however, faster methods of connecting hardware resulted in parts of the server being taken out of a single stand-alone device. With the elimination of hard drives and internal cooling, and the continued miniaturization of computer parts, servers have ultimately been reduced to a single thin server known as a blade server. Blade servers are still housed on shelves in server rooms, but they are smaller and easier to replace.

Combination server

Even before virtualization, servers were removed from the standard model of a single server operating system installed on a hardware machine. Due to technological advances such. B. Network-connected storage servers no longer need their own storage. Other technologies such as mirroring and clustering made it possible to combine pieces of hardware into larger, more powerful servers. Such a server could consist of multiple blades, multiple connected storage devices, and an external power supply, each part being swapped out for a different part while the server is still running.

Virtual server

Virtual servers still need hardware, but it now performs a different process known as a hypervisor. In some cases, like Microsoft's Hyper-V, a full operating system continues to run on the hardware itself. In other cases, so-called bare metal hypervisors can be installed directly on the server hardware. In either scenario, the actual hardware is often spread across a series of blade servers, network storage, and power supplies, creating an environment where it is impossible to tell where one server ends and another begins.

Examples of server operating systems


Microsoft's Windows Server

One can argue about whether “Windows for Workgroups” was Microsoft's first server operating system. In this version, some computers could be set to pass resources and respond to requests from clients, making them servers by definition. Microsoft's first real server operating system was Windows NT. Its versions 3.5 and 3.51 ran on many corporate networks until Microsoft released its Windows server suite, which continues to this day. The latest version of Windows Server is Windows Server 2016. This version supports many applications and databases, as well as a hypervisor that enables virtual servers.

Linux / Unix server

The other major player in server operating systems is the Linux / Unix world. There are several versions and flavors of Linux / Unix, e.g. B. Red Hat Enterprise Linux, Debian and CentOS. As an open source operating system, Linux is very popular as a web server, with the Apache web application server often installed.

NetWare

Although NetWare is no longer in production, it was a bigger player in server software as the client-server era gained momentum. Eventually, NetWare moved its server operating system to a Linux-based kernel and named it Novell Open Enterprise Server (OES).

Cloud server

Virtual servers hosted on third-party infrastructure on an open network such as the Internet are known as cloud servers. Nowadays there are numerous cloud server providers such as Google's Cloud Platform, Microsoft Azure and IBM Cloud.
However, the fundamental pioneer of enterprise cloud computing was Amazon's AWS platform. Originally, this was done using free capacity on Amazon's own servers and networks, but now AWS allows customers to create a virtual server almost instantly and then adjust the amount of resources that server can use as needed.
Today a server can be nothing more than the data of a physical piece of hardware, which consists of several processors, drives, memories and network connections. But even now a server is just a system that responds to a request from a client.