專利名稱:基于流集合隨機抽樣的報文測量方法
技術領域:
本發(fā)明涉及用于網(wǎng)絡流的測量方法,尤其是一種基于流集合隨機抽樣的報文測量方法。
背景技術:
網(wǎng)絡流量是由報文序列構(gòu)成,具有相同的流標識的報文集合構(gòu)成網(wǎng)絡流。流標識有多種 不同的定義, 一般定義是源IP地址、宿IP地址、源端口、宿端口和協(xié)議等5元組定義為 流標識。網(wǎng)絡流是在一個測量時間范圍內(nèi),到達測量器的報文序列中具有相同報文標識的 報文集合。如 一段測量時間內(nèi)到達的報文序列為{a,a,b,b,c,a,e,d,f,b},其中一共有 IO個報文到達,其中的a,b, c, d, e,f是流標識,在這個報文序列中的網(wǎng)絡流是^.3}^3}{0 1} {dl}{el}{fl},其含義是網(wǎng)絡流a長度是3,有3個報文屬于網(wǎng)絡流a。高速網(wǎng)絡中流的數(shù)目很大,在大量文獻的測量中均發(fā)現(xiàn)少量的流擁有絕大多數(shù)網(wǎng)絡流量 等規(guī)律。NLANR的研究發(fā)現(xiàn)1%的流擁有80%以上的流量。圖1是從中國教育科研網(wǎng) (CERNET)—個路由器上測量的5分鐘的網(wǎng)絡流分布曲線圖,從圖中我們可以知道,短流 的數(shù)量很大,而長流數(shù)量很少,大量的網(wǎng)絡報文是屬于少量的長流。網(wǎng)絡流在網(wǎng)絡中應用 非常廣泛,基于網(wǎng)絡流的行為分析和異常檢測是熱點研究問題,在IETF組織中有二個工 作組專門研究網(wǎng)絡流的有關問題,實時流測量工作組RTFM和網(wǎng)絡流信息輸出工作組 IPFIX,他們的工作是建立網(wǎng)絡流測量的相關通用標準。由于互聯(lián)網(wǎng)的"更大、更快、突變" 的特性,使得基于抽樣的測量技術成為目前網(wǎng)絡流測量的重點研究問題。網(wǎng)絡流抽樣技術有兩種,隨機抽樣報文的網(wǎng)絡流抽樣技術和隨機抽樣網(wǎng)絡流的網(wǎng)絡流抽 樣技術。隨機抽樣報文的網(wǎng)絡流抽樣技術是指對于每個到達測量器的報文,測量器采用一 個隨機函數(shù)抽樣該報文,也就是每個報文具有相同的抽樣概率。第一次較系統(tǒng)研究隨機抽 樣報文的網(wǎng)絡流抽樣技術是現(xiàn)在網(wǎng)絡行為數(shù)據(jù)分析研究組織CAIDA負責人K Claffy, 1993 年系統(tǒng)研究基于時間和基于報文到達次序為抽樣的激發(fā)機制,分析系統(tǒng)抽樣、隨機抽樣分 層抽樣技術,并以報文長度和流量達到分布為例分析兩種激發(fā)機制和三種抽樣技術的性 能。隨機抽樣網(wǎng)絡流的網(wǎng)絡流抽樣技術是指測量器事先定義一個n比特的匹配比特串,然后 使用一個哈希函數(shù)處理每個到達報文的流標識生成一個哈希比特串,將這個哈希比特串中 的其中n個比特和事先定義好的n比特的匹配比特串進行比較,如果兩個比特串相同,則 該報文被抽樣,否則這個報文將被丟棄。哈希函數(shù)可以采用如CRC32、 MD5等哈希函數(shù), 1992年Jain和2000年Cao分析了五種基于網(wǎng)絡流的哈希算法。采用隨機抽樣網(wǎng)絡流的網(wǎng) 絡流抽樣技術可以使得每個網(wǎng)絡流具有相同的抽樣概率,通過該方法使得一個網(wǎng)絡流中所
有報文要么被全部抽樣,要么被全部丟棄。從圖l我們可以看出,隨機抽樣報文的網(wǎng)絡流抽樣技術具有兩個缺點(1)由于網(wǎng)絡流 的大小具有重尾特性,直接采用報文隨機抽樣的方法可能導致短流被抽樣的概率小,而長 流被抽樣的概率大,因而短流信息無法估計,導致無法將報文抽樣的信息用于和流相關網(wǎng) 絡應用中,如掃描、DoS攻擊檢測等;(2)由于報文抽樣導致流不能夠被抽樣到完整的信 息,因而使得無法使用報文抽樣的信息進行和完整流信息相關的網(wǎng)絡應用,如進行被動 測量的延遲、抖動等網(wǎng)絡端到端性能監(jiān)測。隨機抽樣報文的網(wǎng)絡流抽樣技術的優(yōu)點是長流 被抽樣的概率大,而且精確。隨機抽樣網(wǎng)絡流的抽樣技術能夠避免報文抽樣中所出現(xiàn)的兩個問題,但缺點是雖然能完 整測量部分網(wǎng)絡流標識空間的報文信息,而其它網(wǎng)絡流標識空間的報文完全丟棄,這樣導 致無法從總體上識別網(wǎng)絡的行為狀況,難以用于網(wǎng)絡流量計費、網(wǎng)絡管理等應用。其優(yōu)點 是能夠較為精確地測量到大量的網(wǎng)絡流信息。發(fā)明內(nèi)容綜合隨機抽樣報文的網(wǎng)絡流抽樣技術和隨機抽樣網(wǎng)絡流的網(wǎng)絡流抽樣技術這兩種方法 的優(yōu)缺點,本發(fā)明提出一種基于流集合隨機抽樣的報文測量方法,這種方法和傳統(tǒng)方法的 區(qū)別在于將測量時間區(qū)間分為若干子區(qū)間,在每個子時間區(qū)間中采用隨機抽樣網(wǎng)絡流的測 量方法抽樣報文,在每個子時間區(qū)間中采用了不同的匹配比特串。該方法能夠測量到完整 的流標識空間中的流信息,使得抽樣的報文數(shù)據(jù)能夠用于網(wǎng)絡流應用、網(wǎng)絡端到端性能測 量和對網(wǎng)絡全局流量行為進行檢測和管理等。該方法將為新一代高速互聯(lián)網(wǎng)的實時流量檢 測、安全管理提供重要的技術支持。本發(fā)明的技術方案是 一種基于流集合隨機抽樣的報文測量方法,其特征是將測量時間 區(qū)間分為若干子區(qū)間,子區(qū)間的數(shù)量為抽樣比率的倒數(shù),為每個子區(qū)間分配一個不同的匹 配比特串,在每個子區(qū)間中采用隨機抽樣網(wǎng)絡流的測量方法抽樣報文,抽樣過程中使用該 子區(qū)間被分配的匹配比特串匹配網(wǎng)絡流標識的哈希值,該過程中采用一個哈希函數(shù)處理所 有的報文流標識以生成哈希值比特串,這個哈希函數(shù)的輸入為報文流標識,輸出為和匹配 比特串長度相同的哈希值比特串,將該子區(qū)間被分配的匹配比特串和輸出的哈希值比特串 之間進行比較,如果兩個比特串相同,則該報文被抽樣,否則這個報文將被丟棄。所述的測量時間區(qū)間分為若干子區(qū)間的具體方法可如下假設測量匹配比特串的長度為n比特,n是大于0的正整數(shù),這個n個比特串的取值空 間大小為2n,因此采用n比特匹配比特串的隨機抽樣網(wǎng)絡流的測量方法的抽樣概率為l/2n, 測量器事先將測量的時間區(qū)間T分為抽樣比率的倒數(shù)等份,即2"等份,每個子時間區(qū)間 按照先后順序進行編號,第一個子時間區(qū)間編號為0,最后一個子時間區(qū)間編號為2"-l。所述的為每個子區(qū)間分配一個不同的匹配比特串,具體方法可如下 設置一個大小為2n的數(shù)組t,數(shù)組t記錄每個子時間區(qū)間中被分配的n比特長度的匹配 比特串,數(shù)組t中的每個元素t(i)是一個n比特的比特串,i是子時間區(qū)間的編號,i大于 等于0且小于等于2n -1,將0到2n -1之間的2"個不同的數(shù)隨機分配到這個大小為2n的數(shù) 組t的每個元素中,每個子時間區(qū)間中被分配的數(shù)為該子時間區(qū)間中被分配的n比特匹配 比特串。所述的在每個子區(qū)間中采用隨機抽樣網(wǎng)絡流的測量方法抽樣報文,具體方法可如下 在每個子時間區(qū)間內(nèi)使用隨機抽樣網(wǎng)絡流的網(wǎng)絡流抽樣技術抽樣報文,測量過程采用一個哈希函數(shù)處理所有的報文流標識以生成哈希比特串,這個哈希函數(shù)的輸入為報文流標 識,輸出的哈希值為n比特的比特串,將這個哈希比特串和該子時間空間被分配的n比特 匹配比特串之間進行比較,如果兩個比特串相同,則該報文被抽樣,否則這個報文將被丟 棄?;诹骷想S機抽樣的報文測量方法步驟具體如下-第一步設置初始參數(shù)設置抽樣測量時間區(qū)間長度為T,將測量時間區(qū)間T分為2"等份,每個子區(qū)間時間長 度為T/2n,設開始的測量子時間區(qū)間序號itime等于0;設置一個大小為2"的數(shù)組t,數(shù)組t中的每個元素t(i)是一個n比特的數(shù),i大于等于0 且小于等于2n -1 ,將0到2n -1之間的2n個數(shù)隨機分配到大小為2n的數(shù)組t的每個元素中;選擇一個哈希函數(shù)hash,哈希函數(shù)的輸入流標識ID,哈希函數(shù)生成的哈希值value為 n個比特長度,其取值范圍為大于等于0且小于2、設置報文內(nèi)存空間大小S;設當前測量時間區(qū)間開始時間為current,結(jié)束時間end=cmrent+T; 第二步計算當前測量子時間區(qū)間結(jié)束時間當前測量子時間區(qū)間結(jié)束時間time為測量子時間區(qū)間開始時間加上測量子時間區(qū)間 大小T/2n,time=current+itime*T/2n+T/2n,其中time為當前測量子時間區(qū)間結(jié)束時間,current 為當前測量時間區(qū)間開始時間,itime為當前子時間區(qū)間序號,T為測量時間區(qū)間長度,n 為大于等于O的正整數(shù),T/2"為子區(qū)間的時間長度,itime叮/2n為當前子時間區(qū)間的開始 時間,進入第三步;第三步判斷當前子測量時間區(qū)間結(jié)束如果當前測量器時間大于等于當前子測量時間區(qū)間結(jié)束時間time,輸出報文內(nèi)存空間 M中的數(shù)據(jù)到硬盤中進行存儲,清空報文內(nèi)存空間M中的報文記錄,設置目前報文內(nèi)存 空間M中的報文記錄個數(shù)m等于O,進入第七步;否則如果當前測量器時間小于當前子 測量時間區(qū)間結(jié)束時間time,進入第四步;第四步抽樣到達測量器的報文
等待報文到達測量器,如果一個報文到達測量器,提取其流標識ID,使用哈希函數(shù)hash 計算其哈希值value, vaiue=hash(ID), value是一個n比特的數(shù);如果value等于當前子時 間區(qū)間對應的事先設定的n比特數(shù)t(itime),(其中itime為當前時間序號,t是大小為2n 的數(shù)組),則進入第五步,否則回到第三步;第五步處理被抽樣的報文將被抽樣的報文信息記錄在報文內(nèi)存空間M中,并將報文內(nèi)存空間中的報文記錄數(shù)量 m增加l,即m-m+l;如果報文內(nèi)存空間中報文記錄數(shù)量m小于S,則回到第三步;否 則進入第六步;第六步報文內(nèi)存空間記錄輸出將報文內(nèi)存空間M中的報文記錄輸出到硬盤中,同時將報文內(nèi)存空間中的記錄清空, 并設置報文內(nèi)存空間報文記錄數(shù)量m等于0,回到第三步。第七步測量結(jié)束時間判斷如果測量子時間區(qū)間序號itime等于測量子時間總數(shù)2n-l,停止測量;否則設置新的當 前子時間區(qū)間序號itime=itime+l,進到第二步。 與現(xiàn)有技術相比,本發(fā)明具有如下優(yōu)點及有益效果(1) 在每個子時間區(qū)間只測量其中一個網(wǎng)絡流子空間的報文信息,在整個測量時間 區(qū)間中,能夠測量到整個網(wǎng)絡流標識空間中的報文信息。該方法一方面實現(xiàn)網(wǎng)絡流量抽樣 技術,解決高速、海量網(wǎng)絡流量的測量和存儲問題;另一方面又能夠測量到連續(xù)網(wǎng)絡流信 息,使得測量的數(shù)據(jù)能夠用于網(wǎng)絡性能和流相關的網(wǎng)絡應用;同時由于整個網(wǎng)絡流空間中 的流都有可能被抽樣,可以實現(xiàn)對網(wǎng)絡全局流量行為進行監(jiān)測和管理。(2) 采用抽樣技術,通過抽樣部分報文信息,能夠解決高速、海量網(wǎng)絡流量的測量 和存儲問題;(3) 能夠測量到連續(xù)流信息,使得測量的數(shù)據(jù)能夠用于和流相關的網(wǎng)絡應用,如 掃描和DoS攻擊檢測等;并且能夠進行被動網(wǎng)絡端到端延遲、抖動等性能監(jiān)測;
圖1是從中國教育科研網(wǎng)(CERNET)—個路由器上測量的5分鐘的網(wǎng)絡流分布曲線圖; 圖2是本發(fā)明基于流集合隨機抽樣報文測量方法的原理圖; 圖3是本發(fā)明基于流集合隨機抽樣報文測量方法的流程圖。
具體實施方式
圖l是現(xiàn)有技術,在前面的背景技術部分己作了評價。結(jié)合圖2、 3給出本發(fā)明的實施例。圖2中流ID長度為L比特,因此流ID的空間取值 范圍為0到2、1之間;將長度為L的流ID采用哈希函數(shù)生成長度為n的哈希值,哈希值 空間的取值范圍為為0到2n-l之間;每個流ID映射到哈??臻g的一個結(jié)點;將測量時間
T被分為n等份,每等份時間粒度為T/2n,每個時間粒度隨機映射到哈??臻g中的一個結(jié) 點。設一個報文序列Al Bl B2 Cl B3 Dl A2 A3 C2Al表示一個報文,其中字母A表示流標識,1表示A流的第一個報文,Bl表示B流 的第一個報文,A3表示A流的第三個報文,以此類推。1 (第一步)設置初始參數(shù)設置抽樣測量時間區(qū)間長度為T-4,將測量時間區(qū)間T分為2:2"等份,每個子區(qū)間時 間長度為T/2n=4/2=2,設開始的測量子時間區(qū)間序號itime等于0;設置一個大小為2^2的數(shù)組t,數(shù)組t中的每個元素t(i)是一個n-l比特的數(shù),i大于 等于0且小于等于21 -1=1,將0到1之間的2個數(shù)隨機分配到大小為2的數(shù)組t的每個元素中,t(0)-0, t(l)=l;選擇一個哈希函數(shù)hash,哈希函數(shù)的輸入流標識ID為(A、 B、 C、 D等流),hash哈 希函數(shù)生成的哈希值value為1個比特長度,其取值范圍為大于等于0且小于2,hash(A)=0, hash(B)=l, hash(C)=l, hash(D)=0;設置報文內(nèi)存空間大小S=2;設當前測量時間區(qū)間開始時間為current=0 ,結(jié)束時間end=current+T=0+4=4; 進入2 (第二步);2 (第二步)計算當前測量子時間區(qū)間結(jié)束時間當前測量子時間區(qū)間結(jié)束時間time為測量子時間區(qū)間開始時間=0加上測量子時間區(qū) 間大小4/2=2, time=current+itime*T/2n+T/2n=0+0*2+2=2,其中time為當前測量子時間區(qū) 間結(jié)束時間,current為當前測量時間區(qū)間開始時間,itime為當前子時間區(qū)間序號-0, T 為測量時間區(qū)間長度=4, n=l, T/2"為子區(qū)間的時間長度,itime-T/2"為當前子時間區(qū)間的 開始時間,進入3 (第三步);3 (第三步)判斷當前子測量時間區(qū)間結(jié)束當前測量器時間為O,小于當前子測量時間區(qū)間結(jié)束時間time:2,進入4 (第四步);4 (第四步)抽樣到達測量器的報文等待報文到達測量器,Al報文到達測量器,提取其流標識H^A,使用哈希函數(shù)hash 計算其哈希值value,則value=hash(A)=0; value=0等于當前子時間區(qū)間對應的事先設定的 n比特數(shù)t(0"0,則進入5 (第五步);5 (第五步)處理被抽樣的報文將被抽樣的報文Al信息記錄在報文內(nèi)存空間M中,并將報文內(nèi)存空間中的報文記錄 數(shù)量m增加l,即01=1!1+1=0+1=1;報文內(nèi)存空間中報文記錄數(shù)量01=1小于8=2,則回到6 (第三步);6 (第三步)判斷當前子測量時間區(qū)間結(jié)束當前測量器時間為l,小于當前測量時間粒度結(jié)束時間time二2,進入7(第四步);7 (第四步)抽樣到達測量器的報文等待報文到達測量器,Bl報文到達測量器,提取其流標識ID-B,使用哈希函數(shù)hash 計算其哈希值value, KiJvalue=hash(B)=l; value=l不等于當前子時間區(qū)間對應的事先設定 的n比特數(shù)t(0"0,進入8 (第三步);8 (第三歩)判斷當前子測量時間區(qū)間結(jié)束當前測量器時間為2,等于當前子測量時間區(qū)間結(jié)束時間time-2,輸出報文內(nèi)存空間 M中的數(shù)據(jù)Al到硬盤中進行存儲,清空報文內(nèi)存空間M中的報文記錄,設置目前報文 內(nèi)存空間M中的報文記錄個數(shù)m等于O,進入9(第七步);9 (第七步)測量結(jié)束時間判斷當前子測量時間區(qū)間序號為0,小于測量總時間粒度數(shù)丁=2減1,設置新的當前子時 間區(qū)間序號itime—time+l =0+1=1,進到10 (第二步),10 (第二步)計算當前測量子時間區(qū)間結(jié)束時間當前測量子時間區(qū)間結(jié)束時間time為測量子時間區(qū)間開始時間=2加上測量子時間區(qū) 間大小4/2=2, time=current+itime*T/2n+T/2n=0+l*2+2=4,其中time為當前測量子時間區(qū) 間結(jié)束時間,current為當前測量時間區(qū)間開始時間,itime為當前子時間區(qū)間序號-0, T 為測量時間區(qū)間長度=4, n-l, T/2n為子區(qū)間的時間長度,itime+T/2n為當前子時間區(qū)間的 開始時間,進入ll (第三步);11 (第三步)判斷當前子測量時間區(qū)間結(jié)束當前測量器時間為2,小于當前子測量時間區(qū)間結(jié)束時間time-4,進入12 (第四步);12 (第四步)抽樣到達測量器的報文等待報文到達測量器,B2報文到達測量器,提取其流標識ID-B,使用哈希函數(shù)hash 計算其哈希值value,則value=hash(B)=l; value=l等于當前子時間區(qū)間對應的事先設定的 n比特數(shù)t(l產(chǎn)l,進入13 (第五步);13 (第五步)處理被抽樣的報文將被抽樣的報文B2信息記錄在報文內(nèi)存空間M中,并將報文內(nèi)存空間中的報文記錄 數(shù)量m增加l,即n^m+l-0+14;報文內(nèi)存空間中報文記錄數(shù)量m=l小于S=2,則回到 14 (第三步);14 (第三步)判斷當前子測量時間區(qū)間結(jié)束當前測量器時間為3,小于當前子測量時間區(qū)間結(jié)束時間time^4,進入15 (第四步);15 (第四步)抽樣到達測量器的報文
等待報文到達測量器,Cl報文到達測量器,提取其流標識n^C,使用哈希函數(shù)hash 計算其哈希值value,則value=hash(C)-l; value=l等于當前子時間區(qū)間對應的事先設定的 n比特數(shù)t(l)-l,進入16 (第五步);16 (第五步)處理被抽樣的報文將被抽樣的報文CI信息記錄在報文內(nèi)存空間M中.并將報文內(nèi)存空間中的報文記錄 數(shù)量m增加l,即m=m+l=l+l=2;報文內(nèi)存空間中報文記錄數(shù)量m=2等于S=2,進入17 (第六步);17 (第六步)報文內(nèi)存空間記錄輸出將報文內(nèi)存空間M中的報文記錄B2、 Cl輸出到硬盤中,同時將報文內(nèi)存空間中的記 錄清空,并設置報文內(nèi)存空間報文記錄數(shù)量m等于O,回到18 (第三步)。18 (第三步)判斷當前子測量時間區(qū)間結(jié)束當前測量器時間為4,等于當前子測量時間區(qū)間結(jié)束時間time:4,報文內(nèi)存空間M中 沒有報文記錄信息,設置目前報文內(nèi)存空間M中的報文記錄個數(shù)m等于O,進入19 (第 七步);19 (第七步)測量結(jié)束時間判斷當前子測量時間區(qū)間序號為1,等于子測量時間區(qū)間數(shù)丁=2減1,停止測量。 因此該例子中被抽樣的報文為Al B2 Cl。
權(quán)利要求
1、一種基于流集合隨機抽樣的報文測量方法,其特征是將測量時間區(qū)間分為若干子區(qū)間,子區(qū)間的數(shù)量為抽樣比率的倒數(shù),為每個子區(qū)間分配一個不同的匹配比特串,在每個子區(qū)間中采用隨機抽樣網(wǎng)絡流的測量方法抽樣報文,抽樣過程中使用該子區(qū)間被分配的匹配比特串匹配網(wǎng)絡流標識的哈希值,該過程中采用一個哈希函數(shù)處理所有的報文流標識以生成哈希值比特串,這個哈希函數(shù)的輸入為報文流標識,輸出為和匹配比特串長度相同的哈希值比特串,將該子區(qū)間被分配的匹配比特串和輸出的哈希值比特串之間進行比較,如果兩個比特串相同,則該報文被抽樣,否則這個報文將被丟棄。
2、 根據(jù)權(quán)利要求1所述基于流集合隨機抽樣的報文測量方法,其特征是所述將測量時 間區(qū)間分為若干子區(qū)間的具體方法如下假設測量匹配比特串的長度為n比特,n是大于 0的正整數(shù),這個n個比特串的取值空間大小為211,因此采用n比特匹配比特串的隨機抽 樣網(wǎng)絡流的測量方法的抽樣概率為l/2n,測量器事先將測量的時間區(qū)間T分為抽樣比率的 倒數(shù)等份,即2"等份,每個子時間區(qū)間按照先后順序進行編號,第一個子時間區(qū)間編號 為0,最后一個子時間區(qū)間編號為2、1。
3、 根據(jù)權(quán)利要求1或2所述基于流集合隨機抽樣的報文測量方法,其特征是所述為每 個子區(qū)間分配一個不同的匹配比特串,具體方法如下設置一個大小為2"的數(shù)組t,數(shù)組 t記錄每個子時間區(qū)間中被分配的n比特長度的匹配比特串,數(shù)組t中的每個元素t(i)是一 個n比特的比特串,i是子時間區(qū)間的編號,i大于等于0且小于等于211-1,將0到2"-l 之間的2"個不同的數(shù)隨機分配到這個大小為2"的數(shù)組t的每個元素中,每個子時間區(qū)間 中被分配的數(shù)為該子時間區(qū)間中被分配的n比特匹配比特串。
4、 根據(jù)權(quán)利要求3所述基于流集合隨機抽樣的報文測量方法,其特征是測量方法步驟 具體如下第一步設置初始參數(shù)設置抽樣測量時間區(qū)間長度為T,將測量時間區(qū)間T分為2"等份,每個子區(qū)間時間長 度為T/2n,設開始的測量子時間區(qū)間序號itime等于0;設置一個大小為2n的數(shù)組t,數(shù)組t中的每個元素t(i)是一個n比特的數(shù)'i大于等于0 且小于等于2n -1 ,將0到2n -1之間的2n個數(shù)隨機分配到大小為2n的數(shù)組t的每個元素中;選擇一個哈希函數(shù)hash,哈希函數(shù)的輸入流標識ID,哈希函數(shù)生成的哈希值value為 n個比特長度,其取值范圍為大于等于0且小于2、設置報文內(nèi)存空間大小S;設當前測量時間區(qū)間開始時間為current,結(jié)束時間end=current+T; 第二步計算當前測量子時間區(qū)間結(jié)束時間 當前測量子時間區(qū)間結(jié)束時間time為測量子時間區(qū)間開始時間加上測量子時間區(qū)間大小 T/2n, time=current+itime*T/2n+T/2n,其中time為當前測量子時間區(qū)間結(jié)束時間,current 為當前測量時間區(qū)間開始時間,ithne為當前子時間區(qū)間序號,T為測量時間區(qū)間長度,n 為大于等于O的正整數(shù),T/2"為子區(qū)間的時間長度,itim浐T/2n為當前子時間區(qū)間的開始 時間,進入第三步;第三步判斷當前子測量時間區(qū)間結(jié)束如果當前測量器時間大于等于當前子測量時間區(qū)間結(jié)束時間time,輸出報文內(nèi)存空間 M中的數(shù)據(jù)到硬盤中進行存儲,清空報文內(nèi)存空間M中的報文記錄,設置目前報文內(nèi)存 空間M中的報文記錄個數(shù)m等于O,進入第七步;否則如果當前測量器時間小于當前子 測量時間區(qū)間結(jié)束時間time,進入第四歩;第四步抽樣到達測量器的報文等待報文到達測量器,如果一個報文到達測量器,提取其流標識ID,使用哈希函數(shù) hash計算其哈希值value, value-hash(ID), value是一個n比特的數(shù);如果value等于當前 子時間區(qū)間對應的事先設定的n比特數(shù)t(itime),(其中itime為當前時間序號,t是大小為 2"的數(shù)組),則進入第五步,否則回到第三步;第五步處理被抽樣的報文將被抽樣的報文信息記錄在報文內(nèi)存空間M中,并將報文內(nèi)存空間中的報文記錄數(shù)量 m增加l,即m-m+l;如果報文內(nèi)存空間中報文記錄數(shù)量m小于S,則回到第三步;否 則進入第六步;第六步報文內(nèi)存空間記錄輸出將報文內(nèi)存空間m中的報文記錄輸出到硬盤中,同時將報文內(nèi)存空間中的記錄清空, 并設置報文內(nèi)存空間報文記錄數(shù)量m等于O,回到第三步。第七步測量結(jié)束時間判斷如果測量子時間區(qū)間序號itime等于測量子時間總數(shù)2"-1,停止測量;否則設置新的當 前子時間區(qū)間序號itime=itime+l,進到第二步。
全文摘要
一種基于流集合隨機抽樣的報文測量方法,將測量時間區(qū)間分為若干子區(qū)間,為每個子區(qū)間分配一個不同的匹配比特串,在每個子區(qū)間中采用隨機抽樣網(wǎng)絡流抽樣報文,抽樣過程中使用該子區(qū)間被分配的匹配比特串匹配網(wǎng)絡流標識的哈希值,該過程中采用一個哈希函數(shù)處理所有的報文流標識以生成哈希值比特串,這個哈希函數(shù)的輸入為報文流標識,輸出為和匹配比特串長度相同的哈希值比特串,將該子區(qū)間被分配的匹配比特串和輸出的哈希值比特串之間進行比較,如果兩個比特串相同,則該報文被抽樣,否則這個報文將被丟棄。本方法在每個子區(qū)間只測量其中一個網(wǎng)絡流子空間的報文信息,在整個測量時間區(qū)間中,能夠測量到整個網(wǎng)絡流標識空間中的報文信息。
文檔編號H04L12/26GK101163058SQ200710190188
公開日2008年4月16日 申請日期2007年11月20日 優(yōu)先權(quán)日2007年11月20日
發(fā)明者偉 丁, 樺 吳, 強士卿, 光 程, 儉 龔 申請人:東南大學