一種goose報(bào)文異常的在線檢測方法
【專利摘要】一種GOOSE報(bào)文異常的在線檢測方法,屬于電力通信系統(tǒng)領(lǐng)域。先對(duì)一幀報(bào)文進(jìn)行格式與配置信息判斷,如果這兩項(xiàng)中任何一項(xiàng)有錯(cuò)誤,則結(jié)束本幀報(bào)文的后續(xù)分析。其次,如果格式跟配置信息都沒有錯(cuò)誤,則繼續(xù)進(jìn)行sqNum與stNum邏輯的分析。再次,無論sqNum與stNum有無邏輯錯(cuò)誤,均要進(jìn)行GOOSE報(bào)文中斷和延遲的判斷。最后,無論有無延遲,均要判斷報(bào)文是否處于測試模式。至此就實(shí)現(xiàn)了對(duì)一幀報(bào)文簡潔而全面的分析判斷,并依據(jù)這些判別結(jié)果,對(duì)GOOSE報(bào)文的各種異常進(jìn)行精確定位。本發(fā)明方法邏輯簡潔,分析全面,并且通過采用本方案,能有效提高變電站的調(diào)試效率,可實(shí)現(xiàn)一種邏輯性縝密的異常檢測。
【專利說明】—種GOOSE報(bào)文異常的在線檢測方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種GOOSE報(bào)文異常的在線檢測方法,屬于電力通信系統(tǒng)【技術(shù)領(lǐng)域】。【背景技術(shù)】
[0002]面向通用對(duì)象的變電站事件(GenericObject Oriented Substation Event,GOOSE)報(bào)文的應(yīng)用,是IEC61850標(biāo)準(zhǔn)中用于滿足變電站自動(dòng)化系統(tǒng)快速報(bào)文需求的機(jī)制。通過在變電站配置一套技術(shù)先進(jìn)和功能完善的計(jì)算機(jī)監(jiān)控系統(tǒng),代替維護(hù)人員來承擔(dān)控制、監(jiān)視、信號(hào)測量以及數(shù)據(jù)統(tǒng)計(jì)分析等各方面的任務(wù)。監(jiān)控系統(tǒng)采用IEC61850通信標(biāo)準(zhǔn),利用快速以太網(wǎng)特性,通過G00SE報(bào)文實(shí)現(xiàn)保護(hù)裝置之間信息交換和監(jiān)控間隔聯(lián)閉鎖功能。監(jiān)控系統(tǒng)與保護(hù)系統(tǒng)統(tǒng)一建模、統(tǒng)一組網(wǎng)并共享統(tǒng)一的信息平臺(tái),提高二次系統(tǒng)的安全性和可靠性;IEC61850的應(yīng)用,節(jié)省了規(guī)約轉(zhuǎn)換設(shè)備和二次設(shè)備,減少了運(yùn)行、檢修、維護(hù)的工作量,從而達(dá)到了節(jié)省成本的目的。
[0003]G00SE報(bào)文有其發(fā)送特點(diǎn),無論通信設(shè)備的設(shè)備自描述文件(CID)配置錯(cuò)誤,還是其它物理因素,都可能對(duì)G00SE報(bào)文的正常發(fā)送產(chǎn)生影響。目前,在變電站的調(diào)試過程中,都是由維護(hù)人員現(xiàn)場抓包,然后使用報(bào)文解析軟件進(jìn)行靜態(tài)分析,這無疑會(huì)降低故障排查效率。因此,提出一種快速高效的檢測方法對(duì)變電站的維護(hù)意義重大。
【發(fā)明內(nèi)容】
[0004]為了克服現(xiàn)有技術(shù)中存在的缺陷和不足,本發(fā)明提供了一種G00SE報(bào)文異常的在線檢測方法。
[0005]本發(fā)明的技術(shù)方案如下:
[0006]一種G00SE報(bào)文異常的在線檢測方法,通過變電站配置的計(jì)算機(jī)監(jiān)控系統(tǒng)來實(shí)現(xiàn),主要針對(duì)的異常有以下幾種:
[0007]1) G00SE報(bào)文格式錯(cuò)誤;
[0008]2) G00SE報(bào)文配置錯(cuò)誤;
[0009]3) G00SE 報(bào)文重啟;
[0010]4) G00SE報(bào)文狀態(tài)改變(事件發(fā)生);
[0011]5) G00SE報(bào)文狀態(tài)虛變;
[0012]6) G00SE 報(bào)文亂序;
[0013]7) G00SE 報(bào)文中斷;
[0014]8) GOOSE報(bào)文發(fā)送超時(shí);
[0015]9) G00SE報(bào)文處于測試模式;
[0016]該方法步驟如下:
[0017]I】針對(duì)異常I)的判別條件有3個(gè),條件1:解析出G00SE報(bào)文的頭部信息,提取length域的值,該值應(yīng)等于G00SE報(bào)文PDU長度加8或G00SE報(bào)文長度減18,否則認(rèn)為該G00SE報(bào)文格式錯(cuò)誤;條件2:滿足條件1,但TLV解碼失敗,則認(rèn)為該G00SE報(bào)文格式錯(cuò)誤;條件3:滿足條件2,但找不到對(duì)應(yīng)域Tag,則認(rèn)為該GOOSE報(bào)文格式錯(cuò)誤,并結(jié)束本幀報(bào)文的后續(xù)分析;
[0018]2】如果異常I)條件不成立,則針對(duì)異常2)的判斷條件為:若GOOSE報(bào)文的MAC、APPID、gocbRef、Datset、goID、channel_num 一個(gè)或多個(gè)與SQ)文件中對(duì)應(yīng)的配置內(nèi)容不符,即判斷為GOOSE報(bào)文配置不符,并結(jié)束本幀報(bào)文的后續(xù)分析;
[0019]3】如果異常2)的判斷條件不成立,則進(jìn)一步針對(duì)異常3)的判斷條件為:若sqNum和StNum的值均為1,即判斷為GOOSE報(bào)文重啟;
[0020]4】針對(duì)異常4)的判斷條件為:若當(dāng)前幀報(bào)文比前一幀報(bào)文的StNum值大1,并且sqNum歸0,即判斷為GOOSE報(bào)文狀態(tài)改變;
[0021]5】如果異常4)的判斷條件成立,則異常5)的判斷條件為:若StNum變化,但是數(shù)據(jù)集內(nèi)容不變,即判斷為GOOSE報(bào)文狀態(tài)虛變;
[0022]6】如果異常4)的判斷條件不成立,進(jìn)一步針對(duì)異常6)的判斷條件為:如果當(dāng)前中貞的sqNum不比前一幀sqNum大I,即判斷為GOOSE報(bào)文亂序;
[0023]7】針對(duì)異常7),當(dāng)收到當(dāng)前報(bào)文后,在兩倍的當(dāng)前報(bào)文存活時(shí)間內(nèi)沒有接收到下一幀報(bào)文,即判斷為GOOSE報(bào)文中斷,具體做法是針對(duì)每一路報(bào)文開辟一個(gè)新的線程,新線程內(nèi)有一個(gè)定時(shí)器,當(dāng)一幀報(bào)文到來后計(jì)時(shí)器重新計(jì)時(shí),當(dāng)定時(shí)器時(shí)間累計(jì)到兩倍的報(bào)文存活時(shí)間時(shí),就判斷為GOOSE報(bào)文發(fā)送中斷;
[0024]8】針對(duì)異常8)的判斷條件為:若報(bào)文發(fā)送時(shí)間間隔大于兩倍的最大發(fā)送時(shí)間間隔時(shí),即可判斷為報(bào)文發(fā)送超時(shí);
[0025]9】針對(duì)異常9)的判斷條件為:若GOOSE報(bào)文的測試標(biāo)志位置為1,則判斷GOOSE報(bào)文處于測試模式。
[0026]上述GOOSE報(bào)文的length為報(bào)文數(shù)據(jù)包的長度。
[0027]上述GOOSE 報(bào)文的 MAC、APPID、gocbRef、Datset、goID、channel_num 分別表不目的地址、應(yīng)用ID、配置版本號(hào)、數(shù)據(jù)集名字、目的ID、數(shù)據(jù)通道數(shù)目。由于G00SE報(bào)文的H)U是采用ASN.1的BER編碼形式,具體為Tag+Length+Value,簡稱TLV編碼。
[0028]上述Tag代表后面Value類型,Length表示后面Value的長度,Value代表實(shí)際的數(shù)據(jù)。
[0029]上述SCD(Substation Configuration Description)文件是變電站配置描述文件。
[0030]上述sqNum和stNum為報(bào)文順序號(hào)與報(bào)文狀態(tài)號(hào)。
[0031]本發(fā)明方法的技術(shù)優(yōu)勢在于不僅節(jié)約了內(nèi)存資源,而且提高了運(yùn)算效率,降低了處理問題的復(fù)雜度。通過采用本方案,能有效提高變電站的維護(hù)效率。
【具體實(shí)施方式】
[0032]下面結(jié)合實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明,但不限于此。
[0033]實(shí)施例:
[0034]本發(fā)明實(shí)施例如下:一種G00SE報(bào)文異常的在線檢測方法,通過變電站配置的計(jì)算機(jī)監(jiān)控系統(tǒng)來實(shí)現(xiàn),主要針對(duì)的異常有以下幾種:
[0035]1) G00SE報(bào)文格式錯(cuò)誤;[0036]2 ) GOOSE報(bào)文配置錯(cuò)誤;
[0037]3) GOOSE 報(bào)文重啟;
[0038]4) GOOSE報(bào)文狀態(tài)改變(事件發(fā)生);
[0039]5 ) G00SE報(bào)文狀態(tài)虛變;
[0040]6) G00SE 報(bào)文亂序;
[0041]7) G00SE 報(bào)文中斷;
[0042]8 ) GOOSE報(bào)文發(fā)送超時(shí);
[0043]9) G00SE報(bào)文處于測試模式,
[0044]該方法步驟如下:
[0045]I】針對(duì)異常I)的判別條件為3個(gè),條件1:解析出G00SE報(bào)文的頭部信息,提取length域的值,該值應(yīng)等于G00SE報(bào)文PDU長度加8或G00SE報(bào)文長度減18,否則認(rèn)為該G00SE報(bào)文格式錯(cuò)誤;條件2:滿足條件1,但TLV解碼失敗,則認(rèn)為該G00SE報(bào)文格式錯(cuò)誤;條件3:滿足條件2,但找不到對(duì)應(yīng)域Tag,則認(rèn)為該G00SE報(bào)文格式錯(cuò)誤,并結(jié)束本幀報(bào)文的后續(xù)分析;
[0046]2】如果異常I)條件不成立,則針對(duì)異常2)的判斷條件為:若G00SE報(bào)文的MAC、APPID、gocbRef、Datset、goID、channel_num至少一個(gè)與SO)文件中的內(nèi)容不符,即判斷為G00SE報(bào)文配置不符,并結(jié)束本幀報(bào)文的后續(xù)分析;
[0047]3】如果異常2)的判斷條件不成立,則進(jìn)一步針對(duì)異常3)的判斷條件為:若sqNum和stNum的值均為1,即判斷為G00SE報(bào)文重啟;
[0048]4】針對(duì)異常4)的判斷條件為:若當(dāng)前幀報(bào)文比前一幀報(bào)文的stNum值大1,并且sqNum歸0,即判斷為G00SE報(bào)文狀態(tài)改變;
[0049]5】如果異常4)的判斷條件成立,則異常5)的判斷條件為:若stNum變化,但是數(shù)據(jù)集內(nèi)容不變,即判斷為G00SE報(bào)文狀態(tài)虛變;
[0050]6】如果異常4)的判斷條件不成立,進(jìn)一步針對(duì)異常6)的判斷條件為:如果當(dāng)前中貞的sqNum不比前一幀sqNum大I,即判斷為G00SE報(bào)文亂序;
[0051]7】針對(duì)異常7),當(dāng)收到當(dāng)前報(bào)文后,在兩倍的當(dāng)前報(bào)文存活時(shí)間內(nèi)沒有接收到下一幀報(bào)文,即判斷為報(bào)文中斷,具體做法是針對(duì)每一路報(bào)文開辟一個(gè)新的線程,新線程內(nèi)有一個(gè)定時(shí)器,當(dāng)一幀報(bào)文到來后計(jì)時(shí)器重新計(jì)時(shí),當(dāng)定時(shí)器時(shí)間累計(jì)到兩倍的報(bào)文存活時(shí)間時(shí),就判斷為報(bào)文發(fā)送中斷;
[0052]8】針對(duì)異常8)的判斷條件為:若報(bào)文發(fā)送時(shí)間間隔大于兩倍的最大發(fā)送時(shí)間間隔時(shí),即可判斷為G00SE報(bào)文發(fā)送超時(shí);
[0053]9】針對(duì)異 常9)的判斷條件為:若G00SE報(bào)文的測試標(biāo)志位置為1,則判斷為G00SE報(bào)文處于測試模式。
【權(quán)利要求】
1.一種GOOSE報(bào)文異常的在線檢測方法,通過變電站配置的計(jì)算機(jī)監(jiān)控系統(tǒng)來實(shí)現(xiàn),主要針對(duì)的異常有以下幾種: DGOOSE報(bào)文格式錯(cuò)誤; 2)GOOSE報(bào)文配置錯(cuò)誤; 3)GOOSE報(bào)文重啟; 4)GOOSE報(bào)文狀態(tài)改變即事件發(fā)生; 5)GOOSE報(bào)文狀態(tài)虛變; 6)GOOSE報(bào)文亂序; 7)GOOSE報(bào)文中斷; 8)GOOSE報(bào)文發(fā)送超時(shí); 9)GOOSE報(bào)文處于測試模式; 該方法步驟如下: I】針對(duì)異常I)的判斷條件有3個(gè),條件1:解析出GOOSE報(bào)文的頭部信息,提取length域的值,該值應(yīng)等于GOOSE報(bào)文PDU長度加8或GOOSE報(bào)文長度減18,否則認(rèn)為該GOOSE報(bào)文格式錯(cuò)誤;條件2:滿足條件1,但TLV解碼失敗,則認(rèn)為該GOOSE報(bào)文格式錯(cuò)誤;條件3:滿足條件2,但找不到對(duì)應(yīng)域Tag,則認(rèn)為該GOOSE報(bào)文格式錯(cuò)誤,并結(jié)束本幀報(bào)文的后續(xù)分析; 2】如果異常I)條件不成立,則針對(duì)異常2)的判斷條件為:若GOOSE報(bào)文的MAC、APPID、gocbRef、Datset、goID、channel_num 一個(gè)或多個(gè)與SQ)文件中對(duì)應(yīng)的配置內(nèi)容不符,即判斷為G00SE報(bào)文配置不符,并結(jié)束本幀報(bào)文的后續(xù)分析; 3】如果異常2)的判斷條件不成立,則進(jìn)一步針對(duì)異常3)的判斷條件為:若sqNum和StNum的值均為1,即判斷為G00SE報(bào)文重啟; 4】針對(duì)異常4)的判斷條件為:若當(dāng)前幀報(bào)文比前一幀報(bào)文的StNum值大1,并且sqNum歸0,即判斷為G00SE報(bào)文狀態(tài)改變; 5】如果異常4)的判斷條件成立,則異常5)的判斷條件為:若StNum變化,但是數(shù)據(jù)集內(nèi)容不變,即判斷為G00SE報(bào)文狀態(tài)虛變; 6】如果異常4)的判斷條件不成立,進(jìn)一步針對(duì)異常6)的判斷條件為:如果當(dāng)前幀的sqNum不比前一幀sqNum大I,即判斷為G00SE報(bào)文亂序; 7】針對(duì)異常7),當(dāng)收到當(dāng)前報(bào)文后,在兩倍的當(dāng)前報(bào)文存活時(shí)間內(nèi)沒有接收到下一幀報(bào)文,即判斷為報(bào)文中斷,具體做法是針對(duì)每一路報(bào)文開辟一個(gè)新的線程,新線程內(nèi)有一個(gè)定時(shí)器,當(dāng)一幀報(bào)文到來后計(jì)時(shí)器重新計(jì)時(shí),當(dāng)定時(shí)器時(shí)間累計(jì)到兩倍的報(bào)文存活時(shí)間時(shí),就判斷為G00SE報(bào)文發(fā)送中斷; 8】針對(duì)異常8)的判斷條件為:若報(bào)文發(fā)送時(shí)間間隔大于兩倍的最大發(fā)送時(shí)間間隔,即可判斷為G00SE報(bào)文發(fā)送超時(shí); 9】針對(duì)異常9)的判斷條件為:若G00SE報(bào)文的測試標(biāo)志位置為1,則判斷為G00SE報(bào)文處于測試模式。
【文檔編號(hào)】H04L12/26GK103684903SQ201310554471
【公開日】2014年3月26日 申請日期:2013年11月8日 優(yōu)先權(quán)日:2013年11月8日
【發(fā)明者】白智全, 朱立朋, 李振杰, 王兵, 孔凡堂 申請人:山東大學(xué)