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

      數據傳輸方法、消息引擎、通信節(jié)點及網絡系統(tǒng)的制作方法

      文檔序號:7715938閱讀:195來源:國知局
      專利名稱:數據傳輸方法、消息引擎、通信節(jié)點及網絡系統(tǒng)的制作方法
      技術領域
      本發(fā)明涉及高性能計算互聯通訊領域,特別涉及數據傳輸方法、消息引擎、通 信節(jié)點及網絡系統(tǒng)。
      背景技術
      目前,計算機網絡的通信節(jié)點間的數據傳輸常采用基于消息傳遞的方式,通過 消息傳遞的方式來驅動數據傳輸的進行。隨著計算機網絡所需處理的數據流量的越來越大,通信節(jié)點間的數據傳輸頻率 及容量也越來越大。如何實現消息的并行一直是消息傳輸的關鍵問題之一,現有的消 息傳輸技術使用了各種方式實現消息的并行,但是現有的各種機制常會出現如下情況 發(fā)起順序在先的消息由于例如傳輸網絡狀況不佳、目標節(jié)點接收空間不足等原因無法完 成,就會占用帶寬,造成后續(xù)消息被阻塞,該情況將影響消息處理的效率。而對于高帶 寬的應用環(huán)境來說,該消息處理方式的鏈路利用率也較低。

      發(fā)明內容
      本發(fā)明解決的問題是現有技術基于消息傳遞方式的數據傳輸,其消息處理的效 率以及鏈路的利用率還有待提高的問題。為解決上述問題,本發(fā)明提供一種數據傳輸方法,應用于高帶寬,其包括將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每i(i > 1)個讀請 求對應一個寫請求;按所述消息的請求順序發(fā)送讀請求;在寫請求對應的i個讀請求的響應都返回后,發(fā)送該寫請求;在所述消息中的所有寫請求的響應返回后,發(fā)送所述消息的回答字。相應地,本發(fā)明還提供一種消息引擎,用于處理網絡系統(tǒng)中各通信節(jié)點間消息 傳遞,所述消息引擎包括拆分單元、讀請求控制單元、寫請求控制單元,回答字發(fā)送 單元,其中,所述拆分單元,將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求, 每i(i> 1)個讀請求對應一個寫請求,并將所拆分的寫請求的信息發(fā)送至回答字發(fā)送單 元;所述讀請求控制單元,按所述消息的請求順序向該項數據傳輸的源節(jié)點發(fā)送讀 請求,在獲得源節(jié)點的相應讀響應后,將所述讀響應發(fā)送至寫請求控制單元;所述寫請求控制單元,在獲得一個寫請求對應的i個讀請求的響應后,向該項數 據傳輸的目標節(jié)點發(fā)送該寫請求,在獲得目標節(jié)點的相應寫響應后,將所述寫響應發(fā)送 至回答字發(fā)送單元;
      回答字發(fā)送單元,依據寫請求的信息,在獲得目標節(jié)點的所有寫請求的響應 后,向該項數據傳輸的源節(jié)點發(fā)送回答字。
      相應地,本發(fā)明還提供一種通信節(jié)點,包括拆分單元,將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每Ki > 1)個讀請求對應一個寫請求;讀請求控制單元,按所述消息的請求順序執(zhí)行讀請求;網絡通信單元,將拆分后寫請求的信息以及所述讀請求的讀響應發(fā)送至網絡, 以及從網絡中接收對應該項數據傳輸的回答字。相應地,本發(fā)明還提供一種通信節(jié)點,包括網絡接收單元,接收對應一項數據傳輸的寫請求的信息,以及對應該項數據傳 輸的讀請求的讀響應,每i(i > 1)個讀請求對應一個寫請求;寫請求控制單元,在獲得一個寫請求對應的i個讀請求的響應后,執(zhí)行該寫請求;回答字發(fā)送單元,依據寫請求的信息,在獲得對應該項數據傳輸的所有寫請求 的響應后,產生回答字;網絡發(fā)送單元,將回答字發(fā)送至網絡。相應地,本發(fā)明還提供一種包括上述消息引擎的網絡系統(tǒng)。相應地,本發(fā)明還提供一種包括上述通信節(jié)點的網絡系統(tǒng)。與現有技術相比,本發(fā)明數據傳輸方法、消息引擎、通信節(jié)點及網絡系統(tǒng)具有 以下優(yōu)點消息順序發(fā)起后,根據數據的響應來驅動請求,寫請求需要在收到相應的讀 響應后發(fā)出,消息完成的回答字需要在收到所述消息的所有寫響應后發(fā)出。消息的處理 過程形成了數據流驅動的方式,從而可以實現多個消息的并行處理,消除了頭阻塞。對 于高帶寬應用的情況,所述基于消息的數據傳輸方法可以顯著提高消息處理的吞吐率和 鏈路的利用率。


      圖1是本發(fā)明數據傳輸方法的一種實施方式流程圖;圖2是本發(fā)明消息引擎的一種實施方式結構示意圖;圖3是本發(fā)明數據傳輸方法及消息引擎應用于單條消息的實例示意圖;圖4是本發(fā)明數據傳輸方法及消息引擎應用于多條消息并發(fā)的實例示意圖;圖5是本發(fā)明通信節(jié)點的一種實施例結構示意圖;圖6是本發(fā)明通信節(jié)點的另一種實施例結構示意圖。
      具體實施例方式通過分析現有技術的數據傳輸方式可知,計算機網絡中兩個節(jié)點間的數據傳輸 過程可大致分為兩個階段從源節(jié)點的主存中讀取數據的過程,以及向目標節(jié)點的主存 中寫入數據的過程。相應地,該項數據傳輸對應的消息也包括對應讀取數據過程的讀請 求,以及對應寫入數據過程的寫請求。要保證寫入數據的順利進行,其前提是數據能夠 成功讀取,因此寫請求的完成也必須依賴于相應讀請求的完成。相應地,一項數據傳輸 對應的消息的完成也依賴于寫請求的完成?;诂F有技術是通過響應的方式來提示請求 的完成,因此若以讀請求的響應來驅動其對應的寫請求,以寫請求的響應來驅動消息的完成,應能夠保證消息的正確處理?;诖耍景l(fā)明提供了一種應用于高帶寬的數據傳輸方法,采用了上述數據流 驅動方式的消息處理機制。參照圖1所示,本發(fā)明應用于高帶寬的數據傳輸方法的一種實施方式包括步驟Sl,將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每i(i> 1)個讀請求對應一個寫請求;步驟S2,按所述消息的請求順序發(fā)送讀請求; 步驟S3,在寫請求對應的i個讀請求的讀響應都返回后,發(fā)送該寫請求;步驟S4,在所述消息中的所有寫請求的寫響應返回后,發(fā)送所述消息的回答字。上述實施方式中,在消息發(fā)起后,首先將消息按讀和寫兩種請求類型進行拆 分。拆分寫請求依據消息長度和消息地址的對界情況進行。而拆分讀請求則可依據 主存支持的訪存粒度進行。例如,將寫請求以512B為單元進行拆分,假定主存支持的訪 存粒度為128B,則該寫請求對應的讀請求可以為4個。這樣處理的好處是在讀數據的時 候不需要設置緩沖,在等到讀出了 512B數據再回讀響應,可以每讀出128B數據就直接 返回讀響應。而假定主存支持的訪存粒度為64B,則該寫請求對應的讀請求可以為8個。將每i個讀請求對應一個寫請求,相當于建立了后續(xù)通過讀請求的響應驅動寫請 求的驅動映射表,后續(xù)的寫請求驅動可依據該表進行。在將消息拆分后,就可實際進行消息的處理。所述按消息的請求順序發(fā)送讀請 求是指按拆分后的讀請求的地址先后順序發(fā)送讀請求。在發(fā)出讀請求后,后續(xù)消息的請求的發(fā)出就是依據上述的響應來驅動,任何一 個寫請求只有在收齊了其對應的讀請求的響應后才會發(fā)出。而表示整條消息完成的回答 字只有在收齊了其所有的寫請求的響應后才會發(fā)出??偨Y下來,上述實施方式只有讀請求的發(fā)出是依序進行,后續(xù)寫請求的發(fā)出則 完全由讀響應的返回程度來決定,因而各個寫請求之間實際上是相互獨立執(zhí)行的,每個 寫請求只需關注與其相關的讀請求是否完成,即是否有響應即可?;谒稣f明,在多 條消息并發(fā)的情況下,各條消息的處理過程也是各自獨立的,相互之間并無聯系。每條 消息的處理均可借助各自專用的鏈路。因此,這樣的方式非常適合高帶寬的應用環(huán)境, 且對鏈路的利用率較高。從以上實施方式的完成過程看來,由于各條消息可并行處理,且每條消息的處 理完成是由實際計算機網絡系統(tǒng)運行的狀態(tài)決定,讀響應和寫響應的返回是亂序的,和 消息發(fā)起的順序無關,因此解決了現有技術中由于前一條消息未完成而阻塞后續(xù)消息的 問題,顯著提高了消息處理的吞吐率。參照圖2所示,本發(fā)明消息引擎的一種實施方式,其用于處理網絡系統(tǒng)中各通 信節(jié)點間消息傳遞,包括拆分單元10、讀請求控制單元20、寫請求控制單元30,回答 字發(fā)送單元40,其中,所述拆分單元10,將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請 求,每iG >1)個讀請求對應一個寫請求,并將所拆分的寫請求的信息發(fā)送至回答字發(fā)送單元40 ; 所述讀請求控制單元20,按所述消息的請求順序向該項數據傳輸的源節(jié)點發(fā)送 讀請求,在獲得源節(jié)點的相應讀響應后,將所述讀響應發(fā)送至寫請求控制單元30 ;所述寫請求控制單元30,在獲得一個寫請求對應的i個讀請求的響應后,向該項 數據傳輸的目標節(jié)點發(fā)送該寫請求,在獲得目標節(jié)點的相應寫響應后,將所述寫響應發(fā) 送至回答字發(fā)送單元40;回答字發(fā)送單元40,依據寫請求的信息,在獲得目標節(jié)點的所有寫請求的響應 后,向該項數據傳輸的源節(jié)點發(fā)送回答字。在一個實施例中,所述讀請求控制單元20可以包括與拆分后寫請求數目相等的 控制子單元,每個控制子單元對應控制所述寫請求對應的i個讀請求。在一個實施例中,所述寫請求控制單元30可以包括與拆分后寫請求數目相等的 控制子單元,每個控制子單元在獲得對應讀請求控制子單元發(fā)送的讀響應后,發(fā)送寫請 求。以下結合上述數據傳輸方法及消息引擎,分別通過單條消息和多條消息的處理 過程舉例來進一步說明。圖3所示為單條消息的一種處理過程舉例。結合圖2和圖3所示,在對應一項數 據傳輸的消息發(fā)起后,消息引擎中的拆分單元10首先將該條消息拆分成3組讀請求R1、 R2、R3和3個寫請求Wl、W2、W3。其中每一組讀請求各包含3個讀請求,讀請求組 Rl中的讀請求對應寫請求Wl,讀請求組R2中的讀請求對應寫請求W2,讀請求組R3中 的讀請求對應寫請求W3。在拆分完成后,消息引擎中的讀請求控制單元20以Rl、R2、 R3的順序發(fā)送讀請求。繼續(xù)參照圖3所示,在讀請求組R3的所有讀響應返回后,說明此時讀請求組R3 中的讀請求操作已完成,相關數據已從源節(jié)點的主存中讀出,消息引擎中的寫請求控制 單元30隨即發(fā)送寫請求W3。而此時讀請求組Rl、R2的讀響應并未全部返回,說明相 關的讀請求操作并未全部完成,相關數據并未全部從源節(jié)點的主存中讀出,因而消息引 擎中的寫請求控制單元30不發(fā)送寫請求Wl、W2。繼續(xù)參照圖3所示,在讀請求組R2的讀響應全部返回后,說明此時讀請求組R2 中的讀請求操作已完成,相關數據已從源節(jié)點的主存中讀出,消息引擎中的寫請求控制 單元30隨即發(fā)送寫請求W2。而讀請求組Rl的讀響應之后才全部返回,說明此時讀請 求組Rl中的讀請求操作已完成,相關數據已從源節(jié)點的主存中讀出,消息引擎中的寫請 求控制單元30隨即發(fā)送寫請求W1。此處可以看到,寫請求Wl、W2、W3的發(fā)送順序 和讀請求發(fā)送的順序無關,而僅由各自對應的讀請求的響應返回程度決定。并且,此處 由于寫請求W3是最先發(fā)送的,在讀請求組Rl、R2還在接收讀響應時,其已開始接收寫 響應。因此,各個寫請求Wl、W2、W3之間也是相互獨立的。繼續(xù)參照圖3所示,在寫請求Wl、W2、W3的寫響應全部返回后,說明此時所 有寫請求操作已完成,相關數據已寫入目標節(jié)點的主存中,消息引擎中的回答字發(fā)送單 元40隨即發(fā)送表示消息完成的回答字,也就是表示源節(jié)點和目標節(jié)點主存間數據的傳輸 完成。圖4所示為多條消息并發(fā)的處理過程舉例。結合圖2和圖4所示,當前共有η條消息同時發(fā)起,各條消息按箭頭方向從左至右進行處理,左面方格列代表讀請求數據, 右面方格列代表寫響應。消息引擎中的拆分單元10首先將每條消息進行拆分,其拆分方 式可參照上述單條消息的相關說明,然后通過讀請求控制單元20分別將各條消息拆分后 的將讀請求順序發(fā)送。此處,當對應一個寫請求的多個讀請求全部獲得響應后,返回一 個讀請求數據,從而激活寫請求,也即消息引擎中的寫請求控制單元30發(fā)送相應的寫請 求。繼續(xù)參照圖4所示,消息0中有2個讀請求數據返回,其對應的2個寫請求也隨 即由消息引擎中的寫請求控制單元30發(fā)送(2條激活寫請求)。而消息1、2、η中各有3 個讀請求數據返回,其對應的3個寫請求也隨即由消息引擎中的寫請求控制單元30發(fā)送 (3條激活寫請求)。繼續(xù)參照圖4所示,在寫請求發(fā)送后,寫響應也陸續(xù)返回。而同時,陸續(xù)返回 的讀請求數據也陸續(xù)激活對應的寫請求。繼續(xù)參照圖4所示,消息1和消息η的寫請求的響應最先全部返回,消息引擎在 消 息1和消息η的寫響應全部返回后,由回答字發(fā)送單元40發(fā)送消息1和消息η的回答 字,消息1和消息η最先完成。隨后,消息0的寫請求的響應也全部返回,消息引擎在 消息0的寫響應全部返回后,由回答字發(fā)送單元40發(fā)送消息0的回答字,消息0完成。 消息2的寫請求的響應最后才全部返回,消息引擎的回答字發(fā)送單元40也最后才發(fā)送消 息2的回答字,消息2最后完成。從上述多條消息并發(fā)的處理過程可以看到,雖然各條消息是同時發(fā)起的,但各 條消息的完成時間卻并不同。各條消息在處理過程中,與其他消息并無關聯,其完成時 間由處理過程中驅動寫請求的讀響應和驅動回答字的寫響應決定。綜合以上說明,所述消息引擎根據功能需求還可全部或部分集成于通信節(jié)點 中。參照圖5所示,本發(fā)明通信節(jié)點的一種實施例,包括拆分單元101,將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每 i(i> 1)個讀請求對應一個寫請求;讀請求控制單元102,按所述消息的請求順序執(zhí)行讀請求;網絡通信單元103,將拆分后寫請求的信息以及所述讀請求的讀響應發(fā)送至網 絡,以及從網絡中接收對應該項數據傳輸的回答字。參照圖6所示,本發(fā)明通信節(jié)點的另一種實施例,包括網絡接收單元201,接收對應一項數據傳輸的寫請求的信息,以及對應該項數據 傳輸的讀請求的讀響應,每i(i > 1)個讀請求對應一個寫請求;寫請求控制單元202,在獲得一個寫請求對應的i個讀請求的響應后,執(zhí)行該寫 請求;回答字發(fā)送單元203,依據寫請求的信息,在獲得對應該項數據傳輸的所有寫請 求的響應后,產生回答字;網絡發(fā)送單元204,將回答字發(fā)送至網絡。相應地,本發(fā)明還提供一種包括上述消息引擎的網絡系統(tǒng)。相應地,本發(fā)明還提供一種包括上述通信節(jié)點的網絡系統(tǒng)。
      綜上所述,本發(fā)明數據傳輸方法、消息引擎、通信節(jié)點及網絡系統(tǒng),在消息順 序發(fā)起后,根據數據的響應來驅動請求,寫請求需要在收到相應的讀響應后發(fā)出,消息 完成的回答字需要在收到所述消息的所有寫響應后發(fā)出。消息的處理過程形成了數據流 驅動的方式,從而可以實現多個消息的并行處理,消除了頭阻塞。特別對于高帶寬應 用的情況,所述基于消息的數據傳輸方法可以顯著提高消息處理的吞吐率和鏈路的利用 率。雖然本發(fā)明已以較佳實施例披露如上,但本發(fā)明并非限定于此。任何本領域技術人員,在不脫離本發(fā)明的精神和范圍內,均可作各種更動與修改,因此本發(fā)明的保護 范圍應當以權利要求所限定的范圍為準。
      權利要求
      1.一種數據傳輸方法,應用于高帶寬,其特征在于,包括將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每i(i> 1)個讀請求對 應一個寫請求;按所述消息的請求順序發(fā)送讀請求; 在寫請求對應的i個讀請求的響應都返回后,發(fā)送該寫請求; 在所述消息中的所有寫請求的響應返回后,發(fā)送所述消息的回答字。
      2.如權利要求1所述的數據傳輸方法,其特征在于,拆分讀請求依據主存支持的訪存 粒度進行。
      3.如權利要求1所述的數據傳輸方法,其特征在于,拆分寫請求依據消息長度和消息 地址的對界情況進行。
      4.一種消息引擎,用于處理網絡系統(tǒng)中各通信節(jié)點間消息傳遞,其特征在于,所述 消息引擎包括拆分單元、讀請求控制單元、寫請求控制單元,回答字發(fā)送單元,其 中,所述拆分單元,將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每Ki > 1)個讀請求對應一個寫請求,并將所拆分的寫請求的信息發(fā)送至回答字發(fā)送單元;所述讀請求控制單元,按所述消息的請求順序向該項數據傳輸的源節(jié)點發(fā)送讀請 求,在獲得源節(jié)點的相應讀響應后,將所述讀響應發(fā)送至寫請求控制單元;所述寫請求控制單元,在獲得一個寫請求對應的i個讀請求的響應后,向該項數據傳 輸的目標節(jié)點發(fā)送該寫請求,在獲得目標節(jié)點的相應寫響應后,將所述寫響應發(fā)送至回 答字發(fā)送單元;回答字發(fā)送單元,依據寫請求的信息,在獲得目標節(jié)點的所有寫請求的響應后,向 該項數據傳輸的源節(jié)點發(fā)送回答字。
      5.如權利要求4所述的消息引擎,其特征在于,所述讀請求控制單元包括與拆分后寫 請求數目相等的控制子單元,每個控制子單元對應控制所述寫請求對應的i個讀請求。
      6.如權利要求4所述的消息引擎,其特征在于,所述寫請求控制單元包括與拆分后寫 請求數目相等的控制子單元,每個控制子單元在獲得對應讀請求控制子單元發(fā)送的讀響 應后,發(fā)送寫請求。
      7.—種通信節(jié)點,其特征在于,包括拆分單元,將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每i(i>l) 個讀請求對應一個寫請求;讀請求控制單元,按所述消息的請求順序執(zhí)行讀請求;網絡通信單元,將拆分后寫請求的信息以及所述讀請求的讀響應發(fā)送至網絡,以及 從網絡中接收對應該項數據傳輸的回答字。
      8.如權利要求7所述的通信節(jié)點,其特征在于,所述讀請求控制單元包括與拆分后寫 請求數目相等的控制子單元,每個控制子單元對應控制所述寫請求對應的i個讀請求。
      9.一種通信節(jié)點,其特征在于,包括網絡接收單元,接收對應一項數據傳輸的寫請求的信息,以及對應該項數據傳輸的 讀請求的讀響應,每i(i > 1)個讀請求對應一個寫請求;寫請求控制單元,在獲得一個寫請求對應的i個讀請求的響應后,執(zhí)行該寫請求;回答字發(fā)送單元,依據寫請求的信息,在獲得對應該項數據傳輸的所有寫請求的響 應后,產生回答字;網絡發(fā)送單元,將回答字發(fā)送至網絡。
      10.如權利要求9所述的通信節(jié)點,其特征在于,所述寫請求控制單元包括與寫請求 數目相等的控制子單元,每個控制子單元在獲得相應讀響應后,執(zhí)行寫請求。
      11.一種包括權利要求4至6任一項所述的消息引擎的網絡系統(tǒng)。
      12.一種包括權利要求7至10任一項所述的通信節(jié)點的網絡系統(tǒng)。
      全文摘要
      一種數據傳輸方法、消息引擎、通信節(jié)點及網絡系統(tǒng)。所述數據傳輸方法包括將對應一項數據傳輸的消息拆分成多個讀請求和多個寫請求,每i(i>1)個讀請求對應一個寫請求;按所述消息的請求順序發(fā)送讀請求;在寫請求對應的i個讀請求的響應都返回后,發(fā)送該寫請求;在所述消息中的所有寫請求的響應返回后,發(fā)送所述消息的回答字。需要特別強調的是,讀響應和寫結束的返回都是亂序的。所述數據傳輸方法、消息引擎、通信節(jié)點及網絡系統(tǒng)可以顯著提高消息處理的吞吐率和鏈路的利用率。
      文檔編號H04L29/06GK102014111SQ200910195309
      公開日2011年4月13日 申請日期2009年9月4日 優(yōu)先權日2009年9月4日
      發(fā)明者盧宏生, 朱巍, 王夢嘉, 許勇, 鄭衛(wèi)華, 黃永勤 申請人:無錫江南計算技術研究所
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1