国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置與方法

      文檔序號:7682261閱讀:279來源:國知局
      專利名稱:虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置與方法
      技術(shù)領(lǐng)域
      本發(fā)明是關(guān)于 一 種虛擬儲存網(wǎng)絡(luò)交換器
      (virtualization switch)的封包轉(zhuǎn)送裝置與方法,可應(yīng)用于網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接口 ( InternetSmall Computer System Interface, iSCSI) 連線所建立的交換器(switch)環(huán)境中。
      背景技術(shù)
      儲存裝置的網(wǎng)絡(luò)化是網(wǎng)際網(wǎng)絡(luò)發(fā)展的趨勢之一,iSCSI傳輸協(xié)議為 一 新興起的網(wǎng)絡(luò)儲存技術(shù)標(biāo)準(zhǔn)。儲存局域網(wǎng)絡(luò)(Storage Area Network, SAN)是特指連結(jié)儲存設(shè)備與服務(wù)器的網(wǎng)絡(luò),是以網(wǎng)絡(luò)串聯(lián)儲存設(shè)備。相較于獨立磁盤冗余陣歹U ( Redundant Array ofIndependent Disks, RAID)及小型計算器系統(tǒng)接口(Small Computer System Interface, SCSI) 等將月艮務(wù)器與儲存設(shè)備直接連結(jié)的技術(shù),網(wǎng)絡(luò)儲存技術(shù)除了具有高速傳輸能力,也不會因服務(wù)器本身而限制儲存
      9設(shè)備的擴充與備份,因此擴充性與可靠性佳。
      由于極高的頻寬需求,光纖信道(fiber channel ) 是目前常用的儲存網(wǎng)絡(luò)連結(jié)技術(shù)。另一個新興起的儲 存網(wǎng)絡(luò)技術(shù),就是剛完成標(biāo)準(zhǔn)制定的iSCSI的傳輸協(xié) 議。iSCSI傳輸協(xié)議主要的功能是將SCSI的命令及數(shù) 據(jù),通過iSCSI的協(xié)議數(shù)據(jù)單元(ProtocalDataUnit, PDU)在IP網(wǎng)絡(luò)上傳送,由iSCSI協(xié)議,使IP網(wǎng)絡(luò)也 可以成為儲存網(wǎng)絡(luò)。對客戶端而言,以IP網(wǎng)絡(luò)作為儲 存網(wǎng)絡(luò)只需將其服務(wù)器及儲存設(shè)備換成iSCSI接口, 使用原有的IP網(wǎng)絡(luò)的交換設(shè)備,就可建置出儲存網(wǎng)絡(luò)。
      圖1是iSCSI虛擬儲存網(wǎng)絡(luò)的一般的一個實施范 例示意圖。如圖1所示,客戶端1 0 2安裝 iSCSI啟 始(initiator) 1 1 0的馬區(qū)動程序(driver)與虛擬 月艮務(wù)器(virtualization server) 1 0 1連結(jié)。{諸存 端l 0 3安裝 iSCSI目標(biāo)(target) 1 2 0的驅(qū)動程 序與虛擬服務(wù)器l 0 l連結(jié)。虛擬服務(wù)器l 0 l除了 安裝iSCSI啟始與目標(biāo)的驅(qū)動程序外,再加上虛擬化 軟件層1 4 0 。
      基于此虛擬化軟件層1 4 0的設(shè)定,以iSCSI封 包數(shù)據(jù)流的角度來觀察iSCSI封包欄位的變化。 一開 始由虛擬服務(wù)器1 0 3中交換器的iSCSI目標(biāo) (target) 1 2 0接收到 iSCSI封包并解開此封包,
      10傳遞給SCS I層130來讀取命令,呼叫虛擬化軟件層
      1 4 O轉(zhuǎn)換真實存取位置,產(chǎn)生SCSI存取命令格式, 最后將SCSI命令封裝成iSCSI封包傳送出去。在這一 系列的轉(zhuǎn)換過程中,iSCSI由最初輸入(input)的封 包格式,除去表頭(header )部分,擷取負載量
      (payload)的SCSI命令(CDB), 存取SCSI層,經(jīng)過 虛擬化軟件層對映(mapping )找到數(shù)據(jù)實際存取
      (access)位置,又重新產(chǎn)生SCSI命令,最后再加上 iSCSI header傳送。
      從輸入(input)的iSCSI封包至U最后輸出(output) 的iSCSI封包,在外觀上,兩者都是同樣協(xié)議的iSCSI 封包,但是從虛擬化交換器(virtualization switch) 內(nèi)部觀察,卻需要經(jīng)過多層的軟件協(xié)助,才能完成此 基于iSCSI連線架構(gòu)的虛擬化網(wǎng)絡(luò)儲存。最終要送出 的iSCSI封包也重復(fù)經(jīng)過多余的數(shù)據(jù)搬移動作,包括 一開始的拆解,最后又回到產(chǎn)生等動作。
      在既有的技術(shù)中,使用iSCSI協(xié)議作為連線方式 的虛擬化網(wǎng)絡(luò)儲存技術(shù)可歸納為以下幾類。
      第 一 類如圖2所示,以iSCSI交換器2 0 1與 iSCSI使用者主機(host)端2 0 2關(guān)系來看,管理儲 存配置的代理機制(agent),分散在數(shù)據(jù)路徑(data path)之外,傳輸?shù)臄?shù)據(jù)不經(jīng)過儲存服務(wù)器的交換器,可以直接到達網(wǎng)絡(luò)儲存裝置2 0 3上。數(shù)據(jù)在離開使
      用者端后,就馬上傳送到儲存裝置2 D 3上,數(shù)據(jù)路
      徑上沒有多余的協(xié)議處理與數(shù)據(jù)復(fù)制。然而,在使用
      者端與儲存裝置端需要安裝iSCSI代理機制(agent),
      如標(biāo)號210與2 2 0所示,來與儲存服務(wù)器交換存
      取"f曰息 。
      例如,美國專禾U US6,8 4 5,4 0 3的文獻中,
      將iSCSI協(xié)議的存取封包區(qū)分為控制類別與數(shù)據(jù)類別。
      控制類別的封包由使用者端傳送到 一 個存取管理服務(wù)
      器上,服務(wù)器接著傳遞此命令到真實儲存裝置,數(shù)據(jù)
      類別則通過使用者端與真實儲存裝置端預(yù)先建立好的
      iSCSI連線直接傳送數(shù)據(jù),如此可達成最直接的數(shù)據(jù)傳 輸路徑。但使用者端必需安裝特殊的iSCSI driver才 能與管理服務(wù)器有功能上的互動,且當(dāng)儲存裝置數(shù)量 遞增,在使用者端與儲存裝置的iSCSI連線也要跟著 遞增。
      第二類如圖3所示,使用者主機端3 0 2與儲存 端3 0 3 —樣需要i SCSI代理機制,如標(biāo)號3 2 0與
      3 1 0所示,協(xié)助,數(shù)據(jù)通過交換路由器(switch router ) 3 0 1來傳遞數(shù)據(jù)至U儲存端(storage )。路
      由器以IP層3 1 l簡單快速的查表方式,決定數(shù)據(jù)封 包傳送到設(shè)定的儲存端3 0 3中。所以,數(shù)據(jù)路徑只有IP位置的轉(zhuǎn)換,然而,使用者端需要安裝iSCSI代
      理機制3 2 0 ,并且存取信息的同步也困難。
      例如,美國專利US 6 , 9 3 4,7 9 9的文獻中, 使用者端在SCS I命令發(fā)出同時,搜尋在使用者端特有 的虛擬IP對應(yīng)表,找出iSCSI封包傳送的IP與TCP 位置,此封包被傳送到轉(zhuǎn)化網(wǎng)間連接器(virtualization gateway),再把封包傳送到真實的網(wǎng)絡(luò)存取位置上。 存取的負載(loading)分散在使用者端與真實存取位 置上,保留數(shù)據(jù)路徑上的每個封包傳遞,只有單純的 IP位置替換。如此,當(dāng)更動實體儲存裝置時,只需在 數(shù)據(jù)網(wǎng)間連接器(virtualization gateway) 上更改虛
      擬IP與實體IP對應(yīng),并且傳送的封包在數(shù)據(jù)路徑上 只需改變IP與TCP位置的欄位,數(shù)據(jù)封包沒有任何多 余的復(fù)制動作。
      然而,使用者端需要在iSCSI driver上層實作一 個存取控制模組,才能加入網(wǎng)關(guān)的虛擬存取系統(tǒng)。網(wǎng) 關(guān)管理虛擬與真實硬盤之間操作容易,但是每個使用 者端存取表上的區(qū)塊范圍(block range)與虛擬TCP 欄位對應(yīng)關(guān)系的修改過程復(fù)雜,比較難達成統(tǒng) 一 管理。
      第三類如圖4所示,iSCSI交換器4 0 1介于使用 者端4 0 2與真實儲存裝置4 0 3的數(shù)據(jù)路經(jīng)之中, 以獨立作業(yè)(stand alone)方式完成虛擬化網(wǎng)絡(luò)儲存的設(shè)計,使用者端安裝 iSCSI驅(qū)動程序(driver)就可以通過交換器4 0 l存取數(shù)據(jù)。使用者端4 0二 八
      需擁有般的iSCSI啟始者(Initiator) 4 1 0就可
      存取父換器40 1提供的網(wǎng)絡(luò)儲存。然而,數(shù)據(jù)封包
      在交換器4 01傳遞過程,需經(jīng)過多層的協(xié)議處理與
      數(shù)據(jù)復(fù)制動作,因此會降低存取效能。
      例如,美國專利公開號US2 0 0 5/0 1 1 44 6
      4的文獻中,使用一般iSCSI協(xié)議加上虛擬化軟件層
      達到虛擬化儲存網(wǎng)絡(luò)。在接收到的虛擬位置存取與真
      實儲存裝置間,找出虛擬與實際存取的對應(yīng)關(guān)系,做
      數(shù)據(jù)路徑的最佳化,并且可以連結(jié)使用者端與儲存網(wǎng)
      絡(luò)A山 頓兩個不同的傳輸協(xié)議,達到協(xié)議轉(zhuǎn)換。然而,在
      協(xié)議轉(zhuǎn)換的過程中,對傳輸數(shù)據(jù)的緩沖沒有揭露特殊
      的處理方式。以一般的數(shù)據(jù)緩沖方式會增加多余的數(shù)
      據(jù)復(fù)制動作,降低存取效能。
      既有的技術(shù)實現(xiàn)虛擬化主要有頻帶內(nèi)(in-band)和頻帀外(out一of—band) 兩禾中方式。out—of—ban'd方
      式中,虛擬設(shè)備是坐落于數(shù)據(jù)路徑之外,可以提供客
      戶一山 頓與存取裝置之間 一 個高效能的數(shù)據(jù)傳輸路徑。然
      而當(dāng)變動存取裝置的配置后,虛擬設(shè)備的更新與使
      用者之間的溝通會比較費時,并且客戶端也需安裝與
      虛擬裝置溝通的軟件接口 ,比較不符合對儲存裝置可
      14直接存取的方便性in-band方式中,虛擬設(shè)備安置在
      使用者與儲存裝置的數(shù)據(jù)存取路徑之中,雖然儲存裝
      置群在變動后,管理上比較方便,并且可以提供客戶
      一山 順對儲存裝置直接存取的便利性,然而客戶A山 順對虛擬
      設(shè)備的數(shù)據(jù)詢問等數(shù)據(jù)量,會與真實數(shù)據(jù)傳輸路徑共
      同一頻寬,如此會降低數(shù)據(jù)傳輸效率。
      上述兩種方法中, 用 in_band 方式來達成虛擬化
      存取,數(shù)據(jù)路徑上的儲存服務(wù)器通常獨自完成虛擬與
      實體存取地址轉(zhuǎn)換的工作,而 out_of_band方式是將
      虛擬存取工作量分散(distributed) 在儲存服務(wù)器與
      使用者一山 乂而上的代理機制。

      發(fā)明內(nèi)容
      本揭露的實施范例中,可提供一種虛擬儲存網(wǎng)絡(luò)
      、-父換器中封包轉(zhuǎn)送裝置與方法,可應(yīng)用iSCSI連線所
      建的交換器環(huán)境中。本揭露的實施范例中,在iSCSI協(xié)議連線的兩端,即客戶端與儲存端,使用iSCSI會
      議session) 連線査表對應(yīng)方式,封包于會議
      S 6ssion)連線的兩端間直接轉(zhuǎn)送,完成客戶端與儲
      存上山 順的數(shù)據(jù)交換。
      在一實施范例中,本揭露是關(guān)于一種虛擬儲存網(wǎng)
      絡(luò)交換器中封包轉(zhuǎn)送裝置,此虛擬儲存網(wǎng)絡(luò)交換器中,前端的 一 目標(biāo)模組與至少 一 使用者端建立連線,后端 的 一 啟始者模組與至少 一 個網(wǎng)絡(luò)儲存端建立連線,此
      封包轉(zhuǎn)送裝置可包含 一個標(biāo)頭擷取器(Header Extractor)、 一個分發(fā)器(D i s p a t c h e r )、以及一個轉(zhuǎn) 送單元(Fordwarding Unit), 標(biāo)頭擷取器。當(dāng) iSCSI session連線完成系統(tǒng)認證后,標(biāo)頭擷取器接管iSCSI 連線上至少 一 個封包,并擷取此 頭數(shù)據(jù);分發(fā)器決定這些被接管 單元在已建立連線的前端與后端 的動作,包括將分發(fā)器接收來的 地址的動作、建立客戶端接口 ( client-side interface) 與儲存端接PI (storage- side interface) 的對應(yīng)關(guān)系的對應(yīng)關(guān)系,以及傳遞連線上夾帶的負載 數(shù)據(jù)的動作。
      在另一實施范例中,本揭露是關(guān)于一種虛擬儲存 網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,此方法可包含從iSCSI 會議(session)所使用的TCP連線中接收的至少 一 個 iSCSI封包里,只擷取每個iSCSI封包的表頭;對于每 個iSCSI封包,查看該封包的格式是否為合格轉(zhuǎn)送的 類型;對合格轉(zhuǎn)送的封包,檢査是否為iSCSI命令 (Cmnd)類型的封包;若是,將此iSCSI命令(Cmnd) 類型的封包的相對應(yīng)的虛擬存取地址信息轉(zhuǎn)換成真實
      至少—■個個封包的表
      的封包的流向轉(zhuǎn)送
      之間作封包直接轉(zhuǎn)送
      虛擬地址轉(zhuǎn)換成真實地址,并加入新的對應(yīng)關(guān)系于動態(tài)會議連線對照表
      DSMT )中從動態(tài)會議連線對照表(DSMT)中找
      出對應(yīng)的巨的一山 頓會議識別碼(session ID)與啟始者
      工作標(biāo)簽i ni tiator task tag, ITT)欄位;根據(jù)此
      巨的丄山 順會議的連線狀態(tài)現(xiàn)況,修改iSCSI封包表頭,
      并傳送修改后的iSCSI表頭與來源TCP連線的iSCSI負載數(shù)據(jù)
      本揭露的封包轉(zhuǎn)送機制除了可在具有TCP協(xié)議功
      能的操作系統(tǒng)下實施外,也可以實現(xiàn)在多處理器架構(gòu)
      的系統(tǒng)


      以下配合下列附圖及實施例的詳細說明,將上述
      及本發(fā)明的它目的與優(yōu)點詳述于后,其中
      圖1是iSCSI虛擬儲存網(wǎng)絡(luò)的 一 般實施的一個范
      意圖
      圖2是一個概要示意圖,說明另一種達成虛擬化
      網(wǎng)絡(luò)儲存的技術(shù)
      圖3是個概要示意圖,說明另一種達成虛擬化
      網(wǎng)絡(luò)儲存的技術(shù)。
      圖4是個概要示意圖,說明另 一 種達成虛擬化
      網(wǎng)絡(luò)儲存的技術(shù)
      17圖5是SCSI協(xié)議數(shù)據(jù)單元從使用者端到儲存端
      的封包直接轉(zhuǎn)送的處理流程的一個示意圖,并且與本
      揭露中某勝實施范例 一 致。
      圖6是一范例示意圖,說明虛擬儲存網(wǎng)絡(luò)交換器
      的封包轉(zhuǎn)送裝置的結(jié)構(gòu),并且與本揭露中某些實施范
      例致。
      圖7是范例示意圖,說明封包轉(zhuǎn)送裝置中各模
      組的細部動作,并且與本揭露中某些實施范例一致。
      圖8是動態(tài)會議連線對照表中各元素的內(nèi)容及建
      過程的個范例示意圖,并且與本揭露中某些實施
      范例致
      圖9說明個虛擬地址存取要求對應(yīng)到真實的儲
      存位置為多個不同裝置的一個范例示意圖,并且與本
      揭露中某些實施范例 一 致。
      圖10說明會議連線對照表中各元素后面被設(shè)定
      個指不位的個范例示意圖,并且與本揭露中某些
      實施范例致
      圖11說明PDU復(fù)制接管模組在封包的流向上,
      扮演封包重制和整合的角色,并且與本揭露中某些實
      施范例致
      圖12是范例流程圖,說明當(dāng)客戶端發(fā)出REA[
      人 口卩令的要求動作時,PDU復(fù)制接管模組如何實現(xiàn),并且與本揭露中某些實施范例 一 致。
      圖13是一范例流程圖,說明當(dāng)客戶端發(fā)出WRITE命令的要求動作時,PDU復(fù)制接管模組如何實現(xiàn),并且
      與本揭露中某勝實施范例 一 致。
      圖14是一范例示意圖,進 一 步說明地址轉(zhuǎn)換器
      接口輸入與輸出的參數(shù),并且與本揭露中某些實施范
      例 一 致
      圖15是范例流程示意圖,說明虛擬儲存網(wǎng)絡(luò)
      交換器的封包轉(zhuǎn)送裝置的方法,并且與本揭露中某些
      實施范伊J致
      圖16A是單一處理器系統(tǒng)上,iSCSI、封包轉(zhuǎn)送
      機制和核心單元的關(guān)系的范例示意圖。
      圖16B是多處理器系統(tǒng)上,iSCSI、封包轉(zhuǎn)送機
      制和核心單元的關(guān)系的范例示意圖。
      圖17是多處理器系統(tǒng)上,封包轉(zhuǎn)送裝置的幾個
      模組分散在獨力..的微處理器上執(zhí)行的范例示意圖,
      具體實施例方式
      本揭露的實施范例中,是在 一 網(wǎng)絡(luò)協(xié)議,例如
      iSCSI網(wǎng)絡(luò)協(xié)議,連線所建立的交換器環(huán)境中,提供一個封包直接轉(zhuǎn)送(forward)的橋梁,iSCSI封包從使
      19用者端至儲存端的處理流程中不需要經(jīng)過多余的封包表頭的拆解、讀取、轉(zhuǎn)址、表頭建立等繁復(fù)的動作。圖5是i SCS I協(xié)議數(shù)據(jù)單元從客戶端到儲存端的封包直接轉(zhuǎn)送的處理流程的一個示意圖,并且與本揭露中某些實施范例 一 致。
      參考圖5 ,如標(biāo)號5 1 0所示,i SCS I協(xié)議數(shù)據(jù)單元在客戶端5 0 2到儲存端5 0 3的處理流程中,只接收封包表頭來處理。接著如標(biāo)號5 2 0所示,通過直接轉(zhuǎn)送機制,找出對應(yīng)的iSCSI連線信息。如標(biāo)號
      5 3 0所示,再將封包表頭直接傳送到儲存端5 0 3 。從儲存端5 0 3回送到客戶端5 0 2的i SCS I協(xié)議數(shù)據(jù)單元一樣在接收表頭后,如標(biāo)號51l所示,通過直接轉(zhuǎn)送5 2 0機制找到要求此數(shù)據(jù)的客戶端5 0 2連線,接著回傳封包表頭到客戶端5 0 2 ,如標(biāo)號5
      3 1所示。
      換句話說,本揭露在使用者端與網(wǎng)絡(luò)儲存裝置端之間,提供 一 個銜接的橋梁。銜接的對象是使用i SCS I網(wǎng)絡(luò)協(xié)議為連線方式的iSCSI session連線。銜接的方法是以建表的方式來產(chǎn)生使用者與儲存裝置兩端的一對一連線對應(yīng)關(guān)系。
      對應(yīng)關(guān)系建立之后,連線上的所有i SCS I協(xié)議封包的表頭經(jīng)過欄位修改后,連同夾帶的數(shù)據(jù),直接轉(zhuǎn)送(forward)到網(wǎng)絡(luò)儲存裝置端,從網(wǎng)絡(luò)儲存裝置端
      響應(yīng)的數(shù)據(jù),以同樣的查表方式找到使用者端對應(yīng)的
      iSCSI連線,直接將封包傳送到使用者端。搭配既有的虛擬化交換器的軟件層做法,本揭露的實施范例在封包轉(zhuǎn)送過程依然可以提供使用者虛擬化的儲存效果。并且本揭露的封包直接轉(zhuǎn)送單元(Forwarding Unit)獨立化以后,可以在具有多處理器的平臺上得到更好的執(zhí)行效能。
      圖6是 一 范例示意圖,說明虛擬儲存網(wǎng)絡(luò)交換器
      (virtualization switch)的封包轉(zhuǎn)送裝置的結(jié)構(gòu),并且與本揭露中某些實施范例一致。參考圖6,在此虛擬化交換器的環(huán)境中,前端的一目標(biāo)模組(targetmodule),例如iSCSI目標(biāo)6 2 0,可與至少一使用者端6 0 2建立iSCSI會議(session)連線,后端的一啟始者模組(Initiator Module),例如iSCSI啟始者
      6 1 0 , 可與至少 一 個網(wǎng)絡(luò)儲存端6 0 3建立 iSCSIsession連線。本揭露的封包轉(zhuǎn)送裝置的范例結(jié)構(gòu)6 0
      0中,包含一個標(biāo)頭擷取器6 6 1、 一個分發(fā)器6 6
      2、以及一個轉(zhuǎn)送單元6 6 3。
      當(dāng) iSCSI session連線完成系統(tǒng)認證后,標(biāo)頭擷取器6 6 1接收i SCS I連線上至少 一 個封包,并擷取此至少一個個封包的表頭數(shù)據(jù)。分發(fā)器6 6 2決定這
      21些被接管的封包的流向。轉(zhuǎn)送單元6 6 3在兩已建立iSCSI連線的前端與后端之間作封包直接轉(zhuǎn)送的動作,
      包括將分發(fā)器6 6 2接收的封包的虛擬存取地址轉(zhuǎn)換成真實地址的動作、建立客戶端接口與儲存端接口的對應(yīng)關(guān)系,例如在 一 動態(tài)會議連線對照表(DynamicSessionMappingTable, DSMT)中建立lt匕對應(yīng)的關(guān)系,以及傳遞 iSCSI連線上夾帶的 iSCSI負載數(shù)據(jù)(payload) 的動作。
      標(biāo)頭擷取器6 6 1可以針對連線上多個iSCSI封包進行數(shù)據(jù)控制,將iSCSI的表頭與數(shù)據(jù)分離,讓整個封包轉(zhuǎn)送過程里只有協(xié)議數(shù)據(jù)單元里表頭欄位的數(shù)據(jù)處理,而不涉及協(xié)議數(shù)據(jù)單元里數(shù)據(jù)域位的數(shù)據(jù)搬移動作。
      轉(zhuǎn)送單元6 6 3可再包括一個地址轉(zhuǎn)換器(Address Translator, AT)、一個動態(tài)會議連線對照表(DSMT)、 一個PDU復(fù)制接管模組(PDU DuplicationHandler, PDH)、 一個表頭調(diào)適器(Header Adaptor)、以及一個數(shù)據(jù)搬移器(Data Mover)。而封包轉(zhuǎn)送裝置的范例結(jié)構(gòu)600中也可包括 一 描述子隊列(descriptor queue)。圖7說明封包轉(zhuǎn)送裝置中這些模組的細部動作,并且與本揭露中某些實施范例一致。參考圖7,標(biāo)頭擷取器6 6 l在 iSCSI連線系統(tǒng)
      22上認證完成后,雙連線的信息中可找出此連線ID記
      為Conn)與虛擬存取ID (記為VIun)的信息,將這些
      數(shù)據(jù)組合成個存取描述子(descriptor), 紀錄到描
      述子隊列7 11中,等待下 一 個處理程序進行。描述
      子隊歹U 71 1是要把接收表頭的工作與分析表頭的工
      作分開,讓此兩個工作有機會同時進行,并且可以解
      決多個連線同時需要要求分發(fā)器6 6 2處理的相血 兄問

      當(dāng)描述子隊列71l有數(shù)據(jù)進入,分發(fā)器662
      會從描述子隊列71 1中取出一筆存取描述子,從描
      述子信息中可得知收到封包的類型,例如iSCSI命令
      iSCSICmn d)、SCSI數(shù)據(jù)輸出 (iSCSI DataOut)、
      iSCSI數(shù)據(jù)輸入(iSCSI Dataln)、 iSCSI回復(fù)(iSCSI Rsp)、 iSCSI準(zhǔn)備傳送(iSCSI R2T)等封包的類型,
      并決定被接到的封包是否為合格轉(zhuǎn)送類型的封包。若 是命令(Cmnd )類型的封包,則分發(fā)器6 6 2會傳送
      此封包的數(shù)據(jù)表頭至下一單元繼續(xù)處理。若是命令 (Cmnd )類型以外的其它封包,則分發(fā)器6 6 2會將 此封包的表頭和夾帶的數(shù)據(jù)一并送回系統(tǒng)上的iSCSI Target做處理;分發(fā)器6 6 2可以判斷此封包是否直 接交給轉(zhuǎn)送單元6 6 3,讓轉(zhuǎn)送單元6 6 3直接轉(zhuǎn)送 到網(wǎng)絡(luò)儲存端6 0 3上。地址轉(zhuǎn)換器7 6 3a的功能在于虛擬存取與真實 位置之間的轉(zhuǎn)換。當(dāng)?shù)刂忿D(zhuǎn)換器7 6 3 a接收到虛擬存 取點(Vlun)、存取地址(block)與存取長度(length) 后,就可以找出真實的存取位置,與存取位置所屬的 會議(session)的連線。也就是說,地址轉(zhuǎn)換器7 6 3 a可以從虛擬存取點與存取位置中找出真實的存取 地址與會議(session)連線ID的對應(yīng)關(guān)系。
      從分發(fā)器6 6 2接收過來的iSCSI封包,存取地 址經(jīng)過地址轉(zhuǎn)換器7 6 3 a的轉(zhuǎn)換后,得知真實存取位 置的會議(session)連線ID與此存取的真實儲存裝 置數(shù)目。PDU復(fù)制接管模組(PDH) 7 6 3 b決定來源 封包與轉(zhuǎn)送封包的對應(yīng)關(guān)系,并且在動態(tài)會議連線對 照表(DSMT) 7 6 3c中建立此對應(yīng)的關(guān)系。
      PDU復(fù)制接管模組(PDH) 7 6 3 b在動態(tài)會議連 線對照表(DSMT) 7 6 3 c中填入對應(yīng)元素(entry) 的內(nèi)容。動態(tài)會議連線對照表(DSMT) 7 6 3 c中每個 元素的內(nèi)容將于圖7中說明。在動態(tài)會議連線對照表 (DSMT) 7 6 3 c填上對應(yīng)關(guān)系后,PDU復(fù)制接管模組 (PDH) 7 6 3b傳送封包表頭至表頭調(diào)適器7 6 3d。 表頭調(diào)適器7 6 3d處理iSCSI表頭的欄位修改與傳送 動作。若此表頭有夾帶負載數(shù)據(jù)(payload),則使用 數(shù)據(jù)搬移器7 6 3 e直接把接收端的TCP層當(dāng)作傳送數(shù)據(jù),在儲存端的TCP連線上傳送出去。
      PDU復(fù)制接管模組(PDH) 7 6 3 b可以解決虛擬 與實體對應(yīng)中 一 對多的對應(yīng)情況,讓使用者在引發(fā)一 個虛擬對象的存取時可以拓展出多個真實對象的存 取。表頭調(diào)適器7 6 3 d可以從動態(tài)會議連線對照表 (DSMT) 7 6 3 c中得知i SCS I表頭欄位取代的值,接 著將此表頭在iSCSI會議(session)隸屬的TCP連線 上傳送出去。數(shù)據(jù)搬移器7 6 3 e可以將停留在TCP連 線上的iSCSI負載數(shù)據(jù)直接當(dāng)作iSCSI傳送的數(shù)據(jù), 傳送出去。
      如此,將使用者對目標(biāo)端(target)的存取權(quán)限 與虛擬化儲存裝置的設(shè)定集中在交換器上做管理,讓 使用者可以安裝 一 般容易獲得的iSCSI啟始者
      i ni ti a t o r )連結(jié)軟件,直接把交換器當(dāng)作是1SCSI
      百標(biāo)者t ar get )做存取:,在交換器上以iSCSI協(xié)議
      所連結(jié)的真實儲存裝置可以用虛擬化的配置方式7 通
      過帳號密碼確認提供給使用者存取,使用者端不必安
      裝任何額外的存取控制軟件。數(shù)據(jù)的接收保留在下層
      網(wǎng)絡(luò)層,通過數(shù)據(jù)搬移器直接決定數(shù)據(jù)傳送的位置,
      減少多余的數(shù)據(jù)復(fù)制次數(shù)
      圖8是動態(tài)會議連線對照表(DSMT )中每個元素
      的內(nèi)容及建立過程的 一 個范例示意圖,并且與本揭露中某些實施范例 一 致。參考圖8 ,動態(tài)會議連線對照
      表(DSMT) 7 6 3c中每個元素主要有三個欄位,亦即 客戶端接口 (Client Side Interface) 8 3 1、 儲存 端接口 (Storage Side Interface) 8 3 2、 以及有 效位8 3 3 ,分別記錄使用者端的會議連線(s e s s i on ) ID(記為src一sess)禾口啟始者工作禾示簽(initiator task tag)(記為src_ITT)、儲存端的會議連線(session) ID(記為dst —sess )禾口啟使者工作豐示簽(記為dst_ITT)、 以及對應(yīng)于同 一 個虛擬存取的存取順序關(guān)系。有效位 可以方便于PDU復(fù)制接管模組(PDH) 7 6 3 b來管理 從儲存端回傳的iSCSI封包。
      動態(tài)會議連線對照表(DSMT) 7 6 3c中每個元素 的生命期開始于轉(zhuǎn)送單元6 6 3接收到客戶端的 iSCSI 命令協(xié)議數(shù)據(jù)單元(Cmd PDU),結(jié)束在轉(zhuǎn)送單 元6 6 3接收到儲存端的iSCSI 響應(yīng)協(xié)議數(shù)據(jù)單元
      (Rsp PDU)為止。元素存在的期間,從客戶端端接收 的協(xié)議數(shù)據(jù)單元(PDU )可用 一 對 一 或是 一 對多個會議
      (session)的方式傳送到目的端的i S C S I儲存裝置。 從儲存裝置回傳的數(shù)據(jù)封包, 一樣會經(jīng)過轉(zhuǎn)送單元6
      6 3查表的方式找出要求數(shù)據(jù)的客戶端。
      建立元素的過程,從客戶端來到轉(zhuǎn)換單元的第一 個iSCSI命令協(xié)議數(shù)據(jù)單元(Cmd PDU)通過地址轉(zhuǎn)換
      26器7 6 3 a的協(xié)助,可以得知儲存端的會議(session) 欄位dst —sess與ITT欄位dst —ITT的數(shù)據(jù),同日寸在元 素的有效位欄位中記錄此對應(yīng)是否為 一 對多個會議 (session)的對應(yīng)關(guān)系,從此之后,同一個iSCSI工 作(Task)的協(xié)議數(shù)據(jù)單元(PDU)在進入轉(zhuǎn)送單元6 6 3時,都會以協(xié)議數(shù)據(jù)單元(PDU)的會議(session) 與ITT欄位搜尋動態(tài)會議連線對照表(DSMT) 7 6 3 c 中是否有對應(yīng)的元素,找出目的端的會議(session) ID與ITT欄位,直到從儲存端回傳最后一個iSCSI響 應(yīng)(Rsp)封包,才結(jié)束此元素的對應(yīng)關(guān)系。
      當(dāng)轉(zhuǎn)送單元6 6 3從客戶端接收一 個iSCSI命令 協(xié)議數(shù)據(jù)單元(Cmd PDU),在通過地址轉(zhuǎn)換器7 6 3 a 存取后,得知此虛擬存取的數(shù)據(jù)量分散在多個實體的 網(wǎng)絡(luò)儲存裝置上時,轉(zhuǎn)送單元6 6 3除了執(zhí)行封包直 接導(dǎo)向的工作以外,還需針對多個涉及此存取命令所 涵蓋的網(wǎng)絡(luò)儲存裝置,傳送存取的iSCSI封包。
      例如,假定 一 個使用者發(fā)出的存取要求的虛擬地 址 (Request Virtual Address, Request VA) 9 1 0 對應(yīng)到真實的儲存位置(Physical Address, PA)為 兩個不同儲存裝置的PA 1與PA 2 ,如圖9所示。當(dāng)轉(zhuǎn) 送單元6 6 3從地址轉(zhuǎn)換器7 6 3 a得知此存取目標(biāo) 為分散的兩個網(wǎng)絡(luò)裝置,此時轉(zhuǎn)送單元6 6 3中的PDU復(fù)制接管模組(PDH ) 7 63 b會依照地址轉(zhuǎn)換器7 6
      3 a所提供的目標(biāo)端數(shù)目信息,在動態(tài)會議連線對照表 (DSMT) 7 6 3 c中建立多個元素,每個元素代表轉(zhuǎn)送 單元6 6 3需要跟儲存端單獨完成的工作(Task)的 工作量。
      如圖1 0所示,PDU復(fù)制接管模組(PDH) 7 6 3 b 在建立元素的同時,會在各個元素后面的有效位
      (Vbit)作標(biāo)記,讓從儲存端回傳的iSCSI封包 得知是不是多工作(multi-task)存取中的最后 工作存取。例如,V代表不是最后 一 個工作存取, 表是最后一個工作存取。
      圖1 1進 一 步說明PDU復(fù)制接管模組(PDH) 包的流向上,不僅扮演封包重制也扮演封包整合 色。如圖1 1所示,例如,當(dāng)客戶端的使用者發(fā) 筆虛擬存取請求,而實體存取數(shù)據(jù)量(block)為 的封包時,其中數(shù)據(jù)量A是目標(biāo)(Target)A上的數(shù)據(jù), 數(shù)據(jù)量B是在目標(biāo)B上的數(shù)據(jù),此時在轉(zhuǎn)送單元6 6
      3當(dāng)中會對儲存端的目標(biāo)A與目標(biāo)B產(chǎn)生個別的存取 封包,從儲存端回傳的iSCSI數(shù)據(jù)協(xié)議數(shù)據(jù)單元(Data PDU )經(jīng)過修改查表后,會回傳到客戶端的使用者,而 iSCSI響應(yīng)協(xié)議數(shù)據(jù)單元(Rsp PDU)則不會傳回客戶 端的使用者,直到此存取所涉及的最后 一 個目標(biāo)數(shù)據(jù)
      28存取傳輸完畢以后(由動態(tài)會議連線對照表(DSMT) 7 6 3 c的元素的有效位Vb i t得知),PDU復(fù)制接管模 組(PDH) 7 6 3 b才會回傳 一 個iSCSI響應(yīng)協(xié)議數(shù)據(jù) 單元(Rsp PDU)給客戶端的使用者。從客戶端的使用 者發(fā)出的虛擬存取封包要求,經(jīng)過回傳的數(shù)據(jù)封包, 到最后接收的響應(yīng)協(xié)議數(shù)據(jù)單元,客戶端的使用者完 全感覺不出與一筆只存取一個儲存端目標(biāo)者(Storage
      Target)的反應(yīng)有任何的差異。所以,轉(zhuǎn)送單元66
      3中的PDU復(fù)制接管模組(PDH) 7 6 3b實際上可扮
      演封包重制與整合的角色。
      圖1 2與圖1 3的范例流程圖分別說明當(dāng)客戶A山 順
      發(fā)出 READ/WRITE命令的要求時,PDU復(fù)制接管模組
      CPDH ) 7 6 3 b如何實現(xiàn),并且與本揭露中某扭實施
      范例 一 致。
      當(dāng)客戶端發(fā)出READ命令的要求時,轉(zhuǎn)送單元66
      3接收的i SCS I封包通過地址轉(zhuǎn)換器7 6 3 a后,得知 此iSCSI封包真實的讀取對象有幾個,PDU復(fù)制接管模 組(PDH) 7 6 3 b在動態(tài)會議連線對照表(DSMT) 7 6 3c中建立對應(yīng)的元素數(shù)目。從地址轉(zhuǎn)換器7 6 3a 對此封包轉(zhuǎn)換后的描述子可得知數(shù)據(jù)分散在儲存端的 情況。隨即如圖1 2所示,在步驟1 2 0 1中,PDU復(fù) 制接管模組(PDH) 7 6 3 b產(chǎn)生數(shù)據(jù)讀取的iSCSI封包至第一個儲存端,并等待儲存端響應(yīng)iSCSI Dataln PDU。收至U此卩向應(yīng) iSCSI Dataln PDU后,修改欄位后 直接導(dǎo)回使用者端,如步驟1 2 Q 2所示。重復(fù)接收 Dataln PDU與導(dǎo)回使用者動作直到儲存端響應(yīng)iSCSI RspPDU為止,結(jié)束對此儲存端的數(shù)據(jù)要求,如步驟l 2 0 3所示。接著產(chǎn)生下一個儲存端的數(shù)據(jù)要求,重 復(fù)上述的接收步驟,完成動態(tài)會議連線對照表(DSMT) 7 6 3c中每個元素對應(yīng)的接收項目,如步驟l 2 0 4 所示。直至對應(yīng)的元素中有效位欄位顯示出最后一筆 儲存端的對應(yīng),才將iSCSI Rsp PDU回傳給使用者端, 如步驟1 2 0 5所示。
      當(dāng)客戶端發(fā)出WRITE命令的要求時,PDU復(fù)制接管 模組(PDH) 7 6 3 b的動作類似于圖1 2中READ的實 現(xiàn),不同的地方在于使用者發(fā)出WRITE的動作之后, 要等待儲存端卩向應(yīng)準(zhǔn)備傳送(Ready to Transfer, R
      2 T)的iSCSI封包,PDU復(fù)制接管模組(PDH) 7 6 3 b才可以開始發(fā)送iSCSI DataOut PDU到儲存裝置端。 PDU復(fù)制接管模組(PDH ) 7 6 3 b詳細的實現(xiàn)動作如
      圖1 3所示。
      PDU復(fù)制接管模組(PDH) 7 6 3 b從使用者端接 收橫跨多個儲存裝置WRITE的命令要求后,通過地址 轉(zhuǎn)換器7 6 3 a的指示,在動態(tài)會議連線對照表(DSMT )
      307 6 3 c中填上數(shù)個儲存端的項目,如步驟1 3 0 1所 示。再發(fā)出對第一個儲存端的數(shù)據(jù)要求并等待接收回 傳的iSCSI R 2 T PDU,導(dǎo)回使用者端,如步驟1 3 0 2所示。轉(zhuǎn)送單元6 6 3開始接收iSCSIDataOutPDU, PDU復(fù)制接管模組(PDH) 7 6 3 b把接收的iSCSI封 包依照動態(tài)會議連線對照表(DSMT ) 7 6 3 c中所列的 儲存項目逐一導(dǎo)向真實的儲存裝置,如步驟l 3 0 3 所示。直到此筆WRITE命令所牽涉的儲存裝置都寫入 后,PDU復(fù)制接管牛莫組(PDH) 7 6 3 b才響應(yīng) 一 個iSCSI Rsp PDU到使用者端,如步驟1 3 0 4所示。
      圖1 4是 一 范例示意圖,進 一 步說明地址轉(zhuǎn)換器 接口輸入與輸出的參數(shù),并且與本揭露中某些實施范 例 一 致。此范例中,地址轉(zhuǎn)換器7 6 3 a可從輸入的虛 擬存取信息,例如虛擬存取點(virtual disk ID)、 虛擬存取地址(virtual block address)與存取數(shù)據(jù) 長度(access length)等信息,轉(zhuǎn)換出對應(yīng)此虛擬存 取所包含的實體儲存裝置數(shù)目(physical disk number ),與每個對應(yīng)的實體儲存裝置的實體存取點 (physical disk ID)、實體存取地址(physical block address)、 數(shù)據(jù)存取長度 (access length )、 實體儲 存裝置所建立的iSCSI會議連線(iSCSI session) ID 等。若對應(yīng)的實體儲存裝置數(shù)目大于一個,則會有多組同樣的實體存取參數(shù)。
      承上述,在虛擬儲存網(wǎng)絡(luò)交換器中,封包,如iSCSI 封包,從使用者端轉(zhuǎn)送到網(wǎng)絡(luò)儲存端的處理流程,可
      以用圖1 5的范例流程來說明,并且與本揭露中某些 實施范例 一 致。圖1 5的范例中,網(wǎng)絡(luò)連線方式和封 包轉(zhuǎn)送分別是以iSCSI session所使用的TCP連線和 iSCSI封包轉(zhuǎn)送來說明。
      參考圖1 5 ,如步驟1 5 1 0所示,從 iSCSI session所使用的TCP連線中接收的至少 一 個iSCSI封 包里,擷取每個iSCSI封包的表頭。如步驟l 5 2 0 所示,對于每個 iSCSI封包,查看該封包的格式是否 為合格轉(zhuǎn)送的類型,例如iSCSI Cmnd、 i S CS I Da t aOu t 、 iSCSI Dataln、 iSCSI Rsp、 iSCSI R2T等封包類型, 以決定此封包的流向。如步驟1 5 3 0所示,對合格 轉(zhuǎn)送的封包,檢査是否為iSCSI命令(Cmnd)類型的 封包。若是,如步驟1 5 4 0所示,將此i SCS I命令 (Cmnd )類型的封包的相對應(yīng)的虛擬存取地址信息轉(zhuǎn) 換成真實地址,并加入 一 新的對應(yīng)關(guān)系于動態(tài)會議連 線對照表(DSMT)中。例如,可從 iSCSI session所 使用的TCP連線中的信息得知此類型的封包的相對應(yīng) 的虛擬存取地址信息(如存取點、地址、長度等),將 此虛擬存取地址信息轉(zhuǎn)換成真實存取位置,并且加入
      32如第八圖的動態(tài)會議連線對照表(DSMT)。然后繼續(xù)進 行步驟1 5 5 0 。
      若是iSCSI Cmnd以外的其它合格轉(zhuǎn)送類型的封 包,則如步驟1 5 5 0所示,從動態(tài)會議連線對照表
      (DSMT)中,找出對應(yīng)的目的端會議(session) ID 與ITT欄位。例如,從動態(tài)會議連線對照表(DSMT ) 中,可以用來源封包的session ID與ITT欄位來找出 對應(yīng)的目的端會議(session) ID與ITT欄位。
      在步驟l 5 6 O中,根據(jù)此目的端會議(session) 的連線狀態(tài)現(xiàn)況,修改iSCSI封包表頭,并傳送修改 后的iSCSI表頭與來源端TCP連線的iSCSI負載數(shù)據(jù)
      (pay load )。例如,可以根據(jù)此目的端會議(s e s s i o n ) 的連線狀態(tài)現(xiàn)況,取代此封包的ITT欄位、CmdSN等欄 位,再將修改過后的iSCSI封包表頭連同停留在來源 端TCP連線的iSCSI負載數(shù)據(jù),依照目的端session 所使用的TCP連線,將數(shù)據(jù)傳送至目的端。
      如此,從交換器目標(biāo)者(Switch Target)所接收 到的iSCSI封包,至交換器啟始者(Switch Initiator ) 要傳送的iSCSI封包比較上來看,目標(biāo)者(Target) 所接收到的 iSCSI 封包格式,就會在啟始者 (Initiator)產(chǎn)生同樣的i S C S I封包格式傳送到目的 端,也就是說,兩者的iSCSI表頭都具有相同的運算
      33碼(opcode),除了接收封包的目的地不同,不同的 iSCSI session連線在iSCSI 表頭欄位上有些許的差 異之外,其它在表頭中描述數(shù)據(jù)的欄位都不會改變。
      因為交換器所接收到的數(shù)據(jù)經(jīng)過虛擬化軟件層找 出真實網(wǎng)絡(luò)存取位置后,數(shù)據(jù)會被完整的傳送到目的
      端,所以從輸入(i甲t) iSCSI封包至輸出(output) iSCSI封包來看,本揭露前述的實施范例中,可以成功 地從目標(biāo)(Target)接收到的iSCSI封包,取代對應(yīng) 的欄位,產(chǎn)生適合于啟始者(Initiator)傳送的iSCSI 封包,所以,可免去眾多軟件層之間多余的封包拆解 與轉(zhuǎn)換的動作。
      本揭露的封包轉(zhuǎn)送機制可以實現(xiàn)在單一處理器或 是多處理器架構(gòu)的系統(tǒng)。圖l 6A與圖1 6B分別是單 一 處 理 器(s i n g 1 e-pr o c e s s or )與 多 處 理 器 (multi-processor )系統(tǒng)上,iSCSI、封包轉(zhuǎn)送機制 和核心單元(Kernel)的關(guān)系的范例示意圖。
      參考圖l 6 A,在單一處理器系統(tǒng)上,此范例是 將i SCS I與封包轉(zhuǎn)送機制置于主機軟件層中來執(zhí)行。 參圖l 6B,在多處理器系統(tǒng)上,此范例是由主處理器 用來運作核心單元與i SCS I軟件層,而封包轉(zhuǎn)送機制 的部分,是由主處理器以外的微處理器(MicroEngine, ME)來執(zhí)行,通過特殊的溝通接口 (Core Component)讓此微處理器上執(zhí)行的程序可以跟主處理器上的程序 達到數(shù)據(jù)交換。
      多處理器系統(tǒng)上的范例中, 一種實施的方式是, 可將本揭露的圖7實施范例的封包轉(zhuǎn)送裝置的幾個模 組分散在獨立的微處理器上執(zhí)行,如圖17的范例所
      示。每 一 個獨立的微處理器有自己本地的(local)變
      量存取空間,也有共享的靜態(tài)隨機存取內(nèi)存(SRAM)
      存取位置,同時也有自己的程序計數(shù)器(program
      counter ),讓每一個微處理器可以在同一時間同時運
      作。不同微處理器之間提供特殊的溝通管道,可由硬 件架構(gòu)特有的儲存空間來達到微處理器之間數(shù)據(jù)的傳
      遞或信息通知。每 一 個模組獨立化的好處是,可以實 施在多處理器的系統(tǒng)架構(gòu)上,讓多個模組有同時運作 的可能,并且減少主處理器的負載,可大幅提升iSCSI 協(xié)議數(shù)據(jù)單元(PDU)在虛擬交換器(virtualization switch)上的傳輸效率。
      所以,本揭露的封包轉(zhuǎn)送機制可以有多種的實現(xiàn)
      方式,例如以軟件實現(xiàn)、硬件實現(xiàn)、含單一處理器或
      多處理器的平臺上實現(xiàn)等。
      惟,以上所述的,僅為發(fā)明的實施例而已,當(dāng)不
      能依此限定本發(fā)明實施的范圍。即凡是依本發(fā)明權(quán)利
      要求范圍所作的均等變化與修飾,皆應(yīng)仍屬本發(fā)明專
      35利涵蓋的范圍內(nèi)
      權(quán)利要求
      1、一種虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置,該虛擬儲存網(wǎng)絡(luò)交換器中,前端的一目標(biāo)與至少一使用者端建立連線,后端的一啟始者與至少一個網(wǎng)絡(luò)儲存端建立連線,其特征在于,該封包轉(zhuǎn)送裝置包含一標(biāo)頭擷取器,接收建立于前端的該連線上至少一個封包,并擷取該至少一個封包的表頭數(shù)據(jù);一個分發(fā)器,決定該被接收的封包的流向;以及一個轉(zhuǎn)送單元,在該已建立連線的前端與后端之間作封包直接轉(zhuǎn)送的動作,包括將該分發(fā)器接收來的封包的虛擬存取地址轉(zhuǎn)換成真實地址的動作、建立客戶端接口與儲存端接口的對應(yīng)關(guān)系,以及傳遞該連線上夾帶的負載數(shù)據(jù)的動作。
      2、如權(quán)利要求1所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置,其特征在于,其中于該前端建立的連線與該后端建立的連線是 一 種使用網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接口的傳輸協(xié)議的網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接口會議的連線,該目標(biāo)是 一 網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接口目標(biāo),該啟始者是 一 網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接口啟始
      3、如權(quán)利要求1所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置特征在于,其中該轉(zhuǎn)送單元還包括一個地址轉(zhuǎn)換器,將該分發(fā)器接收來的封包的虛擬存取地址轉(zhuǎn)換成真實地址;個動態(tài)會議連線對照表,包括多個描述該來源封包與轉(zhuǎn)送封包的對應(yīng)關(guān)系的元素,每個元素至少有客戶一山 乂而接、儲存端接口 、以及有效位三個欄位;—個協(xié)議數(shù)據(jù)單元復(fù)制接管模組,在該動態(tài)會議連線對昭表中填入對應(yīng)元素的內(nèi)容后,傳送出該分發(fā)器接收來的封包的表頭個表頭調(diào)適器,處理封包表頭的欄位修改與傳送以及個數(shù)據(jù)搬移器,將停留在連線上的負載數(shù)據(jù)當(dāng)作傳送的數(shù)據(jù),傳送出去。
      4、如權(quán)利要求1所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置,其特征在于,其中該客戶端接口、儲存上山 頓接□、以及有效位三個欄位分別記錄使用者端的會議連線識別碼和啟始工作標(biāo)簽、儲存端的會議連線和啟使者工作標(biāo)簽、以及對應(yīng)于同一個虛擬存取的存取川頁序關(guān)系
      5、'加1/ 、利求1所述的虛擬儲存網(wǎng)絡(luò)交換器封包轉(zhuǎn)送裝置特征在于,其中該標(biāo)頭擷取器產(chǎn)生該至少-個封包表頭的存取描述子,每一存取描述子包含相對應(yīng)連線識別碼與虛擬存取點的信息。
      6、如權(quán)利要求1所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置,其特征在于,其中該分發(fā)器從該封包的表頭得知收到封包的類型,并決定收到的封包是否為合格轉(zhuǎn)送類型的封包。
      7、如權(quán)利要求1所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置,其特征在于,其中該收到封包的類型是命令、數(shù)據(jù)輸出、數(shù)據(jù)輸入、回復(fù)、以及準(zhǔn)備傳送的中種封包類型。
      8、如權(quán)利要求1所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置,其特征在于,其中該封包轉(zhuǎn)送裝置是以軟件實現(xiàn)、硬件實現(xiàn)、含單一處理器或是多處理器的平臺上實現(xiàn)的前述其中一種方式來實現(xiàn)。
      9、一種虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,該虛擬儲存網(wǎng)絡(luò)交換器中,前端的一目標(biāo)者與至少一使用者端建立連線,后端的 一 啟始者與至少一個網(wǎng)絡(luò)儲存A山 順建立連線,其特征在于,該封包轉(zhuǎn)送方法包含從建立于前端的該連線中接收的至少一個封包里,擷取每一該封包的表頭;査看每一該封包的格式是否為合格的類型:對合格類型的封包,檢査是否為命令類型的封包; 是的話,將該命令類型的封包的相對應(yīng)的虛擬存取地址信息轉(zhuǎn)換成真實地址, 并加入一新的對應(yīng)關(guān)系于動態(tài)會議連線對照表中:從該動態(tài)會議連線對照表中,找出合格類型的每該封包對應(yīng)的巨的端會議識別碼與啟始者工作標(biāo)簽欄位:以及修改合格類型的每 一 該封包的表頭,并傳送出修改后的表頭與來源順連線上的負載數(shù)據(jù)'
      10、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,特征在于,其中該新的對應(yīng)關(guān)系包括使用者端的會議連線識別碼和啟始者工作標(biāo)簽、儲存一山 乂而的會議連線和啟使者工作標(biāo)簽、以及對應(yīng)于同一個虛擬存取的存取順序關(guān)系的信息。
      11、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,其特征在于,其中當(dāng)該命令類型的封包是一數(shù)據(jù)讀取的封包時,該封包轉(zhuǎn)送方法還包括產(chǎn)生數(shù)據(jù)讀取的封包至第 一 個儲存l山 頓,并等待第個儲存一山 順響應(yīng)數(shù)據(jù)輸入?yún)f(xié)議數(shù)據(jù)單元收到此響應(yīng)數(shù)據(jù)輸入?yún)f(xié)議數(shù)據(jù)單元后,修改欄位后直接導(dǎo)回—相對應(yīng)的使用者端;重復(fù)接收數(shù)據(jù)輸入?yún)f(xié)議數(shù)據(jù)單元與該導(dǎo)回使用者丄山 頓的動作直至lJ第一-個儲存端的回復(fù)協(xié)議數(shù)據(jù)單元為止,結(jié)束對第一個儲存端的數(shù)據(jù)要求;產(chǎn)生下一個儲存端的數(shù)據(jù)要求,重復(fù)上述的接收 步驟,完成動態(tài)會議連線對照表中每一元素對應(yīng)的接 收項目;以及直至對應(yīng)的元素中有效位欄位顯示出最后一筆儲 存端的對應(yīng),才將該最后 一 筆儲存端的回復(fù)協(xié)議數(shù)據(jù) 單元回傳給該相對應(yīng)的使用者端。
      12、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器 的封包轉(zhuǎn)送方法,其特征在于,其中當(dāng)該命令類型的封包是 一 數(shù)據(jù)寫入的封包時,該封包轉(zhuǎn)送方法還包括通過地址轉(zhuǎn)換,在該動態(tài)會議連線對照表中填上至少 一 個儲存端的項目;發(fā)出對第一個儲存端的數(shù)據(jù)要求并等待接收回傳 的準(zhǔn)備傳送協(xié)議數(shù)據(jù)單元,導(dǎo)回 一 相對應(yīng)的使用者端;把接收的封包依照該動態(tài)會議連線對照表中所列 的儲存項目逐一導(dǎo)向至少一個真實的儲存裝置;以及直到該寫入命令所牽涉的儲存裝置都寫入后,才 響應(yīng) 一 個回復(fù)協(xié)議數(shù)據(jù)單元到該相對應(yīng)的使用者端。
      13、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器 >的封包轉(zhuǎn)送方法,其特征在于,其中該虛擬存取地址 信息轉(zhuǎn)換成真實地址至少包括從輸入的虛擬存取點、 虛擬存取地址與存取數(shù)據(jù)長度信息,轉(zhuǎn)換出對應(yīng)此虛擬存取所包含的實體儲存裝置數(shù)目,與每-'對應(yīng)的實體儲存裝置的實體存取占 / 、v、、實體存取地址、數(shù)據(jù)存取長度、實體儲存裝置所建立的會議連線識別碼
      14、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,其特征在于, 其中該前端建的連線與該后丄山 順建立的連線是一種使用網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接□的傳輸協(xié)議的網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接□會議的連線,該巨標(biāo)是一網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接□巨標(biāo),該啟始者是網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接啟始者。
      15、如權(quán)利要求14所述的虛擬儲存網(wǎng)絡(luò)交換班 益的封包轉(zhuǎn)送方法,特征在于,其中該動態(tài)會議連線對照表至少包括一元素,每一該元素的生命期開始于接收到客戶端的網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接□命令協(xié)議數(shù)據(jù)單元,結(jié)束在接收到儲存端的網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接□響應(yīng)協(xié)議數(shù)據(jù)單元為止。
      16、如權(quán)利要求15所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,特征在于,其中每該元素存在的期間,從客戶一山 頓上山 順接收的協(xié)議數(shù)據(jù)單元是用對一或是—對多個會議的方式傳送到目的端的網(wǎng)際網(wǎng)絡(luò)小型計算器系統(tǒng)接儲存裝置
      17.如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器 的封包轉(zhuǎn)送方法,其特征在于中該合格類型的封包是命令、數(shù)據(jù)輸出、數(shù)據(jù)輸入、回復(fù)、以及準(zhǔn)備傳送的中種類型的封包。
      18、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,其特征在于,中是根據(jù)該巨的一山 頓會議的連線狀態(tài)現(xiàn)況,來修改合格類型的每一該封包的表頭
      19、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)-、-父換器的封包轉(zhuǎn)送方法,特征在于,其中每一該封包的表頭備有相對應(yīng)的存取描述子,每一該存取描述子包含相對應(yīng)連線識別碼與虛擬存:取點的信息<
      20、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò) 、-父換器的封包轉(zhuǎn)送方法,其特征在于,其中該封包轉(zhuǎn)送方法是由單處理器上的主機軟件層中來執(zhí)行,
      21、如權(quán)利要求9所述的虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送方法,特征在于苴 z 、中該封包轉(zhuǎn)送方法的步驟是分散在一多處理器上的主處理器以外的至少個微處理器中來執(zhí)行。
      全文摘要
      一種虛擬儲存網(wǎng)絡(luò)交換器的封包轉(zhuǎn)送裝置與方法,可應(yīng)用于iSCSI連線所建立的交換器環(huán)境中。此封包轉(zhuǎn)送裝置包含一個標(biāo)頭擷取器、一個分發(fā)器、以及一個轉(zhuǎn)送單元。當(dāng)iSCSI會議連線完成系統(tǒng)認證后,標(biāo)頭擷取器接收iSCSI連線上至少一個封包,并擷取此至少一個封包的表頭數(shù)據(jù);分發(fā)器決定被接收的封包的流向;轉(zhuǎn)送單元在已建立連線的前端與后端之間作封包直接轉(zhuǎn)送的動作,包括將分發(fā)器接收來的虛擬地址轉(zhuǎn)換成真實地址的動作、建立客戶端接口與儲存端接口的對應(yīng)關(guān)系,以及傳遞連線上夾帶的負載數(shù)據(jù)的動作。
      文檔編號H04L29/08GK101483662SQ200810001359
      公開日2009年7月15日 申請日期2008年1月9日 優(yōu)先權(quán)日2008年1月9日
      發(fā)明者李曉暉, 江彥宏, 鐘逸呈, 陳啟鈞 申請人:財團法人工業(yè)技術(shù)研究院
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1