[發(fā)明專利]一種TCP重組方法、裝置、電子設(shè)備及存儲介質(zhì)有效
| 申請?zhí)枺?/td> | 202011337249.3 | 申請日: | 2020-11-25 |
| 公開(公告)號: | CN112491871B | 公開(公告)日: | 2023-07-28 |
| 發(fā)明(設(shè)計(jì))人: | 易存道 | 申請(專利權(quán))人: | 北京寶蘭德軟件股份有限公司 |
| 主分類號: | H04L67/565 | 分類號: | H04L67/565;H04L67/568;H04L69/163;H04L69/22 |
| 代理公司: | 北京路浩知識產(chǎn)權(quán)代理有限公司 11002 | 代理人: | 鄭朝然 |
| 地址: | 100020 北京市朝*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 tcp 重組 方法 裝置 電子設(shè)備 存儲 介質(zhì) | ||
1.一種TCP重組方法,其特征在于,包括:
在當(dāng)前TCP包的序列不滿足期望的情況下,根據(jù)所述當(dāng)前TCP包的源地址和目標(biāo)地址進(jìn)行hash得到標(biāo)識,并根據(jù)所述標(biāo)識計(jì)算得到所述當(dāng)前TCP包的緩存鏈表和當(dāng)前期望,以及按照當(dāng)前TCP包的序列順序,將當(dāng)前TCP包存儲到所述緩存鏈表中;
在緩存鏈表中所緩存的TCP包超過預(yù)設(shè)數(shù)量的情況下,則向業(yè)務(wù)層發(fā)送一個丟包事件,并提取所述緩存鏈表中的首個TCP包,作為目標(biāo)TCP包;
將所述目標(biāo)TCP包發(fā)送到業(yè)務(wù)層進(jìn)行處理;
且所述方法還包括:當(dāng)所述當(dāng)前TCP包的序列滿足期望時,將所述當(dāng)前TCP包發(fā)送到業(yè)務(wù)層進(jìn)行處理,并更新所述當(dāng)前TCP包的期望;
其中,更新所述當(dāng)前TCP包的期望,包括:
獲取所述當(dāng)前TCP包的數(shù)據(jù)長度,并確定syn標(biāo)志是否被置位;
若所述syn標(biāo)志未被置位,則將所述數(shù)據(jù)長度與所述當(dāng)前TCP包的當(dāng)前期望相加,得到更新后的所述當(dāng)前TCP包的期望;
若所述syn標(biāo)志被置位,則將所述數(shù)據(jù)長度與所述當(dāng)前TCP包的當(dāng)前期望相加,并對相加后的結(jié)果進(jìn)行加一,得到更新后的所述當(dāng)前TCP包的期望。
2.根據(jù)權(quán)利要求1所述TCP重組方法,其特征在于,所述方法還包括:
在當(dāng)前TCP包的序列滿足期望的情況下,將所述當(dāng)前TCP包發(fā)送到業(yè)務(wù)層進(jìn)行處理,并更新期望;
檢測所述緩存鏈表中的首個TCP包的序列,是否滿足更新后的期望;
在所述緩存鏈表中的首個TCP包的序列,滿足更新后的期望時,將所述緩存鏈表中的首個TCP包,作為目標(biāo)TCP包,發(fā)送到業(yè)務(wù)層進(jìn)行處理。
3.根據(jù)權(quán)利要求2所述TCP重組方法,其特征在于,在檢測所述緩存鏈表中的首個TCP包的序列,是否滿足更新后的期望的步驟之后,所述方法還包括:
在所述緩存鏈表中的首個TCP包不滿足更新后的期望時,檢測所述緩存鏈表中的TCP包的數(shù)量是否超過預(yù)設(shè)數(shù)量;
在緩存鏈表中所緩存的TCP包超過預(yù)設(shè)數(shù)量的情況下,向業(yè)務(wù)層發(fā)送一個丟包事件,并提取所述緩存鏈表中的首個TCP包,作為目標(biāo)TCP包;
將所述目標(biāo)TCP包發(fā)送到業(yè)務(wù)層進(jìn)行處理。
4.根據(jù)權(quán)利要求1所述TCP重組方法,其特征在于,所述方法還包括:
每隔預(yù)設(shè)時間間隔,觸發(fā)定時檢測,獲取當(dāng)前時刻的緩存鏈表;
遍歷當(dāng)前時刻的緩存鏈表,在當(dāng)前時刻的緩存鏈表中存在未遍歷的連接時,檢測所述連接的緩存鏈表中的首個TCP包是否超時;
若所述連接的緩存鏈表中的首個TCP包超時,則向業(yè)務(wù)層發(fā)送一個丟包事件;
將所述連接的緩存鏈表中的首個TCP包發(fā)送到業(yè)務(wù)層進(jìn)行處理。
5.根據(jù)權(quán)利要求4所述TCP重組方法,其特征在于,在所述將所述向業(yè)務(wù)層發(fā)送一個丟包事件的步驟之后,所述方法還包括:
刪除連接的緩存鏈表中的首個TCP包,得到更新后的緩存鏈表;
計(jì)算當(dāng)前期望的下一個期望,得到更新后的期望;
當(dāng)更新后的緩存鏈表中的首個TCP包不符合更新后的期望時,繼續(xù)對當(dāng)前時刻的緩存鏈表進(jìn)行遍歷。
6.根據(jù)權(quán)利要求5所述TCP重組方法,其特征在于,在所述計(jì)算當(dāng)前期望的下一個期望,得到更新后的期望的步驟之后,所述方法還包括:
當(dāng)更新后的緩存鏈表中的首個TCP包符合更新后的期望時,將所述更新后的緩存鏈表中的首個TCP包發(fā)送到業(yè)務(wù)層進(jìn)行處理;
刪除更新后的緩存鏈表中的首個TCP包,得到目標(biāo)緩存鏈表,并對更新后的期望繼續(xù)進(jìn)行更新,得到目標(biāo)期望。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京寶蘭德軟件股份有限公司,未經(jīng)北京寶蘭德軟件股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011337249.3/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 具有傳輸控制協(xié)議匯聚模塊的傳輸控制協(xié)議主機(jī)
- 一種分發(fā)傳輸TCP數(shù)據(jù)包的方法及裝置
- 一種TCP報(bào)文的發(fā)送方法、接收方法及裝置
- 一種無縫重建TCP連接的系統(tǒng)及方法
- 一種機(jī)載網(wǎng)絡(luò)服務(wù)的TCP連接處理方法
- 一種實(shí)現(xiàn)傳輸控制協(xié)議TCP傳輸?shù)姆椒把b置
- 移動終端跨區(qū)保持MEC邊緣TCP業(yè)務(wù)服務(wù)方法及系統(tǒng)
- 一種TCP熱備份的方法和裝置
- TCP報(bào)文的負(fù)載均衡方法及裝置
- 加密TCP流量采集方法與裝置





