亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        網(wǎng)絡(luò)數(shù)據(jù)流還原重組技術(shù)研究

        2011-03-17 16:07:26李芳馨劉嘉勇
        通信技術(shù) 2011年7期
        關(guān)鍵詞:序列號(hào)分片數(shù)據(jù)流

        李芳馨,劉嘉勇

        (四川大學(xué) 電子信息學(xué)院信息安全研究所,四川 成都 610065)

        0 引言

        傳輸控制協(xié)議(TCP,Transmission Control Protocol)重組主要應(yīng)用于安全產(chǎn)品中,入侵檢測(cè)中尤為常見(jiàn),還有各類防火墻等。但是由于現(xiàn)今由于網(wǎng)絡(luò)數(shù)據(jù)流的激增,為了減少中央處理器(CPU,Central Processing Unit)的處理壓力,各類安全產(chǎn)品都紛紛采取硬件實(shí)現(xiàn)。硬件實(shí)現(xiàn)的好處非常多,可以自己提供緩存,大量減少內(nèi)核與應(yīng)用的交互,而且提高包截獲的速度同時(shí)準(zhǔn)確進(jìn)行包過(guò)濾。設(shè)計(jì)繁雜的采集卡甚至可以在硬件上實(shí)現(xiàn)TCP處理,但是同時(shí)帶來(lái)的成本問(wèn)題也比較驚人。

        而重組軟件中常常使用的是網(wǎng)絡(luò)入侵檢測(cè)開發(fā)庫(kù)(libnids,Library Network Intrusion Detection System),由于設(shè)計(jì)問(wèn)題局限于對(duì)單個(gè)文件的處理,不適于對(duì)數(shù)據(jù)流的不間斷處理,同時(shí)對(duì)數(shù)據(jù)包的處理極容易出現(xiàn)差錯(cuò)。

        1 數(shù)據(jù)流重組流程詳解

        大量的數(shù)據(jù)極有可能是同時(shí)到來(lái)的,并且雜亂無(wú)章,首要的工作是要對(duì)數(shù)據(jù)流的信息進(jìn)行篩選。這部分的篩選條件包括有數(shù)據(jù)包長(zhǎng)度,數(shù)據(jù)包頭,數(shù)據(jù)包內(nèi)容等。首先是要剔除無(wú)用雜亂的信息,其中不含內(nèi)容成分的數(shù)據(jù)包包括有長(zhǎng)度有限且不含有特殊標(biāo)志位的純確認(rèn)字符(ACK,ACK nowledge Character)確認(rèn)包、Internet控制報(bào)文協(xié)議(ICMP ,Internet Control Message Protocol)數(shù)據(jù)包,地址解析協(xié)議(ARP,Address Resolution Protocol)數(shù)據(jù)包等等,進(jìn)行網(wǎng)絡(luò)互連協(xié)議(IP,Internet Protocol)還原的話要對(duì)硬件地址(MAC,Media Access Control)頭進(jìn)行解析分辨,確認(rèn)需要進(jìn)行處理的IP協(xié)議包,這個(gè)過(guò)程中由于網(wǎng)絡(luò)類型的緣故還可能要考慮點(diǎn)到點(diǎn)連接協(xié)議(PPPoE,Point-to-Point Protocol over Ethernet)數(shù)據(jù)包的解析。接下來(lái)進(jìn)行TCP重組的重點(diǎn)首先是要分辨出各個(gè)連接,分辨根據(jù)是四元組。這里面對(duì)的問(wèn)題是IP分片,因?yàn)镮P分片會(huì)導(dǎo)致網(wǎng)絡(luò)層頭部缺失。將需要還原的連接按四元組組建鏈條,將數(shù)據(jù)按照相應(yīng)的順序排列存儲(chǔ),繼而根據(jù)數(shù)據(jù)包的內(nèi)部信息進(jìn)行進(jìn)步一處理,將內(nèi)容寫入文件當(dāng)中保存,即還原結(jié)束。這部分試圖模擬計(jì)算機(jī)終端中的處理過(guò)程,意即在經(jīng)過(guò)各個(gè)層次的數(shù)據(jù)包頭剝離之后將數(shù)據(jù)本身推入應(yīng)用層中。但是在網(wǎng)絡(luò)尤其是骨干網(wǎng)中進(jìn)行,則會(huì)面對(duì)數(shù)據(jù)量巨大,無(wú)應(yīng)用層檢錯(cuò),數(shù)據(jù)回環(huán)、數(shù)據(jù)重復(fù)等種種問(wèn)題。同時(shí)導(dǎo)致了數(shù)據(jù)處理變得復(fù)雜和內(nèi)存緊張。以下提出一部分的解決方案。

        (1)連接辨析

        每個(gè)數(shù)據(jù)包都要進(jìn)行讀取和分析,以獲取四元組分辨屬于哪個(gè)連接來(lái)進(jìn)行下一步的還原。四元組的匹配是個(gè)重要的問(wèn)題,在沒(méi)有IP分片的情況下可以考慮使用針對(duì)四元組的散列算法(Hash)方式節(jié)省空間,加快匹配速度,但是這樣可能會(huì)由于Hash算法的復(fù)雜性影響整個(gè)程序[1]。

        (2)IP分片處理

        IP分片只有在第一個(gè)包中帶有網(wǎng)絡(luò)層數(shù)據(jù)包頭,意即IP分片的后續(xù)內(nèi)容中只能獲取 IP地址而沒(méi)有端口無(wú)法湊出四元組進(jìn)行分辨,此類數(shù)據(jù)包可以模糊匹配,將它設(shè)定生存期后加入到IP相合的鏈條中去,根據(jù)該連接的實(shí)際情況進(jìn)一步處理。連接在生存期中始終不出現(xiàn)第一個(gè)分片的話即認(rèn)為連接并沒(méi)有出現(xiàn)分片,將分片丟棄。IP頭中的分片順序作為IP分片排序方式,可以重組被分片的報(bào)文,但是重復(fù)的順序無(wú)論如何處理都可能會(huì)導(dǎo)致一定的差錯(cuò)出現(xiàn)。

        這樣的處理可能會(huì)導(dǎo)致內(nèi)存被重復(fù)數(shù)據(jù)占用。但實(shí)際上TCP連接中極力避免出現(xiàn)IP分片的出現(xiàn),影響比較微小。即便是用戶數(shù)據(jù)包協(xié)議(UDP,User Datagram Protocol),同時(shí)出現(xiàn)兩個(gè)分片連接可能性也不大[2]。

        (3)TCP標(biāo)志位判斷

        TCP頭中包含有當(dāng)前數(shù)據(jù)包的標(biāo)志位,含有創(chuàng)建、結(jié)束連接、數(shù)據(jù)確認(rèn)等,有效辨別是必須的,同時(shí)可以提高數(shù)據(jù)處理速度。TCP建立連接需要三次握手,其中包含有兩次建立連接(SYN,synchronize)標(biāo)志置位,選擇從SYN標(biāo)志開始建立連接鏈,那就需要把重復(fù)的 SYN忽略掉。而出現(xiàn)的第一個(gè)結(jié)束連接(FIN,finish)包則意味著這次連接宣告結(jié)束,可以做結(jié)束處理,及時(shí)將連接完全清空,而對(duì)重復(fù)的FIN也要忽略。連接生存期的設(shè)定可以固定,同時(shí)也可以通過(guò)是否有新連接來(lái)判定是否連接已經(jīng)結(jié)束。同樣的四元組新出現(xiàn)SYN包或者復(fù)位(RST,Reset the connection)包,即該連接宣告結(jié)束,清空連接鏈,停止該連接的重組。

        (4)TCP報(bào)文處理

        由于 UDP不可靠性沒(méi)有自檢能力且沒(méi)有前后順序,只要將依次捕獲的數(shù)據(jù)包的包頭剝離,獲取數(shù)據(jù)即可,但是必須要進(jìn)行生存期處理,因?yàn)?UDP的結(jié)束沒(méi)有數(shù)據(jù)包進(jìn)行提示。但是可靠連接的TCP則相反,為了獲取相對(duì)有效數(shù)據(jù),就需要在程序中進(jìn)行比較復(fù)雜的可靠性處理。

        最重要的依據(jù)就是TCP頭中的序列號(hào)字段,這部分標(biāo)志著數(shù)據(jù)包中的內(nèi)容在整個(gè)要還原內(nèi)容的位置,可以輔助檢錯(cuò)并部分糾錯(cuò)。正常情況下,序列號(hào)加上這次的數(shù)據(jù)長(zhǎng)度即是下次序列號(hào)的大小。但是很容易出現(xiàn)小于或者大于預(yù)定的序列號(hào)的情況。

        出現(xiàn)較小的序列號(hào)有幾種可能性:①由于超時(shí)重傳或者其他相關(guān)原因,出現(xiàn)的是純粹重復(fù)的數(shù)據(jù)包,這個(gè)最容易處理,可以直接丟棄?;蛘呤侵丿B的數(shù)據(jù)包,將預(yù)計(jì)的序列號(hào)大小減去實(shí)際的序列號(hào)大小,計(jì)算出重疊的數(shù)據(jù)長(zhǎng)度,將這部分剔除即可獲取真實(shí)的數(shù)據(jù);②新的數(shù)據(jù)包雖然有重復(fù),但實(shí)際上是由于上一個(gè)數(shù)據(jù)包被客戶端認(rèn)定為錯(cuò)誤或者其他有必要重新傳送的原因而再一次被傳遞,這個(gè)時(shí)候可以采取的措施是將新的數(shù)據(jù)包取代舊的相同序列號(hào)的數(shù)據(jù)包并入連接鏈中區(qū),這樣做可能會(huì)影響到緊跟在后面的數(shù)據(jù)包內(nèi)容。這個(gè)時(shí)候難以確認(rèn)新的數(shù)據(jù)包究竟是出于什么原因出現(xiàn)是個(gè)難題,究竟是時(shí)延太長(zhǎng)還是新發(fā)送的內(nèi)容,同時(shí)還會(huì)影響到數(shù)據(jù)排序后的進(jìn)一步處理;③出現(xiàn)數(shù)據(jù)回環(huán),32 bit的序列號(hào)在數(shù)據(jù)包流中不斷遞增,發(fā)送序號(hào)在增長(zhǎng)到頂峰之后,開始重新啟用較小的序列號(hào)開始重新計(jì)算。這個(gè)時(shí)候可以參考防止重復(fù)報(bào)文(PAWS,Protect Against Wrapped Sequence numbers)算法使用時(shí)間戳[3],時(shí)間戳對(duì)每個(gè)將要發(fā)送的窗口加一或者更大,可以作為判斷基準(zhǔn)。RST標(biāo)志未置位、TCP曾收到過(guò)對(duì)端發(fā)送的有效非零時(shí)間戳,當(dāng)前報(bào)文段中的時(shí)間戳小于原先收到的時(shí)間戳以上三個(gè)條件同時(shí)為真,則認(rèn)定該報(bào)文段重復(fù)丟棄。反之,則保留重新計(jì)算序列號(hào)。如果連接出現(xiàn)了很長(zhǎng)時(shí)間的空閑,則收到的報(bào)文段時(shí)間戳值也會(huì)回繞導(dǎo)致了PAWS測(cè)試失敗。這個(gè)可能性雖然微小,但是依然不可忽視需要進(jìn)一步研究。

        出現(xiàn)較大的序列號(hào)則是明顯出現(xiàn)了丟包的情況。也就是在預(yù)定的序列號(hào)和現(xiàn)在獲取的數(shù)據(jù)包中間有缺失。這個(gè)缺失的數(shù)據(jù)包可能會(huì)在一段時(shí)間后再度捕獲,但也可能是出現(xiàn)了捕獲數(shù)據(jù)流不全出現(xiàn)丟包現(xiàn)象。即時(shí)分析中想要做出判斷是十分困難的,只能進(jìn)行短暫的等待以及容忍必要的缺失。否則會(huì)影響數(shù)據(jù)處理速度和內(nèi)存占用。

        (5)內(nèi)存緩沖區(qū)占用處理

        在使用軟件進(jìn)行重組還原的情況下,每個(gè)數(shù)據(jù)包的處理都要先將數(shù)據(jù)包的內(nèi)容讀入內(nèi)存。并且還要進(jìn)行實(shí)時(shí)分析,新的數(shù)據(jù)會(huì)不斷涌入。這樣為了保證內(nèi)存不被擁堵,就要盡量快速的處理數(shù)據(jù)包,減少相關(guān)數(shù)據(jù)滯留在內(nèi)存的時(shí)間,盡快將數(shù)據(jù)包送出內(nèi)存[4]。

        在此選擇的處理方式向客戶終端學(xué)習(xí),將數(shù)據(jù)及時(shí)推入應(yīng)用層。在這里表現(xiàn)為寫入文件。這樣在內(nèi)存中保留文件句柄,不斷將數(shù)據(jù)從內(nèi)存寫入硬盤,減少了內(nèi)存的占用。要考量的則是寫入的時(shí)機(jī)。這里同樣參考終端主機(jī)操作系統(tǒng)的處理方式。

        UDP的數(shù)據(jù)沒(méi)有順序性,不過(guò)在分片情況下重組時(shí)還是會(huì)出現(xiàn)數(shù)據(jù)排序的情況。在沒(méi)有分片或者分片重組已經(jīng)結(jié)束的情況下,每來(lái)一個(gè)數(shù)據(jù)包都可以直接剝離數(shù)據(jù)包頭,將數(shù)據(jù)頂入應(yīng)用層[5]。

        TCP的數(shù)據(jù)情況要復(fù)雜得多,在經(jīng)過(guò)一系列的判斷后可能采取拋棄重復(fù)報(bào)文,剪裁重復(fù)報(bào)文段等手段。但是缺包情況則在必要情況下適當(dāng)忽略,這部分參考標(biāo)志位推入(PSH,push)標(biāo)志,對(duì)于操作系統(tǒng)來(lái)說(shuō),出現(xiàn)PSH就要把數(shù)據(jù)推入應(yīng)用層進(jìn)行處理,在數(shù)據(jù)流重組的相同情況下,可以選擇近似的處理,對(duì)丟失的包進(jìn)行適當(dāng)忽略,以防止程序崩潰和緩沖區(qū)擁堵[6]。采取此種解決方式可能會(huì)出現(xiàn)的問(wèn)題即是無(wú)法完善處理包只是延時(shí)而并未丟失的情況。補(bǔ)充完善的一種方式就是重新寫入文件,但這樣需要保留前面所有連接內(nèi)容的情況,付出的代價(jià)過(guò)大。事實(shí)上PSH字段出現(xiàn),即意味著所發(fā)出的包基本已經(jīng)到位,可以降低以上風(fēng)險(xiǎn)。

        2 結(jié)語(yǔ)

        網(wǎng)絡(luò)流匹配還原是一項(xiàng)非常有用的工作。網(wǎng)絡(luò)在現(xiàn)實(shí)生活中占有的比重越來(lái)越大,所承載的信息量也是越來(lái)越多,如何從同樣日漸繁雜增多的數(shù)據(jù)量中獲取有意義的數(shù)據(jù)是非常重要的[7]。而研究網(wǎng)絡(luò)數(shù)據(jù)流的即時(shí)還原獲取的信息更具有及時(shí)性。軟件實(shí)現(xiàn)這個(gè)功能要盡量用有限的資源獲取最大的信息量,并且要求有足夠的穩(wěn)定性[8]。

        [1] 鄧月華.基于寬帶網(wǎng)絡(luò)的TCP報(bào)文還原與應(yīng)用研究[D].成都:四川大學(xué), 2006.

        [2] 劉益洪,戴冬梅.TCP/IP的擁塞控制策略[J].通信技術(shù),2008,41(07):135-137.

        [3] GARY R W, RICHARD STEVENS W.TCP/IP詳解卷二:實(shí)現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2010:636.

        [4] 侯新宇,王晟,駱光明.基于接收端的TCP流量控制及優(yōu)化研究[J].通信技術(shù),2007,40(10):21-22,48.

        [5] DANIEL P B, MARCO Cesati.深入理解Linux內(nèi)核[M].第2版.北京:中國(guó)電力出版社,2005:223.

        [6] 趙軍偉,劉勛,董浩.基于TCP協(xié)議的遠(yuǎn)程監(jiān)控系統(tǒng)的實(shí)現(xiàn)[J].中國(guó)測(cè)試,2010(01):23.

        [7] 金甌,施勇,薛質(zhì).基于TCP協(xié)議的網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)篡改[J].信息安全與通信保密,2010(04):37.

        [8] 張藝瀕,張志斌,趙詠,等.TCP與UDP網(wǎng)絡(luò)流量對(duì)比分析研究[J].計(jì)算機(jī)應(yīng)用研究,2010(06):58.

        猜你喜歡
        序列號(hào)分片數(shù)據(jù)流
        上下分片與詞的時(shí)空佈局
        詞學(xué)(2022年1期)2022-10-27 08:06:12
        分片光滑邊值問(wèn)題的再生核方法
        CDN存量MP4視頻播放優(yōu)化方法
        汽車維修數(shù)據(jù)流基礎(chǔ)(下)
        基于模糊二分查找的幀分片算法設(shè)計(jì)與實(shí)現(xiàn)
        recALL
        一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機(jī)制
        基于數(shù)據(jù)流聚類的多目標(biāo)跟蹤算法
        北醫(yī)三院 數(shù)據(jù)流疏通就診量
        PP助手教你辨別翻新iPhone5小白不再中招
        夜夜欢性恔免费视频| 三级国产自拍在线观看| 国产日产韩国av在线| 国产超碰人人爽人人做人人添| 俺来也俺去啦久久综合网| 亚洲欧美日韩国产综合专区| 免费黄网站一区二区三区| 老熟妇乱子伦牲交视频| 人妻夜夜爽天天爽一区| 亚洲欧洲精品成人久久曰影片| 高清亚洲成av人片乱码色午夜| 亚洲处破女av日韩精品中出| 久久国产精品久久久久久| 人妻无码视频| 无码精品日韩中文字幕| 91亚洲无码在线观看| 亚洲处破女av一区二区| 水野优香中文字幕av网站| 欧美国产精品久久久乱码| 国产成人亚洲精品77| 日本一道本加勒比东京热| 成人丝袜激情一区二区| 亚洲熟伦熟女新五十路熟妇| 国产永久免费高清在线观看视频| 国产av天堂一区二区二区| 射精专区一区二区朝鲜| 热の国产AV| 国产中文字幕亚洲综合| 国产福利一区二区三区在线视频| 海角国精产品一区一区三区糖心 | 少妇高潮免费在线观看| 美女张开腿黄网站免费| 精品少妇ay一区二区三区| 国产精品日韩欧美一区二区区| 国产一区二区三区蜜桃av| 日本一区二区三区免费精品| 麻豆果冻传媒在线观看| 国产亚洲午夜精品| 91亚洲免费在线观看视频| 国产乱码卡二卡三卡老狼| 欧美亚洲日韩国产区|