Client-Server-Modell

Das Client-Server-Modell ist die Grundlage vieler moderner Netzwerkanwendungen und Dienste.

Aber wie ist ein Netzwerk nach dem Client-Server-Prinzip aufgebaut und welche Alternativen gibt es dazu?

simpleclub hilft dir, diese Fragen zu beantworten!

Client-Server-Modell einfach erklärt

Stell dir vor, du möchtest in einem Restaurant essen. Du bist der Kunde, der eine Bestellung aufgibt, und die Küche ist der Anbieter, der die Bestellung zubereitet und serviert. Der Ablauf im Restaurant funktioniert wie das Client-Server-Modell: Im Restaurant bist du der Client (Kunde) der über einen Kommunikationsweg (Kellner) einen Service des Servers (Küche) anfragt. Der Kellner bringt deine Bestellung zur Küche und bringt dir dein Essen, nachdem die Küche dieses zubereitet hat.

In einem Computernetzwerk nach dem Client-Server-Prinzip ist es ähnlich: Die Clients und der Server werden hier von Computern im Netzwerk repräsentiert. Der Kommunikationsweg ist hier die Netzwerkverbindung, über die Informationen übertragen werden.

Hier wird ein Restaurant gezeigt mit einem Overlay. Über der Küche ist ein Server abgebildet, über dem Kellner stehet Netzwerkverbindung und am Tisch steht Client.

Client und Server sind Rollen, die verschiedene Computer oder Geräte in einem Netzwerk einnehmen. Clients fragen spezifische Ressourcen oder Dienste beim Server an (Request) und der Server verarbeitet diese Anfrage und stellt dem Client die gewünschte Ressource, Information oder einen Dienst zur Verfügung (Response). Ein Request ist also die Anfrage, die ein Client im Netzwerk an den Server stellt und eine Response ist die Antwort des Servers.

Client-Server-Netze begegnen dir im Alltag häufig. Beispielsweise ist ein Mailprogramm auf deinem Computer ein Client, der die Mail, die du abrufen möchtest, bei einem E-Mailserver anfragt, auf dem diese gespeichert ist. Der Server reagiert auf die Anfrage und leitet die E-Mail an dein Mailprogramm weiter.

Client-Server-Modell Definition

Das Client-Server-Modell ist ein Verteilungsmodell für Computeranwendungen und Netzwerkdienste, bei dem eine Server-Komponente Dienste für mehrere Client-Komponenten bereitstellt. Die Clients stellen Anfragen an den Server (Request), der einen Dienst oder eine Ressource zurückgibt (Response).


Netzwerkgrundlagen Client-Server-Modell

Ein Netzwerk ist eine Gruppe von miteinander verbundenen Computern oder Geräten, die in der Lage sind, Informationen und Ressourcen auszutauschen. Netzwerke können aus nur wenigen Geräten oder aus vielen Tausend Geräten bestehen.

Die Hauptkomponenten eines Netzwerks sind Knoten (Computer, Server, Netzwerkgeräte) und Verbindungen (Kabel, Funkverbindungen), die den Datenaustausch ermöglichen.

Hier wird ein einfaches Netzwerk aus zwei Computern, einem Kopierer und einem Drucker dargestellt. Diese stehen in einem Büroraum. Die Netzwerkverbindungen werden durch blaue Linien repräsentiert.

Aufbau des Client-Server-Modells

Ein Client-Server-Netzwerk besteht aus mehreren Clients und einem oder mehreren Servern, die über ein Netzwerk, wie das Internet oder ein lokales Netzwerk (LAN), miteinander verbunden sind. Die Clients sind meist Endgeräte wie Smartphones, Tablets, Laptops oder Desktop-PCs, auf denen Anwendungen laufen, die mit den Servern kommunizieren.

Die Server sind hingegen leistungsfähige Rechnersysteme, die darauf ausgelegt sind, eine Vielzahl von Anfragen von verschiedenen Clients gleichzeitig zu bedienen und dabei eine hohe Verfügbarkeit und Performance zu gewährleisten.

Hier wird schematisch ein ganz simples Client Server Nezwerk dargestellt. Das Netzwerk besteht aus einem Server, der an vier Clients angebunden ist.
Client-Server-Netzwerk

Client im Client-Server-Modell

Ein Client ist eine Software- oder Hardwarekomponente, die von einem Benutzer verwendet wird, um auf Dienste zuzugreifen, die von einem Server bereitgestellt werden. Clients sind in der Regel Anwendungen oder Geräte, die Anfragen (Requests) an Server senden und von diesen Antworten (Responses) erhalten.

Im Client-Server-Modell gibt es verschiedene Typen von Clients, hauptsächlich Thin Clients und Thick Clients (auch Fat Clients):

  • Thin Client: Minimaler Client, hauptsächlich serverabhängig, nutzt maßgeblich Ressourcen vom Server für Verarbeitung und Speicherung.
  • Thick Client: Leistungsfähigerer Client, führt Verarbeitungs- und Speicheraufgaben lokal aus, weniger serverabhängig.

Was du dir darunter vorstellen kannst, siehst du hier nochmal jeweils an einem Anwendungsbeispiel:

Thin Client Beispiel:

Stell dir eine Büroumgebung vor, in der Mitarbeiter Thin Clients als Arbeitsplatzrechner nutzen. Sie greifen über diese Geräte auf eine zentrale Anwendung auf einem Server zu, beispielsweise um Kundendaten zu verwalten. Die Thin Clients zeigen nur die Benutzeroberfläche an, während die eigentliche Datenverarbeitung und -speicherung auf dem Server stattfindet.

Thick Client Beispiel:

In einem Unternehmen verwenden Mitarbeiter Laptops oder Desktop-PCs, auf denen Programme wie Textverarbeitung oder Tabellenkalkulation installiert sind. Die Geräte verarbeiten und speichern Daten direkt, während sie auch auf zentrale Netzwerkressourcen wie Dateiserver oder Datenbankserver zugreifen, um zusätzliche Informationen abzurufen oder Dateien mit Kollegen zu teilen.

Hier wird ein einfacher Computer abgebildet.

Server im Client-Server-Modell

Ein Server ist eine Software- oder Hardwarekomponente, die speziell für die Bereitstellung von Diensten für Clients konzipiert ist. Server sind in der Regel leistungsstarke Computer oder Netzwerkgeräte, die Anfragen von Clients empfangen, verarbeiten und beantworten.

Der Begriff Server meint damit also nicht zwangsläufig eine spezifische Hardware, sondern die Rolle, die eine Software auf einem Computer einnimmt. Es ist allerdings üblich, Hardware zu verwenden, die optimiert ist für Serverfunktionen.

Hier wird schematisch ein Server dargestellt, der über ein Headset kommuniziert.

Arten von Servern im Client-Server-Modell

Die Server haben in der Regel dedizierte Aufgaben und Dienste, welche sie zur Verfügung stellen. Es gibt also verschiedene Arten von Servern.

Webserver

Webserver sind spezialisierte Server, die Webseiten und Webanwendungen bereitstellen. Sie empfangen HTTP-Anfragen von Clients (z. B. Webbrowsern), verarbeiten diese und senden die angeforderten Ressourcen (z. B. HTML-Dokumente, Bilder, CSS, JavaScript) als HTTP-Antwort zurück.

Druckserver

Druckserver verwalten und steuern Drucker und Druckaufträge in einem Netzwerk. Sie stellen eine zentrale Schnittstelle für die Verwaltung von Druckern, Treibern und Druckwarteschlangen bereit und ermöglichen es Clients, Druckaufträge an Drucker im Netzwerk zu senden. Druckserver helfen dabei, Druckressourcen effizient zu verwalten und die Drucklast auf mehrere Drucker zu verteilen.

Dateiserver

Dateiserver speichern, verwalten und stellen Dateien zur Verfügung. Sie ermöglichen den Zugriff auf Dateien über das Netzwerk und bieten Funktionen zur Verwaltung von Dateien, wie Ordnerstrukturen, Zugriffsrechte und Sicherungskopien. Dateiserver nutzen oft Protokolle wie FTP, SFTP oder SMB.

Drucken und Daten abrufen über Server

Hinweis: Wenn der Drucker, wie in der Animation dargestellt, meldet, dass der Druckauftrag nicht erfüllt werden kann, wird über den Server eine entsprechende Fehlermeldung an den Client gesendet.

E-Mail-Server

E-Mail-Server sind für die Verwaltung und Zustellung von E-Mails zuständig. Sie empfangen, speichern und senden E-Mails auf Basis von Protokollen wie SMTP (Simple Mail Transfer Protocol), POP3 (Post Office Protocol) und IMAP (Internet Message Access Protocol).

Anwendungsserver

Anwendungsserver stellen Anwendungslogik und Geschäftsprozesse bereit, die von Clients oder anderen Servern genutzt werden. Sie bieten eine Plattform für die Ausführung von Softwareanwendungen und können Funktionen wie Ressourcenmanagement, Sicherheit und Transaktionsverarbeitung bereitstellen.

Datenbankserver

Datenbankserver verwalten und speichern Daten in Datenbanken. Sie bearbeiten Anfragen von Clients, um Daten abzurufen, einzufügen, zu aktualisieren oder zu löschen, und stellen sicher, dass die Daten konsistent und sicher gespeichert werden.

Datenbankserver kommunizieren über eine API (Application Programming Interface) mit dem jeweiligen Datenbankprotokoll des Servers.

Datenbankabfragen erfolgen über spezifische Abfragesprachen wie SQL (Structured Query Language).

Beispielsweise können so Daten zu einzelnen Kunden abgerufen werden.

Abrufen von Kundendaten in einer Datenbank

Kommunikationsprotokolle

Clients und Server kommunizieren über spezielle Kommunikationsprotokolle. Diese Protokolle definieren die Regeln für den Datenaustausch zwischen den beiden Komponenten.

Beispiele für Kommunikationsprotokolle sind das Hypertext Transfer Protocol (HTTP) für Webanwendungen oder das File Transfer Protocol (FTP) für den Dateitransfer.

P2P-Netzwerk vs. Client-Server-Modell

Ein Peer-to-Peer-Netzwerk (P2P) ist eine alternative Netzwerkstruktur, bei der alle Teilnehmer gleichberechtigt sind und sowohl als Client als auch als Server fungieren können.

Im Gegensatz zum Client-Server-Modell gibt es bei P2P-Netzwerken keine zentralen Server, die Anfragen von Clients bearbeiten. Stattdessen stellen die Teilnehmer des Netzwerks Ressourcen direkt anderen Teilnehmern zur Verfügung, und jeder Knoten kann sowohl Ressourcen anfordern als auch bereitstellen.

Hier wird schmematisch ein P2P-Netzwerk dargestellt. Hier sind viert Computer jeweils über eine Netzwerkverbindung miteinander verbunden.
Peer-to-Peer-Netzwerk

Client-Server-Modell Beispiele

Das Client-Server-Modell kommt in vielen verschiedenen Anwendungsbereichen zum Einsatz, einige davon sind:

  • Webanwendungen: Wenn du eine Webseite besuchst, sendet dein Webbrowser (Client) eine Anfrage an einen Webserver, der die angeforderte Webseite zurückgibt.
  • E-Mail: Dein E-Mail-Client (z. B. Outlook) stellt Anfragen an E-Mail-Server, um E-Mails abzurufen, zu senden oder zu löschen.
  • Datenbanken: In vielen Unternehmen greifen verschiedene Anwendungen (Clients) auf zentrale Datenbanken (Server) zu, um Daten abzufragen.

Zusammenfassung Client-Server-Modell

  • Client-Server-Modell: Grundlegendes Konzept in der Informatik, Basis für viele moderne Netzwerkanwendungen und Dienste.
  • Clients: Stellen Anfragen an Server (z. B. Webbrowser, E-Mail-Clients, mobile Apps).
  • Server: Verarbeiten Anfragen und geben Ergebnisse zurück (z. B. Webserver, Datenbankserver, Dateiserver).
  • Kommunikationsprotokolle: Regeln für den Datenaustausch zwischen Clients und Servern (z. B. HTTP, FTP).
  • Netzwerk: Gruppe von miteinander verbundenen Computern oder Geräten, die Informationen und Ressourcen austauschen
    Client-Server-Netzwerk: Netzwerkstruktur mit zentralen Servern, die Anfragen von Clients bearbeiten.
  • Peer-to-Peer-Netzwerk (P2P): Alternative Netzwerkstruktur, bei der alle Teilnehmer gleichberechtigt sind und sowohl als Client als auch als Server fungieren.
No items found.

simpleclub ist am besten in der App.

Mit unserer App hast du immer und überall Zugriff auf: Lernvideos, Erklärungen mit interaktiven Animationen, Übungsaufgaben, Karteikarten, individuelle Lernpläne uvm.

Jetzt simpleclub Azubi holen!

Mit simpleclub Azubi bekommst du Vollzugang zur App: Wir bereiten dich in deiner Ausbildung optimal auf deine Prüfungen in der Berufsschule vor. Von Ausbilder*innen empfohlen.

Jetzt simpleclub Azubi holen