Eingehende Verkettung
Die Aufteilung von Anwendungsdaten in Data-Nachrichten und die Steuerung der eingehenden Verkettung liegen in der Verantwortung der Anwendung.
Die sekundäre maximale Größe der Sendeanforderungseinheit für die Sitzung ist ein Parameter in der BIND-Nachricht vom Host und im BICB (Bind Information Control Block) der Open(PLU) OK Confirm-Nachricht verfügbar. Die Anwendung muss sicherstellen, dass jede eingehende Data-Nachricht einer einzelnen Anforderungseinheit entspricht. Diese enthält nicht mehr Daten als die im BICB angegebene maximale Größe der Anforderungseinheit.
Die Anwendung muss die BCI- (Begin Chain Indicator) und ECI-Anwendungsflags (End Chain Indicator) im Header der Data-Nachrichten verwenden, um die Verkettung zu steuern. (Weitere Informationen finden Sie unter Anwendungsflags.) Die Kette ist die Wiederherstellungseinheit, und wenn in der Kette behebbare Fehler auftreten, sollte die Anwendung die Verantwortung für die Wiederherstellung übernehmen. (Weitere Informationen finden Sie unter Wiederherstellung.)
Eine eingehende Kette kann auf folgende Weise beendet werden:
Die vollständige Kette wird ohne Fehler gesendet. Alle Data-Nachrichten in der Kette wurden an den Host übergeben. Wenn die Sitzung das Senden von Ketten mit eindeutigen Antworten durch den sekundären Knoten zulässt und die Anwendung das Feld ACKRQD in der letzten Data-Nachricht der Kette festlegt, empfängt die Anwendung eine Status-Acknowledge(Ack)-Nachricht vom lokalen Knoten, wenn der Host eine Antwort bereitstellt.
Der lokale Knoten erkennt einen kritischen Fehler im Format einer Data-Nachricht von der Anwendung oder im Zustand der Sitzung. Der lokale Knoten lehnt die Data-Nachricht mit einer Status-Acknowledge(Nack-2)-Nachricht ab, die einen Fehlercode enthält, und schließt die PLU-Verbindung. Beachten Sie, dass der lokale Knoten eine eingehende CANCEL-Anforderung generiert, bevor die PLU-Verbindung geschlossen wird. Der lokale Knoten sendet eine TERM-SELF-Anforderung an den Host, um eine UNBIND-Anforderung auszulösen.
Der Host sendet eine negative Antwort auf eine Anforderung in der Kette. Der lokale Knoten sendet eine Status-Acknowledge(Nack-1)-Nachricht mit den Erkennungscodes und der Sequenznummer aus der negativen Antwort an die Anwendung. Wenn der Host eine Anforderung ablehnt, die nicht das ECI-Anwendungsflag enthält, und die Anwendung in der PLU-CICB nicht die Option zum Abbruch angibt, generiert der lokale Knoten außerdem eine eingehende CANCEL-Anforderung. Wenn die Anwendung den Abbruch der Anwendung angibt, muss sie eine EC- oder Status-Control(CANCEL) -Nachricht senden, um die Kette zu beenden. Alle nachfolgenden eingehenden Ketten werden mit einer nicht kritischen Status-Acknowledge(Nack-2) -Nachricht, Erkennungscode 0x2002 oder 0x2004 (Verkettung oder Richtung) abgelehnt. Wenn die Anwendung die Status-Acknowledge(Nack-1) -Nachricht empfängt, sollte sie das Senden von Daten nach dieser Kette für Halbduplex-Flip-Flop-Sitzungen beenden, da die Richtung an den Host übergeben wurde. (Weitere Informationen finden Sie unter Richtung.)
Die Anwendung bricht die Kette während des Sendevorgangs ab, indem sie eine Status-Control(CANCEL) -Nachricht an den lokalen Knoten sendet. Der lokale Knoten sendet eine CANCEL-Anforderung an den Host und eine Status-Control(CANCEL) -Bestätigung an die Anwendung, wenn eine positive Antwort vom Host empfangen wird. Antworten vom Host auf Anforderungen, die vor der CANCEL-Nachricht gesendet werden, generieren entsprechende Status-Acknowledge-Nachrichten an die Anwendung, wenn für die ursprünglichen Data-Nachricht das Feld ACKRQD festgelegt war.
Die Anwendung schließt die PLU-Verbindung beim Senden der Kette. Der lokale Knoten sendet eine Close(PLU) Response-Nachricht an die Anwendung. Antworten vom Host auf Anforderungen, die vor der Close(PLU) -Nachricht gesendet werden, generieren keine Status-Acknowledge-Nachrichten an die Anwendung. Beachten Sie, dass der lokale Knoten außerdem eine eingehende CANCEL-Anforderung und eine TERM-SELF-Anforderung zum Auslösen einer UNBIND-Anforderung generiert.
Wenn der lokale Knoten einen nicht kritischen Fehler im Format einer Data-Nachricht von der Anwendung oder im Zustand der Sitzung erkennt, wird die PLU-Verbindung nicht geschlossen. Stattdessen wird die fehlerhafte Data-Nachricht mit einer Status-Acknowledge(Nack-2) -Nachricht abgelehnt, die einen entsprechenden Fehlercode enthält. Es werden keine Daten an den Host gesendet.
Wenn eine eingehende Kette mit einem Fehler beendet wird und die Sitzung Halbduplexprotokolle verwendet, muss die Anwendung einen Empfangszustand annehmen. (Weitere Informationen finden Sie unter Wiederherstellung.)
Die folgenden sechs Abbildungen veranschaulichen Protokolle der ausgehenden Verkettung zwischen dem lokalen Knoten und der Anwendung und die Beziehung dieser Protokolle zu den zugrunde liegenden SNA-Protokollen.
In der ersten Abbildung wird eine vollständige eingehende Kette ohne Fehler gesendet und vom Host akzeptiert. Beachten Sie, dass die Anwendung nach dem Empfang von Status-Acknowledge(Ack) die Richtung an den Host abgibt.
Eingehende Kette wird ohne Fehler gesendet und vom Host akzeptiertIn der folgenden Abbildung erkennt der lokale Knoten einen kritischen Fehler im Format der zweiten Data-Nachricht in der Kette (ACKRQD ohne ECI-Anwendungsflag), sendet eine Status-Acknowledge(Nack-2) -Nachricht mit dem entsprechenden Fehlercode an die Anwendung und schließt die PLU-Verbindung. Beachten Sie, dass der lokale Knoten nur dann die CANCEL-Anforderung generiert, wenn das FM-Profil (Function Management, Funktionsverwaltung) der Sitzung CANCEL unterstützt.
Lokaler Knoten erkennt Fehler, sendet eine Statusmeldung und schließt die PLU-VerbindungIn der folgenden Abbildung wird eine vollständige eingehende Kette ohne Fehler gesendet, aber vom Host abgelehnt. Nach der negativen Antwort muss die Anwendung in den Empfangszustand (ausstehende Wiederherstellung nach Fehler) wechseln. (Weitere Informationen finden Sie unter Wiederherstellung.)
Eingehende Kette wird ohne Fehler gesendet, aber vom Host abgelehntIn der folgenden Abbildung bricht die Anwendung die Kette durch Senden einer Status-Control(CANCEL) -Nachricht ab. Beachten Sie, dass die Anwendung weiterhin eine Richtung aufweist und eine neue Kette starten kann.
Anwendung bricht die Kette mit einer Status-Control(CANCEL)-Nachricht abIn der folgenden Abbildung schließt die Anwendung die PLU-Sitzung beim Senden der Kette. Der lokale Knoten generiert die CANCEL-Anforderung nur, wenn das FM-Profil der Sitzung CANCEL unterstützt.
Anwendung schließt die PLU-Verbindung beim Senden der KetteIn der folgenden Abbildung erkennt der lokale Knoten einen nicht kritischen Fehler im Format der zweiten Data-Nachricht in der Kette und sendet eine Status-Acknowledge(Nack-2) -Nachricht mit dem entsprechenden Fehlercode an die Anwendung.
Lokaler Knoten erkennt einen nicht kritischen Fehler und sendet eine Status-Acknowledge(Nack-2)-Nachricht
Weitere Informationen
Öffnen der PLU-Verbindung
PLU-Sitzung
Ausgehende Verkettung
Segmentübermittlung
Brackets
Richtung
Geschwindigkeit und Segmentierung
Bestätigung und Ablehnung von Daten]
Herunterfahren und Stilllegen
Wiederherstellung
Von der Anwendung initiierte Beendigung
LUSTATs]
Daten des Monitors für Antwortzeiten