Modello client-server
Il modello client-server descrive il modo in cui un server fornisce risorse e servizi a uno o più client. Alcuni esempi di server sono i server Web, i server di posta e i server di file. Ognuno di questi server fornisce risorse a dispositivi client, come computer desktop, computer portatili, tablet e smartphone. La maggior parte dei server ha una relazione uno-a-molti con i client, ovvero un singolo server può fornire risorse a più client contemporaneamente.
Quando un client richiede una connessione a un server, il server può accettare o rifiutare la connessione. Se la connessione viene accettata, il server stabilisce e mantiene una connessione con il client tramite uno specifico protocollo. Ad esempio, un client di posta elettronica può richiedere una connessione SMTP a un server di posta per inviare un messaggio. L'applicazione SMTP sul server di posta richiederà quindi l'autenticazione del client, ad esempio l'indirizzo email e la password. Se queste credenziali corrispondono a un account sul server di posta, il server invierà l'email al destinatario previsto.
Anche i giochi multiplayer online utilizzano il modello client-server. Un esempio è il servizio Battle.net di Blizzard, che ospita giochi online come World of Warcraft, StarCraft, Overwatch e altri. Quando i giocatori aprono un'applicazione Blizzard, il client del gioco si connette automaticamente a un server Battle.net. Dopo aver effettuato l'accesso a Battle.net, i giocatori possono vedere chi altro è online, chattare con altri giocatori e giocare partite insieme ad altri giocatori o contro di loro.
Sebbene i server Internet forniscano in genere connessioni a più client contemporaneamente, ogni macchina fisica può gestire solo una determinata quantità di traffico. Per questo motivo, i servizi online più popolari distribuiscono i client su più server fisici, utilizzando una tecnica chiamata calcolo distribuito. Nella maggior parte dei casi, non importa a quale macchina specifica siano connessi gli utenti, poiché tutti i server forniscono lo stesso servizio.
NOTE: Il modello client-server può essere contrapposto al modello P2P, in cui i client si connettono direttamente tra loro. In una connessione P2P non è necessario alcun server centrale, poiché ogni macchina funge sia da client sia da server.
Metti alla prova le tue conoscenze