[發(fā)明專(zhuān)利]報(bào)文轉(zhuǎn)發(fā)方法及裝置在審
| 申請(qǐng)?zhí)枺?/td> | 201710946318.2 | 申請(qǐng)日: | 2017-09-30 |
| 公開(kāi)(公告)號(hào): | CN109600313A | 公開(kāi)(公告)日: | 2019-04-09 |
| 發(fā)明(設(shè)計(jì))人: | 何三波 | 申請(qǐng)(專(zhuān)利權(quán))人: | 邁普通信技術(shù)股份有限公司 |
| 主分類(lèi)號(hào): | H04L12/741 | 分類(lèi)號(hào): | H04L12/741 |
| 代理公司: | 北京超凡志成知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11371 | 代理人: | 王寧寧 |
| 地址: | 610000 四川省成都市高*** | 國(guó)省代碼: | 四川;51 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 流表項(xiàng) 流表 內(nèi)存 報(bào)文轉(zhuǎn)發(fā) 連續(xù)存儲(chǔ) 使用效率 查找 匹配 數(shù)據(jù)通信技術(shù) 存儲(chǔ)結(jié)構(gòu) 訪問(wèn)效率 管理開(kāi)銷(xiāo) 接收?qǐng)?bào)文 連續(xù)內(nèi)存 報(bào)文 轉(zhuǎn)發(fā) 保存 分配 | ||
本發(fā)明提供一種報(bào)文轉(zhuǎn)發(fā)方法及裝置,涉及數(shù)據(jù)通信技術(shù)領(lǐng)域。該方法及裝置通過(guò)查找連續(xù)存儲(chǔ)的流表項(xiàng),提高了查找流表項(xiàng)的速度,有助于提高內(nèi)存的使用效率。具體地,該方法通過(guò)接收?qǐng)?bào)文,并從接收的所述報(bào)文中提取關(guān)鍵值進(jìn)行Hash計(jì)算;根據(jù)計(jì)算的Hash值判斷在Hash索引表對(duì)應(yīng)的一級(jí)流表中是否查找到與所述關(guān)鍵值相匹配的流表項(xiàng),其中,所述一級(jí)流表為使用一塊連續(xù)內(nèi)存來(lái)保存所述流表項(xiàng)的存儲(chǔ)結(jié)構(gòu);若是,則根據(jù)所述一級(jí)流表中匹配的流表項(xiàng)轉(zhuǎn)發(fā)所述報(bào)文。其中,連續(xù)存儲(chǔ)在一級(jí)流表中的流表項(xiàng)提高了內(nèi)存的訪問(wèn)效率并且減少了分配內(nèi)存時(shí)的管理開(kāi)銷(xiāo),進(jìn)而提高了流表項(xiàng)的查找速度以及內(nèi)存的使用效率。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)通信技術(shù)領(lǐng)域,具體而言,涉及一種報(bào)文轉(zhuǎn)發(fā)方法及裝置。
背景技術(shù)
在數(shù)據(jù)通信技術(shù)領(lǐng)域中,數(shù)據(jù)通信設(shè)備(比如,路由器)的轉(zhuǎn)發(fā)平面需要處理一些控制業(yè)務(wù),比如,訪問(wèn)控制列表(Access Control List,ACL)、服務(wù)質(zhì)量(Quality OfService,QOS)等。目前,ACL、QOS等控制業(yè)務(wù)可根據(jù)報(bào)文的六元組(源地址、源端口、目的地址、目的端口、層四協(xié)議號(hào)和接口索引)或者八元組(源地址、源端口、目的地址、目的端口、層四協(xié)議號(hào)、服務(wù)類(lèi)型、層四標(biāo)志和接口索引)唯一定義一條流,使用六元組或者八元組作為關(guān)鍵值構(gòu)建流表項(xiàng),流表項(xiàng)中包括關(guān)鍵值和其它字段。而現(xiàn)有技術(shù)中的流表查找方法比較耗時(shí),一般不能滿足數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能要求。
因此,如何提供一種可解決上述問(wèn)題的方法及裝置,以成為本領(lǐng)域技術(shù)人員亟需解決的技術(shù)問(wèn)題。
發(fā)明內(nèi)容
為了克服上述現(xiàn)有技術(shù)中的不足,本發(fā)明提供一種報(bào)文轉(zhuǎn)發(fā)方法及裝置,通過(guò)連續(xù)存儲(chǔ)流表項(xiàng)提高流表項(xiàng)的查找速度,進(jìn)而解決上述問(wèn)題。
為了實(shí)現(xiàn)上述目的,本發(fā)明較佳實(shí)施例所提供的技術(shù)方案如下所示:
就方法而言,本發(fā)明較佳實(shí)施例提供一種報(bào)文轉(zhuǎn)發(fā)方法,應(yīng)用于通信設(shè)備,所述方法包括:
接收?qǐng)?bào)文,并從接收的所述報(bào)文中提取關(guān)鍵值進(jìn)行Hash計(jì)算,以得到與所述報(bào)文對(duì)應(yīng)的Hash值;
根據(jù)所述Hash值判斷在Hash索引表對(duì)應(yīng)的一級(jí)流表中是否查找到與所述關(guān)鍵值相匹配的流表項(xiàng),其中,所述一級(jí)流表為使用一塊連續(xù)內(nèi)存來(lái)保存所述流表項(xiàng)的存儲(chǔ)結(jié)構(gòu);
若是,則根據(jù)所述一級(jí)流表中匹配的流表項(xiàng)轉(zhuǎn)發(fā)所述報(bào)文;
若否,則根據(jù)計(jì)算出的Hash值在Hash索引表對(duì)應(yīng)的二級(jí)流表中查找與所述關(guān)鍵值匹配的流表項(xiàng),根據(jù)所述二級(jí)流表中匹配的流表項(xiàng)轉(zhuǎn)發(fā)所述報(bào)文,其中,所述二級(jí)流表為使用沖突鏈表來(lái)保存流表項(xiàng)的存儲(chǔ)結(jié)構(gòu)。
在本發(fā)明的較佳實(shí)施例中,上述根據(jù)所述Hash值判斷在Hash索引表對(duì)應(yīng)的一級(jí)流表中是否查找到與所述關(guān)鍵值相匹配的流表項(xiàng)的步驟,包括:
根據(jù)所述Hash值在所述Hash索引表中查找匹配的Hash表項(xiàng),根據(jù)查找的匹配的Hash表項(xiàng)中的索引指針,在所述一級(jí)流表中的對(duì)應(yīng)連續(xù)存儲(chǔ)單元查找與所述關(guān)鍵相匹配的流表項(xiàng);所述匹配的Hash表項(xiàng)中的索引指針指向的所述一級(jí)流表中能夠存儲(chǔ)的沖突流表項(xiàng)的存儲(chǔ)單元的個(gè)數(shù),小于所述二級(jí)流表中沖突鏈表能夠存儲(chǔ)的流表項(xiàng)的個(gè)數(shù)。
在本發(fā)明的較佳實(shí)施例中,上述方法還包括:
若在所述二級(jí)流表中未查找到與所述關(guān)鍵值匹配的流表項(xiàng),則判斷所述匹配的Hash表項(xiàng)中的索引指針指向的所述一級(jí)流表中用于存儲(chǔ)沖突流表項(xiàng)的存儲(chǔ)單元是否有空閑;
若是,則在空閑的存儲(chǔ)單元中存儲(chǔ)包括所述關(guān)鍵值的所述報(bào)文對(duì)應(yīng)的流表項(xiàng);
若否,則在所述二級(jí)流表中創(chuàng)建包括所述關(guān)鍵值的所述報(bào)文對(duì)應(yīng)的流表項(xiàng)。
在本發(fā)明的較佳實(shí)施例中,上述根據(jù)所述Hash值判斷在Hash索引表對(duì)應(yīng)的一級(jí)流表中是否查找到與所述關(guān)鍵值相匹配的流表項(xiàng)的步驟,包括:
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于邁普通信技術(shù)股份有限公司,未經(jīng)邁普通信技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710946318.2/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 流老化方法及網(wǎng)絡(luò)設(shè)備
- 流表的多級(jí)化方法、多級(jí)流表處理方法及裝置
- 一種SDN流表管理方法及系統(tǒng)、交換機(jī)
- 流表下發(fā)方法、系統(tǒng)及控制器
- 實(shí)現(xiàn)流表切換的方法及控制器
- 多域流表的多級(jí)化方法及裝置、多級(jí)流表查找方法及裝置
- 基于協(xié)議無(wú)感知轉(zhuǎn)發(fā)技術(shù)的流表虛擬化裝置及方法
- 一種面向虛擬機(jī)的多級(jí)流表管控方法及系統(tǒng)
- 一種基于Openflow的報(bào)文轉(zhuǎn)發(fā)方法及設(shè)備
- 一種流表混合排序的實(shí)現(xiàn)方法
- 報(bào)文轉(zhuǎn)發(fā)路徑獲取方法和報(bào)文轉(zhuǎn)發(fā)裝置
- 報(bào)文轉(zhuǎn)發(fā)路徑獲取方法、報(bào)文轉(zhuǎn)發(fā)方法和報(bào)文轉(zhuǎn)發(fā)裝置
- 一種報(bào)文轉(zhuǎn)發(fā)方法及裝置
- 一種下行報(bào)文的轉(zhuǎn)發(fā)方法及AP設(shè)備
- 監(jiān)控報(bào)文轉(zhuǎn)發(fā)流程的方法及裝置
- 基站上行突發(fā)緩解方法及裝置
- 一種報(bào)文轉(zhuǎn)發(fā)方法及裝置
- 一種通過(guò)硬件、軟件快速報(bào)文轉(zhuǎn)發(fā)的方法和系統(tǒng)
- 一種報(bào)文轉(zhuǎn)發(fā)方法、裝置、計(jì)算設(shè)備及存儲(chǔ)介質(zhì)
- 支持車(chē)內(nèi)網(wǎng)絡(luò)總線之間的數(shù)據(jù)通信系統(tǒng)及方法





