狀態控制 訊息透過 PLU 連線提供對主要邏輯單元(PLU)會話中會話控制與資料流控制協定的存取。 其他連接則不使用它們。 狀態控制 訊息直接對應至等效的 SNA 會話控制及資料流控制請求/回應單元(RU)。
除了 LUSTAT 發送的請求例外(RQE)及加速流程中對應 CLEAR 和 STSN 請求的狀態控制訊息外,所有對應正常流程中 SNA 請求的狀態控制訊息,皆設定為 ACKRQD(確認需求)欄位。 對應加速流程中 SNA 請求的狀態控制訊息(CLEAR 和 STSN 除外)不會由本地節點設定 ACKRQD 欄位。 然而,應用程式可在傳送這些狀態控制訊息時設定 ACKRQD。 本主題的最後一張圖總結了哪些狀態 控制 請求始終設定為 ACKRQD 。
若狀態控制請求的訊息標頭設定為 ACKRQD,接收端必須在發送者發送更多資料訊息或狀態控制請求前,提供狀態控制回應(確認、否定確認-1 或負確認-2)。 發送端仍可在流程中發送 狀態控制 回應、 狀態確認、 狀態錯誤及 狀態資源 訊息。 此規定適用於正常與加速流程,以及所有請求模式(包括延遲請求模式)。 請求中收到的訊息金鑰必須在回應時回傳。 (這是為了讓多個 RQE LUSTAT 訊息都未完成。)本地節點會在 PLU 連線上發送給應用程式的狀態 控制 請求和 DATAFMI 訊息時遞增訊息金鑰。
對於功能管理介面(FMI)的邏輯單元應用(LUA)變體,訊息金鑰欄位的使用方式不同,如下:
對於入站加速流程請求,本地節點會將 SNA 序列號設為應用程式在訊息鍵欄位中提供的值。 應用程式必須確保此欄位設定為正確的序號。
對於入站 狀態控制 回應,本地節點會將 SNA 序列號設定為應用程式在訊息金鑰欄位中提供的值。 應用程式必須確保此欄位設定為回應所發送請求的序號。
除了 Status-Control(LUSTAT) 外,如果 Status-Control 請求沒有設定 ACKRQD ,應用程式不應回應,因為本地節點已經發送了正面回應。
例如,若應用程式發送設定為 ACKRQD 的狀態控制(QC)請求(對應正常流程中的 SNA 請求),則會阻擋與正常入站流程對應的資料與狀態控制請求,直到收到狀態控制(QC)回應。 它不會阻擋正常流程中的其他訊息,也不會阻擋加速流程中的訊息。 例如,應用程式仍可傳送 Status-Control(SIGNAL)。
收到 狀態控制 回應意味著對流程中所有未完成訊息(包括 資料 訊息)表示確認。
在狀態控制訊息中使用 ACKRQD 有效執行確定回應與即時請求模式。 適用於:
對應 SNA 的狀態控制訊息請求 CLEAR 與 STSN(因為加速流程為 RQD)。
狀態控制訊息對應所有 DFC 請求(均為 RQD),唯獨 LUSTAT(可為 RQE)除外。
應用程式可對應加速流程中 SNA 請求的狀態控制請求設定 ACKRQD,即使不需 ACKRQD。 例如,當應用程式發出方向訊號(例如一個終端操作員反覆按下 ATTN 鍵的 3270 模擬器),它可能會產生多個 狀態控制(SIGNAL)請求 訊息,這會對其他使用者的效能產生不利影響。 應用程式可以在第一個狀態控制(SIGNAL)請求時設定 ACKRQD,並忽略可能導致進一步 Status-Control(SIGNAL) 請求訊息的事件,直到收到本地節點的狀態控制(SIGNAL)回應。
以下六圖的訊息流程顯示有 ACKRQD 與無 ASKRQD 的出站與入站狀態控制序列及相應的 SNA RU 。
在第一張圖中,應用程式發送狀態控制(CHASE)。
應用程式發送狀態控制(CHASE)在下圖中,主機發送 BID 請求。
主機發送BID請求在下圖中,應用程式發送 Status-Control(SHUTC)。
應用程式發送狀態控制(SHUTC)在下圖中,主機發送 SNA SIGNAL 請求。
主機發送 SNA SIGNAL 請求在下圖中,主機發送多個 RQE LUSTAT 請求,應用程式會拒絕第一個請求。
申請拒絕了第一個RQE LUSTAT申請在下圖中,應用程式傳送 Status-Control(LUSTAT) NOACKRQD。
應用程式發送 Status-Control(LUSTAT) NOACKRQD下表總結了本地節點及 SNA 會話控制(SC)和資料流控制(DFC)請求所支援的 狀態控制 請求。 對於每個 狀態控制 請求,表格給出:
對應 SNA 請求的 SNA 類別(SC 或 DFC)。
對應的 SNA 請求所使用的流程(正常或加速)。
支援對應 SNA 請求的 TS 或 FM 配置檔。
適用於的方向(NODE <–> APPL)。
是否需要 ACKRQD。 請注意,應用程式可以在不需要 ACKRQD 的 Status-Control 請求上設定 ACKRQD。
Status-Control 訊息控制型欄位中使用的十六進位碼。 (更多資訊請參見 FMI 訊息格式。)
| Status-Control | SNA RQ 流 | TS 檔案 | FM 頻道 | 方向節點–應用 | ACKRQD | Code |
|---|---|---|---|---|---|---|
| CLEAR | SC,經驗 | 2,3,4 | – | –> | ACKRQD | CCLEAR(0x01) |
| SDT | SC,經驗 | 3,4 | – | –> | – | CSDT(0x02) |
| RQR | SC,經驗 | 4 | – | <– | – | CRQR(0x03) |
| STSN | SC,經驗 | 4 | – | –> | ACKRQD | CSTSN(0x04) |
| 取消 | DFC,諾姆 | – | 3,4,7 | <–> | ACKRQD | CCANCEL(0x10) |
| 路斯塔特 | DFC,諾姆 | – | 3,4,7 | <–> | – | 克魯斯塔特(0x11) |
| 訊號 | 飛行員飛行員,經驗 | – | 3,4,7 | <–> | – | CSIGNAL(0x12) |
| RSHUTD | 飛行員飛行員,經驗 | – | 3,4,7 | <– | – | CRSHUTD(0x13) |
| 出價 | DFC,諾姆 | – | 3,4 | –> | ACKRQD | CBID(0x14) |
| 追逐 | DFC,諾姆 | – | 3,4 | <–> | ACKRQD | CCHASE(0x15) |
| 關閉 | 飛行員飛行員,經驗 | – | 3,4 | <– | – | CSHUTC(0x16) |
| 閉嘴 | 飛行員飛行員,經驗 | – | 3,4 | –> | – | CSHUTD(0x17) |
| RTR | DFC,諾姆 | – | 3,4 | <– | ACKRQD | CRTR(0x18) |
| 品質控制 (QC) | DFC,諾姆 | – | 4 | <–> | ACKRQD | 近距離格鬥(CQC)(0x20) |
| QEC | 飛行員飛行員,經驗 | – | 4 | <–> | – | CQEC(0x21) |
| RELQ | 飛行員飛行員,經驗 | – | 4 | <–> | – | CRELQ(0x22) |
下表中的請求僅用於 LUA。 (更多資訊請參見 FMI 概念。)
| Status-Control | SNA RQ 流 | TS 檔案 | FM 頻道 | 方向節點–應用 | ACKRQD | Code |
|---|---|---|---|---|---|---|
| CRV | SC,經驗 | 3,4 | – | –> | ACKRQD | CCRV(0x05) |
| BIS(國際清算銀行) | DFC,諾姆 | – | 18 | <–> | ACKRQD | CBIS(0x19) |
| SBI | 飛行員飛行員,經驗 | – | 18 | <–> | ACKRQD | CSBI(0x1A) |
特定 狀態控制 訊息的使用,在本節以下主題中描述,涵蓋 PLU 會話協定,如鏈結、括號、恢復等。
關於 狀態控制 訊息的格式,請參見 狀態控制。