新四季網

塊籤名和事務籤名的處理的製作方法

2023-10-08 13:54:34

專利名稱:塊籤名和事務籤名的處理的製作方法
塊籤名和事務籤名的處理技術領域
本發明總體涉及計算機網絡,具體而言,涉及計算、保護和驗證特別地包括存儲網 絡在內的計算機網絡中的數據完整性。
背景技術:
塊籤名(也稱為數據完整性欄位或DIF) —般被添加到數據塊(也稱為段)以 避免數據錯誤,特別是在數據存儲應用中(但非就此)。例如,信息技術標準國際委員會 (INCITS)的TlO技術委員會——其負責小型計算機系統接口(SCSI)存儲協議的標準化,已 經使DIF的使用標準化,以支持存儲網絡中的端到端數據保護。該DIF被附加到每個SCSI 數據塊(也稱為扇區,且大小一般為——但非必然為——512位元組)。它包括8個字節,包 括16位「塊防護」循環冗餘碼(CRC)、16位「應用標籤」以及32位「參考標籤」,該「參考標 籤」是遞增的,以確保以合適的順序維持塊。
SCSI DIF僅是其中一種眾所周知的數據完整性欄位,還存在許多其它例子。在本 專利申請的語境中以及在權利要求書中,術語「籤名」應被理解為通常指任何這樣的數據字 段該數據欄位在某些數據(例如一個數據塊)上計算而來且與該某些數據相關聯,然後該 數據欄位可用於驗證該數據未被破壞。所述籤名可附加到與其相關聯的數據或者被存儲在 另外的位置中。對籤名的驗證(例如,當讀取數據塊時)確保了在該籤名被計算以來數據 未被改變。
InfiniBand (IB)是主要用於高性能計算的交換結構通信鏈路。它已由 InfiniBand貿易協會標準化。計算設備(主機處理器和外圍設備)經由網絡接口適配器連 接到IB結構,該網絡接口適配器用IB術語來說叫做通道適配器。主機處理器(或主機) 使用主機通道適配器(HCA),而外圍設備使用目標通道適配器(TCA)。發明內容
本發明的一實施方案提供一種網絡通信設備,該網絡通信設備包括主機接口,該 主機接口被聯接以與具有主機存儲器的主機處理器通信,以便接收執行事務的工作請求, 在該事務中,包括至少第一數據塊和最後一個數據塊的多個數據塊將通過包網絡傳送。網 絡接口聯接到該包網絡。處理電路被配置以處理多個數據包以便執行該事務,該事務中的 每個數據包包含上述多個數據塊的一部分,並且所述多個數據包包括至少第一包和最後一 個包,該第一包和最後一個包分別包含該事務的第一數據塊和最後一個數據塊,並且該處 理電路被配置以在處理所述數據包的同時針對所述多個數據塊計算事務籤名,使得在完成 該事務籤名的計算之前,至少所述第一數據塊通過接口之一從該網絡通信設備中傳出。
在一公開的實施方案中,該處理電路被配置以計算所述多個數據塊各自的塊籤名 以及將這些塊籤名插入所述數據包。該事務中的源數據的塊籤名可以是不同種類的(即, 對於該事務中的不同數據塊,可以有不同的塊籤名計算)。
在一些實施方案中,除計算塊籤名外,該處理電路還被配置以從該主機存儲器讀取所述多個數據塊,以生成所述多個數據包,以及計算所述事務籤名並將其插入所述最後 一個數據包,同時在完成該事務籤名的計算之前,通過該網絡接口傳輸至少所述第一數據 包。附加地,或者替代地,該處理電路被配置以從該網絡接口接收所述數據包以及計算所述 事務籤名,同時將所述多個數據塊傳輸到該主機存儲器,使得在完成該事務籤名的計算之 前,至少所述第一數據塊被寫到該主機存儲器。
在一些實施方案中,所述多個數據塊由該處理電路以第一事務籤名接收,並且該 處理電路被配置以移除、讀取和驗證該第一事務籤名,以及計算不同於該第一籤名的第二 事務籤名並將其附加到所述多個數據塊。一般而言,該處理電路被配置以在處理所述多個 數據包後傳送完成報告到該主機處理器,以及一發現該第一籤名的驗證中的錯誤就在該完 成報告中插入錯誤指示。
在公開的實施方案中,該設備包括控制存儲器,該控制存儲器被配置以存儲籤名 背景,其中該處理電路被配置以讀取並應用該籤名背景以計算所述事務籤名。該處理電路 可被配置以在該控制存儲器中存儲針對至少所述第一包計算的臨時事務籤名結果,以及讀 取該臨時事務籤名結果並將其用於完成針對所述最後一個包的事務籤名的計算。
依照本發明的一實施方案,還提供一種網絡通信設備,該網絡通信設備包括主機 接口,該主機接口被聯接以與具有主機存儲器的主機處理器通信,以便接收執行事務的工 作請求,在該事務中,一個或多個數據塊將通過包網絡傳送。網絡接口聯接到該包網絡。處 理電路被配置以處理包含所述一個或多個數據塊的一個或多個數據包以便執行該事務,並 且該處理電路被配置以讀取和驗證通過該主機接口和網絡接口中的一個隨同所述一個或 多個數據塊接收的第一籤名,以及針對所述一個或多個數據塊計算不同於該第一籤名的第 二籤名,以及通過該主機接口和網絡接口中的另一個隨同所述一個或多個數據塊傳送該第二籤名。
該第一和第二籤名可以包括針對所述多個數據塊中的每個而計算的塊籤名,和/ 或針對多個所述數據塊計算的事務籤名。
依照本發明的一實施方案,還提供一種網絡通信設備,該網絡通信設備包括主機 接口,該主機接口被聯接以與具有主機存儲器的主機處理器通信,以便接收執行事務的工 作請求,在該事務中,一個或多個數據塊將通過包網絡傳送。網絡接口聯接到該包網絡。控 制存儲器被配置以存儲籤名背景。處理電路被配置以處理包含所述一個或多個數據塊的一 個或多個數據包以便執行該事務,並被配置以從該控制存儲器讀取該籤名背景,以及將該 籤名背景應用於針對所述多個數據塊中的一個或多個的籤名的計算。
在一些實施方案中,該籤名背景指示將由該處理電路用於計算該籤名的規則。一 般而言,所述一個或多個數據塊包括至少第一數據塊和第二數據塊,並且該控制存儲器被 配置以存儲多個籤名背景——其包括至少第一和第二籤名背景,該第一和第二籤名背景包 括將由該處理電路分別應用於所述第一和第二數據塊的、用於籤名計算的不同規則。
在一公開的實施方案中,該工作請求包括存儲器關鍵字,該存儲器關鍵字與所述 多個數據塊相關聯並指示主機存儲器中的位置,該存儲器關鍵字包括指向該籤名背景的指 示字,該指示字供該處理電路用於讀取該籤名背景。
在一些實施方案中,該籤名背景包括塊籤名背景,該塊籤名背景由該處理電路用 於計算針對所述多個數據塊中的至少一個的塊籤名。該事務可包括多個不同種類的數據塊,該多個不同種類的數據塊具有不同的各自的塊籤名背景。附加地,或者替代地,該籤名 背景可包括事務籤名背景,該事務籤名背景由該處理電路用於針對該事務中的多個數據塊 的事務籤名的計算。
依照本發明的一實施方案,還提供一種用於通信的方法,該方法包括從具有主機 存儲器的主機處理器接收執行事務的工作請求,在該事務中,包括至少第一數據塊和最後 一個數據塊的多個數據塊將經由網絡接口設備通過包網絡傳送。在該網絡接口設備中,多 個數據包被處理以便執行該事務,該事務中的每個數據包包含上述多個數據塊的一部分, 並且所述多個數據包包括至少第一包和最後一個包,該第一包和最後一個包分別包含該事 務的第一數據塊和最後一個數據塊。在處理所述數據包的同時針對所述多個數據塊計算事 務籤名,使得在完成該事務籤名的計算之前,至少所述第一數據塊通過一接口從該網絡通 信設備中傳出。
此外,依照本發明的一實施方案,提供一種用於通信的方法,該方法包括從具有主 機存儲器的主機處理器接收執行事務的工作請求,在該事務中,一個或多個數據塊將經由網 絡接口設備通過包網絡傳送,該網絡接口設備具有主機接口和網絡接口。在該網絡接口設備 中,包含所述一個或多個數據塊的一個或多個數據包被處理以便執行該事務。讀取和驗證由 該網絡接口設備通過該主機接口和網絡接口中的一個隨同所述一個或多個數據塊接收的第 一籤名。針對所述一個或多個數據塊計算不同於該第一籤名的第二籤名。通過該主機接口和 網絡接口中的另一個從該網絡接口設備隨同所述一個或多個數據塊傳送該第二籤名。
此外,依照本發明的一實施方案,提供一種用於通信的方法,該方法包括從具有主 機存儲器的主機處理器接收執行事務的工作請求,在該事務中,一個或多個數據塊將經由 網絡接口設備通過包網絡傳送,該網絡接口設備具有控制存儲器。籤名背景存儲在該控制 存儲器中。包含所述一個或多個數據塊的一個或多個數據包被處理以便執行該事務。使用 存儲在該控制存儲器中的籤名背景,針對所述多個數據塊中的一個或多個計算籤名。


在此參照附圖僅以示例的方式描述本發明,附圖中
圖1是示意性示出依照本發明的一實施方案的、可操作來執行籤名移交的廣域網 的簡圖2是示意性圖解依照本發明的一實施方案的、計算籤名的主機通道適配器的功 能部件的簡圖3是示意性圖解依照本發明的一實施方案的、在籤名處理中所用的數據結構的 簡圖4是示意性圖解依照本發明的一實施方案的數據事務的要素的簡圖5是示意性圖解依照本發明的一實施方案的工作請求籤名處理方法的流程圖; 以及
圖6是示意性圖解依照本發明的一實施方案的籤名計算方法的流程圖。
具體實施方式
以下符號將在該文件全文中使用
術語定義
BSC ±夬籤名背景(Block Signature Context)
CPU 中央處理器
CRC 循環冗餘碼
DIF 數據完整性欄位
FCP 光纖信道協議
HCA 主機通道適配器
I/O 輸入/輸出
IB InfiniBand
LAN 區域網
RDMA 遠程直接存儲器存取
S/G 分散/集合
SAN 存儲區域網
SCSI 小型計算機存儲接口
TCA 目標通道適配器
TSC 事務籤名背景
WAN 廣域網
概覽
當計算機應用生成或接收通過網絡傳送一個或多個數據塊的工作請求時,通常有 必要計算和/或驗證針對這些塊的籤名。該工作請求一般指定待傳送的數據所存儲的具有 特定數據尺寸的主機存儲器區域。可以有與所述數據塊中的每個相關聯的塊籤名。
另外,事務籤名可用來驗證事務中的所有數據。術語「事務(transaction)」當在 本專利申請的語境中以及在權利要求書中使用時,指構成單個數據結構的一組數據塊。一 般而言,儘管不是必然的,事務由較高級應用或協議激活,並涉及根據通過網絡傳送一個或 多個數據塊的工作請求而傳送所述數據塊。所述這些數據塊可以單個包一起傳送,或通過 兩個或更多個包傳播。在一些情況下,事務數據可使用多個I/O操作來傳送。
在本發明的實施方案中,通過網絡通信設備,如HCA或其它網絡接口適配器對事 務和塊籤名進行(1)驗證(即,檢查源數據籤名),(2)附加(即,將目的數據籤名添加到數 據),或C3)驗證和附加(如在籤名移交中,在下文中討論)。可針對整個事務計算事務籤 名並將其附加到多個數據塊上,同時可將各自獨用的塊籤名附加到該事務中的多個數據塊 上。
輸入/輸出(I/O)數據傳送操作用來通過一個網絡將數據直接從一個計算機的 存儲器移至另一計算機,同時不涉及計算機作業系統。I/O數據傳送操作的例子包括在 InfiniBand(IB)和乙太網中的遠程直接存儲器存取(RDMA)操作和光纖信道網絡中的I/O讀、寫操作。
I/O數據傳送操作由一些網絡接口適配器——例如Mel lanox ^Technologies (加利福尼亞Sunnyvale)提供的ConnectX HCA——中的硬體支持。因而,通 道適配器能夠以非常高的速度執行1/0數據傳送操作,同時減輕主機處理器的通信傳輸負 擔。儘管CormectX HCA被設計來符合IB規範,但它也提供乙太網鏈路接口,該乙太網鏈路接口使得它可以發送和接收乙太網包以及IB包,該CormectX HCA還可以被配置以支持光 纖信道協議(FCP)。因此,術語「通道適配器」和「HCA」當在本專利申請中以及在權利要求 書中使用時,應被理解為一般地指以硬體執行I/O數據傳送功能的網絡接口設備,除非另 有規定。儘管下面描述的一些實施方案特別地涉及RDMA,但本發明的原理可類似地應用於 其它I/O數據傳送協議。
在下文中描述的本發明的實施方案中,塊和事務籤名相關的操作從主機處理器卸 載到通道適配器中的專用電路,該通道適配器將該主機處理器連接到網絡。特別地,在一些 實施方案中,籤名處理在該通道適配器中與RDMA和/或其它I/O數據傳送功能結合。該通 道適配器被配置以允許在啟動程序(即,啟動數據傳送的主機應用程式)和目標之間進行 透明通信,而不論該啟動程序和目標中的一個或兩個是否(或者該啟動程序和目標是否都 不)支持並存儲塊和事務籤名。作為I/O數據傳送操作的一部分,該通道適配器將根據需 要自動添加或去除籤名,並且如果需要的話,還可以確認該籤名。
在本發明的一些實施方案中,I/O數據傳送由工作請求激活,該工作請求指定包含 待傳送的數據的存儲器區域,與該存儲器區域相關聯的籤名背景信息包括一些規則,該規 則在執行I/O數據傳送操作時向該通道適配器指示需要什麼籤名操作。
在本發明的一些實施方案中,隨著HCA相繼地處理多個數據塊以便生成包供輸出 到網絡或從網絡接收包供輸入到主機處理器,它遞增地計算事務籤名。在處理每個數據塊 時,HCA更新事務籤名的臨時值,並且還可以計算其塊籤名。可以對照存儲在存儲器中或隨 同多個數據塊包含在進入的數據包中的先前值同時驗證事務和/或塊籤名。事務籤名計算 在處理事務中的最後一個數據塊後即完成。
一般而言,HCA在不將多個數據塊存儲在它自己的存儲器中的情況下直接計算籤 名。對於多包事務,HCA將臨時(部分)籤名值存儲在事務籤名背景中,直到完成關於最後 一個包的計算。結果,可在完成關於最後一個數據塊的籤名計算之前,將給定事務中的第一 個數據塊通過主機接口或網絡接口(取決於該事務是進入的數據事務還是外出的數據事 務)從HCA傳出。對於外出的事務,該特徵意味著,可以在計算事務籤名並將其插入最後一 個供傳輸的包之前將事務中的第一個數據包傳輸到網絡。對於進入的事務,在接收和驗證 最後一個數據包中的事務籤名之前,來自第一個數據包的數據塊已由HCA傳送至主機存儲ο
在驗證失敗的情況下,HCA會在它所傳送至主機處理器以報告事務的完成的完成 報告中插入錯誤指示。HCA還會將一個「壞」籤名(即,在目的地處的驗證中將會失敗的籤 名)附加到其相關聯的數據塊,從而確保針對該數據塊的任何接下來的籤名驗證過程都將 失敗,使得接收該數據的應用軟體將認出已經出現的錯誤。例如,HCA可用特定功能(例如, 所計算的籤名的按位取反(bitwise NOT)) 「密封」每個失敗的塊籤名,從而確保在目的地 處識別錯誤數據塊。
一些工作請求包括在源和目的地之間傳送多個使用不同的塊籤名和/或不同的 事務籤名的數據塊。例如,一種籤名可以與主機存儲器中的給定數據塊或事務相關聯,而不 同類型的另一種籤名伴隨通過網絡在傳輸中的數據。再例如,存儲伺服器可以使用一種籤 名從源網絡例如LAN上的客戶端接收數據,並可以使用不同類型的另一種籤名將該數據通 過目的網絡傳輸到目的網絡(例如SAN)上的存儲目標。在本發明的一些實施方案中,主機通道適配器通過首先對針對事務中的數據塊的源塊和/或事務籤名進行驗證,來執行「籤 名移交」。該主機通道適配器移除這些原始籤名並計算目的塊和/或事務籤名。然後,這些 籤名連同多個數據塊一起被傳輸到事務目的地。
在本發明的一些實施方案中,籤名背景表存儲在主機通道適配器的控制存儲器 中。該籤名背景表存儲用於每個數據塊和事務——HCA將對這些數據塊和事務計算籤 名——的籤名計算規則。對籤名背景的這一使用使得HCA可以將不同類型的籤名應用到不 同的數據塊和事務。因而,它使籤名移交便利,如上文中討論的,並且使得主機通道適配器 可以處理不同種類的事務——其中不同的數據塊具有不同類型的塊籤名。
系統描述
圖1是示意性示出依照本發明的一實施方案的、可操作來執行籤名移交的系統10 的簡圖。LAN 12上的客戶端14、16、18發出一個將一個或多個數據塊傳送到網絡沈上的存 儲器存儲設備觀、30、32中的一個或多個的工作請求。LAN 12和網絡沈均為包網絡,例如 I B交換結構通信網絡,但不同的客戶端和網絡可以使用不同類型的籤名。例如,客戶端14 可以使用校驗和來保護數據塊,而客戶端16使用XOR函數,客戶端18根本不使用塊籤名。 存儲設備觀、30、32可以使用SCSI DIF作為塊籤名,而多塊事務用32位CRC保護。
在該實施例中,來自網絡12上的多個客戶端的數據塊由存儲伺服器20組合在單 個事務中供存儲在存儲設備中的一個上。因而,該事務將包括多個具有不同(不同種類) 的塊籤名的數據塊。這些數據塊經由HCA 22從客戶端傳送到存儲伺服器20,HCA 22驗證 該事務中的數據塊的塊籤名,並可以將這些塊臨時地存儲在伺服器存儲器中。儘管所述數 據塊可以包括不同種類的塊籤名,但HCA 22 —般以與目的地有關的類型相同的塊籤名將 所述數據塊存儲在存儲伺服器20 (或任何其它目的存儲設備)上。在另一場景中,數據經 由HCA 22從存儲伺服器20傳送到客戶端(S卩,本發明的實施方案可以包括通過HCA 22的 磁碟讀操作和磁碟寫操作)。
為接下來的描述上的簡明和便利,關於InfiniBand網絡和HCA,以示例的方式示 出和描述了系統10的部件。但是,在本發明的替代實施方案中,在該專利申請中描述的籤 名處理方法可用其它類型的網絡通信設備實施,所述其它類型的網絡通信設備支持其它網 絡標準,包括光纖信道和乙太網。
對於每個進入的數據塊,HCA 22依照相應的籤名背景應用合適類型的籤名計算, 如下文將更詳細描述的。HCA 22還可以針對整個序列的數據塊計算事務籤名,並可以將塊 和/或事務籤名存儲在伺服器20的存儲器中。
然後,伺服器20經由另一 HCA 24通過網絡沈將單個事務中的數據塊傳送到存儲 設備觀、30、32中的一個。當HCA M處理外出的數據塊以插入通過網絡沈傳輸的包中時, 它計算並驗證經HCA 22而與數據存儲在一起的事務和塊籤名。對籤名的直接計算有益於 探測和防止可能由於伺服器存儲器中的默存的數據破壞而已經出現的數據錯誤。該事務可 擴展至多個數據包,每個數據包包含這些數據塊的一部分。
在生成外出的數據包的同時,HCA 24通過計算新的塊和事務籤名並將其插入外出 包供通過網絡沈傳輸,來執行籤名移交。如必要,HCAM可將數據分為尺寸與從客戶端14、 16、18接收的塊的尺寸不同的塊,然後將為這些新的塊計算塊籤名。與由伺服器20接收和 存儲的不同種類的數據塊相反,在通過網絡26的事務中傳輸的包中的數據塊可以是同類11的,所有塊具有恆定的塊尺寸和相同類型的籤名。替代地,HCA 22可執行籤名移交,HCA 24 僅在數據塊被傳送到網絡沈時驗證籤名。
圖2是示意性圖解依照本發明的一實施方案的、參與籤名計算的HCA 22的功能部 件的簡圖40。(HCA M的結構將是類似的。)在該實施例中,HCA 22從主機CPU 42接收執 行事務的工作請求例如RDMA請求,該事務包括將一個或多個數據塊從主機存儲器44傳送 到網絡46(例如LAN、WAN、SAN或其它交換結構)。這裡示出並描述的HCA 22的結構是高度 簡化的,以僅包括那些對於理解該HCA的籤名處理功能可以如何實現來說必要的元件。該 實現僅通過示例的方式描述;替代的實現方式對本領域技術人員是明顯的,並被認為在本 發明的範圍內。
處理電路50使用存儲在控制存儲器52中的信息,以訪問數據以及為待傳送的數 據塊計算塊和事務籤名。在圖2中所示的實施方案中,控制存儲器52置於HCA設備的高速 緩存中。替代地,或附加地,控制存儲器的內容可存儲在主機存儲器44中或聯接到HCA 22 的單獨的存儲器模塊(未示出)中。一般而言,工作請求識別主機存儲器44中的有待從 中傳送數據的區域,並提供一個或多個存儲器關鍵字,這些關鍵字將由HCA 22用於訪問數 據。地址轉換模塊58使用所述存儲器關鍵字以在存儲器保護表66和存儲器轉換表68中 查找存儲器保護和地址轉換參數。該地址轉換模塊使用存儲器轉換信息將工作請求中的虛 擬地址轉換成主機存儲器44中相應的物理地址。
直接存儲器存取(DMA)模塊60經由主機接口 48從存儲器44讀取數據塊,並將數 據插入一個或多個數據包供經由網絡接口 M通過網絡46傳輸,以執行工作請求。這些數 據傳送操作直接地執行,而不將數據存儲在HCA 22中。當事務通過兩個或更多個數據包傳 播時,一般出現以下情況第一個數據包在,處理電路50完成將後來的數據包(以及,無疑 地,最後一個數據包)組裝在該事務中,之前,通過網絡接口 M被傳輸出。
如上文所述,數據塊中的每個與一存儲器關鍵字相關聯。每個塊可以具有其自己 的關鍵字,或者一個關鍵字可由多個塊或甚至整個事務共用。存儲器關鍵字是一種數據結 構,該數據結構包含指向存儲器保護和轉換表中的表目的指示字,如上文所述。存儲器關鍵 字還可包括指向籤名背景表62中的表目的指示字。該表的內容在下文更詳細地進行描述。 簡要地說,表62可以包括籤名背景表,該籤名背景表包含用於為所討論的一個或多個數據 塊計算塊和事務籤名的規則。附加地,或替代地,籤名背景表62可以包含用於事務籤名的 計算的臨時值。控制存儲器52可由HCA 22配置為當前在使用中的背景信息的高速緩存, 而最近尚未使用的籤名背景信息(和其它類型的背景信息)保存在主機存儲器44中並在 需要時被調用至控制存儲器52。
地址轉換模塊58將籤名背景表指示字傳送至籤名背景模塊56,籤名背景模塊56 使用該指示字訪問表62。籤名背景模塊計算與經由主機接口 48接收的多個數據塊相關聯 的塊和事務籤名。模塊56可使用這些計算既驗證已隨同多個數據塊存儲在存儲器44中的 籤名又計算新的籤名供插入待通過網絡接口 M傳輸的包。因而,在籤名移交中,例如,模塊 56可以針對一給定數據塊和/或事務執行兩次不同的籤名計算一 一次用於驗證,另一次用 於新籤名插入。這些籤名計算在於電路50中構建數據包的過程中直接地進行。當一事務 包括多個包時,僅當最後一個包被處理時,事務籤名的計算才可完成,並且針對該事務中先 前的包所計算的事務籤名的臨時值可以同時保存在籤名背景表62中。
當HCA 22從網絡46接收進入的事務的數據包時,出現類似種類的流。在此情況 下,DMA模塊60將來自進入的包的數據塊寫到主機存儲器44中的由地址轉換模塊58提供 的地址。籤名背景模塊56使用籤名背景表62中的信息驗證並計算塊和事務籤名,其中所 計算的籤名可連同數據一起被寫到存儲器44。
圖3是示意性圖解依照本發明的一實施方案的、在一組輸入數據72、處理電路50、 存儲器保護表66和籤名背景表62之間的交互的簡圖70。輸入數據72包括數據塊78、80、 82和事務籤名84。數據塊78、80、82中的每個具有塊籤名(BSIG)以及數據。存儲器保護 表66中的每個表目包括存儲器關鍵字標識符(MKEY#)和指向籤名背景表62中的相應表目 的指示字。
籤名背景表62中的事務籤名背景76中的每個包括事務籤名標識符(TSC#)、事務 籤名規則和事務籤名結果。塊籤名背景74中的每個包括塊籤名標識符(BSC#)、塊籤名規則 和塊籤名結果。儘管事務籤名背景76和塊籤名背景74在圖3中被示為分開的實體,但這 些數據結構可便利地一起保存在單個籤名背景表中,在該單個籤名背景表中事務籤名背景 跟著相關聯的塊籤名背景。
換句話說,對於每個待傳送的數據塊,相關聯的存儲器關鍵字可指示待用於包含 該一個或多個塊的事務的事務籤名背景,並且該事務籤名背景跟著塊籤名背景——該塊籤 名背景待用於對與該關鍵字相關聯的一個或多個塊的籤名的計算。一個事務籤名背景可跟 著不止一個塊籤名背景。因此,如圖3中所示,如果一個事務包含不同種類的塊,事務籤名 背景可跟著各自的(即,多個)塊籤名背景。另一方面,電路50可執行某些事務而不進行 籤名計算,在這種情況下,相應的存儲器關鍵字可具有空籤名背景指示字。
在籤名背景表62中,事務籤名背景76存儲用於事務級籤名的籤名操作參數,塊籤 名背景74存儲用於塊級籤名的籤名操作參數。在執行一個事務之前,應用軟體在待用於該 事務的籤名背景表62中建立TSC表目和任何必要的BSC表目。事務籤名背景76指定事務 籤名規則,並且還可在同類保護域中指定塊級籤名規則。此外,當要在一給定事務中執行籤 名移交時,用於該事務的籤名背景表62可為每個塊既指定源籤名背景(待用於籤名驗證) 又指定目的地籤名背景(待用於計算新的籤名)。
在本發明的一些實施方案中,使用分散/集合指示字定位主機存儲器44中的數 據。每個指示字包含待用於地址轉換的存儲器關鍵字(其可與TSC相關聯)、在該存儲器關 鍵字所識別的地址空間內的地址指示字以及數據操作數的長度(即,字節計數)。該字節計 數指定待通過網絡46傳輸的字節的數量。HCA 22根據S/G表目中指定的字節計數、相關聯 的籤名背景(即,BSC或TSC)和正在執行的籤名操作,計算用於存儲器存取的字節計數。
數據結構的細節
再參照圖3,籤名背景表62中的表目經由存儲器關鍵字與輸入數據70的塊相關 聯,該存儲器關鍵字用來尋址存在於主機存儲器44中的參與事務的數據。存儲器關鍵字的 類型包括
1.數據存儲器關鍵字。這是「經典的」存儲器關鍵字,沒有任何到籤名背景的鏈 接。
2.籤名背景存儲器關鍵字。此存儲器關鍵字與籤名背景表62中的表目相關聯。
多個存儲器關鍵字(如圖3中的MKEYl、MKEY2和MKEY3)可與籤名背景表62中的單個表目相關聯。另外,多個BSC可與籤名背景表62中的單個TSC表目相關聯。對於一 個事務籤名,籤名背景包含在整個事務中維持的參數以及該事務籤名的籤名規則(總的來 說,籤名規則可指示是否需要籤名)。
圖4是示意性圖解依照本發明的一實施方案的、從源數據流91到目的數據流98 的帶有籤名移交的數據傳送事務90的數據、BSC和TSC之間的聯繫的簡圖。該圖示出了事 務的數據結構與各種籤名規則之間的聯繫的多種可能情形。
事務90中的數據段被標註為「B」、「0」或「Pad」,其中「B」指示包括一個或多個受 籤名保護的數據塊的數據段,「0」 (即,「0」、「01」或「Ob」)指示包括不透明的數據塊一 即,不具有塊籤名的塊(不過它們可以受事務籤名保護)——的數據段。「Pad」指示這樣的 填充體該填充體被添加到源保護域中,以補充該段,以適應目的數據流98中必需的整數 數量的塊。通常,填充體包括目的數據98中的不隨籤名變化的數據(例如,對於XOR或校 驗和,為零)。
事務90中的籤名移交應看作兩個獨立的步驟。在第一個步驟,籤名背景模塊56 驗證來自源數據91的源塊籤名92和源事務籤名94,如在其各自的籤名背景中指定的。該 第一個步驟導致無籤名的數據流96,該數據流96是籤名移交事務90的第二個步驟的輸入。 在第二個步驟,籤名背景模塊56計算目的塊籤名100和事務籤名102,然後處理電路50將 目的塊籤名100和事務籤名102附加到目的數據98,如在其各自的籤名背景中指定的。
儘管籤名移交中的兩個步驟一般以流水線的方式執行(即,在生成輸出數據結構 之前,不存儲無籤名的數據),但是這兩個步驟應被看作是獨立的。
源數據流91中的(或一個源數據流中的任何數據段中的)每個數據段(或一個 或多個塊)與指定的源BSC(sBSC#)相關聯,目的數據流98中的(或一個目的數據流中的 任何數據段中的)每個數據段與指定的目的BSC(dBSC#)相關聯。籤名移交90中的數據是 不同種類的,即,存在多個與構成事務的多個數據段相關聯的塊籤名。(在籤名移交90中的 數據是同類的場景中,將會存在單個與構成事務的多個數據塊相關聯的BSC。)
籤名處理
圖5是示意性圖解依照本發明的一實施方案的工作請求籤名處理方法的流程圖。 為清楚起見,在此參照之前的圖中示出的功能模塊和數據結構描述該方法,不過該方法可 替代地使用其它電路和數據結構實施,如對本領域技術人員來說將明顯的。在該描述中將 假定,工作請求涉及從主機存儲器44到網絡46的數據的外出傳送,但該方法,如作必要的 變動,也可類似地適用於從該網絡到該主機存儲器的數據進入傳送。
DMA模塊60經由主機接口 48從主機存儲器44中的由地址轉換模塊58提供的物 理存儲器地址取出數據塊(即,事務中待傳送的數據)(步驟110)。籤名背景模塊56取出 並檢查適當的塊和/或事務背景,並確定是否有必要驗證所取出的數據塊的塊和/或事務 籤名(步驟112)。如果有必要,籤名背景模塊計算塊和/或事務的籤名,並對照存儲在存儲 器中的籤名驗證結果(步驟114)。
如果正在執行的事務要求為數據傳輸計算新籤名(步驟116),則籤名背景模塊56 執行必要的步驟。如必要,這些步驟可包括從所述數據移除經驗證的籤名(步驟118)。然 後,模塊56計算新的塊和/或事務籤名供插入外出的包(步驟120)(該步驟的細節在圖6 中示出)。然後,HCA 22經由網絡接口 M將帶有所計算的塊和/或事務籤名的事務數據塊傳輸到網絡46上的數據目的地(步驟122)。
然而,如果不要計算新的塊或事務籤名,則HCA 22經由網絡接口 M將帶有或不帶 有經驗證的塊和/或事務籤名的事務數據塊傳輸到網絡46上的數據目的地,而不進行另外 的籤名計算(步驟124)。
然後,電路50生成完成報告給主機CPU 42,如果需要,該完成報告包括所取出的 籤名的驗證結果(步驟126)。該完成報告包括關於所計算的塊和事務籤名的信息,包括所 有探測到的塊籤名或事務籤名錯誤的指示。籤名背景模塊56將所有探測到的錯誤存儲在 籤名背景表62中它們相應的欄位中。籤名背景模塊56將這些表中的在工作請求期間經受 過錯誤的所有表目標記為「中過毒的」。然後,在主機CPU42上執行的軟體查詢籤名背景表。 替代地,或附加地,籤名背景模塊56經由主機接口 48將完成報告傳送到主機處理器42。
上文描述的籤名處理方法也可以相反的方向執行。在此情況下,數據塊經由網絡 接口 M從網絡46得到。然後,籤名背景模塊56可驗證源籤名,移除源籤名,生成完成報告 和計算目的籤名,如籤名背景中的規則所要求的。然後,DMA模塊60經由主機接口 48將數 據塊和/或經驗證/重新計算的籤名存儲到主機存儲器44。
在本發明的一些實施方案中,源數據塊可以具有與目的數據塊不同的尺寸(和邊 界)。在籤名移交的情況下,如上文所述,針對每個塊可以有兩次籤名計算一次驗證進入 的籤名,另一次生成新籤名供隨同數據輸出。
因而,在本發明的一些實施方案中,HCA 22在兩個保護域——內部(即,系統存儲 器)和外部(即,網絡)——之間執行籤名操作。該籤名操作可於HCA 22在這兩個域之間 執行事務(即,傳送數據結構)時發生,其中一個域是同類的,另一個域是不同種類的。同 類保護域中的數據結構由具有相同尺寸和相同籤名規則的數據塊構成,而不同種類的保護 域中的數據塊可以具有不同的尺寸和使用不同的籤名規則。另外,如之前注意到的,這兩個 域中的任一個中的數據結構可以包含具有任意尺寸的「不透明的」數據段——其意指一個 或多個不受塊級籤名保護的塊。
一個保護域可以是籤名事務的源或目的地,每個域可以位於主機存儲器44中或 網絡46上。HCA 22支持在事務的請求者側和應答者側的用於發送/接收操作以及RDMA (讀 和寫)操作的籤名操作。總體來說,一個域中受籤名保護的塊的鄰接段包含第一整數數量 的數據塊並適應於另一個域中第二整數數量的數據塊。在從不同種類的保護域到同類保護 域的轉變中,HCA 22添加必要的填充體以補充段以適應同類保護域中第二整數數量的段。 通常,在同類保護域中填充體不隨籤名變化(例如,對於XOR或校驗和,為零)。
在本發明的一些實施方案中,HCA 22以網速(wire speed)執行上述的籤名相關 操作。在數據流動通過HCA 22時,處理電路50計算新、舊籤名,並且僅在舊籤名有效時替 換籤名。如果籤名檢查失敗,則操作帶有錯誤,該錯誤在工作請求完成後即被報告。
圖6是示意性圖解依照本發明的一實施方案的遞增籤名計算方法的流程圖。該方 法例如可在圖5的方法中的步驟120執行。為了說明一示例性工作請求,以下對圖6的方 法的描述特別地涉及圖3中示出的輸入數據72和其它數據結構。當HCA 22接收工作請求 時,該工作請求還包括一個或多個用於待傳送的數據塊的一個或多個存儲器關鍵字,例如, 圖3中具有標識符MKEY2的存儲器關鍵字。
首先,地址轉換模塊58使用工作請求存儲器關鍵字查找與待傳送的數據塊相關聯的籤名背景表62中的TSC表目(步驟130)。一旦定位了 TSC,地址轉換模塊58就參照 存儲器轉換表68以確定主機存儲器44中數據塊72的物理地址。DMA模塊60經由主機接 口 48從地址轉換模塊58所提供的物理存儲器地址取出第一個數據塊(圖3的實施例中的 數據塊78)(步驟132)。
然後,籤名背景模塊56定位與所取出的數據塊相關聯的籤名背景表62中的BSC 表目(步驟134)。為了定位塊和籤名背景表表目,地址轉換模塊58在存儲器保護表66中 查找存儲器關鍵字MKEY2。在該實施例中,MKEY2的存儲器保護表表目包括指向籤名背景表 62中具有標識符TSCl的TSC表目的指示字,該具有標識符TSCl的TSC表目跟著具有標識 符BSCl的BSC表目。除標識符(S卩,BSC1)以外,該BSC表目還包括塊籤名規則和塊籤名 結果。籤名背景表62中的TSCl表目包括事務籤名規則和事務籤名結果。然後,地址轉換 模塊58將指向BSCl和TSCl籤名背景表表目的指示字傳送到籤名背景模塊56。
籤名背景模塊56使用存儲在BSC表目BSCl中的塊籤名規則,為所取出的數據塊 計算塊籤名(步驟136),並將所計算的塊籤名存儲到與塊籤名BSCl相關聯的結果欄位(步 驟128)。該結果將隨同數據塊一起在事務數據包中被傳輸(步驟122,圖幻。籤名背景模 塊56還依照用於籤名背景表62表目TSCl的事務籤名規則,用遞增的事務籤名值(即,針 對所取出的數據塊計算的)更新籤名背景表62表目TSCl的結果欄位(步驟140)。
如果要取出更多的數據塊(步驟142),DMA模塊60經由主機接口 48從主機存儲 器44讀取輸入數據72的下一個數據塊(步驟144),並且該方法返回到步驟134。否則,籤 名背景模塊56完成事務籤名的計算(即,在處理輸入數據72中的最後一個數據塊並計算 事務籤名的最後增量之後),並將所計算的事務籤名存儲到籤名背景表62表目TSCl (步驟 146)。該事務籤名將一般在事務的最後一個數據包中被傳輸。
儘管圖6中示意性圖解的流程圖描述了包括既受不同種類的塊籤名又受一個事 務籤名保護的數據塊的事務,但本發明的實施方案還包括其它場景。例如,一個事務可以包 括同類的數據塊,或僅受事務籤名保護的數據塊(即,沒有塊籤名),或僅受(同類的或不同 種類的)塊籤名保護的數據塊(即,沒有事務籤名)。當事務包括受同類的塊籤名保護的數 據塊時,在取出下一個數據塊(步驟144)之後,圖6中描述的方法以步驟146繼續,因為在 取出每個數據塊時不需要定位BSC表表目。
當處理一給定事務時,HCA 22獲得籤名背景表62中的所需表目的「所有權」。這 些參數在事務被啟動時(例如,當在主機接口 48上提出第一 I/O操作請求時)被轉至硬體 所有者,並由硬體佔有,直到事務完成。事務完成後,籤名計算結果(即,籤名計算和錯誤報 告)即被存儲在其各自的表中,從而使得所述結果可由軟體查詢和/或供之後的事務再使用。
以下權利要求中所有裝置或步驟加功能的要素的相應結構、材料、行為和等同物 意在包括任何這樣的結構、材料或行為其如具體要求的那樣與其它所要求的要素相結合 執行所述功能。儘管已出於說明和描述的目的給出了對本發明的描述,但該描述並不意在 以排他的或以所公開的形式限制本發明。多種修改和變化對本領域技術人員來說將是明顯 的,而不偏離本發明的範圍和實質。實施方案被選擇和描述,以最佳地解釋本發明的原理和 實際應用,以及使本領域其他技術人員能夠關於具有如適合所預期的特定使用的各種變化 的各種實施方案理解本發明。
所附權利要求意在覆蓋本發明所有落入本發明的實質和範圍內的特徵和優點。因 為多種修改和變化將是本領域技術人員易於想到的,所以意在本發明不限於本文中描述的 有限數量的實施方案。因此,應意識到,可以採取落入本發明的實質和範圍內的所有合適的 變化、修改和等同物。
權利要求
1.網絡通信設備,包括主機接口,該主機接口被聯接以與具有主機存儲器的主機處理器通信,以便接收執行 事務的工作請求,在該事務中,包括至少第一數據塊和最後一個數據塊的多個數據塊將通 過包網絡傳送;網絡接口,該網絡接口聯接到該包網絡;以及處理電路,該處理電路被配置以處理多個數據包以便執行該事務,在該事務中的每個 數據包包含所述多個數據塊的一部分,並且所述多個數據包包括至少第一包和最後一個 包,該第一包和最後一個包分別包含該事務的第一數據塊和最後一個數據塊,並且該處理 電路被配置以在處理所述多個數據包的同時針對所述多個數據塊計算事務籤名,使得在完 成該事務籤名的計算之前,至少所述第一數據塊通過所述接口之一從該網絡通信設備中傳 出ο
2.如權利要求1所述的網絡通信設備,其中該處理電路被配置以從該主機存儲器讀取 所述多個數據塊,以生成所述多個數據包,以及計算所述事務籤名並將其插入所述最後一 個數據包,同時在完成該事務籤名的計算之前,通過該網絡接口傳輸至少所述第一數據包。
3.如權利要求1所述的網絡通信設備,其中該處理電路被配置以從該網絡接口接收所 述多個數據包以及計算所述事務籤名,同時將所述多個數據塊傳輸到該主機存儲器,使得 在完成該事務籤名的計算之前,至少所述第一數據塊被寫到該主機存儲器。
4.如權利要求1所述的網絡通信設備,其中該處理電路被配置以除了計算所述事務籤 名外還計算所述多個數據塊各自的塊籤名,以及將這些塊籤名插入所述多個數據包。
5.如權利要求4所述的網絡通信設備,其中該事務中的所述塊籤名是不同種類的。
6.如權利要求1所述的網絡通信設備,其中所述多個數據塊由該處理電路以第一事務 籤名接收,並且該處理電路被配置以移除、讀取和驗證該第一事務籤名,以及計算不同於該 第一籤名的第二事務籤名並將其附加到所述多個數據塊。
7.如權利要求6所述的網絡通信設備,其中該處理電路被配置以在處理所述多個數據 包後傳送完成報告到該主機處理器,以及一發現該第一籤名的驗證中的錯誤就在該完成報 告中插入錯誤指示。
8.如權利要求1所述的網絡通信設備,包括控制存儲器,該控制存儲器被配置以存儲 籤名背景,其中該處理電路被配置以讀取並應用該籤名背景以計算所述事務籤名。
9.如權利要求8所述的網絡通信設備,其中該處理電路可被配置以在該控制存儲器中 存儲針對至少所述第一包計算的臨時事務籤名結果,以及讀取該臨時事務籤名結果並將其 應用於完成針對所述最後一個包的事務籤名的計算。
10.網絡通信設備,包括主機接口,該主機接口被聯接以與具有主機存儲器的主機處理器通信,以便接收執行 事務的工作請求,在該事務中,一個或多個數據塊將通過包網絡傳送;網絡接口,該網絡接口聯接到該包網絡;以及處理電路,該處理電路被配置以處理包含所述一個或多個數據塊的一個或多個數據包 以便執行該事務,並且該處理電路被配置以讀取和驗證通過該主機接口和網絡接口中的一 個隨同所述一個或多個數據塊接收的第一籤名,以及針對所述一個或多個數據塊計算不同 於該第一籤名的第二籤名,以及通過該主機接口和網絡接口中的另一個隨同所述一個或多個數據塊傳送該第二籤名。
11.如權利要求10所述的網絡通信設備,其中該第一和第二籤名包括針對所述多個數 據塊中的每個計算的塊籤名。
12.如權利要求10所述的網絡通信設備,其中該第一和第二籤名包括針對多個所述數 據塊計算的事務籤名。
13.如權利要求10所述的網絡通信設備,其中該處理電路被配置以在處理所述一個或 多個數據包後傳送完成報告到該主機處理器,以及一發現該第一籤名的驗證中的錯誤就在 該完成報告中插入錯誤指示。
14.網絡通信設備,包括主機接口,該主機接口被聯接以與具有主機存儲器的主機處理器通信,以便接收執行 事務的工作請求,在該事務中,一個或多個數據塊將通過包網絡傳送;網絡接口,該網絡接口聯接到該包網絡;控制存儲器,該控制存儲器被配置以存儲籤名背景;以及處理電路,該處理電路被配置以處理包含所述一個或多個數據塊的一個或多個數據包 以便執行該事務,並被配置以從該控制存儲器讀取該籤名背景,以及將該籤名背景應用於 計算針對所述多個數據塊中的一個或多個的籤名。
15.如權利要求14所述的網絡通信設備,其中該籤名背景指示將由該處理電路用於計 算該籤名的規則。
16.如權利要求15所述的網絡通信設備,其中所述一個或多個數據塊包括至少第一數 據塊和第二數據塊,並且該控制存儲器被配置以存儲多個籤名背景,該多個籤名背景包括 至少第一和第二籤名背景,該第一和第二籤名背景包括將由該處理電路分別應用於所述第 一和第二數據塊的、用於籤名計算的不同規則。
17.如權利要求14所述的網絡通信設備,其中該工作請求包括存儲器關鍵字,該存儲 器關鍵字與所述多個數據塊相關聯並指示該主機存儲器中的位置,其中該存儲器關鍵字包 括指向該籤名背景的指示字,該指示字供該處理電路用於讀取該籤名背景。
18.如權利要求14所述的網絡通信設備,其中該籤名背景包括塊籤名背景,該塊籤名 背景由該處理電路用於計算針對所述多個數據塊中的至少一個的塊籤名。
19.如權利要求18所述的網絡通信設備,其中該事務包括多個不同種類的數據塊,該 多個不同種類的數據塊具有不同的各自的塊籤名背景。
20.如權利要求14所述的網絡通信設備,其中該籤名背景包括事務籤名背景,該事務 籤名背景由該處理電路用於計算針對該事務中的所述多個數據塊的事務籤名。
21.用於通信的方法,包括從具有主機存儲器的主機處理器接收執行事務的工作請求,在該事務中,包括至少第 一數據塊和最後一個數據塊的多個數據塊將經由網絡接口設備通過包網絡傳送;在該網絡接口設備中,處理多個數據包以便執行該事務,該事務中的每個數據包包含 所述多個數據塊的一部分,並且所述多個數據包包括至少第一包和最後一個包,該第一包 和最後一個包分別包含該事務的所述第一數據塊和最後一個數據塊;以及在該網絡接口設備中,在處理所述多個數據包的同時針對所述多個數據塊計算事務籤 名,使得在完成該事務籤名的計算之前,至少所述第一數據塊通過一接口從該網絡通信設備中傳出。
22.如權利要求21所述的方法,其中處理所述多個數據包包括從該主機存儲器讀取所述多個數據塊,生成所述多個數據包,並將該事務籤名插入所 述最後一個數據包,同時在完成該事務籤名的計算之前,將至少所述第一數據包傳輸到該 包網絡。
23.如權利要求21所述的方法,其中處理所述多個數據包包括 從該網絡接口接收所述多個數據包;以及計算所述事務籤名,同時將所述多個數據塊傳輸到該主機存儲器,使得在完成該事務 籤名的計算之前,至少所述第一數據塊被寫到該主機存儲器。
24.如權利要求21所述的方法,其中處理所述多個數據包包括 除計算所述事務籤名外還計算所述多個數據塊各自的塊籤名;以及 將這些塊籤名插入所述多個數據包。
25.如權利要求M所述的方法,其中該事務中的所述塊籤名是不同種類的。
26.如權利要求21所述的方法,其中處理所述多個數據包包括 以第一事務籤名接收所述多個數據塊;驗證該第一事務籤名;從所述多個數據塊移除該第一籤名;計算不同於該第一事務籤名的第二事務籤名;以及將該第二事務籤名附加到所述多個數據塊。
27.如權利要求沈所述的方法,包括在處理所述多個數據包後傳送完成報告到該主機 處理器,以及一發現該第一事務籤名的驗證中的錯誤就在該完成報告中插入錯誤指示。
28.如權利要求21所述的方法,其中處理所述多個數據包包括將籤名背景存儲到該 網絡接口設備的控制存儲器,以及讀取並應用該籤名背景以計算所述事務籤名。
29.如權利要求觀所述的方法,其中處理所述多個數據包包括在該控制存儲器中存儲針對至少所述第一包計算的臨時事務籤名結果;以及 使用該臨時事務籤名結果完成針對所述最後一個包的事務籤名的計算。
30.用於通信的方法,包括從具有主機存儲器的主機處理器接收執行事務的工作請求,在該事務中,一個或多個 數據塊將經由網絡接口設備通過包網絡傳送,該網絡接口設備具有主機接口和網絡接口 ; 以及在該網絡接口設備中處理包含所述一個或多個數據塊的一個或多個數據包以便執行 該事務;在該網絡接口設備中讀取和驗證由該網絡接口設備通過該主機接口和網絡接口中的 一個隨同所述一個或多個數據塊接收的第一籤名;在該網絡接口設備中針對所述一個或多個數據塊計算不同於該第一籤名的第二籤名;以及通過該主機接口和網絡接口中的另一個從該網絡接口設備隨同所述一個或多個數據 塊傳送該第二籤名。
31.如權利要求30所述的方法,其中該第一和第二籤名包括針對所述多個數據塊中的每個計算的塊籤名。
32.如權利要求30所述的方法,其中該第一和第二籤名包括針對所述多個數據塊中的 多個計算的事務籤名。
33.如權利要求30所述的方法,包括在處理所述一個和多個數據包後傳送完成報告到 該主機處理器,其中一發現該第一籤名的驗證中的錯誤就在該完成報告中插入錯誤指示。
34.用於通信的方法,包括從具有主機存儲器的主機處理器接收執行事務的工作請求,在該事務中,一個或多個 數據塊將經由網絡接口設備通過包網絡傳送,該網絡接口設備具有控制存儲器;將籤名背景存儲在該控制存儲器中;在該網絡接口設備中處理包含所述一個或多個數據塊的一個或多個數據包以便執行 該事務;以及在該網絡接口設備中,使用存儲在該控制存儲器中的所述籤名背景,針對所述多個數 據塊中的一個或多個計算籤名。
35.如權利要求34所述的方法,其中該籤名背景指示供用於計算該籤名的規則,並且 其中計算該籤名包括應用該規則。
36.如權利要求35所述的方法,其中所述一個或多個數據塊包括至少第一數據塊和第 二數據塊,並且其中存儲該籤名背景包括存儲多個籤名背景,該多個籤名背景包括至少第 一和第二籤名背景,該第一和第二籤名背景包括將分別應用於所述第一和第二數據塊的、 用於籤名的計算的不同規則。
37.如權利要求34所述的方法,其中該工作請求包括存儲器關鍵字,該存儲器關鍵字 與所述多個數據塊相關聯並指示該主機存儲器中的位置,其中該存儲器關鍵字包括指向該 籤名背景的指示字,該指示字供該網絡接口設備用於讀取該籤名背景。
38.如權利要求34所述的方法,其中該籤名背景包括塊籤名背景,並且其中計算該籤 名包括利用該塊籤名背景針對所述多個數據塊中的至少一個計算塊籤名。
39.如權利要求38所述的方法,其中該事務包括多個不同種類的數據塊,該多個不同 種類的數據塊具有不同的各自的塊籤名背景。
40.如權利要求34所述的方法,其中該籤名背景包括事務籤名背景,並且其中計算該 籤名包括利用該事務籤名背景針對該事務中的所述多個數據塊計算事務籤名。
全文摘要
本發明涉及一種網絡通信設備,其包括主機接口,該主機接口被聯接以與具有主機存儲器的主機處理器通信,以便接收執行事務的工作請求,在該事務中,多個數據塊將通過包網絡傳送。處理電路被配置以處理多個數據包以便執行該事務,該事務中的每個數據包包含上述多個數據塊的一部分,並且所述多個數據包包括至少第一包和最後一個包,該第一包和最後一個包分別包含該事務的第一數據塊和最後一個數據塊。該處理電路被配置以在處理所述數據包的同時針對所述多個數據塊計算事務籤名,使得在完成該事務籤名的計算之前,至少所述第一數據塊通過接口之一從該網絡通信設備中傳出。
文檔編號H04L29/06GK102035875SQ201010505279
公開日2011年4月27日 申請日期2010年9月30日 優先權日2009年10月4日
發明者A·沙哈爾, M·卡根, N·布洛赫 申請人:梅蘭諾克斯科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀