TWI305618B - Use of virtual targets for preparing and servicing requests for server-free data transfer operations - Google Patents
Use of virtual targets for preparing and servicing requests for server-free data transfer operations Download PDFInfo
- Publication number
- TWI305618B TWI305618B TW093105150A TW93105150A TWI305618B TW I305618 B TWI305618 B TW I305618B TW 093105150 A TW093105150 A TW 093105150A TW 93105150 A TW93105150 A TW 93105150A TW I305618 B TWI305618 B TW I305618B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- target
- byte
- consumer
- abstract
- Prior art date
Links
- 238000012546 transfer Methods 0.000 title claims abstract description 59
- 238000003860 storage Methods 0.000 claims abstract description 67
- 238000013500 data storage Methods 0.000 claims abstract description 33
- 238000004590 computer program Methods 0.000 claims abstract description 17
- 239000000872 buffer Substances 0.000 claims description 58
- 230000005540 biological transmission Effects 0.000 claims description 54
- 238000000034 method Methods 0.000 claims description 30
- 238000007726 management method Methods 0.000 claims description 25
- 239000000463 material Substances 0.000 claims description 21
- 230000006835 compression Effects 0.000 claims description 5
- 238000007906 compression Methods 0.000 claims description 5
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 230000003139 buffering effect Effects 0.000 claims description 2
- 230000008030 elimination Effects 0.000 claims 2
- 238000003379 elimination reaction Methods 0.000 claims 2
- 238000004519 manufacturing process Methods 0.000 claims 2
- 240000000560 Citrus x paradisi Species 0.000 claims 1
- 230000007547 defect Effects 0.000 claims 1
- 230000008595 infiltration Effects 0.000 claims 1
- 238000001764 infiltration Methods 0.000 claims 1
- 239000000696 magnetic material Substances 0.000 claims 1
- 238000005192 partition Methods 0.000 claims 1
- 238000005086 pumping Methods 0.000 claims 1
- 239000011257 shell material Substances 0.000 claims 1
- 230000010076 replication Effects 0.000 description 87
- 239000003795 chemical substances by application Substances 0.000 description 56
- 230000006870 function Effects 0.000 description 21
- 238000012545 processing Methods 0.000 description 13
- 208000020990 adrenal cortex carcinoma Diseases 0.000 description 11
- 238000006243 chemical reaction Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000013519 translation Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 239000011800 void material Substances 0.000 description 4
- 238000013523 data management Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 238000012432 intermediate storage Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000013396 workstream Methods 0.000 description 2
- 240000007154 Coffea arabica Species 0.000 description 1
- 206010011469 Crying Diseases 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 235000016213 coffee Nutrition 0.000 description 1
- 235000013353 coffee beverage Nutrition 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 244000144977 poultry Species 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 210000002784 stomach Anatomy 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01C—PLANTING; SOWING; FERTILISING
- A01C11/00—Transplanting machines
- A01C11/02—Transplanting machines for seedlings
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01C—PLANTING; SOWING; FERTILISING
- A01C15/00—Fertiliser distributors
- A01C15/005—Undercarriages, tanks, hoppers, stirrers specially adapted for seeders or fertiliser distributors
- A01C15/006—Hoppers
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01C—PLANTING; SOWING; FERTILISING
- A01C5/00—Making or covering furrows or holes for sowing, planting or manuring
- A01C5/06—Machines for making or covering drills or furrows for sowing or planting
- A01C5/062—Devices for making drills or furrows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Soil Sciences (AREA)
- Environmental Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
1305618 狹、發明說明: 【發明所屬之技術領域】 本發明係關於資料儲存網路,尤其是實施湖(儲存區 域網路)功能性或其類似物的網路。更明確而言,本發明 係關於資料儲存網路環境中之餘存裝置之間的無词服 料傳輸。 【先前技術】 作為背景技術,諸如SAN系統之資料儲存網路提供在專 用於資料料的高速網路内管理資料儲存週邊裝置之聲 境:料網路通常包括資料館存管理飼服器,該飼服器處 理來^猎由習知LAN(區域網路)或WAN(廣域網絡)連接至 儲存管理伺服器之資料用戶遮銘 貝"叶用戶鳊即點(貧料用戶端)的資料儲 存“(例如’複製、備份等)。在資料儲存網路内,儲存 管理词服器-般能夠存取週邊儲存装置之集區内之所有裝 置"亥等裝置可包括任何數目之互連的磁碟驅動陣列、光 ^驅動陣列'磁帶庫等。在幾乎為最小的資料儲存網路 中’藉由仲裁迴圈配置或交換組構來提供所需之互連性, 其中交換組構更為普遍。 在資料儲存㈣时在多種q(fa仙⑺,儲存管理词 服益習知地使用該等工具来委派在儲存裝置之間移動資料 2作。舉例而言,SCSI_3(小型電腦儲存介面)擴展複製 ^提供-種在儲存管理祠服器的控制下將資料自資料儲 子罔路中之一組邏輯儲存單元複製至另—組邏輯儲存單元 的手段,但實際的資料傳輸操作係藉由資料儲存網路内之 91264 1305618 貝料移動裔f體來執行。此,,無飼服器”之資料移— 由資料移動哭施料£六— 、 動係错 、多動“儲存官理伺服器的需求來執行 理飼服器的所有要求就是準備資料之源裝置及目的裝置吕 接著準備並向資料移動器發出擴展複製命令。由於儲存其 理飼服器並不執行實際的資料傳輸操作,所以其可以^ 更多的並發用戶端連接及飼服器操作。 处 SCSI,展複製命令習知地由許多^源儲存 標)與目的储存裝置(目標)以及待自各個源目標傳輪至各個 目的目標的貧料區塊之”複製指令f’組成。此環境中所出現 的一個問題是知道源目標的實體未必就是知道目的目標的 相同實體。第三個實體可能要負責諸如廢縮、加密及檢查 貧料產生之資料操縱。該等實體可為_程式的不同片斷, 或者可位於不同的電腦系統上。一方可能並不知道另一方 所知道的内容’且雙方也許未必相互信任。此使得難以建 立必須具有指定用於各個待傳輸之資料區塊的源目標及目 的目標之複製指令。另—問題是難以提供前述之資料操 縱。就目前的能力而言,必須獨立地針對各個資料源目標 及資料目的目標來指定該等轉換。 本發明旨在解決前述問題。詳言之,吾人所需要的是一 種用於處理無伺服器資料傳輸之替代系統及方法,其中可 :未必完全瞭解源目標及目的目標之實體來公式化資料複 1叩7。一額外目標係提供一種其中無需瞭解資料傳輸中 所涉及的兩個目標之特徵即可提供諸如壓縮、加密及檢查 資料產生之資料轉換的系統及方法。 91264 1305618 【發明内容】 藉由-種在麟转存網路中利用錢服器資料傳輸操作 之準備及服務需求中之虛擬目標及抽象複製指令的系統及 =法’來解決前述問題並獲得此項技術中的進展。抽象複 製指令代表虛擬目標與真實裝置之間的資料傳輸。其允許 分開準備源目標複製指令與目的目標複製指令。接著,可 將抽象複製指令轉換成僅涉及用以由實施無伺服器資料傳 輸操作之資料移動器來執行的真實裝置目標的具體複製指 令0 在本發明之例示性實施例中,虛擬目標為虛擬先 進先出)’且具體複製指令為(僅作為實例)scsi_3擴展複製 命令區段描述符。可藉由合併引用共同虛擬目標連同相應 的源目標與目的目標之抽象複製指令對,以使得對於各個 抽象複製指令對而言’源'目標舆目的目標組合而形成具體 複製指令,從而得以將抽象複製指令轉換成具體複製指 令。此處理程序可包括:將涉及共同虛擬目標的抽象複製 指令分組為供應者清單及消費者清單,並將在各個清單之 首位的抽象複製指令對加以合併,以將與—對抽象複製指 令中之-個抽象複製指令相關聯之源目標連結至與該對抽 象複製指令中之另一抽象複製指令相關聯之目的目標。亦 可能需要產生涉及虛擬源目標與虛擬目的目標之間的資料 傳輸之虛擬目標間(inter-virtual target)抽象複製指令。者 實施無伺服器資料傳輸時,可使用該等虛擬目標間抽象承 製指令來適應資料重定序或内嵌式資料插入。可將各個j 1305618 擬目標間抽象複赞相a蔽 炅i才曰7 c鈿(c〇uapse).將資料 標供應至源虛擬目標的抽象複製指令及將資料自:=目 目標提供至真實目的目標的抽象複製目標。二:= ::二製?令劃分成多個涉及較小大小之資料傳輸的獨立 複製指令,以適應資料死鎖狀況。最後,可卜 生用於資料移動器之資料 此而要產 貝科緩衝命令’以緩衝資料直至可執 丁真貫目的目標之資料傳輸,該傳輸將允許 實目的目標之抽象複製指令。 “曰疋真 本發明進-步涵蓋用於資料料網路之储存管 及允許在資料儲存網路裝置上執行上述無词服器資二 之功能性的電腦程式産品。 輸 【實施方式】 現轉至附圖’其巾在所有_巾,㈣參核字代 同要素。圖m明被調整成執行根據本發明之無飼服p 料傳輸操作之儲存管理伺 。貝 谲存官理伺服器2與經由 k宜之網路連接性機制(例如,㈣_配^1 或其它方式)來使複數個資料儲存 、 —進行通信。該等置二了 片储存系統6及磁帶庫錯存系統8。健存^理们貫例)碟 ,, 谲存官理伺服器2亦鱼 =或多個資料處理用戶端(例如,用戶端系統12)的區 域料(LAN)1〇進行通信。將假定與用戶端系統a相關聯 貝枓集為駐存於SAN 4内之儲存資源上,例如碟片系统 儲存資料集14A)及/或磁帶庫系統8(儲存資料 戶端系統12最初可經由其本身至SAN4之連接或藉由儲存 91264 -9- 1305618 S理飼服益2來將該等資料集存放在其各自儲存資源中。 存在各種可用於視設計優先選擇來建構各種構成S AN 4 之tl件的系統組件。SAN設計之基礎的將是對適宜的通信 及媒體技術(諸如光纖通道、乙太網路或SCSI)之選擇。選 擇該等核心技術中之一種技術將規定對將用於建構S an交 換元件以及駐存於連接至SAN的裝置中之網路介面之裝置 的選擇。 假定儲存管理伺服器2組態為提供到用戶端系統12之適 宜存取介面的SAN應用伺服器。其可自組態有實施所需資 料傳輸功能所必需的硬體及軟體資源之習知可程式化電腦 平里而建置。例示性電腦平臺包括:大型主機電腦,例如 運行IBM®〇S/390®作業系統之iBM®as/39〇®系統;中型電 腦,例如運行IBM®OS/400®作業系統之IBm@as/4〇〇@系 統;工作站電腦,例如運行IBM®高級互動式執行(Αιχ@)作 業系統之IBM RISC SYSTEM/6000®系統;或運行 wmDOWS®作業系統、UNIX⑧或υηιχ類作業系統或作業系 統内核的任何數目之基於微處理器的個人電腦。可用於建 構儲存管理伺服器2之一例示性伺服器應用軟體環境為 IBM®TIV〇u®儲存管理器產品。 儲存管理伺服器2進一步包括適當之網路介面,例如光 纖通道主機匯流排配接||(HBA),其允許儲存管理伺服% 在SAN4上進行通信(若SAN4為光纖通道網路)。一般存在 額外的網路介面,例如乙太網路卡,以便於在LAN 上進 行資料通信(若LAN 1 0為乙太網路)。 91264 -10- 1305618 可能需要在SAN 4中的儲存I置之 端系統12之資料集。舉例而言,用戶生地傳輪用戶 資料集自碟片系統6傳輸至磁 =12可能希望將 12可藉由向楗左其神a 糸,.充8。用戶端系統 *未來啓動該等傳輸。依實施之 4遷移 會涉及位於-…或多個源儲“置上::::需求 案、卷或其它資料集,且可要求 。夕個检 -或多個目的儲存裝置目標。…料傳輸至⑽的 =改良SAN之效率,儲存管理飼服器2被調適成在”益飼 艮為的基礎上處理前述類型 ^ 太欢ηη 貝Τ十得輸④求。並非限制 ^月之通用性,為方便論述,假定儲存管理飼服器以 -3擴展稷製命令來實施無伺服器資料傳輸。如以上 背景技術之簡短描述,S⑶_3擴展複製命令能夠以最小程 ^也涉及命令啓動器的方式來將資料集自—組儲存裝置目 私傳輸至另一組儲存裝置目#。命令啓動器產生擴展複製 命令’接著要求被稱作”資料移動器”之另一實體來處理源 目標與目的目標之間的實際資料傳輸。在SAN 4中,假定 儲存管理伺服器2為受到程式化以充當SCSI_3擴展 令啓動胃。以參考數字16來表示例示性資料移動器。可將 其建構為SCSI-3 SAN路由器/橋接器或任何其它能夠執行 由儲存管理伺服器2所發出的SCSI-3擴展複製命令之SCSI_ 3裝置。如吾人所知,亦可將資料移動器建構為碟片系統 6、磁帶庫系統8或其它系統的附加組件。 圖2A展示以參考數字20所表示的SCSI_3擴展複製命令參 1305618 數μ單之格式。其中,其包括目標插述符22之清單、區段 插述符24之清單及内嵌式資料26。目標描述符22識別資料 傳輸操作中所涉及之源目標及目的目標。區段描述符以識 別待為各個源目標及目的目標傳輸的資料,包括待讀取及 寫入的區塊之數目、待處理之位元組的數目及處理性質。 内嵌式資料26代表插入於在源裝置與目的裝置之間傳輪的 資料中之元資料。 圖2Β展示例示性SCSI_3擴展複製命令區段描述符3〇。為 便於理解說明本發明之操作的後繼實例,已選擇區段描述 符3 0來展示在諸如磁碟機之區塊裝置與諸如磁帶機之流式 裝置之間的資料傳輪。(區塊/流式)區段描述符30識別以32 表不的源目標、以34表示的目的目標、以36表示的流式裝 置傳輸長度、以38表示的區塊裝置的區塊數目及以39表示 的區塊裝置邏輯區塊位址(資料定位資訊)。圖2 c展示用於 將内肷式=貝料傳輸至流式裝置的例示性區段描述符,且 亦選擇該區段描述符4〇以便於理解隨後在本案中所陳述之 實例。〉主意,内嵌式/流式區段描述符40識別以42表示的 目的目標、以44表示的流式裝置傳輸長度、内嵌式資料偏 移(負料疋位資訊)46及内嵌式資料位元組之數目48。如此 項技術中所熟知,對於使用SCSI擴展複製命令的其它類型 之資料傳輸而言,可使用其它區段描述符。 在SCSI-3擴展複製命令中所指定的區段描述符有時被稱 作複製指令。由圖2B及圖2C可見,各個複製指令要求瞭 解源目標及目的目標。然而’如以上之背景技術所指出, 1305618 有時出現如下情況:負責 ^ ^ _ ' SI_3擴展複製命令的軟n 由僅瞭解一個目標 妁軟體
Tivou⑧儲在軟體,组成。舉例而言,在 储存官理斋中,可能 資料月曰ΑΑ θ 用於分別處理源目桿 傳轸+ * 的執仃處理執行緒來處理資料 體之钵士 卜耗用貝源的處理來協調獨立軟 體之努力,以使得可準備禮劁 猸W 3令。此外,因為通常益法 = 於各個源目標及目的目標的諸如I 縮、加密及 …料產生之資料轉換(此係由於各個目標處理該等摔 縱的方式有所差異),所以難以提供該等資料轉換/寺知 =明所提供之解決方案為··允許由獨立的軟體來獨立 地心疋用於源目標及目的目俨 之貝枓傳輸,並使用虛擬目 -Λ自真貫裝置目標之間所傳輸的資料之中間消費者及 供應者。虛擬目標並不對應於特定的真實裝置,而是代表 資料的臨時保捭妯。彳禽Θ L , 符地點儘官如此,虛擬目標仍被當作真實 裝置加以對待’首先作為自真實源目標傳輸資料的一複製 才"中之目的目標’稍後作為將資料傳輸至真實目的目標 的另一複製指令中之源目標。亦引入,,抽象複製指令”或 "ACO”的概念’其作為一種用以描述代表真實裝置與虛擬 目標之間或虛擬目標與另—虛擬目標之間的資料傳輸之複 製指令之媒介物。在本發明之一卿_3實施中,除了指定 虛擬目標來代替真實裝置外,AC〇可能在其它所有方面均 類似於SCSI-3擴展複製命令中所使用的習知複製指令。為 方便起見’在下文中將僅涉及真實裝置的習知複製指令稱 作具體複製指令或"c c 〇"。 91264 -13- 1305618 使用虛擬目標有兩個原因。第—,其允許獨立構建源目 標側及目的目標側的AC0。第二’當所需之資料操作並非 開始及結束於源目標及目的目標上之區塊邊界上時, SCSI-3擴展複製命令會呈現涉及隱藏狀態(來自_區段描 述符之貧料保留至下一區段描述符)的複雜性。為了囊括 該等複雜性’將A⑶設計成開始並終止於區塊邊界上,以 使得不會將資料隱含地自一 ACO轉至下一 AC〇。 ”月町、取I WV 貝,衧供應^ 軟體應用程式可以建立用以將資料自源裝置複製至虛擬 標的包括ACO之複製命令。瞭解真實目的裝置之"資料: 費者"軟體應用程式(該應用程式可為一不同的程式或可』 存於不同的電腦糸統上)可同樣地建立用以將資料自虛名 目標複製至目的裝置的包括AC〇之複製命令。藉由組合含 等命令並將AC0轉換成cco,即可克服與習知之無㈣5 貧㈣輸操作相關聯的第—個問題。資料供應者應用程y 僅需官理真實源資料*目的被指定為虛擬目標之事實意与 該貧料供應者應用程式亦可沪 " 飞兀了札疋待使用於由其產生之AC( 中的資料轉換(意即,壓縮、 ± # ^ 加岔、檢查資料)。對於資料 消費者應用程式而言同樣如此。 .+ . . J將虛擬目標用作中間媒 "來處理資料傳輸中所涉及 π 、 押“ 及之實際的真實源目標及目的目 才示所使用之資料轉换機制中的 ^ ^ ^ ^ 仃差異。此解決了與習知 之無构服'貧料傳輸操作相關聯的第二個問題。 可根據本發明來使用的一例示 FIFOr#· ·# JL 1疑目標為虛擬無邊界 FIFO(先進、先出)緩衝器。通 、 途為將所有源資料供 1305618 應至,,虛擬FIFO中’接著自該相同虛擬FIF〇獲取所有目 的資料。或者,亦可能存在引用多個虛擬fif〇為有用的之 情況。舉例而言,可將源資料供應至第—虛擬刪,接著 將其傳輸至第:虛擬FIFQ,且所有目的"均可來源於該 第二虛擬FIFO。 現轉至圖5 ’其展示儲存管理伺服器2中負責產生及處理 用於資料傳輸操作的則的組件。具有習知設計及操作的 工作階段管理器5 G被調整成自諸如用戶端系統i 2之l A n主 機接收資料傳輸需求(例如’備份、存檐或遷移需求)。回 應於資料傳輸需求’卫作階段㈣㈣產生獨立調用用于 處理貝料傳輸需求的資料供應者應用程式52及資料消費者 應用程式54的兩個工作階段處理執行緒。資料供應者應用 程式52瞭解資料傳輸需求中所涉及的真實源裝置,且被調 整為產生用於將資料自源裝置傳輸至虛擬FIFO的源ACO。 同樣地’資料消費者應用程式54瞭解資料傳輸需求中所涉 及的真實目的裝置,且被調整成產生用於將資料自虛擬 FIFO傳輸至目的裝置的目的AC〇。複製管理器%接收源 ACO及目的ACO。使用由工作階段管理器5〇所提供的複製 協調貝訊57,例如工作階段識別符記,複製管理器%被調 正成產生接合與資料傳輸需求相關聯之源Ac〇及目的ac〇 的抽象複製命令"或”ACC”。在本發明之scsi_3實施中, 除了 ACC涉及至虛擬FIF〇的傳輪及自虛擬?11?〇的傳輸外, 其可能在其它所有方面皆等同於f知之擴展複製命 令。此通常將包括用戶端資料以及内嵌式資料(例如,控 -15 - 1305618 制及文字資訊)。複製代理器58自複製管理器56接收 ACC。複製代理器的工作是轉譯具有相關聯的Ac〇之各個 ACC,以產生具有相關cc〇之一或多個相應的”具體複製 命令”或"CCC”。若ACC代表涉及虛擬FIF〇之SCSI_3擴展複 製命令,則CCC將為僅涉及真實裝置的標準SCSI_3擴展複 製命令。被發达至貧料移動器丨6以便以習知方式執行的正 是 CCC ° 虛擬目標(FIFO或其它)之定義特徵為:其定義資料中間 儲存之抽象能力’而並不指定提供該能力的具體服務。複 製代理器58的工作是尋找具體措施及工具以實現指定結 果。虛擬FIFO緩衝器支援位元組之嚴格的先進先出流。使 用其以便於將“多冑源之資料組合成一冑出流及/或將 個"IL匀佈至多個輸出裝置。舉例而言,可使用 展複製命令(當CAT=1時)的固有FIF〇緩衝及複製代理器中 用於明確定址内部FIFO資源的工具來獲得該等結果。 複製代理器58之有關于虛擬FIFO的經定義行為是執行複 製操作以使得在真貫目標上之資料移動如同彷彿可將各 個虛擬FIFO作為真實目標來實現並可對其加以使用。此可 藉由以下方式中之任_方式來完成:冑由組合引用作為源 及作為目的之相同虛擬目標為的ACO來移除對虛擬目標之 引用,或將複製代理器5 8内部或外部之臨時儲存器充當為 趨近虛擬目標之特性的真實目標。 複製代理器58所使用的較佳實施原理為:保持引用虛擬 IFO的ACO直至”供應者”AC〇(其將給定虛擬^^〇命名為 91264 -16- 1305618 目的)可與相應的"消費者”AC0(其將相同的虛擬nF〇命名 為源)匹配。一旦匹配,可將AC0理想地建構為自真實源 裝置至真實目的裝置的一或多個cco。虛擬FIF〇的順序性 質暗不.供應者ACO按接收次序加以保持,並在供應者 ACO與消費者ACO變得可用時與消費者AC〇相組合。若複 製代理器僅使用真實儲存器(如辅助碟片空間)來保持虛擬 FIFO的内容,則其工作會更簡單。實際上,存在可使用虛 擬FIFO加以指定且除非使用獨立中間儲存器否則不能使用 SCSI-3擴展複製之簡單實施來達成之複製操作(例如,以 不同的次序將區塊自一磁帶複製至另一磁帶然而,鑒 於輔助儲存器之效能蘊義,本發明之一目標係最小化對其 之使用。因此,複製代理器58試圖保持AC〇而不實際地傳 輸資料直至該等AC0可組合入源_至-目的cc〇中。 圖3及4分別说明虛擬FIFO如何用於資料備份及管理操 作。在圖3之資料備份操作中,來自兩個大小分別為18〇〇 位元組及6300位元組之擋案的碟片區塊(每一區塊具有512 位元組)將被備份至磁帶(64 KB的記錄大小)^亦將代表備 份標頭(BH1)及檔案標頭(FH1及FH2)之文字(元)資料插入 於磁帶上。可產生以下次序的AC0,以使用兩個虛擬 FIFO(FIFO A及FIFO B)(未圖示)來實施資料備份操作: •整個碟片區塊至FIFO A :(檔案1 = 4個標注為"1_4”的區 塊;檔案2= 13個標注為”5-9"及"10-17”的區塊) * 文字至 FIFO B : BH1、FH1 • FIFO A 至 FIFO B(檔案 1 = 1800 位元組) -17 - 1305618 •捨棄 FIFO A(248位元組[=(4*5 12)-1800]) • 文字至 FIFO B : FH2 • ?1?0八至?卩0 8(6300位元組) •捨棄 FIFO A(356位元組[=(13*5 12)-6300]) • FIFO B至磁帶(具有填充) 在圖4之資料管理操作中,將自磁帶移除由FH1所識別之 檔案。可產生以下次序的ACO,以使用兩個虛擬 FIFO(FIFO A及FIFO B)(未圖示)來實施資料管理操作: •磁帶區塊至FIFO A(全部記錄) •文字至 FIFO B : BH1口 •捨棄FIF0A(BH1、FH1、檔案1資料) • FIFO A至FIFO B(FH2之大小+6300個位元組) • FIFO B至磁帶(具有填充)
•清除FIFO A 儘管前述之操作相對直接,但是該等操作可能會因為位 元組次序及粒度這兩個原因而變得複雜。首先,AC0的次 序暗示了必須保存的位元組次序。當允許進行FIFO至 FIFO之傳輸時,用於一 FIFO(A)之仔列頭(head-of-queue) 消費者ACO(x)可能是用於另一 FIFO(B)之供應者ACO,且 該ACO(x)可能排队於不同的供應者ACO(w)之後。於是, 直至執行ACO(w)後方可執行ACO(x)。然而,可能會發生 在另一裝置上的次序要求暗示ACO(w)不可先於ACO(x)的 情況。此死鎖(其正好出現於經重定序之區塊的磁帶複製 中)之打破必須藉由利用中間儲存器將某一 ACO(如X)拆散 91264 -18 - 1305618 成夕個組(xl、x2),從而得以按AC〇次序⑴、w、χ2)獲 得正確的最終結果來實現。強制執行位元組次序、偵㈣ 打破可此出現的死鎖是第—個設計挑戰。粒度挑戰為:必 須在碟片及磁帶裝置上讀取及寫入完整的區塊,而對于 FIFO至FIFO操作而言可選擇任意位元組長度。因此,勘 之、’且δ可要求將磧取自磁帶的區塊的一部分引導(藉由一 或夕個FIFO)至在一目的裝置上之區塊的一部分中,並將 剩餘部分用在別處。 此為使用虛擬FIFO之關鍵價值。複製代理器58囊括了此 粒度約束的複雜情况。結果為:當讀取資料時,部分結果 可留置于資料移動器16之内部緩衝器中。當複製代理器58 産生cco時,其必須判定並考慮在執行cc〇時會有哪些資 料在該等緩衝器中。 由複製代理器58所實施的程序試圖解析該等問題並將 AC0序列轉譯成相應的cc〇序列。總體策略為:讀取ac〇 序列’並建置一組反映對重定序之約束的Ac〇佇列。儘早 使AC0之群組移出佇列以放出cc〇,意即定義各個cc〇之 參數並將其附加至輸出清單以供稍後之執行使用。此在以 產生相同結果之一組CC0及AC0來替代一或多個AC0的轉 換步驟中得以完成。某些轉換並不産生Cc〇,而是對aC〇 進行調整以使AC0至CC0的轉譯更為容易或使其成為可 能。放出CC0的轉換亦可産生跟隨所放出的cc〇,以使得 組合等效於初始AC0組之新的AC0。此通常是在粒度失配 導致剩餘資料留置于資料移動器16之内部緩衝器中時出 91264 -19- 1305618 現。一旦放出cco,就如同其彷彿已執行時那樣判定該等 CCO之副作用。該等CCO—旦放出就不再修改。 現轉至圖6,其以流程圖之形式說明由複製代理器58所 實施之ACO至CCO的轉譯處理程序。如上所述,在ACC處 理程序中,按序檢查ACO,且在可能時藉由對裝置執行讀 取及寫入操作來完成各個ACO。此方法將保留各個ACO直 至可將所有將虛擬FIFO指定為目的之”供應者"ACO與將相 同的虛擬FIFO指定為源之相應的”消費者"ACO組合在一起 為止。如上所述,供應者ACO與消費者ACO之組合消除了 對臨時儲存器的需要。 圖6所示之第一步驟60為:複製代理器58自複製管理器 56接收一組ACO。在步驟62中,複製代理器58定義ACO中 所識別之虛擬FIFO,並為各個虛擬FIFO建立保留的供應 者AC0及保留的消費者AC0之獨立清單。在步驟64中,複 製代理器58為各個用作源之真實序列裝置(例如磁帶)建立 供應者ACO清單,並為各個用作目的之真實序列裝置建立 消費者ACO清單。所有該等ACO清單均以檢查ACO之次序 來保存。在步驟66中,複製代理器58尋找代表真實裝置之 間的傳輸之AC0。若有可能,則將該等ACO轉換成CC0。 在步驟68中,複製代理器58尋找代表虛擬FIFO之間的傳輸 之AC0。將該等ACO壓縮成涉及真實裝置的AC0,接著在 步驟70中,若存在更多待處理的AC0,則將控制返回步驟 66 ° 當AC0出現在兩個與不同虛擬FIFO相關聯的清單上時, 91264 -20- 1305618 例如代表ACO之源目標的第一虛擬FIFO之消費者清單及代 表ACO之目的目標的第二虛擬FIFO之供應者清單,表明進 行了虛擬FIFO間傳輸。此表明虛擬FIFO間之異動,該異 動的消除將便於將ACO縮減至CCO的總體目標之實現。當 偵測到出現於第一虛擬FIFO消費者清單及第二虛擬FIFO 供應者清單上之第一 ACO時,在步驟68中,複製代理器58 試圖藉由處理在第一虛擬FIFO之供應者清單之首位上的第 二AC0及在第二虛擬FIFO之消費者清單之首位上的第三 AC0(若有可能)來消除第一 AC0。圖7進行圖解說明。其展 示代表第一虛擬FIFO F1與第二虛擬FIFO F2之間的資料傳 輸之第一 ACO A。因此,該ACO A出現在虛擬FIFO F1之 消費者清單及虛擬FIFO F2之供應者清單上。第二ACO B 代表自真實裝置DEV1至虛擬FIFO F1之傳輸。第三ACO C 代表自虛擬FIFO F2至真實裝置DEV2之傳輸。複製代理器 58藉由試圖使用代表DEV1與DEV2之間之傳輸的新的ACO D來代替ACO A,從而壓縮ACO A。 注意,AC0通常具有不同的資料長度。在某些情況下, 可將較大的AC0指令分裂成兩個AC0,以使得長度相匹 配。在其它情況下,無法分裂AC0,但可讀取其資料並將 其資料保持在中間緩衝器中。此為圖6之步驟66中所執行 的處理程序之一部分。如何組合AC0之具體細節視資料移 動器16之能力而定,且亦視真實源裝置(磁帶或碟片)之性 質而定。然而,最終目標是使用前述程序來不斷縮減AC0 直至僅剩餘CC0為止。在圖6之步驟70中,當判定已對 1305618 ACO進行處理時’控制傳至步驟72且程序終止。 實例 以下為一用於將資料自碟片裝置備份至磁帶裝置的Ac〇 至CCO轉換之實例。使用標號A、B、C、D.._來代表ac〇 之名稱。使用標號FI、F2、F3、F4來代表虛擬FIFO之名 稱。注意’亦需要在碟片資料之間插入元資料且接著將所 得資料備份至磁帶。假定複製管理器56將以下Ac〇組提供 給複製代理器5 8 : 自複製管理器接收之ACO組: A:碟片->F1 將0x60000位元組之用戶資料自碟片讀入 至F1 B: lit->F2 將Ox 174位元組之元資料1提供給F2 C: lit->F3 將0x80位元組之元資料2提供給F3 D: F3->F4 將0x20位元組之元資料2自F3移動至F4 E: F2->F4 將Ox 174位元組之元資料1自F2移動至F4 F: F1->F4 將0x3FE6C位元組之用戶資料自F1移動至 F4 G: F3->F4 將0x20位元組之元資料2自F3移動至F4 H: F1->F4 將OxlFFEO位元組之用戶資料自F1移動至 F4 I: F3->F4 將0x20位元組之元資料2自F3移動至F4 J: F1->F4 將0xlB4位元組之用戶資料自pi移動至F4 K: F3->F4 將0x20位元組之元資料2自F1移動至F4 L: F4->磁帶 將0x60000之用戶資料自F4寫入至磁帶 91264 -22- 1305618 M:F4->磁帶將〇χΐρ4位元組自F4寫入至磁帶 注意’圖5之資料供應者應用程式52將產生所有涉及將 資料自真實裝置傳輸至虛擬FIF0之ac〇,即ACO A、B及 C °圖5之資料消費者應用程式54將產生所有涉及將資料自 虛擬FIFO傳輸至真實裝置之AC〇,即AC〇 。因圖5 之複製官理器56之部分功能為組合藉由資料供應者應用程 式52及資料消費者應用程式54所產生的AC〇,且為了插入 元 > 料,複製官理器56將產生涉及虛擬FIF〇之間的資料傳 輸之 ACO,即 ACO D、E、F、G、H、!、】及 κ。 ,複裝代自器58所實施《處理程序將將以上AC〇排入磁 帶消費者清單、刪消f者清單及酬供應者清單之仔 列中。該等ACQ以其檢查次序加人到各種清單中。由於源 碟片為直接存取裝置,戶斤以執行序列並 裝置之消費者清單。圖8中以圖形之形式展示了如;^ 清單: F1供應者清單: A F 1消費者清單: F H J F2供應者清單: B F2消費者清單: E F3供應者清單: C F3消費者清單: D G I F4供應者清單: D E F F4消費者清單: L Μ 目的磁帶供應者 清單 :L Μ K G Η Κ 91264 -23- 1305618 注意,不存在指定真實裝置之間的資料傳輸之ACO。因 此,複製代理器處理程序將選擇自一虛擬FIFO傳輸至另一 虛擬FIFO之AC0,且試圖將各個此種AC0縮減成涉及真實 裝置之AC0,繼而將其轉換成CC0。注意,自複製管理器 56所接收之ACO組中的ACO D-K涉及FIFO間的傳輸。AC0 D為自F3至F4之傳輸,且其位於F3消費者清單及F4供應者 清單的首位上。亦將將可看見,ACO C位於F3供應者清單 之首位上,且ACO L位於F4消費者清單之首位上。因此, 處理程序試圖將ACO D解析成涉及ACO C及L的傳輸。待 處理之C、D及L之位元組區塊如下: C = Ox 80位元組 D = 0x20位元組 L = 0x60000位元組 注意,C>D。因此,將把C分裂成C1及C2,其中: C1 =0x20位元組 C2= 0x60位元組 ACO清單現在為:
F1供應者清單: A F 1消費者清單: F H J F2供應者清單: B F2消費者清單: E F3供應者清單: Cl C2 F3消費者清單: D G I K F4供應者清單: D E F G Η I J K 91264 -24* 1305618 F4消費者清單:l Μ
目的磁帶供應者清單:L M 現在’處理程序將選擇待處理之c 1、D及l之組合。 c 1 = 0x20位元組 D — 0x20位元組 L ~ 0x60000位元組 處理程序將會將Cl、D及L壓縮成C1D及L。此將消除AC〇 D之FIFO間操作並以cid來替代其,cid解譯為: C1D : lit->F4 將0x20位元組之元資料2提供給F4。 待處理之C1D及L之位元組區塊如下: C1D = 0x20位元組(C1D具有真實源及虛擬FIFO目的) L 二0x60000位元組 在C1D下所傳輸的總的位元組大小為〇χ2〇位元組,其小於 目的磁帶區塊大小L。ACO L將不會被分裂。
ACO清單現在為: F1供應者清單: A F1消費者清單: F H J F2供應者清單: B F2消費者清單: E F3供應者清單: C2 F3消費者请單: G I Κ F4供應者清單: C1D E F F4消費者清單: L M 目的磁帶供應者清單: L M G Η Κ -25- 1305618 此時,ACO C1D及為具有真實源(元資料)及真實目 贡裝置)之操作。複製代理器58能夠產生一供資料移動(: 16藉由讀取0x2〇位元組之元資料2並將其移動态 „ ,, 貝料移動 益之目的緩衝器來执行的CCO。可在此操作結束 ac:o cnr>。 #移除 如圖9所示,ACO清單現在為: FI供應者清單·· a F1消費者清單 F2供應者清單 F2消費者清單 F3供應者清單 F3消費者清單 F4供應者清單:e F4消費者清單:二 目的磁帶供應者清單
F B E C2 G Η
F Μ :L
Κ G Η Κ Μ 資料移動器目的緩衝器=〇χ2〇位元組 現在,處理程序將選擇自一虛擬FIF〇傳輸至芹—虛擬 FIFO之下—個AC〇,且試圖將其縮減成涉及真實裝置之 ACO,繼而將其轉換成cc〇。自以上所列舉之Ac〇組中可 看見,ACO E為下一個涉及FIF0間傳輸之AC〇。其為自F2 至F4之傳輸,且其位於F2消費者清單及F4供應者清單的首 位。亦可看見,AC〇 B位於F2供應者清單的首位,且AC〇 L位於F4消費者清單的首位。因此,處理程序試圖將Ac〇 E解析成涉及AC〇 B&L的傳輸。待處理之B、、及[之位元 91264 •26- 1305618 組區塊如下: B = Ox 174位元組 Ε= 〇χ 174位元組 L =0x60000位元組 處理程序將會將B、E及L壓縮成BE及L。此將消除ACO E 之FIFO間操作並以BE來替代其,BE被解譯為: BE : lit->F4 將Ox 174位元組之元資料1提供給F4。
待處理之B E及L之位元組區塊如下: BE=0xl74位元組,其中BE具有真實源REAL及虛擬FIFO目的 L = 0x60000位元組 ACO BE中之總位元組數為Ox 174位元組,且其小於目的磁 帶區塊的大小。ACO L將不會被分裂。 ACO清單現在為:
F1供應者清單: A F 1消費者清單: F Η J F3供應者清單: C2 F3消費者清單: G I K F4供應者清單: BE F G H F4消費者清單: L Μ 目的磁帶供應者清單 :L M
K
資料移動器目的緩衝器=0x20位元組 此時,ACO BE及L為具有真實源(元資料)及真實目的(磁帶 裝置)之操作。因此,複製代理器58能夠産生供資料移動 器16藉由讀取Ox 174位元組之元資料1並將其移動至資料移 91264 -27- 1305618 動器1 6之目的緩衝器來執行之CCO,從而資料移動器緩衝 器=0x20位元組+0x 1 74位元組=Ox 1 94位元組。接著,複 製代理器在此操作結束時移除ACO BE。 如圖10所示,ACO清單現在為: F1供應者清單: A F1消費者清單: F H J F3供應者清單: C2 F3消費者清單: G I K F4供應者清單: F G Η F4消費者清單: L Μ 目的磁帶供應者清單:L Μ
K
資料移動器目的緩衝器=〇x 194位元組 現在,處理程序將選擇下一個自一虛擬FIFO傳輸至另一 虛擬FIFO的ACO,且試圖將其縮減成涉及真實裝置的 ACO,繼而將其轉換成CCO。自以上所列舉之ACO組中將 看見,ACO F為下一個涉及FIFO間傳輸的ACO。其為自F1 至F4之傳輸,且其位於F 1消費者清單及F4供應者清單的首 位。亦將可看見,ACO A位於F 1供應者清單之首位,且 ACO L位於F4消費者清單之首位。因此,處理程序試圖將 ACO F解析成涉及ACO A及L的傳輸。待處理之A、F及L之 位元組區塊如下: A = 0x60000位元組 F = 0x3FE6C位元組 L = 0x60000位元組 91264 -28 - 1305618 注意,A>F。因此,將把A分裂成A1及A2,其中: Al=0x3FE6C位元組 A2= 0x20194位元組 如圖11所式,ACO清單現在為: F1供應者清單:A1 A2 F1消費者清單:FH J F3供應者清單:C2 F3消費者清單:G I K F4供應者清單:F G Η I J Κ F4消費者清單:L Μ 目的磁帶供應者清單:L Μ 資料移動器目的缓衝器=〇x 194位元組 現在,複製代理器處理程序將選擇待處理之Al、F及L之 組合。 A1 = 0x3FE6C位元組 F = 0x3FE6C位元組 L - 0x6 0000位元組 處理程序將會將Al、F及L壓縮成A1F及L。此將消除ACO F之FIFO間操作,並以A1F來替代其,A1F被解譯為: A1F :碟片->F4 將0x3FE6C位元組之用戶資料自碟片 讀入至F4 待處理之A1F及L之位元組區塊如下:
AlF = 0x3FE6C位元組,其中A1F具有真實源及虛擬FIFO目的 L = 0x60000位元組 91264 -29- 1305618 ACO清單現在為:
Fi供應者清單·· A2 F 1消費者清單:h j F3供應者清單:C2 F3消費者清單·· G j κ F4供應者清單:A1F G Η
F4消費者清單:L
目的磁帶供應者清單·· L M 二貝料移動器目的緩衝器=〇χ194位元組 庄思’ A1F< L。因此,將把L分裂成L1&L2,其中: Ll=0x40〇〇〇位元組 L2=〇X2〇〇〇〇位元組 ACO清單現在為: F1供應者清單:A2 F 1消費者清單:H j F3供應者清單:C2 F3消費者清單:g I κ F4供應者清單:A1F G Η I J κ
F4消費者清單:u L2 M 目的磁帶供應者清單· L1 L2 Μ 資料移動器目的緩衝器=〇χ丨94位元組 此時’ ACO A1F及L1為具有真實源(碟片裝置)及真實目的 (磁帶裝置)的操作。因此,複製代理器58能夠產生供資料 移動器16藉由自源碟片讀取〇x3FE6C位元組之資料,且首 9(264 -30- 1305618 先移動資料移動器16之目的緩衝器中的資料(Οχ 194位元組) 至目的磁帶裝置並接著移動碟片資料(0x3FE6C位元組)至 目的磁帶裝置(所寫入的總的磁帶資料為0xl94 + 0x3FE6C = 0x40000位元組)來執行之CCO。接著,複製代理器58可在 此操作結束時移除ACO之A1F及L1。 如圖12所示,ACO清單現在為: F1供應者清單: A2 F 1消費者清單: Η J m F3供應者清單: C2 F3消費者清單: G I Κ F4供應者清單: G Η I J Κ F4消費者清單: L2 Μ 目的磁帶供應者清單: L2 Μ 現在,處理程序將選擇下一 個自 一虛擬FIFO傳輸至另一 虛擬FIFO的ACO,且試圖將其縮減成涉及真實裝置的 ACO,繼而將其轉換成CCO。自前文所列舉之ACO組中可 見,ACO G為下一個涉及FIFO間傳輸的ACO。其為自F3至 F4之傳輸,且其位於F3消費者清單及F4供應者清單的首 位。亦將可看見,ACO C2位於F3供應者清單的首位,且 ACO L2位於F4消費者清單的首位。因此,處理程序試圖 將ACO G解析成涉及ACO C2及L2的傳輸。待處理之C2、 G及L2之位元組區塊如下: C2 =0x60位元組 G = 0 X 2 0位元組 91264 -31 - 1305618 L2 = 0x20000位元組 注意,C2>G。因此,將把C2分裂成C3及C4,其中: C 3 = 0x20位元組 C4 = 0x40位元組 ACO清單現在為: F1供應者清單: A2 F 1消費者清單: Η J F3供應者清單: C3 C4 F3消費者清單: G I Κ F4供應者清單: G Η I F4消費者清單: L2 Μ 目的磁帶供應者清單: L2 Μ
K 現在,處理程序將選擇待處理之C3、G及L2之組合: C 3 = 0x20位元組
G = 0x20位元組 L2 = 0x20000位元組 處理程序將把C3、G及L2壓縮成C3G及L2。此將消除ACO G之FIFO間操作並以C3G來替代其,C3G被解譯為: C3G : lit->F4 將0x20位元組之元資料2提供給F4。 待處理之C3G及L2之位元組區塊如下: C3G= 0x20位元組,其中C3G具有真實源及虛擬FIFO目的 L2 = 0x2 00 00位元組 A C 0清單現在為: F1供應者清單:A2 91264 -32- 13〇5618 F1消費者清單:H j F3供應者清單:C4 F3消費者清單:][ κ
F4供應者清單:C3G Η I F4消費者清單:[2 μ 目的磁帶供應者清單:L2 Μ 、寺AC〇 C3G及L2為具有真實源(元資料)及真實目的 帶裝置)的操作。複製代理器58將産生供資料移動器16 糟由讀取0x20位元組之元資料2並將其移動至資料移動器 16,目的緩衝器來執行之C⑶。接著,複製代理器58可在 此操作結束時移除ACO C3G。 如圖13所示,ACO清單現在為: F1供應者清單:Α2 F1消費者清單:η j F3供應者清單:C4 F3消費者清單:I κ F4供應者清單:η I J Κ F4消費者清單:[2 μ 目的磁帶供應者清單:乙2 μ 資料移動器目的緩衝器==0x20位元組 現在,處理程序將選擇下一個自一虛擬fif〇傳輸至另— FIFO的ACO,且试圖將其縮減成涉及真實裝置的Ac〇,繼 而將其轉換成CCO。自以上所列舉之AC0組中可見,Ac〇 Η為下一個涉及FIF0間傳輸的ac〇。其為自fi至之傳 91264 *33 - 1305618 輸,且其位於F 1消費者清單及F 4供應者清單的首位。亦應 看見,ACO A2位於F1供應者清單的首位,且ACO L2位於 F4消費者清單的首位。因此,處理程序試圖將ACO Η解析 成涉及ACO Α2及L2的傳輸。待處理之Α2、Η及L2之位元 組區塊如下:
Α2 = 0χ20194位元組 H= OxlFFEO位元組 L2 = 0x20000位元組 注意,A2〉H。因此,將把A2分裂成A3及A4,其中: A3 = 0xlFFE0位元組 A4 = Ox 1B4位元組 如圖14所示,ACO清單現在為: F 1供應者清單 :A3 Α4 F 1消費者清單 :Η J F3供應者清單 :C4 F3消費者清單 :I Κ F4供應者清單 :Η I J Κ F4消費者清單 :L2 Μ 目的磁帶供應者清單: L2 Μ 資料移動器目 的緩衝器 =0x20位元組
現在,處理程序將選擇待處理之A3、Η及L2之組合: A3 = 0xlFFE0位元組 H= OxlFFEO位元組 L2=0x20000位元組 91264 -34- 1305618 處理程序將會把A3、Η及L2壓縮成A3H及L2。此將消除 ACO Η之FIFO間操作並以Α3Η來替代其,Α3Η被解譯為: A3H碟片->F4 將OxlFFEO位元組之用戶資料自碟片讀入至F4。 待處理之A 3 Η及L 2之位元組區塊如下: A3H=0xlFFE0位元組,其中Α3Η具有真實源及虛擬FIFO目的 L2 = 0x20000位元組 ACO清單現在為:
F1供應者清單:A4 F1消費者清單:J F3供應者清單:C4 F3消費者清單:I K F4供應者清單:A3H I J K F4消費者清單:L2 Μ 目的磁帶供應者清單:L2 Μ 資料移動器目的缓衝器=0x20位元組
此時,ACO Α3Η及L2為具有真實源(碟片裝置)及真實目的 (磁帶裝置)的操作。複製代理器58能夠産生供資料移動器 16藉由自源碟片讀取OxlFFEO位元組之資料,且首先移動 資料移動器之目的緩衝器中的元資料2(0x20位元組)至目的 磁帶裝置並接著移動碟片資料(OxlFFEO位元組)至目的磁 帶裝置來執行之CCO。所寫入的總的磁帶資料為 0x20 + 0xlFFE0 = 0x20000位元組。接著,複製代理器58可 在此操作結束時移除ACO A3H及L2。 如圖1 5所示,ACΟ清單現在為: 91264 -35 - 1305618 F1供應者清單:A4
F1消費者清單:J F3供應者清單:C4
F3消費者清單:I K
F4供應者清單:I J K F4消費者清單:Μ 目的磁帶供應者清單:Μ
現在,處理程序將選擇下一個自一虛擬FIFO傳輸至另一 虛擬FIFO的AC0,且試圖將其縮減成涉及真實裝置的 CC0。自以上所列舉之AC0組中可見,ACO I為下一個涉 及FIFO間傳輸的AC0。其為自F3至F4之傳輸,且位於F3消 費者清單及F4供應者清單的首位。亦將可看見,ACO C4 位於F3供應者清單的首位,且ACO Μ位於F4消費者清單的 首位。因此,處理程序試圖將ACO I解析成涉及ACO C4及 Μ的傳輸。待處理之C 4、I及Μ之位元組區塊如下:
C4=0x40位元組 I = 0 X 2 0位元組 M=0xlF4位元組 注意,C4>I。因此,將把C4分裂成C5及C6,其中: C 5 = 0x20位元組 C6 = 0x20位元組 如圖16所示,A C 0清單現在為:
F1供應者清單:A4 F1消費者清單:J 91264 -36- 1305618 F3供應者清單:C5 C6
F3消費者清單:I K
F4供應者清單:I J K F4消費者清單:Μ 目的磁帶供應者清單:Μ 現在,處理程序將選擇待處理之C5、I及Μ之組合: C5 = 0x20位元組 I = 0 X 2 0位元組 Μ> 0 X1F 4位元組
處理程序將會把C5、I及Μ壓縮成C5I及Μ。此將消除ACO I之FIFO間操作並以C5I來替代其,C5I被解譯為: C5I : lit->F4 將0x20位元組之元資料2提供給F4。 待處理之C5I及Μ之位元組區塊如下: C5I = 0x20位元組,其中C5I具有真實源及虛擬FIFO目的 Μ=0χ 1F4位元組 ACO清單現在為: F1供應者清單:A4 F1消費者清單:J F3供應者清單:C6 F3消費者清單:K F4供應者清單:C5I J K F4消費者清單:Μ 目的磁帶供應者清單:Μ 此時,ACO C5I及Μ為具有真實源(元資料)及真實目的(磁 91264 -37- 1305618 帶裝置)的操作。因此,複製代理器58能夠産生一供資料 移動器16藉由讀取0x20位元組之元資料2並將其移動至資 料移動器1 6之目的緩衝器來執行之CCO。接著,複製代理 器58可在此操作結束時移除ACO C5I。 如圖17所示,A C 0清單現在為: F1供應者清單:A4 F 1消費者清單:J F3供應者清單:C6 F3消費者清單:K F4供應者清單:J K F4消費者清單:Μ 目的磁帶供應者清單:Μ 資料移動器目的緩衝器=0x20位元組 現在,處理程序將選擇下一個自一虛擬FIFO傳輸至另一 FIFO的AC0,且試圖將其縮減成涉及真實裝置的CC0。自 以上之AC0清單中可見,ACO J為下一個涉及FIFO間傳輸 的AC0。其為自F1至F4之傳輸,且其位於F1消費者清單及 F4供應者清單的首位。亦將可看見,ACO A4位於F1供應 者清單的首位,且ACO Μ位於F4消費者清單的首位。因 此,處理程序試圖將ACO J解析成涉及ACO Α4及Μ的傳 輸。待處理之Α4、J及Μ之位元組區塊如下: A4 = 0xlB4位元組 J = 0 X1Β 4位元組 M = 0xlF4位元組 91264 -38- 1305618 處理程序將會把A4、J及Μ壓縮成A4J及Μ。此將消除ACO J之FIFO間操作並以A4J來替代其,A4J被解譯為: A4J :碟片->F4 將0xlB4位元組之用戶資料自碟片讀入至F4。 待處理之A4J及Μ之位元組區塊如下: A4J=0xlB4位元組,其中A4J具有真實源及虛擬FIFO目的 Μ = 0 X1F 4位元組 ACO清單現在為: F3供應者清單:C6 F3消費者清單:Κ F4供應者清單:A4J Κ F4消費者清單:Μ 目的磁帶供應者清單:Μ 資料移動器目的緩衝器=0x20位元組 此時,ACO A4J及Μ為具有真實源(碟片裝置)及真實目的 (磁帶裝置)的操作。因此,複製代理器58能夠産生一供資 料移動器1 6藉由自源碟片讀取Οχ 1Β4位元組之資料並將此 資料移動至資料移動器之目的緩衝器來執行之CCO。接 著,複製代理器5 8可在此操作結束時移除ACO Α4J。 如圖1 8所示,A C Ο清單現在為: F3複製指令供應者清單:C6 F3複製指令消費者清單:K F4複製指令供應者清單:K F4複製指令消費者清單:Μ 目的磁帶供應者複製指令清單:Μ 91264 -39- 1305618 資料移動器目的缓衝器=Οχ 1D4位元組 現在,處理程序將選擇下一個自一虛擬FIFO傳輸至另一 虛擬FIFO的AC0,且試圖將其縮減成涉及真實裝置的 CC0。自以上所列舉之AC0組中可見,ACO K為下一個涉 及FIFO間傳輸的AC0。其為自F3至F4之傳輸,且位於F3消 費者清單及F4供應者清單的首位。亦將可看見,ACO C6 位於F3供應者清單的首位,且ACO Μ位於F4消費者清單的 首位。因此,處理程序試圖將ACO Κ解析成涉及ACO C6 及Μ的傳輸。待處理之C6、Κ及Μ之位元組區塊如下: C6=0x20位元組 K= 0x20位元組 M=0xlF4位元組 處理程序將把ACO C6、K及Μ壓縮成C6K及Μ。此將消除 ACO Κ之FIFO間操作並以C6K來替代其,C6K被解譯為: C6K : lit->F4 將0x20位元組之元資料2提供給F4。 待處理之C6K及Μ之位元組區塊如下: C6K=0x20位元組,其中C6K具有真實源及虛擬FIFO目的 Μ = 0 X1F 4位元組 此時,ACO C6K及Μ為具有真實源(元資料)及真實目的 (磁帶裝置)的操作。因此,複製代理器58能夠産生一供資 料移動器16藉由自源碟片讀取0x20位元組之資料,且首先 移動資料移動器之目的缓衝器中的資料(0x1 D4位元組)並 接著移動來自源碟片之資料(0x20位元組)來執行之CCO。 所寫入的總的磁帶資料為0x20 + 0x1 D4= 0x1 F4位元組。此 91264 -40- 1305618 時,應已處理完所有ACO ’且資料移動器之緩衝器將不再 有資料。因此,擴展複製操作完成。結果展示於圖丨9中。 例示性複製代理器架構 現轉至圖20’其結合若干可不同地定位於san 1〇4中的 資料移動器102a、l〇2b或l〇2c來展示圖5之複製代理器58 的例示性實施100。在圖2〇之複製代理器1〇〇中,該複製代 理器包括執行上述之AC0至CC0轉譯功能的複製命令轉譯 器106。此外,存在複製引擎1〇8、複製群組管理器、 複製資源管理器112及超小型NAR(名稱/位址注冊表)丨14。 圖中展示了 SCSI封裝器功能116,其提供—至驅動器區塊 U8及通向SAN 104之直通區塊12〇的介面。 可將複製命令轉譯器106建構為負責在指定的源目標及 目的目標之間將AC0處理成cc〇之物件導向式程式化實 體。其各個示例建立及維持若干資料記錄並建構一組處= 函式。資料記錄包括:分別保持關於源目標及目的目^之 2範轉目標記錄及目的範•目標記錄;分別識別與㈣移 之源緩衝器及目的緩衝器之源緩衝器目標記錄 目的緩衝器目標記錄;與真實(碟片除 關聯之供應者佇列及消費者佇擬目私相 之羿螵尜-s 追縱資料移動器 ==目的緩衝器中之位元組數目的源緩衝器位元 、.且D己錄及目標緩衝器位元組 所建構之處理函式可包括以下函式令轉譯器_ •广_⑽_eChain〇’?自輸入 CCO鏈*/ 夏 π整的 91264 -4?- 1305618 • buildAChamFromDBO ; /*自資料移動器之目的緩衝器 建置一 CCO鏈*/ • biuldAChamFromSBO ; /*自資料移動器之源緩衝器建 置一 CCO鏈*/ • collapseSFmtoS ; /*將一源FIF0目標壓縮成一真實源目 標*/ • collapseDFmtoD ; /*將一目的FIF〇目標壓縮成一真實目 的目標*/ 複製引擎108為一管理複製代理器之操作的狀態機。初 始時,複製引擎采取為探索模式,藉此來調查SAN 1〇4中 之資料移動器及真實目標的狀態及能力。若成功完成探索 處理程序,則複製引擎108進入一預備模式,其中其準備 處理來自呼叫者122之複製需求。若未成功完成探索處理 程序,則複製引擎采取未預備狀態。假定複製引擎1〇8達 成預備狀態,則其將回應來自呼叫者^22之複製需求,以 便基於连同该複製需求傳遞至複製代理器i 〇〇之Acc來產 生ccc。初始時,複製引擎1〇8將藉由以下方式來預處理 ACC .獲彳于各個ACO之源目標及目的目標的名稱/位址表索 引;將任何與ACC相關聯之源函式及彙集函式進行解碼來 獲得源/彙集函式的屬性;計算待傳輸之位元級的總數 目,及將則述資訊儲存為由複製代理器1〇〇所擁有的專用 貝況。接著,複製引擎108將建立複製命令轉譯器1〇6之一 示例,並使呼叫該複製命令轉譯器之示例的轉譯任務排入 仔列以執行ACC至CCC的轉譯。接著,複製引擎1〇8將執 91264 -42- 1305618 行建置一或多個ccc 或102c之菸山 I、傳遞至貝枓移動器1 02a、i 〇2b 一 X任務。其後,複製引擎1〇8將返回至呼叫者
122以報告複製需求操作之結果。 呼U 可將複製群組管理器11〇建構 物件導向式程式化實體,各=擎⑽例示化之 一對應。各個複萝群相其搜7 對
期門始Μ &群,且…不例在轉譯其相關聯之A C C 作用中狀態’之後其被删除。複製群組管理器示 ^生的咖清單°其亦擁有追縱所有源函 式貝枓及彙集函式資料之源函式表及彙集函式表,亦擁有 用於源資料及彙集資料之複本的緩衝器,且其追蹤引用緩 衝器之次數並判定何時釋放(free)緩衝器,且確保各個源 函式及彙;集函式僅被呼^叫一次。 可將複製資源管理器112建構成如下之物件導向式程式 化實體:主當調用複製代理器1〇〇時,其被例示化及初始 化其負貝預分配ACO集區、例示化複製引擎示例及建立 若干表及仔列。後者包括:當複製代理器1〇〇被調用時所 獲知的含有所有目標之資源表;用以保持所有複製引擎示 例之複製引擎表;擁有複製代理器之處理執行緒的服務工 作符列;及較佳目標描述符陣列’其用以預設置由複製代 理器100產生之CCC中所使用的最期望之目標描述符類 型0 超小型NAR 114擁有所有真實裝置路徑資訊(例如,真實 源目標及目的目標、資料移動器等)之資料庫。其含有全 域(globaONAR 124中所儲存的資料庫資訊之子集。藉由對 91264 -43 . 1305618 應於真實路徑資訊之多個㈣碼(handle)來在超小型 NAR m(及NAR 124)中識別各個裝置。因此,無需藉由 獨立描述符來在複製代理以⑽中處理真實裝置,^可 藉由各個ACO内的超小型NAR控制碼來識別該等真實裝 置。必要日守,可使用控制碼自超小型NAR 11 4獲得資訊, 以産生用於所產生之CC0的目標描述符。 SCSI封裝器116用於使由複製代理器1〇〇所產生之cc〇符 合複製需求中所涉及的真實裝置之%31格式要求。類似 地’驅動器區塊118為要求進行格式化之cc〇提供裝置級 格式化,同時直通區塊12〇處理不要求該等格式化之 CCO。 在本發明之一例示性實施例中,可使用包括以下函式之 API(應用程式化介面)來建構複製代理器1〇〇(隨附之"c"語 言註解描述函式之目的): • void sjccInitiaHzationO ; 例示化一複製資源管理器及 初始化SCSI封裝器資料結構1/ • sxcRc queryEngine(narEngineAdr1EngineAdrP) ; /1使用 輸入位址資訊來探索複製引擎1/ 91264 -44- 1 narRc sxcInitializeNaInCa(narEnigneAdr1EngineAdrListP, narTargetinfo1TargetinfoListP) ; /1 若複製引擎類型為” 無伺服器"類型’且複製代理器在超小型NAr U4中沒 有該種複製引擎,則使用輸入位址引擎清單來執行複製 引擎探索操作1/ 1305618 copyEngineHandle) ; /* 確保 copyEngineHandle 有效且複 製引擎已準備好,接著例示化一 SxcCopySession,並在 sessionPPtr中載入工作階段指標*/ • sxcRc sxcPerformCopy(sxcAbsCopyCommand*commandP, void*sessionP) ; /* 基於 commandP 中所指定的個別 ACO 來啓動一複製需求(見下)*/ • sxcRc sxcAbortCopy(sxcAbs Copy Command *commandP, void*sessionP) ; /*終止複製需求 */ • sxcRc sxcCloseSession(void*SessionP) ;/*刪除SxcCopySession 示例*/ 如sxcPerformCopy()函式之"CommandP”參數中所指定, 可定義各種ACO類型以用於建置ACC。此命令參數為指向 一資料結構之指標,其中該資料結構含有指向ACO陣列之 指標及該等ACO之計數。ACO被建構成描述複製代理器 100之基本操作的固定大小之結構。如前所述,主ACO代 表源目標上之田比鄰資料單元至目的目標上之®比鄰範圍内的 位置之傳輸。其亦包括某些將按序出現之非資料操作。可 將某些ACO定義為將''標記”插入於虛擬FIFO中,此會在在 標記前面的資料消耗完時導致事件”觸發"。資料的消耗暗 示已執行了供應資料所需之真實1/〇(輸入/輸出)步驟,所 以任何已發出用以實現該等I/O之CCC肯定具有返回狀 態。其它ACO類型仍可指示剩餘之ACO(暗中)含有CCO。 當ACO需要的資訊多至無法配合于固定大小之ACO結構中 時,ACO可包含資料指標、控制碼及/或函式指標形式之 91264 -45 - 1305618 引用,藉此可存取額外資料。舉例而言,可以此方式來將 文字資料提供給ACO。 以下為根據本發明及按sxcPerformCopy()命令之理解, 可用以利用虛擬目標來實施無伺服器功能性的ACO類型之 一例示性清單。亦可依設計優先選擇而定來發展許多額外 之ACO類型。 完整區塊虛擬FIFO及至/自虛擬FIFO的部分區塊傳輸 可使用以下例示性ACO函式以允許將許多區塊或在單一 區塊内之一範圍讀取至虛擬FIFO中,或使用自虛擬FIFO 取出之資料寫入於其。函式名稱描述了所執行的ACO操 作: • sxcOpDiskToFifo(); • sxcOpTapetoFifo(); • sxcOpFifoToDisk(); • sxcOpFifoToTape(); • sxcOpDiskPartToFifo(); • sxcOpTapePartToFifoQ ; • sxcOpFifoToDiskPart() o 在前述ACO中,由區塊計數所確定的位元組數目或真實 裝置上的位元組範圍決定了添加至/移除自虛擬FIFO之位 元組。部分區塊寫入會要求複製引擎108執行讀取-修改-寫 入循環,且其可能不能被建構為基本工具。因此,較佳將 ACC公式化,以使得僅寫入完整區塊。部分區塊讀取會捨 棄任何不在指定範圍内之資料,且對於磁帶裝置而言,其 1305618 會在下一區塊開始時離開讀取位置。若要將區塊内之其它 資料用於其它ACO而不重新讀取,則有必要將其讀取至虛 擬FIFO中,並藉由FIFO間ACO類型来挑選出所要片斷。 至/自虛擬FIFO之位元組傳輸 可使用以下例不性AC0函式以允許在虛擬FIF〇之間複製 或移動資料。再次,函式名稱描述了所執行的AC〇操作: • sxcOpLiteralToFifo ; 參 sxcOpFifoToDiscard ; • sxcOpFifoToFifoMove ; • sxcOpFifoToFifocopy ; • sxcOpFifoToApplication。 使用刖四個ACO,可在虛擬FIF〇之間複製或移動資料, 可將文字資料附加至虛擬FIF〇,且可自虛擬1?117〇移除前 導資料。使用第五個ACO,亦可提取虛擬FIF〇中之資料並 藉由回呼使該資料傳回至呼叫者。若需要,亦可將前述 ACO建構成使得無需指定位元組之數目即可複製、移動或 捨棄虛擬FIFO之整個内容。 因此,本發明已揭示一種使用虛擬目標來用於資料儲存 網路中之無伺服器資料傳輸操作之準備及服務需求之系統 及方法。自前文應理解,可將本發明之系統建構為對適用 於無飼服器資料傳輸操作之現有資料網路儲存管理伺服器 的軟體修改’同時可在修改後之伺服器内執行該方法。在 另一態樣中’可在以下電腦程式産品中實施本發明:其中 實把本發明之功能所需之軟體以物件或原始程式碼等形式 -47 - 1305618 儲存在諸如一或多個遽飛加/ 飞夕個攜Τ型(或非攜帶型 料儲存媒體上。 7干X尤磲之貝 圖21說明一例示性電 ^斗、夕/ 式座口口 200 ’其中儲存媒體包 括一或多個光碟。儲存網路管 c 來將根據本發明之美^ 可使用該電腦程式產品 功能性添加至習知儲存管 卄傳輪 把駐存於電腦程式產品2〇〇上 將 飼服器2上,以將代碼複製至』2馬複本女裝至儲存管理 尋複1到區域資料儲存媒體上。 碼為二進位形態,則其準備好用於執行。否則,可視需要 編譯代碼以將其縮減成可執行之形態。 =已對本發明之各種實施例進行描述,但是應 可根據本發明來建構許多變體及替代實施例。因 Γ除了根據本發明隨附之中請專利範圍及其等效物L精 神外,不應以任何方式來限制本發明。 【圖式簡單說明】 圖1為展示可在盆Φ恭姑士饮。。,> 方塊圖;/、中““發明的資料儲存網路之功能 表圖2A為展示習知SCSI·3擴展複製命令參數清單之格式的 圖2B為展示用於將用戶資料自區塊裝置傳輸至流式 的習知SCSI-3擴展複製命令區段描述符(複製指令)之格 的表; 八
圖2C為展示用於將内嵌式資料傳輸至流式裝置的習知 咖-3擴展複製命令區段描述符(複製指令)之格式的表;D 91264 -48- 1305618 圖3為展示使用虛擬FIFO之資料備份操作之示意圖; 圖4為展示使用虛擬FIFO之資料管理操作之示意圖; ^圖5係展示為根據本發明之無健器資料傳輸操作而組 ^之儲存管理伺服器的功能方塊圖; 圖=展示根據本發明之將抽象複製指令轉換成具體複 衣S 7所執行之處理步驟的流程圖; 擬於實施根據本發明之無伺服^料傳輸之虛 做以之圖形表示; 轉二 =當根據本發明之一例示性實施將抽象複製指令 趙複製指令時的轴象複製指令之供 賈者/月早之圖形表示; 、月 之一例示性實施的 圖2〇為展示根據本發明之複製代理器 功能方塊圖;及 圖I為根據本發明之儲存便於 程式資訊的電腦p 4 e 貝枓傳輪之電腦 、的電^式産品媒體之示意圖。 【圖式代表符號說明】 2 錯存管理伺服器 4 儲存區域網路 6 碟片儲存系統 8 磁帶庫儲存系統 10 區域網路 12 用戶端系統 14A 資料集 14B 資料集 91264 -49- 資料移動器 SCSI-3擴展複製命令參數清單 目標描述符 區段描述符 内嵌·式貧料 SCSI-3擴展複製命令區段描述符 源目標描述符索引 目的目標描述符索引 流式裝置傳輸長度 區塊裝置的區塊數目 區塊裝置之邏輯區塊位址 區段描述符 目的目標描述符索引 流式裝置傳輸長度 内嵌式資料偏移 内嵌式資料的位元組數目 工作階段管理器 資料供應者應用程式 資料消費者應用程式 複製管理器 複製協調資訊 複製代理器 複製代理器58之例示性實施例 資料移動器 -50- 資料移動器 資料移動器 儲存區域網路 複製命令轉譯器 複製引擎 複製群組管理器 複製資源管理器 超小型NAR SCSI封裝器 驅動器區塊 直通區塊 呼叫者 名稱及位址註冊表 電腦程式産品 -51 -
Claims (1)
1305渗P珍ι〇5ΐ5〇號專利申請案 中文申請專利範圍替換本(97年8月 一,„ 丁 0 ^ ---___ 拾、申請專利範圍: 9年《月9曰修(¾正替換頁| — _____________ I . 種用於實施在一資料儲在锎牧tfo 从— 存網路+之資料儲存裝置之F1 的無伺服器資料傳輸之系統,直 之間 哕锢玖免·> 八中忒4貝料儲存裴置與 〜罔路内之一:貝料移動器合作,該系統包括: 一或多個抽象複製指令產生 、本n占, 极調整成產生代表 虛擬目標之資料傳輸的抽象複製指令;及 一具體複製指令產生器, 轉換成僅涉及由該資料移動 體複製指令; 其被調整成將抽象複製指令 器執行之真實裝置目標的具 藉此可分開準備涉及真實源目標之抽象複製指令與涉 ,真實目的目標之抽象複製指令,且其後由該具體複製 指令產生器加以轉換及合併。 2 ·如申清專利範圍第1工音夕&& 固弟1項之系統,其中該等虛擬目標為虛 擬先進先出緩衝器。 3_如申咕專利範圍第!項之系統,其中該等抽象複製指令 為^料傳輸需求,該等需求指定:⑷一源目標及一目的 目标:亥等目標中至少有一個目標為虛擬目標,⑻資料 疋位資訊,若该源目標或該目的目標中之任一者為真實 目標,則該t料定位資訊在必要_時將„料定位於該源 目標或該目的目標上;及(c)資料大小資訊。 4. 如申請專利範圍第3項之系、統,其中該等具體複製指令 為SCSI-3擴展複製命令區段描述符。 5. 如申凊專利範圍第i項之系統,其中該具體複製指令產 生器被調整成藉由以下步驟來將抽象複製指令轉換成具 91264-970814.doc 體複製指令··合併引用一共同虛擬目標連同相應的真實 源目標與目的目標之抽象複製指令對,使得對於各個抽 、复裝私7到·而言,該真實源目標與該真實目的目標組 合形成一具體複製指令。 6. 如申睛專利範圍第1項之系統,其中該具體複製指令產 生器被調整成藉由以下步驟來將抽象複製指令轉換成具 體複製指令:將涉及—共同虛擬目標之抽象複製指令分 組為供應者清單及消費者清單;合併各個清單之首:上 的抽象複製指令對,使得與—對抽象複製指令中之一抽 指令相關聯之—真實源目標連結至與該對抽象複 *曰令中之另一抽象複製指令相關聯之一真實目的目 標。 7·::請專利範圍第1項之系統,其中該抽象複製指令產 器被調整成產生涉及虛擬源目標與目的目標 料傳輸之虛擬目標間抽象複製指令。 S 、、 I 範圍第7項之系統’其中該等虛擬目標間抽 "用於在實施無伺服器資料傳輸時調 定序或内嵌式資料插入。 ^ 9·如申請專利範圍第7項之系統,其中該具體複製指a產 ^被調整成將每-該等虛擬目標間抽象複製指^缩 成:一將資料自一真實源目標供應至該源虛擬目… 象複製指令;及一將資料自該目的虛擬目標d 實目的目標之抽象複製指令。 、 如申明專利耗圍弟1項之系統,其中該具體複製指令產 91264-970814.doc 1¾ ύΤ8- 月I》日修(f)正替換頁i 生器被調整成將該等抽象 之資料傳輪的多個獨立 二:成涉及較小大々、 鎖狀況。 夏曰令,以調節資料死 u如申請專利範圍第1項之系祐. 生器被調整成產生料該資料移動:該具體複製指令產 以緩衝資料直至可執行至 動…料緩衝命令, 輸,該資料傳輪將允許消除一指定二=-資料傳 象複製指令。 Μ真實目的目標之抽 !2’ —種用於實施在一資料儲存網路中 的無伺服器資料傳輪之方法,盆中今等存名置之間 該網路内之一資料移動器合作,該;法包貝括 +儲存裝置與 產生代表涉及虛擬目標之資料傳輸_ > Γ等抽象複製指令轉換成僅涉及真實農置日;的及 以:該資料移動器執行之具體複製指令;目‘的用 藉此可分開準備涉及直 及真實目的目標抽象複製指令與涉 知之抽象複製指令,且其後 製指令加以轉換及合併。 /荨/、體噢 13·如申請專利範圍第12項之方法,其中該等虛擬目 擬先進先出緩衝器。 如中請專利範㈣12項之方法,其中該等 為資料傳輸需求,該等需求指定:⑷一源目禅^製指 目標:該等目標中至少有-個目標為虛擬目標;二 定位資訊’若該源目標或該目的目標中之任 : 目標’則該資料定位資訊在必要時將該資料定二 91264-970814.doc ^ ίιί- A? ^ ίιί- A? 目標或該目的目標上;及(c)資料大小資 15·如申請專利範圍第14項之方法,其中該等具體複製指令 為SCSI-3擴展複製命令區段描述符。 曰7 16·如申請專利範圍第12項之方法,其中藉由以 ,,. Γ步驟來將 柚象複製指令轉換成具體複製指令:合併引用—共5 =目標連同相應的真實源目標與目的目標之抽象複^ 令對,使得對於各個抽象複製指令對而言誃 . Μ具貫源目 示/、該真實目的目標組合形成一具體複製指令。 1人如申請專利範圍第12 八甲精田U下步驟來將 抽象複製指令轉換成具體複製指令:將涉及—共同虛擬 目標之抽象複製指令分組為供應者清單及消費型清單; 合併各個清單之首位上的抽象複製指令對,使得與一對 抽象複製指令中之一抽象複製指令相關聯之一真實源目 標連結至與該對抽象複製指令中之另一抽象複製指令相 關聯之一真實目的目標。 18.如申請專利範圍第12項之方法,其進—步包括產生涉及 虛擬源目標與目的目標之間的資料傳輸之虛擬目標間抽 象複製指令。 申μ專利範圍第1 8項之方法,其中該等虛擬目標間抽 象複製指令用於在實施無伺服器資料傳輸時調節資料重 定序或内嵌式資料插入。 申s專利範圍第18項之方法,其進一步包括將每一該 等虛擬目標間抽象複製指令壓縮成:一將資料自一真實 源目軚仏應至该源虛擬目標之抽象複製指令,·及一將資 91264-970814.doc :自該目的虛擬目標提供至一真實目的目標之抽象複製 "ί曰令。 21·^請專利範圍第12項之方法,其進—步包括將該等抽 设製指令劃分成涉及較小大小之資料傳輸的多個獨立 之抽象複製指令,以調節資料死鎖狀況。 專利範圍第12項之方法,其進一步包括產生用於 以貝科移動器之資料緩衝料,以緩衝資料直至可執行 至—真實目的目標之—資料傳輸,該資料傳輪允許消二 23 —指定該真實目的目標之抽象複製指令。 種用於實施在-資料儲存網路中之資料儲存裝置之 的無伺服器資料傳輸之儲存管理伺服器二 飼服器包括: 貝㈣動裔合作,該儲存管理 抽象複製指令產生構件, 標之資料傳輸的抽象複製指 具體複製指令產生構件, 成僅涉及用以由該資料移動 體複製指令; 其用於產生代表涉及虛擬目 令;及 其用於將抽象複製指令轉換 器執行之真實裝置目標之具 =可分開準備涉及真實源目標之 及真實目的目標之抽象複製指令 表“”涉 指令產生構件加以轉換及合併。4由該具體複製 24·如申請專利範圍第23項之儲存管” 擬目標為虛擬先進先出緩衝器。 /、中該等虛 25.如申請專利範圍第23項之儲存管 词服器,其中該等抽 91264-970814.doc 替g 為資料傳輸需求,該等需求指定:⑷-源目 ⑻眘姐1標,該等目標中至少—目標為虛擬目標; 爲吉:疋位貝訊,若該源目標或該目的目標中之任-者 於該源目 資甙在必要%將該資料定位 26.如卜二“的目標上;及⑷資料大小資訊。 申以利_第25項之儲存管理伺服器, 等且 體=令一擴展複製命令區段描述符。,、 第Μ項之儲存管理飼服器,其中該具體 y用一丑構件包括合併構件,該合併構件用於合併 之抽U虛擬目標連同相應的真實源目標與目的目標 =指令對,以使得對於各個抽象複製指令對而 製指令。 ^ 一實目的目標組合形成一具體複 28.如申清專利範圍第 複製指令產生構件包括以理飼服器,其中該具體 擬目標之抽象複製指令分二將涉及一共同虛 之構件;及合併構H 清單及消費者清單 抽象複製指令對,以將:用於合併各個清單之首位上的 複製指令相關聯之一= 連象:製指令中之-抽象 指令巾H '' τ連結至與該對抽象複製 2…請丄=:指—之-真實目的目標。 複製_八產4 、之儲存官理伺服器,其中該抽象 複U日令產生構件包括用於產 目標之間的資料傳輸:源目標與目的 件。 目&間抽象複製指令的構 91264-970814.doc _郷 ------------- 3〇·如申請專利範圍第29項之 擬曰抨閂η本 S 1J服态,其中該等虛 目‘間抽象複製指令用於在 調節資料重定庠4内”一 器資料傳輸時 丁寸更疋序或内肷式貢料插入。 31 ·如申晴專利範圍第 複之儲存官理伺服器,其中該具體 、曰7產生構件包括壓縮構件, -^^ ^^ n干3壓‘構件用於將每 真實开“間抽象複製指令壓縮成:-將資料自一 \標供應至該源虛擬目標之抽象複製指令;及一 將資料自該目的虛擬目桿提 7 複製指令。擬叫供至-真實目的目標之抽象 32. 如申請專利範圍第23項之 递制妆入+ 于g至1J服斋,其中該具體 複1扣令產生構件包括劃分 等抽象複製指令劃分成涉及广:構件用於將該 促… h成涉及較小大小之資料傳輸的多個 蜀的抽象複製指令,以調節資料死鎖狀況。 33. 如申請專利範圍第23項之 计g里1J服斋,其中該具體 曰7產生構件包括具有如下功能之構件:其產生用 於該資料移動器之資料緩衝命令,以緩衝資料直至可執 行-至一真實目的目標之資料傳輸,該資料傳輸允許消 除-指定該真實目的目標之抽象複製指令。 34· -種用於實施在—資料儲存網路中之資料儲存裝置之間 的無伺服器資料傳輸之電腦程式産品,其中該等資料儲 存袭置與該網路内之—資料移動器合作,該電腦程式產 品包括: 一或多個資料儲存媒體; 記錄於該資料儲存媒體上之抽象複製指令產生構件, 9l264-9708l4.doc :(灵)正.替換頁 1一 二用於產生代表涉及虛擬目標之資料傳輸的抽象複製指 令,·及 且記錄於該資料儲存媒體上之具體複製指令產生構件, /、用於將抽象複製指令轉換成僅涉及真實裝置目標的用 '由該資料移動器執行之具體複製指令; :此可分開準備涉及真實源目標之抽象複製指令與涉 人實目的目;^之抽象複製指令’且其後由該具體複製 θ 7產生構件加以轉換及合併。 35· 2請專利範圍第34項之電腦程式產品,其中該等虛擬 目軚為虛擬先進先出緩衝器。 如申清專利範圍第34項之電腦程式産品 2指令為,需求,該等需求指定其(:: = ⑻資2目“ ’該等目標中至少有—目標為虛擬目標; 疋,資訊,若該源目標或該目的目標中之任—者 二‘則該f料定位資訊在必要時將該資料定位 37:=標_目的目標上;及⑷資料大小資訊。 複製二I!:圍弟36項之電腦程式産品,其中該等具體 38 "‘、、、CSI·3擴展複製命令區段描述符。 .d =圍第34項之電腦程式產品,其中該具體複 二曰;人 #包括記錄於該資料儲存媒體上之合併構 件,該合併構件用於入 傅 的真實源目μ曰併引用—共同虛擬目標連同相應 夂、’、不^、的目標之抽象複製指令對,以使得對 於各個抽象複製指令 士, U ^ ^ 〇 ^真實源目標與該真實目 軚組5形成-具體複製指令。 91264-970814.doc 39·如申請專利範圍第34項之電腦程式産品,其中今且、— 製指令產生構件包括:記錄於該資料儲存媒體上之分: 構件,其用於將涉及—共同虛擬目標之抽象複製指I八 =成供應者清單及消費者清單;及記錄於該資料儲^ 上之合併構件,其用於合併各個清單的首位上之抽 複製指令對,以將與一對抽象複製指令中之—抽 :旨令相關聯之一真實源目標連結至與該對抽象複製指令、 之另一抽象複製指令相關聯的一真實目的目护。 40.=Γ利範圍第34項之電腦程式產品,其中㈣象複 “產生構件包括記錄於該資料儲存媒體上之構件, ==於ΐ生涉及虛擬源目標與虛擬目的目標之間的 貝枓傳輸之虛擬目標間抽象複製指令。 申請專利範圍第4〇項之電腦程式產品,其中該等虛擬 製指令用於在實施無伺服器資料傳輪時調 Ρ負料重疋序或内嵌式資料插入。 仏專利範圍第40項之電腦程式産品,其中該具體複 產生構件包括記錄於該資料儲存媒體上之壓縮構 人j壓縮構件用於將每—該等虛擬目標間抽象複製指 :壓鈿成·—將資料自一真實源目標供應至該源虛擬目 t之Γ複製指令;及一將資料自該目的虛擬目標提供 真實目的目標之抽象複製指令。 料利範圍第34項之電腦程式產品,其中該具體複 ^曰7產生構件包括記錄於該資料儲存媒體上之劃分構 ,該劃分構件用於將該等抽象複製指令劃分成涉及較 91264-9708M.doc
修(更)正替換頁 小大小之資料傳輪的多 資料死鎖狀況。 的抽象複製指令,以謂節 44· =凊專利範圍第34項之電腦程式產品,其中該具體複 I指令產生構件包括記錄於該資料儲存媒體上之構件, 該構件產生用於該資料移動器之資料 τ叶後衝命令,以緩衝 資料直至可執行至一真實目的目標之—次 貝料傳輸,該資 料傳輸允許消除一指定該真實目的目 、 目軚之抽象複製指 令0 91264-970814.doc -10- 1305618 窠093105150號專利申請案 中文圖式替換頁(97年8月) Η ( Ύ
磁碟實體 磁碟資料0x60000位元組 供應者 A 0x60000位元組 消費者 F 0x3FE6C位元組 H OxlFFEO位元組;I 0xlB4 供應者 B 0x174位元組 F2 1-! 消賨者 i_ 0x174位元組 F3 F4 磁帶
0xlF4位元組
91264-圖-970814.doc 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月) .牙月$日修®正替換頁丨 磁碟實體 磁碟資料0χ6_位元組 F1 供應者 消費者 A 0x60000位元組 F 0x3FE6C位元組 H OxlFFEO 疏組 J 0xlB4 F2 F3 供應者 消費者 供應者 消費者 B E C2 G I K 0x174位元組 0x60位元組 每個為0x20位元組 器 帶料動 磁資移 供應者 緩衝器 供應者 F4 消費者 E F G Η I J K L 0x60000位元組 Μ 0xlF4位元組 L磁帶資料0x60000位元組 Μ 磁帶資料 0xlF4位元組 0x20位元組 元資料2 圖9 91264·圖-970814.doc 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月) ft,幻 磁碟資料0x6_位元組 磁碟實體 F1 供應者 消賨者 A 0x60000位元組 F 0x3FE6C位元組 H OxlFFEO 位元組 J 〇xlB4 F2 F3 供應者 消費者 供應者 消費者 C2 G K 0x60位元組 每個為0x20位元組 供應者 F G Η I J κ F4 供繹 器 帶料動 磁資移 '應者 丨蠡器 鬵者 L 0x60000位元組 Μ 0xlF4位元組 L磁帶資料0x60000位元組 Μ 磁帶資料_ 0xlF4位元組 0x20位元組0x174位元組 元資料2 元資料1 91264-圖-970814,doc 圖10 -10- 1305618 第09310515〇號專利申請案 中文圖式替換頁(97年8月) 月丨^:)修復)正替換頁 磁碟 資體 供應者 F1 消賨者 供應者 F2 消費者 供應者 F3 消費者 供應者 F4 消賨者 磁帶 供應者 資料 移動器 緩衝器 L 0x60000位元組 L磁帶資料0x60000位元組 磁碟資料0x60000位元組 供應者 A1 0x3FE6C位元組 消賨者 F 0x3FE6C位元組 G I K 0x60位元組 每個為0x20位元組 A2 0x20194位元組 H OxlFFEO 位元組 J 0xlB4 F G Η I J Κ 0xlF4位元組 磁帶資料 0xlF4位元組 0x20位元組0x174位元組 元資料2 元資料1 91264-H-970814.doc 圖11 -11 - 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月)
磁碟實體 磁碟資料0x60000位元組 供應者 F1 消費者 供應者 F2 消費者 供應者 C2 0x060位元組 F3 ——— 消費者 I °1 1 I Κ| 每個為0x20位元組 供應者 F4 消費者 ^ 供應者 資料緩衝器 移動器 A2 0x20194位元組 H OxlFFEO版組 J 0xlB4
磁帶資料 磁帶資料 0x20000 〇χ 1F4 (ίτΜ 磁帶 實體 0x3FE6C位元組消費者資料 0x20位元組0x174位元組 元資料2 元資料1 圖12 91264-圖-970814.doc -12- 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月) |今件豸月修(.¾)正替換頁 磁碟實體 供應者 FI 消賨者 供應者 F2 消賨者 mm F3 消費者 供應者 F4 消費者 器 帶料動 磁資移 供應者 緩衝器 I 磁碟資料0x60000位元組 __j 0x40 組 每個為0x20位元組 A2 0x20194位元組 H OxlFFEO位元組 J 〇χ!Β4 Η I J Κ L2 0x20000航組! Μ 0xiF4位元組 L2 Μ 磁帶資料 磁帶資料_ 0x20000版組0xlF4位元組 0x20位元組 元資料2 0X3FE6C位元組消費者資料 磁帶實體 0x20位元組 元資料2 0x174位元組 元資料1 圖13 13· 91264_ 圖-9708M.doc 1305618 弟093105150號專利申請案 中文圖式替換頁(97年8月^ ί …'〜-—------------------ 評卜別%觀私瑪随: 磁碟資料0x60000位元組 磁碟實體 F1 供應者 消賨者 A3 OxlFFEO位元組 A4 0xlB4 H OxlFFEO 位元^ J 0x1B4 F2 F3 mm 消賨者 mu# 消賨者 C4 K 0χ40{5τ^§ 每個為0x20位元組 儲麵 糊緩 器 帶料動 磁資移 娜者 F4 消賨者 0x20位元組 元資料2 磁帶實體 Η I J Κ L2 0χ200〇〇ίίίΰ組 Μ ΟχΊΐΜί元組 L2 Μ 磁帶資料_ 磁帶資料 0X20Q00位元組 0xlF4位元組 0X3FE6C位元組消费者資料 0x20位元組 i元資料2 〇χΠ4位元組 元資料1 91264-圖-970814.doc 圖14 14- 1305618第093105150號專利申請案 中文圖式替換頁(97年8月) % 磁碟實體 供應者 F1 消簧者 讎者 F2 消費者 磁碟資料0x60000位元組 A40xlB4 J 0xlB4 供應者 诮瞢老 0x40 itijiM 每個為0x20位元組 F4 消費者 F3 器 帶料動 磁資移 讎者 緩衝器 C4 K
磁帶資 0xlF4位元組 磁帶實體 0X3FE6C位元組消費者資料| OxlFFEO位元組消費者 0x20iS7C^i 元資料2 0x20位元組0x174位元組 元資料2 元資料1 圖15 •15· 91264-圖-970814.doc 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月) β年容月6曰修(¾)正替换頁 磁碟實體 磁碟資料0x60000位元組 F1 F2 供應者 消費者 ί擁者 消費者 A4 0xlB4 J 0xlB4 F3 供應者 消費者 C5 C6 I K 每個為0x2 每個為0x2 〇位元組 .〇位元組 F4 器 帶料動 磁資移 mm 消費者 瓣者 緩衝器
磁帶資 0xlF4位元組 磁帶實體 OX3FE6C位元組消費者資料 OxlFFEO位元組消費者 0x20位元組0x174位元組 元資料2 元資料1 0x20f57iM 元資料2 91264-圖-970814.doc 圖16 • 16- 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月) η! 磁碟實體 磁碟資料0x60000位元組 F1 供應者 消費者 A4 0xlB4 J 0xlB4 F2 F3 mm 消費者 mm 消費者 |C6 j 0x20 {¢70¾ Γκ] 0x20位元組 mm F4 消賨者
Μ 0xlF4位元組 器 帶料軌 磁資移 mm 緩衝器 Μ 磁帶資料 0x1 F4位元組 0x20位元組 元資料2 磁帶實體 0X3FE6C位元組消賨者資料 OxlFFEO位元紙肖費者 0x20位元組 元資料2 0x20位兀組0x174位元組 元資料2 元資料1 圖17 -17- 91264-圖-970814.doc 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月) ^ V :; V;;; 磁碟實體 磁碟資料0x60000位元組 供應者 F1 消賨者 mm F2 消費者 回 0x20 F3 消費者 Ξ 0x20位元組 mm F4 消費者 器 帶料動 磁資移 讎者 緩衝器 T 0x20位元組 元資料2 0χ1Β4位元組 消賨者資料
0x20位元組0x174位兀組 元資料2 元資料1 91264-圖-970814.doc Μ K 0x1 F4位元組 Μ 磁帶資料 0xlF4位元組 0X3FE6C位元組消費者資料 OxlFFEOfijL·費者 0x20位元組 元資料2 圖18 • 18· 1305618 第093105150號專利申請案 中文圖式替換頁(97年8月)
磁碟實體 磁镇資料 0x60000位元組 供應者 F1 消費者 伊應者 F2 消費者 F3 消費者 mm F4 消費者 器 帶料動 磁資移 mm 緩衝器 磁帶實體 0x20位元組 元資料2 0x3FE6C位元組消賨者資料 (klFFEO位无®肖酷 0x20位元組 元資料2 0叉20(立元組(^174位元組 元資料2 元資料1 7 0x20位元組0xlB4位元組 元資料2 消費者資料 圖19 91264-圖-970814.doc -19-
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/383,951 US7461131B2 (en) | 2003-03-07 | 2003-03-07 | Use of virtual targets for preparing and servicing requests for server-free data transfer operations |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200428227A TW200428227A (en) | 2004-12-16 |
TWI305618B true TWI305618B (en) | 2009-01-21 |
Family
ID=32927166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW093105150A TWI305618B (en) | 2003-03-07 | 2004-02-27 | Use of virtual targets for preparing and servicing requests for server-free data transfer operations |
Country Status (5)
Country | Link |
---|---|
US (2) | US7461131B2 (zh) |
JP (1) | JP4095971B2 (zh) |
KR (1) | KR100592754B1 (zh) |
CN (1) | CN1326356C (zh) |
TW (1) | TWI305618B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI472188B (zh) * | 2010-05-07 | 2015-02-01 | Inventec Corp | 儲存區域網路的檢驗裝置 |
TWI646435B (zh) * | 2017-12-28 | 2019-01-01 | 中華電信股份有限公司 | 無伺服器之系統及其執行方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7788324B2 (en) * | 2002-03-29 | 2010-08-31 | Atto Technology, Inc. | Method and system for improving the efficiency and ensuring the integrity of a data transfer |
JP2004005189A (ja) * | 2002-05-31 | 2004-01-08 | Ricoh Co Ltd | 文書管理システムおよび文書管理方法 |
US7469274B1 (en) * | 2003-12-19 | 2008-12-23 | Symantec Operating Corporation | System and method for identifying third party copy devices |
JP4382602B2 (ja) * | 2004-04-23 | 2009-12-16 | 株式会社日立製作所 | リモートコピーシステム |
US7590777B2 (en) * | 2004-12-10 | 2009-09-15 | International Business Machines Corporation | Transferring data between system and storage in a shared buffer |
KR100764621B1 (ko) * | 2005-10-21 | 2007-10-08 | 엔에이치엔(주) | 데이터 풀링 방법 및 데이터 풀링 시스템 |
US8645646B2 (en) * | 2007-01-31 | 2014-02-04 | International Business Machines Corporation | Stored data protection and recovery |
US7856536B2 (en) * | 2007-10-05 | 2010-12-21 | International Business Machines Corporation | Providing a process exclusive access to a page including a memory address to which a lock is granted to the process |
US7921272B2 (en) * | 2007-10-05 | 2011-04-05 | International Business Machines Corporation | Monitoring patterns of processes accessing addresses in a storage device to determine access parameters to apply |
US8055855B2 (en) * | 2007-10-05 | 2011-11-08 | International Business Machines Corporation | Varying access parameters for processes to access memory addresses in response to detecting a condition related to a pattern of processes access to memory addresses |
US7770064B2 (en) * | 2007-10-05 | 2010-08-03 | International Business Machines Corporation | Recovery of application faults in a mirrored application environment |
US8601220B1 (en) * | 2011-04-29 | 2013-12-03 | Netapp, Inc. | Transparent data migration in a storage system environment |
US10817202B2 (en) * | 2012-05-29 | 2020-10-27 | International Business Machines Corporation | Application-controlled sub-LUN level data migration |
US10831728B2 (en) * | 2012-05-29 | 2020-11-10 | International Business Machines Corporation | Application-controlled sub-LUN level data migration |
US10831727B2 (en) * | 2012-05-29 | 2020-11-10 | International Business Machines Corporation | Application-controlled sub-LUN level data migration |
US8904119B2 (en) * | 2012-10-31 | 2014-12-02 | Lsi Corporation | Method and structures for performing a migration of a logical volume with a serial attached SCSI expander |
US9135198B2 (en) | 2012-10-31 | 2015-09-15 | Avago Technologies General Ip (Singapore) Pte Ltd | Methods and structure for serial attached SCSI expanders that self-configure by setting routing attributes of their ports based on SMP requests |
US8904108B2 (en) | 2012-10-31 | 2014-12-02 | Lsi Corporation | Methods and structure establishing nested Redundant Array of Independent Disks volumes with an expander |
US10620870B2 (en) * | 2017-12-08 | 2020-04-14 | Intel Corporation | Data storage device with bytewise copy |
US11221778B1 (en) * | 2019-04-02 | 2022-01-11 | Pure Storage, Inc. | Preparing data for deduplication |
US10942665B2 (en) | 2019-05-10 | 2021-03-09 | International Business Machines Corporation | Efficient move and copy |
CN114747189B (zh) * | 2019-11-25 | 2024-07-09 | 瑞典爱立信有限公司 | 用于在基于vnf的环境中替换vnfm的技术 |
US11620079B2 (en) | 2021-04-28 | 2023-04-04 | International Business Machines Corporation | Log structured array offloaded data transfer migrations |
US12014067B2 (en) * | 2022-10-11 | 2024-06-18 | Dell Products L.P. | Remote replication data efficiency optimization with host extended copy commands |
CN115509608B (zh) * | 2022-11-23 | 2023-03-24 | 成都登临科技有限公司 | 指令优化方法、装置、电子设备及计算机可读存储介质 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4857A (en) * | 1846-11-18 | Machinery fob cutting flocks | ||
US4075691A (en) * | 1975-11-06 | 1978-02-21 | Bunker Ramo Corporation | Communication control unit |
US4067059A (en) * | 1976-01-29 | 1978-01-03 | Sperry Rand Corporation | Shared direct memory access controller |
US4625730A (en) * | 1985-04-09 | 1986-12-02 | The Johns Hopkins University | Patient ECG recording control for an automatic implantable defibrillator |
US5426639A (en) * | 1991-11-29 | 1995-06-20 | At&T Corp. | Multiple virtual FIFO arrangement |
US5444853A (en) * | 1992-03-31 | 1995-08-22 | Seiko Epson Corporation | System and method for transferring data between a plurality of virtual FIFO's and a peripheral via a hardware FIFO and selectively updating control information associated with the virtual FIFO's |
CA2130064C (en) * | 1993-10-27 | 1999-05-18 | Cory A. Cherichetti | Method and apparatus for transferring data between a host processor and a subsystem processor in a data processing system |
US5546385A (en) * | 1995-01-19 | 1996-08-13 | Intel Corporation | Flexible switching hub for a communication network |
US6275867B1 (en) * | 1995-09-12 | 2001-08-14 | International Business Machines Corporation | Operation-partitioned off-loading of operations in a distributed environment |
US5907672A (en) | 1995-10-04 | 1999-05-25 | Stac, Inc. | System for backing up computer disk volumes with error remapping of flawed memory addresses |
US6021408A (en) * | 1996-09-12 | 2000-02-01 | Veritas Software Corp. | Methods for operating a log device |
US5897658A (en) * | 1996-11-26 | 1999-04-27 | International Business Machines Corporation | Method and apparatus for protecting portions of memory by providing access requests to a communications area for processing by a hidden server |
US6047339A (en) * | 1997-10-27 | 2000-04-04 | Emulex Corporation | Buffering data that flows between buses operating at different frequencies |
US6026032A (en) * | 1998-08-31 | 2000-02-15 | Genroco, Inc. | High speed data buffer using a virtual first-in-first-out register |
US6400730B1 (en) * | 1999-03-10 | 2002-06-04 | Nishan Systems, Inc. | Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network |
AU1916801A (en) * | 1999-11-12 | 2001-06-06 | Crossroads Systems, Inc. | Method and system for mapping addressing of scsi devices between storage area networks |
US6766430B2 (en) | 2000-07-06 | 2004-07-20 | Hitachi, Ltd. | Data reallocation among storage systems |
JP2002024070A (ja) | 2000-07-06 | 2002-01-25 | Nec Corp | データバックアップ方法及びバックアッププログラムを記録したコンピュータ読取可能な記録媒体 |
WO2002065275A1 (en) * | 2001-01-11 | 2002-08-22 | Yottayotta, Inc. | Storage virtualization system and methods |
JP2002222341A (ja) | 2001-01-26 | 2002-08-09 | Yasuhiro Fukushima | 自動車総合見積システム |
US7171453B2 (en) * | 2001-04-19 | 2007-01-30 | Hitachi, Ltd. | Virtual private volume method and system |
JP4352630B2 (ja) * | 2001-04-27 | 2009-10-28 | 沖電気工業株式会社 | 接続代行装置 |
US6728848B2 (en) | 2001-06-11 | 2004-04-27 | Hitachi, Ltd. | Method and system for backing up storage system data |
JP2005521113A (ja) * | 2001-07-06 | 2005-07-14 | コンピュータ アソシエイツ シンク,インコーポレイテッド | 情報バックアップシステム及び方法 |
US6785744B2 (en) * | 2001-08-08 | 2004-08-31 | International Business Machines Corporation | Mapping SCSI medium changer commands to mainframe-compatible perform library function commands |
US7194550B1 (en) * | 2001-08-30 | 2007-03-20 | Sanera Systems, Inc. | Providing a single hop communication path between a storage device and a network switch |
US7206314B2 (en) * | 2002-07-30 | 2007-04-17 | Brocade Communications Systems, Inc. | Method and apparatus for transparent communication between a fibre channel network and an infiniband network |
US7236496B2 (en) * | 2002-07-30 | 2007-06-26 | Brocade Communications Systems, Inc. | Method and apparatus for mapping between a fibre channel network and an infiniband network |
US7275103B1 (en) * | 2002-12-18 | 2007-09-25 | Veritas Operating Corporation | Storage path optimization for SANs |
-
2003
- 2003-03-07 US US10/383,951 patent/US7461131B2/en active Active
-
2004
- 2004-02-10 CN CNB2004100039370A patent/CN1326356C/zh not_active Expired - Lifetime
- 2004-02-27 KR KR1020040013647A patent/KR100592754B1/ko active IP Right Grant
- 2004-02-27 TW TW093105150A patent/TWI305618B/zh not_active IP Right Cessation
- 2004-03-01 JP JP2004056734A patent/JP4095971B2/ja not_active Expired - Fee Related
-
2008
- 2008-07-30 US US12/182,173 patent/US7660866B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI472188B (zh) * | 2010-05-07 | 2015-02-01 | Inventec Corp | 儲存區域網路的檢驗裝置 |
TWI646435B (zh) * | 2017-12-28 | 2019-01-01 | 中華電信股份有限公司 | 無伺服器之系統及其執行方法 |
Also Published As
Publication number | Publication date |
---|---|
US20080288670A1 (en) | 2008-11-20 |
KR20040080345A (ko) | 2004-09-18 |
US20040177130A1 (en) | 2004-09-09 |
US7461131B2 (en) | 2008-12-02 |
JP4095971B2 (ja) | 2008-06-04 |
JP2004272901A (ja) | 2004-09-30 |
KR100592754B1 (ko) | 2006-06-26 |
TW200428227A (en) | 2004-12-16 |
CN1326356C (zh) | 2007-07-11 |
US7660866B2 (en) | 2010-02-09 |
CN1527534A (zh) | 2004-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI305618B (en) | Use of virtual targets for preparing and servicing requests for server-free data transfer operations | |
EP2836902B1 (en) | Method and apparatus for migration of a virtualized file system, data storage system for migration of a virtualized file system, and file server for use in a data storage system | |
US6871245B2 (en) | File system translators and methods for implementing the same | |
EP3580647B1 (en) | System for storing data in tape volume containers | |
US8239654B2 (en) | Systems and methods for transferring data in a block-level storage operation | |
US12079171B2 (en) | Symbolic link based placeholders | |
US20080282180A1 (en) | Data Transfer Using A Network Clipboard | |
WO2023197670A1 (zh) | 一种分布式存储系统控制方法、装置及可读存储介质 | |
US10726147B2 (en) | File encryption support for FAT file systems | |
JP5516575B2 (ja) | データ挿入システム | |
US11880280B2 (en) | Variable number and size of put operations for storage backup | |
JP2005316993A (ja) | ネットワーク上においてコンピュータ間でオブジェクトを共有するためのシステムおよび方法 | |
CN104536699B (zh) | 一种基于嵌入式文件系统的流式数据写入方法 | |
US20170070575A1 (en) | Method and an apparatus, and related computer-program products, for managing access request to one or more file systems | |
US20160092131A1 (en) | Storage system, storage system control method, and recording medium storing virtual tape device control program | |
EP2821914B1 (en) | Method and apparatus for migration of a virtualized file system, data storage system for migration of a virtualized file system, and file server for use in a data storage system | |
JPH09288654A (ja) | 多重データソース及びシンク間のリファレンスによるコンピュータシステムデータi/o | |
JP3848268B2 (ja) | 計算機システム、計算機装置、計算機システムにおけるデータアクセス方法及びプログラム | |
CN103201736A (zh) | 用于扩展数据存储系统功能的方法和系统 | |
US20120117196A1 (en) | Systems, methods, and computer program products for transferring reserves when moving virtual machines across systems | |
CN115129779A (zh) | 数据库的同步方法、装置及可读介质 | |
WO2015194027A1 (ja) | 計算機システム、データ更新方法、および仮想化サーバ | |
Bhosale et al. | Synchronizing data sharing approach with reducing communication overhead on a multicore system | |
JP2020144805A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JPH11353249A (ja) | ファイルシステムおよびファイル転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MK4A | Expiration of patent term of an invention patent |