專利名稱:一種數(shù)據(jù)的傳輸方法和設(shè)備的制作方法
一種數(shù)據(jù)的傳輸方法和設(shè)備
技術(shù) 領(lǐng)域本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)的傳輸方法和設(shè)備。
背景技術(shù):
以太網(wǎng)絡(luò)中IP (Internet Protocol,網(wǎng)絡(luò)互連協(xié)議)的數(shù)據(jù)報(bào)分片原理具體為 在IP協(xié)議中,由于鏈路層存在所能承載的最大數(shù)據(jù)量(稱為最大傳輸單元MTU)的限制,當(dāng) 所發(fā)數(shù)據(jù)載荷的尺寸超過MTU的尺寸時(shí),不能將數(shù)據(jù)一次性整體交給輸出鏈路,因此可將 數(shù)據(jù)“分片”成兩個(gè)或者更多的較小數(shù)據(jù)報(bào),然后向輸出鏈路上發(fā)送這些較小的數(shù)據(jù)報(bào),這 些較小的數(shù)據(jù)報(bào)稱為“片”。其中,片在通過鏈路層到達(dá)目的端的傳輸層以前,需要被重新 組裝,這樣接收方位于傳輸層的TCP (Transmission Control Protocol,傳輸控制協(xié)議)和 UDP (User Datagram Protocol,用戶數(shù)據(jù)報(bào)協(xié)議)看到的是未分片的報(bào)文。為了便于目的端的傳輸層軟件完成數(shù)據(jù)報(bào)重組,發(fā)送端的傳輸層軟件需要在數(shù)據(jù) 報(bào)分片時(shí),為每個(gè)分成的數(shù)據(jù)報(bào)(“片”)附加上原始數(shù)據(jù)報(bào)的源地址、目的地址和標(biāo)識(shí)號(hào);當(dāng) 目的端從同一發(fā)送端收到一批數(shù)據(jù)報(bào)時(shí),目的端可以檢查數(shù)據(jù)報(bào)的標(biāo)識(shí)號(hào)以確定哪些數(shù)據(jù) 報(bào)是某一較大尺寸數(shù)據(jù)報(bào)的分片。此外,IP協(xié)議還規(guī)定了使用一個(gè)固定標(biāo)志比特來表示原始數(shù)據(jù)報(bào)的最后一個(gè)片, 并加入偏移字段來指示當(dāng)前分片應(yīng)位于原始數(shù)據(jù)報(bào)的哪個(gè)具體位置;當(dāng)有了上述信息后, 目的端在收到最后一個(gè)分片后就可以按照正確順序重組數(shù)據(jù)報(bào)?,F(xiàn)有以太網(wǎng)絡(luò)中基于IP協(xié)議棧的以太網(wǎng)絡(luò)數(shù)據(jù)傳輸流程如圖1所示,在底層傳輸 鏈路上,使用以太網(wǎng)協(xié)議中的以太幀格式進(jìn)行數(shù)據(jù)交互,將上述分片后的數(shù)據(jù)從發(fā)送端(源 端)處理器經(jīng)以太交換網(wǎng)絡(luò)運(yùn)送到目的端處理器。目前,另一種廣泛應(yīng)用的處理器間通信網(wǎng)絡(luò)是Rapid 10 (快速輸入輸出)網(wǎng)絡(luò),該 網(wǎng)絡(luò)中底層數(shù)據(jù)傳輸是基于Rapid 10包交換來完成的。相應(yīng)數(shù)據(jù)傳輸?shù)倪^程是源端器件 通過產(chǎn)生一個(gè)請(qǐng)求事務(wù)開始一次操作,該請(qǐng)求包被傳輸?shù)浇粨Q結(jié)構(gòu),交換結(jié)構(gòu)收到請(qǐng)求包 后,發(fā)出控制符號(hào)給源端器件進(jìn)行確認(rèn),然后交換結(jié)構(gòu)將請(qǐng)求包轉(zhuǎn)發(fā)給目的器件。同樣的, 目的器件收到請(qǐng)求包后會(huì)給予交換結(jié)構(gòu)控制符號(hào)進(jìn)行確認(rèn);當(dāng)目的器件完成請(qǐng)求包攜帶的 操作后,產(chǎn)生響應(yīng)包,再次經(jīng)過交換結(jié)構(gòu)傳回源端器件。在此過程中,每?jī)蓚€(gè)器件之間傳輸都會(huì)有確認(rèn)符號(hào),以保證傳輸?shù)目煽啃?。其中?換結(jié)構(gòu)是根據(jù)包結(jié)構(gòu)中的器件ID字段進(jìn)行路由的,并完成包轉(zhuǎn)發(fā)功能。Rapid 10包由包 頭、可選的載荷數(shù)據(jù)和CRC (Cyclic Redundancy Check,循環(huán)冗余校驗(yàn))校驗(yàn)組成,包頭的 長(zhǎng)度由包的事務(wù)類型決定,一般為十幾到二十幾字節(jié);數(shù)據(jù)載荷長(zhǎng)度不超過256字節(jié),以減 少傳輸時(shí)延,簡(jiǎn)化硬件實(shí)現(xiàn),并適合在板內(nèi)完成高速數(shù)據(jù)通信。因此,基于上述Rapid 10網(wǎng)絡(luò)的特點(diǎn),現(xiàn)有的板內(nèi)通信網(wǎng)絡(luò)正在經(jīng)歷從以太網(wǎng)絡(luò) 向Rapid 10網(wǎng)絡(luò)逐步過渡的階段。在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在以下問題
在原有的以太網(wǎng)絡(luò)中使用IP協(xié)議和以太幀收發(fā)可以完成多個(gè)處理器之間的大數(shù)據(jù)量傳輸,但是其至少存在如下問題(1)傳輸速率較低,以太控制器的理論傳輸速率僅為 lGbit/s,很難滿足高速嵌入式系統(tǒng)互連的需要;(2)以太網(wǎng)絡(luò)傳輸不可靠,當(dāng)網(wǎng)絡(luò)出現(xiàn)擁 塞的情況,交換設(shè)備會(huì)選擇丟棄部分以太幀數(shù)據(jù),造成數(shù)據(jù)丟失;(3)部分芯片廠商提供的 以太控制器與SRIO (串行Rapid 10)控制器在共用硬件資源時(shí)存在沖突,影響到SRIO控制 器的傳輸速率和傳輸模式。 進(jìn)一步的,如果將以太網(wǎng)絡(luò)替換為Rapid IO網(wǎng)絡(luò),則需要解決目前Rapid IO網(wǎng)絡(luò) 傳輸中存在的問題。其中,Rapid IO協(xié)議主要有兩種事務(wù)類型,IO模式和MSG (message, 消息)模式;IO模式對(duì)傳輸尺寸沒有限制,但是需要發(fā)送端了解對(duì)端的物理內(nèi)存分配,在發(fā) 送和接收緩沖區(qū)的維護(hù)上雙方必須嚴(yán)格約定,當(dāng)網(wǎng)絡(luò)中的處理器數(shù)量較多且相互之間交互 量較大時(shí),緩沖區(qū)管理復(fù)雜且浪費(fèi)較大,靈活性也較差;MSG模式中,發(fā)送端無(wú)需了解對(duì)端 的實(shí)際物理內(nèi)存,接收端根據(jù)郵箱和信件編號(hào)等信息將數(shù)據(jù)存放到本地規(guī)劃的緩沖區(qū),發(fā) 送和接收緩沖區(qū)的維護(hù)較為簡(jiǎn)單,但傳輸尺寸不能超過4K,只能用于小尺寸數(shù)據(jù)傳輸。因此 在大型的多處理器混合網(wǎng)路中,上述兩種模式都有很大局限性。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種數(shù)據(jù)的傳輸方法和設(shè)備,以提高傳輸速率,并保證可靠傳 輸。為了達(dá)到上述目的,本發(fā)明實(shí)施例提供一種數(shù)據(jù)的傳輸方法,包括
當(dāng)根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片時(shí),IP協(xié)議棧對(duì)所 述待發(fā)送數(shù)據(jù)包進(jìn)行分片處理;
所述IP協(xié)議棧調(diào)用快速輸入輸出Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù)。本發(fā)明實(shí)施例提供一種數(shù)據(jù)的傳輸方法,包括
當(dāng)IP協(xié)議棧接收到來自呼入郵箱控制器的分片數(shù)據(jù)后,根據(jù)所述分片數(shù)據(jù)中攜帶的 源端IP地址對(duì)分片數(shù)據(jù)進(jìn)行分類,每個(gè)IP地址對(duì)應(yīng)一個(gè)分類;
所述IP協(xié)議棧將該分類的所有分片數(shù)據(jù)作為完整的數(shù)據(jù)包,并將該數(shù)據(jù)包存儲(chǔ)到上 層協(xié)議軟件提供的接收buffer中。本發(fā)明實(shí)施例提供一種數(shù)據(jù)的傳輸設(shè)備,包括
IP協(xié)議棧,用于當(dāng)根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片 時(shí),對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片處理;并調(diào)用Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù); Rapid IO驅(qū)動(dòng),用于發(fā)送處理后的分片數(shù)據(jù)。本發(fā)明實(shí)施例提供一種數(shù)據(jù)的傳輸設(shè)備,包括
IP協(xié)議棧,用于當(dāng)接收到來自呼入郵箱控制器的分片數(shù)據(jù)后,根據(jù)所述分片數(shù)據(jù)中攜 帶的源端IP地址對(duì)分片數(shù)據(jù)進(jìn)行分類,每個(gè)IP地址對(duì)應(yīng)一個(gè)分類;并將該分類的所有分片 數(shù)據(jù)作為完整的數(shù)據(jù)包,以及將該數(shù)據(jù)包存儲(chǔ)到上層協(xié)議軟件提供的接收buffer中。與現(xiàn)有技術(shù)相比,本發(fā)明至少具有以下優(yōu)點(diǎn)
通過IP協(xié)議棧對(duì)待發(fā)送數(shù)據(jù)包進(jìn)行分片,并通過Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù) 據(jù),可提高傳輸速率;而且Rapid IO的消息傳輸過程為有響應(yīng)的傳輸,屬于可靠傳輸,如果 發(fā)生鏈路擁塞,可以通過重傳保證數(shù)據(jù)最終能夠到達(dá)對(duì)端。
為了更清楚地說明本發(fā)明的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖 作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普 通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是現(xiàn)有技術(shù)中以太網(wǎng)絡(luò)中基于IP協(xié)議棧的以太網(wǎng)絡(luò)數(shù)據(jù)傳輸流程示意圖; 圖2是本發(fā)明實(shí)施例一中基于IP協(xié)議棧的Rapid IO網(wǎng)絡(luò)數(shù)據(jù)傳輸過程示意圖3是本發(fā)明實(shí)施例一提供的一種數(shù)據(jù)的傳輸方法流程示意圖; 圖4是本發(fā)明實(shí)施例一中初始化操作的示意圖; 圖5是本發(fā)明實(shí)施例一中數(shù)據(jù)發(fā)送階段流程示意圖; 圖6是本發(fā)明實(shí)施例一中數(shù)據(jù)接收階段流程示意圖。
具體實(shí)施例方式Rapid IO技術(shù)是近年來發(fā)展迅速的一種新型的高速數(shù)據(jù)互聯(lián)總線,尤其是串行 Rapid IO (SRIO)傳輸方式,由于僅使用很少的連線則可以達(dá)到很高的傳輸速率,該技術(shù)目 前正被廣泛用于通信基礎(chǔ)設(shè)施的芯片間,板間高速互聯(lián)。其中,在最新的V2. 1協(xié)議中,SRIO 傳輸速率已經(jīng)可以達(dá)到20Gbit/s。本發(fā)明實(shí)施例中,結(jié)合以太網(wǎng)絡(luò)中IP協(xié)議數(shù)據(jù)報(bào)分片和Rapid IO高速傳輸?shù)奶?點(diǎn),提出了一種數(shù)據(jù)的傳輸方法和設(shè)備,即基于IP協(xié)議的Rapid IO鏈路通信設(shè)計(jì)方案,可 在保持較高傳輸速率的同時(shí),以較小的內(nèi)存開銷完成多處理器網(wǎng)絡(luò)中的大尺寸數(shù)據(jù)塊傳 輸,并且可平滑完成上層軟件以太網(wǎng)協(xié)議到Rapid IO協(xié)議的轉(zhuǎn)換,以Rapid IO協(xié)議的MSG 數(shù)據(jù)包承載IP協(xié)議數(shù)據(jù),并可取代千兆以太鏈路,達(dá)到節(jié)約成本的目的。下面將結(jié)合本發(fā)明中的附圖,對(duì)本發(fā)明中的技術(shù)方案進(jìn)行清楚、完整地描述,顯 然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的 實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都 屬于本發(fā)明保護(hù)的范圍。實(shí)施例一
本發(fā)明實(shí)施例一提供一種數(shù)據(jù)的傳輸方法,以下結(jié)合圖2所示的基于IP協(xié)議棧的 Rapid IO網(wǎng)絡(luò)數(shù)據(jù)傳輸過程對(duì)該方法進(jìn)行詳細(xì)說明。在圖2中,包括源端處理器(發(fā)送端 的處理器)和目的端處理器(接收端的處理器),源端處理器與目的端處理器之間通過Rapid IO交換網(wǎng)絡(luò)進(jìn)行通信,各處理器內(nèi)部從上層到下層依次包括上層協(xié)議軟件、IP協(xié)議棧、 Rapid IO驅(qū)動(dòng)、呼出/呼入郵箱控制器(源端為呼出、目的端為呼入)。基于上述架構(gòu),如圖3所示,該數(shù)據(jù)的傳輸方法包括以下步驟
步驟301,對(duì)處理器(源端處理器和目的端處理器)的相關(guān)信息進(jìn)行初始化操作。如圖 4所示,該初始化操作包括
步驟3011,IP協(xié)議棧初始化。 具體的,初始化IP協(xié)議?;緟?shù)和發(fā)送/接收buffer (緩沖器),對(duì)源端處理器 為初始化發(fā)送buffer,對(duì)目的端處理器為初始化接收buffer。其中,IP協(xié)議棧負(fù)責(zé)維護(hù)的 buffer是一個(gè)用鏈表管理的消息池,其數(shù)量遠(yuǎn)遠(yuǎn)多于Rapid IO收發(fā)隊(duì)列上描述符所指向 的buffer數(shù),IP協(xié)議棧每次從消息池中取出一個(gè)buffer,掛入到收發(fā)隊(duì)列當(dāng)前處理的描述符上,而在使用后可將該buffer歸還給消息池,等待下一次使用。步驟3012,初始化 Rapid IO 的器件 ID 和 MAC (Media Access Control,介質(zhì)訪問 控制)地址的映射關(guān)系。其中,Rapid IO的器件ID為8位或16位,MAC地址通常用48位來表示,因此 可將Rapid IO對(duì)應(yīng)到MAC地址的低8位或低16位,而在高40位或32位使用指定值(如 ff:00:00:00)來表示當(dāng)前網(wǎng)絡(luò)為Rapid IO網(wǎng)絡(luò)。以Rapid IO器件ID為Oxl為例,其對(duì) 應(yīng)的 MAC 地址為 ff: 00:00:00:00:01。步驟3013,初始化Rapid IO控制器硬件,其包括但不限于配置端口傳輸速率和 傳輸模式、設(shè)置器件ID以及清除錯(cuò)誤狀態(tài)等。步驟3014,對(duì)源端處理器初始化呼出郵箱控制器的硬件,對(duì)目的端處理器初始化 呼入郵箱控制器的硬件。其中,初始化呼出郵箱控制器的硬件包括但不限于創(chuàng)建呼出郵箱 發(fā)送隊(duì)列的描述符,用于連接發(fā)送隊(duì)列;初始化呼入郵箱控制器的硬件包括但不限于創(chuàng) 建呼入郵箱接收隊(duì)列。步驟3015,Rapid IO驅(qū)動(dòng)獲取IP協(xié)議棧的發(fā)送和接收回調(diào)函數(shù)指針,用于在使用 前獲取IP協(xié)議棧提供的buffer和使用后歸還這些buffer。其中,上述步驟3011-步驟3015之間的順序關(guān)系并不局限于此,可根據(jù)實(shí)際需要 進(jìn)行順序調(diào)整。步驟302,源端處理器將數(shù)據(jù)發(fā)送給目的端處理器。如圖5所示的數(shù)據(jù)發(fā)送階段流 程示意圖,在源端處理器中,該發(fā)送過程包括
步驟(1)、上層協(xié)議軟件調(diào)用IP協(xié)議棧發(fā)送數(shù)據(jù),將待發(fā)送數(shù)據(jù)包的信息發(fā)送給IP協(xié) 議棧(如IP協(xié)議棧發(fā)送函數(shù));其中,該待發(fā)送數(shù)據(jù)包的信息包括但不限于待發(fā)送數(shù)據(jù)包的 尺寸信息和目的IP地址信息;實(shí)際應(yīng)用中,還可以包括待發(fā)送數(shù)據(jù)包的首地址、Socket編 號(hào)、端口號(hào)等信息。步驟(2)、當(dāng)根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì)待發(fā)送數(shù)據(jù)包進(jìn)行分片時(shí),IP 協(xié)議棧對(duì)待發(fā)送數(shù)據(jù)包進(jìn)行分片處理(IP協(xié)議棧發(fā)送函數(shù)根據(jù)數(shù)據(jù)包的尺寸信息進(jìn)行分 片處理);從預(yù)先分配的消息池中取出對(duì)應(yīng)各分片數(shù)據(jù)的buffer來承載各分片數(shù)據(jù),并在各 分片數(shù)據(jù)上添加IP協(xié)議頭;該IP協(xié)議頭中包含根據(jù)目的IP地址信息確定的目的MAC地址 信息和分片長(zhǎng)度信息。步驟(3)、IP協(xié)議棧調(diào)用Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù)。其中,IP協(xié)議棧 發(fā)送函數(shù)可調(diào)用Rapid IO驅(qū)動(dòng)發(fā)送函數(shù),發(fā)送(如逐一發(fā)送)步驟(2)中產(chǎn)生的分片數(shù)據(jù)。具體的,Rapid IO驅(qū)動(dòng)(Rapid IO的發(fā)送函數(shù))可根據(jù)IP協(xié)議頭中的MAC地址信 息計(jì)算目的端處理器的Rapid IO器件ID ;并根據(jù)IP協(xié)議頭中的分片長(zhǎng)度信息計(jì)算實(shí)際發(fā) 送尺寸信息;以及根據(jù)目的端處理器的Rapid IO器件ID和實(shí)際發(fā)送尺寸信息將處理后的 分片數(shù)據(jù)發(fā)送給目的端處理器。本發(fā)明實(shí)施例中,Rapid IO驅(qū)動(dòng)將目的端處理器的Rapid IO器件ID以及實(shí)際 發(fā)送尺寸信息填入呼出郵箱發(fā)送隊(duì)列的描述符中,并令描述符指向承載分片數(shù)據(jù)的發(fā)送 buffer ;之后,將呼出郵箱控制器的入隊(duì)指針指向該描述符,并啟動(dòng)呼出郵箱控制器發(fā)送處 理后的分片數(shù)據(jù)。實(shí)際應(yīng)用中,由于Rapid IO的MSG事務(wù)對(duì)載荷尺寸存在限制,則發(fā)送尺寸需要滿足2的冪次,因此需要根據(jù)分片數(shù)據(jù)的IP協(xié)議頭中攜帶的當(dāng)前分片數(shù)據(jù)總長(zhǎng)度計(jì)算實(shí)際發(fā) 送尺寸;并將對(duì)端Rapid IO器件ID和實(shí)際MSG尺寸填入呼出郵箱發(fā)送隊(duì)列的描述符中,然 后令描述符指向承載分片數(shù)據(jù)的發(fā)送buffer,即將該分片數(shù)據(jù)放入Rapid IO呼出郵箱的 發(fā)送隊(duì)列中,將呼出郵箱控制器的入隊(duì)指針指向該描述符,啟動(dòng)呼出郵箱控制器發(fā)送數(shù)據(jù)。步驟(4 )、當(dāng)呼出郵箱控制器將數(shù)據(jù)發(fā)送完成后,將產(chǎn)生完成中斷。在中斷服務(wù)程 序中,軟件通過查詢硬件發(fā)送隊(duì)列的出隊(duì)指針來判斷已經(jīng)完成發(fā)送的消息,并將這些消息 對(duì)應(yīng)的buffer調(diào)用IP協(xié)議棧的回調(diào)函數(shù)歸還給IP協(xié)議棧維護(hù)的消息池。步驟303,目的端處理器接收來自源端處理器的數(shù)據(jù)。如圖6所示的數(shù)據(jù)接收階段 流程示意圖,在目的端處理器中,該接收過程包括
步驟(1)、Rapid IO的呼入郵箱控制器接收到分片數(shù)據(jù)后,調(diào)用IP協(xié)議棧提供的接收 buffer信息將接收到的分片數(shù)據(jù)存儲(chǔ)到IP協(xié)議棧的接收buffer中。其中,當(dāng)收到分片數(shù) 據(jù)后,將產(chǎn)生呼入郵箱接收中斷,在中斷服務(wù)程序中,軟件通過查詢硬件接收隊(duì)列的出隊(duì)指 針來判斷需要處理的消息。具體的,在收到分片數(shù)據(jù)后,軟件需要從分片數(shù)據(jù)的IP協(xié)議頭中獲得當(dāng)前分片數(shù) 據(jù)的總長(zhǎng)度,并調(diào)用IP協(xié)議棧提供的獲取接收buffer的回調(diào)函數(shù),將收到的分片數(shù)據(jù)整體 拷貝到協(xié)議棧的接收buffer中,由IP協(xié)議棧負(fù)責(zé)對(duì)收到的分片數(shù)據(jù)進(jìn)行重組。步驟(2)、IP協(xié)議棧接收到來自呼入郵箱控制器的分片數(shù)據(jù)后,根據(jù)分片數(shù)據(jù)中 攜帶的源端IP地址對(duì)分片數(shù)據(jù)進(jìn)行分類,每個(gè)IP地址對(duì)應(yīng)一個(gè)分類。
具體的,當(dāng)收到分片數(shù)據(jù)后,根據(jù)源端IP地址對(duì)分片數(shù)據(jù)進(jìn)行分類,每一種IP地 址對(duì)應(yīng)一條鏈表,如果當(dāng)前接收到的分片數(shù)據(jù)的源端IP地址是第一次接收到,IP協(xié)議棧建 立一條新的鏈表,并以該分片數(shù)據(jù)作為鏈表的隊(duì)首元素;此后將接收到的對(duì)應(yīng)該源端IP地 址的分片數(shù)據(jù)順序放在該鏈表的隊(duì)尾,一直到接收到對(duì)應(yīng)該源端IP地址且標(biāo)識(shí)為分片結(jié) 束的分片數(shù)據(jù);其中一個(gè)鏈表對(duì)應(yīng)一個(gè)分類。之后,將這條鏈表上所有的分片數(shù)據(jù)作為一個(gè)完整IP數(shù)據(jù),放入上層協(xié)議軟件提 供的接收buffer中,通知上層協(xié)議軟件處理,并將該鏈表從協(xié)議棧維護(hù)的接收鏈表組中刪除。步驟(3)、上層協(xié)議軟件收到IP協(xié)議棧的通知后,上層協(xié)議軟件使用IP協(xié)議棧提 供的信息(函數(shù))從接收buffer中取出該數(shù)據(jù)包進(jìn)行相應(yīng)處理。綜上所述,本發(fā)明實(shí)施例中,利用Rapid IO協(xié)議中的消息類傳輸替代以太網(wǎng)協(xié)議 中的以太幀進(jìn)行底層數(shù)據(jù)傳輸,在網(wǎng)絡(luò)層使用IP協(xié)議棧進(jìn)行數(shù)據(jù)包分片與重組,管理收發(fā) 緩沖區(qū)。具體的,使用IP協(xié)議棧與上層協(xié)議軟件接口,底層驅(qū)動(dòng)由以太網(wǎng)絡(luò)平滑過渡到 Rapid IO網(wǎng)絡(luò);IP協(xié)議棧以消息池的形式負(fù)責(zé)管理Rapid IO驅(qū)動(dòng)發(fā)送和接收緩沖區(qū),并通 過回調(diào)函數(shù)的形式將緩沖區(qū)交給Rapid IO驅(qū)動(dòng)使用,使用后驅(qū)動(dòng)使用回調(diào)函數(shù)將緩沖區(qū)回 收給協(xié)議棧;將IP包中的MAC地址映射為Rapid IO的器件ID,IP協(xié)議棧的發(fā)送函數(shù)根據(jù) 目的MAC選擇采用Rapid IO驅(qū)動(dòng)發(fā)送分片數(shù)據(jù),并且確定目的器件ID和目的郵箱編號(hào);利 用IP包中的分片數(shù)據(jù)長(zhǎng)度計(jì)算呼出郵箱實(shí)際發(fā)送的消息長(zhǎng)度,并在呼入郵箱中斷中按照 分片長(zhǎng)度將數(shù)據(jù)從Rapid IO消息接收buffer拷貝到IP協(xié)議棧的接收buffer ;IP協(xié)議棧 收到數(shù)據(jù)后根據(jù)分片數(shù)據(jù)中的源端IP地址字段對(duì)數(shù)據(jù)包分類,并根據(jù)分片數(shù)據(jù)中的分片長(zhǎng)度和結(jié)束標(biāo)識(shí)等字段重新組包,每當(dāng)完成一組分片包的重組,就將完成的IP數(shù)據(jù)發(fā)送給 層協(xié)議軟件。通過采用本發(fā)明實(shí)施例提供的技術(shù)方案,具有以下優(yōu)點(diǎn)(1)傳輸速率較高,分片 數(shù)據(jù)在Rapid IO交換網(wǎng)絡(luò)的傳輸速率可以達(dá)到20Gbit/s,遠(yuǎn)遠(yuǎn)超過目前千兆以太網(wǎng)絡(luò)的 lGbit/s。(2)Rapid IO的消息傳輸為有響應(yīng)傳輸,屬于可靠傳輸,如果發(fā)生鏈路擁塞,可以 通過重傳保證數(shù)據(jù)最終能夠到達(dá)對(duì)端。(3)使用IP協(xié)議棧與上層協(xié)議軟件接口,可以做到 由以太網(wǎng)絡(luò)平滑過渡到Rapid IO網(wǎng)絡(luò),不改變現(xiàn)有以太網(wǎng)絡(luò)的上層接口。(4)利用IP協(xié)議 棧管理接收/發(fā)送buffer,可以解決目前Rapid IO網(wǎng)絡(luò)使用中存在的IO模式緩沖區(qū)管理 復(fù)雜且浪費(fèi)較大以及MSG模式傳輸尺寸受限等問題。實(shí)施例二基于與上述方法同樣的發(fā)明構(gòu)思,本發(fā)明實(shí)施例中還提供了一種數(shù)據(jù)的傳輸設(shè)備,該 設(shè)備包括
IP協(xié)議棧,用于當(dāng)根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片 時(shí),對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片處理;并調(diào)用Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù); Rapid IO驅(qū)動(dòng),用于發(fā)送處理后的分片數(shù)據(jù)。本發(fā)明實(shí)施例中,該設(shè)備還包括
上層協(xié)議軟件,用于將待發(fā)送數(shù)據(jù)包的信息發(fā)送給所述IP協(xié)議棧;其中,所述待發(fā)送 數(shù)據(jù)包的信息包括待發(fā)送數(shù)據(jù)包的尺寸信息和目的IP地址信息。本發(fā)明實(shí)施例中,所述IP協(xié)議棧,具體用于從預(yù)先分配的消息池中取出對(duì)應(yīng)各分 片數(shù)據(jù)的buffer來承載各分片數(shù)據(jù),并在各分片數(shù)據(jù)上添加IP協(xié)議頭;所述IP協(xié)議頭中 包含根據(jù)目的IP地址信息確定的目的MAC地址信息和分片長(zhǎng)度信息。本發(fā)明實(shí)施例中,所述處理后的分片數(shù)據(jù)中攜帶有包含目的MAC地址信息和分片 長(zhǎng)度信息的IP協(xié)議頭;
所述Rapid IO驅(qū)動(dòng),具體用于根據(jù)所述MAC地址信息計(jì)算目的端處理器的Rapid IO 器件ID ;并根據(jù)所述分片長(zhǎng)度信息計(jì)算實(shí)際發(fā)送尺寸信息;
根據(jù)所述目的端處理器的Rapid IO器件ID以及所述實(shí)際發(fā)送尺寸信息將處理后的分 片數(shù)據(jù)發(fā)送給目的端處理器。本發(fā)明實(shí)施例中,所述Rapid IO驅(qū)動(dòng),具體用于將所述目的端處理器的Rapid IO 器件ID以及所述實(shí)際發(fā)送尺寸信息填入呼出郵箱發(fā)送隊(duì)列的描述符中,并令描述符指向 承載分片數(shù)據(jù)的發(fā)送buffer;
將呼出郵箱控制器的入隊(duì)指針指向該描述符,并啟動(dòng)所述呼出郵箱控制器發(fā)送處理后 的分片數(shù)據(jù);
本發(fā)明實(shí)施例中,該設(shè)備還包括呼出郵箱控制器,用于發(fā)送處理后的分片數(shù)據(jù)。本發(fā)明實(shí)施例中,該設(shè)備還包括初始化模塊,用于執(zhí)行以下操作之一或任意組 合
初始化IP協(xié)議?;緟?shù)和發(fā)送buffer ; 初始化Rapid IO器件ID和MAC地址的映射關(guān)系; 初始化Rapid IO控制器的硬件和呼出郵箱控制器的硬件。其中,本發(fā)明裝置的各個(gè)模塊可以集成于一體,也可以分離部署。上述模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。另外,上述IP協(xié)議棧、Rapid IO驅(qū)動(dòng)、上 層協(xié)議軟件、呼出郵箱控制器還可通過相應(yīng)的功能模塊來實(shí)現(xiàn)。實(shí)施 例三
基于與上述方法同樣的發(fā)明構(gòu)思,本發(fā)明實(shí)施例中還提供了一種數(shù)據(jù)的傳輸設(shè)備,該 設(shè)備包括
IP協(xié)議棧,用于當(dāng)接收到來自呼入郵箱控制器的分片數(shù)據(jù)后,根據(jù)所述分片數(shù)據(jù)中攜 帶的源端IP地址對(duì)分片數(shù)據(jù)進(jìn)行分類,每個(gè)IP地址對(duì)應(yīng)一個(gè)分類;并將該分類的所有分片 數(shù)據(jù)作為完整的數(shù)據(jù)包,以及將該數(shù)據(jù)包存儲(chǔ)到上層協(xié)議軟件提供的接收buffer中。本發(fā)明實(shí)施例中,該設(shè)備還包括
呼入郵箱控制器,用于當(dāng)接收到分片數(shù)據(jù)后,調(diào)用IP協(xié)議棧提供的接收buffer信息將 接收到的分片數(shù)據(jù)存儲(chǔ)到IP協(xié)議棧的接收buffer中。本發(fā)明實(shí)施例中,所述IP協(xié)議棧,具體用于如果當(dāng)前接收到的分片數(shù)據(jù)的源端IP 地址是第一次接收到,建立一條新的鏈表,并以所述分片數(shù)據(jù)作為鏈表的隊(duì)首元素;之后將 接收到的對(duì)應(yīng)該源端IP地址的分片數(shù)據(jù)順序放在該鏈表的隊(duì)尾,一直到接收到對(duì)應(yīng)該源 端IP地址且標(biāo)識(shí)為分片結(jié)束的分片數(shù)據(jù);其中一個(gè)鏈表對(duì)應(yīng)一個(gè)分類。本發(fā)明實(shí)施例中,該設(shè)備還包括
上層協(xié)議軟件,用于使用所述IP協(xié)議棧提供的信息從接收buffer中取出該數(shù)據(jù)包進(jìn) 行相應(yīng)處理。本發(fā)明實(shí)施例中,該設(shè)備還包括初始化模塊,用于執(zhí)行以下操作之一或任意組 合
初始化IP協(xié)議?;緟?shù)和接收buffer ; 初始化Rapid IO器件ID和MAC地址的映射關(guān)系; 初始化Rapid IO控制器的硬件和呼入郵箱控制器的硬件。其中,本發(fā)明裝置的各個(gè)模塊可以集成于一體,也可以分離部署。上述模塊可以合 并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。另外,上述IP協(xié)議棧、上層協(xié)議軟件、呼 入郵箱控制器還可通過相應(yīng)的功能模塊來實(shí)現(xiàn)。需要說明的是,上述實(shí)施例二和實(shí)施例三的設(shè)備分別為數(shù)據(jù)的發(fā)送端和數(shù)據(jù)的接 收端;二者均可通過處理器來實(shí)現(xiàn),實(shí)施例二的設(shè)備為源端處理器,實(shí)施例三的設(shè)備為目的 端處理器。在實(shí)際應(yīng)用中,發(fā)送端和接收端是相對(duì)的,當(dāng)實(shí)施例三的設(shè)備需要向?qū)嵤├?設(shè)備發(fā)送數(shù)據(jù)時(shí),則實(shí)施例三的設(shè)備為源端處理器,實(shí)施例二的設(shè)備為目的端處理器。因 此,對(duì)各處理器來說,可具有源端處理器的功能和目的端處理器的功能。通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助 軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更 佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的 部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若 干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā) 明各個(gè)實(shí)施例所述的方法。本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的模塊或流 程并不一定是實(shí)施本發(fā)明所必須的。
本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的模塊可以按照實(shí)施例描述進(jìn)行分 布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的一個(gè)或多個(gè)裝置中。上 述實(shí)施例的模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
以上公開的僅為本發(fā)明的幾個(gè)具體實(shí)施例,但是,本發(fā)明并非局限于此,任何本領(lǐng) 域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種數(shù)據(jù)的傳輸方法,其特征在于,包括當(dāng)根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片時(shí),IP協(xié)議棧對(duì)所 述待發(fā)送數(shù)據(jù)包進(jìn)行分片處理;所述IP協(xié)議棧調(diào)用快速輸入輸出Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù)。
2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì) 所述待發(fā)送數(shù)據(jù)包進(jìn)行分片,之前還包括上層協(xié)議軟件將待發(fā)送數(shù)據(jù)包的信息發(fā)送給所述IP協(xié)議棧;其中,所述待發(fā)送數(shù)據(jù)包 的信息包括待發(fā)送數(shù)據(jù)包的尺寸信息和目的IP地址信息。
3.如權(quán)利要求1所述的方法,其特征在于,所述IP協(xié)議棧對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分 片處理,包括所述IP協(xié)議棧從預(yù)先分配的消息池中取出對(duì)應(yīng)各分片數(shù)據(jù)的buffer來承載各分片數(shù) 據(jù),并在各分片數(shù)據(jù)上添加IP協(xié)議頭;所述IP協(xié)議頭中包含根據(jù)目的IP地址信息確定的 目的MAC地址信息和分片長(zhǎng)度信息。
4.如權(quán)利要求1所述的方法,其特征在于,所述處理后的分片數(shù)據(jù)中攜帶有包含目的 MAC地址信息和分片長(zhǎng)度信息的IP協(xié)議頭;所述IP協(xié)議棧調(diào)用快速輸入輸出Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù),包括 所述Rapid IO驅(qū)動(dòng)根據(jù)所述MAC地址信息計(jì)算目的端處理器的Rapid IO器件ID ;并 根據(jù)所述分片長(zhǎng)度信息計(jì)算實(shí)際發(fā)送尺寸信息;所述Rapid IO驅(qū)動(dòng)根據(jù)所述目的端處理器的Rapid IO器件ID以及所述實(shí)際發(fā)送尺 寸信息將處理后的分片數(shù)據(jù)發(fā)送給目的端處理器。
5.如權(quán)利要求4所述的方法,其特征在于,所述RapidIO驅(qū)動(dòng)根據(jù)所述目的端處理器 的Rapid IO器件ID以及所述實(shí)際發(fā)送尺寸信息將處理后的分片數(shù)據(jù)發(fā)送給目的端處理 器,包括所述Rapid IO驅(qū)動(dòng)將所述目的端處理器的Rapid IO器件ID以及所述實(shí)際發(fā)送尺寸 信息填入呼出郵箱發(fā)送隊(duì)列的描述符中,并令描述符指向承載分片數(shù)據(jù)的發(fā)送buffer ;所述Rapid IO驅(qū)動(dòng)將呼出郵箱控制器的入隊(duì)指針指向該描述符,并啟動(dòng)所述呼出郵箱 控制器發(fā)送處理后的分片數(shù)據(jù)。
6.如權(quán)利要求1-5任一項(xiàng)所述的方法,其特征在于,所述根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信 息確定對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片,之前還包括以下之一或任意組合初始化IP協(xié)議棧基本參數(shù)和發(fā)送buffer ; 初始化Rapid IO器件ID和MAC地址的映射關(guān)系; 初始化Rapid IO控制器的硬件和呼出郵箱控制器的硬件。
7.一種數(shù)據(jù)的傳輸方法,其特征在于,包括當(dāng)IP協(xié)議棧接收到來自呼入郵箱控制器的分片數(shù)據(jù)后,根據(jù)所述分片數(shù)據(jù)中攜帶的 源端IP地址對(duì)分片數(shù)據(jù)進(jìn)行分類,每個(gè)IP地址對(duì)應(yīng)一個(gè)分類;所述IP協(xié)議棧將該分類的所有分片數(shù)據(jù)作為完整的數(shù)據(jù)包,并將該數(shù)據(jù)包存儲(chǔ)到上 層協(xié)議軟件提供的接收buffer中。
8.如權(quán)利要求7所述的方法,其特征在于,所述IP協(xié)議棧接收到來自呼入郵箱控制器 的分片數(shù)據(jù),包括當(dāng)呼入郵箱控制器接收到分片數(shù)據(jù)后,調(diào)用IP協(xié)議棧提供的接收buffer信息將接收 到的分片數(shù)據(jù)存儲(chǔ)到IP協(xié)議棧的接收buffer中。
9.如權(quán)利要求7所述的方法,其特征在于,根據(jù)所述分片數(shù)據(jù)中攜帶的源端IP地址對(duì) 分片數(shù)據(jù)進(jìn)行分類,每個(gè)IP地址對(duì)應(yīng)一個(gè)分類,包括如果當(dāng)前接收到的分片數(shù)據(jù)的源端IP地址是第一次接收到,所述IP協(xié)議棧建立一條 新的鏈表,并以所述分片數(shù)據(jù)作為鏈表的隊(duì)首元素;之后將接收到的對(duì)應(yīng)該源端IP地址的 分片數(shù)據(jù)順序放在該鏈表的隊(duì)尾,一直到接收到對(duì)應(yīng)該源端IP地址且標(biāo)識(shí)為分片結(jié)束的 分片數(shù)據(jù);其中一個(gè)鏈表對(duì)應(yīng)一個(gè)分類。
10.如權(quán)利要求7所述的方法,其特征在于,所述將該數(shù)據(jù)包存儲(chǔ)到上層協(xié)議軟件提供 的接收buffer中,之后還包括所述上層協(xié)議軟件使用所述IP協(xié)議棧提供的信息從接收buffer中取出該數(shù)據(jù)包進(jìn)行 相應(yīng)處理。
11.如權(quán)利要求7-10任一項(xiàng)所述的方法,其特征在于,所述IP協(xié)議棧接收到來自呼入 郵箱控制器的分片數(shù)據(jù),之前還包括以下之一或任意組合初始化IP協(xié)議?;緟?shù)和接收buffer ;初始化Rapid IO器件ID和MAC地址的映射關(guān)系;初始化Rapid IO控制器的硬件和呼入郵箱控制器的硬件。
12.—種數(shù)據(jù)的傳輸設(shè)備,其特征在于,包括IP協(xié)議棧,用于當(dāng)根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片 時(shí),對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片處理;并調(diào)用Rapid IO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù);Rapid IO驅(qū)動(dòng),用于發(fā)送處理后的分片數(shù)據(jù)。
13.如權(quán)利要求12所述的設(shè)備,其特征在于,還包括上層協(xié)議軟件,用于將待發(fā)送數(shù)據(jù)包的信息發(fā)送給所述IP協(xié)議棧;其中,所述待發(fā)送 數(shù)據(jù)包的信息包括待發(fā)送數(shù)據(jù)包的尺寸信息和目的IP地址信息。
14.如權(quán)利要求12所述的設(shè)備,其特征在于,所述IP協(xié)議棧,具體用于從預(yù)先分配的消息池中取出對(duì)應(yīng)各分片數(shù)據(jù)的buffer來承 載各分片數(shù)據(jù),并在各分片數(shù)據(jù)上添加IP協(xié)議頭;所述IP協(xié)議頭中包含根據(jù)目的IP地址 信息確定的目的MAC地址信息和分片長(zhǎng)度信息。
15.如權(quán)利要求12所述的設(shè)備,其特征在于,所述處理后的分片數(shù)據(jù)中攜帶有包含目 的MAC地址信息和分片長(zhǎng)度信息的IP協(xié)議頭;所述Rapid IO驅(qū)動(dòng),具體用于根據(jù)所述MAC地址信息計(jì)算目的端處理器的Rapid IO 器件ID ;并根據(jù)所述分片長(zhǎng)度信息計(jì)算實(shí)際發(fā)送尺寸信息;根據(jù)所述目的端處理器的Rapid IO器件ID以及所述實(shí)際發(fā)送尺寸信息將處理后的分 片數(shù)據(jù)發(fā)送給目的端處理器。
16.如權(quán)利要求15所述的設(shè)備,其特征在于,所述Rapid IO驅(qū)動(dòng),具體用于將所述目的端處理器的Rapid IO器件ID以及所述實(shí) 際發(fā)送尺寸信息填入呼出郵箱發(fā)送隊(duì)列的描述符中,并令描述符指向承載分片數(shù)據(jù)的發(fā)送 buffer ;將呼出郵箱控制器的入隊(duì)指針指向該描述符,并啟動(dòng)所述呼出郵箱控制器發(fā)送處理后的分片數(shù)據(jù);該設(shè)備還包括呼出郵箱控制器,用于發(fā)送處理后的分片數(shù)據(jù)。
17.如權(quán)利要求12-16任一項(xiàng)所述的設(shè)備,其特征在于,還包括 初始化模塊,用于執(zhí)行以下操作之一或任意組合初始化IP協(xié)議?;緟?shù)和發(fā)送buffer ; 初始化Rapid IO器件ID和MAC地址的映射關(guān)系; 初始化Rapid IO控制器的硬件和呼出郵箱控制器的硬件。
18.一種數(shù)據(jù)的傳輸設(shè)備,其特征在于,包括IP協(xié)議棧,用于當(dāng)接收到來自呼入郵箱控制器的分片數(shù)據(jù)后,根據(jù)所述分片數(shù)據(jù)中攜 帶的源端IP地址對(duì)分片數(shù)據(jù)進(jìn)行分類,每個(gè)IP地址對(duì)應(yīng)一個(gè)分類;并將該分類的所有分片 數(shù)據(jù)作為完整的數(shù)據(jù)包,以及將該數(shù)據(jù)包存儲(chǔ)到上層協(xié)議軟件提供的接收buffer中。
19.如權(quán)利要求18所述的設(shè)備,其特征在于,還包括呼入郵箱控制器,用于當(dāng)接收到分片數(shù)據(jù)后,調(diào)用IP協(xié)議棧提供的接收buffer信息將 接收到的分片數(shù)據(jù)存儲(chǔ)到IP協(xié)議棧的接收buffer中。
20.如權(quán)利要求18所述的設(shè)備,其特征在于,所述IP協(xié)議棧,具體用于如果當(dāng)前接收到的分片數(shù)據(jù)的源端IP地址是第一次接收到, 建立一條新的鏈表,并以所述分片數(shù)據(jù)作為鏈表的隊(duì)首元素;之后將接收到的對(duì)應(yīng)該源端 IP地址的分片數(shù)據(jù)順序放在該鏈表的隊(duì)尾,一直到接收到對(duì)應(yīng)該源端IP地址且標(biāo)識(shí)為分 片結(jié)束的分片數(shù)據(jù);其中一個(gè)鏈表對(duì)應(yīng)一個(gè)分類。
21.如權(quán)利要求18所述的設(shè)備,其特征在于,還包括上層協(xié)議軟件,用于使用所述IP協(xié)議棧提供的信息從接收buffer中取出該數(shù)據(jù)包進(jìn) 行相應(yīng)處理。
22.如權(quán)利要求18-21任一項(xiàng)所述的設(shè)備,其特征在于,還包括 初始化模塊,用于執(zhí)行以下操作之一或任意組合初始化IP協(xié)議?;緟?shù)和接收buffer ; 初始化Rapid IO器件ID和MAC地址的映射關(guān)系; 初始化Rapid IO控制器的硬件和呼入郵箱控制器的硬件。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)的傳輸方法和設(shè)備,該方法包括當(dāng)根據(jù)待發(fā)送數(shù)據(jù)包的尺寸信息確定對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片時(shí),IP協(xié)議棧對(duì)所述待發(fā)送數(shù)據(jù)包進(jìn)行分片處理;所述IP協(xié)議棧調(diào)用快速輸入輸出RapidIO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù)。本發(fā)明實(shí)施例中,通過IP協(xié)議棧對(duì)待發(fā)送數(shù)據(jù)包進(jìn)行分片,并通過RapidIO驅(qū)動(dòng)發(fā)送處理后的分片數(shù)據(jù),可提高傳輸速率;而且RapidIO的消息傳輸過程為有響應(yīng)的傳輸,屬于可靠傳輸,如果發(fā)生鏈路擁塞,可以通過重傳保證數(shù)據(jù)最終能夠到達(dá)對(duì)端。
文檔編號(hào)H04L1/00GK102035751SQ201110022889
公開日2011年4月27日 申請(qǐng)日期2011年1月20日 優(yōu)先權(quán)日2011年1月20日
發(fā)明者李坤, 王林, 馬明禮 申請(qǐng)人:大唐移動(dòng)通信設(shè)備有限公司