[發明專利]一種網絡數據包的存儲方法及裝置在審
| 申請號: | 201811052722.6 | 申請日: | 2018-09-10 |
| 公開(公告)號: | CN109257300A | 公開(公告)日: | 2019-01-22 |
| 發明(設計)人: | 陳志華 | 申請(專利權)人: | 湖北微源卓越科技有限公司 |
| 主分類號: | H04L12/861 | 分類號: | H04L12/861 |
| 代理公司: | 武漢河山金堂專利事務所(普通合伙) 42212 | 代理人: | 胡清堂 |
| 地址: | 430073 湖北省武漢市東*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據包 數據包存儲 上層應用程序 網卡驅動程序 網絡數據包 存儲空間 原數據包 預留 存儲 數據包存儲裝置 接收數據包 存儲地址 存儲隊列 存儲模塊 發送模塊 接收模塊 網絡數據 映射關系 映射模塊 原始地址 轉發效率 初始化 末尾 拷貝 主存 隊列 發送 保存 | ||
本發明提出一種網絡數據包的存儲方法,包括以下步驟:在主存中設置一個數據包存儲區并初始化數據包存儲隊列,建立所述數據包存儲區與上層應用程序的映射關系;網卡驅動程序接收數據包;在所述數據包存儲區的存儲隊列中,在每個數據包的開頭預留第一存儲空間并在末尾預留第二存儲空間;上層應用程序修改原數據包時,在所述數據包存儲區的存儲地址處修改所述原數據包并保存;網卡驅動程序發送所述修改后的數據包。本發明還提供一種數據包存儲裝置,包括映射模塊、接收模塊、存儲模塊、修改模塊、發送模塊。本發明直接在數據包的原始地址處修改數據包的結構和內容,避免了數據包在內存中的拷貝,提高數據包的轉發效率。本發明涉及網絡數據領域。
技術領域
本發明專利涉及網絡數據領域,尤其涉及一種的網絡數據包存儲方法及裝置。
背景技術
隨著社會信息化的迅猛發展,網絡設備常常需要對數據包進行存儲、修改并轉發。網絡設備存儲、修改、轉發的效率直接影響到網絡數據包的傳輸,提高網絡設備的轉發效率,有益于降低網絡數據包的延遲。傳統的網絡數據包修改并轉發方法是在數據包修改后,重新開辟一塊內存,先對數據包進行內存拷貝,并將原來包的內容和修改的內容全部寫到新的內存地址上,這種方法保存的數據包體積較大,寫入的過程比較耗時,網絡數據包的轉發效率不高,特別當數據包的內容比較大時,拷貝的過程更費時。
因此,如果能夠采用好的數據包存儲方法減少這種內存拷貝,就能的提高數據包的修改速率,從而提高系統的整體轉發效率。
發明內容
本發明提出了一種網絡數據包的存儲方法及裝置,解決網絡數據包轉發效率低的問題。
本發明實施例的第一方面,提出了一種網絡數據包存儲方法,包括如下技術方案:
S1、在主存儲器中設置一個數據包存儲區并初始化存儲隊列,建立所述數據包存儲區與上層應用程序的映射關系;
S2、網卡驅動程序接收數據包;
S3、將接收到的原數據包加入所述數據包存儲區的存儲隊列時,在每個數據包的開頭預留第一存儲空間,同時在每個數據包的末尾預留第二存儲空間;
S4、上層應用程序修改原數據包時,在所述數據包存儲區的存儲地址處修改所述原數據包并保存;
S5、將修改后的數據包的起始地址發送給網卡驅動程序,網卡驅動程序發送所述修改后的數據包。
在上述技術方案中,步驟S3中所述第一存儲空間、所述原數據包的存儲空間和所述第二存儲空間為連續空間。
在上述技術方案中,步驟S4中所述在所述數據包存儲區的存儲地址處修改所述原數據包之前還包括:
根據數據指針判斷上層應用程序需要修改的數據包的具體修改位置。
在上述技術方案中,步驟S4中所述在所述數據包存儲區的存儲地址處修改所述原數據包的過程包括:
若需要在所述原數據包的開頭額外增加新的內容,直接將新增數據寫入所述第一存儲空間;
若需要在所述原數據包的包頭部分插入新的內容,將所述原數據包中所述修改位置之前的數據段向所述第一存儲空間挪動,將新增數據寫入挪動后留出的空白區域;
若需要在所述原數據包的末尾額外增加新的內容,將新增數據寫入所述第二存儲空間;
在上述技術方案中,
所述將所述原數據包中所述修改位置之前的數據段向所述第一存儲空間挪動還包括:
保持所述數據包內數據的原存儲順序不變,挪動距離根據新增數據的大小決定。
本發明實施例的第二方面,提供了一種網絡數據包存儲裝置,該裝置包括如下內容:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于湖北微源卓越科技有限公司,未經湖北微源卓越科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811052722.6/2.html,轉載請聲明來源鉆瓜專利網。





