亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于omnet平臺(tái)的短波網(wǎng)半實(shí)物仿真方法

        2016-06-03 09:11:02文源盛
        中國(guó)新通信 2016年8期

        文源盛

        【摘要】 在短波網(wǎng)項(xiàng)目中,仿真技術(shù)作為一種低成本,高準(zhǔn)確性的方法得到廣泛使用。通過(guò)仿真技術(shù),設(shè)計(jì)者可以在短波通信系統(tǒng)設(shè)計(jì)時(shí)就能驗(yàn)證通信流程的正確性以及模擬網(wǎng)絡(luò)建成以后的使用性能效益,為網(wǎng)絡(luò)設(shè)計(jì)提供必要的依據(jù)。在眾多的仿真技術(shù)中,半實(shí)物仿真通過(guò)部分模塊與實(shí)際網(wǎng)絡(luò)環(huán)境進(jìn)行交互,更能貼近現(xiàn)實(shí)網(wǎng)絡(luò)環(huán)境,更能反映出實(shí)際網(wǎng)絡(luò)的性能。本文主要介紹如何在短波項(xiàng)目中使用omnet仿真平臺(tái)通過(guò)網(wǎng)口與仿真程序進(jìn)行數(shù)據(jù)交互實(shí)現(xiàn)半實(shí)物仿真,并且介紹其中注意的問(wèn)題。

        【關(guān)鍵詞】 短波網(wǎng) 半實(shí)物仿真 omnet

        一、概述

        短波網(wǎng)項(xiàng)目中,仿真技術(shù)是一種低成本高準(zhǔn)確性的方法。通過(guò)仿真技術(shù),設(shè)計(jì)者可以在短波通信系統(tǒng)設(shè)計(jì)時(shí)就能驗(yàn)證通信流程的正確性以及模擬網(wǎng)絡(luò)建成以后的使用性能,為網(wǎng)絡(luò)設(shè)計(jì)提供必要的依據(jù)。

        在眾多的仿真技術(shù)中,半實(shí)物仿真通過(guò)部分模塊與實(shí)際網(wǎng)絡(luò)環(huán)境進(jìn)行交互,更能貼近現(xiàn)實(shí)網(wǎng)絡(luò)環(huán)境,更能反映出實(shí)際網(wǎng)絡(luò)的性能。omnet是一個(gè)基于離散事件,組建模塊化的網(wǎng)絡(luò)仿真平臺(tái)。

        由于其清晰的圖形界面,簡(jiǎn)單的消息交互機(jī)制以及提供了大量的成熟的通信仿真模塊,它已經(jīng)廣泛應(yīng)用于短波網(wǎng)項(xiàng)目中。在使用omnet進(jìn)行半實(shí)物仿真的過(guò)程中,經(jīng)常會(huì)碰到需要通過(guò)網(wǎng)口Socket與仿真程序進(jìn)行數(shù)據(jù)交互的情況,本文主要為了解決以上問(wèn)題,介紹了如何使用omnet實(shí)現(xiàn)Socket接口與仿真程序交互數(shù)據(jù)。

        二、實(shí)現(xiàn)原理

        要說(shuō)明Socket與omnet仿真程序如何實(shí)現(xiàn)數(shù)據(jù)交換,先簡(jiǎn)要介紹omnet中消息的分發(fā)機(jī)制。

        omnet仿真平臺(tái)的消息分發(fā)機(jī)制是通過(guò)一個(gè)叫cSchedule的類來(lái)實(shí)現(xiàn)。當(dāng)仿真程序初始化的時(shí),omnet仿真平臺(tái)會(huì)生成一個(gè)公有的cSchedule類實(shí)例。這實(shí)例負(fù)責(zé)把各個(gè)仿真類對(duì)象所發(fā)送的消息,按照其應(yīng)該到達(dá)的時(shí)間,按時(shí)有效的傳遞到各個(gè)實(shí)例的handleMessage函數(shù)中,以便對(duì)消息進(jìn)行處理。

        oment的仿真平臺(tái)對(duì)以上過(guò)程進(jìn)行了妥善的封裝,對(duì)于使用者來(lái)說(shuō)是透明的,使用者只需關(guān)心消息到達(dá)以后如何處理,如何編寫(xiě)handleMessage函數(shù)。

        要實(shí)現(xiàn)Socket接口與omnet仿真程序數(shù)據(jù)交互,則需要把已有的cSchedule類實(shí)例進(jìn)行改造,使其不單單只為omnet的仿真類傳遞消息,還能接受來(lái)自網(wǎng)口Socket的數(shù)據(jù),并且以handleMessage的形式交給用戶處理。

        omnet++4.0為實(shí)現(xiàn)這目標(biāo)提供了cSocketRTScheduler類。cSocketRTScheduler類使網(wǎng)口的傳輸數(shù)據(jù)與仿真程序接收到的消息的接口一致。網(wǎng)絡(luò)實(shí)際數(shù)據(jù)與程序中的虛擬數(shù)據(jù)均來(lái)源于自身模塊的omnet消息通知handlemessag函數(shù),用戶不用特意區(qū)分消息的來(lái)源,實(shí)現(xiàn)透明傳輸?shù)哪康摹?/p>

        三、使用方法

        既然cSocketRTScheduler類已經(jīng)幫我們完成了大部分工作,剩下的我們需要完成的工作包括:

        3.1加入cSocketRTScheduler類。

        拷貝SocketRTScheduler.cc和SocketRTScheduler.h文件到目標(biāo)工程目錄下。

        3.2創(chuàng)建并指定cMessage實(shí)例用來(lái)表示通過(guò)Socket網(wǎng)口傳遞的消息。

        調(diào)用函數(shù)new cMessage并取一個(gè)特定名字表示該消息,如名字為“rtEvent”則使用

        cMessage rtEvent = new cMessage(“rtEvent”);

        3.3替換omnet中的cSchedule類實(shí)例為cSocketRTScheduler類。

        通過(guò)simulation類的getScheduler函數(shù)獲取當(dāng)前的cSchedule類實(shí)例,并用check_and_cast使其轉(zhuǎn)化為cSocketRTScheduler類,具體使用如下:

        cScheduler*pcScheduler = simulation.getScheduler();

        cSocketRTScheduler*rtScheduler=check_and_ cast(pcScheduler);

        3.4使cSchedule類與消息和緩沖區(qū)建立連接。

        調(diào)用cSocketRTSchedule的setInterfaceModule函數(shù)實(shí)現(xiàn)與omnet消息和緩沖區(qū)建立連接,其中setInterfaceModule函數(shù)的聲明如表1所示。

        3.5配置文件中指定cSocketRTScheduler類

        在配置文件指定用cSocketRTScheduler類替代cSchedule類,在omnetpp.ini中添加如下配置代碼。

        scheduler-class =”cSocketRTScheduler”

        3.6指定本程序監(jiān)聽(tīng)網(wǎng)絡(luò)Socket端口號(hào)

        最后是要指定監(jiān)聽(tīng)網(wǎng)口的端口號(hào),cSocketRTSchedule類指定了一個(gè)屬性“socketrtscheduler-port”代表網(wǎng)口的端口號(hào),其默認(rèn)值為4242,可以通過(guò)配置文件omnetpp.ini中進(jìn)行配置,具體添加如下配置代碼到該文件中。

        socketrtscheduler-port = 60001

        四、數(shù)據(jù)收發(fā)

        4.1數(shù)據(jù)接收

        由于數(shù)據(jù)的接收統(tǒng)一到handleMessage函數(shù)中,數(shù)據(jù)接收與omnet仿真中的消息處理相類似。

        調(diào)用handleMessage函數(shù)。

        先判斷接收到的消息是否是自消息,再判斷接收到的消息是為與網(wǎng)口消息相關(guān)聯(lián)的omnet消息。

        訪問(wèn)接收緩沖區(qū),進(jìn)行數(shù)據(jù)處理。

        4.2數(shù)據(jù)發(fā)送

        數(shù)據(jù)發(fā)送只需調(diào)用cSocketRTScheduler的sendBytes即可發(fā)送消息。其函數(shù)聲明如圖2 所示。

        五、注意事項(xiàng)

        當(dāng)使用了cSocketRTScheduler作為cSchedule后,仿真的時(shí)序和現(xiàn)實(shí)的時(shí)序?qū)?huì)統(tǒng)一,即仿真的時(shí)間間隔和現(xiàn)實(shí)時(shí)間間隔將會(huì)相等。

        仿真程序的休眠將會(huì)使得仿真程序的時(shí)間與實(shí)際時(shí)間不一致,導(dǎo)致產(chǎn)生不可預(yù)料的錯(cuò)誤,因此不推薦在進(jìn)行串口半實(shí)物仿真程序中進(jìn)行休眠。

        參 考 文 獻(xiàn)

        [1]操敏,李文峰,袁兵;基于OMNeT++的傳感器網(wǎng)絡(luò)仿真 中國(guó)論文科技在線 2011;

        [2]石為人,黃河,鮮曉東;OMNeT++與NS2在無(wú)線傳感器網(wǎng)絡(luò)仿真中的比較研究 計(jì)算機(jī)科學(xué)2008Vol.35

        [3]黃健強(qiáng),鞠建波;半實(shí)物仿真技術(shù)研究現(xiàn)狀及發(fā)展趨勢(shì) 艦船電子工程Vol.31No.75

        区一区二区三免费观看视频| 18无码粉嫩小泬无套在线观看 | 亚洲日韩国产欧美一区二区三区| 亚洲国产成人va在线观看天堂| 亚洲国产成人久久综合一区77| 日本高清在线一区二区| 新中文字幕一区二区三区| 国产人与zoxxxx另类| 久久99国产乱子伦精品免费| 亚洲av福利天堂在线观看| 一本色道久久亚洲精品| 国产人妻人伦精品1国产| 欧美老妇人与禽交| 国产一区二区三区杨幂| 亚洲精品一区二区高清| 少妇被粗大的猛烈进出69影院一| 日本一区二区不卡视频| 成年女人18毛片毛片免费| 91久久综合精品久久久综合| 国产男女猛烈无遮挡免费网站| 亚洲男人精品| 日韩精品有码中文字幕| 麻豆亚洲一区| 1000部夫妻午夜免费| 囯产精品无码一区二区三区AV| 少妇被粗大的猛进69视频| 国产福利永久在线视频无毒不卡| 久久人妻公开中文字幕| 亚洲av粉色一区二区三区| 少妇被粗大进猛进出处故事| 熟女精品视频一区二区三区| 国产精品高潮无码毛片| 日本美女性亚洲精品黄色| 国产精品女同久久久久电影院| 成人做爰高潮尖叫声免费观看| 精品人妻av区乱码| 在线播放草猛免费视频| 亚洲av无码一区二区三区人妖| 综合激情网站| va精品人妻一区二区三区| 亚洲中文字幕一区精品自拍|