專(zhuān)利名稱(chēng):通訊系統(tǒng)故障診斷方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬通信領(lǐng)域,尤其涉及一種通訊系統(tǒng)故障診斷方法和系統(tǒng)。
背景技術(shù):
隨著通信技術(shù)的高速發(fā)展及用戶(hù)要求的不斷提高,通訊系統(tǒng)的集成度也越來(lái)越高,作為一種復(fù)雜的軟硬件系統(tǒng),如果出現(xiàn)故障,將影響整個(gè)系統(tǒng)的正常、穩(wěn)定運(yùn)行,所以如何快速、準(zhǔn)確地診斷故障,保證通信系統(tǒng)故障的可測(cè)性和可維護(hù)性便成為業(yè)界一個(gè)急需解決的問(wèn)題。
在現(xiàn)有的通訊設(shè)備中,大部分都不具有故障診斷定位功能,當(dāng)需要對(duì)故障診斷時(shí),一般都使用額外的專(zhuān)用診斷設(shè)備,但由于這些專(zhuān)用的設(shè)備在結(jié)構(gòu)上往往有很大的局限性,所以故障定位能力及可寬展性都較差,且不具有通用性,成本較高。如西門(mén)子的故障診斷系統(tǒng),其診斷過(guò)程就只能通過(guò)獲取各種警告信息來(lái)完成,要求被測(cè)系統(tǒng)提供大量標(biāo)準(zhǔn)化的警告信息,否則軟件無(wú)法處理。很顯然,這種故障診斷系統(tǒng)僅局限于提供警告功能,故障定位能力有限,且警告信息的標(biāo)準(zhǔn)化要求也限制了其通用性。
發(fā)明內(nèi)容
本發(fā)明目的在于提供一種性能良好且通用性強(qiáng)的通信系統(tǒng)故障診斷定位方法和系統(tǒng)。
其中,本發(fā)明通訊系統(tǒng)故障診斷方法包括如下步驟
A.建立故障診斷模型及其內(nèi)部的判斷邏輯;B.故障診斷模型的內(nèi)部判斷邏輯經(jīng)故障定位后,進(jìn)行診斷操作;C.將診斷結(jié)果輸出至外部設(shè)備;步驟A中的故障診斷模型為樹(shù)型結(jié)構(gòu),是利用可解釋的腳本語(yǔ)言來(lái)建立,其中,所述的腳本語(yǔ)言有二種語(yǔ)句申明語(yǔ)句和賦值語(yǔ)句。申明語(yǔ)句用來(lái)申明一個(gè)參數(shù)或節(jié)點(diǎn),其參數(shù)和節(jié)點(diǎn)標(biāo)識(shí)符是自定義的;賦值語(yǔ)句用來(lái)表示節(jié)點(diǎn)的關(guān)聯(lián),每個(gè)腳本描述一個(gè)故障定位樹(shù),由3個(gè)段組成,分別以<PARAM>,<NODE>,<TREE>起頭,其中,a.<PARAM>段是對(duì)動(dòng)作參數(shù)的申明;b.<NODE>段是對(duì)各個(gè)節(jié)點(diǎn),包括動(dòng)作節(jié)點(diǎn)和處理節(jié)點(diǎn)的申明;c.<TREE>段定義節(jié)點(diǎn)之間的父子關(guān)系,形成樹(shù)型結(jié)構(gòu);d.某些動(dòng)作需要參數(shù),該參數(shù)可通過(guò)用戶(hù)界面從用戶(hù)獲取或?yàn)橐褕?zhí)行過(guò)的動(dòng)作的返回值;步驟B中的診斷操作是利用系統(tǒng)命令和網(wǎng)管數(shù)據(jù)庫(kù)中的數(shù)據(jù),采用通用的腳本語(yǔ)言定義操作命令來(lái)完成的;步驟B中的通用的腳本語(yǔ)言為工具命令語(yǔ)言;步驟C中的診斷結(jié)果還可輸出至數(shù)據(jù)庫(kù)。
本發(fā)明的通訊系統(tǒng)故障診斷系統(tǒng),包括診斷結(jié)果顯示設(shè)備,其特征在于還具有一故障診斷引擎,該故障診斷引擎包括一個(gè)針對(duì)故障診斷模型描述腳本的腳本解釋器和相應(yīng)的故障定位模塊,經(jīng)過(guò)TCL解釋器,采用工具命令語(yǔ)言TCL執(zhí)行診斷操作后,故障定位模塊將診斷結(jié)果輸至診斷結(jié)果顯示設(shè)備以及診斷結(jié)果記錄數(shù)據(jù)庫(kù);所述的通訊系統(tǒng)故障診斷系統(tǒng)的故障診斷模型為樹(shù)型結(jié)構(gòu);所述的通訊系統(tǒng)故障診斷系統(tǒng)的樹(shù)型結(jié)構(gòu)是一個(gè)二叉樹(shù)結(jié)構(gòu),在該結(jié)構(gòu)中,每個(gè)非葉子節(jié)點(diǎn)為一個(gè)動(dòng)作,其中,葉子為診斷的結(jié)論。
由于采用了上述的技術(shù)方案,所以本發(fā)明具有以下優(yōu)點(diǎn)
1、由于故障定位流程與診斷操作獨(dú)立,各自用獨(dú)立的腳本來(lái)描述,所以擴(kuò)展不會(huì)相互影響;2、由于采用可解釋的腳本語(yǔ)言來(lái)描述故障診斷模型,所以無(wú)須編譯,適應(yīng)漸進(jìn)的故障診斷流程導(dǎo)出過(guò)程;3、由于利用系統(tǒng)命令和網(wǎng)管數(shù)據(jù)庫(kù)中的數(shù)據(jù)來(lái)進(jìn)行診斷,所以通用性強(qiáng),能廣泛應(yīng)用于不同的通信系統(tǒng),且系統(tǒng)命令和網(wǎng)管數(shù)據(jù)庫(kù)對(duì)診斷的覆蓋面廣,故障定位能力;4、本發(fā)明中的故障診斷方法在產(chǎn)品的生命周期中是一個(gè)逐步總結(jié)和優(yōu)化的過(guò)程,采用解釋型的故障診斷語(yǔ)言便于動(dòng)態(tài)改進(jìn)故障診斷流程,而不會(huì)影響產(chǎn)品本身。
圖1為本發(fā)明通訊系統(tǒng)故障診斷系統(tǒng)結(jié)構(gòu)示意圖;圖2為本發(fā)明通訊系統(tǒng)故障診斷方法的流程示意圖;圖3為故障定位樹(shù)示意圖。
具體實(shí)施例方式
下面根據(jù)附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明根據(jù)圖1、圖2和圖3,本發(fā)明包括診斷結(jié)果顯示設(shè)備,還具有一故障診斷引擎,該故障診斷引擎包括一個(gè)針對(duì)故障診斷模型描述腳本的腳本解釋器和相應(yīng)的故障定位模塊,經(jīng)過(guò)TCL解釋器,采用工具命令語(yǔ)言TCL執(zhí)行診斷操作后,故障定位模塊將診斷結(jié)果輸至診斷結(jié)果顯示設(shè)備以及診斷結(jié)果記錄數(shù)據(jù)庫(kù);通訊系統(tǒng)故障診斷系統(tǒng)的故障診斷模型為樹(shù)型結(jié)構(gòu)的故障定位樹(shù);故障定位樹(shù)是一種通用的良好的故障定位模型,它通過(guò)一系列YES/NO的判斷過(guò)程實(shí)現(xiàn)故障定位,模擬人工故障判斷的邏輯,每一個(gè)判斷過(guò)程稱(chēng)為一個(gè)動(dòng)作,經(jīng)過(guò)一系列的動(dòng)作判斷后,最終給出診斷的結(jié)論,故障定位樹(shù)的結(jié)構(gòu)其實(shí)就是一個(gè)二叉樹(shù)結(jié)構(gòu),每個(gè)非葉子節(jié)點(diǎn)為一個(gè)動(dòng)作,葉子為診斷的結(jié)論。
如圖2所示,本發(fā)明采用這種可解釋的腳本語(yǔ)言描述故障診斷模型,故障診斷模型的內(nèi)部判斷邏輯經(jīng)故障定位后,進(jìn)行診斷操作,該診斷操作利用系統(tǒng)命令和網(wǎng)管數(shù)據(jù)庫(kù)中的數(shù)據(jù),采用通用的腳本語(yǔ)言,如工具命令語(yǔ)言TCL,來(lái)定義操作命令,診斷操作后,將操作結(jié)果輸至外部設(shè)備或數(shù)據(jù)庫(kù)。
如圖3所示是一個(gè)針對(duì)某產(chǎn)品“PPE端口業(yè)務(wù)故障”的一個(gè)故障定位樹(shù),圖中菱形框稱(chēng)為決定框,代表一個(gè)動(dòng)作,也就是用來(lái)決定下一步走向的診斷操作;矩形框代表診斷的一個(gè)結(jié)論或處理建議,稱(chēng)之為處理框,就是最終的一個(gè)診斷結(jié)果。
一個(gè)故障定位樹(shù)可以由多個(gè)子樹(shù)組成,每個(gè)子樹(shù)都是如圖3所示的二叉樹(shù)結(jié)構(gòu),各個(gè)子樹(shù)之間的關(guān)系是并行的,也就是說(shuō)對(duì)一個(gè)故障的診斷過(guò)程中各個(gè)子樹(shù)都要遍歷,即使前面的子樹(shù)已經(jīng)得到了一個(gè)診斷結(jié)果,這樣在使用中具有更強(qiáng)的靈活性。
故障診斷結(jié)構(gòu)如圖1所示,以上描述的故障定位樹(shù)結(jié)構(gòu)用一種可解釋的故障診斷描述語(yǔ)言的腳本來(lái)描述;每個(gè)診斷操作,也就是決定框中的動(dòng)作用工具命令語(yǔ)言TCL腳本來(lái)描述。
下面介紹故障診斷描述語(yǔ)言的語(yǔ)法每個(gè)腳本描述一個(gè)故障定位樹(shù),由3個(gè)段組成,分別以<PARAM>,<NODE>,<TREE>起頭。<PARAM>段是對(duì)動(dòng)作參數(shù)的申明;<NODE>段是對(duì)各個(gè)動(dòng)作節(jié)點(diǎn)Dec和處理節(jié)點(diǎn)Proc的申明;<TREE>段則定義了節(jié)點(diǎn)之間的父子關(guān)系,形成樹(shù)型結(jié)構(gòu)。有些動(dòng)作還需要從外部輸入一些命令參數(shù)才能完成命令的執(zhí)行,因此腳本中需要參數(shù)信息,這些參數(shù)值的獲取可能直接通過(guò)用戶(hù)界面從最終用戶(hù)那里獲取,也可能是前面執(zhí)行過(guò)的動(dòng)作的返回值。
下面是某產(chǎn)品RLOS告警的腳本示例<PARAM>
opt_num(″對(duì)端光板號(hào)″);cros_num(″對(duì)端交叉板號(hào)″);clk_num(″對(duì)端時(shí)鐘板號(hào)″);<NODE>
TOP_FAULT(″RLOS告警″);Dec1(″對(duì)端光板TF告警″,″check warn tf %%″,opt_num);Dec2(″對(duì)端光板OPM_FAIL告警″,″check warn opmfail%%″,opt_num);Proc1(″正?!?;Proc2(″對(duì)端光板故障″);Dec3(″對(duì)端發(fā)光正?!?,″check light %%″,opt_num);Dec4(″本站無(wú)光″,″check receive″);Dec5(″本站光功率太小″,″check recv-low″);Proc3(″光纖斷″);Proc4(″本站光模塊或光纖損耗大″);Dec6(″對(duì)端交叉板不在位″,″check board%%″,cros_num);Dec7(″對(duì)端時(shí)鐘板BD_STATUS告警″,″check warn bd_status%%″,clk_num);Dec8(″本端環(huán)回?zé)oLOS告警″,″check warn los locallp″);Proc5(″對(duì)端交叉板或時(shí)鐘板故障″);Proc6(″對(duì)端交叉板不在位″);Proc7(″對(duì)端時(shí)鐘板不在位″);Proc8(″其他原因″);
<TREE>
TOP_FAULT=Dec1+Dec3+Dec6;Dec1=Dec2+Proc2;Dec2=Proc1+Proc2;Dec3=Proc2+Dec4;Dec4=Dec5+Proc3;Dec5=Proc1+Proc4;Dec6=Dec7+Proc6;Dec7=Dec8+Proc7;Dec8=Proc5+Proc8;上述腳本有2種語(yǔ)句申明語(yǔ)句和賦值語(yǔ)句,申明語(yǔ)句用來(lái)申明一個(gè)參數(shù)或樹(shù)節(jié)點(diǎn),參數(shù)和樹(shù)節(jié)點(diǎn)標(biāo)識(shí)符是自定義的,如參數(shù)opt_num和節(jié)點(diǎn)Dec1,Dec2等,標(biāo)識(shí)符的命名規(guī)則是以字母開(kāi)頭,后跟字母、數(shù)字或下劃線(xiàn)。
對(duì)參數(shù)申明來(lái)說(shuō)采用上述腳本中圓括號(hào)括起來(lái)的字符串對(duì)參數(shù)進(jìn)行描述,作用只是為了在讓終端用戶(hù)提供參數(shù)值時(shí)能將這個(gè)參數(shù)的描述信息告訴用戶(hù)作為提示,當(dāng)然也可以不對(duì)參數(shù)做申明,從而該參數(shù)沒(méi)有提示信息,這種做法主要用在由動(dòng)作返回而不是用戶(hù)提供參數(shù)值的情況。
樹(shù)節(jié)點(diǎn)的申明語(yǔ)句也類(lèi)似,在圓括號(hào)中的首先是對(duì)該節(jié)點(diǎn)的描述字符串,對(duì)動(dòng)作節(jié)點(diǎn)Dec后面還有動(dòng)作命令字符串和可能的參數(shù),對(duì)處理節(jié)點(diǎn)Proc就只有節(jié)點(diǎn)描述字符串。命令字符串中的連續(xù)2個(gè)百分號(hào)“%%”是格式化字符,表示該位置用一個(gè)輸入?yún)?shù)代替;同樣,一個(gè)動(dòng)作命令可以返回若干個(gè)輸出參數(shù),只要在輸入?yún)?shù)序列的后面跟上輸出參數(shù)序列即可,并且每個(gè)輸出參數(shù)的標(biāo)識(shí)符前要加″&″號(hào)。如DecisionA(″Serdes環(huán)回發(fā)包測(cè)試正?!?,″test channel serdeslp%%″,port_num,&packet_num)中port_num就是輸入?yún)?shù),實(shí)際發(fā)送命令時(shí)將命令字符串中的%%替換為port_num的值,而且該動(dòng)作返回一個(gè)參數(shù)給packet_num,該參數(shù)在以后的動(dòng)作中可能會(huì)用到,這樣就不需要提示終端用戶(hù)來(lái)提供packet_num參數(shù)的值。節(jié)點(diǎn)申明中的″TOP_FAULT″是語(yǔ)言的關(guān)鍵字,表示本故障定位樹(shù)是用于定位哪個(gè)故障現(xiàn)象的。
<TREE>段內(nèi)的賦值語(yǔ)句表示了節(jié)點(diǎn)的關(guān)聯(lián),TOP_FAULT的賦值語(yǔ)句表示了各個(gè)子樹(shù)的根節(jié)點(diǎn),其他的賦值語(yǔ)句″=″號(hào)左邊是父節(jié)點(diǎn),該父節(jié)點(diǎn)只能是動(dòng)作節(jié)點(diǎn),不能是處理節(jié)點(diǎn);″=″號(hào)右邊是NO節(jié)點(diǎn)+YES節(jié)點(diǎn),因此<TREE>段說(shuō)明了樹(shù)節(jié)點(diǎn)的邏輯關(guān)聯(lián)。另外賦值語(yǔ)句右側(cè)也可以只有一個(gè)子節(jié)點(diǎn),也就是說(shuō)不論父節(jié)點(diǎn)的判斷結(jié)果是YES還是NO,都走到該子節(jié)點(diǎn),這是為了適應(yīng)某些動(dòng)作只是為了獲取其他動(dòng)作所需的參數(shù)而沒(méi)有判斷,如通過(guò)一個(gè)動(dòng)作獲取系統(tǒng)的一些狀態(tài),供其他動(dòng)作命令作為輸入?yún)?shù),而不需要人工來(lái)獲取這些狀態(tài)。
腳本是可以帶注釋的,注釋以#號(hào)開(kāi)始到本行結(jié)束。
在啟動(dòng)診斷后,診斷引擎的每個(gè)動(dòng)作其實(shí)就是執(zhí)行一個(gè)動(dòng)作的TCL腳本,首先檢查該動(dòng)作是否需要參數(shù),如果參數(shù)已經(jīng)賦過(guò)值,則直接使用該值,否則就提示用戶(hù)輸入,然后執(zhí)行相應(yīng)的操作并接收返回結(jié)果,對(duì)結(jié)果進(jìn)行判斷,如果動(dòng)作中指定有輸出參數(shù)則還要提取出來(lái)保存;經(jīng)過(guò)一系列的動(dòng)作和邏輯判斷,最終得到診斷結(jié)果。各個(gè)子樹(shù)之間的關(guān)系是并行的,也就是說(shuō)診斷過(guò)程中各個(gè)子樹(shù)都要遍歷,即使前面的子樹(shù)已經(jīng)得到了一個(gè)診斷結(jié)果。
權(quán)利要求
1.一種通訊系統(tǒng)故障診斷方法,其特征在于A、建立故障診斷模型及其內(nèi)部的判斷邏輯;B、故障診斷模型的內(nèi)部判斷邏輯經(jīng)故障定位后,進(jìn)行診斷操作;C、將診斷結(jié)果輸出至外部設(shè)備。
2.根據(jù)權(quán)利要求1所述的通訊系統(tǒng)故障診斷方法,其特征在于步驟A中的故障診斷模型為樹(shù)型結(jié)構(gòu),是利用可解釋的腳本語(yǔ)言來(lái)建立,其中,所述的腳本語(yǔ)言有二種語(yǔ)句申明語(yǔ)句和賦值語(yǔ)句;申明語(yǔ)句用來(lái)申明一個(gè)參數(shù)或節(jié)點(diǎn),其參數(shù)和節(jié)點(diǎn)標(biāo)識(shí)符是自定義的,賦值語(yǔ)句表示節(jié)點(diǎn)的關(guān)聯(lián),每個(gè)腳本描述一個(gè)故障定位樹(shù),由3個(gè)段組成,分別以<PARAM>,<NODE>,<TREE>起頭;其中,a.<PARAM>段是對(duì)動(dòng)作參數(shù)的申明;b.<NODE>段是對(duì)各個(gè)節(jié)點(diǎn),包括動(dòng)作節(jié)點(diǎn)和處理節(jié)點(diǎn)的申明;c.<TREE>段定義節(jié)點(diǎn)之間的父子關(guān)系,形成樹(shù)型結(jié)構(gòu);d.某些動(dòng)作需要參數(shù),該參數(shù)可通過(guò)用戶(hù)界面從用戶(hù)獲取或?yàn)橐褕?zhí)行過(guò)的動(dòng)作的返回值。
3.根據(jù)權(quán)利要求1所述的通訊系統(tǒng)故障診斷方法,其特征在于步驟B中的診斷操作是利用系統(tǒng)命令和網(wǎng)管數(shù)據(jù)庫(kù)中的數(shù)據(jù),采用通用的腳本語(yǔ)言定義操作命令來(lái)完成的。
4.根據(jù)權(quán)利要求3所述的通訊系統(tǒng)故障診斷方法,其特征在于步驟B中的通用的腳本語(yǔ)言為工具命令語(yǔ)言。
5.根據(jù)權(quán)利要求1所述的通訊系統(tǒng)故障診斷方法,其特征在于步驟C中的診斷結(jié)果還可輸出至數(shù)據(jù)庫(kù)。
6.一種實(shí)現(xiàn)權(quán)利要求1所述的故障診斷方法的通訊系統(tǒng)故障診斷系統(tǒng),包括診斷結(jié)果顯示設(shè)備,其特征在于還具有一故障診斷引擎,該故障診斷引擎包括一個(gè)針對(duì)故障診斷模型描述腳本的腳本解釋器和相應(yīng)的故障定位模塊,經(jīng)過(guò)TCL解釋器,采用工具命令語(yǔ)言TCL執(zhí)行診斷操作后,故障定位模塊將診斷結(jié)果輸至診斷結(jié)果顯示設(shè)備以及診斷結(jié)果記錄數(shù)據(jù)庫(kù)。
7.根據(jù)權(quán)利要求6所述的通訊系統(tǒng)故障診斷方法,其特征在于所述的通訊系統(tǒng)故障診斷系統(tǒng)的故障診斷模型為樹(shù)型結(jié)構(gòu)。
8.根據(jù)權(quán)利要求7所述的通訊系統(tǒng)故障診斷方法,其特征在于所述的通訊系統(tǒng)故障診斷系統(tǒng)的樹(shù)型結(jié)構(gòu)是一個(gè)二叉樹(shù)結(jié)構(gòu),在該結(jié)構(gòu)中,每個(gè)非葉子節(jié)點(diǎn)為一個(gè)動(dòng)作,其中,葉子為診斷的結(jié)論。
全文摘要
一種通訊系統(tǒng)故障診斷方法和系統(tǒng),其中,通訊系統(tǒng)故障診斷定位系統(tǒng)采用可解釋的腳本語(yǔ)言描述故障診斷模型,故障診斷模型的內(nèi)部判斷邏輯經(jīng)故障定位后,進(jìn)行診斷操作,該診斷操作利用系統(tǒng)命令和網(wǎng)管數(shù)據(jù)庫(kù)中的數(shù)據(jù),采用通用的腳本語(yǔ)言定義操作命令,診斷操作后,將操作結(jié)果輸至外部設(shè)備或數(shù)據(jù)庫(kù)。通訊系統(tǒng)故障診斷方法是通過(guò)包含腳本解釋器和故障定位模塊的故障診斷引擎來(lái)實(shí)現(xiàn)。本發(fā)明具有通用性,強(qiáng)大的故障診斷定位能力和高度擴(kuò)展性,可廣泛適用于通信系統(tǒng)設(shè)備的故障診斷定位。
文檔編號(hào)H04B17/00GK1479461SQ02141738
公開(kāi)日2004年3月3日 申請(qǐng)日期2002年8月29日 優(yōu)先權(quán)日2002年8月29日
發(fā)明者趙嵐, 趙 嵐 申請(qǐng)人:華為技術(shù)有限公司