Freigeben über


Unterstützung von Präsentationsheader in Datenübertragungen

Bei grundlegenden Konversationen werden Synchronisierungspunktbefehle mithilfe von Präsentationsheadern (PS) über LU 6.2-Konversationen mit dem Verb SEND_DATA oder MC_SEND_DATA gesendet. Alle Präsentationskopfzeilen enthalten Längenfelder, die eine Länge von 1 angeben, was normalerweise unzulässig ist. Zur Unterstützung von Sync Point-Interaktionen werden die folgenden Änderungen an der Präsentationsdienste-Komponente des Host Integration Server vorgenommen:

  • Bei grundlegenden Unterhaltungen mit einer Synchronisierungsebene von AP_SYNCPT werden übertragene Daten, die eine variable Länge von 1 (GENERAL Data Stream, GDS) angeben, nicht abgelehnt. Wenn die Synchronisierungsstufe nicht AP_SYNCPT ist, werden sie wie zuvor abgelehnt.

  • Bei zugeordneten Unterhaltungen werden PS-Header nicht als zugeordnete logische Datensätze der Unterhaltungsanwendung (mit GDS-Bezeichner 0x12FF) eingeschlossen, wenn sie gesendet werden, oder die GDS-Kopfzeile wird beim Empfang entfernt.

  • Bei zugeordneten Unterhaltungen liegt es in der Verantwortung der Anwendung, den vollständigen PS-Header einschließlich des Längenfelds bereitzustellen. Entsprechend wird das Längenfeld in PS-Headerdaten eingeschlossen, die von Empfangsverben zurückgegeben werden.

    Um letzteres zu erreichen, sind Modifikationen des MC_SEND_DATA-Verbs und der empfangenden Verben (MC_RECEIVE_AND_POST, MC_RECEIVE_AND_WAIT und MC_RECEIVE_IMMEDIATE) wie folgt erforderlich:

  • Dem MC_SEND_DATA-Verb wird ein neuer Parameter, data_type, hinzugefügt. Wenn dies auf AP_APPLICATION (Standardeinstellung, 0x00) festgelegt ist, werden die Daten wie gewohnt als Anwendungsdaten (GDS-ID 0x12FF) gesendet. Wenn sie auf AP_PS_HEADER festgelegt ist, werden die Daten wie oben beschrieben gesendet.

  • Die folgenden zwei neuen Werte werden für das what_rcvd Element der Empfangsverben hinzugefügt, um anzugeben, dass es sich bei den empfangenen Daten um einen PS-Header handelt:

    AP_PS_HEADER_COMPLETE

    AP_PS_HEADER_INCOMPLETE

  • Wenn eine Anwendung ein Empfangsverb ausgibt, bei dem rtn_status auf AP_YES festgelegt ist, wird der Status vom Host Integration Server, in Kombination mit AP_PS_HEADER_COMPLETE, zurückgegeben, mit Ausnahme von AP_DEALLOCATE_NORMAL und AP_CONFIRM_DEALLOCATE. Dies soll verhindern, dass das Gespräch vorzeitig von der LU 6.2-Sitzung getrennt wird, wenn ein COMMIT PS-Header mit der Anzeige für das Ende des Gesprächs eingeht.

    Es liegt in der Verantwortung der vom Anbieter bereitgestellten Sync Point-Unterstützungskomponente, diese PS-Header in die entsprechenden Sync Point-Rückgabecodes zu konvertieren (z. B. TAKE_SYNCPT).