輸出鏈結
本機節點會檢查要求的輸出鏈結是否符合正確的 SNA 使用量、會話的鏈結使用量,以及會話的目前狀態。 如果下列其中一項成立,本機節點將會接受來自主機的有效輸出資料鏈結:
資料流量在全雙工會話上處於作用中狀態。
會話處於可以接收資料的狀態。
會話位於方括弧之間,但目前未傳送半會話,或會話與半雙工爭用會話爭用。 (如需詳細資訊,請參閱 Brackets.)
會話正在等候主機起始復原程式。 例如,本機節點已將負回應傳送至輸出鏈結。 (如需詳細資訊,請參閱 Recovery.)
本機節點會針對每個輸出要求傳送 資料 訊息至應用程式,但請注意應用程式在連線資訊控制區塊中指定區段傳遞選項的效果。 (如需詳細資訊,請參閱 區段傳遞。) 如果應用程式未指定區段傳遞,則開始鏈結指標 (BCI) 和結束鏈結指標 (訊息標頭中的 ECI) 應用程式旗標,反映要求之要求標頭中的鏈結指標。
輸出鏈結可以透過數種方式終止:
鏈結已收到完整且沒有錯誤。 鏈結中的所有要求都已當做 資料 訊息傳遞至應用程式,並在適用時獲得認可。
應用程式會在收到鏈結時偵測 到資料 訊息中的錯誤。 應用程式應該將 Status-Acknowledge (Nack-1) 與相關聯的感知資料傳送至本機節點,這會傳送負回應,並將感知資料傳送至主機,以取得對應至錯誤 資料 訊息的要求。 本機節點不會清除鏈結的其餘部分,因此應用程式會看到端鏈結 (EC) 。 或者,主機可以使用 CANCEL 終止鏈結,此鏈結會以狀態 控制 (CANCEL) 搭配 ACKRQD 設定傳遞至應用程式。
本機節點會偵測要求中的錯誤,並呈現應用程式系統偵測到的錯誤 資料 訊息,以報告鏈結的提前終止。 此訊息具有系統偵測到的錯誤指標, (SDI) 和 ECI 應用程式旗標、錯誤的感知碼,以及 ACKRQD 指標。 它不會攜帶使用者資料。 當應用程式以 Status-Acknowledge (Ack) 回應時,本機節點會使用適當的感知程式碼產生鏈結的負回應。 應用程式可以使用回報的感知碼來為使用者產生診斷資訊。 例如, (3270 模擬器會產生 PROG 檢查代碼。) 本機節點會清除鏈結的其餘部分,因此應用程式可能不會看到 EC。 或者,主機可以使用 CANCEL終止鏈結,此鏈結會以 Status-Control (CANCEL) 與 ACKRQD 設定的形式傳遞至應用程式。
主機可以在傳送時取消鏈結,方法是傳送 CANCEL 要求。 本機節點會將 Status-Control (CANCEL) 訊息傳送至應用程式,應用程式必須確認此訊息。
如果在接收鏈結時發生錯誤,而且會話使用半雙工翻轉盤通訊協定,應用程式必須假設發生錯誤復原擱置狀態。 (如需詳細資訊,請參閱 Recovery.)
對於使用半雙工翻轉盤通訊協定的會話,如果鏈結最後一個 Data 訊息中的應用程式旗標具有 CDI (變更方向) 旗標設定:
如果收到鏈結時沒有錯誤,則應用程式會有方向。
如果應用程式拒絕鏈結中的任何訊息,主機會保留方向。
下圖說明本機節點與應用程式之間的輸出鏈結通訊協定,以及這些通訊協定與基礎 SNA 通訊協定的關聯性。
在第一個圖中,系統會收到完整的輸出鏈結,而不會發生錯誤,並由應用程式接受。 請注意,在傳送 Status-Acknowledge (Ack) 之後,應用程式會有方向。
應用程式未收到錯誤且接受的輸出鏈結在下圖中,系統會收到完整的輸出鏈結,而不會發生錯誤,但應用程式會拒絕。 請注意,即使鏈結攜帶 CD,應用程式也不會有方向。
傳出鏈結未收到錯誤,但應用程式會拒絕在下圖中,本機節點會偵測沒有 EC 的 RQD 無效使用,並將要求轉換成已設定 SDI 應用程式旗標 的資料訊息, 加上 ACKRQD 和適當的意義代碼。 應用程式的 Status-Acknowledge (Ack) 驅動主機的負回應。 此範例假設已在 Open (SSCP) 上的 CICB 中指定接收檢查 4007。
本機節點會偵測不正確使用和轉換要求在下圖中,主機會取消輸出鏈結。
主機取消輸出鏈結
另請參閱
開啟 PLU 連線
PLU 工作階段
輸入鏈結
區段交貨
括弧
方向
步調和區塊化
確認和拒絕資料]
關機並靜止
復原
應用程式起始的終止
LUSTAT]
回應時間監視資料