徐海生
中國電子科技集團(tuán)公司第五十四研究所,河北石家莊,050000
目前來說,OPNET是通信網(wǎng)絡(luò)仿真工具中應(yīng)用最廣泛的一種軟件。OPNET包括過程層、繼電保護(hù)及GOOSE網(wǎng)絡(luò)等。為了利用通信網(wǎng)絡(luò)仿真軟件實(shí)現(xiàn)對無線網(wǎng)絡(luò)通信的仿真,需要掌握通信過程仿真軟件的數(shù)學(xué)建模原理和應(yīng)用要求,還需更深入了解網(wǎng)絡(luò)通信的特點(diǎn)。無線通信網(wǎng)絡(luò)仿真模型設(shè)計(jì)過程中,可以將其分配給仿真軟件所定義的通信模型,保證仿真與基于仿真軟件的真實(shí)網(wǎng)絡(luò)系統(tǒng)相一致。本文利用OPNET實(shí)現(xiàn)無線通信網(wǎng)絡(luò)的仿真系統(tǒng)建模。首先,分析了間隔層、站控層、過程層的數(shù)據(jù)流,給出了適用于OPNET的數(shù)學(xué)模型。從網(wǎng)絡(luò)、節(jié)點(diǎn)、服務(wù)多個(gè)方面進(jìn)行模型設(shè)計(jì);并且基于OPNET提出了一種完整的仿真參數(shù)配置,用于仿真OPNET的通信性能。
OPNET主要用于描述、仿真和分析通信網(wǎng)絡(luò),OPNET的存在使無線傳輸各個(gè)方面擁有了建模能力。所有無線功能與高層協(xié)議模型都存在緊密的聯(lián)系,所以開發(fā)人員通過利用OPNET仿真功能、豐富的協(xié)議模型庫等,可以進(jìn)一步優(yōu)化開發(fā)過程。
(1)定義問題。關(guān)于網(wǎng)絡(luò)模型的創(chuàng)建可以從兩個(gè)方面理解:一是從實(shí)際需要出發(fā),即必須實(shí)現(xiàn)哪些功能,可以從仿真中獲得什么結(jié)果;二是在實(shí)際網(wǎng)絡(luò)運(yùn)行環(huán)境中是否對網(wǎng)絡(luò)存在特殊要求。另外,還可以站在仿真角度思考如何模擬網(wǎng)絡(luò)運(yùn)行,同時(shí)開展模擬功能實(shí)驗(yàn),保證實(shí)驗(yàn)的精確性。
(2)建立原始模型。在仿真環(huán)境中模擬和構(gòu)建真實(shí)網(wǎng)絡(luò),并圍繞原始模型執(zhí)行后續(xù)操作。原始模型是使用許多OPNET模型編輯器建立,包括網(wǎng)絡(luò)模型編輯器、進(jìn)程模型編輯器、天線模型編輯器及節(jié)點(diǎn)模型編輯器。天線模型可以構(gòu)建無線網(wǎng)絡(luò)結(jié)構(gòu),其是一種比較特殊的節(jié)點(diǎn)模型,用戶根據(jù)實(shí)際需求來分析天線在任何方向的增益特性,然后來編輯天線模型,使模型可以滿足自身需要。該模塊的功能是通過過程模型實(shí)現(xiàn),而過程模型實(shí)際上是一個(gè)有限狀態(tài)機(jī),其表示了模塊的狀態(tài)與狀態(tài)轉(zhuǎn)換規(guī)則[1]。
節(jié)點(diǎn)模型可以對所有節(jié)點(diǎn)的特定行為進(jìn)行定義,一個(gè)節(jié)點(diǎn)中含有多個(gè)模塊,所以節(jié)點(diǎn)行為也是由模塊來決定。模塊可以實(shí)現(xiàn)許多的節(jié)點(diǎn)行為,包括數(shù)據(jù)生成、傳輸、存儲(chǔ)等。網(wǎng)絡(luò)模型是根據(jù)問題定義搭建出來能夠運(yùn)行的第一個(gè)基本的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),并且還是各個(gè)節(jié)點(diǎn)模型和節(jié)點(diǎn)之間相互關(guān)系的組成。另外,通過鏈路模型編輯器、包格式編輯器等生成了新的鏈路類型與定義包的內(nèi)部結(jié)構(gòu),從而提高了OPNET仿真的真實(shí)性,更接近真實(shí)的網(wǎng)絡(luò)結(jié)構(gòu)。
(3)收集統(tǒng)計(jì)量。為了在建立網(wǎng)絡(luò)模型后分析網(wǎng)絡(luò)性能,應(yīng)定義重要性統(tǒng)計(jì)數(shù)據(jù)。OPNET包括標(biāo)量統(tǒng)計(jì)量與矢量統(tǒng)計(jì)量。收集統(tǒng)計(jì)信息意味著將統(tǒng)計(jì)信息寫入統(tǒng)計(jì)信息輸出文件。OPNET提供的節(jié)點(diǎn)和連接統(tǒng)計(jì)數(shù)據(jù)包括顯示總體網(wǎng)絡(luò)性能,如吞吐量、誤碼率、丟包類型、網(wǎng)絡(luò)延遲、負(fù)載等。另外,還可以重新設(shè)置各種統(tǒng)計(jì)方法,方便進(jìn)行后續(xù)的研究。而用戶也能夠給予自身需求定義所需的統(tǒng)計(jì)數(shù)據(jù)。
(4)配置參數(shù)并運(yùn)行仿真。在仿真運(yùn)行前會(huì)進(jìn)行最后一次的仿真參數(shù)配置,內(nèi)容包括仿真時(shí)間、仿真量以及其他的特殊要求。
(5)分析結(jié)果。仿真過程中,仿真核心將會(huì)采用不同方式將一些參數(shù)寫到相應(yīng)的統(tǒng)計(jì)信息內(nèi),并且還可以通過OPNET來設(shè)置不同的查看模式,方便分析不同的統(tǒng)計(jì)信息和不同的需求。如果模擬結(jié)果與預(yù)測結(jié)果存在不匹配的情況,則可以對原因進(jìn)行分析,并更改模擬中的問題關(guān)聯(lián),然后再次進(jìn)行模擬運(yùn)行。最后,利用OPNET發(fā)布仿真報(bào)告[2]。
IE61850標(biāo)準(zhǔn)規(guī)定了通信報(bào)文的類型和傳輸時(shí)間。根據(jù)功能要求,可以將網(wǎng)絡(luò)傳輸?shù)耐ㄐ畔⒎譃槎喾N類型,如快速、中速、低速、文件傳輸、時(shí)間同步、原始數(shù)據(jù)、訪問控制命令等,并且每一種消息都擁有相應(yīng)的傳輸時(shí)間要求。所以,根據(jù)時(shí)間來看,可以將數(shù)據(jù)流分為突發(fā)數(shù)據(jù)流、隨機(jī)數(shù)據(jù)流、周期數(shù)據(jù)流三種類型。本研究根據(jù)這三種類型對數(shù)據(jù)流進(jìn)行建模。
部分?jǐn)?shù)據(jù)傳輸?shù)臅r(shí)間非常集中,同時(shí)長度較短、存在突發(fā)性,則屬于突發(fā)數(shù)據(jù)流。因?yàn)榍耙粫r(shí)段數(shù)據(jù)的到達(dá),無法顯示突發(fā)數(shù)據(jù)流的發(fā)生概率。也就是說,在網(wǎng)絡(luò)接收到信息時(shí),突然發(fā)送一條持續(xù)一定時(shí)間的消息;如果沒有數(shù)據(jù)到達(dá),則需要一段時(shí)間的不活動(dòng)。突發(fā)數(shù)據(jù)存在相似性。接收和發(fā)送突發(fā)數(shù)據(jù)都可以使用最簡單的交換模型進(jìn)行模擬;數(shù)據(jù)以一定速度生成,此時(shí)處于打開狀態(tài);未生成數(shù)據(jù),則處于關(guān)閉狀態(tài);開放期數(shù)據(jù)的分布函數(shù)既可以和封閉期數(shù)據(jù)分布函數(shù)相同,也可以處于不相同的狀態(tài)。分布函數(shù)能夠決定兩個(gè)部分疊加之后的數(shù)據(jù)相關(guān)性。
其均值有限,但方差無限,也就是:
在ON、OFF過程中的時(shí)間長度所服從的分布函數(shù)之一的重尾分布,對于這一類型的多個(gè)數(shù)據(jù)進(jìn)行相加,形成突發(fā)性數(shù)據(jù)流。
在數(shù)據(jù)傳輸過程中,數(shù)據(jù)傳輸是隨機(jī)的、不規(guī)則的,那么其屬于隨機(jī)性數(shù)據(jù)。而該類型的數(shù)據(jù)可以分為:①數(shù)據(jù)長度較長,實(shí)時(shí)性要求較低,如保護(hù)定值修改、文件傳輸?shù)?。②?shù)據(jù)長度較短,負(fù)責(zé)保護(hù)功能報(bào)文的傳輸,例如操作命令切換、聯(lián)鎖保護(hù)功能等報(bào)警信息。
在穩(wěn)定的工作環(huán)境下,運(yùn)行期間會(huì)產(chǎn)生周期性數(shù)據(jù)報(bào)文,該類型報(bào)文可以概括為兩種:①間隔層向站控層設(shè)備的控制器發(fā)送模擬數(shù)據(jù)、狀態(tài)信息切換,并且發(fā)送時(shí)間具有固定的時(shí)間間隔;②過程層電壓轉(zhuǎn)換器和電流互感器將采集的數(shù)據(jù)傳輸?shù)介g隔層的IED采樣值。這種類型的定期數(shù)據(jù)具有十分嚴(yán)格的時(shí)間要求。而時(shí)延則是通信網(wǎng)絡(luò)中最基礎(chǔ)、最關(guān)鍵的因素之一。長度決定了周期性數(shù)據(jù)的大小,因此屬于傳輸或時(shí)間數(shù)據(jù);通過周期性到達(dá)時(shí)間間隔、固定長度等可以開展模擬工作[3]。
無線通信網(wǎng)絡(luò)中的通信節(jié)點(diǎn)模型構(gòu)建是從OPNET模型中選擇模型。其可以根據(jù)自身需要改進(jìn)節(jié)點(diǎn)處理層,保證實(shí)際網(wǎng)絡(luò)模型之間的一致性。無線通信網(wǎng)絡(luò)模型的組成主要有間隔層保護(hù)裝置、站控層服務(wù)器、過程層合并單元、監(jiān)控主機(jī)、智能斷路器等。網(wǎng)絡(luò)節(jié)點(diǎn)分為兩類:①實(shí)現(xiàn)數(shù)據(jù)傳輸和交換的交換節(jié)點(diǎn);②數(shù)據(jù)生成、數(shù)據(jù)處理以及數(shù)據(jù)接收的終端節(jié)點(diǎn)。
OPNETmodeler節(jié)點(diǎn)域具有和網(wǎng)絡(luò)層和進(jìn)程層的中間層進(jìn)行連接的能力,通過節(jié)點(diǎn)模塊來選擇建模方式。組合多個(gè)節(jié)點(diǎn)模塊,使其成為一個(gè)功能完善的節(jié)點(diǎn)。一個(gè)節(jié)點(diǎn)內(nèi)的節(jié)點(diǎn)模塊非常多,甚至可以達(dá)到上百個(gè)。大部分的節(jié)點(diǎn)采用TCP/IP或OSI參考模型。仿真軟件OpnetModeler選擇的網(wǎng)絡(luò)為以太網(wǎng)。網(wǎng)絡(luò)節(jié)點(diǎn)選擇TCP/IP協(xié)議棧模型,從頂層(即應(yīng)用層)到以太網(wǎng)的所有協(xié)議層均實(shí)現(xiàn)了仿真覆蓋。
根據(jù)無線通信網(wǎng)絡(luò)中不同設(shè)備發(fā)送的不同數(shù)據(jù)類型,選擇相應(yīng)的模型。通過對數(shù)據(jù)流向和數(shù)據(jù)模型的確定和分析,使用以太網(wǎng)模型wkst uadv在OPNET模型中模擬保護(hù)控制IED、融合單元MU、智能交換機(jī)等智能電子設(shè)備,如圖1所示為節(jié)點(diǎn)模型圖。一共有八層,包括數(shù)據(jù)鏈路層mac、arp、ip、ip_encap、收信機(jī)hub_rx_0_0、發(fā)信機(jī)hub_tx_0_0、適配層tpal、傳輸層tcp、應(yīng)用層application。其中,ip_encap、arp、ip屬于網(wǎng)絡(luò)層。模型中每一層的協(xié)議棧僅鏈接到上層和下層[4]。接收方集線器hub_rx_0_0用于接收數(shù)據(jù),集線器hub_tx_0_0用于數(shù)據(jù)的發(fā)送;而MAC層實(shí)現(xiàn)了以太網(wǎng)MAC底層協(xié)議和各種算法;網(wǎng)絡(luò)層劃分功能如下:IP層用于計(jì)算網(wǎng)絡(luò)性能,IP encap操作主要面向分組,ARP層用于處理地址相關(guān)信息;TCP層協(xié)議包括TCP、UDP,可以提供面向連接、非連接的服務(wù);Tpal為應(yīng)用程序和各種TCP進(jìn)程提供了統(tǒng)一的接口;以太網(wǎng)模型可以實(shí)現(xiàn)分層通信仿真模型;應(yīng)用程序處理客戶的請求并生成請求[4]。
圖1 ethernet_wkst_adv 的節(jié)點(diǎn)模型
在無線通信網(wǎng)絡(luò)模型中,包含通信鏈路、通信節(jié)點(diǎn)以及子網(wǎng)等,網(wǎng)絡(luò)中的最高級(jí)別為子網(wǎng),它可以封裝其他網(wǎng)絡(luò)層對象,包括IED設(shè)備、交換機(jī)等。通過OPNET Modeler中的節(jié)點(diǎn)模型來模擬站控層和間隔層之間的通信,分別將間隔層的九個(gè)間隔封裝在單獨(dú)的子網(wǎng)中,所有子網(wǎng)交換機(jī)均可以連接到交換機(jī)層,然后連接到監(jiān)控主機(jī)和服務(wù)器。連接帶寬為10個(gè)基點(diǎn),最終形成星形網(wǎng)絡(luò)拓?fù)鋄5]。
無線通信網(wǎng)絡(luò)各個(gè)層次之間數(shù)據(jù)流流向與數(shù)據(jù)分析情況:
(1)分析保護(hù)控制IED、斷路器IED到達(dá)服務(wù)器的數(shù)據(jù)流向。在傳送間隔層與過程層設(shè)備的狀態(tài)信息過程中,是由間隔層的保護(hù)控制IED、斷路器IED實(shí)現(xiàn)傳輸?shù)?。而信息傳送的時(shí)間間隔為20ms,傳送的大小為256bytes,傳送信息為周期性數(shù)據(jù),計(jì)算數(shù)據(jù)流為50×256×8=102.4kbps,該數(shù)據(jù)類型建模為IED狀態(tài)服務(wù),設(shè)定報(bào)文消息為256bytes,而發(fā)送和接收間隔則是基于t=0.02的常數(shù)分布。
(2)合并單元MU到保護(hù)控制IED數(shù)據(jù)流分析。MU保護(hù)控制的數(shù)據(jù)流分析在過程層中十分重要。每個(gè)間隔內(nèi)的保護(hù)控制IED接收MU在同一間隔內(nèi)以一定頻率發(fā)送周期性數(shù)據(jù),即廣播發(fā)送的樣本值消息SMV[6]。SMV消息的最大長度為159字節(jié)加上12字節(jié)的幀距離字,總長度為171字節(jié)即1368bit。采樣頻率為80點(diǎn)周期,因此模擬過程中的總數(shù)據(jù)流為80×50×1368=5.472Mbps。該類型的數(shù)據(jù)服務(wù)建模屬于SMV服務(wù),連接帶寬為10baset,設(shè)定消息大小為180字節(jié)。
(3)分析保護(hù)控制IED到斷路器IED的數(shù)據(jù)流。一旦出現(xiàn)意外故障事件,間隔層的保護(hù)控制器將會(huì)觸發(fā)命令,發(fā)送到該層子網(wǎng)中的斷路器,這一消息為16字節(jié)大小,并且會(huì)隨機(jī)性發(fā)生;在分析隨機(jī)數(shù)據(jù)流之后,發(fā)送和接收的隨機(jī)數(shù)據(jù)遵循泊松分布。在模擬過程中,這些數(shù)據(jù)服務(wù)被建模為驅(qū)動(dòng)信息服務(wù)。消息大小設(shè)置為16字節(jié),時(shí)間間隔遵循λ=0.02的泊松分布。
(4)分析從服務(wù)器到站控層主機(jī)數(shù)據(jù)流。在進(jìn)行模擬時(shí),驅(qū)動(dòng)器控制服務(wù)器設(shè)置為FTP(文件傳輸協(xié)議)。驅(qū)動(dòng)器控制主機(jī)接收從FTP服務(wù)器傳輸?shù)拇笮臀募?。在模擬過程中,文件大小設(shè)置為1M[7]。
(5)分析斷路器IED到保護(hù)控制IED數(shù)據(jù)流。GOOSE報(bào)文的尺寸服從16bytes的常數(shù)分布;一旦發(fā)生錯(cuò)誤,保護(hù)控制IED將向斷路器發(fā)送觸發(fā)命令消息。第一次傳輸后,以2ms和4ms的間隔連續(xù)傳輸。為了更好地強(qiáng)調(diào)較差環(huán)境的仿真,本研究將此類消息的時(shí)間間隔設(shè)置為2ms,以便在模擬過程中定期發(fā)送。在模擬過程中,消息大小為16字節(jié)或128位。
OPNET所提供的端到端服務(wù)和IEC61850通信模型中的客機(jī)-服務(wù)器模型相一致,并且已經(jīng)形成模塊。業(yè)務(wù)建模過程可分為四個(gè)步驟:
(1)配置應(yīng)用程序定義。該環(huán)節(jié)對于客戶與客戶組所有可能發(fā)生的交易進(jìn)行了詳細(xì)定義。參數(shù)包括數(shù)據(jù)包大小、收縮間隔概率等。OPNET軟件中定義了九個(gè)應(yīng)用程序。本研究使用兩種主要應(yīng)用程序:FTP和視頻會(huì)議。通過配置來自不同鏈路和節(jié)點(diǎn)的流量,可以輕松直觀地模擬消息的端到端延遲和其他參數(shù)。
(2)根據(jù)應(yīng)用程序業(yè)務(wù)定義配置全局對象。在將應(yīng)用業(yè)務(wù)定義后,配置應(yīng)用業(yè)務(wù)規(guī)格對于應(yīng)用程序定義中定義各種數(shù)據(jù)流的行為進(jìn)行描述,如開始時(shí)間、消息持續(xù)時(shí)間等。通過設(shè)置概要文件配置模塊的屬性來定義概要文件定義,圖2所示為設(shè)置流程。
圖2 Profile Definition 參數(shù)設(shè)置界面
(3)對服務(wù)器應(yīng)用業(yè)務(wù)的配置。服務(wù)器支持的應(yīng)用條件在于應(yīng)用程序定義與概要文件中已經(jīng)定義好。但是需要通過無線通信網(wǎng)絡(luò)需求來設(shè)置服務(wù)器支持的應(yīng)用類型。因?yàn)榉?wù)器能夠接收狀態(tài)信息,所以具有視頻參考的功能。配置方法則是在服務(wù)器屬性中指定支持的服務(wù)列。
(4)客戶應(yīng)用業(yè)務(wù)的配置。將上述的服務(wù)器和應(yīng)用程序服務(wù)配置好以后,應(yīng)將網(wǎng)絡(luò)上每個(gè)子網(wǎng)中的節(jié)點(diǎn)配置為支持服務(wù)以及發(fā)送和接收對象。在此節(jié)點(diǎn)中要配置的業(yè)務(wù)是(1)(2)Application and Profile中指定的業(yè)務(wù)查詢。一個(gè)節(jié)點(diǎn)可以查詢多個(gè)業(yè)務(wù)。周期性數(shù)據(jù)流SUV報(bào)文首先是由互感器上傳,然后會(huì)被發(fā)送給MU。所以,可以說MU是SMV信息的傳輸源,MU被上傳到支持SMV服務(wù)的保護(hù)控制器[8]。IED斷路器負(fù)責(zé)打開或關(guān)閉控制斷路器,并且還可以監(jiān)控?cái)嗦菲鞯臓顟B(tài)。一旦出現(xiàn)故障,它將從IED保護(hù)控制器接收觸發(fā)命令,并通過過程總線將狀態(tài)更改信息發(fā)送給IED保護(hù)控制器。因此支持IED和goose服務(wù);每個(gè)間隔單元中都部署了IED保護(hù)控制裝置,可以用來接收樣本值消息,發(fā)送觸發(fā)命令,同時(shí)還可以設(shè)置保護(hù)控制IED,支持觸發(fā)消息和IED sta Tu服務(wù)。在站控層中,服務(wù)器會(huì)將文件發(fā)送給監(jiān)控主機(jī),服務(wù)器設(shè)置為支持FTP服務(wù)。業(yè)務(wù)建模所需要的參數(shù)如表1所示。
表1 OPNET業(yè)務(wù)建模參數(shù)列表
創(chuàng)建仿真模型并選擇統(tǒng)計(jì)信息后,必須設(shè)置仿真環(huán)境。通過配置運(yùn)行仿真文件(Advanced)的字段來設(shè)置仿真。仿真時(shí)間為300s,因此前100s是軟件進(jìn)行初始化的階段,所以從100s后才是實(shí)際仿真開始時(shí)間。隨機(jī)數(shù)種子在仿真期間保持默認(rèn)值128,總值為100;而模擬值在每500000個(gè)事件時(shí)進(jìn)行一次輸出和更新。
隨著網(wǎng)絡(luò)結(jié)構(gòu)越來越龐大、復(fù)雜,OPNET對于無線網(wǎng)絡(luò)性能來說,具有非常強(qiáng)大的吸引力。本文介紹了OPNET無線網(wǎng)絡(luò)仿真的建模流程,并且提出了OPNET的網(wǎng)絡(luò)拓?fù)浣7抡妗?/p>