De eenvoudigste definitie van een server is een combinatie van hardware, software en communicatiemogelijkheden, die meerdere gebruikers of clients ten dienst staat. De meeste servers zijn interactief en hebben verschillende typen terminals, pc’s en momenteel browsers als clients, maar er zijn ook batch- en ‘store and forward’-servers.
Servers variëren ook in schaal: van servers voor de ondersteuning van een paar pc-gebruikers tot bedrijfskritische systemen. De belasting van typische kantoorafdelingsservers is vrij consistent en voorspelbaar, maar grote e-handelservers hebben te maken met een grote variatie in de werklast. In feite is dit het grote probleem waarmee rekening gehouden moet worden bij de introductie van e-handel. De meeste bedrijfskritische systemen kenden in het verleden immers een voorspelbare werklast.
De behoefte aan veerkracht bij servers varieert ook. Alle servers moeten betrouwbaarder zijn dan de individuele clients, maar hoe veerkrachtiger een systeem, des te duurder is het. Extra betalen voor een kantoorserver is niet economisch, omdat de kosten voor het platgaan van een kritisch systeem voor een bedrijf veel hoger zijn dan de extra kosten van een veerkrachtig systeem.
Het is gebruikelijk om meer dan één serverfunctie op een enkele server te draaien. Zelfs Netware ondersteunde zowel de bestands- als de afdrukfuncties. Bij NT, Unix l, enzovoort, is het gebruikelijk om de database te draaien op hetzelfde systeem als de bestandsserver. Maar het kan ook van pas komen om meerdere servers met één functie te gebruiken. Voorbeelden van taakspecifieke servers zijn die voor het Web, e-mail, print, fax en databases met informatie voor specialisten. In veel gevalleen is het echter noodzakelijk dat twee of meer serverfuncties samenwerken, zoals een applicatie-, web- en databaseserver. Als ze geïmplementeerd worden in aparte kasten, moeten er berichten over het lan worden uitgewisseld – met alle beheer- en prestatieproblemen van dien.
De simpelste servers zijn tegenwoordig te implementeren met gewone pc’s, die Netware, NT of Unix (SCO of Unix Ware) draaien, Netware is momenteel waarschijnlijk te vervangen door Linux, NT zal over een paar jaar worden vervangen, en PC-Unix zal naar Linux migreren. Alle pc-leveranciers hebben bij de productie van pc’s speciale aandacht besteed aan kwaliteit, voeding, meervoudige I/O-sleuven, multiprocessoren, montage in rekken, enzovoort. Dat maakt ze kosteneffectieve afdelingsservers. Met disks van meerdere gigabytes, honderden MB’s geheugen en snelle Intel-processoren vormen deze machines een uitdaging voor de grotere en duurdere Unix-machines van HP, Sun en IBM. Deze hebben niet alleen meer capaciteit, maar zijn vooral een stuk betrouwbaardere en meer schaalbaar. Ze moeten wel mikken op een beschikbaarheid van 7x24x365, en ‘actieve’ upgrading en dienstverlening. Bij deze grootschalige systemen is complex beheer van meerdere servers met enkele functies niet acceptabel, en dus moeten ze meerdere functies ondersteunen. Hoewel dit niets nieuws is, moeten de nieuwe systemen opgewassen zijn tegen een enorme toename van de piekbelasting. Daarom worden grootschalige servers met partitionering ontworpen om serverfuncties te isoleren, maar er is meer nodig om de variërende werklast te kunnen ondersteunen.
De IBM-mainframes hebben de langste historie als het gaat om systemen met logische partitionering, maar HP, Sun, Compaq en Unisys zetten nu ook machines in de markt die de mogelijkheid van partitionering hebben. Zoals de eenvoudigere Intel-servers naar de bovenkant van de markt oprukken, moet de gevestigde Unix-server de markt van de IBM-mainframes betreden.
HP, Sun, Compaq en Unisys kiezen alle voor de symmetrische multiprocessor (SMP) architecturen, die zeer geavanceerd zijn in vergelijking met de eenvoudiger pc-SMP-architecturen. Deze nieuwe machines hebben drie niveaus caches. Niveau 1 is de processor, niveau 2 zit op de processorinterface en niveau 3 op de bus. Het belangrijkste verschil echter is de bus, die processoren, geheugen en I/O verbindt. Om logische partitionering te ondersteunen moet de bus zeer snel zijn. De CMP-machines van Unisys bijvoorbeeld, gebruiken een meerwegs ‘cross-bar’ switch; een aantal machines gebruikt de hogesnelheids-interconnectietechnologie Servernet van Compaq (Tandem) onder licentie. Deze geavanceerde SMP-architecturen concurreren met de ‘Non-Uniform Memory Architecture (Numa), die een cache gebruikt om geheugen-op-afstand in kaart te brengen in een lokaal adres, met ondersteuning van SGI en IBM (Sequent).
IBM draait zijn eigen MVS of z/OS besturingssysteem op het mainframe, met uitgebreide ondersteuning van partitionering en clustering. Andere leveranciers draaien hun eigen versies van Unix. De CMP-architectuur van Unisys maakt echter gebruik van partitionering om een emulatie te draaien van het oudere Unisys-besturingssysteem en van een versie van Windows NT. Door effectief als een ‘gast’ te draaien in de CMP-omgeving, benadert NT het meest een systeem op ondernemingsniveau. Desalniettemin lijkt de architectuur ideaal om de weg van IBM te volgen, en om een Linux-optie te introduceren in plaats van NT.
Martin Healey, pionier ontwikkeling van op Intel gebaseerde computers en c/s-architectuur. Directeur van een aantal it-bedrijven en professor aan de Universiteit van Wales.