專利名稱:光纖信道通信中持續信息單元定步協議的使用的制作方法
技術領域:
本公開涉及用于光纖信道通信中的持續信息單元定步(pacing)協議的使用的方 法、系統和制造產品。
背景技術:
光纖信道(Fibre Channel)指由美國國家標準協會開發的一組綜合的用于數據傳 送的架構標準。光纖連接(FICON)是光纖信道架構的協議,并且還可以由正式名稱FC-SB-3 來指代。FC-SB-3的進一步細節可以在2003年3月26日由American National Standards for Information Technology (美國國家信息技術標準)出版的出版物“FIBRE CHANNEL Single-Byte Command CodeSets-3 Mapping Protocol (FC-SB-3) "(Rev. 1. 6) >2007 ^ 9 ^ 28 H American National Standards for Information Technology 出片反的出 版物 “FibreChannel Single-Byte Command Code Sets-3”(AMENDMENT 1 (FC-SB-3/AM1), INCITS 374-2003/AM1-2007)中找到。信道是各通信設備之間的直接的或切換的點到點連接。在光纖信道架構中,FICON 信道可以執行由FC-SB-3指定的功能,以通過控制單元或仿真控制單元提供對輸入/輸出 (1/0)設備的訪問。FICON信道可以依賴于用于在各通信設備之間傳送數據的分組切換。信道命令字(CCW)是包括1/0請求的控制塊,并且可以指代特定系統架構的結構, 所述信道命令字與參數一起指定要執行的命令。信道程序(program)是控制信道操作的特 定序列的、順序執行的一個或多個信道命令字的序列。FICON信道可以與用于任何寫操作的 相關聯的數據一起、一次傳輸達16個信道命令字,其中信道命令字可以稱為“信息單元”。 如果在信道程序中存在多于16個信息單元,則在第一 16個信息單元的傳輸后,可以以8個 為組傳輸剩余的信息單元,直到信道程序完成。超過16的額外信息單元只能在響應于命令 響應請求(CRR)已經從接收方接收命令響應后發送。要注意的是,盡管以8個為組進行剩 余信息單元的傳輸是常用方式,但是剩余信息單元的傳輸不需要必須以8個為組。也稱為全局鏡像Z (GMz或zGM)的擴展遠程復制(XRC)是可用于z/0S*和0S/390* 操作系統的復制功能。XRC在遠程位置異步地維持數據的拷貝,并且可以在擴展距離(如超 過一百千米的距離)上實現。XRC可以用于IBM企業存儲服務器* (ESS)。XRC的進一步細 節可以在2004年7月由國際商業機器公司出版的出版物“IBM Total Storage Enterprise Storage Server Implementing ESS Copy Services with IBM eServer zSeries,,中找到。擴展距離XRC配置可以在遠程主機和主站點控制單元之間使用光纖信道擴展技 術。該擴展的光纖信道可以由遠程主機使用,以從主站點控制單元讀取數據并將備份數據 存儲在遠程站點處的存儲上。遠程主機可以發出命令鏈到主站點控制單元,該命令鏈包括 定義子系統操作(DS0)命令,然后是一系列讀取記錄集(read record set,RRS)命令,最后 是執行子系統功能(PSF)/讀取子系統數據(RSSD)命令集,以便確定用于下一鏈的側文件 (side-file)入口的數目。可以在DS0命令參數中指示鏈中的RRS命令的計數。特定解決 方案中的該計數可以是大約150CCW。
FICON架構中的稱為“信息單元定步”的流程控制方法可以限制FICON信道在任何 時間點正在處理(in flight)最多16個信息單元。信道程序可以通過設置第八個信息單 元中的命令響應請求(CRR)位,請求命令響應信息單元。當信道程序從控制單元接收命令 響應信息單元時,發送另外8個信息單元。這可能導致在擴展距離(如超過一百千米的距 離)處的數據速率下降,因為根據FICON定步協議,控制單元在請求額外單元之前必須接收 第一組16個信息單元,因此增加了信道和控制單元端口之間的通信的額外往返。往返的數 目依賴于信道命令字鏈的大小。如果在信道命令字鏈中存在150個信道命令字,則可能存 在達17個往返。在擴展距離(如超過一百千米的距離)處,對于通信的額外往返可能增加 顯著開銷。由于這個原因,所謂的“欺騙,,信道擴展器已經增加功能性來檢查每個命令,以確 定命令是DS0/RRS命令鏈。如果是,則遠程信道擴展器可以生成RRS命令的CCW鏈以仿真 預期由本地擴展器接收的命令。數據通過遠程擴展器輸送到本地擴展器,然后在本地擴展 器處,對接收的數據執行CCW鏈,就像它在控制單元中一樣。這避免了由長距離要求的額外 往返導致的數據速率下降。然而,信道擴展器中的該功能性可能將客戶限制到相對昂貴的 信道擴展的解決方案。
發明內容
提供了一種方法、系統和制造產品,其中主存儲控制單元通過光纖信道連接從遠 程主機接收信息單元,其中通過光纖信道連接實現持續信息單元定步。維持關于通過至少 一個邏輯路徑、已經在主存儲控制單元處接收多少大型寫入的信息,所述至少一個邏輯路 徑在主存儲控制單元和遠程主機之間的光纖信道連接上建立,其中大型寫入是處理的數據 信息單元的數目超過信息單元定步信用(credit)的默認值的輸入/輸出(I/O)操作。主 存儲控制單元調整從主存儲控制單元發送到遠程主機的響應中包括的信息單元定步參數, 其中該調整至少基于維持的關于通過至少一個邏輯路徑已經在主存儲控制單元處已經接 收多少大型寫入的信息。在特定實施例中,信息單元定步參數指示允許遠程主機發送到主存儲控制單元、 而不用等待來自主存儲控制單元的任何額外響應的信息單元的數目,并且其中如果不存在 由大型寫入導致的寫入緩沖器的擁塞,則用于至少一個邏輯路徑的信息單元定步參數設為 大于16但是少于256的數。在另外的實施例中,信息單元是光纖連接協議中的信道命令字,并且其中接收的 信道命令字開始信道命令字鏈。確定信道命令字是否包括定義子系統操作命令,該定義子 系統操作命令定義用于擴展遠程復制操作的子系統操作。確定與定義子系統操作命令相關 聯的讀取記錄集命令的數目,其中讀取記錄集命令對應于讀取請求。設置用于邏輯路徑的 信息單元定步參數值,使得在下一信道程序的開始可以發送增加數目的信息單元,其中如 果使用了相同或更小數目的讀取記錄集命令,則可以立即發送整個鏈。在另外的實施例中,如果多個大型寫入導致寫入緩沖器的擁塞,則對于其中大型 寫入超過預定閾值的所有邏輯路徑重置信息單元定步參數。在特定實施例中,遠程主機執行從主存儲控制單元到遠程存儲控制單元的數據的 擴展遠程復制,其中遠程主機地理上與主存儲控制單元分離超過一百千米的距離。
現在參考附圖,附圖中貫穿各圖相同的參考標號表示對應的部分圖1圖示根據特定實施例的計算環境的方塊圖;
圖2圖示根據特定實施例的、示出在遠程主機和主存儲控制器之間的通信的方塊 圖;圖3圖示根據特定實施例的、示出在信道和控制單元之間的通信的方塊圖;圖4圖示根據特定實施例的、與光纖信道連接相關聯的數據結構;圖5圖示根據特定實施例的、與擴展遠程復制相關聯的數據結構;圖6圖示根據特定實施例的、示出如何在操作環境中設置IU定步參數的方塊圖;圖7圖示根據特定實施例的、示出用于設置IU定步參數的第一操作的流程圖;圖8圖示示出用于設置IU定步參數的第二操作的流程圖;以及圖9圖示計算系統的架構,其中在特定實施例中,可以根據計算系統的架構實現 圖1的計算環境的元件。
具體實施例方式在下面的描述中,參考附圖,該附圖形成描述的一部分并圖示若干實施例。要理解 的是,可以利用其它實施例并且可以進行結構和操作的改變。特定示例實施例的概述持續IU定步協議允許信道一次發送多于16個信息單元到控制單元,因此減輕了 在擴展距離處的命令相關的數據速率下降。使用持續IU定步協議的特定實施例允許擴展 距離遠程復制(XRC)環境中的主存儲控制單元修改FICON架構內的信息單元流,使得在某 些時間點可以正在處理多于16個信息單元。在光纖信道網絡中使用FICON的擴展距離遠 程復制實現中,遠程主機可以執行擴展距離遠程復制操作,以將數據從主存儲控制單元復 制到遠程存儲控制單元。通過允許在某些時間點正在處理多于16個信息單元,與其中限制 信道在任何時間點不能正在處理多于16個信息單元的情況相比,特定實施例可以減少用 于執行擴展遠程復制的時間。特定實施例通過執行以下操作,在FICON架構上實現了可能干擾XRC實現中的讀 取的寫入操作的擁塞控制(i)LW(大型寫入)計數跟蹤每個邏輯路徑的大型寫入。大型寫入定義為處理的數 據IU的數目超過默認IU定步信用的I/O操作。(ii)每次在邏輯路徑上接收具有RRS次等級(suborder)的DSO時,遞減LW計數。 如果此時LW計數達到0,則將該邏輯路徑的定步信用設為比DSO命令參數中指示的RRS命 令的數目多3,服從最大定步信用為255。(iii)在鏈的末端,如果該鏈的寫入IU計數超過默認定步信用(或可調整的值), 則遞增LW計數。如果LW計數達到最大值,則將該邏輯路徑放在大型寫入閾值(LWT)列表 上。為了處理非常大的LW鏈,可以將LW計數遞增將對于該鏈的LW計數除以默認定步計數 的值。(iv)在I/O操作的結束,如果寫入緩沖器擁塞已經出現,則對LWT列表上的所有邏輯路徑重置定步計數。(v)LW計數不允許遞減到0以下或遞增到選擇的最大值以上。(vi)在鏈的開始,在命令響應(CMR)中使用對于邏輯路徑的當前存儲的定步信 用,并且將對接收該CMR后通過信道開始的下一鏈起作用。示例性優選實施例圖1圖示利用耦合到主存儲控制單元104和遠程存儲控制單元106的遠程主機 102的計算環境100的方塊圖。盡管圖1只示出單個遠程主機102、單個主存儲控制單元 104和單個遠程存儲控制單元106,但是在特定替代實施例中,多個遠程主機可以耦合到多 個主存儲控制單元和遠程存儲控制單元。遠程主機102可以通過數據接口信道(如光纖信道108或本領域已知的任何其它 數據接口機制)連接到主存儲控制單元104。遠程主機102可以是本領域目前已知的任何 適合的計算設備,如個人計算機、工作站、服務器、大型機、手持式計算機、電話設備、網絡設 備等。遠程主機102可以包括本領域已知的任何操作系統,如IBM 0S/390或z/OS操作系 統。主存儲控制單元104和遠程存儲控制單元106可以包括多個邏輯容量(volume)。 主存儲控制單元104和遠程存儲控制單元106可以控制多個物理存儲設備,每個物理存儲 設備可以包括一個或多個物理容量。遠程主機102可以包括主機應用110,并且主存儲控制單元104可以包括控制器應 用112。主機應用110與控制器應用112接口,以從主存儲控制單元104讀取數據并將數 據存儲在遠程存儲控制單元106中。主機應用110和控制器應用112通過光纖信道108通 信。在特定實施例中,主機應用110通過光纖信道108使用擴展遠程復制,以將數據從主存 儲控制單元104復制到遠程存儲控制單元106。通過光纖信道108在遠程主機102和主存儲控制單元104之間的通信,可以通過 遠程主機102中包括的光纖信道適配器114和主存儲控制單元104中包括的光纖信道適配 器116來啟用。遠程主機102中包括的光纖信道適配器114包括端口 118,并且主存儲控制 單元104中包括的光纖信道適配器116包括端口 120,其中端口 118和120在光纖信道術 語中可以稱為N端口。經由FICON協議的基于光纖信道的通信可以在遠程主機102的端口 118和主存儲控制單元104的端口 120之間執行。在兩個光纖信道適配器114和116之間 可以建立多個邏輯路徑。因此,圖1圖示了計算環境100,其中主機應用110通過使用擴展遠程復制操作,經 由FICON協議將數據從主存儲控制單元104復制到遠程存儲控制單元106。在特定實施例 中,通過使用光纖信道擴展解決方案,遠程主機102和主存儲控制單元104之間的距離可以 超過光纖信道架構支持的最大距離。圖2圖示根據計算環境100中實現的特定實施例、示出在遠程主機102和主存儲 控制器104之間的通信的方塊圖。遠程主機102能夠在遠程主機102和主存儲控制單元104之間根據FICON協議生 成的信道上、順序地發送一個或多個信道命令字400。主存儲控制單元104可以響應于特定 信道命令字200發送命令響應信息單元202。在特定實施例中,通過調整命令響應信息單元 202中包括的IU定步參數(如IU定步參數208),主存儲控制單元104可以修改可以在遠程主機102和主存儲控制單元104之間正在處理的信道命令字的數目。圖3圖示根據特定實施例的、示出計算環境100中實現的信道300和控制單元302 之間的通信的方塊圖。在特定實施例中,信道300是遠程主機102的實體,并且包括端口 118。控制單元 302是存儲控制器104的實體,并且包括端口 120。可以在信道300和控制單元302之間建
立邏輯路徑。在特定實施例中,信道發送建立邏輯路徑(ELP)請求304到控制單元302,請求在 信道300和控制單元302之間建立邏輯路徑。響應于接收建立邏輯路徑請求304,控制單元 302可以發送邏輯路徑建立(LPE)響應306給信道300,并且建立邏輯路徑。在根據FICON架構實現持續IU定步的特定實施例中,當通過使用建立邏輯路徑請 求304和邏輯路徑建立響應306建立邏輯路徑時,如果控制單元302指示支持IU定步參數 值的保持,則信道300可以保持隨后的命令鏈的IU定步參數的值。圖4圖示根據特定實施例的、在計算環境100中通過光纖信道108實現的與光纖 連接有關的數據結構。圖4所示的數據結構稱為FICON數據結構400。FICON數據結構400包括一個或多個信道命令字402、信息單元定步信用404、具有 信息單元定步參數408的命令響應信息單元406,其中信息單元定步參數408也稱為IU定 步參數,并且信息單元定步信用404可稱為IU定步信用。FICON數據結構400還包括建立 邏輯路徑請求304和邏輯路徑建立響應306。信道命令字402是包括I/O請求的控制塊。例如,在特定實施例中,信道命令字 402可以包括從主機應用110到控制器應用112的讀取請求,其中該讀取請求是讀取由存儲 控制器104存儲的數據的請求。信道命令字402可以從信道300發送到控制單元302。信 道命令字402還可以稱為信息單元。用于遠程主機102和存儲控制器104之間的光纖信道通信的每個信道300提供IU 定步信用404,其可以在每個信道程序的開始時或在重新連接以繼續信道程序的執行期間 初始化。IU定步信用404是遠程主機102從存儲控制器104接收命令響應信息單元406之 前、遠程主機102可以發送給存儲控制器104的信息單元的最大數目。命令響應信息單元406是響應于特定條件、從存儲控制器104發送給遠程主機102 的信息單元。例如,命令響應信息單元406可以響應于特定信道命令字402,從存儲控制器 104發送給遠程主機102。與命令響應信息單元406相關聯的IU定步參數408可以從存儲 控制器104的端口 120發送,以指示遠程主機102可以通過信道發送的信息單元的最大數 目。IU定步參數408為零指示IU定步信用的值要重置為默認值。在信道程序的開始時或在每次重新連接時,信道300可以發送多個信息單元給控 制單元302。發送的信息單元的數目不可以超過信息單元定步信用404的值,其中信息單元 定步信用404的值也稱為信息單元定步信用值。建立邏輯路徑請求304可以從信道300發送給控制單元302,以指示信道300支持 的可選特征,并且請求在信道300和控制單元302之間建立邏輯路徑。來自控制單元302 的邏輯路徑建立響應306確認建立邏輯路徑功能請求的成功完成和邏輯路徑的建立,并且 指示要在信道300和控制單元302之間發送的所有信息單元上使用的可選特征。建立邏輯路徑請求304可以經由具有稱為建立邏輯路徑參數308的相關參數的建立邏輯路徑功能實現。建立邏輯路徑參數308中包括的持續定步控制指示符位310可指示 信道300是否提供對持續定步的支持,S卩,跨越多個命令鏈的信息單元定步參數408的值的 保持,其中命令鏈是信道命令字的序列。持續定步也可以稱為持續信息單元定步。邏輯路徑建立響應306可以經由具有稱為邏輯路徑建立參數312的相關參數的功 能實現。邏輯路徑建立參數312中包括的持續定步控制響應指示符位314可以指示控制單 元302是否提供對持續定步的支持。因此,圖4圖示特定實施例,其中稱為持續定步控制指示符位310的第一指示符和 稱為持續定步控制響應指示符位314的第二指示符,指示信道300和控制單元302之間建 立的邏輯路徑是否啟用持續定步。在特定實施例中,包括第一指示符310和第二指示符314 作為對光纖信道協議的增強,其中對光纖信道協議的增強支持跨越多個命令鏈的持續信息 單元定步。圖5圖示根據特定實施例的、與計算環境100中實現的擴展遠程復制相關聯的數 據結構。圖5所示的數據結構稱為XRC數據結構500。XRC數據結構500可以包括定義子系統操作(DS0)命令502,其定義發信號傳輸執 行當前命令鏈中的多個讀取記錄集(RRS)信道命令字的意圖的子系統操作。在擴展遠程復 制操作期間,DS0命令502可以在遠程主機102和主存儲控制單元104之間的通信期間定 義子系統操作。RRS命令504如果與DS0命令502相關聯,則對主存儲控制單元104指示遠 程主機102正在發送讀取請求。擴展距離XRC配置可以使用遠程主機102和主存儲控制單元104之間的光纖信道 擴展技術。擴展光纖信道可以由遠程主機102用來從主存儲控制單元104讀取數據,并且 將數據存儲在遠程存儲控制單元106處的存儲。在特定實施例中,從主存儲控制單元104 讀取的數據作為備份數據存儲在遠程存儲控制單元106中。在特定實施例中,遠程主機102發出命令鏈到主存儲控制單元104,其中命令鏈包 括DS0命令502,然后是一系列讀取記錄集命令504,最后是額外的命令[例如,如XRC中定 義的執行子系統功能(PSF)命令和讀取子系統數據(RSSD)命令],以便確定用于下一鏈的 側文件入口的數目。鏈中的RRS命令504的計數在DS0命令參數中指示,并且在特定示例 性實施例中,RRS命令504的計數可以超過150信道命令字。因此,圖5圖示特定實施例,其中與DS0命令502相關聯的讀取記錄集命令504對 主存儲控制單元104指示遠程主機102請求了讀取操作。在實現擴展遠程復制的實施例中, 這種DS0命令502可以從遠程主機102發送到主存儲控制單元104。圖6圖示根據特定實施例的、示出如何在操作環境600中設置IU定步參數408的 方塊圖。操作環境600可以出現在計算環境100中。在操作環境中,光纖信道上的XRC環境(參考標號602)可在遠程主機102和主存 儲控制單元104之間操作。啟用持續信息單元定步(參考標號604)。然而,除了具有讀取 記錄集命令504的DS0命令502外,干擾寫入命令606也從遠程主機102發送到主存儲控 制單元104。干擾寫入命令606可以是大型寫入,其中大型單元定義為處理的數據信息單元 的數目超過默認IU定步信用的I/O操作。在操作環境600中,作為XRC環境的DS0命令中的讀取記錄集命令504的功能,設 置IU定步參數408 (參考標號608)。因此,當啟用持續IU定步時,可以同時正在處理多于16個信息單元。然而,大型寫入命令606可能導致干擾和問題。因此,在操作環境600中, 基于可以處理的大型寫入的最大數目跟蹤大型寫入的數目,并且對于存在太多大型寫入的 邏輯路徑重置IU定步參數(參考標號610)。其可以看作是一種形式的用于寫入命令的擁 塞控制,使得通過重置IU定步參數,在流控制期間限制了干擾寫入命令的數目。圖7圖示根據特定實施例的、示出用于設置IU定步參數的第一操作的流程圖。第 一操作可以經由控制器應用112和主機應用110,在計算環境100的遠程主機102和主存儲 控制單元104中實現。控制在塊700開始,其中通過光纖信道108在遠程主機102和主存儲控制單元104 之間形成的信道處于空閑狀態,并且信道命令字鏈開始(參考標號702)。進行關于是否啟用持續IU定步和第一個接收的命令是否是具有讀取記錄集次等 級的DSO命令的確定(在塊704)。如果是,則遞減大型寫入計數(在塊706)但不允許其下 降至0以下。進行關于大型寫入計數是否為0的確定(在塊708),并且如果是,則進行是 否存在由大型寫入導致的緩沖器的擁塞的確定(在塊710)。如果否,則在塊712,將對應邏 輯路徑的IU定步參數設為比DSO命令參數中指示的讀取記錄集命令的數目多3。然而,IU 定步參數不能設為多于255。如果在塊708進行確定大型寫入計數不為0,則控制進行到塊718,其中進行關于 對應邏輯路徑是否在大型寫入閾值列表上的確定。如果是,則從大型寫入閾值列表移除該 邏輯路徑(在塊720)。如圖7所示,控制可以從塊704、720、718、710和712的任何進行到塊714,如圖7 提供的每個指示。在塊714,發送具有用于邏輯路徑的當前IU定步參數的命令響應信息單 元。控制進行到塊716,其中執行命令鏈,同時通過遞增寫入IU計數來跟蹤寫入信息單元, 以便跟蹤命令鏈中的寫入信息單元的數目。要注意的是,在I/O操作的結束,如果已經出現 寫入緩沖器擁塞,則對大型寫入閾值列表上的所有邏輯路徑重置定步計數。圖8圖示示出用于設置IU定步參數的第二操作的流程圖。第二操作可以經由控 制器應用112和主機應用110,在計算環境100的遠程主機102和主存儲控制單元104中實 現。控制在塊800開始,其中主存儲控制單元104通過光纖信道連接108從遠程主機 102接收信息單元,其中通過光纖信道連接108實現持續信息單元定步。控制進行到塊802,其中維持關于通過至少一個邏輯路徑、已經在主存儲控制單元 104處接收多少大型寫入的信息,所述至少一個邏輯路徑在主存儲控制單元104和遠程主 機102之間的光纖信道連接108上建立,其中大型寫入是處理的數據信息單元的數目超過 信息單元定步信用的默認值的輸入/輸出(I/O)操作。在塊804,主存儲控制單元104調整從主存儲控制單元104發送到遠程主機102的 響應中包括的信息單元定步參數408,其中該調整至少基于維持的關于通過至少一個邏輯 路徑已經在主存儲控制單元104處接收多少大型寫入的信息。控制可以從塊804進行到塊806和塊808。在塊806,如果不存在由大型寫入導致 的寫入緩沖器的擁塞,則將用于至少一個邏輯路徑的信息單元定步參數設為大于16但是 小于256的數目。在塊808,如果多個大型寫入導致寫入緩沖器的擁塞,則對其中大型寫入 超過預定閾值的所有邏輯路徑重置信息單元定步參數。
特定實施例允許通過光纖信道的XRC實現,使得在啟用持續IU定步的同時執行對 于大型寫入的擁塞控制。優選的是在與XRC讀取操作相同的路徑上不具有一直運行大型寫 入的應用,因為這種大型寫入可能干擾持續定步的性能益處。特定實施例的大型寫入檢測 設計為在需要時允許一些時段的大型寫入I/O。本發明的模式
另外的實施例細節所述技術可以實現為方法、裝置或涉及軟件、固件、微代碼、硬件和/或其任何組 合的制造產品。如這里使用的術語“制造產品”指介質中實現的代碼或邏輯,其中這種介 質可以包括硬件邏輯[例如,集成電路芯片、可編程門陣列(PGA)、專用集成電路(ASIC) 等]或計算機可讀介質,如磁存儲介質(例如,硬盤驅動、軟盤、帶等)、光存儲(CD-ROM、光 盤等)、易失性和非易失性存儲器設備[例如,電可擦除可編程只讀存儲器(EEPROM)、只 讀存儲器(ROM)、可編程只讀存儲器(PR0M)、隨機存取存儲器(RAM)、動態隨機存取存儲器 (DRAM)、靜態隨機存取存儲器(SRAM)、閃存、固件、可編程邏輯等]。計算機可讀介質中的代 碼由處理器訪問和執行。其中編碼代碼或邏輯的介質還可以包括通過空間或傳輸介質(如 光纖、銅線等)傳播的傳輸信號。其中編碼代碼或邏輯的傳輸信號還可以包括無線信號、衛 星傳輸、無線電波、紅外信號、藍牙等。其中編碼代碼或邏輯的傳輸信號能夠由發送站發送 和由接收站接收,其中傳輸信號中編碼的代碼或邏輯可以在接收和發送站或設備被解碼和 存儲在硬件或計算機可讀介質中。此外,“制造產品”可以包括其中體現、處理和執行代碼的 硬件和軟件組件的組合。當然,本領域技術人員將認識到,可以進行許多修改而不偏離實施 例的范圍,并且制造產品可以包括任何信息承載介質。例如,制造產品包括其中存儲指令的 存儲介質,該指令在由機器執行時導致執行操作。特定實施例可以采取完全硬件實施例、完全軟件實施例或包含硬件和軟件元素的 實施例的形式。在優選實施例中,本發明以軟件實現,其包括但不限于固件、駐留軟件、微代碼等。此外,特定實施例可以采用從計算機可用或計算機可讀介質可訪問的計算機程序 產品的形式,該計算機可用或計算機可讀介質提供程序代碼由計算機或任何指令執行系統 使用或結合計算機或任何指令執行系統使用。為了該描述的目的,計算機可用或計算機可 讀介質可以是可以包含、存儲、傳遞、傳播或傳送程序以用于由指令執行系統、裝置或設備 使用或結合指令執行系統、裝置或設備使用的任何裝置。該介質可以是電、磁、光、電磁、紅 外或半導體系統(或裝置或設備)或傳播介質。計算機可讀介質的示例包括半導體或固態 存儲器、磁帶、可移除計算機盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、剛性磁盤和光 盤。光盤的當前示例包括致密盤只讀存儲器(⑶-ROM)、致密盤-讀/寫(⑶-R/W)和DVD。
術語“特定實施例”、“一實施例”、“實施例”、“各實施例”、“該實施例”、“所述各實 施例”、“一個或多個實施例”、“一些實施例”和“一個實施例”意味著一個或多個(但不是所 有)實施例,除非明確另外指定。術語“包括”、“包含”、“具有”及其變化意味著“包括但不 限于”,除非明確另外指定。列舉的項目列表不暗示任何或所有項目相互排他,除非明確另 外指定。術語“一”、“一個”和“該”意味著“一個或多個”,除非明確另外指定。 相互通信的設備不需要相互持續通信,除非明確另外指定。此外,相互通信的設備 可以直接或通過一個或多個中間物間接通信。此外,具有相互通信的若干組件的實施例的CN 101878617 A
描述不暗示要求所有這些組件。相反,描述了多個可選組件來圖示種類廣泛的可能的實施 例。此外,盡管可以以序列順序描述處理步驟、方法步驟、算法等,但是這種處理、方法 和算法可以配置為以交替順序工作。換句話說,可描述的步驟的任何序列或順序不一定指 示要求各步驟以該順序執行。在此描述的處理步驟可以以任何實際順序執行。此外,一些 步驟可以同時、并行或并發執行。當在此描述單個設備或產品時,明顯的是可以使用多于一個設備/產品(無論它 們是否合作)來代替單個設備/產品。類似地,在這里描述多于一個設備或產品的情況下 (無論它們是否合作),將明顯的是可以使用單個設備/產品來代替該多于一個設備或產 品。設備的功能性和/或特征可以由沒有明確描述為具有這種功能性和/或特征的一個或 多個其它設備替代地體現。因此,其它實施例不需要包括設備自身。圖9圖示示例性計算機系統900,其中在特定實施例中,圖1的計算環境100的遠 程主機102、主存儲控制器104和遠程存儲控制器106可以根據計算機系統900的計算機 架構而實現。計算機系統900還可以稱為系統,并且可以包括電路902,其在特定實施例中 可以包括處理器904。系統900還可以包括存儲器906 (例如,易失性存儲器設備)和存儲 908。系統900的特定元件可以或可以不在圖1的遠程主機102、主存儲控制器104或遠程存 儲控制器106中找到。存儲908可以包括非易失性存儲器設備(例如,EEPROM、ROM、PR0M、 RAM、DRAM、SRAM、閃存、固件、可編程邏輯等)、磁盤驅動、光盤驅動、帶驅動等。存儲908可 以包括內部存儲設備、附接存儲設備和/或網絡可訪問存儲設備。系統900可以包括包含 代碼912的程序邏輯910,該代碼可以加載到存儲器906并由處理器904或電路902執行。 在特定實施例中,包括代碼912的程序邏輯910可以存儲在存儲908中。在其他特定實施 例中,程序邏輯910可以在電路902中實現。因此,盡管圖9示出程序邏輯910與其它元件 分離,但是程序邏輯910可以在存儲器906和/或電路902中實現。特定實施例可能貫注于用于通過人或自動處理將計算機可讀代碼集成到計算系 統中而部署計算指令的方法,其中啟用與計算系統結合的代碼以執行上述實施例的操作。圖9所示的至少某些操作可以并行以及順序執行。在替代實施例中,某些操作可 以以不同順序執行、被修改或移除。此外,為了說明目的已經以分開模塊描述了許多軟件和硬件組件。這種組件可以 集成到更少數目的組件或劃分為更多數目的組件。另外,描述為由特定組件執行的某些操 作可以由其它組件執行。圖1-9中示出或引用的數據結構和組件描述為具有特定類型的信息。在替代實施 例中,各數據結構和組件可以不同地構造,并且具有比圖中示出或引用的那些更少、更多或 不同字段或不同功能。因此,為了說明和描述的目的已經呈現了本發明的前面描述。意圖不在于是窮盡 性的或將實施例限于公開的精確形式。考慮上述教導,許多修改和變形是可能的。*z/0S, 0S/390和企業存儲服務器是國際商業機器公司的商標或注冊商標。
1權利要求
一種方法,包括在主存儲控制單元處,通過光纖信道連接從遠程主機接收信息單元,其中通過光纖信道連接實現持續信息單元定步;維持關于已經通過至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息,所述至少一個邏輯路徑在主存儲控制單元和遠程主機之間的光纖信道連接上建立,其中大型寫入是處理的數據信息單元的數目超過信息單元定步信用的默認值的輸入/輸出(I/O)操作;以及通過主存儲控制單元調整信息單元定步參數,所述信息單元定步參數包括在從主存儲控制單元發送到遠程主機的響應中,其中該調整至少基于維持的、關于已經通過所述至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息。
2.如權利要求1所述的方法,其中信息單元定步參數指示允許遠程主機發送到主存儲 控制單元、而不用等待來自主存儲控制單元的任何額外響應的信息單元的數目,并且其中 如果不存在由大型寫入導致的寫入緩沖器的擁塞,則用于所述至少一個邏輯路徑的信息單 元定步參數設為大于16但是少于256的數。
3.如權利要求1所述的方法,其中信息單元是光纖連接協議中的信道命令字,并且其 中接收的信道命令字開始信道命令字鏈,該方法還包括確定信道命令字是否包括定義子系統操作命令,該定義子系統操作命令定義用于擴展 遠程復制操作的子系統操作;確定與定義子系統操作命令相關聯的讀取記錄集命令的數目,其中讀取記錄集命令對 應于讀取請求;以及設置用于邏輯路徑的信息單元定步參數值,使得在下一信道程序的開始能夠發送增加 數目的信息單元,其中如果使用了相同或更小數目的讀取記錄集命令,則能夠立即發送整 個鏈。
4.如權利要求1所述的方法,其中如果多個大型寫入導致寫入緩沖器的擁塞,則對于 其中大型寫入超過預定閾值的所有邏輯路徑重置信息單元定步參數。
5.如權利要求1所述的方法,其中遠程主機執行從主存儲控制單元到遠程存儲控制單 元的數據的擴展遠程復制,并且其中遠程主機地理上與主存儲控制單元分離超過一百千米 的距離。
6.一種系統,包括存儲器;以及耦合到存儲器的處理器,其中所述處理器執行操作,所述操作包括(i)在主存儲控制單元處,通過光纖信道連接從遠程主機接收信息單元,其中通過光纖 信道連接實現持續信息單元定步;(ii)維持關于已經通過至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的 信息,所述至少一個邏輯路徑在主存儲控制單元和遠程主機之間的光纖信道連接上建立, 其中大型寫入是處理的數據信息單元的數目超過信息單元定步信用的默認值的輸入/輸 出(I/O)操作;以及(iii)通過主存儲控制單元調整信息單元定步參數,所述信息單元定步參數包括在從 主存儲控制單元發送到遠程主機的響應中,其中該調整至少基于維持的、關于已經通過所述至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息。
7.如權利要求6所述的系統,其中信息單元定步參數指示允許遠程主機發送到主存儲 控制單元、而不用等待來自主存儲控制單元的任何額外響應的信息單元的數目,并且其中 如果不存在由大型寫入導致的寫入緩沖器的擁塞,則用于所述至少一個邏輯路徑的信息單 元定步參數設為大于16但是少于256的數。
8.如權利要求6所述的系統,其中信息單元是光纖連接協議中的信道命令字,并且其 中接收的信道命令字開始信道命令字鏈,所述操作還包括確定信道命令字是否包括定義子系統操作命令,該定義子系統操作命令定義用 于擴展 遠程復制操作的子系統操作;確定與定義子系統操作命令相關聯的讀取記錄集命令的數目,其中讀取記錄集命令對 應于讀取請求;以及設置用于邏輯路徑的信息單元定步參數值,使得在下一信道程序的開始能夠發送增加 數目的信息單元,其中如果使用了相同或更小數目的讀取記錄集命令,則 能夠立即發送整 個鏈。
9.如權利要求6所述的系統,其中如果多個大型寫入導致寫入緩沖器的擁塞,則對于 其中大型寫入超過預定閾值的所有邏輯路徑重置信息單元定步參數。
10.如權利要求6所述的系統,其中遠程主機執行從主存儲控制單元到遠程存儲控制 單元的數據的擴展遠程復制,并且其中遠程主機地理上與主存儲控制單元分離超過一百千 米的距離。
11.一種制造產品,其中該制造產品包括在機器上執行時執行操作的代碼,所述操作包括在主存儲控制單元處,通過光纖信道連接從遠程主機接收信息單元,其中通過光纖信 道連接實現持續信息單元定步;維持關于已經通過至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息, 所述至少一個邏輯路徑在主存儲控制單元和遠程主機之間的光纖信道連接上建立,其中大 型寫入是處理的數據信息單元的數目超過信息單元定步信用的默認值的輸入/輸出(I/O) 操作;以及通過主存儲控制單元調整信息單元定步參數,所述信息單元定步參數包括在從主存儲 控制單元發送到遠程主機的響應中,其中該調整至少基于維持的、關于已經通過所述至少 一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息。
12.如權利要求11所述的制造產品,其中信息單元定步參數指示允許遠程主機發送到 主存儲控制單元、而不用等待來自主存儲控制單元的任何額外響應的信息單元的數目,并 且其中如果不存在由大型寫入導致的寫入緩沖器的擁塞,則用于所述至少一個邏輯路徑的 信息單元定步參數設為大于16但是少于256的數。
13.如權利要求11所述的制造產品,其中信息單元是光纖連接協議中的信道命令字, 并且其中接收的信道命令字開始信道命令字鏈,所述操作還包括確定信道命令字是否包括定義子系統操作命令,該定義子系統操作命令定義用于擴展 遠程復制操作的子系統操作;確定與定義子系統操作命令相關聯的讀取記錄集命令的數目,其中讀取記錄集命令對應于讀取請求;以及設置用于邏輯路徑的信息單元定步參數值,使得在下一信道程序的開始能夠發送增加 數目的信息單元,其中如果使用了相同或更小數目的讀取記錄集命令,則能夠立即發送整 個鏈。
14.如權利要求11所述的制造產品,其中如果多個大型寫入導致寫入緩沖器的擁塞, 則對于其中大型寫入超過預定閾值的所有邏輯路徑重置信息單元定步參數。
15.如權利要求11所述的制造產品,其中遠程主機執行從主存儲控制單元到遠程存 儲控制單元的數據的擴展遠程復制,并且其中遠程主機地理上與主存儲控制單元分離超過 一百千米的距離。
16.一種用于部署計算基礎設施的方法,包括將計算機可讀代碼集成到計算系統中,其 中結合計算系統的代碼能夠執行在主存儲控制單元處,通過光纖信道連接從遠程主機接收信息單元,其中通過光纖信 道連接實現持續信息單元定步;維持關于已經通過至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息, 所述至少一個邏輯路徑在主存儲控制單元和遠程主機之間的光纖信道連接上建立,其中大 型寫入是處理的數據信息單元的數目超過信息單元定步信用的默認值的輸入/輸出(I/O) 操作;以及通過主存儲控制單元調整信息單元定步參數,所述信息單元定步參數包括在從主存儲 控制單元發送到遠程主機的響應中,其中該調整至少基于維持的、關于已經通過所述至少 一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息。
17.如權利要求16所述的用于部署計算基礎設施的方法,其中信息單元定步參數指示 允許遠程主機發送到主存儲控制單元、而不用等待來自主存儲控制單元的任何額外響應的 信息單元的數目,并且其中如果不存在由大型寫入導致的寫入緩沖器的擁塞,則用于所述 至少一個邏輯路徑的信息單元定步參數設為大于16但是少于256的數。
18.如權利要求16所述的用于部署計算基礎設施的方法,其中信息單元是光纖連接協 議中的信道命令字,并且其中接收的信道命令字開始信道命令字鏈,其中結合計算系統的 代碼能夠執行確定信道命令字是否包括定義子系統操作命令,該定義子系統操作命令定義用于擴展 遠程復制操作的子系統操作;確定與定義子系統操作命令相關聯的讀取記錄集命令的數目,其中讀取記錄集命令對 應于讀取請求;以及設置用于邏輯路徑的信息單元定步參數值,使得在下一信道程序的開始能夠發送增加 數目的信息單元,其中如果使用了相同或更小數目的讀取記錄集命令,則能夠立即發送整 個鏈。
19.如權利要求16所述的用于部署計算基礎設施的方法,其中如果多個大型寫入導致 寫入緩沖器的擁塞,則對于其中大型寫入超過預定閾值的所有邏輯路徑重置信息單元定步 參數。
20.如權利要求16所述的用于部署計算基礎設施的方法,其中遠程主機執行從主存儲 控制單元到遠程存儲控制單元的數據的擴展遠程復制,并且其中遠程主機地理上與主存儲控制單元分離超過一百千米的距離。
21.—種系統,包括主存儲控制單元;用于在主存儲控制單元處、通過光纖信道連接從遠程主機接收信息單元的部件,其中 通過光纖信道連接實現持續信息單元定步;用于維持關于已經通過至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的 信息的部件,所述至少一個邏輯路徑在主存儲控制單元和遠程主機之間的光纖信道連接上 建立,其中大型寫入是處理的數據信息單元的數目超過信息單元定步信用的默認值的輸入 /輸出(I/O)操作;以及用于通過主存儲控制單元調整信息單元定步參數的部件,所述信息單元定步參數包括 在從主存儲控制單元發送到遠程主機的響應中,其中該調整至少基于維持的、關于已經通 過所述至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息。
22.如權利要求21所述的系統,其中信息單元定步參數指示允許遠程主機發送到主存 儲控制單元、而不用等待來自主存儲控制單元的任何額外響應的信息單元的數目,并且其 中如果不存在由大型寫入導致的寫入緩沖器的擁塞,則用于所述至少一個邏輯路徑的信息 單元定步參數設為大于16但是少于256的數。
23.如權利要求21所述的系統,其中信息單元是光纖連接協議中的信道命令字,并且 其中接收的信道命令字開始信道命令字鏈,該系統還包括用于確定信道命令字是否包括定義子系統操作命令的部件,其中該定義子系統操作命 令定義用于擴展遠程復制操作的子系統操作;用于確定與定義子系統操作命令相關聯的讀取記錄集命令的數目的部件,其中讀取記 錄集命令對應于讀取請求;以及用于設置用于邏輯路徑的信息單元定步參數值、使得在下一信道程序的開始能夠發送 增加數目的信息單元的部件,其中如果使用了相同或更小數目的讀取記錄集命令,則能夠 立即發送整個鏈。
24.如權利要求21所述的系統,其中如果多個大型寫入導致寫入緩沖器的擁塞,則對 于其中大型寫入超過預定閾值的所有邏輯路徑重置信息單元定步參數。
25.如權利要求21所述的系統,其中遠程主機執行從主存儲控制單元到遠程存儲控制 單元的數據的擴展遠程復制,并且其中遠程主機地理上與主存儲控制單元分離超過一百千 米的距離。
全文摘要
提供了一種方法、系統和制造產品,其中主存儲控制單元通過光纖信道連接從遠程主機接收信息單元,其中通過光纖信道連接實現持續信息單元定步。維持關于已經通過至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息,所述至少一個邏輯路徑在主存儲控制單元和遠程主機之間的光纖信道連接上建立,其中大型寫入是處理的數據信息單元的數目超過信息單元定步信用的默認值的輸入/輸出(I/O)操作。主存儲控制單元調整信息單元定步參數,所述信息單元定步參數包括在從主存儲控制單元發送到遠程主機的響應中,其中該調整至少基于維持的、關于已經通過所述至少一個邏輯路徑在主存儲控制單元處接收多少大型寫入的信息。
文檔編號H04L12/28GK101878617SQ200880118236
公開日2010年11月3日 申請日期2008年11月14日 優先權日2007年11月30日
發明者布雷特·W·霍利, 羅杰·G·哈索恩, 馬修·J·卡洛斯 申請人:國際商業機器公司