亚洲免费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

        午夜a福利| 亚洲欧美中文字幕5发布| 中文成人无码精品久久久不卡| 国产美女在线一区二区三区| 日韩精品国产一区在线| 东京热日本av在线观看| 最爽无遮挡行房视频| 欧美激情在线不卡视频网站| 日韩熟女一区二区三区| 97中文字幕精品一区二区三区| 99久久精品费精品国产一区二| 国内精品久久久久久久久齐齐| 日本亚洲一级中文字幕| 久久精品不卡一区二区三区| 狠狠综合久久av一区二区 | 亚洲AV秘 片一区二区三| av天堂手机一区在线| 成人影片麻豆国产影片免费观看 | av狼人婷婷久久亚洲综合| 久久九九精品国产不卡一区| 免费无码不卡视频在线观看| 欧美黑人巨大xxxxx| 一本色道久久综合狠狠躁中文| 最新中文字幕日韩精品| 色吊丝中文字幕| 亚洲AV无码久久久一区二不卡| 亚洲一区二区三区av无| 精品露脸国产偷人在视频| 久久不见久久见免费视频7| 国产精品一区二区AV不卡| 久久久精品毛片免费观看| 无码人妻久久一区二区三区免费| 91久久国产精品视频| 国产少妇露脸精品自拍网站| 国产大片内射1区2区| 免费特级黄毛片| 好爽要高潮了在线观看| 国产精品激情自拍视频| 国外精品视频在线观看免费| 精品日韩欧美一区二区三区在线播放| 美女视频在线观看网址大全|