TCP 透明代理模塊中的數(shù)據(jù)存儲(chǔ),在 TCP 透明代理中需要用的數(shù)據(jù)結(jié)構(gòu)有以下幾種:存儲(chǔ)未經(jīng)壓縮的 TCP 數(shù)據(jù)報(bào)的結(jié)構(gòu)體 TCP_PACKET_T;存儲(chǔ) TCP 套接字四元組的QUARD_TUPLE_T;存儲(chǔ) TCP 數(shù)據(jù)發(fā)送狀態(tài)相關(guān)信息的 TCP_SEG_T;代表 TCP 連接狀態(tài)的枚舉類型 TCP_STATE_T;存儲(chǔ) TCP 連接上下文信息的 TCP_CONTEXT_T,以上幾種數(shù)據(jù)結(jié)構(gòu)是在 tcp 透明代理里起主要作用的數(shù)據(jù)結(jié)構(gòu)。
數(shù)據(jù)采集模塊通過(guò) ipq 獲得需要進(jìn)行壓縮的數(shù)據(jù)報(bào)文,把數(shù)據(jù)報(bào)文存儲(chǔ)到未經(jīng)壓縮的TCP 數(shù)據(jù)報(bào)的結(jié)構(gòu)體 TCP_PACKET_T 中,然后需要解析相應(yīng)的報(bào)文把報(bào)文中的信息,例如源地址,目的地址 ,源端口,目的端口等信息存儲(chǔ)到 TCP 套接字四元組的 QUARD_TUPLE_T,并且此連接作為一個(gè) TCP 上下文,來(lái)區(qū)分不同客戶端或者服務(wù)器發(fā)送過(guò)來(lái)的數(shù)據(jù),這個(gè)上下文信息存儲(chǔ)在存儲(chǔ) TCP 連接上下文信息的 TCP_CONTEXT_T,當(dāng)不同連接的數(shù)據(jù)到達(dá)廣域網(wǎng)加速系統(tǒng)時(shí),通過(guò)判斷這個(gè)結(jié)構(gòu)體信息,就可以判定是否是同一個(gè)連接,然后進(jìn)行數(shù)據(jù)的重組,只有相同的連接的數(shù)據(jù)才能夠把多個(gè)數(shù)據(jù)報(bào)文中的數(shù)據(jù)段結(jié)合成一個(gè)大的數(shù)據(jù)緩沖區(qū),進(jìn)行壓縮,然后重新發(fā)送到廣域網(wǎng)中。大致的過(guò)程是是用 ipq 提供的需要壓縮的數(shù)據(jù),然后把這些數(shù)據(jù)流保存到需要的數(shù)據(jù)結(jié)構(gòu)中,經(jīng)過(guò)替換算法運(yùn)算后,在特征數(shù)據(jù)中找到相應(yīng)的指紋值,然后進(jìn)行重組并加入到發(fā)送的數(shù)據(jù)存儲(chǔ)中,等待發(fā)送出去。
田鑫,專業(yè)的企業(yè)組網(wǎng)服務(wù)商,致力于為企業(yè)提供企業(yè)組網(wǎng)(SD-WAN、MPLS、云互聯(lián)),業(yè)務(wù)云化、數(shù)據(jù)中心、網(wǎng)絡(luò)安全、行業(yè)IT解決方案等相關(guān)服務(wù)。
更多相關(guān)內(nèi)容推薦:
什么是廣域網(wǎng)?廣域網(wǎng)優(yōu)化是什么意思?
廣域網(wǎng)加速原理,廣域網(wǎng)如何進(jìn)行加速?
廣域網(wǎng)加速系統(tǒng)中,數(shù)據(jù)存儲(chǔ)在 TCP 透明代理模塊的研究(一)