每一個 DB2 for VM 資料庫管理程式均可以管理一個或多個資料庫 (一次一個),且通常是目前它所管理的資料庫的名稱來提到它。 這個關聯性資料庫名稱在一組交互連接的 SNA 網路內是唯一的。
分散式資料庫處理中所包括的不同 DRDA 及 VM 元件將在底下加以描述。 這些元件使 DB2 for VM 資料庫管理程式 能夠存取本端關聯性資料庫,以及與 SNA 網路中的遠端 DRDA 系統進行通信。
在應用系統要求程式端上,於可以傳送要求之前,使用者必須已獲授權,可透過 AVS 閘道來進行連接。 在應用程式伺服器端上,於 AVS 可傳遞使用者的要求之前,接收 AVS 閘道也須獲授權,方可與 DB2 for VM 伺服器機器連接。 經由在使用者機器、資料庫機器及傳送與接收 AVS 機器中,提供適當的 IUCV 目錄控制陳述式,來進行授權。 關於執行方法的詳細資訊,請參照 VM/ESA Connectivity Planning, Administration, and Operation 手冊。
DB2 for VM 將使用 COMDIR 標示 :dbname,將 RDB_NAME 解析為它的對應遞送資料。
這個特殊檔案及其檔案通信將在 VM/ESA Connectivity Planning, Administration, and Operation 中加以描述。
GCS 將監督 VTAM 應用程式 (如 VM 環境中的 AVS) 的執行。 在 GCS 監督下的虛擬機器不會使用 CMS。
DB2 for VM 將使用 TSAF,把分散式資料庫要求遞送給 TSAF 集成內的其他 DB2 for VM 機器。 如果本端 VM 系統沒有 AVS 虛擬機器,則 DB2 for VM 將使用 TSAF,把 DRDA 要求遞送至的確具有 AVS 虛擬機器的 VM 系統。 AVS 容許向其他 TSAF 集成及非 DB2 for VM 系統轉遞要求。
TSAF 集成被視為 SNA 網路中的一個或多個邏輯單元。 在 TSAF 集成內定義為廣域的資源可被常駐在集成中任意地方的 APPC 程式存取。
一般說來,TSAF 集成將以獨立式方式來作業,與 VTAM 及 SNA 網路無關。 不過,它可以與 AVS 及 VTAM 一起合作,使得它的廣域資源可供常駐在 SNA 網路中任意地方的遠端 APPC 程式存取。 這需要 AVS 機器及 VTAM 機器在一個或多個 TSAF 成員上作業。 TSAF 將在 VM/ESA Connectivity Planning, Administration, and Operation 手冊中加以描述。
下列例子將告訴您,每一個元件在建立 VM 應用系統要求程式與遠端 DRDA 伺服器之間的通信時所扮演的角色。 圖 27顯示應用系統要求程式如何與 AVS 連接,以及如何使用 VTAM 來存取 SNA 網路。 不會透過本端 DB2 for VM 應用程式伺服器,來遞送遠端資源的存取。
假定在 TSAF 集成中作業的「DB2 for VM 應用系統要求程式」將存取「DRDA 應用程式伺服器」所管理的遠端資料。 依據定義,這暗示 TSAF 機器將在「應用系統要求程式」常駐的本端 VM 主電腦上作業。 此外,AVS 元件及 VTAM 機器將在這個 TSAF 集成中的 VM 系統上作業。 AVS 及 VTAM 也可能與「應用系統要求程式」及「應用程式伺服器」一樣常駐在同一個系統。
在啟動 VTAM 機器後,它將定義 SNA 網路的本端 AVS 閘道,以及啟動一個或多個稍後在建立交談時,將使用的階段作業。
在啟動 AVS 機器後,它將協議本端 AVS 閘道與可能的友機 LU 之間的階段作業限制數。
「應用程式伺服器」可能在作用或非作用中。操作員必須先啟動它,它才可以處理來自類似或非類似「應用系統要求程式」的要求。
應用系統要求程式將發出 APPC/VM CONNECT 陳述式,來建立與「應用程式伺服器」的 LU 6.2 交談。 CONNECT 函數將使用「CMS 通信目錄」,將關聯性資料庫名稱解析為它的相關 LU 名稱及 TPN,以構成「應用程式伺服器」在 SNA 網路中的位址。 「CMS 通信目錄」也會判斷為了授權目的而傳遞給遠端位置的交談機密保護及機密保護符記的層次,如使用者 ID 及通行碼。 如果使用 SECURITY=PGM,則「應用系統要求程式」必須傳遞一個使用者 ID 及通行碼給「應用程式伺服器」。 您可以在「CMS 通信目錄」或在透過應用系統要求程式使用者的 CP 目錄來定義的 APPCPASS 記錄中,指定使用者 ID 及通行碼。 如果使用 SECURITY=SAME,則僅應用系統要求程式使用者的 VM 登入 ID 將傳送至應用程式伺服器,而且不需要額外的通行碼。
例如,如果您使用 SECURITY=SAME,則主電腦將檢查 AVS 機器是否在本端執行。 如果不是,則主電腦將在應用系統要求程式與本端 TSAF 機器之間,建立一個連接。 本端 TSAF 機器將輪詢 TSAF 集成中的其他 TSAF 機器,以取得 AVS 機器,然後建立與它的連接。
TSAF 集成中的 AVS 元件會將 APPC/VM 連接要求轉換為它的 APPC/VTAM 對等函數呼叫。 然後,AVS 將使用現存的階段作業,或是在它的閘道 (LU) 與遠端 LU 之間指定一個新的階段作業。 然後,AVS 將建立與遠端 LU 的交談,並將 LU 名稱、TPN 機密保護層次及使用者 ID 傳遞給它。 如果遠端 LU 也是 VM 系統,則階段作業及交談將由在該系統上執行的 AVS 元件來處理。
下列例子將告訴您,每一個元件在建立遠端「應用系統要求程式」與本端 DB2 for VM DRDA 伺服器之間的通信時,所扮演的角色。 圖 28顯示 VTAM 如何將接收端連接遞送給特定的 AVS 閘道,然後,遞送給「應用程式伺服器」。
假定「DB2 for VM 應用程式伺服器」在 TSAF 集成中作業。 依據定義,這暗示 TSAF 機器將在「應用程式伺服器」常駐的本端 VM 主電腦上作業。 此外,AVS 元件及 VTAM 機器將在這個 TSAF 集成中的 VM 系統上作業。 AVS 及 VTAM 也可能與「應用系統要求程式」及「應用程式伺服器」一樣常駐在同一個系統。
在啟動 VTAM 機器後,它將定義 SNA 網路的本端 AVS 閘道,以及啟動一個或多個稍後在建立交談時,將使用的階段作業。
在啟動 AVS 機器後,它將協議本端 AVS 閘道與可能的友機 LU 之間的階段作業限制數。
「應用程式伺服器」可能在作用或非作用中。操作員必須先啟動它,它才可以處理來自類似或非類似「應用系統要求程式」的要求。 在啟動「應用程式伺服器」後,它將使用 *IDENT 服務程式,登記它透過主電腦 VM 系統來管理的資源 ID。 每一個登記將在 VM 系統所維護的內部資源表格中,建立一個登錄。
在本端 AVS 元件透過它的友機 LU,建立階段作業後,它會接受交談並傳遞 TPN、使用者 ID 及通行碼給 VM 主電腦,以進行驗證。 VM 將在它的內部資源表格中搜尋 TPN。 這個表格含有透過 *IDENT 系統服務程式來登記的每一個資源 ID 的登錄。 如果 TPN 搜尋成功,則 VM 將以它的目錄,或是 RACF 或類似的機密保護產品,來驗證使用者 ID 及通行碼。 如果驗證成功,則 AVS 將建立與「應用程式伺服器」的連接,然後為了資料庫授權目的,將使用者 ID 傳遞給它。
如果表格搜尋不成功,則 AVS 將認為 TPN 可能常駐在 TSAF 集成中的另一個 VM 系統中,並會建立與本端 TSAF 機器的連接,將使用者 ID、 通行碼及 TPN 傳遞給它。 TSAF 機器將輪詢 TSAF 集成中的其他 TSAF 機器。 如果這些機器中有一個知道 TPN 存在於它的資源表格中,則本端 TSAF 機器將與遠端 TSAF 機器連接,並且把透過 VM 目錄來驗證的使用者 ID 及通行碼傳遞給它。 如果驗證成功,則遠端 TSAF 將與「應用程式伺服器」連接,然後為了資料庫授權目的,將使用者 ID 傳遞給它。
如果「應用系統要求程式」想要利用 DRDA 分散式工作單元支援, 它將透過「DB2 for VM 應用程式伺服器」來建立一個受保護的交談 (比如 SYNCLEVEL=SYNCPT)。在 CMS 呈現與 DB2 for VM 的連接之前,它會在 DB2 for VM 機器上, 對受保護的交談建立一個 CMS 工作單元。每當 DB2 for VM 替要求程式執行工作時, 它就會使用這個 CMS 工作單元。當 DB2 for VM 開始替要求程式執行工作時, 它將透過 CRR 同步點管理程式,來登記這個 CMS 工作單元。然後,當 DB2 在受保護的交談上, 收到 "take commit" 或 "take rollback" 指示時,它會要求 CRR 同步點管理程式, 來 COMMIT 或 ROLLBACK 工作單元。然後,CRR 同步點管理程式將驅使 COMMIT 或 ROLLBACK, 詢問「CRR 回復伺服器」是否在必要時要執行同步點記載。
視連接的遞送複雜性而定,「應用系統要求程式」與「應用程式伺服器」之間的 APPC 交談可以包括其他系統。不過,所有中間連接均由 VM 來管理, 而且對「應用系統要求程式」或使用者應用程式而言,它們是透通的。APPC/VM 介面可讓「DB2 for VM 應用程式伺服器」與位在下列的 APPC 應用程式進行通信: