国产精品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>

      一種遠(yuǎn)程直接存儲(chǔ)器存取的方法及裝置的制造方法

      文檔序號(hào):9711590閱讀:773來(lái)源:國(guó)知局
      一種遠(yuǎn)程直接存儲(chǔ)器存取的方法及裝置的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及電子技術(shù)領(lǐng)域,尤其涉及一種遠(yuǎn)程直接存儲(chǔ)器存取的方法及裝置。
      【背景技術(shù)】
      [0002]遠(yuǎn)端直接數(shù)據(jù)存取(Remote direct memory access,RDMA)一般用于網(wǎng)絡(luò)中主機(jī)之間的數(shù)據(jù)傳輸。在數(shù)據(jù)傳輸過(guò)程中,數(shù)據(jù)源端和數(shù)據(jù)目的端的主機(jī)CPU不需要參與數(shù)據(jù)的搬移和復(fù)制,從而減輕CPU的負(fù)擔(dān),降低網(wǎng)絡(luò)上主機(jī)之間數(shù)據(jù)交換的延時(shí)。根據(jù)底層承載的協(xié)議的不同,RDMA技術(shù)可以基于TCP協(xié)議和無(wú)損融合以太網(wǎng)實(shí)現(xiàn)。三種實(shí)現(xiàn)方式在傳輸層及以上是相同的。
      [0003]RDMA協(xié)議中,如圖1所示,任意兩個(gè)主機(jī)之間需要交互的應(yīng)用之間需要建立一個(gè)隊(duì)列對(duì)(QP)進(jìn)行通信。
      [0004]在建立的隊(duì)列對(duì)中包括主機(jī)和設(shè)備,主機(jī)和設(shè)備之間的通信,需要主機(jī)先將報(bào)文傳遞到設(shè)備,設(shè)備完成處理后再將報(bào)文返回給主機(jī),標(biāo)準(zhǔn)的RDMA寫請(qǐng)求操作流程,完成一次報(bào)文從主機(jī)到設(shè)備,設(shè)備處理完后再到主機(jī)處理流程如圖2所示:
      [0005]步驟201,設(shè)備將本地?cái)?shù)據(jù)緩存地址B傳給主機(jī),用于緩存主機(jī)發(fā)給設(shè)備處理的數(shù)據(jù)的存儲(chǔ);
      [0006]步驟202,主機(jī)返回響應(yīng)給設(shè)備,表面主機(jī)已經(jīng)正確接收到地址信息;
      [0007]步驟203,主機(jī)將需要設(shè)備處理的數(shù)據(jù)通過(guò)RDMA寫請(qǐng)求報(bào)文方式寫到設(shè)備上的地址B中;
      [0008]步驟204,設(shè)備返回響應(yīng)給主機(jī),表面設(shè)備已經(jīng)正確接收到報(bào)文,設(shè)備對(duì)報(bào)文進(jìn)行處理,比如壓縮解壓縮、加解密等硬件加速處理;
      [0009]步驟205,主機(jī)將地址A傳遞給設(shè)備,用于設(shè)備處理完成后返回給主機(jī)時(shí)的存儲(chǔ)地址;
      [0010]步驟206,設(shè)備返回響應(yīng)給主機(jī),表面設(shè)備已經(jīng)正確接收到地址信息;
      [0011]步驟207,設(shè)備將處理完成的數(shù)據(jù)通過(guò)RDMA寫請(qǐng)求報(bào)文方式寫到主機(jī)上的地址A中;
      [0012]步驟208,主機(jī)返回響應(yīng)給設(shè)備,表面主機(jī)已經(jīng)正確接收到處理完成后的報(bào)文。
      [0013]現(xiàn)有技術(shù)中的主機(jī)和設(shè)備之間的數(shù)據(jù)傳遞基于標(biāo)準(zhǔn)的RDMA協(xié)議,數(shù)據(jù)傳遞過(guò)程交互頻繁,對(duì)數(shù)據(jù)交互的時(shí)延和速率都有很大的影響。并且,設(shè)備接收到報(bào)文后可以直接處理報(bào)文,或者只需要在設(shè)備的接口進(jìn)行協(xié)議無(wú)關(guān)的緩存,并不需要按照RDMA協(xié)議進(jìn)行地址的申請(qǐng)、注冊(cè)等管理,所以對(duì)應(yīng)這種主機(jī)和設(shè)備之間的數(shù)據(jù)交互,使用標(biāo)準(zhǔn)的RDMA造成了部分無(wú)效的交互,浪費(fèi)了傳輸帶寬資源和數(shù)據(jù)交互的延時(shí)。

      【發(fā)明內(nèi)容】

      [0014]本發(fā)明提供一種遠(yuǎn)程直接存儲(chǔ)器存取的方法及裝置,本發(fā)明所提供的方法和裝置解決現(xiàn)有技術(shù)中使用標(biāo)準(zhǔn)的RDMA造成了部分無(wú)效的交互,浪費(fèi)了傳輸帶寬資源和數(shù)據(jù)交互的延時(shí)問(wèn)題。
      [0015]第一方面,提供一種遠(yuǎn)程直接存儲(chǔ)器存取的方法,該方法應(yīng)用于第一電子設(shè)備中,第一電子設(shè)備與第二電子設(shè)備之間建立有遠(yuǎn)程直接存儲(chǔ)器存取RDMA連接;其中,一種典型的應(yīng)用場(chǎng)景是第一電子設(shè)備可以是用于進(jìn)行業(yè)務(wù)加速的加速器(例如,基于FPGA等硬件實(shí)現(xiàn)的,具備比通用CPU處理能力更強(qiáng)的專用加速器),加速器通常只接收請(qǐng)求,然后返回結(jié)果,是一個(gè)被動(dòng)執(zhí)行的單元;第二電子設(shè)備可以是業(yè)務(wù)請(qǐng)求方,通常也稱為主機(jī),實(shí)際產(chǎn)品中,可以是服務(wù)器、終端等需要進(jìn)行業(yè)務(wù)處理的各類產(chǎn)品。
      [0016]該方法包括:
      [0017]第一電子設(shè)備通過(guò)所述RDMA連接接收到第二電子設(shè)備發(fā)送的第一RDMA寫請(qǐng)求報(bào)文后,從該第一 RDMA寫請(qǐng)求報(bào)文的RDMA協(xié)議頭中獲取第一地址;
      [0018]其中,第一電子設(shè)備在收到第一RDMA寫請(qǐng)求報(bào)文時(shí),會(huì)先解析報(bào)文,得到相應(yīng)字段的信息,在解析報(bào)文時(shí),可以一次性將全部的信息完成解析出來(lái),也可以先解析一部分(如先解析報(bào)文頭),然后再根據(jù)需要解析另外一些部分的信息(如凈荷字段),這些都為本領(lǐng)域技術(shù)人員所公知的技術(shù),本發(fā)明實(shí)施例并不對(duì)此進(jìn)行限定及詳細(xì)描述。
      [0019]將所述第一地址與預(yù)存的標(biāo)志地址進(jìn)行比較,如果第一地址與所述標(biāo)志地址相同,則從所述第一RDMA寫請(qǐng)求報(bào)文的協(xié)議擴(kuò)展頭中獲取第二地址,對(duì)第一RDMA寫請(qǐng)求報(bào)文的凈荷進(jìn)行處理得到處理后得到的結(jié)果數(shù)據(jù);
      [0020]上述兩個(gè)步驟中的“預(yù)存的標(biāo)志地址”可以理解為一個(gè)“偽地址”,該地址的作用僅在于滿足協(xié)議的要求(因?yàn)镽DMA協(xié)議規(guī)定在頭中需要攜帶這個(gè)地址),同時(shí),該地址也是通信雙約定,共同知道的一個(gè)地址,在實(shí)際中,會(huì)將這個(gè)約定地址作為“預(yù)存的標(biāo)志地址”來(lái)判斷收到的第一地址是不是這個(gè)偽地址。在具體實(shí)現(xiàn)時(shí),“預(yù)存的標(biāo)志地址”可以保存在一個(gè)存儲(chǔ)在易失或非易失存器中的文件中,或者也可以通過(guò)編程的方式寫入代碼,在程序執(zhí)行時(shí),被存在一個(gè)臨時(shí)的存儲(chǔ)區(qū)中;當(dāng)“第一地址”與“預(yù)存的標(biāo)志地址”相同時(shí),就判斷這是一個(gè)“偽地址”,然后進(jìn)行后續(xù)操作;
      [0021]上述步驟中的“協(xié)議擴(kuò)展頭”可以是用戶自定義的一個(gè)字段,例如,可以采用協(xié)議預(yù)留的字段,或者也可以在凈荷字段中預(yù)留一部分來(lái)作為這個(gè)協(xié)議擴(kuò)展頭;
      [0022]上述步驟中的,“第二地址”即為要寫入到第二設(shè)備中的存儲(chǔ)地址,這是一個(gè)真實(shí)的地址(并不是前面提到的“偽地址”),后續(xù)也是按照正常的流程將其放入到RDMA協(xié)議頭中(而不是放入到“擴(kuò)展協(xié)議頭”);
      [0023]用所述第二地址和所述結(jié)果數(shù)據(jù)構(gòu)造第二RDMA寫請(qǐng)求報(bào)文,并利用所述第二地址將所述第二 RDMA寫請(qǐng)求報(bào)文寫到所述第二電子設(shè)備中所述第二地址對(duì)應(yīng)的存儲(chǔ)區(qū)域中。
      [0024]結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,第一電子設(shè)備接收到第二電子設(shè)備發(fā)送的第一RDMA寫請(qǐng)求報(bào)文之前,當(dāng)?shù)谝浑娮釉O(shè)備和第二電子設(shè)備協(xié)商建立RDMA連接時(shí),所述該方法還包括:
      [0025]第一電子設(shè)備接收到第二電子設(shè)備發(fā)起的RDMA建鏈請(qǐng)求報(bào)文,在響應(yīng)報(bào)文中攜帶第一電子設(shè)備的屬性標(biāo)志;其中,該屬性標(biāo)志用于標(biāo)示所述第一電子設(shè)備對(duì)于接收到的RDMA寫請(qǐng)求報(bào)文直接處理不進(jìn)行緩存;
      [0026]接收第二電子設(shè)備反饋的所述標(biāo)志地址;其中,所述標(biāo)志地址是所述第二電子設(shè)備根據(jù)所述響應(yīng)報(bào)文中的屬性標(biāo)志構(gòu)造的地址;
      [0027]將所述標(biāo)志地址記錄在建立地RDMA連接對(duì)應(yīng)的上下文信息中。
      [0028]結(jié)合第一方面的第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述將所述第一地址與預(yù)存的標(biāo)志地址進(jìn)行比較之前,該方法還包括:
      [0029]從所述第一 RDMA寫請(qǐng)求報(bào)文中獲取所述RDMA連接對(duì)應(yīng)的連接號(hào);
      [0030]利用所屬連接號(hào)查詢所述RDMA連接對(duì)應(yīng)的上下文信息,從所述上下文信息中獲取所述標(biāo)志地址。
      [0031]第二方面,提供一種遠(yuǎn)程直接存儲(chǔ)器存取的裝置,該裝置應(yīng)用于第一電子設(shè)備中,第一電子設(shè)備與第二電子設(shè)備之間建立有遠(yuǎn)程直接存儲(chǔ)器存取RDMA連接,該裝置包括:
      [0032]獲取模塊,用于通過(guò)所述RDMA連接接收到第二電子設(shè)備發(fā)送的第一RDMA寫請(qǐng)求報(bào)文后,從該第一 RDMA寫請(qǐng)求報(bào)文的RDMA協(xié)議頭中獲取第一地址;
      [0033]數(shù)據(jù)處理模塊,用于將所述第一地址與預(yù)存的
      當(dāng)前第1頁(yè)1 2 3 4 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1