檢測數(shù)據(jù)流的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信領(lǐng)域,尤其涉及一種檢測數(shù)據(jù)流的方法及裝置。
【背景技術(shù)】
[0002] 隨著通信業(yè)務(wù)的發(fā)展,通信網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)流越來越多;在數(shù)據(jù)流的傳輸過程 中,往往需要交換機(jī)或路由器對數(shù)據(jù)流進(jìn)行流量管理。大流(ElephantFlow,大象流)是指 傳輸數(shù)據(jù)量足夠大的數(shù)據(jù)流;由于大流傳輸數(shù)據(jù)量非常大、且占用較大帶寬,所以流量管理 主要是針對大流進(jìn)行管理。為了實(shí)現(xiàn)流量管理,需要進(jìn)行大流檢測,從多個(gè)數(shù)據(jù)流中識(shí)別出 大流。
[0003] 現(xiàn)有技術(shù)中,主要采用基于平均吞吐率統(tǒng)計(jì)的大流檢測方法:當(dāng)接收到一個(gè)數(shù)據(jù) 包時(shí),查看是否存在該數(shù)據(jù)包對應(yīng)的流記錄;若存在,則對該數(shù)據(jù)包對應(yīng)的數(shù)據(jù)流的流量進(jìn) 行累計(jì),并計(jì)算該數(shù)據(jù)流從開始統(tǒng)計(jì)到當(dāng)前時(shí)刻的平均吞吐率;若不存在,則建立該數(shù)據(jù)包 對應(yīng)的流記錄,并對該數(shù)據(jù)包對應(yīng)的數(shù)據(jù)流進(jìn)行流量統(tǒng)計(jì);當(dāng)所述數(shù)據(jù)流的平均吞吐率達(dá) 到預(yù)設(shè)閾值時(shí),將該數(shù)據(jù)流確定為大流。
[0004] 在采用上述方法進(jìn)行大流檢測的過程中,至少存在如下問題:當(dāng)多個(gè)大流流經(jīng)同 一條較為擁塞的網(wǎng)絡(luò)鏈路時(shí),所述多個(gè)大流的傳輸速度會(huì)降低,使得所述多個(gè)大流的平均 吞吐率處于一個(gè)較低的水平,無法準(zhǔn)確識(shí)別出大流,導(dǎo)致大流檢測的漏檢率較高。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的實(shí)施例提供一種檢測數(shù)據(jù)流的方法及裝置,能夠解決現(xiàn)有技術(shù)中當(dāng)網(wǎng)絡(luò) 鏈路較為擁塞時(shí),大流檢測的漏檢率較高的問題。
[0006] 為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案:
[0007] 第一方面,本發(fā)明實(shí)施例提供了一種檢測數(shù)據(jù)流的方法,所述方法包括:
[0008] 對數(shù)據(jù)流的數(shù)據(jù)包數(shù)目和流字節(jié)數(shù)進(jìn)行累計(jì);
[0009]當(dāng)所述數(shù)據(jù)包數(shù)目達(dá)到第一閾值、且所述數(shù)據(jù)流的數(shù)據(jù)包平均大小達(dá)到第二閾值 時(shí),將所述數(shù)據(jù)流確定為大流。
[0010] 結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,所述當(dāng)所述數(shù)據(jù)包數(shù)目達(dá)到第一閾 值、且所述數(shù)據(jù)流的數(shù)據(jù)包平均大小達(dá)到第二閾值時(shí),將所述數(shù)據(jù)流確定為大流,包括 :
[0011] 當(dāng)所述數(shù)據(jù)包數(shù)目達(dá)到第一閾值時(shí),根據(jù)所述數(shù)據(jù)包數(shù)目和流字節(jié)數(shù)計(jì)算所述數(shù) 據(jù)流的數(shù)據(jù)包平均大小;
[0012] 當(dāng)所述數(shù)據(jù)包平均大小達(dá)到第二閾值時(shí),將所述數(shù)據(jù)流確定為大流。
[0013] 結(jié)合第一方面,在第二種可能的實(shí)現(xiàn)方式中,所述對數(shù)據(jù)流的數(shù)據(jù)包數(shù)目和流字 節(jié)數(shù)進(jìn)行累計(jì),包括:
[0014] 建立數(shù)據(jù)流統(tǒng)計(jì)表,所述數(shù)據(jù)流統(tǒng)計(jì)表中包括多項(xiàng)數(shù)據(jù)流條目,所述數(shù)據(jù)流條目 包括數(shù)據(jù)包數(shù)目、累計(jì)字節(jié)數(shù)、以及流標(biāo)識(shí);
[0015]當(dāng)接收到新數(shù)據(jù)包時(shí),確定該數(shù)據(jù)包的流標(biāo)識(shí),并根據(jù)該數(shù)據(jù)包的大小對所述流 標(biāo)識(shí)對應(yīng)的數(shù)據(jù)流條目進(jìn)行更新。
[0016] 結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式,在第三種可能的實(shí)現(xiàn)方式中,所述數(shù)據(jù) 流條目還包括流類型標(biāo)識(shí),所述流類型標(biāo)識(shí)用于表征數(shù)據(jù)流是否為大流;
[0017] 所述當(dāng)所述數(shù)據(jù)包數(shù)目達(dá)到第一閾值、且所述數(shù)據(jù)流的數(shù)據(jù)包平均大小達(dá)到第二 閾值時(shí),將所述數(shù)據(jù)流確定為大流之后,還包括:
[0018] 對所述數(shù)據(jù)流的流類型標(biāo)識(shí)進(jìn)行修改,以表征所述數(shù)據(jù)流為大流。
[0019] 結(jié)合第一方面,在第四種可能的實(shí)現(xiàn)方式中,所述對數(shù)據(jù)流的數(shù)據(jù)包數(shù)目和流字 節(jié)數(shù)進(jìn)行累計(jì)之前,還包括:
[0020] 根據(jù)歷史數(shù)據(jù)流的流信息確定所述第一閾值和第二閾值。
[0021] 結(jié)合第一方面的第四種可能的實(shí)現(xiàn)方式,在第五種可能的實(shí)現(xiàn)方式中,所述根據(jù) 歷史數(shù)據(jù)流的流信息確定所述第一閾值和第二閾值,包括:
[0022] 建立所述歷史數(shù)據(jù)流中數(shù)據(jù)包數(shù)目的分布直方圖,將所述數(shù)據(jù)包數(shù)目的分布直方 圖中波谷位置對應(yīng)的數(shù)據(jù)包數(shù)目值確定為所述第一閾值;
[0023] 建立所述歷史數(shù)據(jù)流中數(shù)據(jù)包平均大小的分布直方圖,將所述數(shù)據(jù)包平均大小的 分布直方圖中波谷位置對應(yīng)的數(shù)據(jù)包平均大小值確定為所述第二閾值。
[0024] 結(jié)合第一方面的第五種可能的實(shí)現(xiàn)方式,在第六種可能的實(shí)現(xiàn)方式中,所述建立 所述歷史數(shù)據(jù)流中數(shù)據(jù)包數(shù)目的分布直方圖之后,還包括:
[0025] 對所述數(shù)據(jù)包數(shù)目的分布直方圖進(jìn)行平滑濾波,以使得平滑濾波后的數(shù)據(jù)包數(shù)目 的分布直方圖存在單一波谷;
[0026]和 / 或
[0027] 對所述數(shù)據(jù)包平均大小的分布直方圖進(jìn)行平滑濾波,以使得平滑濾波后的數(shù)據(jù)包 平均大小的分布直方圖存在單一波谷。
[0028] 結(jié)合第一方面的第五種或第六種可能的實(shí)現(xiàn)方式,在第七種可能的實(shí)現(xiàn)方式中, 所述將所述數(shù)據(jù)包數(shù)目的分布直方圖中波谷位置對應(yīng)的數(shù)據(jù)包數(shù)目值確定為所述第一閾 值,包括:
[0029] 當(dāng)所述數(shù)據(jù)包數(shù)目的分布直方圖中波谷位置對應(yīng)的數(shù)據(jù)包數(shù)目值為一個(gè)區(qū)間值 時(shí),確定所述區(qū)間值中的最小值為所述第一閾值。
[0030] 第二方面,本發(fā)明實(shí)施例提供了一種檢測數(shù)據(jù)流的裝置,所述裝置包括:
[0031] 累計(jì)單元,用于對數(shù)據(jù)流的數(shù)據(jù)包數(shù)目和流字節(jié)數(shù)進(jìn)行累計(jì);
[0032] 確定單元,用于當(dāng)所述數(shù)據(jù)包數(shù)目達(dá)到第一閾值、且所述數(shù)據(jù)流的數(shù)據(jù)包平均大 小達(dá)到第二閾值時(shí),將所述數(shù)據(jù)流確定為大流。
[0033] 結(jié)合第二方面,在第一種可能的實(shí)現(xiàn)方式中,所述確定單元包括:
[0034] 計(jì)算模塊,用于當(dāng)所述數(shù)據(jù)包數(shù)目達(dá)到第一閾值時(shí),根據(jù)所述數(shù)據(jù)包數(shù)目和流字 節(jié)數(shù)計(jì)算所述數(shù)據(jù)流的數(shù)據(jù)包平均大??;
[0035] 判定模塊,用于當(dāng)所述數(shù)據(jù)包平均大小達(dá)到第二閾值時(shí),將所述數(shù)據(jù)流確定為大 流。
[0036] 結(jié)合第二方面,在第二種可能的實(shí)現(xiàn)方式中:
[0037] 所述累計(jì)單元具體用于,建立數(shù)據(jù)流統(tǒng)計(jì)表,所述數(shù)據(jù)流統(tǒng)計(jì)表中包括多項(xiàng)數(shù)據(jù) 流條目,所述數(shù)據(jù)流條目包括數(shù)據(jù)包數(shù)目、累計(jì)字節(jié)數(shù)、以及流標(biāo)識(shí);當(dāng)接收到新數(shù)據(jù)包時(shí), 確定該數(shù)據(jù)包的流標(biāo)識(shí),并根據(jù)該數(shù)據(jù)包的大小對所述流標(biāo)識(shí)對應(yīng)的數(shù)據(jù)流條目進(jìn)行更 新。
[0038] 結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式,在第三種可能的實(shí)現(xiàn)方式中,所述累計(jì) 單元建立的所述數(shù)據(jù)流條目還包括流類型標(biāo)識(shí),所述流類型標(biāo)識(shí)用于表征數(shù)據(jù)流是否為大 流;
[0039] 所述確定單元還用于,將所述數(shù)據(jù)流確定為大流之后,對所述數(shù)據(jù)流的流類型標(biāo) 識(shí)進(jìn)行修改,以表征所述數(shù)據(jù)流為大流。
[0040] 結(jié)合第二方面,在第四種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
[0041] 閾值設(shè)定單元,用于根據(jù)歷史數(shù)據(jù)流的流信息確定所述第一閾值和第二閾值。
[0042] 結(jié)合第二方面的第四種可能的實(shí)現(xiàn)方式,在第五種可能的實(shí)現(xiàn)方式中:
[0043] 所述閾值設(shè)定單元,具體用于建立所述歷史數(shù)據(jù)流中數(shù)據(jù)包數(shù)目的分布直方圖, 將所述數(shù)據(jù)包數(shù)目的分布直方圖中波谷位置對應(yīng)的數(shù)據(jù)包數(shù)目值確定為所述第一閾值;建 立所述歷史數(shù)據(jù)流中數(shù)據(jù)包平均大小的分布直方圖,將所述數(shù)據(jù)包平均大小的分布直方圖 中波谷位置對應(yīng)的數(shù)據(jù)包平均大小值確定為所述第二閾值。
[0044] 結(jié)合第二方面的第五種可能的實(shí)現(xiàn)方式,在第六種可能的實(shí)現(xiàn)方式中,所述閾值 設(shè)定單元還包括:
[0045] 濾波模塊,用于在建立所述歷史數(shù)據(jù)流中數(shù)據(jù)包數(shù)目的分布直方圖之后,對所述 數(shù)據(jù)包數(shù)目的分布直方圖進(jìn)行平滑濾波,以使得平滑濾波后的數(shù)據(jù)包數(shù)目的分布直方圖存 在單一波谷;
[0046]和 / 或
[0047] 所述濾波模塊,還用于對所述數(shù)據(jù)包平均大小的分布直方圖進(jìn)行平滑濾波,以使 得平滑濾波后的數(shù)據(jù)包平均大小的分布直方圖存在單一波谷。
[0048] 結(jié)合第二方面的第五種或第六種可能的實(shí)現(xiàn)方式,在第七種可能的實(shí)現(xiàn)方式中:
[0049] 所述閾值設(shè)定單元,具體用于當(dāng)所述數(shù)據(jù)包數(shù)目的分布直方圖中波谷位置對應(yīng)的 數(shù)據(jù)包數(shù)目值為一個(gè)區(qū)間值時(shí),確定所述區(qū)間值中的最小值為所述第一閾值。
[0050] 本發(fā)明實(shí)施例提供的檢測數(shù)據(jù)流的方法及裝置,對數(shù)據(jù)流的數(shù)據(jù)包數(shù)目和流字節(jié) 數(shù)進(jìn)行累計(jì);當(dāng)所述數(shù)據(jù)包數(shù)目達(dá)到第一閾值、且所述數(shù)據(jù)流的數(shù)據(jù)包平均大小達(dá)到第二 閾值時(shí),將所述數(shù)據(jù)流確定為大流。由于對于一個(gè)數(shù)據(jù)流來說,該數(shù)據(jù)流的數(shù)據(jù)包數(shù)目和數(shù) 據(jù)包平均大小不會(huì)受到網(wǎng)絡(luò)鏈路擁塞狀況的影響,所以采用本發(fā)明實(shí)施例提供的檢測數(shù)據(jù) 流的方法及裝置,在對數(shù)據(jù)流進(jìn)行檢測時(shí)不會(huì)受到網(wǎng)絡(luò)鏈路擁塞情況的干擾,能夠準(zhǔn)確的 從多個(gè)數(shù)據(jù)流中識(shí)別出大流,提高大流檢測的準(zhǔn)確率。
【附圖說明】
[0051] 為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
[0052] 圖1為本發(fā)明實(shí)施例一提供的檢測數(shù)據(jù)流的方法流程示意圖;
[0053] 圖2為本發(fā)明實(shí)施例二提供的檢測數(shù)據(jù)流的方法流程示意圖;
[0054] 圖3為本發(fā)明實(shí)施例二提供的確定第一閾值的流程示意圖;
[0055] 圖4為本發(fā)明實(shí)施例二提供的數(shù)據(jù)包數(shù)目的分布直方圖;
[0056] 圖5為本發(fā)明實(shí)施例二提供的確定第二閾值的流程示意圖;
[0057] 圖6為本發(fā)明實(shí)施例二提供的數(shù)據(jù)包平均大小的一個(gè)分布直方圖;
[0058] 圖7為本發(fā)明實(shí)施例二提供的數(shù)據(jù)包平均大小的另一個(gè)分布直方圖;
[0059] 圖8為本發(fā)明實(shí)施例二提供的一種應(yīng)用實(shí)例的示意圖;
[0060] 圖9為本發(fā)明實(shí)施例二提供的另一種應(yīng)用實(shí)例的示意圖;
[0061] 圖10為本發(fā)明實(shí)施例三提供的一個(gè)檢測數(shù)據(jù)流的裝置的結(jié)構(gòu)框圖;
[0062] 圖11為本發(fā)明實(shí)施例三提供的另一個(gè)檢測數(shù)據(jù)流的裝置的結(jié)構(gòu)框圖;
[0063] 圖12為本發(fā)明實(shí)施例三提供的另一個(gè)檢測數(shù)據(jù)流的裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0064] 下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;?本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0065] 實(shí)施例一
[0066]