Server (Software)

Ein Server (englisch to serve ‚bedienen‘) ist ein Programm, das auf die Kontaktaufnahme eines Clients wartet, um eine bestimmte Dienstleistung für ihn zu erfüllen. Die Kommunikation erfolgt nach dem Client-Server-Modell. Die Dienstleistung des Servers ist spezifisch für den Server, so dass für jede Dienstleistung ein eigener Server existiert. Die Dienstleistung des Servers nennt man Dienst, und der Datenaustausch zwischen Client und Server ist durch ein dienstspezifisches Protokoll festgelegt.

Rechner, auf denen Server-Software ausgeführt wird, werden als Host bezeichnet. Die hier behandelte Bedeutung von Server als eine Software, die einen Dienst für Nutzer anbietet, ist die ursprüngliche korrekte Definition in der Informatik. Dass auch der Host-Rechner und somit die Hardware als Server bezeichnet wird, ist eine durch den Sprachgebrauch später hinzugekommene sekundäre Bedeutung, die jedoch in der Alltagssprache mittlerweile geläufiger ist als die originale, korrekte Definition.

Beispiele

Verfügbarkeit und Clustering

Ein Server läuft entweder permanent oder wird auf Anfrage eines Clients gestartet (Unix: siehe daemon mode, inetd). Um die Ausfallsicherheit und Leistungsfähigkeit zu erhöhen, können mehrere Server als Cluster zusammengeschaltet werden. Diese können sowohl auf einem als auch auf mehreren Hosts verteilt sein. Fällt ein oder fallen mehrere Server aus, so übernehmen die noch vorhandenen Server die Anfrage der Clients.

Bekannte Server-Typen

Server-TypProtokolleErklärung
AuthentifizierungsserverRADIUSenthält eine Datenbank mit Benutzer-IDs, Kennwörtern, IP-Adressen und anderen Informationen.
Chat-ServerIRC, XMPPvermittelt die Daten unter Chatteilnehmern.
DateiserverFTP, SFTP, WebDAVermöglichen die Übertragung von Dateien.
NFS, SMBerlauben das Bearbeiten von entfernten Dateien über einen Client. Im Allgemeinen sind auch konkurrierende Zugriffe möglich. Im Gegensatz zu einem Dateitransferdienst werden nicht die gesamten Dateien, sondern nur die auf den Dateien angewendeten Operationen und die speziell dazugehörenden Daten übertragen.
DatenbankserverCLI (ODBC, JDBC), DBIverwalten eine oder mehrere Datenbanksysteme.
Digital Media ServerDMSstellen Medieninhalte (z. B. Filme, Bilder, Musik) zur Verfügung.
DruckerserverLPDPvermitteln Zugriff auf Drucker.
DHCP-ServerDHCPweisen Rechnern im Netzwerk u. a. dynamisch IP-Adressen zu.
Gameserverdiversewerden für Onlinespiele genutzt.
MailserverSMTP, POP3, IMAPdienen zum Versenden und Empfangen von E-Mails.
Mapserverstellen auf Geodaten spezialisierte Webservices (Geodienste) bereit.
Name-ServerDNSDie DNS Root Nameserver sind die wichtigsten Nameserver des Domain Name Systems.
NewsserverNNTPNNTP ist ein Protokoll zum Austausch von Textnachrichten im Usenet.
Proxyserverstellen zwischengespeicherte Informationen anderen Computern zur Verfügung.
Streaming-Serverdiversekönnen beispielsweise Internetradio ausstrahlen (z. B. VLC).
TerminalserverRDP, VNCstellen anderen Computern (meist Thin Clients) eine emulierte Arbeitsumgebung zur Verfügung.
WebserverHTTP/HTTPSliefern Websites an Webclients aus.
ZeitserverNTPdienen zur Synchronisierung von Rechneruhren.

Server erwarten Kontaktaufnahmen von Clients auf bestimmten Ports. Jedem Server wird mindestens ein Port zugeordnet. Ein bestimmter Server wird mit einer seiner Portnummern in Verbindung mit einer Adresse seines Hosts angesprochen. Die Kommunikation erfolgt über Sockets.

Siehe auch

Literatur

  • Douglas E. Comer: Computernetzwerke und Internets. Pearson Studium, ISBN 3-8273-7023-X
  • Craig Hunt: TCP/IP. O’Reilly, ISBN 3-89721-179-3

Weblinks