Der Gastkommentar

Client-Server: Fehler immer auf der gegenueberliegenden Seite

27.08.1993

Ein Schlagwort geistert seit einiger Zeit durch die Medien. Vor wenigen Jahren noch dem Sprachgebrauch bezopfter LAN- und Unix- Gurus vorbehalten, hat sich das Paerchen Client-Server inzwischen mit Macht durchgesetzt und beherrscht die Alltags- und Langzeitliteratur weit ueber die Branche hinaus. Dies kann so weit fuehren, dass manche Zeitgenossen die beilaeufig hingeworfene Floskel, - nur so wirkt sie uebrigens professionell - schon einmal fuer die Bezeichnung eines kleinwuechsigen Wassersportlers halten.

Client-Server-Architekturen sind zunehmend im taeglichen Umfeld zu finden. Seit einiger Zeit schon setzen sogar nationale Heroen diese Technologie ein. Eine Leimener Spezialfirma zum Beispiel hat sich im Server-Markt mittlerweile einen legendaeren Ruf erworben. Hier stellt sich jedoch fuer die Client-Seite ein gewisses Problem, da die Server-Dienste fuer viele Clients oftmals unerreichbar sind. Dieses Phaenomen kennt man aus der klassischen NFS-Umgebung seit Jahren, wo bisweilen schmalbruestige DOS-PCs die Datagramme eines schnellen Sun-Servers verlieren. Auch dort liegt der Grund meist in der unzureichenden Schnelligkeit des Clients, und die Wiederholung eines Server-Befehls behebt oft das Problem. Diese Methode laesst sich jedoch nicht ueberall ohne Widerstand praktizieren.

In diesem Zusammenhang begegnet man haeufig einer Begriffsverwirrung zwischen "Client-Server" und "Serve and Volley", und es schien angebracht, hier einmal Klarheit zu schaffen.

Das Client-Server-Konzept birgt im Ansatz den unschaetzbaren Vorteil, dass die Verantwortung fuer Fehler im Sinne eines symmetrischen Multiprocessings immer auf die jeweils gegenueberliegende Seite verlagert werden kann. Diese Moeglichkeit existierte so in der alten Zeit der zentralen Datenverarbeitung nicht. Weiterhin hat die unterschiedliche Sichtweise der jeweiligen Funktion etwa von Fileserver und X-Server dazu gefuehrt, dass letztlich niemand mehr so richtig weiss, was ein Client und ein Server wirklich zu leisten haben. Im Sinne des Information-Hiding ist dies durchaus als bahnbrechender Fortschritt zu bezeichnen, und die Technologie des Silent-Programming in Unix sorgt weiterhin dafuer, dass diese Konzepte nicht zur Unzeit an die Oeffentlichkeit dringen.

Das Prinzip des Serve and Volley dagegen beruht auf einer deutlich asymmetrischen Verteilung der Akzente. Der Server stellt seine Leistungen unaufgefordert ("unsolicited") zu vorgegebenen Zeiten zur Verfuegung und ueberlaesst es dem Client, die angebotenen Dienste zeitgerecht abzunehmen.

Wie beim Client-Server-Konzept erfolgen diese Transaktionen ueber das Netz. Gehen sie unvorhergesehen darin verloren, so werden sie genau einmal neu aufgesetzt, was jedoch die Effizienz des Servers deutlich mindert. Entscheidend ist beim Serve and Volley dagegen die direkte Schnittstelle zum Netz wie beim Zugriff ueber ein Raw device. Unter Umgehung aller zusaetzlichen Protokollschichten bietet der Server alle weiteren Dienste bis zum Transaktionsende direkt auf der Netzebene an, was den Durchsatz entscheidend erhoeht.

Wie man der einschlaegigen Fachpresse entnehmen kann, haben sich auch die Behoerden weitgehend dem Client-Server-Konzept verschrieben. Diese Erkenntnis ist allerdings nicht so neu. Schon vor Jahren haben die deutschen Aemter diese Technologie in die Praxis umgesetzt. Dabei ist es ihnen gelungen, das intuitive Verstaendnis des laienhaften Endusers in jahrelanger praktischer Ausbildung on the job durch eine fortschrittliche Auffassung zu ersetzen. Entgegen landlaeufiger Meinung liegt nicht die Server-, sondern die Client-Komponente auf behoerdlicher Seite.

Dieser neuartigen Interpretation liegt die Erkenntnis zugrunde, dass eigentlich das Zahlvolk mit der Entrichtung periodischer Nutzungsgebuehren (umgangssprachlich auch Steuern genannt) eine Server-Funktion erfuellt, waehrend die administrative Infrastruktur sich im Sinne eines Clients dieser Ressourcen bedient. Daraus folgt logisch die Forderung der jeweiligen Instanzen, der Anwender moege vor dem Hintergrund dieser Funktionsverteilung den oeffentlichen Client-Instanzen gegenueber entsprechend servil auftreten und keine unangemessenen Forderungen nach sogenannten Dienstleistungen stellen.

Die oeffentliche Verwaltung als Vergegenstaendlichung langjaehriger politischer Prozesse findet dort auch ihre Ziehvaeter. So nimmt es nicht wunder, dass wir im politischen Bereich die ausgepraegtesten Formen der Client-Server-Technologie wiederfinden. Als Schoepfer politischer Visionen und kreative Gestalter gesellschaftlicher Strukturen adaptieren Politiker solche Begriffe natuerlich in der ihnen gemaessen Art.

Aus dem uns bekannten technischen Schlagwort hat sich im Laufe der letzten Jahre dynamisch die

"Ly-and-Server"-Variante herausgebildet, wobei "serve" nicht mehr transitiv, sondern reflexiv zu verstehen ist ("sich"). Fachberichte der letzten Jahre zeigen deutlich eine zunehmende Verbreitung dieser Version, und die Presse spiegelt nahezu montaeglich die Erfolgsgeschichte dieses neuen Konzepts wider.

Die Protagonisten selbst ueben sich zwar in Bescheidenheit und beteuern, dass sie sich durchaus im Rahmen der ueblichen Interpretation bewegen, das Zwinkern in den Augenwinkeln ist dabei jedoch selten zu uebersehen. Dieser vielen Zeitgenossen unbekannte Sachverhalt zeigt deutlich, dass die Politiker weit besser als ihr Ruf sind, technologisch auf der Hoehe der Zeit stehen und moderne Methoden effizient zu nutzen wissen.

Platzmangel verbietet es, an dieser Stelle weitere Beispiele vom taeglichen Einsatz der Client-Server-Architektur und ihr verwandter Konzepte zu beschreiben. Wir wollten jedoch mit diesem kurzen Abriss einen Einblick in praktische Anwendungen und etwas Verstaendnis fuer die Technologie vermitteln. Wir hoffen, dass wir Ihnen, dem Leser, damit eine nuetzliche Dienstleistung erbringen konnten.

Frank Raudszus: Ly-and-Server im oeffentlichen Leben.