Status-Acknowledge(Ack) メッセージは、ノードからアプリケーション、およびアプリケーションからノードに送信され、システム サービス制御ポイント (SSCP) 接続とプライマリ論理ユニット (PLU) 接続の両方で使用されます。
次の構造は、すべての SSCP メッセージと、ノードからアプリケーションにフローする PLU メッセージのメッセージ形式を示しています。
構文
struct Status-Acknowledge(Ack) {
PTRBFHDR nxtqptr;
PTRBFELT hdreptr;
CHAR numelts;
CHAR msgtype;
CHAR srcl;
CHAR srcp;
INTEGER srci;
CHAR destl;
CHAR destp;
INTEGER desti;
CHAR sfhdr.stackhdr.akstat;
CHAR sfhdr.stackhdr.akqual;
INTEGER sfhdr.stackhdr.akmsgkey;
CHAR sfhdr.stackhdr.akflags1;
CHAR sfhdr.stackhdr.akflags2;
INTEGER sfhdr.stackhdr.aknumb1;
INTEGER sfhdr.stackhdr.aknumb2;
INTEGER sfhdr.stackhdr.akseqno;
};
struct Status-Acknowledge(Ack) {
PTRBFELT hdreptr->elteptr;
INTEGER hdreptr->startd;
INTEGER hdreptr->endd;
CHAR hdreptr->trpad;
CHAR[268] hdreptr->dataru;
};
Members
nxtqptr
次のバッファー ヘッダーへのポインター。
hdreptr
バッファー要素へのポインター (LUA を使用していない場合は NIL)。
numelts
バッファー要素の数 (LUA を使用していない場合0x00)。
msgtype
メッセージの種類 STATFMI (0x21)。
srcl
ソースのローカリティ。
srcp
ソース パートナー。
srci
ソース インデックス。
destl
宛先のローカリティ。
destp
移行先パートナー。
desti
変換先インデックス。
sfhdr.stackhdr.akstat
状態の種類 ACK (0x01)。
sfhdr.stackhdr.akqual
受信確認の種類 ACKPOS (0x02)。
sfhdr.stackhdr.akmsgkey
メッセージ キー。
sfhdr.stackhdr.akflags1
アプリケーション フラグ 1。
sfhdr.stackhdr.akflags2
アプリケーション フラグ 2。
sfhdr.stackhdr.aknumb1
未定義。
sfhdr.stackhdr.aknumb2
予約済み。
sfhdr.stackhdr.akseqno
SNA シーケンス番号。
LUA のみ (「解説」を参照):
Element
hdreptr–>elteptr
バッファー要素 (NIL) へのポインター。
hdreptr–>startd
このバッファー要素内のデータの開始。
送信セグメント化された要求/応答ユニット (RU) の 2 番目以降のセグメントの場合は 13 または 10
hdreptr–>endd
このバッファー要素内のデータの末尾。
hdreptr–>trpad
予約済み。
hdreptr–>dataru
データ RU。
アプリケーションからノードに送信される PLU メッセージのメッセージ形式は、アプリケーション フラグ 1 フィールドとアプリケーション フラグ 2 フィールドが使用されないことを除き、上記の形式と同じです。 これらは、次の INTEGER フィールドに置き換えられます。
sfhdr.stackhdr.akmsgtim
最後のホスト応答時間。
- (0xFFFF) 応答時間は測定されません。
- (0xnnnn)0.1 秒の単位で測定された最後の応答時間。
注釈
メッセージ キーとアプリケーション フラグは、受信確認であるデータ メッセージのメッセージ キーとアプリケーション フラグを反映します。 (詳細については、次の LUA に関する注意事項を参照してください)。
ローカル ノードからアプリケーションへの送信 Status-Acknowledge(Ack) メッセージの場合、SNA シーケンス番号は、これが受信確認である受信データ メッセージのシーケンス番号を示します。 (詳細については、次の LUA に関する注意事項を参照してください)。通常、伝送サービス プロファイル (TS プロファイル) 4 アプリケーションでのみ使用されます。
アプリケーションからローカル ノードへの受信 Status-Acknowledge(Ack) メッセージの場合、SNA シーケンス番号は、これが受信確認である送信データ メッセージのシーケンス番号を反映します。
ホストが応答時間統計を維持することを指定した場合、アプリケーションは、このメッセージの akmsgtim フィールドを使用して、応答時間を測定し、ローカル・ノードに報告する役割を担います。 (詳細については、「 RTM パラメーター と 応答時間モニター データ」を参照してください)。
アプリケーションが関数管理インターフェイス (FMI) の LUA バリアントを使用している場合は、転送ヘッダー (TH) と (必要に応じて) 応答ヘッダー (RH) がデータに含まれており、 開始 フィールドは TH を指します。 akmsgkey、akflags1、および akflags2 フィールドは未定義であり、使用しないでください。 代わりに、要素の対応するデータを使用する必要があります。 akseqno フィールドは、ローカル ノードからアプリケーションへのメッセージでも同様に未定義です。 アプリケーションからローカル ノードへのメッセージに設定する必要があります。 akseqno フィールドは、受信確認される要求のシーケンス番号を保持するために使用されます。 (FMI の詳細については、「 FMI の概念」を参照してください)。
アプリケーションが FMI の LUA バリアントを使用していない場合、メッセージはバッファー ヘッダーのみで構成されます。 バッファー要素はありません。