Client-servermodel
Het client-servermodel beschrijft hoe een server bronnen en diensten levert aan een of meer clients. Voorbeelden van servers zijn webservers, mailservers en bestandsservers. Elk van deze servers levert bronnen aan cliëntapparaten, zoals desktopcomputers, laptops, tablets en smartphones. De meeste servers hebben een één-op-veelrelatie met clients. Dat betekent dat één server tegelijkertijd bronnen aan meerdere clients kan leveren.
Wanneer een client een verbinding met een server aanvraagt, kan de server de verbinding accepteren of weigeren. Als de verbinding wordt geaccepteerd, brengt de server een verbinding met de client tot stand en houdt deze in stand via een specifiek protocol. Een e-mailclient kan bijvoorbeeld een SMTP-verbinding met een mailserver aanvragen om een bericht te verzenden. De SMTP-toepassing op de mailserver vraagt de client vervolgens om verificatiegegevens, zoals het e-mailadres en wachtwoord. Als deze gegevens overeenkomen met een account op de mailserver, verzendt de server de e-mail naar de beoogde ontvanger.
Online multiplayergames gebruiken ook het client-servermodel. Een voorbeeld is de Battle.net-service van Blizzard, waarop onlinegames voor World of Warcraft, StarCraft, Overwatch en andere spellen worden gehost. Wanneer spelers een Blizzard-applicatie openen, maakt de gameclient automatisch verbinding met een Battle.net-server. Nadat spelers zich bij Battle.net hebben aangemeld, kunnen ze zien wie er nog meer online is, met andere spelers chatten en wedstrijden spelen met of tegen andere gamers.
Hoewel internetservers meestal tegelijkertijd verbindingen met meerdere clients bieden, kan elke fysieke machine maar een beperkte hoeveelheid verkeer verwerken. Daarom verdelen populaire onlinediensten clients over meerdere fysieke servers, met behulp van een techniek die distributed computing wordt genoemd. In de meeste gevallen maakt het niet uit met welke specifieke machine gebruikers zijn verbonden, omdat de servers allemaal dezelfde dienst leveren.
NOTE: Het client-servermodel kan worden vergeleken met het P2P-model, waarin clients rechtstreeks met elkaar zijn verbonden. Bij een P2P-verbinding is geen centrale server nodig, omdat elke machine zowel als client als als server fungeert.
Test je kennis