System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及計算機,尤其涉及一種數據讀取方法、裝置及相關設備。
技術介紹
1、存儲區域網絡(storage?area?network,san)是一種數據存儲的網絡架構,采用該網絡架構的數據存儲系統可以包括計算設備和存儲設備。其中,存儲設備可以包括網卡、處理器和存儲器陣列。
2、計算設備在從存儲設備中讀取數據時,需要通過計算設備的網卡向存儲設備發送讀操作請求,存儲設備的網卡接收到計算設備的網卡發送的讀操作請求,將讀操作請求傳輸至處理器,由處理器對讀操作請求進行解析,獲得物理地址,基于該物理地址對存儲器陣列進行訪問,從存儲器陣列中讀取數據,并將讀取的數據傳輸給存儲設備的網卡,由存儲設備的網卡將讀取的數據發送給計算設備。
3、上述數據讀取過程中,由處理器基于讀操作請求訪問存儲器陣列,存儲設備的網卡與處理器之間、以及處理器與存儲器陣列之間存在多次交互,消耗存儲設備的處理器的計算資源,影響存儲設備的性能。
技術實現思路
1、本申請提供一種數據讀取方法、裝置及相關設備,可以節省存儲設備的存儲控制器的計算資源。
2、第一方面,本申請提供一種數據讀取方法,該方法可以由網卡執行,網卡在接收到第一讀操作請求時,獲取第一讀操作請求中的第一目標邏輯地址,確定第一目標邏輯地址對應的第一目標物理地址,基于第一目標物理地址,從存儲設備的存儲空間中讀取第一讀操作請求指示讀取的數據。
3、本申請提供的數據讀取方法,網卡在接收到讀操作請求時,可以根據讀操作請求中的目標邏輯
4、在一種可選的實現方式中,網卡在獲取第一讀操作請求中的第一目標邏輯地址之后,可以查詢第一目標邏輯地址對應的第一目標虛擬地址,并查詢第一目標虛擬地址對應的第一目標物理地址。
5、上述的邏輯地址用于作為計算設備訪問存儲設備的存儲空間的索引,計算設備為生成第一讀操作請求的計算設備。上述的虛擬地址用于作為網卡訪問存儲設備的存儲空間的索引。上述的物理地址用于指向存儲設備的存儲空間所包含的任意一個存儲單元。示例性地,邏輯地址可以包括邏輯硬盤單元標識lun?id和邏輯塊地址lba;虛擬地址可以是本地虛擬地址lva或全局虛擬地址gpa,物理地址可以是物理地址pa。
6、上述實現方式中,網卡可以通過將第一目標邏輯地址轉換為第一目標虛擬地址,再將第一目標虛擬地址轉換為第一目標物理地址,來確定讀操作請求要訪問的目標物理地址,進而實現基于目標物理地址,直接從存儲設備的存儲空間中讀取數據的目的。
7、在一種可選的實現方式中,第一讀操作請求由計算設備產生,存儲設備與計算設備可以通過網絡連接,執行上述數據讀取方法的網卡可以是計算設備的網卡,網卡與計算設備的處理器可以通過計算機總線通信。在另一種可選的實現方式中,執行上述數據讀取方法的網卡可以是存儲設備的網卡,所述網卡與所述存儲設備的處理器可以通過計算機總線通信。
8、在一種可選的實現方式中,邏輯地址與虛擬地址的映射關系記錄于第一映射表;虛擬地址與物理地址的映射關系記錄于第二映射表;如果執行上述數據讀取方法的網卡是存儲設備的網卡,上述的第一映射表可以保存在網卡內,第二映射表可以保存在存儲設備中,存儲設備的網卡可以通過直接內存訪問dma的方式,在第二映射表中,查詢第一目標虛擬地址對應的第一目標物理地址。
9、上述實現方式中,考慮到第二映射表占用的存儲空間較大,而網卡的內存空間有限,將第二映射表保存在存儲設備中,可以節省網卡的內存空間。存儲設備的網卡可以通過dma方式查詢第二映射表,既可以不占用處理器的計算資源,又可以快速查詢第二映射表。
10、在一種可選的實現方式中,邏輯地址與虛擬地址的映射關系記錄于第一映射表;虛擬地址與物理地址的映射關系記錄于第二映射表;如果執行上述數據讀取方法的網卡是計算設備的網卡,第一映射表可以保存在網卡內,第二映射表可以保存在計算設備的系統內存中,網卡可以通過dma的方式,在第二映射表中,查詢第一目標虛擬地址對應的第一目標物理地址。
11、上述實現方式中,將第二映射表保存在計算設備的系統內存中,可以節省網卡的內存空間。計算設備的網卡可以通過dma方式查詢第二映射表,可以快速查詢第二映射表。
12、在一種可選的實現方式中,網卡中還保存有第二映射表的有效狀態信息。網卡在接收到第二讀操作請求時,根據第二映射表的有效狀態信息,確定第二映射表是否有效;如果第二映射表有效,則在第一映射表中,查詢第二讀操作請求中的第二目標邏輯地址對應的第二目標虛擬地址,在第二映射表中,查詢第二目標虛擬地址對應的第二目標物理地址;基于第二目標物理地址,從存儲設備的存儲空間中讀取第二讀操作請求指示讀取的數據。
13、在另一種可選的實現方式中,如果第二映射表的有效狀態信息指示第二映射表無效,或者,在第一映射表中,未查詢到第二目標邏輯地址對應的第二目標虛擬地址,則將第二讀操作請求發送至存儲設備;接收存儲設備返回的執行結果;執行結果中包括存儲設備基于第二讀操作請求從存儲設備的存儲空間中讀取的數據。
14、上述實現方式中,網卡可以通過查詢第二映射表的有效狀態信息,確定是否需要查詢第一映射表和第二映射表,如果第二映射表的有效狀態信息為無效,則不執行查詢第一映射表和第二映射表的步驟,以避免浪費網卡的計算資源。在第二映射表的有效狀態信息為無效或未查詢到第二目標邏輯地址對應的第二目標虛擬地址時,由存儲設備執行第二讀操作請求,可以保障數據讀取過程的可靠性。
15、在一種可選的實現方式中,第二映射表中還保存有每個虛擬地址與物理地址的映射關系的有效性信息;網卡在接收到第三讀操作請求時,獲取第三讀操作請求中的第三目標邏輯地址,在第一映射表中,查詢第三目標邏輯地址對應的第三目標虛擬地址,在第二映射表中,查詢第三目標虛擬地址對應的第三目標物理地址,如果第三目標虛擬地址的映射關系有效,則基于第三目標物理地址,從存儲設備的存儲空間中讀取第三讀操作請求指示讀取的數據的步驟。
16、在另一種可選的實現方式中,如果第三目標虛擬地址的映射關系失效,或者,在第二映射表中,未查詢到第三目標虛擬地址對應的第三目標物理地址,則將第三讀操作請求發送至存儲設備;接收存儲設備返回的執行結果。
17、上述實現方式中,通過在第二映射表中保存每個虛擬地址的映射關系的有效性信息,在未查詢到第三目標虛擬地址對應的第三目標物理地址,或第三目標虛擬地址的本文檔來自技高網...
【技術保護點】
1.一種數據讀取方法,其特征在于,應用于網卡,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述確定所述第一目標邏輯地址對應的第一目標物理地址,包括:
3.根據權利要求2所述的方法,其特征在于,所述邏輯地址用于作為計算設備訪問所述存儲設備的存儲空間的索引;所述計算設備為生成所述第一讀操作請求的計算設備;所述虛擬地址用于作為所述網卡訪問所述存儲設備的存儲空間的索引;所述物理地址用于指向所述存儲設備的存儲空間所包含的任意一個存儲單元。
4.根據權利要求2或3所述的方法,其特征在于,所述邏輯地址包括邏輯硬盤單元標識LUN?ID和邏輯塊地址LBA;所述虛擬地址為本地虛擬地址LVA或全局虛擬地址GVA;所述物理地址為物理地址PA。
5.根據權利要求1~4任一項所述的方法,其特征在于,所述第一讀操作請求由計算設備產生,所述計算設備與所述存儲設備通過網絡連接,其中:
6.根據權利要求2~4任一項所述的方法,其特征在于,所述網卡為所述存儲設備的網卡,所述邏輯地址與虛擬地址的映射關系記錄于第一映射表;所述虛擬地址與物理地址的映
7.根據權利要求2~4任一項所述的方法,其特征在于,所述網卡為計算設備的網卡,所述邏輯地址與虛擬地址的映射關系記錄于第一映射表;所述虛擬地址與物理地址的映射關系記錄于第二映射表;所述第一映射表保存在所述網卡內,所述第二映射表保存在所述計算設備的系統內存中,所述查詢所述第一目標虛擬地址對應的第一目標物理地址的操作,包括:
8.根據權利要求2~7中任一項所述的方法,其特征在于,所述方法還包括:
9.根據權利要求2~8中任一項所述的方法,其特征在于,所述方法還包括:
10.一種數據讀取裝置,其特征在于,應用于網卡,所述裝置包括:
11.根據權利要求10所述的裝置,其特征在于,所述請求處理單元,具體用于:
12.根據權利要求10或11所述的裝置,其特征在于,所述第一讀操作請求由計算設備產生,所述計算設備與所述存儲設備通過網絡連接,其中:
13.一種芯片,其特征在于,應用于網卡,所述芯片包括處理器和供電電路;所述供電電路用于為所述處理器供電,所述處理器用于執行計算機程序,以實現如權利要求1~9中任一項所述的方法。
14.一種網卡,其特征在于,用于安裝于設備的總線接口,所述網卡包括內存和處理器,所述內存上存儲有計算機程序;所述處理器用于執行所述內存中存儲的所述計算機程序,以實現如權利要求1~9中任一項所述的方法。
15.一種存儲設備,其特征在于,包括網卡和存儲器;所述網卡用于執行計算機程序,以通過執行如權利要求1~4、6、8~9中任一項所述的方法,從所述存儲器的存儲空間中讀取數據。
16.一種計算設備,其特征在于,包括網卡;所述計算設備通過所述網卡與存儲設備通信,所述網卡用于執行計算機程序,以實現如權利要求1~4、7~9中任一項所述的方法。
17.一種數據存儲系統,其特征在于,包括存儲設備和計算設備;所述計算設備與所述存儲設備通過網絡連接;
18.一種計算機可讀存儲介質,其特征在于,存儲有計算機可執行指令,所述計算機可執行指令用于使計算機執行如權利要求1~9中任一項所述的方法。
...【技術特征摘要】
1.一種數據讀取方法,其特征在于,應用于網卡,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述確定所述第一目標邏輯地址對應的第一目標物理地址,包括:
3.根據權利要求2所述的方法,其特征在于,所述邏輯地址用于作為計算設備訪問所述存儲設備的存儲空間的索引;所述計算設備為生成所述第一讀操作請求的計算設備;所述虛擬地址用于作為所述網卡訪問所述存儲設備的存儲空間的索引;所述物理地址用于指向所述存儲設備的存儲空間所包含的任意一個存儲單元。
4.根據權利要求2或3所述的方法,其特征在于,所述邏輯地址包括邏輯硬盤單元標識lun?id和邏輯塊地址lba;所述虛擬地址為本地虛擬地址lva或全局虛擬地址gva;所述物理地址為物理地址pa。
5.根據權利要求1~4任一項所述的方法,其特征在于,所述第一讀操作請求由計算設備產生,所述計算設備與所述存儲設備通過網絡連接,其中:
6.根據權利要求2~4任一項所述的方法,其特征在于,所述網卡為所述存儲設備的網卡,所述邏輯地址與虛擬地址的映射關系記錄于第一映射表;所述虛擬地址與物理地址的映射關系記錄于第二映射表;
7.根據權利要求2~4任一項所述的方法,其特征在于,所述網卡為計算設備的網卡,所述邏輯地址與虛擬地址的映射關系記錄于第一映射表;所述虛擬地址與物理地址的映射關系記錄于第二映射表;所述第一映射表保存在所述網卡內,所述第二映射表保存在所述計算設備的系統內存中,所述查詢所述第一目標虛擬地址對應的第一目標物理地址的操作,包括:
8.根據權利要求2~7中任一項所述的方法,其特征在于,所述方法還...
【專利技術屬性】
技術研發人員:譚春華,葉利杰,覃國,崔文林,
申請(專利權)人:成都華為技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。