08.10.2013 Aufrufe

Skriptum

Skriptum

Skriptum

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

KAPITEL 2. PROGRAMMIERSCHNITTSTELLEN UNTER UNIX 31<br />

[Hall 1996]). Comer und Stevens [1996] behandeln das Thema umfassend, in [Comer<br />

und Stevens 1997] wird auf die Socket-Programmierung unter Windows eingegangen.<br />

2.2.1 Einführung in Clients, Server, Daemons und Protokolle<br />

Unter Server versteht man ein Programm, das einen Dienst zur Verfügung stellt.<br />

Ein Server macht Ressourcen, die irgendwo im Netz liegen, für andere Programme<br />

verfügbar. Ressource ist in diesem Zusammenhang ein äußerst weitläufiger Begriff.<br />

Eine Ressource kann sowohl Hardware (Drucker, Faxmodem, . . . ) als auch Software<br />

(Datenbank, Filesystem, Telnet, . . . ) sein. Der Serverprozess läuft auf dem Rechner,<br />

an dem die Ressource angeschlossen ist und wartet darauf, dass der zur Verfügung<br />

gestellte Dienst von einem anderen Host angefordert wird. Serverprozesse werden<br />

meistens schon beim Hochlauf durch Start-up-Skripts gestartet.<br />

Ein Client ist ein Programm, das eine solche Ressource nutzt. Ein wichtiger<br />

Punkt beim Client-Server-Konzept ist die Nutzung von Ressourcen unabhängig<br />

von deren physikalischem Standort. Ein Client muss lediglich über das Netzwerk<br />

eine Verbindung zum Server herstellen.<br />

In der UNIX-Welt wird ein Server meist auch Daemon bezeichnet. Die Verbindung<br />

von Serverprozessen zu Daemons könnte man vielleicht so sehen: Daemons<br />

tauchen plötzlich auf und verschwinden genau so plötzlich wieder. Ein Daemon unter<br />

UNIX wird meist beim Hochlauf gestartet. Anschließend wartet der Daemon<br />

passiv auf eine Anforderung. Fordert nun ein Client einen Dienst an, so wird der<br />

Daemon aktiv und stellt dem Client eine Ressource zur Verfügung. Benötigt nun<br />

der Client diese Ressource nicht mehr, dann geht der Daemon wieder in einen passiven<br />

Wartezustand über. Unter UNIX erkennt man einen Daemon an der Endung<br />

des Filenamens mit d. Beispiele: inetd, telnetd, . . . (vgl. dazu den Output des<br />

Kommandos ps -ef | grep telnetd).<br />

Unter Protokoll versteht man die Beschreibung der Interaktion zwischen Server<br />

und Client. Das Protokoll definiert das genaue Format der Daten, die zwischen den<br />

beiden Prozessen ausgetauscht werden.<br />

2.2.2 Adressierung von Diensten<br />

Um einen Dienst im Netzwerk zu finden, muss der Client erst einmal wissen, mit<br />

welchem Rechner er Kontakt aufnehmen muss. Dies erfolgt meist über eine Internetdomainadresse<br />

(Bsp.: www.fh-hagenberg.at). Diese Domainadresse wird dann<br />

umgewandelt in eine 32-Bit Netzadresse (IP-Adresse) und adressiert einen Rechner<br />

im Netzwerk. Auf diesem Rechner gibt es nun aber mehrere Kommunikationsendpunkte.<br />

Diese Kommunikationsendpunkte, die sogenannten Ports, werden mit einer

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!