[發明專利]基于Linux內核提高網絡設備測試性能的方法在審
| 申請號: | 201711276264.X | 申請日: | 2017-12-06 |
| 公開(公告)號: | CN108011781A | 公開(公告)日: | 2018-05-08 |
| 發明(設計)人: | 張定理;操靖哲 | 申請(專利權)人: | 上海市共進通信技術有限公司 |
| 主分類號: | H04L12/26 | 分類號: | H04L12/26 |
| 代理公司: | 上海智信專利代理有限公司 31002 | 代理人: | 王潔;鄭暄 |
| 地址: | 200235 上海市徐*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 linux 內核 提高 網絡設備 測試 性能 方法 | ||
1.一種基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的方法包括以下步驟:
(1)在所述的Linux內核中加載測速模塊,并通過所述測速模塊的參數指定下載服務器的IP地址和TCP端口號;
(2)一測速鉤子函數判斷接收的報文的IP地址和TCP端口號是否和所述下載服務器的IP地址和TCP端口號相匹配,如匹配,則所述的報文為TCP下載報文并進入步驟(3),否則按正常的流程進行處理;
(3)解析所述的TCP下載報文的IP頭和TCP頭,并計算出所述的TCP下載報文的TCP數據長度;
(4)根據所述的TCP下載報文的TCP數據長度計算出ACK報文的序列號和ACK序列號;
(5)根據所述的TCP下載報文和ACK序列號,填充ACK報文并發送。
2.根據權利要求1所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的步驟(1)還包括:
所述的測速模塊掛載測速鉤子函數。
3.根據權利要求2所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的測速模塊在網絡驅動層和IP層之間掛載所述的測速鉤子函數。
4.根據權利要求3所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的掛載所述的測速鉤子函數具體為:
在內核函數netif_receive_skb()中添加一個對測速鉤子函數的調用,如果鉤子函數返回成功,則直接返回,否則按所述的正常流程進行處理。
5.根據權利要求1所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的步驟(2)中,所述的測試鉤子函數通過監聽網卡驅動接收的報文來判斷所述的報文的IP地址和TCP端口號是否和所述下載服務器的IP地址和TCP端口號相匹配。
6.根據權利要求1所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的步驟(3)中,若所述的報文為TCP三次握手的下載報文,則對該報文按所述的正常的流程進行處理。
7.根據權利要求1所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的步驟(3)中,通過獲取IP報文總長度、IP頭長度和TCP頭長度,來計算所述的TCP下載報文的TCP數據長度。
8.根據權利要求1所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的步驟(4)具體為:
解析所述的TCP下載報文的TCP頭,獲取TCP的序列號和ACK序列號,并結合TCP下載報文的TCP數據長度計算出ACK報文的序列號和ACK序列號。
9.根據權利要求7所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的TCP下載報文的TCP數據長度的計算過程如下:
TCP下載報文的TCP數據長度=IP報文總長度–IP頭長度–TCP頭長度。
10.根據權利要求8所述的基于Linux內核提高網絡設備測試性能的方法,其特征在于,所述的ACK報文的序列號和ACK序列號的計算過程如下:
ACK報文的序列號=TCP下載報文的ACK序列號;
ACK序列號=TCP下載報文的序列號+TCP下載報文的TCP數據長度。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海市共進通信技術有限公司,未經上海市共進通信技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711276264.X/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種新型、實用的架空線路標志牌安裝支架
- 下一篇:滑軌調平式立體旋轉車庫





