Sei sulla pagina 1di 5

Teoria dei Server

SERVER
Un server (pl. servers, dall'inglese (to) serve servire, dunque letteralmente serviente, servitore) in
informatica un componente o sottosistema informatico di elaborazione e gestione del traffico di
informazioni che fornisce, a livello logico e fisico, un qualunque tipo di servizio ad altre componenti
(tipicamente chiamate clients, cio clienti) che ne fanno richiesta attraverso una rete di computer,
all'interno di un sistema informatico o anche direttamente in locale su un computer.Rappresenta cio un
nodo terminale della rete opposto all'host client. In altre parole si tratta di un computer o di un programma
che fornisce i dati richiesti da altri elaboratori, facendo quindi da host per la trasmissione delle informazioni
virtuali.
Al termine server, cos come per il termine client,
possono dunque riferirsi sia la componente hardware
che la componente software che forniscono le
funzionalit o servizi di cui sopra. La macchina
hardware server si dice anche capace di offrire
risorse in termini di servizio al client che ne fa
domanda/richiesta. Esso fa parte dunque
dell'architettura logica di rete a livello applicativo
detta client-server.

Descrizione
In base al contesto, il termine server pu indicare quindi:
1. un computer "ordinario" utilizzato per fornire servizi ad altri computer, a prescindere dalle sue
caratteristiche hardware.
2. un computer specifico appartenente alla fascia di mercato dedicata all'uso come server,
caratterizzato da alta affidabilit, maggiori prestazioni e funzioni aggiuntive.
3. un processo (ovvero un programma in esecuzione) che fornisca servizi ad altri processi (es. Server
Web).
In generale quindi si tende ad indicare come server il componente hardware che attraverso un software
specifico eroga un servizio e client il componente hardware con relativo software che ne fa uso su richiesta
dell'utente. D'altro canto sarebbe meglio ragionare maggiormente in termini astratti (un "servizio server")
dato che sempre di pi i server, intesi nel senso computazionale del termine, sono macchine virtuali grazie,
appunto, alla virtualizzazione e non computer fisici.

Ennio Mauro Rosolen

Pag. 1

Teoria dei Server

Caratteristiche
Tipicamente una macchina hardware server pu ospitare uno o pi servizi ovvero implementare
logicamente uno o pi server. Ciascun server pu essere di tipo:
iterativo, cio accogliere e soddisfare sequenzialmente una sola richiesta di servizio alla volta da parte dei
client con una tipica procedura a coda di attesa dei processi da gestire (caso di pochi client: situazione ai
primordi della rete Internet);
concorrente, ovvero soddisfare pi richieste di servizio da parte di pi client attraverso procedure tipiche
del multithreading e gestione delle risorse hardware/software della macchina (situazione diventata ora
comune nella rete Internet).

Funzionamento
I server offrono servizi al client tipicamente in modalit richiesta/risposta lavorando a livello applicativo del
modello ISO-OSI e del modello TCP/IP (come anche i client) secondo i dettami del particolare protocollo di
rete che regola il suo funzionamento per l'espletamento del servizio al client. Si appoggiano dunque agli
strati protocollari inferiori dello stack di rete, in particolare sui protocolli di livello di trasporto quali TCP e
UDP e sul livello di rete (IP) per l'instradamento.
Tipicamente l'espletamento del servizio per il client preceduta da una fase di definizione di un socket
(coppia indirizzo IP/porta) e successiva instaurazione della connessione con il server tramite TCP o UDP, con
il server che possiede un indirizzo IP statico a causa dei legami intrinseci con il nome di dominio (che
inevitabilmente fisso) attraverso il DNS. Le porte dedicate ai server sono tipicamente porte note e statiche
(well known ports), dipendenti dal particolare servizio espletato.
La creazione di applicazioni di rete, per quanto riguarda la connessione, ricade all'interno degli ambiti della
cosiddetta programmazione socket. Tipicamente tale ambito di programmazione fa uso di opportune
chiamate di sistema o API Socket al sistema operativo del server e del client per realizzare la connessione
affidabile sia in modalit iterativa sia concorrente gestendo anche tutti i possibili errori o eccezioni.

Architettura client-server o N-tier


Il complesso logico formato da uno o pi server e, solitamente, svariati client denominato Modello clientserver tipico delle Rete Internet e dei sistemi informatici aziendali. Negli ultimi anni stato esteso alla
interazione tra pi macchine o servizi eterogenei, e in tal caso si parla di Architettura 3-tier (o pi in
generale ad N-tier).
Il server riceve dai client delle richieste di servizio, e restituisce loro la risposta con i risultati dopo averne
effettuato l'elaborazione relativa. Questo ha l'indubbio vantaggio di concentrare su una sola macchina
centrale tutte le principali risorse di elaborazione, il software, la manutenzione, le informazioni critiche o
sensibili, gli accorgimenti atti a garantire affidabilit (come i backup); I client, al contrario, possono in
generale essere anche macchine con risorse e affidabilit inferiori, che hanno l'unico compito di interagire
con l'utente, e che non contengono informazioni critiche o sensibili.
Si noti che dal punto di vista software un computer non mai puramente un server, in quanto oltre ad
Ennio Mauro Rosolen

Pag. 2

Teoria dei Server

erogare servizi ad altri si appoggia solitamente a servizi forniti da terzi, e quindi contemporaneamente
server e client. Ad esempio, un server di posta elettronica si appoggia ad altri server (es. Server DNS) per
ottenere informazioni sulla rete, e quindi simultaneamente sia un server di e-mail sia un client per quanto
riguarda altri servizi relativi alla gestione della rete.
Quando invece non si in questa situazione ovvero ciascun terminale di rete in una gerarchia paritaria
con gli altri si parla di modello o architettura di rete peer-to-peer.
Tipicamente pi server diversi possono risiedere anche sulla stessa macchina hardware con risparmio sui
costi totali, previo opportuno dimensionamento per soddisfare le maggiori richieste dei client, a prezzo di
una maggiore vulnerabilit dovuta alla centralizzazione delle risorse. Dal punto di vista hardware i server
possono risiedere su un normale PC oppure su macchine hardware dedicate con prestazioni, affidabilit e
costi superiori. Nelle reti LAN aziendali spesso i server sono disposti su un segmento di rete noto come
DMZ.

Affidabilit e sicurezza
Il server un elemento fondamentale dell'infrastruttura IT di cui fa parte, in quanto i suoi
malfunzionamenti si ripercuotono su tutti i client che ne fanno uso. Pertanto, per i server si adottano
accorgimenti volti a garantire alta affidabilit che garantisca continuit di servizio (disponibilit) e
robustezza ai guasti, e alta sicurezza ovvero protezione da attacchi informatici:

utilizzo di hardware di classe superiore, con prestazioni elevate ed elementi ridondanti (dischi RAID,
alimentatori ridondanti);

protezione dell'alimentazione elettrica mediante gruppo di continuit;

protezione fisica mediante localizzazione in un locale apposito ad accesso ristretto ("sala server") o
in housing presso una server farm;

connessione di rete preferenziale, di capacit superiore,


ridondante;

climatizzazione;

configurazioni del sistema operativo volte a garantire


maggiore affidabilit e sicurezza (hardening);

gestione da parte di sistemisti esperti.

I computer progettati per essere usati come server in una sala


server di dimensioni medio-grandi vengono realizzati in modo da
poter essere montati in un armadio rack.
I maggiori investimenti richiesti da questi accorgimenti sono motivati dall'importanza che il buon
funzionamento del server ha per i suoi utenti.
Uno degli attacchi informatici pi tipici e semplici da attuare nei confronti di un server il cosiddetto
attacco di DoS, tipico di molti dispositivi di rete.

Ennio Mauro Rosolen

Pag. 3

Teoria dei Server

Cluster
Se il carico di richieste eccessivo per un solo server, o se sono necessari alti livelli di affidabilit, pi server
possono suddividersi il compito di erogare un servizio o un gruppo di servizi. In questo caso si dice che i
server formano un'unica risorsa computazionale definita come server cluster, che pu continuare a
funzionare anche se un certo numero delle macchine componenti viene messa fuori linea, anche se
ovviamente la risorsa subisce un degrado delle prestazioni generali. Questo richiede che siano dotati di un
sistema operativo adeguato, e/o collegati attraverso specifiche configurazioni di rete.

Gestione
Tipicamente i server in ambienti distribuiti come sistemi informatici e reti informatiche sono gestiti da
amministratori di sistema da remoto (telegestione) attraverso connessioni remote realizzate attraverso
varie possibili applicazioni dedicate (Virtual Network Computing).
In architetture (di rete) complesse formate da diversi sistemi e applicazioni, basati su tecnologie e
piattaforme distinte, sono spessi utilizzati prodotti software specifici (estremamente complessi) che si
occupano di realizzare l'integrazione tra i vari componenti (dislocazione fisica delle macchine e dei
database, complessit applicativa, articolazione dei servizi di base, istanze software negli ambienti di
produzione, connessione-verso gli utenti-di vari programmi gestionali e di produttivit, flussi di processo,
risorse e informazioni, ecc.). L'integrazione non solo "banalmente" di tipo hardware (per questo esiste gi
il comune consolidamento) quanto di tipo sistemistico/tecnologico/applicativo. Questi prodotti di
integrazione architetturale sono appannaggio dei grandi player, sebbene anche il mondo open source
cominci a mettere a disposizione qualche soluzione, magari adatta a complessit minori.

Sistemi operativi per server


I sistemi operativi per server sono molti ma i pi usati e pi conosciuti sono generalmente:

GNU/Linux, nelle distribuzioni Red Hat Enterprise Linux (RHEL), Suse Linux Enterprise Server (SLES),
CentOS, Debian GNU/Linux, Ubuntu Server

Windows Server di Microsoft

OS X Server di Apple

BSD e derivate: FreeBSD, OpenBSD, NetBSD

Solaris di Sun Microsystems, ora Oracle

HP-UX di Hewlett-Packard

AIX di IBM

I sistemi operativi per server possono essere sia installati direttamente sull'hardware della macchina, sia
virtualizzati sopra un hypervisor (es. una distribuzione Linux su VMware ESXi) il quale permette di sfruttare
lo stesso server fisico per pi server virtuali, ottimizzando la gestione delle risorse.
In diversi casi un sistema operativo pu fungere da hypervisor e server allo stesso tempo, ad esempio
Windows Server con Hyper-V che ospita altri sistemi Windows, oppure i Logical Domains (LDoms) di Solaris.
In applicazioni pi specifiche, quali midrange e mainframe, possibile trovare sistemi operativi pi specifici
e dedicati al processare alti volumi di record e transazioni: IBM AS/400, z/OS, z/TPF, oppure HP Integrity
NonStop.

Ennio Mauro Rosolen

Pag. 4

Teoria dei Server

Servizi e tipologie di server


Tra i servizi che vengono tipicamente erogati da un server o pi server e che ne identificano a sua volta le
varie tipologie, si possono citare:
File server, permette agli utenti di accedere ai file situati sul server come se fossero sul proprio calcolatore,
agevolando la condivisione di informazioni;
Database server, permette di gestire intere banche dati;
FTP server, fornisce alla rete accesso a cartelle pubbliche o con autenticazione;
Web server, usato per ospitare un sito web (es. server HTTP);
Application server, usato per far funzionare un programma applicativo sul Web (applicazione Web) e
condividerne le funzionalit tra gli utenti;
Mail server, usato per la gestione della posta elettronica;
Print server, permette di mettere in comune una o pi stampanti tra gli utenti di una rete con la eventuale
gestione dei diritti di accesso;
Server per la gestione di una rete informatica, locale o geografica;
DHCP server, per l'assegnazione automatica di indirizzi IP ai computer host;
DNS server, fornisce la risoluzione dei nomi di dominio dei siti (per esempio it.wikipedia.org) nei
loro indirizzi IP;
VPN server, fornisce attraverso un client VPN, l'accesso alla LAN da remoto.
VNC server, fornisce, attraverso un client VNC un desktop remoto;
Proxy server, fornisce una cache di accesso al Web e la possibilit di controlli di autenticazione (ACL) e di
filtro;
Server di autenticazione, permette di autenticare l'accesso ad altre risorse;
Server grafico o display server vedere X Window System;
Game server, ospita risorse per rendere possibili i giochi multiutente in linea;

Ennio Mauro Rosolen

Pag. 5

Potrebbero piacerti anche