Client-Server-Modell
Das Client-Server-Modell beschreibt, wie ein Server Ressourcen und Dienste für einen oder mehrere Clients bereitstellt. Beispiele für Server sind Webserver, Mailserver und Dateiserver. Jeder dieser Server stellt Ressourcen für Clientgeräte wie Desktopcomputer, Laptops, Tablets und Smartphones bereit. Die meisten Server stehen in einer Eins-zu-viele-Beziehung zu Clients. Das bedeutet, dass ein einzelner Server mehreren Clients gleichzeitig Ressourcen bereitstellen kann.
Wenn ein Client eine Verbindung zu einem Server anfordert, kann der Server die Verbindung entweder annehmen oder ablehnen. Wird die Verbindung angenommen, stellt der Server über ein bestimmtes Protokoll eine Verbindung zum Client her und hält sie aufrecht. Beispielsweise kann ein E-Mail-Client eine SMTP-Verbindung zu einem Mailserver anfordern, um eine Nachricht zu senden. Die SMTP-Anwendung auf dem Mailserver fordert dann eine Authentifizierung vom Client an, etwa die E-Mail-Adresse und das Passwort. Stimmen diese Anmeldedaten mit einem Konto auf dem Mailserver überein, sendet der Server die E-Mail an den vorgesehenen Empfänger.
Auch Online-Mehrspielerspiele verwenden das Client-Server-Modell. Ein Beispiel ist der Dienst Battle.net von Blizzard, über den Onlinespiele wie World of Warcraft, StarCraft, Overwatch und andere gehostet werden. Wenn Spieler eine Blizzard-Anwendung öffnen, verbindet sich der Spieleclient automatisch mit einem Battle.net-Server. Sobald sich die Spieler bei Battle.net anmelden, können sie sehen, wer sonst noch online ist, mit anderen Spielern chatten und Partien mit oder gegen andere Spieler spielen.
Während Internetserver normalerweise gleichzeitig Verbindungen zu mehreren Clients bereitstellen, kann jede physische Maschine nur eine begrenzte Menge an Datenverkehr verarbeiten. Daher verteilen beliebte Onlinedienste ihre Clients auf mehrere physische Server und verwenden dazu eine Technik namens verteiltes Rechnen. In den meisten Fällen spielt es keine Rolle, mit welcher bestimmten Maschine die Benutzer verbunden sind, da alle Server denselben Dienst bereitstellen.
NOTE: Das Client-Server-Modell kann dem P2P-Modell gegenübergestellt werden, bei dem sich Clients direkt miteinander verbinden. Bei einer P2P-Verbindung ist kein zentraler Server erforderlich, da jede Maschine sowohl als Client als auch als Server fungiert.
Testen Sie Ihr Wissen