專利名稱:一種網(wǎng)絡(luò)入侵場(chǎng)景圖的布局方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種可視化的數(shù)據(jù)結(jié)構(gòu)的處理方法,特別涉及一種對(duì)網(wǎng)絡(luò)入侵 場(chǎng)景圖的布局方法,應(yīng)用于網(wǎng)絡(luò)的入侵檢測(cè)與分析。
背景技術(shù):
入侵檢測(cè)作為一種網(wǎng)絡(luò)安全技術(shù)能夠檢測(cè)網(wǎng)絡(luò)中出現(xiàn)的入侵行為,使網(wǎng)絡(luò) 管理人員及時(shí)發(fā)現(xiàn)網(wǎng)絡(luò)入侵和攻擊并采取相應(yīng)的處理措施。而入侵場(chǎng)景圖是一 種以清晰直觀的方法來表示入侵行為的方法,圖中的各節(jié)點(diǎn)對(duì)應(yīng)于表示每一個(gè) 入侵行為的動(dòng)作,各個(gè)動(dòng)作之間的先后關(guān)系用節(jié)點(diǎn)之間的連接箭頭(有向邊) 表示,它是一個(gè)有向無環(huán)圖。將入侵行為以入侵場(chǎng)景圖的方式呈現(xiàn)給網(wǎng)絡(luò)管理 員,能夠幫助他們避免海量數(shù)據(jù)的困擾,以便快速高效地分析入侵行為,為采 取補(bǔ)救措施爭(zhēng)取寶貴的時(shí)間。由此可見,如何快速、可靠、高效地對(duì)入侵場(chǎng)景 圖進(jìn)行布局,成為及時(shí)分析査看的關(guān)鍵因素之一?,F(xiàn)有的處理方法如采用的 Graphviz算法進(jìn)行布局處理時(shí),通常需要進(jìn)行反復(fù)的回溯和迭代,耗費(fèi)較長 的處理時(shí)間,無法滿足快速高效的要求。
發(fā)明內(nèi)容
為了克服現(xiàn)有技術(shù)存在的不足,本發(fā)明提供一種處理速度快,數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)
單可靠,便于閱讀的網(wǎng)絡(luò)入侵場(chǎng)景圖的布局方法。
本發(fā)明所采用的技術(shù)方案是提供一種網(wǎng)絡(luò)入侵場(chǎng)景圖的布局方法,其特
征在于它包括以下步驟
(l)將每一個(gè)入侵行為的動(dòng)作對(duì)應(yīng)于一個(gè)節(jié)點(diǎn)放到平面圖中,以行和列的方
式進(jìn)行布局,同一行的節(jié)點(diǎn)處于同一水平線上,同一列的節(jié)點(diǎn)處于同一垂直線
上,各行從上到下依次排列,各列從左到右依次排列,各個(gè)動(dòng)作之間的先后關(guān)
系用節(jié)點(diǎn)之間的箭頭表示,連接各個(gè)節(jié)點(diǎn)的邊的連接方向?yàn)閺淖筮吜兄械墓?jié)點(diǎn)
指向右邊列中的節(jié)點(diǎn);(2) 采用最長路徑算法或網(wǎng)絡(luò)單純型算法中的一種,對(duì)各節(jié)點(diǎn)進(jìn)行分層處
理;
(3) 獲取本層中所有節(jié)點(diǎn)的后件集,對(duì)與本層節(jié)點(diǎn)相連的節(jié)點(diǎn)未出現(xiàn)在下一 層中,則在下一層中添加一個(gè)虛節(jié)點(diǎn),通過虛節(jié)點(diǎn)與后面層中的實(shí)際節(jié)點(diǎn)相連, 從第一層開始依次對(duì)各層的節(jié)點(diǎn)進(jìn)行層內(nèi)排序處理;
(4) 將排序處理后同一層的節(jié)點(diǎn)組織成一個(gè)列,層內(nèi)順序相同的節(jié)點(diǎn)組成一 個(gè)行,設(shè)定節(jié)點(diǎn)的幾何尺寸(寬、高)和節(jié)點(diǎn)的間距,計(jì)算各個(gè)節(jié)點(diǎn)在直角坐 標(biāo)系中的坐標(biāo)值,布局各節(jié)點(diǎn),得到網(wǎng)絡(luò)入侵場(chǎng)景圖。
步驟(3)所述的層內(nèi)排序處理方法為,先獲取該節(jié)點(diǎn)與后面節(jié)點(diǎn)的后件集之 間的交集,如果后件集中的節(jié)點(diǎn)不出現(xiàn)在所有交集中,則它在下一層的層內(nèi)順 序靠最前排列,否則它在下一層的層內(nèi)順序根據(jù)本層的節(jié)點(diǎn)順序進(jìn)行排列;如 果下一層的某個(gè)節(jié)點(diǎn)不出現(xiàn)在本層節(jié)點(diǎn)的后件集中,則它在下一層的層內(nèi)順序 靠最后排列。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于根據(jù)有向無環(huán)圖的特點(diǎn),采用先進(jìn) 行分層處理,將各個(gè)節(jié)點(diǎn)放到各個(gè)列中,再對(duì)同一列中的各個(gè)節(jié)點(diǎn)進(jìn)行層內(nèi)排 列順序處理,對(duì)圖中的各個(gè)節(jié)點(diǎn)進(jìn)行布局,將圖數(shù)據(jù)結(jié)構(gòu)進(jìn)行可視化展示,以 取得良好的可視效果,該方法處理速度快,數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單可靠,便于人們的閱 讀和分析。
所述的節(jié)點(diǎn)的后件集是該節(jié)點(diǎn)通過邊與下一層中所有相連的節(jié)點(diǎn)的集合;
圖1是按本發(fā)明實(shí)施例技術(shù)方案提供的入侵場(chǎng)景圖,其中,a p為節(jié)點(diǎn), 對(duì)應(yīng)各個(gè)入侵動(dòng)作,aj和bj為虛節(jié)點(diǎn);
圖2是按本發(fā)明實(shí)施例層內(nèi)排序處理步驟的流程示意圖。
具體實(shí)施方式
下面結(jié)合實(shí)施例和附圖對(duì)本發(fā)明作進(jìn)一步描述。 實(shí)施例
參見附圖1,它是本實(shí)施例技術(shù)方案提供的入侵場(chǎng)景圖,其中,a p為節(jié) 點(diǎn),對(duì)應(yīng)各個(gè)入侵動(dòng)作。將每一個(gè)入侵行為的動(dòng)作對(duì)應(yīng)于一個(gè)節(jié)點(diǎn)放到平面圖
4中,以行和列的方式進(jìn)行布局,同一行的節(jié)點(diǎn)處于同一水平線上,同一列的節(jié) 點(diǎn)處于同一垂直線上,各行從上到下依次排列,各列從左到右依次排列,各個(gè) 動(dòng)作之間的先后關(guān)系用節(jié)點(diǎn)之間的箭頭表示,連接各個(gè)節(jié)點(diǎn)的邊的連接方向?yàn)?從左邊列中的節(jié)點(diǎn)指向右邊列中的節(jié)點(diǎn)。入侵場(chǎng)景圖布局方法的具體步驟為 節(jié)點(diǎn)分層
用最長路徑算法。*算法,DSLevelProvider)得到結(jié)果為
Cl={a, b, c, d} C2={e, f, g, h, C3={j, k, 1}; C4={m, n, o, p} {Cl, C2, C3,…Cn 層內(nèi)排序
參見附圖2,它是本步驟流程的示意圖。 從第一層(CI)開始依次對(duì)各列進(jìn)行下列操作
(1) 得到本層中所有節(jié)點(diǎn)的后件集,所述的節(jié)點(diǎn)的后件集是該節(jié)點(diǎn)通過邊與 下一層中所有相連的節(jié)點(diǎn)的集合。
CI中各個(gè)節(jié)點(diǎn)的后件集為 Sa={i,虛節(jié)點(diǎn)aj, e, f}; Sb={e,虛節(jié)點(diǎn)bj, g}; Sc={ g }; Sd={f, h}.
(2) 確定下一層中節(jié)點(diǎn)的順序
從本層的第一個(gè)節(jié)點(diǎn)開始依次對(duì)各個(gè)節(jié)點(diǎn)進(jìn)行分析,以確定下一層中節(jié)點(diǎn) 的順序。
先從a開始。經(jīng)過按順序比較,發(fā)現(xiàn)SanSb = { e }, SaDSc =空集, San Sd = {f},則Sa和Sb、 Sa和Sc、 Sa和Sd的交集都不包含的部分為{i, 虛節(jié)點(diǎn)ajh便將i和虛節(jié)點(diǎn)aj分別確定為第二層中的第一個(gè)和第二個(gè)位置(因 為不是交集中的元素,所以a和i, a和aj的邊便不會(huì)和其它邊發(fā)生交叉)。
對(duì)于Sa中屬于任何一個(gè)交集的元素,即(e, f},在比較時(shí),首先發(fā)現(xiàn)e
,它是節(jié)點(diǎn)的集合,其中,Cn表示第n層。屬于Sa與Sb的交集中的元素,接著發(fā)現(xiàn)f屬于Sa與Sc的交集中的元素,所 以確定e為第二層中的第三個(gè)位置,f為第二層中的第四個(gè)位置。
由于已經(jīng)盡量減少了 a與b、 c、 d這三者連線的交叉。所以,在分析b時(shí), 只需盡量減少b與c以及b與d的連線的交叉,不需再考慮Sb與Sa的關(guān)系, 即只用分析Sb與Sc以及Sb與Sd的關(guān)系,分析原理同上。
節(jié)點(diǎn)e不屬于Sb與Sc以及Sb與Sd的交集,但節(jié)點(diǎn)e的位置已經(jīng)確定, 所以只需依次確定虛節(jié)點(diǎn)bj和g的位置即可,bj為第五個(gè)位置,g為第六個(gè)位 置。同理確定d的后件集中的元素在第二列中的位置。
假設(shè)第二列中還有兩個(gè)節(jié)點(diǎn)x和y,這兩個(gè)節(jié)點(diǎn)沒有出現(xiàn)在后件集中,則
將它們安排在第二列的最后面。
在根據(jù)第一層的順序確定了第二層的位置后,可以再用同樣的方法根據(jù)第
二層的順序確定第三層的順序,以此類推完成所有層的層內(nèi)排序。
坐標(biāo)計(jì)算
根據(jù)參數(shù)節(jié)點(diǎn)的大小和節(jié)點(diǎn)之間的距離,計(jì)算各個(gè)節(jié)點(diǎn)在直角坐標(biāo)系中的 坐標(biāo)。如果節(jié)點(diǎn)大小為寬w,高h(yuǎn);水平方向(X方向)節(jié)點(diǎn)之間的距離為i, 垂直方向(Y方向)節(jié)點(diǎn)之間的距離為j,則第m行n列的節(jié)點(diǎn)的水平坐標(biāo)為 (n-l)*(w+i);垂直坐標(biāo)為(m-l)*(h+j)。
將同一層的節(jié)點(diǎn)組織成一個(gè)列
第 一 歹ij : a, b , c , d;
第二列i,虛節(jié)點(diǎn)aj, e, f,虛節(jié)點(diǎn)bj, g, h;
第三列j, k, 1;
第四列m, n, o, p。
層內(nèi)順序相同的節(jié)點(diǎn)組中成一個(gè)行
第一行a, i, j, m; 第二行b,虛節(jié)點(diǎn)aj, k, n; 第三行c, e, 1, 第四行d, f, p; 第五行虛節(jié)點(diǎn)bj; 第六行g(shù);第七行h。
依據(jù)本實(shí)施例提供的網(wǎng)絡(luò)入侵場(chǎng)景圖的布局方法,經(jīng)上述步驟的處理,如 果節(jié)點(diǎn)的大小設(shè)定為寬20,高10;水平方向(X方向)節(jié)點(diǎn)之間的距離為10,
垂直方向(Y方向)節(jié)點(diǎn)之間的距離為5;則節(jié)點(diǎn)e (第2列第3行)的水平坐 標(biāo)為(2-1)*(20+10)=30;垂直坐標(biāo)為(3-1) * (10+5) =30 。其他節(jié)點(diǎn)也可以采
用相同的計(jì)算方法得到各節(jié)點(diǎn)在直角坐標(biāo)系中的坐標(biāo),得到網(wǎng)絡(luò)入侵場(chǎng)景圖。
權(quán)利要求
1、一種網(wǎng)絡(luò)入侵場(chǎng)景圖的布局方法,其特征在于它包括如下步驟(1)將每一個(gè)入侵行為的動(dòng)作對(duì)應(yīng)于一個(gè)節(jié)點(diǎn)放到平面圖中,以行和列的方式進(jìn)行布局,同一行的節(jié)點(diǎn)處于同一水平線上,同一列的節(jié)點(diǎn)處于同一垂直線上,各行從上到下依次排列,各列從左到右依次排列,各個(gè)動(dòng)作之間的先后關(guān)系用節(jié)點(diǎn)之間的箭頭表示,連接各個(gè)節(jié)點(diǎn)的邊的連接方向?yàn)閺淖筮吜兄械墓?jié)點(diǎn)指向右邊列中的節(jié)點(diǎn);(2)采用最長路徑算法或網(wǎng)絡(luò)單純型算法中的一種,對(duì)各節(jié)點(diǎn)進(jìn)行分層處理;(3)獲取本層中所有節(jié)點(diǎn)的后件集,對(duì)與本層節(jié)點(diǎn)相連的節(jié)點(diǎn)未出現(xiàn)在下一層中,則在下一層中添加一個(gè)虛節(jié)點(diǎn),通過虛節(jié)點(diǎn)與后面層中的實(shí)際節(jié)點(diǎn)相連,從第一層開始依次對(duì)各層的節(jié)點(diǎn)進(jìn)行層內(nèi)排序處理;(4)將排序處理后同一層的節(jié)點(diǎn)組織成一個(gè)列,層內(nèi)順序相同的節(jié)點(diǎn)組成一個(gè)行,設(shè)定節(jié)點(diǎn)的幾何尺寸(寬、高)和節(jié)點(diǎn)的間距,計(jì)算各個(gè)節(jié)點(diǎn)在直角坐標(biāo)系中的坐標(biāo)值,布局各節(jié)點(diǎn),得到網(wǎng)絡(luò)入侵場(chǎng)景圖。
2、 根據(jù)權(quán)利要求1所述的一種網(wǎng)絡(luò)入侵場(chǎng)景圖的布局方法,其特征在于 步驟(3)所述的層內(nèi)排序處理方法為,先獲取該節(jié)點(diǎn)與后面節(jié)點(diǎn)的后件集之間的 交集,如果后件集中的節(jié)點(diǎn)不出現(xiàn)在所有交集中,則它在下一層的層內(nèi)順序靠 最前排列,否則它在下一層的層內(nèi)順序根據(jù)本層的節(jié)點(diǎn)順序進(jìn)行排列;如果下 一層的某個(gè)節(jié)點(diǎn)不出現(xiàn)在本層節(jié)點(diǎn)的后件集中,則它在下一層的層內(nèi)順序靠最 后排列。
全文摘要
本發(fā)明涉及一種可視化的數(shù)據(jù)結(jié)構(gòu)的處理方法,特別涉及一種對(duì)網(wǎng)絡(luò)入侵場(chǎng)景圖的布局方法,應(yīng)用于網(wǎng)絡(luò)的入侵檢測(cè)與分析。本發(fā)明將每一個(gè)入侵行為的動(dòng)作對(duì)應(yīng)于一個(gè)節(jié)點(diǎn)放到平面圖中,各個(gè)動(dòng)作之間的先后關(guān)系用節(jié)點(diǎn)之間的連接箭頭表示,先采用最長路徑算法或網(wǎng)絡(luò)單純型算法進(jìn)行節(jié)點(diǎn)分層處理,再對(duì)同一列中的各個(gè)節(jié)點(diǎn)進(jìn)行層內(nèi)排列順序處理,經(jīng)計(jì)算得到各節(jié)點(diǎn)在直角坐標(biāo)系中的坐標(biāo),從而完成網(wǎng)絡(luò)入侵場(chǎng)景圖的布局。本發(fā)明將圖數(shù)據(jù)結(jié)構(gòu)進(jìn)行可視化展示,以取得良好的可視效果。該方法處理速度快,數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單可靠,便于人們的閱讀和分析。
文檔編號(hào)H04L12/26GK101499927SQ20091003030
公開日2009年8月5日 申請(qǐng)日期2009年3月18日 優(yōu)先權(quán)日2009年3月18日
發(fā)明者孫明明, 楊曉峰, 趙武濤, 顧立明 申請(qǐng)人:蘇州盛世陽科技有限公司