-
ALLGEMEINER
STAND DER TECHNIK
-
1.
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft allgemein Computerverarbeitungssysteme
und insbesondere Systeme zum Verarbeiten von Benutzereingabetransaktionen,
die zu Anwendungen geleitet werden.
-
2. Beschreibung des Standes
der Technik
-
Ein
Computerverarbeitungssystem umfasst typischerweise einen Leitrechner
oder Zentralprozessor, Speichereinheiten und ein oder mehrere Benutzerterminals,
die an den Leitrechner angeschlossen sind. Anwendungsprogramme werden
innerhalb des Leitrechners ausgeführt und beeinflussen typischerweise
Daten, die in den Speichereinheiten gespeichert sind. Benutzerterminals,
auch einfach als Benutzer bezeichnet, erzeugen Eingabemeldungen. Diese
Meldungen können
Transaktionen anfordern, die von den Anwendungsprogrammen verarbeitet werden.
Meldungen, die Transaktionen anfordern, werden auch einfach als
Transaktionen bezeichnet. Im Allgemeinen unterstützt der Leitrechner ein Transaktionsverarbeitungssystem
mit einer Transaktionsverwaltungseinheit, welche die Ausführung von Transaktionen
und die Verarbeitung der Anwendungsprogramme steuert. Eine Antwort
einer Anwendung auf eine Transaktion wird als Transaktionsausgabe
bezeichnet und wird auch von der Transaktionsverwaltungseinheit
geleitet.
-
Die
Transaktionsausgabe wird typischerweise in einer Meldung zurückgeschickt,
die zu dem Benutzerterminal geleitet wird, das ursprünglich die Transaktion
angefordert hat.
-
Benutzer
können
mit den Anwendungsprogrammen Daten austauschen und Daten beeinflussen,
die in den Speichereinheiten gespeichert sind. Über die Anwendungsprogramme
können
die Benutzer zum Beispiel Daten von den Speichereinheiten einfügen, verändern und
abrufen. Jeder Benutzer kann direkt mit dem Leitrechner verbunden
werden und durch eine Verbindungsanschluss (connection Port) oder
einen Anschlussknoten gekennzeichnet werden. Alternativ kann jeder
Benutzer mit anderen Benutzern verbunden sein als Teil eines Netzwerks, welches
seinerseits an den Leitrechner angeschlossen ist. Die meisten Computersysteme
lassen einen Datenaustausch zwischen dem Benutzerterminal und dem
Anwendungsprogrammen erst zu, wenn der Benutzer durch Herstellen
einer Datenaustauschsitzung zwischen Benutzer und Leitrechner über ein Anmeldeverfahren
mit dem Leitrechner verbunden ist.
-
Das
Anmeldeverfahren richtet die Attribute der Verarbeitung der Meldungen
ein, auch als Datenaustauschprotokoll bezeichnet, die vom Leitrechner für den Empfang
von Transaktionen von den Benutzern und für das Zurückschicken von Reaktionen auf Transaktionen
an die Benutzer befolgt werden. Das Protokoll gibt zum Beispiel
ein Synchronisierungsschema wie in eine Warteschlange gestellte
oder Zweiphasenfestschreibung an, Flusssteuerungsparameter wie Halbduplex-
oder Vollduplexmodus, das Leiten der Meldungen zu und von den Anwendungen, Festschreibungssequenzen
und Meldungsbestätigungsschemen
und auch Parameter wie Wortgröße der Meldungen
und Fehlerermittlung und -berichtigung.
-
Im
Allgemeinen ist ein Benutzer für
die Dauer der Sitzung an das eingerichtete Datenaustauschprotokoll
gebunden. Die Sitzungsbindung des Datenaustauschprotokolls geschieht über Steuerungsblöcke, die
zu Beginn jeder Sitzung erzeugt werden. Das Datenverwaltungssystem
oder unterstützende
Betriebssystem führt
Steuerungsblöcke
für jede
Benutzerverbindung mit dem Computersystem, wenn Transaktionen empfangen
werden und Antworten zurückgeschickt
werden. Nachdem die Transaktionsverwaltungseinheit eine Transaktion
empfangen hat, ermittelt sie die Transaktionsmeldungsdaten innerhalb
der Meldung, die die Transaktion anfordert, wie z.B. die Anwendung,
für welche
die Transaktion vorgesehen ist, und die Art der angeforderten Datenoperation.
Die Antwort auf die Transaktion wird gemäß den Sitzungsdaten zurückgeschickt.
EP-0 524 123 A2 befasst sich mit der Kompensierung von Unterschieden
zwischen den Transportprotokollen durch eine Anwendung und dem Transportprotokoll,
das in einem Netzwerk ausgeführt
wird, über
welches die Anwendung mit anderen Anwendungen Daten austauscht.
-
Es
wäre vorteilhaft,
wenn Benutzerterminals nicht für
eine gesamte Arbeitssitzung an ein bestimmtes Transaktionsverarbeitungsprotokoll
gebunden wären.
Das heißt,
wenn Benutzerterminals verschiedene Verarbeitungen für verschiedene
Transaktionen angeben könnten,
könnten
sie abhängig
von der Art der Meldung, der Verfügbarkeit von Ressourcen oder
von anderen ihnen bekannten dynamisch begegnenden Systembedingungen
die besten Verarbeitungsparameter und damit verbundenen Verarbeitungsdatenstrukturen
auswählen.
Zum Beispiel könnten
Benutzer während
einer Datenaustauschsitzung das Synchronisierungsschema oder den
Leitweg der Transaktionsmeldung verändern wollen. Die meisten vorhandenen
Systeme erlauben keine solche Flexibilität.
-
Ein
anderes Problem, dem die Benutzer von Datenverwaltungssystemen begegnen,
besteht darin, dass verschiedene Benutzer verschiedene Datenaustausch-
oder Transaktionsprotokolle aufweisen können. Zum Beispiel könnten bei
unterschiedlichen Terminalmodellen unterschiedlicher Hersteller jedes
ein unterschiedliches Protokoll aufweisen, und deswegen müssen der
Leitrechner und das Datenverwaltungssystem für eine Vielfalt von Datenaustauschprotokollen
geeignet sein. Außerdem
könnten die
Netzwerke, in welchen die Terminals angeschlossen sein könnten, unterschiedliche
Protokolle aufweisen. Wiederum muss das Leitrechnersystem jegliches
Datenaustauschprotokoll unterstützen,
das von dem angeschlossenen Netzwerk benutzt wird, um Meldungen
von Benutzern zu empfangen, die erforderliche Verarbeitung der Meldungen
durchführen, um
die Art des Transaktionsprotokolls zu ermitteln, welches das Datenverwaltungssystem
intern benutzt, und dann die Antwort auf die Transaktion für die Rückgabe in
das Datenaustauschprotokoll des Benutzers umwandeln.
-
1 zum
Beispiel zeigt ein Computerverarbeitungssystem 10, das
einen Leitrechner 12 enthält, an den mehrere Benutzerterminals 14 angeschlossen
sind. Der Leitrechner kann einen Prozessor wie z.B. einen International
Business Machines (IBM) Corporation System/370 oder 3090 mit einem
IBM Corporation Betriebssystem, das als „MVS" bezeichnet wird, umfassen. Die Benutzerterminals
werden benutzt, um mit mehreren Anwendungen 16, die auf dem
Prozessor ablaufen, Daten auszutauschen. Wie dargestellt sind die
Terminals über
einen Anschlussprozessor 18 an das Computersystem angeschlossen,
der für
ein IBM Corporation System/370 oder 3090 als „Virtual Telecommunication
Access Method" oder „VTAM" bekannt ist. Der
Anschlussprozessor richtet eine Datenaustauschsitzung mit jedem
Benutzerterminal ein, so dass das Datenaustauschprotokoll des Terminal
erkannt wird und die Transaktionsausgabe richtig geleitet wird.
Jede Sitzung steht mit Steuerungsblöcken in Verbindung, die für die Dauer der
Sitzung vorliegen und das Protokoll angeben, dem zu folgen ist.
-
Der
Datenaustausch zwischen dem Anschlussprozessor 18 und den
Anwendungen 16 geschieht über ein Datenverwaltungssystem 20,
das unter der Steuerung einer Transaktionsverwaltungseinheit 22 arbeitet.
Das Datenverwaltungssystem kann zum Beispiel das als „IMS" bekannte Produkt der
IBM Corporation umfassen. Das Datenverwaltungssystem enthält mehrere
Protokollschnittstellenmodule (im IMS-Produkt der IBM Corporation
werden diese Module als einheitenabhängige Module oder „DDMS" bezeichnet) 24,
die über
den Anschlussprozessor Transaktionen von einem der Benutzerterminals
empfangen, das Datenaustauschprotokoll erkennen, das von dem Terminal
verwendet wird, und die Transaktion so verarbeiten, dass sie ein
Transaktionsprotokoll bereitstellen, welches von dem Datenverwaltungssystem
verstanden werden kann. Das „DDM", über welches
ein Benutzerterminal Daten austauscht, wird für die Dauer der Datenaustauschsitzung
eingerichtet.
-
Die
Benutzerterminals 14 können
potenziell irgendeines von vielen Datenaustauschprotokollen verwenden.
Zum Beispiel können
die Terminals unter Verwendung eines Protokolls der IBM Corporation Daten
austauschen, das als „SNA"-Protokoll bekannt ist.
Andere Protokolle, die verwendet werden könnten, sind z.B. APPC, TCP/IP
und RPC. Für
jede Art von Datenaustauschprotokoll, welches von dem Leitrechner 12 unterstützt wird,
muss ein anderes Protokollschnittstellenmodul („DDM") bereitgestellt werden. Für jedes
unterstützte
Protokoll muss der Anschlussprozessor 18 das Protokoll
erkennen, welches von dem Benutzerterminal verwendet wird, und die
Transaktion zu dem geeigneten „DDM"-Modul leiten. Das „DDM"-Modul kann dann die Transaktionsdaten
isolieren und dem Datenverwaltungssystem das richtige Transaktionsprotokoll
bereitstellen. „DDM"-Module sind im Allgemeinen
Halbduplexverfahren, die seriell arbeiten. Das heißt, sie
senden eine erste Transaktion und müssen im Gegenzug eine Bestätigung empfangen,
bevor sie eine zweite Transaktion senden. Da die Halbduplex-„DDM"-Module häufig mit
Vollduplex-Benutzerterminals und komplexen Datenaustauschprotokollen
Daten austauschen müssen,
können
die „DDM"-Module recht kompliziert
und schwierig zu erzeugen sein.
-
Wie
man aus der obigen Erörterung
sehen kann, werden viele verschiedene Verarbeitungsebenen benötigt, um
den Datenaustausch von Benutzern zu Anwendungsprogrammen zu erleichtern.
Transaktionsverwaltungssysteme wie die oben beschriebenen werden
häufig
gekennzeichnet in Form eines Industriestandard-Architekturmodells
in sieben Schichten, das von der International Standards Organization
(ISO) vorgeschlagen wurde und als Open Systems Interconnection (OSI)-Bezugsmodell
bezeichnet wird. Wie dem Fachmann bekannt ist, enthält das OSI-Modell
eine unterste Bitübertragungsschicht (physical
layer) auf der Terminalebene, die die Übertragung von Datenbits zwischen
Systemen über
einen Kanal betrifft, eine Sicherungsschicht (data link layer),
die die fehlerfreie Übertragung
von Datenbits betrifft, eine Vermittlungsschicht (network layer),
die das Leiten von Meldungspaketen über ein Wirtsnetzwerk betrifft,
eine Transportschicht (transport layer), deren Funktion es ist,
den Meldungsfluss zu steuern und die Herkunft und Zielbestimmungen
von Meldungen zu ermitteln, eine Kommunikationssteuerungsschicht
(session layer), die das Einrichten von Benutzerübertragungssitzungen und die
Aufreihung und Synchronisierung von Meldungen betrifft, eine Darstellungsschicht
(presentation layer), die die Syntax und Semantik der übertragenen
Meldungen betrifft, und eine Verarbeitungsschicht (application layer),
die die Anwendungsprogramme und die Aufgabe betrifft, sinnvolle
Daten in diese hinein und aus diesen heraus zu bekommen.
-
Mit
Bezug auf das oben beschriebene „IMS"-Produkt der IBM Corporation befindet
sich zum Beispiel „IMS" in den oberen drei
Schichten des OSI-Modells, so dass die Anwendungsprogramme, die
Transaktionsverwaltungseinheit und die „DDM"-Module entsprechend die Verarbeitungs-,
die Darstellungs- und die Kommunikationssteuerungsschicht umfassen.
Die „VTAM"-Koppelmodule, die Netzwerkkanäle und die
Benutzerterminals umfassen die unteren vier Schichten des OSI-Modells, also die
Transportschicht, die Vermittlungsschicht, die Sicherungsschicht
und die Bitübertragungsschicht.
-
In
den höheren
Schichten des OSI-Modells, z.B. in der Darstellungsschicht und der
Verarbeitungsschicht, gibt es heute eine begrenzte Anzahl an Computersystemarchitekturen
in weit verbreitetem Gebrauch, das „IMS"-Produkt ist eine davon.
-
Es
ist wahrscheinlich, dass die Anzahl solcher Architekturen verhältnismäßig konstant
bleibt, wenn man die gewaltige Menge an Ressourcen bedenkt, die
bereits darin investiert worden sind, um Systeme aufzubauen und
zu unterhalten, die auf solchen Architekturen basieren. Viele Computersystembenutzer
würden
gern ihre Datenbanken und Anwendungsprogramme gemäß den derzeit
verwendeten Einrichtungen der Darstellungs- und Verarbeitungsschicht
beibehalten. Im Gegensatz dazu erfahren die unteren Stufen des OSI-Modells,
z.B. die Transportschicht und die Vermittlungsschicht, gewaltige
Veränderungen.
Zum Beispiel wurden viele Netzwerk- und Transportprotokolle wie
TCP/IP, APPC und ähnliche viel
später
entwickelt als Systemarchitekturen wie die „IMS"-Architektur. Als Folge weisen viele
der vorhandenen Datenverwaltungssysteme keine Schnittstellenmodule
auf, die mit den neueren Einrichtungen der Vermittlungs- und Transportschicht
kompatibel sind.
-
Um
zu ermöglichen,
dass neuere Netzwerkprotokolle sich an vorhandene Einrichtungen
der Darstellungs- und Verarbeitungsschicht anpassen, müssen Schnittstellenmodule
entwickelt werden, die die neueren Netzwerkprotokolle akzeptieren
und diese in ein geeignetes Transaktionsprotokoll umwandeln. In
vielen Fällen
kann es verhältnismäßig schwierig
sein, neue Schnittstellenmodule wie z.B. „DDM"-Module zu entwickeln, die die Protokolllücke zwischen älteren Systemarchitekturen
und neueren Datenaustauschprotokollen unmittelbar überbrücken können. Außerdem sind
einige der neueren Protokolle zu einer Leistung fähig, die
von älteren
Systemen nicht unterstützt
werden können.
Es wäre
vorteilhaft, wenn ein Transaktionsverarbeitungssystem derart Anwendungsprogramme
auf Benutzerterminals, die nach neueren Protokollen arbeiten, anpassen
könnte,
dass aus der Leistung der neueren Benutzerterminals der volle Nutzen
gezogen werden kann, und eine Schnittstelle derart bereitstellen
könnte,
dass der Betrieb mit neueren Protokollen für vorhandene Anwendungsprogramme
als nahtlos erscheinen würde.
-
Aus
der obigen Erörterung
sollte ersichtlich sein, dass ein Bedarf für ein System besteht, das die dynamische
Verarbeitung von Transaktionen von einer Vielzahl von Protokollen
zulässt
und neue und veränderte
Protokolle ohne große
Schwierigkeiten aufnimmt.
-
KURZDARSTELLUNG
DER ERFINDUNG
-
Dementsprechend
stellt die vorliegende Erfindung ein Transaktionsverarbeitungssystem
bereit, das Folgendes umfasst:
ein Mittel zum dynamischen Empfangen
der Attribute einer aus einer Vielzahl von Transaktionen für eine Anwendung,
die in dem Transaktionsverarbeitungssystem abläuft;
ein Mittel zum Angeben
eines Transaktionsprotokolls für
jede aus einer Vielzahl von empfangenen Transaktionen unabhängig von
irgendeinem vordefinierten Datenaustauschprotokoll, basierend auf
den Attributen;
ein Mittel zum dynamischen Anbinden des Transaktionsprotokolls
an die eine Transaktion; und
ein Mittel zum dynamischen Abtrennen
des Transaktionsprotokolls, nachdem die eine Transaktion abgeschlossen
ist.
-
Gemäß einer
anderen Erscheinungsform stellt die vorliegende Erfindung auch ein
Verfahren zum Erstellen eines Protokolls in einem Transaktionsverarbeitungssystem
bereit, wobei das Verfahren Folgendes umfasst:
Ermitteln der
Attribute einer Transaktion aus einer Anwendung in dem Transaktionsverarbeitungssystem;
und
Angeben eines Transaktionsprotokolls, das ein Synchronisierungsschema
und eine Flusskontrolle umfasst, basierend auf den Attributen für jede einer
Vielzahl von Transaktionen, unabhängig von einem vordefinierten
Datenaustauschprotokoll, wobei das Transaktionsprotokoll dann dynamisch
an die Transaktion angebunden wird; und Abtrennen des Transaktionsprotokolls,
derart, dass das Transaktionsprotokoll abgetrennt bleibt, nachdem
die Transaktion beendet ist.
-
Erfindungsgemäß gibt ein
Transaktionsverarbeitungssystem, das für die Verwendung in einem Computersystem
mit einem Leitrechner geeignet ist, auf dem Anwendungen ablaufen,
und Benutzerterminals, die an den Leitrechner angeschlossen sind,
für jede
Transaktion, die von dem Leitrechner empfangen wird, die Transaktionsattribute
an und verbindet mit ihr dynamisch ein Transaktionsprotokoll, das
bei der Verarbeitung dieser bestimmten Transaktion verwendet werden
soll. Das Transaktionsprotokoll gibt solche Attribute als Synchronisierungsschema
und Flusssteuerung an. Das Synchronisierungsschema und die Flusssteuerung
werden nur so lange verwendet, wie die Transaktion in dem System
verbleibt, und sie werden nur für
diese Transaktion verwendet. Auf diese Weise kann ein Benutzer dynamisch
angeben, wie jede Transaktion verarbeitet wird, unabhängig von
der Art und Weise, in welcher andere Transaktionen verarbeitet werden.
Das System behandelt Transaktionen als Objekte, um eine getrennte
transaktionsspezifische anwendungs- und sitzungsunabhängige Ebene
in einem Datenaustausch-Architekturmodell zu erleichtern. Die Benutzer
werden daher mit größerer Flexibilität in ihrer
Transaktionsverarbeitung versehen, und Transaktionsverarbeitungssysteme
können
leichter neue Protokolle und neue Verarbeitungsmerkmale aufnehmen,
die von Benutzern gewünscht
werden.
-
Um
Unterstützung
für die
dynamische Verarbeitung von Transaktionen bereitzustellen, erzeugt das
Transaktionsverarbeitungssystem Transaktionsverfahren, die das angegebene
Transaktionsprotokoll einschließlich
Synchronisierungsschema und Flusssteuerung ausführen. Die Transaktionsverfahren
werden vom Leitrechner gelöscht,
wenn die Antwort auf die Transaktion erzeugt und an das Benutzerterminal
gesendet ist. In noch einer anderen Erscheinungsform des Systems
wird ein zwischenprozesslicher Hochgeschwindigkeits-Transportmechanismus
verwendet, der im Vollduplexmodus arbeiten kann und dadurch die
Zeit verringert, die zum Senden und Empfangen von Transaktionen
erforderlich ist, und die Anzahl und Arten von Benutzerterminals erhöht, die
von dem System leicht unterstützt
werden können.
-
Andere
Merkmale und Vorteile der vorliegenden Erfindung sollten aus der
folgenden Beschreibung der bevorzugten Ausführungsform ersichtlich sein,
welche beispielhaft die Prinzipien der Erfindung veranschaulicht.
-
KURZE BESCHREIBUNG DER
ZEICHNUNGEN
-
1 ist
eine Übersichtsdarstellung
eines Transaktionsverarbeitungssystems des Standes der Technik.
-
2 ist
eine Übersichtsdarstellung
eines erfindungsgemäß aufgebauten
Computer-Transaktionsverarbeitungssystems.
-
3 ist
eine Darstellung der Datenstrukturen, die innerhalb des Leitrechners
des Transaktionsverarbeitungssystems, das in 2 veranschaulicht ist,
erzeugt werden.
-
4 ist
ein Flussdiagramm der Transaktionsverarbeitung innerhalb des Leitrechners,
der in 2 veranschaulicht ist.
-
5 ist
ein Flussdiagramm der Verarbeitung der Antwort auf die Transaktion
innerhalb des Leitrechners, der in 2 veranschaulicht
ist.
-
6 ist
eine Darstellung der Transaktionsmeldungs-Steuerungsdaten des Transaktionsprotokolls,
welches von dem Transaktionsverarbeitungssystem verwendet wird,
das in 2 veranschaulicht ist.
-
7 ist
eine Darstellung der Transaktionszustandsdaten des Transaktionsprotokolls,
welches von dem Transaktionsverarbeitungssystem verwendet wird,
das in 2 veranschaulicht ist.
-
8 ist
eine Darstellung der Zustandsdaten für Befehlsmeldungen des Transaktionsprotokolls,
welches von dem Transaktionsverarbeitungssystem verwendet wird,
das in 2 veranschaulicht ist.
-
9 ist
eine Darstellung der Sicherheitsdaten des Transaktionsprotokolls,
welches von dem Transaktionsverarbeitungssystem verwendet wird, das
in 2 veranschaulicht ist.
-
10 ist
eine Darstellung der Benutzerdaten des Transaktionsprotokolls, welches
von dem Transaktionsverarbeitungssystem verwendet wird, das in 2 veranschaulicht
ist.
-
11 ist
eine Darstellung der Anwendungsdaten des Transaktionsprotokolls,
welches von dem Transaktionsverarbeitungssystem verwendet wird,
das in 2 veranschaulicht ist.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORM
-
2 ist
eine Übersichtsdarstellung,
die ein erfindungsgemäß aufgebautes
Computerverarbeitungssystem 110 zeigt. Das Computerverarbeitungssystem
enthält
einen Leitrechner 112, der zum Beispiel einen Prozessor
wie einen IBM Corporation System/370 oder 3090 Prozessor umfassen
kann, der mit einem Betriebssystem wie dem IBM Corporation „MVS"-Produkt arbeitet.
Mehrere Benutzerterminals 114 sind an den Leitrechner angeschlossen
und tauschen mit einer oder mehreren Anwendungen 116 durch
Senden von Transaktionen über
ein Datenverwaltungssystem 117, das auf dem Leitrechner
unter der Steuerung einer Transaktionsverwaltungseinheit 118 läuft, Daten
aus. Die Anwendungen wiederum können
Daten beeinflussen, die in den Speichereinheiten 119 des
Computersystems 110 gespeichert sind. In der bevorzugten
Ausführungsform
unterstützt das
Computersystem ein Transaktionsverarbeitungssystem, das zulässt, dass
die Benutzerterminals die Transaktionsverarbeitungsattribute dynamisch
angeben, die für
jede einzelne Transaktion, die sie senden, verwendet werden. Wie veranschaulicht
tauschen die Benutzerterminals mit dem Datenverwaltungssystem über mehrere
Adapter 120, einen zwischenprozesslichen Transportmechanismus 122 und eine
offene Transaktionsverwaltungseinheit 124 Daten aus. Die
Benutzerterminals senden ihre Transaktionen an den Adapter, der
für das
Datenaustauschprotokoll, das sie benutzen, geeignet ist. Für jede Transaktion,
die empfangen wird, erkennen die Adapter das Transaktionsprotokoll,
das von dem Terminal benutzt wird, und stellen ein Transaktionsprotokoll
bereit, das von dem Datenverwaltungssystem verstanden werden kann.
Die Adapter können
ein Synchronisierungsschema angeben und können den Fluss von Transaktionen
durch das Datenverwaltungssystem steuern, indem sie Transaktionsmeldungsdaten
bereitstellen, welche die gewünschte Synchronisierung
und Flusssteuerung ergeben. Die Benutzerterminals 114 können daher
nach ihren Erfordernissen mit jeder Transaktion die Verarbeitung der
Transaktionen dynamisch verändern.
Außerdem können neue
Adapter zum Aufnehmen neuer Protokolle erzeugt werden, ohne dass
man die Größe oder Komplexität des Datenverwaltungssystems
erhöht.
-
Das
Transaktionsverarbeitungssystem, das gemäß der vorliegenden Erfindung
aufgebaut ist, beruht auf einem Client/Server-Modell, derart, dass
die offene Transaktionsverwaltungseinheit 124 als Server
und die Adapter 120 als Client-Verfahren betrachtet werden
können.
In dieser Hinsicht sind die Adapter nur eine Art von Client-Verfahren,
die von der offenen Transaktionsverwaltung bedient werden kann. Die
Verfahren können,
wie es vom Fachmann ermittelt wird, jegliche Form annehmen, die
zum Ausführen
der Verfahren erforderlich ist und die unten im Zusammenhang mit
der vorliegenden Erfindung in größeren Einzelheiten
beschrieben wird. Auf diese Weise stellt die vorliegende Erfindung
ein System bereit, das hinsichtlich des Datenaustausch-Architekturmodells
eine Ebene bereitstellt, welche die Verarbeitungserfordernisse der
Transaktionen von den Datenaustausch-Verwaltungserfordernissen der
Benutzer oder den Client-Verfahren trennt.
-
Ein
zusätzlicher
Nutzen, den das in 2 veranschaulichte Computerverarbeitungssystem 110 liefert,
besteht darin, dass sowohl die Adapter 120 als auch der
zwischenprozessliche Transportmechanismus 122 in einem
Vollduplexmodus Daten austauschen können. Es kann daher für eine schnellere
Verarbeitung von Transaktionen die volle Datenaustauschgeschwindigkeit
der Benutzerterminals 114 ausgenutzt werden. Der zwischenprozessliche Transportmechanismus
unterstützt
den Transport von Transaktionen zu den Anwendungen und von Antworten
auf Transaktionen zurück
zu den Adaptern, indem geeignete Datenstrukturen beibehalten werden.
In der bevorzugten Ausführungsform
umfasst das Datenverwaltungssystem das als „IMS" bezeichnete Produkt der IBM Corporation,
aber der Fachmann wird erkennen, dass die Lehren der vorliegenden
Erfindung in gleichem Maße
auf andere Computersysteme und andere Datenverwaltungsprodukte anwendbar
sind. Wenn das Computersystem einen Prozessor wie einen IBM Corporation
System/370 oder 3090 Prozessor umfasst, der mit dem IBM Corporation „MVS"-Betriebssystem arbeitet, kann
der zwischenprozessliche Transportmechanismus zum Beispiel ein IBM
Corporation Verfahrensprodukt umfassen, da als „Cross-System Coupling Facility" oder „XCF" bekannt ist. Die
Verwendung dieses vorhandenen Produkt erleichtert die Verwirklichung
der Erfindung in Computersystemen.
-
Wenn
der zwischenprozessliche Transportmechanismus 122 eine
Benutzertransaktion empfängt,
sendet der Mechanismus die Transaktion an die offene Transaktionsverwaltungseinheit 124,
welche als Schnittstelle zwischen dem Mechanismus und dem Datenverwaltungssystem 117 fungiert.
Die offene Transaktionsverwaltungseinheit ermittelt den geeigneten
Pfad für
eine Transaktion in das Datenverwaltungssystem hinein und dort heraus,
auf Parametern beruhend, die von dem Benutzer 114 in den Transaktionsmeldungsdaten
angegeben werden, wie unten weiter beschrieben wird. Das heißt, die
offene Transaktionsverwaltungseinheit 124 gibt die Datenstrukturen
an, die erforderlich sind, um eine Transaktion von dem zwischenprozesslichen
Transportmechanismus 122 zu dem Datenverwaltungssystem 117 zu
geleiten und eine Antwort auf eine Transaktion von dem Datenverwaltungssystem
zurück
zu dem passenden Benutzerterminal 114 zu geleiten.
-
Das
Datenverwaltungssystem 117 nimmt daher für den Adapter 120 die
Rolle eines Servers an und dieser die Rolle eines Client. Für das Computersystem 110 erscheinen
die Adapter als Anwendungen. Das Computersystem unterstützt das
Datenverwaltungssystem und die Adapter in diesem Client/Server-Verhältnis und
unterstützt
auch den zwischenprozesslichen Transportmechanismus 122 und unterhält die erforderlichen
Datenstrukturen für
den Betrieb des Transaktionsverwaltungssystems.
-
In
der bevorzugten Ausführungsform
erzeugt die offene Transaktionsverwaltungseinheit 124 Datenstrukturen
innerhalb des Leitrechners 112, die solch einen Zweiwege-Datenaustausch
zulassen. Wie in 3 veranschaulicht werden solche
Strukturen als Transaktionsleitungen 126 bezeichnet. Die Transaktionsleitungen
enthalten ein Eingabeverfahren 128 und ein Ausgabeverfahren 130.
Die offene Transaktionsverwaltungseinheit erzeugt auch Datenstrukturen,
die als Transaktionsverfahren 132, 134, ..., 136 bezeichnet
werden, die mit jeder Transaktionsleitung in Verbindung stehen,
wie von den Pfeilen angezeigt, welche die Transaktionsverfahren
mit der Transaktionsleitung T1 verbinden. In 3 werden Transaktionsverfahren
nur für
die Transaktionsleitung gezeigt, die als T1 gekennzeichnet ist,
aber es versteht sich, dass jede Transaktionsleitung ein oder mehrere
Transaktionsverfahren enthält.
Der Fachmann wird wissen, dass die Datenstrukturen sich in einem
Arbeitsspeicher relativ hoher Geschwindigkeit des Leitrechners 112 befinden.
-
Die
Transaktionsleitungen 126 werden von der offenen Transaktionsverwaltungseinheit 124 während einer
Initialisierungsroutine dynamisch erzeugt, wenn die offene Transaktionsverwaltungseinheit
die Transaktionsanforderungsmeldungen empfängt. Die Transaktionsverfahren 128, 130 werden
für jede
Transaktion, die von einem Benutzerterminal empfangen wird, von
der offenen Transaktionsverwaltungseinheit erzeugt, wenn sie benötigt werden, vorausgesetzt,
die Transaktionsanforderung ist mit der Bezeichnung einer Transaktionsleitung 126 verbunden.
Nachdem eine bestimmte Antwort auf eine Benutzertransaktion an ein
Benutzerterminal zurückgeschickt
worden ist, wird das verbundene Transaktionsverfahren von dem Leitrechner 112 gelöscht. Auf
diese Weise wird der Leitrechner mit den Datenstrukturen der Transaktionsverfahren
nicht stark belastet.
-
Daher
behält
das Transaktionsverarbeitungssystem gemäß der vorliegenden Erfindung
dynamisch die Datenstrukturen der Transaktionsverfahren nur für die Dauer
einer Transaktion bei, anstatt verschiedene Sitzungssteuerungsblöcke des
Datenverarbeitungssystems zu behalten, die mit jeder Sitzung verbunden
sind, an der irgendeines der Benutzerterminals beteiligt ist. Dies
verringert den Ablaufaufwand, der unterstützt werden muss, und das Volumen
an Datenstrukturen, die vom Leitrechner unterhalten werden müssen.
-
4 ist
ein Flussdiagramm, das die Transaktionsverarbeitung innerhalb des
Computersystems von 2 für Meldungen veranschaulicht,
die von den Benutzerterminals empfangen werden. Wie veranschaulicht
beginnt die Verarbeitung in dem ersten Block 202, wenn
ein Benutzerterminal eine Transaktionsmeldung erzeugt und sie an
ein Client-Verfahren sendet, oben auch als Adapter bezeichnet. Wie
oben beschrieben enthält
die Transaktion Meldungsdaten, die eine Transaktionsleitung in dem
Leitrechner kennzeichnen, die zum Empfangen der Transaktion und
Senden einer Reaktion auf die Transaktion benutzt werden soll. Wenn
die Transaktionsleitung nicht ermittelt werden kann, bewirkt der
Adapter, dass die offene Transaktionsverwaltungseinheit dem Datenverwaltungssystem
gemäß die erforderlichen
Datenstrukturen erzeugt. Im Fall der bevorzugten Ausführungsform
mit dem „IMS"-System der IBM Corporation,
das über
den zwischenprozesslichen Transportmechanismus „XCF" Daten austauscht, wird die Transaktionsleitung
zum Beispiel innerhalb des „IMS"-Systems erzeugt.
-
Der
Fachmann wird erkennen, dass vor dem Datenaustausch über das „XCF"-System ein Verfahren
einer „XCF"-Gruppe beitreten
muss, und er wird auch erkennen, dass das „XCF"-System eine Liste der Gruppenmitglieder
unterhalten wird. Daher erzeugt entweder ein Adapter oder das Datenverwaltungssystem
selbst die Gruppe oder definiert sie, welcher die verbleibenden
Adapter und/oder das Datenverwaltungssystem beitreten werden.
-
Im
nächsten
Block 204 empfängt
der Adapter die Transaktion und erkennt das Datenaustauschprotokoll
des Benutzerterminal. Danach, im nächsten Block 206,
isoliert der Adapter die Transaktionsmeldungsdaten und erzeugt das
IMS-Transaktionsprotokoll,
das unter anderem die Transaktionsbezeichnung angibt, die von dem
Benutzerterminal ausgewiesen wurde, und die Transaktion eindeutig
kennzeichnet. Die eindeutige Transaktionskennzeichnung kann zum
Beispiel ein Transaktions-Token umfassen, das bei der Transaktion
verbleibt, wenn sie von einem Adapter zu dem zwischenprozesslichen
Transportmechanismus und weiter zu dem Datenverwaltungssystem geleitet
wird. Das Isolieren der Transaktionsmeldungsdaten umfasst, dass
der Adapter die Transaktionsattribute abfragt, was in der bevorzugten Ausführungsform
durchgeführt
wird, indem Datenfelder ermittelt werden, die diese Attribute angeben,
wie es unten detaillierter beschrieben wird.
-
Nachdem
der Adapter das richtige Transaktionsprotokoll erzeugt hat, besteht
der im nächsten Block 208 dargestellte
Schritt darin, dass der Adapter die Transaktion an den zwischenprozesslichen Transportmechanismus
sendet. Dies wird durchgeführt,
nachdem der Adapter die Transaktionsmeldungsdaten in geeignete Vorspann-
und Ergänzungsblocks
gepackt hat, so dass die umgestaltete Transaktion von dem Datenverwaltungssystem
und der offenen Transaktionsverwaltungseinheit verstanden wird.
Der nächste
Block 210 veranschaulicht, dass der zwischenprozessliche Transportmechanismus
der offenen Transaktionsverwaltungseinheit im nächsten Schritt die Transaktionsmeldungsdaten
bereitstellt. Wie oben angemerkt, kann der Datenaustausch zu und
von dem zwischenprozesslichen Transportmechanismus in einem Vollduplexmodus relativ
hoher Geschwindigkeit stattfinden. Der nächste Block 212 veranschaulicht,
dass die offene Transaktionsverwaltung die Transaktion im nächsten Schritt
empfängt
und für
die Transaktion ein Transaktionsverfahren erzeugt, welches mit der
Transaktionsleitung verbunden ist, die durch die Transaktionsmeldungsdaten
angegeben wird, und dass sie ermittelt, ob die Transaktion mehrere
Meldungssegmente enthält.
Wenn mehrere Meldungssegmente vorliegen, reiht die offene Transaktionsverwaltungseinheit sie
richtig auf und stellt die originalen Transaktionsdaten wieder her.
-
Schließlich veranschaulicht
Block 214 des Flussdiagramms, dass die offene Transaktionsverwaltungseinheit
die Transaktion zur Verarbeitung weiter an die Transaktionsverwaltung
des Datenverwaltungssystems sendet, und in Block 216 des
Flussdiagramms wird die Transaktion zu der richtigen Anwendung weitergeleitet,
die auf dem Leitrechner läuft.
Dies schließt
die Verarbeitung einer Transaktion, die von einem Benutzerterminal
in das Transaktionsverarbeitungssystem hineinkommt, ab.
-
5 ist
ein Flussdiagramm, das die Transaktionsausgabeverarbeitung innerhalb
des Computersystems von 2 veranschaulicht. Wie dargestellt
beginnt die Ausgabeverarbeitung in dem ersten Block 240,
wenn das Datenverwaltungssystem von einer Anwendung eine Antwort
empfängt,
nachdem der Anwendung die Transaktionsmeldung bereitgestellt worden
ist. Der nächste
Verarbeitungsschritt, veranschaulicht in Block 242 des
Flussdiagramms, dass die offene Transaktionsverwaltungseinheit das Transaktionsverfahren
ermittelt, welches sie erzeugt hat, um es zum Zurückschicken
der Transaktionsausgabe an das richtige Benutzerterminal zu verwenden.
Der nächste
Schritt ist durch den Block 244 veranschaulicht, welcher
anzeigt, dass die offene Transaktionsverwaltungseinheit als Nächstes die
Vorspann- und Ergänzungsdaten
der Meldung hinzufügt und
die Meldungsverarbeitungsparameter angibt, die von dem zwischenprozesslichen
Transportmechanismus für
einen richtigen Datenaustausch benötigt werden.
-
Wie
von Block 246 des Flussdiagramms angezeigt löscht die
offene Transaktionsverwaltung im nächsten Schritt die Datenstruktur,
die das Transaktionsverfahren umfasst, das mit der Transaktion verbunden
ist, und die Transaktionsausgabe. Dies verringert die Menge an Ablaufaufwand
und verringert die Anzahl an Datenstrukturen, die innerhalb des Computersystems
unterhalten werden, was Raum für
das nächste
Transaktionsverfahren schafft, das für eine folgende Transaktion
zu erzeugen ist. Der nächste
Block 248 des Flussdiagramms zeigt, dass der zwischenprozessliche
Transportmechanismus im nächsten
Schritt die Transaktionsausgabe empfängt und sie dem Adapter, der
durch die Ausgabe benannt wurde, bereitstellt, wie dies von der
offenen Transaktionsverwaltungseinheit hinzugefügt wurde. Schließlich empfängt der
Adapter in Schritt 250 die Transaktionsausgabe und sendet
sie an das Benutzerterminal, das durch die Transaktionsausgabe angegeben ist,
wie dies wiederum von der offenen Transaktionsverwaltung in Form
von Vorspann- und Ergänzungsdaten
hinzugefügt
wurde.
-
Wie
oben erwähnt
fügen die
Adapter und die offene Transaktionsverwaltungseinheit den Transaktionen
bestimmte Daten hinzu, wenn sie von Benutzerterminals empfangen
werden und ihren Weg durch das Computersystem nehmen, darunter bestimmte
Daten, die das Transaktionsprotokoll umfassen, das von dem Datenverwaltungssystem
benutzt wird. Eine Beschreibung des Protokolls, das in der bevorzugten
Ausführungsform
von der offenen Transaktionsverwaltungseinheit erkannt wird, veranschaulicht
die Art der Transaktionsverarbeitung, die in einem System erreicht
werden kann, das gemäß der vorliegenden
Erfindung aufgebaut ist. 6 bis 10 veranschaulichen
diese Protokolle und die Daten, die sie bereitstellen. Es versteht
sich jedoch, dass solche Daten und ihre Anordnung nur Zwecken der
Veranschaulichung dienen. Zum Beispiel werden einige der Datenfelder,
die in dem Protokoll beschrieben sind, von dem Datenverwaltungssystem
eingestellt. Der Fachmann wird erkennen, dass solche Datenfelder
abhängig
von dem bestimmten Datenverwaltungssystem, das benutzt wird, unterschiedlich sein
können.
-
6 ist
eine Darstellung, die Meldungssteuerungsdaten veranschaulicht, die
jede Transaktion begleiten, die von dem Leitrechner empfangen wird.
In der bevorzugten Ausführungsform
umfassen die Meldungssteuerungsdaten wie folgt einen Datenumfang
von zweiunddreißig
Byte. Das erste Byte ist ein Architekturstufen-Datenfeld, das ermöglicht,
dass das Transaktionsverarbeitungssystem ermittelt, welche Stufe
oder Ausgabe des Transaktionsverarbeitungssystems benutzt wird,
und dadurch ermittelt, welche Eigenschaften unterstützt werden.
Das nächste
Byte gibt den Meldungstyp an und kann einen Wert annehmen, der entweder
eine Datenmeldung, eine Transaktions meldung, eine Antwortmeldung,
eine Befehlsmeldung oder eine Festschreibungs-Bestätigungsmeldung
anzeigt. Eine Datenmeldung zeigt eine Transaktionsausgabe von einer Anwendung
an. Das Antwortfeld zeigt an, wenn eine Antwort auf die Transaktion
oder eine Bestätigung dieser
angefordert ist, bevor die nächste
Transaktion akzeptiert werden wird. Das nächste Datenfeld steht für die Antwortanzeige,
welche anzeigt, ob die Bestätigung
eine positive Bestätigung
oder eine negative Bestätigung
oder eine Anforderung einer Bestätigung ist.
Das nächste
Datenfeld steht für
eine Übertragungsbestätigungsanzeige,
welche anzeigt, ob die Transaktion erfolgreich übertragen wurde oder fehlgeschlagen
ist.
-
Das
nächste
Datenfeld dient der Anzeige des Befehlstyps. Die verschiedenen Befehlstypen,
die von dem erfindungsgemäßen Transaktionsverarbeitungssystem
unterstützt
werden, sorgen für
eine große
Flexibilität.
Der Befehlstyp kann verwendet werden, um zum Beispiel eine bestimmte
Verarbeitung des Datenverwaltungssystems anzufordern, oder er kann
verwendet werden, um verschiedene Aspekte des Transaktionsverarbeitungssystems
zu steuern. Ein Client-Vermittlungswunsch-Befehlstyp zum Beispiel
wird in Verbindung mit einem Antwortanfrage-Merker verwendet, um
den Datenaustausch mit dem Datenverwaltungssystem über den
zwischenprozesslichen Transportmechanismus auszulösen. Ein
für den
Server verfügbarer
Befehlstyp ist eine Antwort, die vom Datenverwaltungssystem an einen Client
gesendet wird, um einen Datenaustausch zu bestätigen, der dann folgen kann.
-
Ein
anderer Befehlstyp, der von dem dargestellten System unterstützt wird,
dient dem Sperren von Eingaben für
alle Transaktionsleitungen. Auf diese Weise können ein Adapter oder das Datenverwaltungssystem
selbst angeben, wenn eine Eingabe an keine Transaktionsleitung geleitet
werden wird. Ein Befehlstyp für
die Fortsetzung der Eingabe ermöglicht,
dass alle Transaktionsleitungen wieder Eingaben empfangen. Ein anderer
Befehlstyp ermöglicht, dass
Eingaben für
eine bestimmte gekennzeichnete Transaktionsleitung gesperrt werden,
und noch ein anderer Befehlstyp ermöglicht, dass Eingaben für eine bestimmte
gekennzeichnete Transaktionsleitung fortgesetzt werden. Diese Befehlstypen
stellen einen Drosselmechanismus bereit, mit welchem ein Benutzer
(ebenso wie das Datenverwaltungssystem selbst) den Fluss von Daten
und Transaktionen durch das Datenverwaltungssystem steuern kann,
einfach durch Bereitstellen geeigneter Transaktionsmeldungsdaten.
-
Andere
Befehlstypen sind z.B. ein Neusynchronisierungsbefehl für die Neusynchronisierung zwischen
einem Adapter und dem Datenverwaltungssystem, ein Befehl zum Abbrechen
einer Meldungskette, die sich in Bearbeitung befindet, zum Verwerfen
einer Ausgabe von einer gekennzeichneten Transaktionsleitung und
zum Anfordern eines Kontextidentifizierungs-Tokens. Der Befehlstyp
für die
Anforderung des Token ermöglicht,
dass ein Adapter ein Transaktions-Token anfordert, bevor er eine Transaktion
tatsächlich
an das Datenverwaltungssystem sendet.
-
Das
nächste
Datenfeld der Meldungssteuerungsdaten, die in 6 dargestellt
sind, dient als Verarbeitungsmerker, welcher verwendet wird, um anzugeben,
ob eine benutzte Transaktionsleitung in einem synchronisierten Modus
zu betreiben ist, und/oder verwendet wird, um anzuzeigen, dass die Transaktion
die Bezeichnung einer Anwendung enthält. Das nächste Datenfeld steht für die Bezeichnung
einer Transaktionsleitung, welche in der gesamten Transaktionsverarbeitung
und Verarbeitung der Antwort auf die Transaktion verwendet wird.
Das nächste
Datenfeld enthält
einen Kettenzustandsmerker, welcher bei der Segmentaufteilung der
Transaktion verwendet wird. Dieser zeigt an, ob die zugehörige Meldung,
die Meldungssegmente umfasst, die über viele Transaktionsmeldungen
aufgeteilt sind, am Anfang, in der Mitte oder am Ende der Segmentkette
auftritt. Das nächste
Datenfeld steht für
einen Präfixmerker,
welcher anzeigt, welche Präfixe
an die Meldung angeheftet sind. Die Präfixe können zum Beispiel Zustandsdaten,
Sicherheitsdaten, Benutzerdaten oder Anwendungsdaten oder irgendeine
Kombination daraus umfassen.
-
Das
nächste
Datenfeld, das in 6 dargestellt ist, steht für die Segment-Folgenummer,
welche verwendet wird, um Meldungssegmente der Reihe nach durchzunummerieren.
Das nächste
Datenfeld enthält
eine Anforderung, die Folgenummer als eine Antwort zu senden, und
wird zum Beispiel bei Neusynchronisierungsoperationen verwendet.
Das nächste
Datenfeld steht für
einen Abtastcode, der nur zu einer negativen Bestätigungsmeldung
gehört
und anderenfalls nicht benutzt wird. Das letzte Feld in den Meldungssteuerungsdaten
schließlich
steht für
ein Transaktions-Token, wenn in dem unterstützenden Datenverwaltungssystem
Token verwendet werden.
-
7 und 8 sind
Darstellungen, die Zustandsdaten für Transaktionen veranschaulichen. Die
bestimmten Zustandsdaten, die aktuell zu einer Transaktion gehören, hängen von
der Meldung ab, die gesendet wird. Für andere Meldungen als Befehlsmeldungen
werden die Daten der 7 gesendet. In solch einem Fall
stellen die Zustandsdaten den ersten Abschnitt des Meldungspräfix dar.
-
Wie
in 7 veranschaulicht, umfasst das erste Zustandsdatenfeld
die Länge
des Zustandsdatenfeldes selbst. Wie oben erwähnt umfasst das Datenverwaltungssystem
in der bevorzugten Ausführungsform
das IMS-Produkt der IBM Corporation. Das nächste Datenfeld gibt den IMS-Zustand
an, welcher entweder ein Dialogzustand oder ein Antwortmodus ist.
Diese Zustände
werden durch das IMS-System eingestellt und werden dem Fachmann bekannt
sein. Das nächste
Zustandsdatenfeld umfasst Synchronisierungsmerker. Diese Merker
stellen entweder eine erzwungene Antwort ein, die eine Transaktionsausgabe
garantiert, selbst wenn die Transaktion ohne das Senden von Ausgabedaten
endet, einen „Festschreibemodus
Null", der Ausgaben festschreibt,
bevor sie gesendet werden, einen „Festschreibemodus Eins", der Ausgaben sendet,
bevor sie festgeschrieben werden, oder einen Übertragungs-Bekanntgabemodus,
der für
eine Bekanntgabe an den Benutzer sorgt, wenn von dem Datenverwaltungssystem
eine Kontext-Token-Kennzeichnung übertragen wird.
-
Das
nächste
Datenfeld gibt die Synchronisierungsstufe an, welche entweder auf „Keine", auf „Bestätigung" oder auf „Festschreiben" eingestellt werden
kann. Das nächste
Datenfeld, welches für
die Abbildungsbezeichnung steht, bezieht sich auf Abbildungsoptionen,
die den Benutzern des IMS-Produktes der IBM Corporation zur Verfügung stehen.
Das nächste
Datenfeld, das in 7 veranschaulicht ist, steht
für Korrelatordaten
und bezieht sich auf ein Token, das Eingabetransaktionen mit Transaktionsausgaben
oder Antworten auf Transaktionen in Beziehung setzt. Dieses Feld
ist dafür
da, dass die offene Transaktionsverwaltung es bei der paarweisen
Zusammenstellung von Antworten auf Transaktionen mit Transaktionen
verwendet, in einer Art und Weise, wie sie dem Fachmann bekannt
ist. Das nächste
Datenfeld steht für
eine Kontext-Token-Kennzeichnung, die von dem IMS-System zum Verwalten
einer Arbeitseinheit verwendet wird. Die letzten beiden Datenfelder
beziehen sich auf die Länge
des Benutzerdatenfeldes und die Benutzerdaten selbst.
-
8 ist
eine Darstellung der Zustandsdaten nur für Befehlsmeldungen. Das erste
Datenfeld enthält
die Länge
des Zustandsdatenfeldes einschließlich des Längenfeldes. Das nächste Datenfeld bezieht
sich auf die Identifikationsbezeichnung des Servers oder der offenen
Transaktionsverwaltungseinheit zur Verwendung durch den zwischenprozesslichen
Transportmechanismus. Das nächste
Datenfeld steht für
ein Token des Urhebers der Transaktionsmeldung, und das letzte Datenfeld
steht für
ein Token, das das Meldungsziel darstellt.
-
9 ist
eine Darstellung von Sicherheitsdaten und veranschaulicht neue Sicherheitsmerkmale, die
das Transaktionsverarbeitungssystem bereitstellt, und die gemäß der vorliegenden
Erfindung aufgebaut sind. Das erste Sicherheitsdatenfeld ist die Länge der
Daten einschließlich
des Längenfeldes selbst.
Das nächste
Datenfeld steht für
einen Sicherheitsmerker, der so eingestellt werden kann, dass er dem
Datenverwaltungssystem anzeigt, dass das Benutzerterminal bereits
Sicherheitsüberprüfungsverfahren
auf der Adapterstufe durchlaufen hat, die nicht wiederholt werden
müssen.
Im Allgemeinen erfordern Transaktionsprotokolle, dass die Sicherheit
sofort überprüft werden
muss, bevor Zugriff auf das Datenverwaltungssystem gewährt wird.
Gemäß der vorliegenden
Erfindung können
die Adapter dann den Sicherheitsüberprüfungspflichten
nachgehen und deswegen mit dem Sicherheitsmerker- Datenfeld eine doppelte Sicherheitsverarbeitung
ausschließen.
Dies kann die Menge an Verarbeitungsaufwandes sehr verringern.
-
Die
nächsten
drei Benutzeridentifizierungs-Datenfelder können in beliebiger Reihenfolge erscheinen
oder weggelassen werden. Diese Felder geben die Feldlänge, den
Benutzeridentifizierungs-Feldtyp und das Benutzeridentifizierungs-Datenfeld
an. Das Datenfeld steht für
die Benutzeridentifizierung selbst, dann die Länge des Passwortes, die Art
des Passwortes, das Passwort selbst, die Länge des Sicherheitsprofils,
die nicht das Längenfeld
selbst enthält,
die Art des Profils und das Profil selbst. Die nächsten beiden Datenfelder,
für RACF-Gruppenlänge und
RACF-Gruppe selbst, beziehen sich lediglich auf Produktmerkmale
der IBM Corporation.
-
10 ist
eine Darstellung der Benutzerdaten. Diese Daten umfassen nur zwei
Datenfelder, ein Längenfeld,
das die Länge
des Benutzerdatenabschnitts angibt, einschließlich des Längenfeldes selbst, und ein
Benutzerdatenfeld, das gegebenenfalls von einem Benutzerterminal
eingefügt
werden kann und von dem IMS-System unverändert im ersten Segment jeder
Antwortmeldung auf eine Transaktion zurückgegeben wird.
-
11 ist
eine Darstellung des Anwendungsdatenabschnitts. Dieser Datenabschnitt
umfasst ebenfalls nur zwei Datenfelder. Das erste Feld ist ein Längenfeld,
das die Länge
des Anwendungsdatenabschnitts, einschließlich des Längenfeldes selbst, angibt.
Das zweite Datenfeld sind die Anwendungsdaten oder Transaktionsausgabedaten.
Die Anwendungsbezeichnung ist in den ersten Bytes der Anwendungsdaten
enthalten.
-
Wie
oben beschrieben ermittelt daher ein Computersystem, das einen Leitrechner
aufweist, auf dem Anwendungen laufen, und Benutzerterminals, die
an den Leitrechner angeschlossen sind, und das auch ein Transaktionsverarbeitungssystem
enthält,
das gemäß der vorliegenden
Erfindung aufgebaut ist, Transaktionsattribute für jede Transaktion, die von
dem Leitrechner empfangen wird, und verbindet damit dynamisch ein
Transaktionsprotokoll, das bei der Verarbeitung dieser Transaktion
zu verwenden ist. Das Transaktionsprotokoll gibt solche Attribute
als Synchronisierungsschema und Flusssteuerung an. Das Synchronisierungsschema
und die Flusssteuerung werden nur so lange benutzt, wie die Transaktion
in dem System verbleibt, und werden nur für diese Transaktion benutzt.
Ein Benutzer kann dadurch dynamisch angeben, wie jede Transaktion
verarbeitet wird, unabhängig
von der Art und Weise, wie andere Transaktionen verarbeitet werden,
und er kann eine größere Flexibilität bei der
Transaktionsverarbeitung genießen.
Außerdem
können
Transaktionsverarbeitungssysteme leichter neue Protokolle und neue
Verarbeitungsmerkmale aufnehmen, die von den Benutzern gewünscht werden.
-
Dem
Fachmann ist klar, dass an der oben beschriebenen bevorzugten Ausführungsform
Veränderungen
und Modifikationen vorgenommen werden können, ohne von den Lehren der
vorliegenden Erfindung abzuweichen. Zum Beispiel sind die Datenstrukturen
der Transaktionsleitungen, so wie sie beschrieben sind, nicht notwendig;
es muss einfach ein Verfahren zum Leiten von Transaktionen und Transaktionsausgaben
geben. Ähnlich
kann der spezielle zwischenprozessliche Transportmechanismus, der mit
Bezug auf 2 beschrieben wurde, durch andere
Mechanismen ersetzt werden, die den beschriebenen Zweiwege-Datenaustausch
mit hoher Geschwindigkeit bereitstellen.
-
Im
Hinblick auf das OSI-Bezugsmodell, auf das oben Bezug genommen wurde
und das dem Fachmann bekannt ist, behandelt die vorliegende Erfindung
Transaktionen als Datenobjekte mit Attributen, die von allen Anwendungen,
Sitzungen oder Transportebenenbetrachtungen unabhängig sind. Als
solche kann die Erfindung als eine einzigartige transaktionsspezifische
Schicht des Bezugsmodells verwirklicht werden, die von den anderen
Schichten unabhängig
ist. Das oben beschriebene Protokoll ist daher nicht spezifisch
für irgendeine
Anwendung, die bedient wird. Dies befreit die Client-Verfahren oder Adapter
davon, mit anwendungsbezogenen Problemen belastet zu werden, wenn
sie Transaktionen vorlegen und Transaktionsausgaben empfangen. Die Erfindung
stellt daher ein Client/Server-Protokoll bereit, das Transaktionsverarbeitungsattribute
wie z.B. Flusssteuerung und Synchronisierungsschema dynamisch an
jede Transaktion anbindet.
-
Die
vorliegende Erfindung ist oben in Form einer derzeit bevorzugten
Ausführungsform
beschrieben worden, damit ein Verständnis der vorliegenden Erfindung
vermittelt werden konnte. Es gibt jedoch viele Konfigurationen für Computer-Transaktionsverarbeitungssysteme,
die hier nicht speziell beschrieben wurden, mit denen aber die vorliegende Erfindung
anwendbar ist. Die vorliegende Erfindung sollte daher nicht als
auf die hier beschriebene besondere Ausführungsform beschränkt angesehen werden,
sondern man sollte vielmehr verstehen, dass die vorliegende Erfindung
in Bezug auf Computer-Transaktionsverarbeitungssysteme im Allgemeinen
eine breite Anwendbarkeit aufweist. Alle Modifikationen, Variationen
oder gleichwertige Anordnungen, die innerhalb des Schutzbereichs
der beigefügten
Ansprüche
liegen, sollten daher als innerhalb des Schutzbereichs der Erfindung
angesehen werden.