• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    通過遠程直接存儲器訪問的傳輸操作的方法、系統和介質技術方案

    技術編號:14676676 閱讀:163 留言:0更新日期:2017-02-19 02:17
    此處所描述的各實施例一般涉及用于在RDMA傳輸之上實現數據操作的協議,例如,SMB的版本。在各實施例中,各系統和方法使用指定用于協商RDMA連接并用于使用經協商的通信來傳送SMB2數據的新消息的協議定義。新協議消息可包括新頭部信息以確定消息大小、消息數和用于通過RDMA來發送SMB2數據的其他消息。該頭部信息用于適應RDMA和SMB2之間的消息大小要求方面的差異。SMB直通(SMB?Direct)協議允許SMB2數據被分段成多個單獨的RDMA消息,接收方可隨后將這些RDMA消息邏輯地串接成單個SMB2請求或SMB2響應。SMB直通協議還可允許SMB2經由高效的RDMA直通放置來傳送應用數據并在該傳送完成時用信號表示該應用數據的可用性。

    【技術實現步驟摘要】
    本申請是申請日為2012.6.6,申請號為201280032558.7(國際申請號為PCT/US2012/041049),名為“通過遠程直接存儲器訪問的任意大小的傳輸操作”申請的分案申請。背景諸如服務器消息塊(SMB)或其版本(例如,SMB2)之類的文件訪問協議可以用作主要用于在網絡上的各節點之間提供對文件以及雜項通信的共享訪問的應用層網絡協議。在歷史上,SMB或SMB2在傳輸控制協議(TCP)傳輸和傳統的網絡基礎結構之上操作。盡管SMB2作為針對通用遠程文件訪問的協議已非常成功,但SMB2尚未廣泛適用于要求高吞吐量和低等待時間文件輸入/輸出的遠程文件訪問。遠程直接存儲器訪問(RDMA)是從一個計算機的存儲器進入另一計算機的存儲器而不涉及該另一計算機的操作系統的直接存儲器訪問。該直接傳送準許通過網絡的高吞吐量、低等待時間數據傳輸,這在性能關鍵的部署中尤其有用。在應用執行RDMA讀或寫請求時,使用有RDMA能力的網絡適配器將應用數據從源存儲器緩沖區直接遞送到目的地存儲器緩沖區,在該傳輸中這些有RDMA能力的網絡適配器不涉及中央存儲單元(CPU)(也被簡稱為處理器)或操作系統。這些RDMA傳輸會減少等待時間并允許快速消息傳輸。不幸地是,RDMA的這些好處尚未被使用SMB2的系統利用,因為SMB2尚未用RDMA來操作。雖然本
    技術介紹
    中著眼于特定的問題,但本專利技術決不旨在限于解決那些特定問題。概述各實施例一般涉及將諸如SMB2操作(或,例如SMB操作的其他版本或文件訪問協議操作)之類的數據操作實現在RDMA傳輸之上的協議和處理。在各實施例中,該協議定義指定用于協商RDMA連接以及用于例如使用經協商的連接來傳送SMB2數據的新消息。在一實施例中,用于將SMB2操作實現在RDMA傳輸之上的協議是SMB直通(SMBDirect)協議。然而,其他實施例提供其他SMB協議、SMB協議版本或其他數據操作協議,而不偏離本公開的精神和范圍。根據一實施例,新的SMB直通消息可包括新的頭部信息,該新的頭部信息可包括但不限于,以下各項中的一個或多個:CreditsRequested(請求的積分)、CreditsGranted(授予的積分)、Flag(標志)、Reserved(保留的)、RemainingDataLength(剩余數據長度)、DataOffset(數據偏移)、和DataLength(數據長度)。由于RDMA傳輸支持接收僅由接收方固定的大小的消息,而SMB2消息的大小可以在從大約一百字節到超過兆字節的非常大消息的非常大的范圍內改變,因此頭部信息被使用。SMB2協議被修改以識別RDMA能力的存在,而SMB直通協議將新的層添加到聯網棧,以允許多個單獨的RDMA消息被邏輯地串接成單個請求或響應以適應RDMA消息的固定大小限制以及SMB2消息收發所固有的不確定大小要求兩者。對SMB2協議的改變以及對SMB直通協議的添加允許數據在各對等體的存儲器之間的直接傳送。在各實施例中,SMB2服務器可使用RDMA來進行從客戶機的存儲器讀取或向客戶機的存儲器寫入,以執行對數據的直接放置。服務器執行到客戶機的RDMA寫以完成SMB2讀,并執行RDMA讀以完成SMB2寫。盡管SMB直通協議允許SMB/SMB2數據在對等體的存儲器之間的直接傳送,但根據各實施例,SMB直通協議可適合于其他協議。根據各實施例,SMB直通協議的雙向、對等特性使其本身適于多種類型的數據傳送操作。RDMA傳輸還再次用僅由接收方固定的值來限制任何時刻可被處理的消息的數目。為了符合RDMA的這個要求,各實施例為各對等體提供在指定發送方可向接收方發送的RDMA消息的數目的協議頭部中交換或分配每一相互對等體所請求的并向每一相互對等體授予的“積分”(其為數值)。積分是動態的,并由每一對等體獨立地管理。用于管理積分并使足夠的積分可用于執行SMB2交換的規則由在此公開的各實施例中的協議來定義。在各實施例中,提供獨立、雙向的積分可準許每一個對等體發送請求和響應,而無需接收對等體的顯式協商或先驗知識和同意。與RDMA相關聯的順序發送可準許交換出乎意料的大的消息,而不會引起RDMA處理中的錯誤,也不會在這種情況發生時采取較不高效的協商傳送。根據各實施例,附加消息可用于協商協議版本和其他參數。協商請求消息可包括例如以下字段:CreditsRequested(請求的積分)、Reserved(保留的)、MinVersion(最小版本)、MaxVersion(最大版本)、OutboundSendSize(出站發送大小)、MaxInboundSendSize(最大入站發送大小)等。相應地,響應于該請求消息而發送的協商響應消息可包括例如CreditsRequested(請求的積分)、CreditsGranted(授予的積分)、Version(版本)、Reserved(保留的)、Status(狀態)、OutboundSendSize(出站發送大小)、InboundSendSize(入站發送大小)等字段。這些參數支持對能力的協商、對資源的端到端優化、和與該協議的未來增強版本的兼容性。提供本概述是為了以簡化的形式介紹將在以下具體實施例中進一步描述的一些概念。本概述并不旨在標識所要求保護的主題的關鍵特征或必要特征,也決不旨在用于限制所要求保護的主題的范圍。附圖簡述可以參考附圖來更容易地描述本專利技術的各實施例,附圖中相同的數字指示相同的項。圖1示出了根據本公開的各實施例的用于通過RDMA來交換SMB2消息的環境或系統的示例邏輯表示。圖2A描繪了根據本公開的各實施例的用于通過RDMA來發送SMB2消息的客戶機系統的示例邏輯表示。圖2B示出了根據本公開的各實施例的用于通過RDMA來接收SMB2消息的服務器系統的邏輯表示。圖3A-3E示出了根據本公開的各實施例的在通過RDMA使用SMB2消息交換數據時發送或接收的消息的邏輯表示。圖4A-4C描繪了解說根據本公開的各實施例的用于通過RDMA使用SMB2協商通信的過程的操作特性的流程圖。圖5A-5D示出了解說根據本公開的各實施例的用于通過RDMA使用SMB2交換數據的過程的操作特性的流程圖。圖6解說了描繪根據本公開的各實施例的用于使用RDMA直接數據傳送來交換數據的過程的操作特性的流程圖。圖7描繪其上可以實現本公開的各實施例的示例計算系統。詳細描述本專利技術現將參考其中示出了各具體實施例的附圖來更完整地描述各示例實施例。然而,其它方面能以許多不同的形式來實現,并且在本專利技術中包括具體的實施例不應被解釋為將這些方面限于在此所述的各實施例。相反,包括附圖中描繪的各實施例是為了提供全面和完整且將預期的范圍完全地傳達給本領域技術人員的公開。虛線可用于示出可選組件或操作。各實施例一般涉及用于通過RDMA連接來交換SMB2數據的系統、方法和協議。RDMA提供傳輸數據方面的優點。例如,RDMA作出從一個存儲器到另一設備或系統的存儲器的傳送。這些傳送并不涉及處理器,并且因此減少了傳輸數據時所涉及的開銷。此外,由于傳輸管理中不涉及處理器,因此RDMA用更少的時鐘周期來傳送數據。因此,RDMA提供低等待時間、高帶寬的連接。一般來說,SMB的版本(諸如,SMB2)是用于在網絡上的各本文檔來自技高網...
    <a  title="通過遠程直接存儲器訪問的傳輸操作的方法、系統和介質原文來自X技術">通過遠程直接存儲器訪問的傳輸操作的方法、系統和介質</a>

    【技術保護點】
    一種用于建立連接以交換數據的計算機實現的方法,所述方法包括:由接收機接收第一數據包,其中所述數據包包括第一字段和數據,其中所述第一字段等于接收機已經接收的分段消息的字節數;確定存儲在所述第一字段中的值是否為零;當所述值為零時:處理所述第一分組中的所述數據;當所述值不為零時:為所述連接分配一個重新組裝緩沖區;將所述數據從所述第一數據包復制到所述重新組裝緩沖區中;接收包括第二數據的第二數據包;以及將所述第二數據從所述第二數據包復制到所述重新組裝緩沖區中。

    【技術特征摘要】
    2011.06.29 US 13/172,7571.一種用于建立連接以交換數據的計算機實現的方法,所述方法包括:由接收機接收第一數據包,其中所述數據包包括第一字段和數據,其中所述第一字段等于接收機已經接收的分段消息的字節數;確定存儲在所述第一字段中的值是否為零;當所述值為零時:處理所述第一分組中的所述數據;當所述值不為零時:為所述連接分配一個重新組裝緩沖區;將所述數據從所述第一數據包復制到所述重新組裝緩沖區中;接收包括第二數據的第二數據包;以及將所述第二數據從所述第二數據包復制到所述重新組裝緩沖區中。2.如權利要求1所述的方法,其特征在于,所述第一數據包包括由以下項組成的組中的一個或多個字段:請求的積分字段;授予的積分字段;數據偏移字段;以及數據長度字段。3.如權利要求2所述的方法,其特征在于,所述授予的積分字段描繪多少積分被提供給第一數據包的發送方。4.如權利要求1所述的方法,其特征在于,積分是標識所述發送方能發送的消息的數目的值。5.如權利要求1所述的方法,其特征在于,進一步包括:確定所述第二數據包是否是最后的數據包;如果所述第二數據包是最后的數據包,處理在所述重新組裝緩沖區中的數據;如果所述第二數據包不是最后的數據包,接收至少一個第三數據包并將第三數據從所述第三數據包復制到所述重新組裝緩沖區中。6.如權利要求5所述的方法,其特征在于,其中所述重新組裝緩沖區包括來自至少兩個數據包的數據。7.如權利要求5所述的方法,其特征在于,其中所述確定所述第一數據包是否是最后的數據包包括確定存儲在所述第一字段中的所述值是否等于零。8.如權利要求1所述的方法,其特征在于,進一步包括:預先發布協商請求的接收;設置協商請求期滿計時器;確定在協商請求期滿計時器期滿之前是否接收到所述協商請求;如果在所述協商請求期滿計時器期滿之前沒有接收到所述協商請求,則取消所述協商請求的接收;如果在所述協商請求期滿計時器期滿之前接收到所述協商請求,則接收所述協商請求,其中所述協商請求請求建立所述連接以使用遠程直接存儲器訪問發送數據;驗證所述協商請求;處理所述協商請求;響應于處理所述協商請求,生成響應,其中所述響應允許所述連接并將至少一個積分分配給所述協商請求的發送方以發送數據包;發送所述響應。9.如權利要求8所述的方法,其特征在于,所述協商請求包括來自由下述項組成的組中的一個或多個字段:請求版本字段;第一積分請求字段;指示第一大小的偏好大小字段;以及指示第二大小的最大大小字段。10.如權利要求9所述的方法,其特征在于,所述請求包括來自由下述項組成的組中的一個或多個字段:請求版本字段;偏好版本字段;第二積分請求字段;授予的積分字段;以及狀態字段。11.一種存儲了計算可執行指令的計算機可讀存儲介質,所述計算可執行指令在由一個處理器執行時,執行一種用于交換數據的方法,所述方法包括:建立與服務器的連接;與所述服務器協商連接,其中所述協商建立所述服務器將在該連接中接收的最大字節數;確定用于將與所述連接相關聯的數據發送給所述服務器的數據包的數目;確定是否要使用對所述數據的分段;當不使用對所述數據的分段...

    【專利技術屬性】
    技術研發人員:T·M·塔爾佩伊G·R·卡拉莫D·M·克魯斯
    申請(專利權)人:微軟技術許可有限責任公司
    類型:發明
    國別省市:美國;US

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 久久久久成人精品无码中文字幕| 亚洲熟妇无码AV不卡在线播放| 无码少妇一区二区三区芒果| 伊人久久大香线蕉无码麻豆| 亚洲?v无码国产在丝袜线观看| 亚洲AV无码成人精品区蜜桃 | 亚洲av无码专区在线电影| 曰韩无码无遮挡A级毛片| 国产aⅴ无码专区亚洲av| 成人h动漫精品一区二区无码| 亚洲AV无码精品无码麻豆| 免费无码午夜福利片| 亚洲精品无码久久久久秋霞| 日韩人妻无码一区二区三区综合部| 中文字幕人成无码免费视频| 无码国产精品一区二区免费式芒果| 免费a级毛片无码av| 亚洲日韩精品无码专区加勒比| 国产精品无码久久综合| 久久影院午夜理论片无码| 日韩乱码人妻无码中文字幕视频| 中文字幕日产无码| 亚洲人av高清无码| 亚洲精品无码专区久久| 18禁无遮挡无码国产免费网站| 国产午夜无码精品免费看| 亚洲精品无码永久在线观看| 国产精品无码免费视频二三区| 亚洲AV无码AV吞精久久| 亚洲AV无码一区二区乱子仑| 中文字幕无码视频手机免费看| 久久久久亚洲AV无码专区首JN| 色窝窝无码一区二区三区 | 精选观看中文字幕高清无码| 亚洲AV无码国产剧情| 精品无码专区亚洲| 无码毛片一区二区三区中文字幕| 无码人妻丰满熟妇区毛片18| 无码精品A∨在线观看无广告| 国产av激情无码久久| 国产成人无码一区二区三区在线|