Kapitel 1
Daten - Programme - Protokolle : Verschachtelte Hierarchien
Inhaltsübersicht |
Auf dem Gebiet der Datenkommunikation hat man es zuerst erkannt, daß man Ebenen oder Schichten definieren muß, um sich nicht in einem wuchernden Dickicht von Definitionen, Normen, Funktionen und Abläufen rettungslos zu verlieren. Das auch im Bibliothekswesen oft zitierte OSI-Modell [4] definiert einen siebenschichtigen Aufbau der Vorgänge, die bei jeder Datenkommunikation ablaufen. Die sieben Schichten wurden auf der Basis wohlüberlegter Grundsätze gegeneinander abgegrenzt. Unter anderem:
In dieser Arbeit werden deshalb zunächst in drei Übersichten versuchsweise solche Einteilungen vorgestellt: für Daten und Programme handelt es sich um neue Vorschläge, für Protokolle entspricht die Liste (Übersicht 3) dem bekannten OSI-Schichtenmodell. Anschließend wird für die Ebenen 6 und 7 eine anwendungsspezifische Verfeinerung ("Typologie", Kap.5) für Bibliotheksdaten dargestellt. Die so gewonnene logische Klassifikation wird auf die bekannten Datenformate angewendet. Es wird dann erkennbar, daß das modernste Format, UNIMARC, die aus dem logischen Ansatz entwickelte Gliederung am besten verkörpert, während die anderen Formate sich aus dieser neueren Sicht als weniger "sauber" erweisen: sie sind bunte Mischungen unterschiedlicher Datentypen.
Diese Arbeit ist in engem Zusammenhang mit der Entwicklung des allegro-Systems und insbesondere seiner Import- und Exportfunktionen und seines Standardformates entstanden. Der Leser möge es deshalb nachsehen, daß auf diese Software nicht ganz selten Bezug genommen wird.
D1
|
Physikalische Ebene - Bit-Ebene
physikalische (elektromagnetische) Darstellung im Rechner und auf den Datenträgern (Magnetisierung, Halbleiterzustände) Objekte: nur NULL und EINS |
D2
|
Zeichenebene - Byte-Ebene
logische Gruppen von je 8 Bits hier noch unabhängig von speziellen Codes wie ASCII oder EBCDIC Objekte: Zahlen zwischen 0 und 255, also genau 28 verschiedene Werte |
D3
|
Blockebene - Speicherverwaltung
Einteilung von Arbeits- und Massenspeichern in Blöcke fester Länge (z.B. 512 oder 1024) Kennzeichnung der Blöcke als "frei" oder "belegt" mit Hilfe von Tabellen (die auch nur Blöcke von Bytes sind!) Objekte: Blöcke von Bytes und deren Nummern |
D4
|
Dateiebene - Sicht des Betriebssystems
logische Gruppen von Blöcken = Dateien Betriebssystem verwaltet Tabellen, Zeiger und Steuerdaten, um die zu einer Datei gehörenden Blöcke zusammenzuhalten. Auch sog. "Cache-Speicher" zur Leistungssteigerung sind hier anzusiedeln. Unzugänglich für Endbenutzer. Objekte: Dateien als variabel lange Ketten von Blöcken |
|
|
D5
|
Meta-Dateiebene - Verwaltung von Dateien
logische Gruppen von Dateien, Verzeichnisse ("Kataloge") von Dateien und deren Attributen, Zuordnung zu "Benutzern", Registrierung von Zugriffsrechten (z.B. Paßwortschutz) Zugänglich mit Befehlen des Betriebssystems, z.B. MS-DOS, Unix... Objekte: Listen von Dateinamen mit Attributen |
D6
|
Strukturebene - Ebene des Programmierers
formal-funktionelle Interpretation der Daten. Datendefinition: Zeichen (ASCII...), Felder, Sätze ? ==Ø Details siehe Kap. 2 Kontext: bibliographische Formate wie MARC, MAB, Normen für Satzstruktur: ISO 2709 / DIN 1506. Zusammenhänge zwischen Datenfeldern, Sätzen und Dateien, formale Unterscheidung von Satztypen und Dateitypen Objekte: Zeichen, Felder (Kategorien), Sätze; Dateien als variabel lange Ketten solcher Objekte |
D7
|
Funktionsebene - Ebene des Endbenutzers?
==Ø Details
siehe Kap. 3
Funktionsbezogene Präsentation von aufbereiteten Daten sog. "Benutzersicht" (Bildschirm oder Ausdruck), z.B. Anzeige einer Titelaufnahme oder Liste im Klartext, z.B. ohne Kategorienummern, Steuerzeichen etc. Kontext: Regelwerke wie RAK und AACR, ISBD. Ausblendung "unnötiger" Angaben (funktionsbezogen) Objekte: Zugriffskriterien, logische Datensätze als Repräsentation realer Objekte; ein logischer Satz kann aus mehreren, verteilten physischen Sätzen bestehen |
(D8)
|
Bedeutungsebene : außerhalb
des Computers und für ihn unzugänglich)
inhaltliche Interpretation der Daten; Bewertung, Einordnung in Zusammenhänge ? ==Ø Details siehe Kap. 4 Erst hier werden "Daten" zu "Information" im umgangssprachlichen, intuitiven Wortsinn Kontext: Konventionen im Vor- und Umfeld der EDV; Aufgaben des Katalogs und der Bibliothek Objekte: die Gegenstände selbst |
P1
|
Prozessorebene - Bitmanipulation
Sprache: Microcode (physikalische Datenbearbeitung) Operationsgebiet: Register des Prozessors; kleinste Programmschritte, "fest verdrahtet",d.h. für den Programmierer (meist) unzugänglich wichtig: höchste Geschwindigkeit; Prozessorspezifisch. |
P2
|
Zeichenebene - Bytemanipulation
Sprache: Maschinensprache, Assembler, oft auch C Operationsgebiet: Arbeitsspeicher (Hauptspeicher); Umgang mit einzelnen Zeichen, direkter Zugriff auf alle Teile des Rechners wichtig: Mächtigkeit des Befehlssatzes Prozessorspezifisch. |
P3
|
Untere Betriebssystemebene: Programmablaufsteuerung
Sprache: Makrobefehle (Assembler-Unterprogramme), oft auch C. Operationsgebiet: Hauptspeicher, Geräteschnittstellen; Arbeitsspeicherverwaltung, elementare Ein-/Ausgabe, Zuteilung von Ressourcen (insbes. Rechenzeit), Steuerung der Ausführung geladener Programme System- und prozessorabhängig. |
P4
|
Mittlere Betriebssystemebene: Programmiererschnittstelle
Sprache: Dienstfunktionen für Programmierer (aufrufbar z.B. aus COBOL- oder C-Programmen). Operationsgebiet: "Kanäle" - zuordnen, öffnen, schließen; Massenspeicher- und Geräteverwaltung, Standardprozeduren für genau definierte Aufgaben, insbes. Kommunikationssoftware. Programmiersprachenabhängig. |
P5
|
Obere Betriebssystemebene: Benutzerschnittstelle
Sprache: Betriebssystem-Befehle (z.B. MS-DOS, UNIX, BS2000) Operationsgebiet: Massenspeicher; Grundfunktionen für den Umgang mit Dateien und Programmen: Finden, Ordnen, Bearbeiten (Editor), Löschen, Umbenennen, Kopieren, Starten ... Betriebssystemabhängig. |
P6
|
Höhere Programmiersprachen-Ebene
Sprachen: z.B. Cobol, Pascal, C, BASIC (sog. "Höhere Sprachen"), Software-Tools Operationsgebiet: "Programmierumgebungen"; vor allem Compiler und Zubehör, Datenbanksysteme (Datenmanipulationssprachen, Reportgeneratoren, Parametrierung etc.;) Nur noch wenig betriebssystemabhängig |
P7
|
Anwenderebene
Sprachen: z.B. Abfragesprachen (query language), höhere Kommandosprachen Operationsgebiet: Arbeitsumgebungen; Menüsysteme, interaktive Vorgänge, "Dialoge", "Benutzeroberfläche", Editor. Inhaltsorientierter Zugang zu und Umgang mit den Daten. Abhängig von einer Basis-Software, z.B. GRIPS, dBase, Pica-LBS3 (IBW), ... |
(P8)
|
Sinn- und Vernunftebene :
außerhalb des Computers und für ihn unzugänglich)
Pflichtenheft in natürlicher Sprache Operationsgebiet: Gehirn, sozialer Kontext. Verantwortlicher Umgang mit Computern. Soll man überhaupt Computer einsetzen? Entwicklung präziser Zielvorstellungen mit Beachtung von Zusammenhängen, genaue Aufgabendefinition. |
K1
|
Physikalische Ebene - Bitübertragung
Spannungen, Frequenzen, physikalische Dimensionen Übertragungsgeschwindigkeit (baud) Normen: V.24/RS232, X.21 ungesicherte Übertragung, in der Regel eng verbunden mit der 2. Ebene: |
K2
|
Sicherungsschicht
Gesicherte Übertragung von Paketen, Adressierung von Stationen Erkennung von Steuerzeichen (Byte-Ebene) Flußregelung (z.B. Warten auf Bereitschaft) Normen: HDLC (X.25 level 2), CSMA/CD (Ethernet) Fehlermeldung an Ebene K3 |
K3
|
Vermittlungsschicht - Netzwerkebene
Auf- und Abbau von (virtuellen oder festen) Endsystemverbindungen, d.h. zwischen Hostsystemen oder Kommunikationsrechnern über Knotenrechner; Datentransport in "Paketen"; Multiplexen; Rücksetzen einer Verbindung; schnelle Signalübermittlung (interrupt) Normen: Internet Protocol (IP), X.25 level 3 |
K4
|
Transportschicht - Übertragungsebene
Auf- und Abbau von Teilnehmerverbindungen d.h. zwischen Dialogteilnehmern oder Programmen; Datenflußsteuerung (Reihenfolge von Paketen), Verwaltung von "Warteschlangen" für die zu transportierenden Daten; Netzwerk-unabhängige Dienste für die Anwendungsschichten K5 bis K7. Normen: Transmission Control Protocol (TCP) |
K5
|
Logische Verbindungsebene
Kommunikationssteuerschicht Verantwortlich für Sitzungsablauf (logon, Passwort, Abbruch, logoff...) Normen: LU6.2, RPC |
K6
|
Darstellungsebene
Zeichenkodierung, Datentypenkodierung, Datenfeld-Darstellung, Menü- und Maskentechnik; Normen: ASN.1, XDR, HTTP (Hypertext Transport Protocol, das WWW-Protokoll) mit HTML |
K7
|
Anwendungsebene
funktionsbezogene Kommunikation, u.U. vom Benutzer gar nicht bewußt ausgelöst, sondern automatisch (z.B. bei verteilten Datenbanken) Dienste wie Message Handling (X.400), File Transfer, Directory Services, Job Transfer, Virtual Terminal befinden sich teilw. noch in Entwicklung, Normung und Erprobung. Auf der Basis des TCP/IP (siehe 3/4) gibt es das File Transfer Protocol (FTP) und das Telnet Protocol für Terminalverbindungen zu entferten Hosts. Diese Protokolle erstrecken sich über die Ebenen 5 bis 7. |
(K8)
|
Systementwurf)
Frage: Muß Datenkommunikation sein? Welche Art von Verbindung? Lokale Verarbeitung <-> Zentralisierung Wahl der optimalen Verbindung (Kosten!) für das konkrete DV-Konzept: leitungsorienierte Verbindung (Standleitung, Wählleitung, ISDN) oder paketvermittelte Verbindung (z.B. Datex-P). |
In Nordamerika werden in einem "Linked Systems Project", an dem die Library of Congress, OCLC, RLG und andere teilnehmen (auch Softwarefirmen), die für bibliothekarische Anwendungen relevanten Protokolle auf allen oben genannten Ebenen festgelegt bzw. werden noch erarbeitet. Auf den höheren Ebenen geht es dabei um Funktionen wie Fernleihanfragen (ILL-Protokoll), systemübergreifende Suchformulierungen (SR-Protokoll), Übertragung von Datensätzen (vor allem für Normdateien, aber auch schon bibliographische Daten).
Das LSP ist in die Norm Z39.50 eingemündet,
für die auch heute noch die Library of Congress federführend
ist.
Mittlerweile (1999) werden in der Praxis nur
noch die SR-Protokollen verwendet, die der Norm Z39.50 entsprechen. OSI
ist so gut wie "gestorben", alle Welt macht TCP/IC (auf den Ebenen K3 und
K4), weil dies die Eckpfeiler des Internets sind. Das Projekt DBV-OSI heißt
nur noch aus historischen Gründen so.