專利名稱:一種閾值表達(dá)式解析方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)管理系統(tǒng)(NMS)技術(shù),尤其涉及一種NMS中的閾值表達(dá)解析方法。
背景技術(shù):
顧名思義,NMS的作用在于對(duì)網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)線路等進(jìn)行管理。通過網(wǎng)絡(luò)管理系統(tǒng),能夠大幅度增加網(wǎng)絡(luò)的可用時(shí)間,提高網(wǎng)絡(luò)單元的利用率、網(wǎng)絡(luò)性能、服務(wù)質(zhì)量、安全性和經(jīng)濟(jì)效益,簡(jiǎn)化多制式、多廠商混合網(wǎng)絡(luò)環(huán)境下的管理和降低控制網(wǎng)絡(luò)運(yùn)行成本,并提供網(wǎng)絡(luò)規(guī)劃的依據(jù)。
在網(wǎng)絡(luò)運(yùn)行過程中,各個(gè)網(wǎng)元的性能數(shù)據(jù)均具有與自身相關(guān)的性能閾值。具體而言,性能閾值是指用戶為了特定的測(cè)量對(duì)象(MO)而設(shè)定的以邏輯表達(dá)式方式出現(xiàn)的邊界條件。通常,該邏輯表達(dá)式被稱為閾值表達(dá)式,其中的元素包括諸如端口流量、丟包個(gè)數(shù)等被稱為測(cè)量本體(ME)的監(jiān)控屬性,例如ME1+ME3<ME5。以表達(dá)式形式存在的性能閾值由NMS的核心部分——集成性能管理系統(tǒng)(IPMS)保存,并通過用戶界面進(jìn)行顯示。IPMS根據(jù)網(wǎng)絡(luò)中各ME的實(shí)際狀態(tài)與性能閾值之間的關(guān)系,即網(wǎng)絡(luò)中是否出現(xiàn)滿足閾值表達(dá)式的情況,決定向告警管理系統(tǒng)發(fā)送告警或者通知告警管理系統(tǒng)恢復(fù)已發(fā)送過的告警。
如表1所示,為了確定是否滿足閾值表達(dá)式,IPMS將從各個(gè)網(wǎng)元中采集的一批性能數(shù)據(jù)及其對(duì)應(yīng)的測(cè)量對(duì)象標(biāo)識(shí)(MOID)組成采集數(shù)據(jù)報(bào)告,并以堆棧的形式保存。
表1
其中ME1至ME10為代表各種監(jiān)控屬性的ME的名稱,每個(gè)ME名稱都具有對(duì)應(yīng)的數(shù)值。
在確定是否滿足閾值表達(dá)式時(shí),將堆棧中的性能數(shù)據(jù)代入到閾值表達(dá)式中,進(jìn)行判斷,這一過程也被稱為閾值表達(dá)式的解析。
如圖1所示,現(xiàn)有的閾值表達(dá)式解析方法包括以下步驟步驟101.將閾值表達(dá)式從中序表達(dá)式方式轉(zhuǎn)換為后序表達(dá)式方式。
閾值表達(dá)式在初始制定時(shí),通常采用運(yùn)算符號(hào)位于操作數(shù)中間的中序表達(dá)式方式,例如ME1+ME3<ME5,可讀性較強(qiáng)。但是,為了便于從堆棧中取出性能數(shù)據(jù),從而加快閾值表達(dá)式的解析速度,則在進(jìn)行閾值表達(dá)式解析時(shí),通常將中序表達(dá)式方式表示的閾值表達(dá)式轉(zhuǎn)換為運(yùn)算符號(hào)位于操作數(shù)之后的后序表達(dá)式方式,例如ME1ME3+ME5<,并且該后序表達(dá)式所代表的邏輯含義等同于中序表達(dá)式。
步驟102.從采集數(shù)據(jù)報(bào)告中讀取第一個(gè)ME名稱。
由于現(xiàn)有的閾值表達(dá)式解析方法是將采集數(shù)據(jù)報(bào)告中的數(shù)據(jù)逐一取出,與閾值表達(dá)式進(jìn)行比較,則在該解析過程的開始階段,對(duì)采集數(shù)據(jù)報(bào)告中的第一個(gè)ME名稱進(jìn)行處理。
步驟103.將讀取到的ME名稱作為當(dāng)前ME名稱。
以表1所示的采集數(shù)據(jù)報(bào)告為例,經(jīng)過步驟102和103,ME1被讀取出來,并作為當(dāng)前ME名稱。
步驟104~106.將當(dāng)前ME名稱與閾值表達(dá)式中的元素相比較,并判斷閾值表達(dá)式中是否存在與當(dāng)前ME名稱相同的元素,如果是,則將當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值代入到閾值表達(dá)式中;否則,直接執(zhí)行步驟107。
以閾值表達(dá)式為ME1ME3+ME5<時(shí)為例,在當(dāng)前ME名稱為ME1時(shí),由于該閾值表達(dá)式中的元素包含ME1,因此,判定該閾值表達(dá)式中存在與當(dāng)前ME名稱相同的元素。
而后,從采集數(shù)據(jù)報(bào)告中與ME1對(duì)應(yīng)的數(shù)值,即23,代入到ME1ME3+ME5<中,替代該閾值表達(dá)式中的ME1,則此時(shí)的閾值表達(dá)式變?yōu)?3ME3+ME5<。
步驟107~109.判斷當(dāng)前ME名稱是否為采集數(shù)據(jù)報(bào)告中的尾記錄,如果是,則確定閾值表達(dá)式解析結(jié)果,并結(jié)束本閾值表達(dá)式解析流程;否則,讀取下一個(gè)ME名稱,并返回執(zhí)行步驟103。
在當(dāng)前ME名稱為采集數(shù)據(jù)報(bào)告中的尾記錄時(shí),表明已經(jīng)將采集數(shù)據(jù)報(bào)告中的全部ME名稱與閾值表達(dá)式進(jìn)行過比較,即閾值表達(dá)式中的各個(gè)元素均已采用數(shù)據(jù)采集報(bào)告中的性能數(shù)據(jù)進(jìn)行替換,則能夠確定表明是否滿足該閾值表達(dá)式的解析結(jié)果。仍以表1所示的采集數(shù)據(jù)報(bào)告為例,當(dāng)閾值表達(dá)式為ME1ME3+ME5<時(shí),經(jīng)過上述各步驟,該閾值表達(dá)式變?yōu)?365+74<,即23+65<74,由此可見,不滿足該閾值表達(dá)式的條件,則將解析結(jié)果確定為不滿足。
至此,完成了現(xiàn)有的閾值表達(dá)式解析流程。
雖然上述閾值表達(dá)式解析方法能夠利用IPMS中的數(shù)據(jù)采集報(bào)告,對(duì)閾值表達(dá)式進(jìn)行解析,確定網(wǎng)絡(luò)中的實(shí)際情況是否滿足閾值表達(dá)式所代表的邊界條件。當(dāng)時(shí),該方法存在以下缺點(diǎn)1.現(xiàn)有的閾值表達(dá)式解析方法中,每次解析都要將IPMS中的閾值表達(dá)式從中序表達(dá)式方式轉(zhuǎn)換為后序表達(dá)式方式,解析過程較為復(fù)雜,速度不高;2.在現(xiàn)有的閾值表達(dá)式解析方法中,對(duì)采集數(shù)據(jù)報(bào)告中的所有性能數(shù)據(jù)都執(zhí)行一次由讀取到轉(zhuǎn)向下一個(gè)性能數(shù)據(jù)的過程,即執(zhí)行循環(huán)的次數(shù)與性能數(shù)據(jù)的個(gè)數(shù)相同,則當(dāng)采集數(shù)據(jù)報(bào)告中包含的數(shù)據(jù)量較大時(shí),完成解析表達(dá)式的時(shí)間較長(zhǎng)。
因此,現(xiàn)有的閾值表達(dá)式解析方法的解析速度較慢。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種閾值表達(dá)式解析方法,提高解析速度。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種閾值表達(dá)式解析方法,預(yù)先存儲(chǔ)閾值表達(dá)式,并建立保存有采集數(shù)據(jù)報(bào)告中測(cè)量本體ME名稱與數(shù)值的對(duì)應(yīng)關(guān)系的Map,該方法包括以下步驟A.讀取存儲(chǔ)的閾值表達(dá)式;B.將閾值表達(dá)式中的ME名稱逐一取出,以取出的ME名稱為索引,在所述Map中查找所述ME名稱對(duì)應(yīng)的數(shù)值,并用查找到的數(shù)值替換閾值表達(dá)式中對(duì)應(yīng)的ME名稱;C.根據(jù)替換后的閾值表達(dá)式,將閾值表達(dá)式的解析結(jié)果確定為真或者假。
其中,所述預(yù)先存儲(chǔ)閾值表達(dá)式的方法為將轉(zhuǎn)換成后序表達(dá)式方式的閾值表達(dá)式以堆棧形式保存在內(nèi)存中;步驟A所述讀取存儲(chǔ)的閾值表達(dá)式的方法為讀取所存儲(chǔ)的以后序表達(dá)式方式表示的閾值表達(dá)式。
其中,所述將采集數(shù)據(jù)報(bào)告保存在Map中的方法為將采集數(shù)據(jù)報(bào)告中的ME名稱作為所述Map中元素單元的關(guān)鍵字,將ME名稱對(duì)應(yīng)的數(shù)值作為所述Map中元素單元的元素值。
其中,所述步驟B包括B1.從閾值表達(dá)式中讀取一個(gè)ME名稱,并將讀取到的ME名稱作為當(dāng)前ME名稱;B2.以當(dāng)前ME名稱為索引,在所述Map中檢索并提取當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值,并將提取出來的數(shù)值代入到閾值表達(dá)式中,替代當(dāng)前ME名稱;B3.判斷閾值表達(dá)式中是否存在ME名稱,如果是,則返回執(zhí)行步驟B1,否則,執(zhí)行步驟C。
其中,步驟B2所述檢索并提取當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值的方法為在所述Map中檢索關(guān)鍵字與當(dāng)前ME名稱相同的元素單元,將檢索到的元素單元中的元素值作為當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值提取出來。
其中,步驟C所述將閾值表達(dá)式的解析結(jié)果確定為真或者假的方法為如果替換后的閾值表達(dá)式中各元素按照該閾值表達(dá)式中的運(yùn)算規(guī)則運(yùn)算后,符合該閾值表達(dá)式的邏輯關(guān)系,則將閾值表達(dá)式的解析結(jié)果確定為真;否則,將閾值表達(dá)式的解析結(jié)果確定為假。
應(yīng)用本發(fā)明,能夠提高閾值表達(dá)式解析的速度。具體而言,本發(fā)明具有如下有益效果1.本發(fā)明在進(jìn)行表達(dá)式解析之前將閾值表達(dá)式轉(zhuǎn)換為后序表達(dá)式方式,并以堆棧的形式存儲(chǔ)在內(nèi)存中,則在表達(dá)式解析過程中直接從內(nèi)存中讀取后序表達(dá)式方式的閾值表達(dá)式,而無需在每次解析時(shí)都執(zhí)行一次轉(zhuǎn)換操作,簡(jiǎn)化解析過程,縮短解析時(shí)間,提高表達(dá)式解析的速度。
2.本發(fā)明每次將閾值表達(dá)式中的一個(gè)ME名稱替換為對(duì)應(yīng)的數(shù)值,則執(zhí)行數(shù)值替換操作的次數(shù)等于閾值表達(dá)式中的ME名稱個(gè)數(shù),而與采集數(shù)據(jù)報(bào)告中的數(shù)據(jù)量無關(guān),因此即使采集數(shù)據(jù)報(bào)告中包含的數(shù)據(jù)量較大,完成解析表達(dá)式的時(shí)間也不會(huì)變長(zhǎng)。
3.本發(fā)明采用Map保存采集數(shù)據(jù)報(bào)告,由于Map具有快速查找的特性,因此每個(gè)ME名稱從被讀取到替換為對(duì)應(yīng)的數(shù)值所花費(fèi)的時(shí)間大大縮短,有效的提高了表達(dá)式解析的效率。
圖1為現(xiàn)有的閾值表達(dá)式解析方法的流程圖。
圖2為本發(fā)明實(shí)施例中閾值表達(dá)式解析方法的流程圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案更加清楚明白,以下參照附圖并舉實(shí)施例,對(duì)本發(fā)明做進(jìn)一步的詳細(xì)說明。
本發(fā)明為一種NMS中的閾值表達(dá)式解析方法,預(yù)先將閾值表達(dá)式從中序表達(dá)式方式轉(zhuǎn)換為后序表達(dá)式方式,以堆棧形式存儲(chǔ)在IPMS的內(nèi)存中,預(yù)先將采集數(shù)據(jù)報(bào)告保存在Map中,其基本思想包括A.從IPMS的內(nèi)存中讀取采用后序表達(dá)式方式表示的閾值表達(dá)式;B.將閾值表達(dá)式中的ME名稱逐一取出,以取出的ME名稱為索引,
③事件層的真品的性質(zhì)和用途代碼表是根據(jù)所預(yù)留的至少6位區(qū)段代碼,按照現(xiàn)有的需求真品身份認(rèn)證的事件歸類對(duì)應(yīng)列表,空余代碼位隨機(jī)補(bǔ)缺。可參照下表
表3如圖2所示,本實(shí)施例的閾值表達(dá)式解析方法包括以下步驟步驟201.從內(nèi)存中讀取閾值表達(dá)式。
由于本實(shí)施例預(yù)先將閾值表達(dá)式轉(zhuǎn)換為后序表達(dá)式方式并進(jìn)行了存儲(chǔ),則本步驟中直接從內(nèi)存讀取出以后序表達(dá)式方式表示的閾值表達(dá)式,例如ME1ME3+ME5<。這樣,本實(shí)施例省去了現(xiàn)有技術(shù)中轉(zhuǎn)換閾值表達(dá)式的操作。
步驟202從閾值表達(dá)式中讀取一個(gè)ME名稱,并將讀取到的ME名稱作為當(dāng)前ME名稱。
為了進(jìn)行后續(xù)步驟中的閾值表達(dá)式解析,本步驟從以后序表達(dá)式方式表示的閾值表達(dá)式中讀取一個(gè)ME名稱。例如閾值表達(dá)式為ME1ME3+ME5<時(shí),本步驟中讀取出來的當(dāng)前ME名稱可以為ME1、ME3或者M(jìn)E5。
步驟203~204.以當(dāng)前ME名稱為索引,在保存采集數(shù)據(jù)報(bào)告的Map中檢索當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值;而后將檢索到的數(shù)值代入到閾值表達(dá)式中,替代當(dāng)前ME名稱。
本步驟利用Map的快速查找功能,將當(dāng)前ME名稱作為索引,在Map中查找關(guān)鍵字與當(dāng)前ME名稱相同的元素單元。在找到該元素單元之后,將其中的元素值提取出來,作為當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值,并利用該數(shù)值將閾值表達(dá)式中的當(dāng)前ME名稱替換掉,即閾值表達(dá)式中當(dāng)前ME名稱所處的位置表為檢索出來的數(shù)值。例如閾值表達(dá)式為ME1ME3+ME5<,當(dāng)前ME名稱為ME3,經(jīng)過檢索,從表3所示的Map中找到當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值為65,則此時(shí)的閾值表達(dá)式為ME165+ME5<。
步驟205~206.判斷閾值表達(dá)式中是否存在ME名稱,如果是,返回執(zhí)行步驟202;否則,確定閾值表達(dá)式解析結(jié)果。
本處判斷閾值表達(dá)式中是否存在ME名稱的目的在于,確定閾值表達(dá)式中的元素是否全部為數(shù)值,即是否能夠?qū)﹂撝当磉_(dá)式進(jìn)行運(yùn)算,以便確定解析結(jié)果。當(dāng)閾值表達(dá)式中仍然存在ME名稱時(shí),則返回到步驟202,繼續(xù)對(duì)閾值表達(dá)式中的ME名稱進(jìn)行替換;當(dāng)閾值表達(dá)式中的全部元素均為數(shù)值時(shí),則對(duì)按照后序表達(dá)式的邏輯運(yùn)算規(guī)則,將該閾值表達(dá)式的解析結(jié)果確定為真(True)或者假(False)。具體而言,確定解析結(jié)果的方法為如果替換后的閾值表達(dá)式中各元素按照該閾值表達(dá)式中的運(yùn)算規(guī)則運(yùn)算后,符合該閾值表達(dá)式的邏輯關(guān)系,則將閾值表達(dá)式的解析結(jié)果確定為真;否則,將閾值表達(dá)式的解析結(jié)果確定為假。例如閾值表達(dá)式為ME1ME3+ME5<,保存采集數(shù)據(jù)報(bào)告的Map如表3所示,則經(jīng)過檢索替換后變?yōu)?365+74<,由于23+65等于88,不小于74,因此上述數(shù)值不滿足該閾值表達(dá)式的邏輯關(guān)系,則解析結(jié)果為False。
至此,完成了本實(shí)施例的閾值表達(dá)式解析流程。
從上述各個(gè)步驟可見,本實(shí)施例中的閾值表達(dá)式解析方法預(yù)先將閾值表達(dá)式轉(zhuǎn)換為采用后序表達(dá)式方式表示,并在放入堆棧后進(jìn)行存儲(chǔ),則每次進(jìn)行閾值表達(dá)式解析時(shí),只需從IPMS的內(nèi)存中讀取該轉(zhuǎn)換后的閾值表達(dá)式即可,無需執(zhí)行轉(zhuǎn)換操作,簡(jiǎn)化步驟、節(jié)省時(shí)間。
另外,本實(shí)施例中采用具有快速查找功能的Map保存包含ME名稱及其對(duì)應(yīng)的數(shù)值的采集數(shù)據(jù)報(bào)告,在利用數(shù)值進(jìn)行閾值表達(dá)式替換時(shí),以閾值表達(dá)式中的ME名稱為索引,在Map中查找具有與閾值表達(dá)式中的ME名稱相同的關(guān)鍵字的元素單元,并從中提取出元素值,替換閾值表達(dá)式中對(duì)應(yīng)的ME名稱,則無需對(duì)采集數(shù)據(jù)報(bào)告中的ME名稱都執(zhí)行與閾值表達(dá)式比較的操作,又由于在Map中執(zhí)行查找的時(shí)間較堆棧操作而言大大縮短,因此即使在采集數(shù)據(jù)報(bào)告中包含大量性能數(shù)據(jù)的情況下,也能夠快速高效的完成閾值表達(dá)式的解析。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種表達(dá)式解析方法,其特征在于,預(yù)先存儲(chǔ)閾值表達(dá)式,并建立保存有采集數(shù)據(jù)報(bào)告中測(cè)量本體ME名稱與數(shù)值的對(duì)應(yīng)關(guān)系的Map,該方法包括以下步驟A.讀取存儲(chǔ)的閾值表達(dá)式;B.將閾值表達(dá)式中的ME名稱逐一取出,以取出的ME名稱為索引,在所述Map中查找所述ME名稱對(duì)應(yīng)的數(shù)值,并用查找到的數(shù)值替換閾值表達(dá)式中對(duì)應(yīng)的ME名稱;C.根據(jù)替換后的閾值表達(dá)式,將閾值表達(dá)式的解析結(jié)果確定為真或者假。
2.如權(quán)利要求1所述的方法,其特征在于,所述預(yù)先存儲(chǔ)閾值表達(dá)式的方法為將轉(zhuǎn)換成后序表達(dá)式方式的閾值表達(dá)式以堆棧形式保存在內(nèi)存中;步驟A所述讀取存儲(chǔ)的閾值表達(dá)式的方法為讀取所存儲(chǔ)的以后序表達(dá)式方式表示的閾值表達(dá)式。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述將采集數(shù)據(jù)報(bào)告保存在Map中的方法為將采集數(shù)據(jù)報(bào)告中的ME名稱作為所述Map中元素單元的關(guān)鍵字,將ME名稱對(duì)應(yīng)的數(shù)值作為所述Map中元素單元的元素值。
4.如權(quán)利要求3所述的方法,其特征在于,所述步驟B包括B1.從閾值表達(dá)式中讀取一個(gè)ME名稱,并將讀取到的ME名稱作為當(dāng)前ME名稱;B2.以當(dāng)前ME名稱為索引,在所述Map中檢索并提取當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值,并將提取出來的數(shù)值代入到閾值表達(dá)式中,替代當(dāng)前ME名稱;B3.判斷閾值表達(dá)式中是否存在ME名稱,如果是,則返回執(zhí)行步驟B1,否則,執(zhí)行步驟C。
5.如權(quán)利要求4所述的方法,其特征在于,步驟B2所述檢索并提取當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值的方法為在所述Map中檢索關(guān)鍵字與當(dāng)前ME名稱相同的元素單元,將檢索到的元素單元中的元素值作為當(dāng)前ME名稱對(duì)應(yīng)的數(shù)值提取出來。
6.如權(quán)利要求1或2所述的方法,其特征在于,步驟C所述將閾值表達(dá)式的解析結(jié)果確定為真或者假的方法為如果替換后的閾值表達(dá)式中各元素按照該閾值表達(dá)式中的運(yùn)算規(guī)則運(yùn)算后,符合該閾值表達(dá)式的邏輯關(guān)系,則將閾值表達(dá)式的解析結(jié)果確定為真;否則,將閾值表達(dá)式的解析結(jié)果確定為假。
全文摘要
本發(fā)明公開了一種表達(dá)式解析方法,預(yù)先存儲(chǔ)閾值表達(dá)式,并建立保存有采集數(shù)據(jù)報(bào)告中測(cè)量本體ME名稱與數(shù)值的對(duì)應(yīng)關(guān)系的Map,該方法包括以下步驟A.讀取存儲(chǔ)的閾值表達(dá)式;B.將閾值表達(dá)式中的測(cè)量本體ME名稱逐一取出,以取出的ME名稱為索引,在所述Map中查找ME名稱對(duì)應(yīng)的數(shù)值,并用查找到的數(shù)值替換閾值表達(dá)式中對(duì)應(yīng)的ME名稱;C.根據(jù)替換后的閾值表達(dá)式,將閾值表達(dá)式的解析結(jié)果確定為真或者假。本發(fā)明能夠提高表達(dá)式解析的速度。
文檔編號(hào)H04L12/24GK1852157SQ20051011750
公開日2006年10月25日 申請(qǐng)日期2005年11月2日 優(yōu)先權(quán)日2005年11月2日
發(fā)明者萊密斯, 古步山 申請(qǐng)人:華為技術(shù)有限公司