本地節點會檢查出站請求鏈是否符合正確的 SNA 使用情況、該會話的鏈式使用情況,以及會話的當前狀態。 若以下條件成立,本地節點將接受來自主機的有效外傳資料鏈:
資料流量在全雙工模式下非常活躍。
會話處於可以接收資料的狀態。
該會話位於括號間,且目前沒有半會話正在發送,或是該會話正處於半雙工爭用會話的競爭中。 (更多資訊請參見 括號。)
會話正在等待主機啟動恢復程序。 例如,本地節點對一個出站鏈發送了負面回應。 (更多資訊請參見 復原。)
本地節點會對每個外出請求發送 資料 訊息給應用程式,但請注意應用程式在連線資訊控制區塊中指定區段傳遞選項的影響。 (更多資訊請參見 分段交付。)若應用程式未指定區段傳遞,訊息標頭中的開始鏈指示器(BCI)與結束鏈指示器(ECI)應用標誌會反映請求標頭中的鏈接指示符。
出站鏈的終止方式有幾種:
完整且無錯誤地接收該鏈。 鏈中的所有請求都以 資料 訊息的形式傳遞給應用程式,並在適用時已獲得確認。
應用程式在接收鏈時偵測到 資料 訊息的錯誤。 應用程式應向本地節點發送包含相關感知資料的狀態確認(Nack-1),該節點會向主機發送負向回應及感知資料,以回應錯誤資料訊息的請求。 本地節點不會清除鏈的剩餘部分,因此應用程式會看到端鏈(EC)。 或者,主機可以使用 CANCEL 終止該鏈條,該 CANCEL 會作為 狀態控制(CANCEL) 傳送給應用程式,並設定 ACKRQD。
本地節點偵測到請求錯誤,並向應用程式顯示系統 偵測錯誤資料 訊息,以報告鏈條過早終止。 此訊息包含系統偵測錯誤指示器(SDI)與 ECI 應用標誌、錯誤感測碼,以及 ACKRQD 指示器。 它不攜帶使用者資料。 當應用程式回應 Status-Acknowledge(Ack) 時,本地節點會使用適當的感知碼對鏈產生負向回應。 應用程式可利用報告的感應碼為使用者產生診斷資訊。 (例如,3270 模擬器會產生 PROG 檢查碼。)本地節點會清除剩餘的鏈條,因此應用程式可能看不到 EC。 或者,主機也可以用 CANCEL 終止鏈條,該 CANCEL 會以 Status-Control(CANCEL) 形式傳送給應用程式,並設定 ACKRQD。
主機可以在發送時透過發送 取消 請求來取消該鏈。 本地節點會向應用程式發送 Status-Control(CANCEL) 訊息,應用程式必須確認該訊息。
若在接收鏈路時發生錯誤,且會話使用半雙工翻轉協定,應用程式必須進入錯誤復原待處理狀態。 (更多資訊請參見 復原。)
對於使用半雙工翻轉協定的會話,若鏈中最後一個 資料 訊息中的應用標記設定為 CDI(改變方向)標記:
如果數據鏈接收無誤,則應用程序具備方向。
如果應用程式拒絕了鏈中的任何訊息,主機仍保留方向。
以下四幅圖說明了本地節點與應用程式之間的出站鏈式協定,以及這些協定與底層 SNA 協定之間的關聯。
在第一張圖中,完整外鏈被無錯誤接收並被應用程式接受。 請注意,在發送 Status-Acknowledge(Ack) 後,應用程式會獲得指令。
收到的外站鏈接沒有錯誤,並被應用接受在下圖中,完整出站鏈會無錯誤地接收,但應用程式會拒絕。 請注意,儘管鏈條包含 CD,但應用程式本身沒有方向。
收到的外部鏈條沒有錯誤,但被應用程式拒絕。在下圖中,本地節點偵測到未使用 EC 的 RQD 無效,並將請求轉換為 Data 訊息,並設定 SDI 應用旗標,加上 ACKRQD 及適當的感碼。 應用程式的 狀態確認(Ack) 會驅動對主機的負面回應。 此範例假設接收檢查 4007 已在 Open(SSCP) 的 CICB 中指定。
本地節點偵測無效使用並轉換請求在下圖中,主機取消了出站連線。
主機取消出站路由
另請參閱
開啟PLU連接
PLU 會議
入站鏈結
分段交付
括弧
方向
節奏與分段
資料確認與否定]
關閉與停擺
Recovery
應用程式啟動的終止
LUSTATs]
反應時間監控資料