[發明專利]一種面向NVMe和RDMA的分布式存儲系統及輕量級同步通信方法有效
| 申請號: | 201910515887.0 | 申請日: | 2019-06-14 |
| 公開(公告)號: | CN110262754B | 公開(公告)日: | 2022-10-04 |
| 發明(設計)人: | 翁楚良;涂云山;儲佳佳;張耀 | 申請(專利權)人: | 華東師范大學 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06;H04L67/1097;H04L67/1095;H04L67/56 |
| 代理公司: | 上海藍迪專利商標事務所(普通合伙) 31215 | 代理人: | 徐筱梅;張翔 |
| 地址: | 200241 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 面向 nvme rdma 分布式 存儲系統 輕量級 同步 通信 方法 | ||
1.一種面向NVMe和RDMA的輕量級同步通信方法,其特征在于,所述方法包括輕量級的I/ O 軟件堆棧、面向NVMe的表格存儲機制、異步和同步的I /O 輪詢模型以及基于RDMA 的數據通信同步策略;
所述輕量級的I / O 軟件堆棧,由存儲和網絡兩個軟件棧組成,存儲軟件?;谟⑻貭朣PDK驅動模塊,在用戶態中,直接將關系表中數據以逐行方式,持久化到NVMe設備的邏輯塊中,網絡軟件棧,基于RDMA提供的verbs接口,在用戶態中,基于通信場景,混合使用單邊和雙邊模型;
所述面向NVMe的表格存儲機制,使用共享內存,減少RDMA 和NVMe 設備間的內存拷貝,將NVMe協議中混合使用的I / O隊列對完全隔離開,劃分為專用于寫入的隊列、專用于讀取的隊列以及共享讀取和寫入的隊列,來自客戶端的請求對寫入較敏感,插入到專用于寫入的提交隊列中排隊,來自客戶端的請求對讀取較敏感,插入到專用于讀取的提交隊列中排隊,來自客戶端的請求對讀取或寫入都不敏感,插入到共享讀取和寫入的提交隊列中排隊;
所述異步和同步的I /O 輪詢模型,在異步輪詢中,將所有完成隊列綁定到某個特定的CPU 核心上,在同步輪詢中,工作線程在提交請求后,該線程輪詢對應的完成隊列;
所述基于RDMA的數據通信同步策略,依據數據通信場景的不同,混合RDMA雙邊和單邊數據同步通信,將分區子表數據從代理服務中寫入遠端存儲服務中,采用雙邊模型主動地寫入方式,從存儲服務中讀取子表數據到代理服務中,采用雙邊模型主動地讀取方式,在主從代理服務間同步數據時,使用單邊模型主動地寫入方式;其中:
所述雙邊模型主動地寫入方式,步驟如下:
第一步:代理服務所在節點的CPU 通過調用ibv_post_send() 函數,主動地將寫入請求連同數據一起發送給遠端的存儲服務;
第二步:存儲服務為該寫入請求分配一段連續的內存空間,將數據填入到本地的內存當中;
第三步:當數據同步到NVMe 固態盤之后,便響應遠端的代理服務;
所述雙邊模型主動地讀取方式,步驟如下:
第一步:代理服務所在服務節點的CPU 通過調用ibv_post_send() 函數,將相應的讀請求發送到遠端的存儲服務中;
第二步:遠端的存儲服務所在節點的CPU 解析該請求,查找待讀取數據的存放位置;
第三步:將讀取的數據隨響應消息一同發送給遠端的代理服務;
所述單邊模型主動地寫入方式,步驟如下:
第一步:主代理服務直接調用rdma_post_write() 函數,主動地將數據寫入到遠端從代理服務節點的內存中。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華東師范大學,未經華東師范大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910515887.0/1.html,轉載請聲明來源鉆瓜專利網。





