Status-Control 訊息
狀態控制 訊息會使用 PLU 連線,在主要邏輯單元上提供會話控制和資料流程控制通訊協定的存取權, (PLU) 會話。 它們不會在其他連線上使用。 狀態控制 訊息會直接對應至對等的 SNA 會話控制項和資料流程控制要求/回應單位, (RU) 。
所有對應至正常流程之 SNA 要求的狀態控制訊息,除了 LUSTAT 傳送的要求例外狀況 (RQE) ,以及與加速流程上CLEAR和STSN要求對應的狀態控制訊息,都有ACKRQD (必要通知欄位集) 欄位。 狀態控制 訊息,這些訊息對應至加速流程上的 SNA 要求 (,但 CLEAR 和 STSN) 除外,本機節點未設定 ACKRQD 欄位。 不過,應用程式可以在傳送這些狀態控制訊息時設定ACKRQD。 本主題的最後一個圖摘要說明 狀態控制 要求一律設定 ACKRQD 。
如果狀態控制要求在郵件標頭中已設定ACKRQD,則收件者必須在流程上傳送進一步的資料訊息或進一步的狀態控制要求之前,提供狀態控制回應 (通知、負通知-1 或負通知-2) 。 傳送者仍然可以在流程上傳送Status-Control回應、Status-Acknowledge、Status-Error 和 Status-Resource訊息。 這同時適用于一般和加速流程,以及所有要求模式 (包括延遲要求模式) 。 要求上收到的訊息金鑰必須在回應上傳回。 (這是允許多個 RQE LUSTAT 訊息未完成。) 本機節點會在 狀態控制 要求和它傳送至 PLU 連線上的 應用程式 DATAFMI 訊息上遞增訊息索引鍵。
針對函式管理介面 (FMI) 的邏輯單元應用程式 (LUA) 變數,訊息索引鍵欄位會以不同的方式使用,如下所示:
針對輸入加速流程要求,本機節點會將 SNA 序號設定為訊息金鑰欄位中應用程式所提供的值。 應用程式必須確定此欄位設定為正確的序號。
針對輸入 狀態控制 回應,本機節點會將 SNA 序號設定為訊息索引鍵欄位中應用程式所提供的值。 應用程式必須確定此欄位已設定為正在傳送回應的要求序號。
除了 Status-Control (LUSTAT) 的情況下,如果 Status-Control 要求未設定 ACKRQD ,應用程式就不應該回復,因為本機節點已經傳送正回應。
例如,如果應用程式傳送 狀態控制 (QC) 要求 ,並將 ACKRQD 設定 (對應至一般流程上的 SNA 要求) ,這會封鎖對應至輸入正常流程的進一步資料和 狀態控制 要求,直到收到 Status-Control (QC) 回應為止。 它不會封鎖一般流程上的其他訊息,也不會封鎖加速流程上的訊息。 例如,應用程式仍然可以傳送 Status-Control (SIGNAL) 。
狀態控制回應的接收意指所有未完成訊息的通知, (包括流程上) 的資料訊息。
在狀態控制訊息上使用ACKRQD可有效地強制執行明確回應和立即要求模式。 這適用于:
對應至 SNA 要求的Status-Control訊息CLEAR和STSN (,因為加速流程是RQD) 。
狀態控制訊息會對應至RQD) 的所有DFC要求 (,但LUSTAT (可以是RQE) 。
應用程式可以在狀態控制要求上設定ACKRQD,這些要求對應于加速流程上的 SNA 要求,即使不需要ACKRQD也一定。 例如,當應用程式發出方向 (訊號時,具有終端機操作員的 3270 模擬器會重複按下 ATTN 鍵) ,它可能會產生多個 Status-Control (SIGNAL) Request 訊息,這會對其他使用者的效能造成負面影響。 應用程式可以在第一個Status-Control (SIGNAL) Request上設定ACKRQD,並忽略會導致進一步的狀態控制 (SIGNAL) 要求訊息的事件,直到從本機節點收到Status-Control (SIGNAL) Response為止。
下列六個圖中的訊息流程顯示具有和不含ACKRQD和對應 SNA RU 的輸出和輸入狀態控制序列。
在第一個圖中,應用程式會傳送 Status-Control (一) 。
應用程式會傳送 Status-Control ()在下圖中,主機會傳送 BID 要求。
主機傳送 BID 要求在下圖中,應用程式會傳送 Status-Control (SHUTC) 。
應用程式會傳送 Status-Control (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。 請注意,應用程式可以在不需要它 Status-Control 要求上設定 ACKRQD。
用於 Status-Control 訊息之控制項類型欄位中的十六進位程式碼。 (如需詳細資訊,請參閱 FMI 訊息格式.)
Status-Control | SNA RQ 流程 | TS 設定檔 | FM 設定檔 | 方向節點–appl | ACKRQD | 程式碼 |
---|---|---|---|---|---|---|
CLEAR | SC,Exp | 2、3、4 | – | –> | ACKRQD | CCLEAR (0x01) |
Sdt | SC,Exp | 3,4 | – | –> | – | CSDT (0x02) |
RQR | SC,Exp | 4 | – | <– | – | CRQR (0x03) |
STSN | SC,Exp | 4 | – | –> | ACKRQD | CSTSN (0x04) |
取消 | DFC,Norm | – | 3,4,7 | <–> | ACKRQD | CCANCEL (0x10) |
LUSTAT | DFC,Norm | – | 3,4,7 | <–> | – | CLUSTAT (0x11) |
信號 | DFC,Exp | – | 3,4,7 | <–> | – | CSIGNAL (0x12) |
RSHUTD | DFC,Exp | – | 3,4,7 | <– | – | CRSHUTD (0x13) |
出價 | DFC,Norm | – | 3,4 | –> | ACKRQD | CBID (0x14) |
追逐 | DFC,Norm | – | 3,4 | <–> | ACKRQD | CCHASE (0x15) |
SHUTC | DFC,Exp | – | 3,4 | <– | – | CSHUTC (0x16) |
SHUTD | DFC,Exp | – | 3,4 | –> | – | CSHUTD (0x17) |
Rtr | DFC,Norm | – | 3,4 | <– | ACKRQD | CRTR (0x18) |
QC | DFC,Norm | – | 4 | <–> | ACKRQD | CQC (0x20) |
QEC | DFC,Exp | – | 4 | <–> | – | CQEC (0x21) |
RELQ | DFC,Exp | – | 4 | <–> | – | CRELQ (0x22) |
下表中的要求僅適用于 LUA。 (如需詳細資訊,請參閱 FMI 概念.)
Status-Control | SNA RQ 流程 | TS 設定檔 | FM 設定檔 | 方向節點–appl | ACKRQD | 程式碼 |
---|---|---|---|---|---|---|
CRV | SC,Exp | 3,4 | – | –> | ACKRQD | CCRV (0x05) |
BIS | DFC,Norm | – | 18 | <–> | ACKRQD | CBIS (0x19) |
Sbi | DFC,Exp | – | 18 | <–> | ACKRQD | CSBI (0x1A) |
本節的下列主題說明特定 狀態控制 訊息的使用方式,如鏈結、括弧、復原等 PLU 會話通訊協定的內容。
如需 Status-Control 訊息的格式,請參閱 Status-Control。