Client-Server-Modell

Was ist das Client-Server-Modell?

Das Client-Server-Modell ist eine Möglichkeit, mit der die Verteilung von Aufgaben und Dienstleistungen innerhalb eines Netzwerkes realisiert werden kann. Die Aufgaben werden an Programme vermittelt und von diesen dann erledigt. Bei diesen Programmen handelt es sich um Clients und Server. Hierbei handelt es sich um eine Software, sprich um ein Anwendungssystem.

Eine alternative Bezeichnung für das Client-Server-Modell ist Client-Server-Konzept, -Architektur, -System oder -Prinzip.

Was ist ein Client?

Bei einem Client handelt es sich um eine Anwendung, die in der Informationstechnik eingesetzt wird. Mit einem Client kann zwischen unterschiedlichen Servern kommuniziert werden.

Ein Client kann sowohl ein Computer als auch eine Software sein, welcher mit einem Server kommuniziert und von diesem Daten und Dienste zur Verfügung gestellt bekommt. Der Client stellt eine Anwendung bzw. eine Schnittstelle zum Benutzer dar. Die vom Benutzer angefragten Dienste werden vom Client an den Server übermittelt und anschließend werden die erhaltenen Daten so aufarbeitet, dass der Nutzer diese auf seinem Endgerät ablesen kann.

Ein Client wird häufig auch als Clientanwendung oder Clientprogramm bezeichnet.

Was ist ein Server?

In der Informatik kann der Begriff Server auf zwei unterschiedliche Arten verstanden werden. Ein Server als Hardware bezeichnet einen Computer, der seine Ressourcen für andere Computer oder Programme zur Verfügung stellt. Alternativ wird diese Art von Server als Host bezeichnet.

Die Software-Version eines Servers ist ein Computerprogramm, welches mit dem Client kommuniziert und seine Anfragen annimmt, weiterleitet und beantwortet. Der softwarebasierte Server kann lokal oder über ein Netzwerk die angefragten Daten und Dienste anbieten und den Zugang zu diesen herstellen. Um welchen Dienst es sich handelt, hängt von der Server-Software ab.

Zusammenspiel von Client und Server: Das Client-Service-Modell

Der Austausch zwischen Client und Server wird über das Client-Server-Modell ermöglicht. Bei einem Client-Server-Modell handelt es sich um eine Möglichkeit, Aufgaben und Dienstleistungen innerhalb eines Netzwerkes zu verteilen. Die zugeteilten Aufgaben werden von Programmen erledigt. Diese Programme unterschieden sich in Server und Clients. Der Datenaustatsuch zwischen beiden wird über bestimmte Übertragungsprotokolle ermöglicht.

Innerhalb eines Netzwerkes werden die Aufgaben und Dienstleistungen auf verschiedene Rechner verteilt und für mehrere Nutzer zur Verfügung gestellt. Die Server, die von Clients angefragt werden und Dienste zur Verfügung stellen, befinden sich dauerhaft im Betrieb, sodass der Client jederzeit auf den Server zugreifen kann und somit die Dienste nach Belieben genutzt werden können.

Was bedeutet Server Hosting?

Es ist möglich, verschiedene Server-Typen auf der gleichen Hardware zu hosten. Jedoch kann dies zu Komplikationen, Netzwerkausfällen und Verzögerungen führen. Deshalb ist es sinnvoller und auch üblicher, dass jeder Server auf einem eigenständigen Rechner untergebracht wird oder sogar auf mehrere verteilt wird.

Diese Lösung bedeutet, dass eine große Menge an Server-Hardware angeschafft werden muss. Die lohnt sich vor allem für große Unternehmen. 

Auch für Privatpersonen, Selbstständige oder kleine Start-Ups, die ein eigenes Server-Projekt realisieren möchten, ist es von Vorteil auf eine Vielzahl an Hardware zu setzen. Da die Anschaffung jedoch hohe Kosten bedeutet, gibt es hier eine alternative Lösung: Miet-Server.

Mittlerweile gibt es einige Anbieter, die über Miet-Server in verschiedenen Hosting-Modellen verfügen und anbieten. Neben den ersparten Kosten ist ein weiterer Vorteil, dass auch der Betrieb der Hardware vom Provider übernommen wird.

Wichtige Begriffe

Server: Programm, das mit dem Client kommuniziert und ihm Zugang zu den Diensten verschafft

Client: Programm, das einen Dienst bei dem jeweiligen Server anfordert

Service: Protokoll einer Aufgabe, die der Server anbietet und der Client nutzen kann

Request: Anforderung eines Clients an der Server

Response: Antwort des Servers auf die Anforderung eines Clients

Gegenstück zum Peer-To-Peer-Modell

Anders als beim Peer-To-Peer-Modell, bei dem ein beteiligtes Programm innerhalb des Netzwerkes gleichzeitig den Client und den Server darstellt, sind beim Client-Server-Modell die Komponenten Client und Server getrennt und auf verschiedene Programme verteilt.

Peer-To-Peer bezeichnet die Kommunikation unter gleichen rechnernetzen. Hier sind die Computer gleichberechtigt, sodass Dienste sowohl in Anspruch genommen werden als auch zur Verfügung gestellt werden können.

Bei dem Client-Server-Modell nimmt der Server eine Rolle ein und ist keine Hardware, also Computer, an sich. Bei Peer-To-Peer kann der Computer nämlich Server und Client zugleich sein.

Das Client-Server-Modell - Beispiele

Webserver:

Der Client sendet seine IP-Adresse an den Webserver und fordert ihn auf, eine Website zu öffnen. Sobald der Server diese Anfrage erhalten hat, sendet er die gewünschten Daten an den Client. Die gewünschte Website erscheint geöffnet im Browser.

Druck-Server:

Per Client wird ein Druckauftrag an Druck-Server geleitet, welcher diesen dann an den Drucker weiterleitet.

E-Mail-Server:

Ein E-Mail-Server stellt jedem Nutzer ein Postfach zur Verfügung, in dem die E-Mails gespeichert und verwaltet werden können.

Proxy-Server:

Bei einem Proxy-Server handelt es sich um einen zentralen Zugang zum Internet und dessen Verwaltung. Beim Einsatz eines Proxys als Netzwerkkomponente sorgt er dafür, die eigene IP-Adresse zu verbergen, um eine gewisse Anonymität im Internet zu schaffen.

VPN-Server:

Der VPN-Server ermöglicht einen verschlüsselte Verbindungsaufbau zu einem Privat-Netzwerk.

Vorteile & Nachteile

Bei dem Client-Server-Modell handelt es sich um eine Verteilung von Aufgaben innerhalb eines Netzwerkes. Der Einsatz von Client-Server-Modellen verspricht viele Vorteile, weist aber auch einige Schwachstellen auf. Im Folgenden sind sowohl Vorteil als auch Nachteile eines Client-Server-Modells aufgelistet.

Vorteile

Zentrale Administration: Da der Server im Zentrum des Netzwerkes steht, werden damit auch alle Ressourcen der Anwender, wie z.B. eine Datenbank, zentral verwaltet. Nicht nur die Verwaltung wird zentral gesteuert, sondern auch die Wartung. Wenn beispielsweise ein Softwareupdate durchgeführt werden muss, so geschieht dies nur dem Server, sodass die Clients davon nicht betroffen sind.

Einsparung von Ressourcen: Dank der zentralen Datenspeicherung und der immer bestehenden Verfügbarkeit, ist es nötig, hohe Kosten in die lokale Datenspeicherung auf den einzelnen Client-Speichern zu investieren.

Höhere Zugriffssicherheit: Da sich Clients beim Zugriff auf den Server authentifizieren müssen, besteht eine leichte Zugriffskontrolle und gleichzeitig hohe Sicherheit.

Erweiterbares Netzwerk: Das Hinzufügen und Löschen von Clients ist ohne eine Beeinträchtigung des Netzwerkes und große Änderungen verbrunden. Außerdem ist die Anzahl an Clients prinzipiell uneingeschränkt erweiterbar.

Standortunabhängigkeit: Die zentrale Datenspeicherung ermöglicht flexible Einsatzmöglichkeiten und standortunabhängige Nutzung.

Nachteile

Hohe Anschaffungskosten: Die Anschaffung dieser leistungsstarken Server ist mit hohen Kosten verbunden.

Server-Ausfall: Bei der Nutzung eines Servers besteht die Gefahr, dass dieser ausfällt. Da das gesamte Netzwerk um den Server herum aufgebaut ist, bedeutet ein Ausfall des Servers gleichzeitig einen Totalausfall des Netzes. Den Clients ist dann nämlich der Zugriff auf Daten und Dienste des Servers verwehrt.

Hinweis: Man kann diese Gefahr entgegenwirken, indem man anstatt eines Servers mehrere einsetzt. Man bezeichnet diesen Lösungsansatz als Fallback. Durch die Installierung einer Fallback-Lösung, werden die Dienste und Daten von mehreren Servern angeboten und gespeichert.

Serverüberlastung: Jeder einzelnen Client-Server-Verbindung steht eine gewisse Bandbreite zur Verfügung, die jedoch mit steigender Anzahl an Verbindungen sinkt. Bei vielen gleichzeitigen Anfragen an den Server kann es zur Überlastung kommen, die sich in längeren Wartezeiten für die Clients äußert.

Client-Server-Modell vs. Cloud Computing

Grafik Cloud-Computing

Cloud Computing

Bei Cloud Computing handelt es sich um eine frei verbundene Bereitstellung von IT-Infrastruktur und IT-Leistungen über das Internet.

Diese Leistungen können beispielsweise Speicherplatz, Rechenleistung oder Anwendungssoftware als Service sein.

Der Vorteil ist, dass der Nutzer von der kostenintensiven Bereitstellung, Installation und Betreuung eigener Rechensysteme entbunden wird.

Grafik Client Server ModellClient-Server-Modell

Das Client-Server-Modell ist das Standardkonzept für die Verteilung von Aufgaben innerhalb eines Netzwerks. Aufgaben werden mittels Server auf verschiedene Rechner verteilt und können bei Bedarf von mehreren Clients zur Lösung aufgerufen werden.

Bei den zur Verfügung gestellten diensten handelt es sich oft um Standardaufgaben wie E-Mail-Versand, E-Mail-Empfang, Web-Zugriff, etc. oder um spezifische Aufgaben einer Software oder eines Programms.

Bewerten Sie diesen Artikel

4.5 / 5

10525 Besucher bewerten diesen Artikel durchschnittlich mit 4.5 von 5 Sternen.