張 卅 張惠剛 李忠安
?
智能變電站并行冗余網(wǎng)絡(luò)的研究與實(shí)現(xiàn)
張 卅1張惠剛1李忠安2
(1. 南京工程學(xué)院電力工程學(xué)院,南京 211167; 2. 南京南瑞繼保電氣有限公司,南京 211102)
本文介紹了IEC 62439-3中的并行冗余協(xié)議(PRP)的基本原理,對(duì)PRP網(wǎng)絡(luò)中雙連接節(jié)點(diǎn)的基本結(jié)構(gòu)以及對(duì)數(shù)據(jù)幀操作原理作出詳細(xì)闡述。為了保證通信網(wǎng)絡(luò)的傳輸性能,提出了一種冗余丟棄算法,并可在Windows系統(tǒng)下實(shí)現(xiàn)。實(shí)驗(yàn)表明:?jiǎn)尉W(wǎng)故障時(shí),變電站通信網(wǎng)絡(luò)不造成延遲,能實(shí)現(xiàn)無縫切換。PRP網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,具有較高的可靠性,良好的經(jīng)濟(jì)性,將成為智能變電站通信網(wǎng)絡(luò)的主要研究方向之一。
IEC 62439;并行冗余;丟棄算法;智能變電站
IEC 61850標(biāo)準(zhǔn)從邏輯上將智能變電站分為變電站層、間隔層和過程層[1],取代了傳統(tǒng)變電站的復(fù)雜結(jié)構(gòu),解決了通信故障、設(shè)備的互操作性、二次設(shè)備接線復(fù)雜等問題,實(shí)現(xiàn)變電站自動(dòng)化系統(tǒng)中的通信網(wǎng)絡(luò)高可靠性、可用性。然而,IEC 61850標(biāo)準(zhǔn)并沒有對(duì)變電站通信冗余方案做出明確要求,使得各廠家提出了私有冗余解決方案,這反而不利于智能變電站互操作性的實(shí)現(xiàn),尤其是通信服務(wù)的一致性。
2008年,IEC SC65委員會(huì)發(fā)布了IEC 62439標(biāo)準(zhǔn),該標(biāo)準(zhǔn)對(duì)冗余網(wǎng)絡(luò)的構(gòu)建提供一個(gè)標(biāo)準(zhǔn)化界定,適用于站控層總線和過程層總線等的拓?fù)浣Y(jié)構(gòu)[2],主要提出了6種協(xié)議,分別為并行冗余協(xié)議PRP (parallel redundancy protocol)、高可用無縫環(huán)網(wǎng)協(xié)議HSR(high seamless ring)、介質(zhì)冗余協(xié)議MRP(media redundancy protocol)、交叉冗余協(xié)議CRP(cross redundancy protocol)、信標(biāo)冗余協(xié)議BRP(beacon redundancy protocol)、分布式冗余協(xié)議DRP(distribute redundancy protocol)。文獻(xiàn)[3-4]通過比較這幾種網(wǎng)絡(luò)冗余技術(shù),指出PRP和HSR方案在網(wǎng)絡(luò)冗余的適應(yīng)性以及對(duì)故障的恢復(fù)性能方面,都是理想的冗余方案。文獻(xiàn)[5]提出了PRP/HSR組網(wǎng)方式,能提高變電站的安全性與其應(yīng)用性能。文獻(xiàn)[6-7]在Linux系統(tǒng)下實(shí)現(xiàn)PRP節(jié)點(diǎn)冗余方案。本文在Windows系統(tǒng)下實(shí)現(xiàn)PRP網(wǎng)絡(luò)冗余方案,實(shí)驗(yàn)表明該方案可實(shí)現(xiàn)網(wǎng)絡(luò)故障下的無縫切換,零恢復(fù)時(shí)間,為實(shí)現(xiàn)智能變電站高可靠性冗余提供設(shè)計(jì)參考。
PRP網(wǎng)絡(luò)執(zhí)行冗余的功能是指在節(jié)點(diǎn)設(shè)備處實(shí)現(xiàn)雙備用,PRP網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)如圖1所示。PRP網(wǎng)絡(luò)基于兩個(gè)并列且物理結(jié)構(gòu)上互不影響的網(wǎng)架,網(wǎng)絡(luò)設(shè)備能同時(shí)在兩個(gè)網(wǎng)絡(luò)中傳輸數(shù)據(jù),并且在發(fā)生鏈路故障時(shí)能提供無縫切換。PRP網(wǎng)絡(luò)含有兩種連接方式:雙連接節(jié)點(diǎn)DANP(double attached node implementing PRP)和單連接節(jié)點(diǎn)SAN(single attached node)。DANP直接連接到兩個(gè)獨(dú)立、并列的局域網(wǎng)上,實(shí)現(xiàn)雙網(wǎng)通信,SAN既能直接接入局域網(wǎng),但通信范圍只限定在連接的局域網(wǎng)內(nèi),又能通過冗余盒(RedBox)接入兩個(gè)局域網(wǎng),實(shí)現(xiàn)雙網(wǎng)通信。
圖1 PRP網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)
HSR網(wǎng)絡(luò)在某種程度上可看作是PRP網(wǎng)絡(luò)的一種變體,將A、B兩網(wǎng)看作兩個(gè)傳輸方向,并將A、B網(wǎng)連起來看作環(huán)網(wǎng),則構(gòu)成了HSR網(wǎng)絡(luò)。與PRP網(wǎng)絡(luò)的DANP相比,HSR網(wǎng)絡(luò)的DANH多了個(gè)轉(zhuǎn)發(fā)功能。
PRP網(wǎng)絡(luò)與HSR網(wǎng)絡(luò)都可實(shí)現(xiàn)網(wǎng)絡(luò)故障下的無縫切換,零恢復(fù)時(shí)間。對(duì)兩網(wǎng)絡(luò)的經(jīng)濟(jì)性、網(wǎng)絡(luò)負(fù)載量和可靠性做了簡(jiǎn)單的分析。
1)經(jīng)濟(jì)性
一方面,HSR遵循在不同路徑的路徑傳輸重復(fù)報(bào)文的原則,在基礎(chǔ)構(gòu)架規(guī)模上比PRP縮短一半。另一方面,與PRP報(bào)文結(jié)構(gòu)不同的是,HSR標(biāo)簽位于ASDU的前端,因此交換機(jī)在轉(zhuǎn)發(fā)報(bào)文時(shí)采用直通交換技術(shù),減少了轉(zhuǎn)發(fā)過程的延時(shí)。但是在組網(wǎng)的多層交換機(jī)轉(zhuǎn)發(fā),一般交換機(jī)傳輸延時(shí)為50ms,若一個(gè)網(wǎng)絡(luò)中交換機(jī)達(dá)到6個(gè),傳輸延時(shí)升至到300ms,在大規(guī)模變電站中應(yīng)用不具有經(jīng)濟(jì)優(yōu)勢(shì)。因此,PRP傳輸效率較高、快速,但是成本投入較大,適用于大容量網(wǎng)絡(luò)結(jié)構(gòu)建設(shè)。而HSR在交換機(jī)多的情況下,傳輸延時(shí)較為大,但是其成本低,適用于小容量的網(wǎng)絡(luò)構(gòu)架。
2)網(wǎng)絡(luò)負(fù)載量
表1 PRP與HSR網(wǎng)效率比較
3)可靠性分析
網(wǎng)絡(luò)的可靠性是指在特定的時(shí)間內(nèi)或特定的環(huán)境下,執(zhí)行信息傳輸任務(wù)的能力。網(wǎng)絡(luò)結(jié)構(gòu)可靠性由元件可靠度()、相鄰故障間的平均工作時(shí)間(mean time between failure, MTBF)、有效度()以及系統(tǒng)失效度()關(guān)鍵性指標(biāo)衡量。
利用故障樹分析法來分析及預(yù)測(cè)系統(tǒng)失效的概率和系統(tǒng)發(fā)生故障的原因,并能計(jì)算系統(tǒng)的可靠性。故障樹分析法通常把系統(tǒng)最不希望發(fā)生的故障狀態(tài)作為故障分析的目標(biāo),逐級(jí)尋找引發(fā)事件的根源。根據(jù)可靠性指標(biāo)、PRP網(wǎng)絡(luò)和HSR網(wǎng)絡(luò)的故障樹,統(tǒng)計(jì)PRP網(wǎng)絡(luò)和HSR網(wǎng)絡(luò)冗余可靠性的數(shù)據(jù)指標(biāo),由表2所知,PRP網(wǎng)絡(luò)的平均無故障時(shí)間明顯高于HSR網(wǎng)絡(luò),而且失效度也低。因此PRP網(wǎng)絡(luò)可靠性最高。
表2 PRP與HSR可靠性比較
PRP網(wǎng)絡(luò)的冗余功能在節(jié)點(diǎn)處實(shí)現(xiàn),通過DANP達(dá)到冗余效果。DANP結(jié)構(gòu)圖如圖2所示,每個(gè)DANP含有兩塊網(wǎng)卡,兩塊網(wǎng)卡具有相同的物理地址和網(wǎng)絡(luò)地址,網(wǎng)卡通過冗余鏈路體LRE(link redundancy entity)連接到網(wǎng)絡(luò)層。LRE承擔(dān)冗余管理和報(bào)文處理任務(wù),當(dāng)網(wǎng)絡(luò)層發(fā)出一幀,發(fā)送端LRE將該幀復(fù)制為兩幀,同時(shí)添加冗余控制標(biāo)簽RCT(redundancy control tag),兩幀分別從LAN A和LAN B發(fā)出。這兩個(gè)幀以不同的延遲經(jīng)過兩個(gè)局域網(wǎng),理想情況下它們幾乎同時(shí)到達(dá)目的地,接收時(shí),接收端LRE接收先到的那一幀并轉(zhuǎn)發(fā)給上層,并丟棄后到的重復(fù)幀。
圖2 DANP結(jié)構(gòu)圖
PRP數(shù)據(jù)幀結(jié)構(gòu)如圖3所示,主要包括目的地址(DA)、源地址(SA)、類型、LSDU以及RCT。其中RCT(6字節(jié))主要包括:16bit的序列號(hào)(SeqNr)。SeqNr由發(fā)送方發(fā)送具有相同序列號(hào)的兩幀,每次序列號(hào)加1,區(qū)間位為[0, 65535];4bit的局域網(wǎng)標(biāo)識(shí)符(LAN ID)。該字段用以區(qū)分端口連接LAN方向,若為1010為A網(wǎng)數(shù)據(jù)幀,若為1011則為B網(wǎng)數(shù)據(jù)幀。是一對(duì)重復(fù)報(bào)文惟一不同的部分;12bit的LSDU長(zhǎng)度(link service data unit)。該字節(jié)可以鑒別出是PRP或者HSR幀,它表示的是數(shù)據(jù)幀的數(shù)據(jù)字節(jié)加RCT的字節(jié)數(shù)之和,限定值為1496字節(jié);16bit的PRP類型后綴(PRP suffix),其常值為0x88FB。
圖3 PRP數(shù)據(jù)幀結(jié)構(gòu)
若LAN B在幀LAN A丟棄窗口之外,表明LANB幀超前于LANA,則保留LANB幀并上傳。在丟棄和保留幀的同時(shí),丟棄窗口的大小也會(huì)做出調(diào)整。令LAN B丟棄窗口長(zhǎng)度設(shè)置為1,LAN A丟棄窗口置0,則
下面是一段冗余丟棄算法的程序代碼。
unsigned int CheckRcvSeqNumber()
{int LANA,LANB;
unsigned long dropWindowMax=WMAX; /*丟棄窗口的最大值*/
unsigned short seq;
LANA=(lan_id==0xa)? 0:1; /*判斷數(shù)據(jù)幀來自A網(wǎng)還是B網(wǎng)*/
LANB=(LANA+1)% 2;
curSeq[LANA]=seq;
if ((((curSeq[LANA]-staSeq[LANB]+TwoPi) % TwoPi)<=OnePi)&&(((expSeq[LANB]-curSeq[LANA]+TwoPi- 1) % TwoPi) < OnePi))/*判斷數(shù)列號(hào)是否在丟棄窗口內(nèi)*/
{ if ( (curSeq[LANA] !=expSeq[LANA]))/*判斷數(shù)據(jù)幀是否異序*/
{cntErrOutOfSequence[LANA]=(cntErrOutOfSequence[LANA]+1);}/*記錄異序的數(shù)據(jù)幀的個(gè)數(shù)*/
expSeq[LANA]=(curSeq[LANA]+1) % TwoPi; /*調(diào)整丟棄窗口的大小*/
staSeq[LANB]=expSeq[LANA];
staSeq[LANA]=expSeq[LANA];
return TRUE; }/*丟棄重復(fù)幀*/
else
{if (curSeq[LANA] !=expSeq[LANA]) /*判斷數(shù)據(jù)幀是否異序*/
{pData->cntErrOutOfSequence[LANA]=(pData->cntErrOutOfSequence[LANA]+1);
staSeq[LANA]=curSeq[LANA]; }/*調(diào)整丟棄窗口的大小,使起始序列等于當(dāng)前序列*/
else
{if ((pData->expectedSeq[LANA]-staSeq[LANA]+TwoPi) % TwoPi>dropWindowMax) /*判斷數(shù)列號(hào)是否在丟棄窗口外*/
{if(pData->expectedSeq[LANB]== staSeq[LANA])
{pData->cntErrStall[LANB]=pData->cntErrStall[LANB]+1 ;}
staSeq[LANA]=(pData->expectedSeq[LANA]+TwoPi- dropWindowMax) % TwoPi ;} }/*調(diào)整丟棄窗口的大小*/
staSeq[LANB]=expSeq[LANB];
expSeq[LANA]=(curSeq[LANA]+1) % TwoPi ;
return FALSE; }}/*向上層轉(zhuǎn)發(fā)*/
本文在Windows系統(tǒng)下進(jìn)行實(shí)驗(yàn)仿真,基于NDIS(network driver interface specifies)實(shí)現(xiàn)PRP方案。NDIS中間層驅(qū)動(dòng)是一種虛擬驅(qū)動(dòng)程序,連接上層NDIS協(xié)議驅(qū)動(dòng)以及下層NDIS為微端口驅(qū)動(dòng),既承上啟下又可以“欺上瞞下”。在NDIS提供的MPSendPackets函數(shù)框架中完成數(shù)據(jù)幀發(fā)送功能:報(bào)文尾部添加RCT,并同時(shí)向A、B網(wǎng)發(fā)送數(shù)據(jù),在NDIS提供的PtReceive函數(shù)框架中完成數(shù)據(jù)接收功能:實(shí)現(xiàn)冗余報(bào)文的丟棄和向上層轉(zhuǎn)發(fā)。在驅(qū)動(dòng)中設(shè)置定時(shí)器,用于PRP管理幀的定時(shí)發(fā)送以及外部節(jié)點(diǎn)狀態(tài)的定時(shí)檢測(cè)。
兩臺(tái)Windows計(jì)算機(jī)采用直連方式做PRP應(yīng)用測(cè)試,每臺(tái)計(jì)算機(jī)都配置兩塊物理網(wǎng)卡并安裝PRP網(wǎng)絡(luò)接口驅(qū)動(dòng)程序,PRP測(cè)試拓?fù)淙鐖D5所示。測(cè)試PRP網(wǎng)絡(luò)單個(gè)網(wǎng)絡(luò)故障的自愈時(shí)間。兩計(jì)算機(jī)之間進(jìn)行數(shù)據(jù)傳輸,在傳輸過程中,LAN B被拔掉,即B網(wǎng)被中斷,通過Wireshark抓包分析,發(fā)現(xiàn)網(wǎng)絡(luò)傳輸不受影響,故PRP網(wǎng)絡(luò)故障恢復(fù)時(shí)間為零,符合無縫切換的要求。
在測(cè)試過程中,各節(jié)點(diǎn)報(bào)文的傳遞情況可以通過節(jié)點(diǎn)表所實(shí)現(xiàn)。當(dāng)B網(wǎng)發(fā)生故障時(shí),通過節(jié)點(diǎn)表檢測(cè)A、B兩網(wǎng)數(shù)據(jù)幀的情況,發(fā)現(xiàn)A網(wǎng)數(shù)據(jù)幀序列號(hào)線條連續(xù),而B網(wǎng)數(shù)據(jù)幀序列號(hào)出現(xiàn)間斷。如圖6所示。從測(cè)試結(jié)果來看,在單網(wǎng)故障時(shí),PRP網(wǎng)絡(luò)能實(shí)現(xiàn)零丟包,零恢復(fù)時(shí)間。
圖5 PRP測(cè)試拓?fù)浣Y(jié)構(gòu)
圖6 單網(wǎng)故障時(shí),幀接收情況
本文設(shè)計(jì)了基于序列號(hào)的冗余丟棄窗口算法,算法簡(jiǎn)單,占用資源少,處理時(shí)間快。采用直連方式做PRP應(yīng)用測(cè)試,結(jié)果表明,在單網(wǎng)故障時(shí),PRP網(wǎng)絡(luò)能實(shí)現(xiàn)零丟包,零恢復(fù)時(shí)間,完全符合IEC TC57對(duì)變電站網(wǎng)絡(luò)恢復(fù)時(shí)間的要求。PRP冗余協(xié)議提高了系統(tǒng)的可靠性與安全性,并且結(jié)構(gòu)簡(jiǎn)單,將會(huì)是智能化變電站中通信網(wǎng)絡(luò)的主要研究方向之一。
[1] Kirrmann H, Rietmann P, Kunsman S. IEC 61850 Standard Network Redundancy Using IEC 62439[EB/OL]. PAC World Autumn Issue, 2008.
[2] International Electro Commission. IEC 62439 SC 65C High availability automation networks[S]. Geneva, Switzerland: IEC, 2008.
[3] 謝志迅, 鄧素碧, 臧德?lián)P. 數(shù)字化變電站通信網(wǎng)絡(luò)冗余技術(shù)[J]. 電力自動(dòng)化設(shè)備, 2011, 31(9): 100-103, 120.
[4] 何鐘杰, 黃險(xiǎn)峰, 崔春, 等. 幾種智能變電站冗余通信協(xié)議分析比較[J]. 廣東電力, 2011, 24(4): 5-8.
[5] 李俊剛, 張愛民, 宋小會(huì), 等. 并行冗余協(xié)議在智能變電站網(wǎng)絡(luò)的應(yīng)用[J]. 南方電網(wǎng)技術(shù), 2013, 7(4): 92-96.
[6] 遲翔. 基于Netfilter框架的IEC 62439-3實(shí)現(xiàn)方案[J]. 智能電網(wǎng), 2016, 4(2): 213-216.
[7] 李忠安, 遲翔, 張惠剛, 等. 基于虛擬網(wǎng)橋原理的PRP/HSR網(wǎng)絡(luò)接口設(shè)計(jì)[J]. 智能電網(wǎng), 2016, 4(6): 582-586.
[8] 李思如, 陳玉杰, 陳江波, 等. 配電網(wǎng)安全經(jīng)濟(jì)運(yùn)行的無線監(jiān)測(cè)終端設(shè)計(jì)[J]. 電氣技術(shù), 2017, 18(7): 33-36.
[9] 徐強(qiáng)超, 劉洋, 鄺國(guó)安, 等. 一種新型電力系統(tǒng)故障監(jiān)視及組網(wǎng)方法研究[J]. 電氣技術(shù), 2017, 18(6): 128-131.
[10] 莫峻, 譚建成. 基于并行冗余協(xié)議的高可靠性過程總線通信研究[J]. 電工技術(shù)學(xué)報(bào), 2012, 27(4): 263-268.
[11] 劉曉勝, 龐繼偉, 徐殿國(guó), 等. 基于蛛網(wǎng)結(jié)構(gòu)的智能變電站過程層GOOSE網(wǎng)組網(wǎng)可靠性與實(shí)時(shí)性研究[C]//第五屆電工技術(shù)前沿問題學(xué)術(shù)論壇暨湖南省電工技術(shù)學(xué)會(huì)2012年學(xué)術(shù)年會(huì)論文集, 長(zhǎng)沙, 2012: 245-250.
Research and implementation of a parallel redundancy network in intelligent substation
Zhang Sa1Zhang Huigang1Li Zhong’an2
(1. School of Electric Power Engineering, Nanjing Institute of Technology, Nanjing 211167; 2. NR Electric Co., Ltd, Nanjing 211102)
The principle of the Parallel Redundancy Protocol (PRP) in IEC 62439-3 is introduced. The basic structure of DANP and the principle of data frame operation are expounded in detail. In order to ensure the transmission performance of the communication network, a redundant discarding algorithm is implemented in Windows. The experiment shows that the substation communication network does not cause delay and can achieve seamless switching when single network fault occurs. The PRP network has the advantages of simple structure, high reliability and good economy, and will become one of the main research directions of the Intelligent Substation Communication.
IEC 62439; parallel redundancy; discard algorithm; intelligent substation
2018-04-09
張 卅(1992-),女,碩士研究生,主要研究方向?yàn)殡娏ο到y(tǒng)通信及標(biāo)準(zhǔn)、IEC 61850、IEC 62439等。