[發(fā)明專利]一種基于眾核處理器的高速網(wǎng)絡(luò)數(shù)據(jù)包并行化接收方法在審
| 申請(qǐng)?zhí)枺?/td> | 201510056076.0 | 申請(qǐng)日: | 2015-02-03 |
| 公開(公告)號(hào): | CN104639460A | 公開(公告)日: | 2015-05-20 |
| 發(fā)明(設(shè)計(jì))人: | 唐紅;戴俊;王大瑞;趙國(guó)鋒;鄧婭茹;劉靜嫻 | 申請(qǐng)(專利權(quán))人: | 重慶郵電大學(xué) |
| 主分類號(hào): | H04L12/861 | 分類號(hào): | H04L12/861;H04L12/883 |
| 代理公司: | 重慶市恒信知識(shí)產(chǎn)權(quán)代理有限公司 50102 | 代理人: | 劉小紅 |
| 地址: | 400065 *** | 國(guó)省代碼: | 重慶;85 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 處理器 高速 網(wǎng)絡(luò) 數(shù)據(jù)包 并行 接收 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及多核及眾核嵌入式處理器和網(wǎng)絡(luò)通信處理領(lǐng)域,尤其涉及基于眾核處理器的高速網(wǎng)絡(luò)數(shù)據(jù)包并行化接收方法。
背景技術(shù)
隨著通信技術(shù)的快速發(fā)展以及多核或眾核嵌入式處理器的出現(xiàn),傳統(tǒng)的單核處理模式已經(jīng)無(wú)法滿足高速網(wǎng)絡(luò)測(cè)量的需求。多核或眾核處理器采用并行處理模式,多任務(wù)并行處理,可以在低主頻的情況下提高處理速度,并且降低功耗。而隨著寬帶的日益增加,網(wǎng)絡(luò)數(shù)據(jù)量爆炸式增長(zhǎng),同時(shí)對(duì)于網(wǎng)絡(luò)數(shù)據(jù)的高速處理提出了更高的要求。因?yàn)榫W(wǎng)絡(luò)中的眾多數(shù)據(jù)都要求很強(qiáng)的實(shí)時(shí)性,為了保證數(shù)據(jù)的平穩(wěn)傳輸并滿足各種應(yīng)用對(duì)數(shù)據(jù)接收的實(shí)時(shí)性要求,軟件系統(tǒng)如何有效利用其架構(gòu)優(yōu)勢(shì)進(jìn)行數(shù)據(jù)包的快速接收已然成為研究的熱點(diǎn)。
申請(qǐng)?zhí)枮?01310365607.5的發(fā)明專利公開了一種基于多核或眾核嵌入式處理器的網(wǎng)絡(luò)數(shù)據(jù)包接收處理方法,該發(fā)明對(duì)網(wǎng)絡(luò)數(shù)據(jù)包在多核或眾核嵌入式處理器的接受進(jìn)行了說(shuō)明,并提出了一種對(duì)數(shù)據(jù)接收的機(jī)制與數(shù)據(jù)分發(fā)相結(jié)合的數(shù)據(jù)包處理方法。
上述發(fā)明專利雖然是一種基于多核或眾核嵌入式處理器的數(shù)據(jù)包接收處理方法,但實(shí)際上只是用一個(gè)核對(duì)數(shù)據(jù)包進(jìn)行接收處理,并沒(méi)有涉及到多核或眾核嵌入式處理器的數(shù)據(jù)包的多核接收處理,更未提及對(duì)網(wǎng)絡(luò)數(shù)據(jù)包的接收進(jìn)行并行化處理,且對(duì)于多核或眾核嵌入式處理器,針對(duì)網(wǎng)絡(luò)數(shù)據(jù)包的接收并行化設(shè)計(jì)對(duì)大數(shù)據(jù)的應(yīng)用更具有實(shí)際意義。
發(fā)明內(nèi)容
針對(duì)以上現(xiàn)有技術(shù)中的不足,本發(fā)明的目的在于提供一種對(duì)高速網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行快速準(zhǔn)確的接收,滿足10GE網(wǎng)絡(luò)測(cè)量的需求的數(shù)據(jù)包并行化接收方法,本發(fā)明的技術(shù)方案如下:
一種基于眾核處理器的高速網(wǎng)絡(luò)數(shù)據(jù)包并行化接收方法,其包括以下步驟:
101、將眾核處理器的N個(gè)核分成兩類核,即用于接收網(wǎng)絡(luò)數(shù)據(jù)包頭的網(wǎng)絡(luò)數(shù)據(jù)接收核和對(duì)網(wǎng)絡(luò)數(shù)據(jù)內(nèi)容進(jìn)行處理的網(wǎng)絡(luò)數(shù)據(jù)處理核,所述網(wǎng)絡(luò)數(shù)據(jù)接收核又分為讀取核、散列核、分配核及通知核,其中讀取核是用來(lái)處理網(wǎng)卡接收到的網(wǎng)絡(luò)數(shù)據(jù)包的包頭信息,包括對(duì)包頭信息進(jìn)行第二層Hash以及提取TCP或者UDP包的源端口和目的端口;散列核是根據(jù)讀取的包頭信息進(jìn)行散列即計(jì)算數(shù)據(jù)包頭的第三層、四層的Hash值來(lái)選擇散列槽;分配核是根據(jù)選擇好的散列槽來(lái)選擇網(wǎng)絡(luò)數(shù)據(jù)處理核,發(fā)送核用于完成將網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給網(wǎng)絡(luò)數(shù)據(jù)處理核,其中網(wǎng)絡(luò)數(shù)據(jù)接收核與網(wǎng)絡(luò)數(shù)據(jù)處理核之間采用片上網(wǎng)絡(luò)進(jìn)行通信,所述網(wǎng)絡(luò)數(shù)據(jù)接收核的讀取核、散列核、分配核及通知核之間也采用片上網(wǎng)絡(luò);
102、當(dāng)網(wǎng)絡(luò)數(shù)據(jù)到來(lái)時(shí),網(wǎng)卡適配層接口會(huì)將整個(gè)數(shù)據(jù)包存儲(chǔ)到一個(gè)16KB的先入先出FIFO循環(huán)隊(duì)列稱為iPkt數(shù)據(jù)內(nèi)容中,而將數(shù)據(jù)包頭存儲(chǔ)到一個(gè)4KB的循環(huán)隊(duì)列稱為iHdr數(shù)據(jù)包頭中,然后通過(guò)頭部信息將數(shù)據(jù)包通過(guò)直接內(nèi)存存取的方式傳送到相應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)處理核隊(duì)列中,網(wǎng)絡(luò)數(shù)據(jù)處理核提取數(shù)據(jù)并進(jìn)行處理。
進(jìn)一步的,步驟101中的網(wǎng)絡(luò)數(shù)據(jù)接收核對(duì)網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行接收的步驟具體為:初始化配置相關(guān)網(wǎng)絡(luò)數(shù)據(jù)處理核的接收信息,網(wǎng)絡(luò)數(shù)據(jù)處理核到網(wǎng)絡(luò)數(shù)據(jù)接收核注冊(cè);分配內(nèi)存空間以及為網(wǎng)絡(luò)數(shù)據(jù)選擇緩存空間大?。坏却嚓P(guān)輸入,如果沒(méi)有相關(guān)輸入,則繼續(xù)等待;如果有相關(guān)輸入,則看輸入得是相關(guān)消息還是相關(guān)數(shù)據(jù),如果是相關(guān)消息的話就接收,其中相關(guān)消息包括注冊(cè)消息、緩沖區(qū)返回的消息、注銷消息及退出消息;如果是退出消息,網(wǎng)絡(luò)數(shù)據(jù)接收核就停止工作;如果是其它消息就處理并更新返回的相關(guān)消息;如果輸入是相關(guān)數(shù)據(jù)的話,根據(jù)輸入的網(wǎng)絡(luò)數(shù)據(jù)的包頭相關(guān)信息解析此數(shù)據(jù)包頭并接收此數(shù)據(jù)包頭,再根據(jù)解析此數(shù)據(jù)包頭出來(lái)的信息與初始化時(shí)配置的相關(guān)信息進(jìn)行匹配,如果在初始化時(shí)已經(jīng)有了此信息時(shí)就直接查詢相應(yīng)的槽散列,根據(jù)槽散列再結(jié)合相應(yīng)的分發(fā)算法及映射表選擇相應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)處理核,根據(jù)此數(shù)據(jù)包頭里面數(shù)據(jù)的大小來(lái)選擇數(shù)據(jù)緩存空間;如果沒(méi)有此信息,再根據(jù)此數(shù)據(jù)包頭的第三層、四層信息進(jìn)行hash運(yùn)算并計(jì)算其槽散列,然后再重復(fù)上一步來(lái)選擇合適的數(shù)據(jù)緩存空間和網(wǎng)絡(luò)數(shù)據(jù)處理核;最后網(wǎng)絡(luò)數(shù)據(jù)接收核通知網(wǎng)絡(luò)數(shù)據(jù)處理核接收網(wǎng)絡(luò)數(shù)據(jù)并進(jìn)行相應(yīng)的處理。
進(jìn)一步的,所述的多眾核嵌入式處理器為同構(gòu)或異構(gòu)處理器,所述核的數(shù)量至少為8個(gè),所述收發(fā)端口配置包括至少2個(gè)GE千兆網(wǎng)絡(luò)端口,其中一個(gè)為RX接收端口,另一個(gè)為TX傳輸端口。
本發(fā)明的優(yōu)點(diǎn)及有益效果如下:
(1)本發(fā)明提出的對(duì)高速網(wǎng)絡(luò)數(shù)據(jù)包接收模型并行化設(shè)計(jì)方案可擴(kuò)展性增強(qiáng),適用于目前大多數(shù)的多核或眾核嵌入式處理器,滿足了大部分應(yīng)用對(duì)高速網(wǎng)絡(luò)數(shù)據(jù)處理的需求。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于重慶郵電大學(xué);,未經(jīng)重慶郵電大學(xué);許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510056076.0/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 網(wǎng)絡(luò)和網(wǎng)絡(luò)終端
- 網(wǎng)絡(luò)DNA
- 網(wǎng)絡(luò)地址自適應(yīng)系統(tǒng)和方法及應(yīng)用系統(tǒng)和方法
- 網(wǎng)絡(luò)系統(tǒng)及網(wǎng)絡(luò)至網(wǎng)絡(luò)橋接器
- 一種電力線網(wǎng)絡(luò)中根節(jié)點(diǎn)網(wǎng)絡(luò)協(xié)調(diào)方法和系統(tǒng)
- 一種多網(wǎng)絡(luò)定位方法、存儲(chǔ)介質(zhì)及移動(dòng)終端
- 網(wǎng)絡(luò)裝置、網(wǎng)絡(luò)系統(tǒng)、網(wǎng)絡(luò)方法以及網(wǎng)絡(luò)程序
- 從重復(fù)網(wǎng)絡(luò)地址自動(dòng)恢復(fù)的方法、網(wǎng)絡(luò)設(shè)備及其存儲(chǔ)介質(zhì)
- 神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法、裝置及存儲(chǔ)介質(zhì)
- 網(wǎng)絡(luò)管理方法和裝置





