Server

A network operating system provides support for many devices, users, functionalities and a special class of computer called a server.

What a server is, what does it do, where are servers normally located, what are the different types of servers, are there any special conditions, specifications and requirements that a server needs, what makes a server different from the client perspective and who looks after (manages) them?

The Server Computer Platform

Put simply a server is a computer that is running a network operating system (NOS) and other software that enables it to service requests from other computers known as clients. This is a two-way state in that the client and the server are determined at any point in time depending upon their relationship at that point in time.

A server computer may get a request from another computer (client) but in order to fulfill that client’s request it may itself need to request services from another server computer and so becomes the client of the second server computer. Another paradox is that a computer can fulfill the role of client and server itself.

For example, suppose a network computer is running both a web server and directory services server software (such as Microsoft’s Active Directory). The web server receives a request for a service or access to an asset or resources.

The web server software needs to verify that the entity making the request is entitled to have that request fulfilled before it (the web server) can fulfill the request. In order to determine the requesting entities authorisation and access status the web server software asks the directory services server software (running on the same machine) to perform the authentication verification service.

Thus, we have a machine that is at once both a server and a client. Essentially, a server is a computer much like any other in that it consists of two primary components: server hardware and server software. It is the exact mix and type of these hardware and software components that determine the capabilities of the server.

Server Computer Hardware

Let us begin by looking at the types of hardware typically found in a server class computer. As already discussed, any computer including a standard desktop PC can act as a server.

However, due to the nature of activities and functional behaviors expected from a server, the server is usually far better hardware wise endowed than a typical client workstation or general-purpose computers are. After all the server is expected to serve many clients and usually simultaneously at that.

Thus, servers typically tend to be more robust with higher-grade hardware components that are faster, larger, more reliable, have with fewer frills and eye-candy than is the case with the typical workstation or desktop PC computer hardware components.

Due to the nature and types of services that the servers are running it is generally the case that some of them will be classifiable as being “mission critical” from the perspective of those availing themselves of the server’s services.

For these reasons, server platforms tend to have multiple redundant computer hardware systems built-in along with “hot swap” capabilities. The last thing wanted from a server is downtime. They also come with considerably more performance enhancing and service availability related computer hardware including:

  • Multiple large “hot swap” capable hard disk drives (RAID arrays)
  • Copious quantities of memory (RAM)
  • Multiple CPUs – The more compute power the better
  • Multiple redundant power supply units (PSU) tend to be the norm
  • Multiple high-speed network interface cards (NIC) also are common depending on the intended functionality of the server for example as a firewall in an environment with one or more De-Militarized Zones (DMZ)

Computer Server Software

There are three classes of computer server software the Network Operating System (NOS), Server Applications and Administrative Software.

The Network Operating System Software

The Network Operating System includes features such as built-in support for; file sharing, print serving, backup, restoration and security are common to all network operating systems. Some may come with a web server or e-mail server built-in, others do not. Security features are included.

I have already covered the features offered by network operating systems in the article entitled “Network Operating System Features” so I will not reiterate here.

Server Applications Software

Traditional and new server specific software applications now often called Enterprise Class Applications. Many of these software applications are familiar to many users. For example, the Microsoft Office Suite, Adobe Photoshop, Multi-Media Applications, etc. are all software applications familiar to the majority of us.

The big difference between the stand-alone versions that we know so well and these “server/enterprise” versions is “optimization”. The server/enterprise versions of the software are “optimized” to run on the servers where they may be configured as a service (SaaS) or as a remote processing software application.

Today we are hearing a lot about Software-as-a-Service (SaaS). Simply put this means that the user makes a processing request and the server performs all necessary tasks then delivers the result to the user. All data stays at the server computer side. This is all a bit like incremental updating.

Another aspect of this server/enterprise class of software applications is that of concurrent instances. Here is a capacity that allows many users to access the same software applications and run the same services concurrently with many other users.

Most of us are aware that a web server can service many hundreds of concurrent users but most are unaware that this applies to virtually all software configured and optimized to run as a service (SaaS).

Some very special instances even allow multiple users to concurrently, operate on the same file. A number of users could be editing the same word document for example. Yes, there are issues inherent in this but I will leave that for another article.

Administrative Server Software

Administrative server software provides the administrative support, management and tools that are necessary for the administration, management and evolution of the entire network operating system environment including all hardware, software, peripherals and network infrastructure devices.

They also allow for the distribution of software at various levels to various users all with different specific access rights, permissions and privileges. Centralized software distribution (administrator controlled) is the name given to this and it has the advantage of being available “on demand” such that only those users who will actually use a piece of software will have that software installed as and when they desire to use it.

The administrative group of server software includes as you guessed housekeeping and daily chores capabilities such as auditing, accounting and monitoring functionalities.

Network Operating System Support

Many server applications are operating system specific, That is; they are designed to run on a specific operating system such as Microsoft’s Windows NT, Windows 2000 Server, Windows Server 2003, Novell NetWare and Linux to name but a few. They may or may not be compatible with other operating systems.

Server Benefits

While there are many different types of servers, they all contribute to providing benefits to network users such as:

  • Optimization – Server hardware designed to serve requests from clients quickly
  • Centralization – Files are in one location for easy administration
  • Security – Multiple levels of permissions can prevent users from doing damage to files. Probably the most important aspect to a server, particularly in a client/server networking environment is the greater degree of granularity of security that is possible. Overall, the client/server network is much easier to secure and back up, greatly improving the reliability and confidentiality of an organisation’s data.
  • Redundancy and Back-up – Data can be stored in redundant ways making for quick restore in case of problems
  • Assets and Resources Management – Processing workload is easier to manage in a client/server network environment.
  • Flexibility – Servers offer far greater flexibility and potential for growth along with superior stability, security and automation. Then as network and network resource requirements increase one can simply add another server to cope with the extra load.
  • Multi-Tasking – Many servers can run multiple concurrent applications and multiple concurrent instances of applications in order to serve a variety of needs.
  • Application Requirements – Every application hosted on a server will have its own set of specific server requirements.

Next time we will have a look at the various types of servers running network operating systems in an article entitled “Server Types”. Until then enjoy!

Leave Your Response