專利名稱:一種流量隨機亂序的回放方法
技術(shù)領域:
本發(fā)明涉及網(wǎng)絡數(shù)據(jù)處理領域,具體涉及一種流量隨機亂序的回放方法。
背景技術(shù):
隨著互聯(lián)網(wǎng)的飛速發(fā)展,網(wǎng)絡流量的猛增,網(wǎng)絡數(shù)據(jù)處理的需要求也隨之增 長。在研發(fā)網(wǎng)絡數(shù)據(jù)處理的各種相關(guān)產(chǎn)品中,尤其在調(diào)試階段,很多應用需要把網(wǎng)絡中 的流量打亂序列進行回放,尤其是對TCP層的流排序。不可避免的需要使用到網(wǎng)絡中流 量回放。由于網(wǎng)絡環(huán)境的復雜性,數(shù)據(jù)包在傳送過程中經(jīng)由的路線可能不一樣,導致數(shù) 據(jù)包的發(fā)送順序和接收順序不一致,也就是亂序。當前有不少軟硬件能對流量能進行回放,如公開號CN101841441A的專利,公 開了硬件如易測的網(wǎng)絡測試設備,軟件如tcpreplay。然而,這些流量回放方法一般 采用順序回放流量或或一個包一個包的按事先的設定進行亂序處理。這些方法實現(xiàn)起來 比較復雜,而且亂序范圍比較難以控制所以說這些方法雖然一定程度上對網(wǎng)絡環(huán)境進行 了模擬,但不能滿足需要打亂數(shù)據(jù)包順序回放的需求,也不能滿足控制數(shù)據(jù)包亂序范圍 和亂序程度需求,更不能模擬網(wǎng)絡的隨機性。
發(fā)明內(nèi)容
為解決上述問題,本發(fā)明提供了一種流量隨機亂序的回放方法。一種流量隨機亂序的回放方法,包括以下步驟A、從網(wǎng)絡獲得一定流量的數(shù)據(jù)并存儲;B、讀取網(wǎng)絡數(shù)據(jù),存儲數(shù)據(jù)包的位置和長度信息,統(tǒng)計包數(shù)N;C、指定M個亂序區(qū)域,指定M個亂序比例;D、根據(jù)亂序區(qū)域和亂序比例隨機生成一個數(shù)據(jù)包的新發(fā)包序列;E、根據(jù)新發(fā)包序列,按照步驟B存儲的數(shù)據(jù)包信息讀取相應的數(shù)據(jù)包發(fā)送出 去。本發(fā)明的第一種優(yōu)選技術(shù)方案在于可以使用tcpdump軟件獲取網(wǎng)絡數(shù)據(jù)。本發(fā)明的第二種優(yōu)選技術(shù)方案在于所述亂序區(qū)域所包含的數(shù)據(jù)不重疊,區(qū)域 與區(qū)域之間可以有數(shù)據(jù)包,這些數(shù)據(jù)包在亂序區(qū)域之外,不參與亂序。本發(fā)明的第三種優(yōu)選技術(shù)方案在于所述亂序比例按順序?qū)獊y序區(qū)域,控制 亂序區(qū)域的亂序程度。本發(fā)明有益效果如下1.此發(fā)明易于實現(xiàn);2.對于整個流量來說,亂序比例和亂序范圍可控;3.可以靈活的選擇亂序的多個區(qū)域;4.模擬了網(wǎng)絡的隨機特性,指定區(qū)域的亂序是隨機的。
圖1是本發(fā)明流程圖
具體實施例方式(1)從真實網(wǎng)絡獲得一定流量的數(shù)據(jù)并存儲;使以使用tcpdump抓取需要的數(shù)據(jù)存入文件中。(2)讀取網(wǎng)絡數(shù)據(jù),存儲數(shù)據(jù)包信息。打開存儲數(shù)據(jù)的文件,存儲數(shù)據(jù)包的位置信息和長度信息,并統(tǒng)計數(shù)據(jù)包總數(shù) N;(3)指定M個亂序區(qū)域,指定M個亂序比例;指定M個亂序的區(qū)域,每一個區(qū)域所包含的數(shù)據(jù)不重疊,區(qū)域與區(qū)域之間可以 有數(shù)據(jù)包,這些數(shù)據(jù)包在亂序區(qū)域之外,不參與亂序。指定M個亂序比例,每個比例按 順序?qū)獊y序區(qū)域,控制亂序區(qū)域的亂序程度。(4)根據(jù)擾亂序區(qū)域各和亂序比例隨機生成一個數(shù)據(jù)包的新發(fā)包序列;根據(jù)亂序區(qū)域和亂序比例隨機生成M個隨機序列,Njl Nj2 (1 < = Njl < Nj2 <=N,Njl,Nj2是數(shù)據(jù)包在序列中的位置,其是l< = j<=M),綜合數(shù)據(jù)包總數(shù), 得到一個新的數(shù)據(jù)包發(fā)送序列1,2,3,Njl,…,Nj2,,...N-2,N-I, N;。(5)根據(jù)新發(fā)包序列,回放數(shù)據(jù)包。根據(jù)新發(fā)包序列,按照步驟(2)存儲的數(shù)據(jù)包信息讀取相應的數(shù)據(jù)包發(fā)送出 去。
權(quán)利要求
1.一種流量隨機亂序的回放方法,其特征在于包括以下步驟A、從網(wǎng)絡獲得一定流量的數(shù)據(jù)并存儲;B、讀取網(wǎng)絡數(shù)據(jù),存儲數(shù)據(jù)包的位置和長度信息,統(tǒng)計包數(shù)N;C、指定M個亂序區(qū)域,指定M個亂序比例;D、根據(jù)亂序區(qū)域和亂序比例隨機生成一個數(shù)據(jù)包的新發(fā)包序列;E、根據(jù)新發(fā)包序列,按照步驟B存儲的數(shù)據(jù)包信息讀取相應的數(shù)據(jù)包發(fā)送出去。
2.如權(quán)利要求1所述一種流量隨機亂序的回放方法,其特征在于可以使用tcpdump 軟件獲取網(wǎng)絡數(shù)據(jù)。
3.如權(quán)利要求1所述一種流量隨機亂序的回放方法,其特征在于所述亂序區(qū)域所 包含的數(shù)據(jù)不重疊,區(qū)域與區(qū)域之間可以有數(shù)據(jù)包,這些數(shù)據(jù)包在亂序區(qū)域之外,不參 與亂序。
4.如權(quán)利要求1所述一種流量隨機亂序的回放方法,其特征在于所述亂序比例按 順序?qū)獊y序區(qū)域,控制亂序區(qū)域的亂序程度。
全文摘要
本發(fā)明提供了一種流量隨機亂序的回放方法。從真實網(wǎng)絡獲得一定流量的數(shù)據(jù)并存儲;讀取網(wǎng)絡數(shù)據(jù),存儲數(shù)據(jù)包的位置長度信息,統(tǒng)計包數(shù)N;指定M個亂序區(qū)域,指定M個亂序比例;根據(jù)擾亂序區(qū)域各和亂序比例隨機生成一個數(shù)據(jù)包的新發(fā)包序列;根據(jù)新發(fā)包序列,按照存儲的數(shù)據(jù)包信息讀取相應的數(shù)據(jù)包發(fā)送出去。本發(fā)明易于實現(xiàn);對于整個流量來說,亂序比例和亂序范圍可控;可以靈活的選擇亂序的多個區(qū)域;模擬了網(wǎng)絡的隨機特性,指定區(qū)域的亂序是隨機的。
文檔編號H04L12/56GK102014072SQ20101059800
公開日2011年4月13日 申請日期2010年12月17日 優(yōu)先權(quán)日2010年12月17日
發(fā)明者劉興奎, 劉朝輝, 劉燦, 李鋒偉 申請人:天津曙光計算機產(chǎn)業(yè)有限公司