【发布时间】:2016-09-14 21:54:28
【问题描述】:
这是我第一次使用 OMNET++。
我想从最基本的东西开始,了解它是如何工作的。 我成功地创建了我的第一个模拟,两个主机不断交换消息(来自 tictoc 示例)。
我现在想做的是模拟一个 AP 和一个无线节点之间的简单客户端-服务器无线通信。我正在尝试使用 inet 类中的元素来做到这一点,但我被卡住了,它不起作用。
import inet.networklayer.configurator.base.NetworkConfiguratorBase;
import inet.networklayer.configurator.ipv4.IPv4NetworkConfigurator;
import inet.networklayer.configurator.ipv4.IPv4NodeConfigurator;
import inet.node.inet.WirelessHost;
import inet.node.wireless.AccessPoint;
import inet.physicallayer.common.packetlevel.RadioMedium;
import inet.physicallayer.contract.packetlevel.IRadioMedium;
import inet.physicallayer.ieee80211.packetlevel.Ieee80211RadioMedium;
//
// TODO documentation
//
network net
{
string mediumType = default("IdealRadioMedium");
@display("bgb=620,426");
submodules:
wirelessHost1: WirelessHost {
@display("p=423,164");
}
accessPoint1: AccessPoint {
@display("p=147,197");
}
iRadioMedium: <mediumType> like IRadioMedium {
@display("p=523,302");
}
iPv4NetworkConfigurator: IPv4NetworkConfigurator {
@display("p=270,324");
assignDisjunctSubnetAddresses = false;
}
}
然后我使用 tictoc beahviour 创建了一个 wirelessHost.cc 源文件,以使两个节点进行通信。
但它不起作用,我收到此错误:
<!> Error in module (inet::IPv4NodeConfigurator) infrastructure.wirelessHost1.networkLayer.configurator (id=13) during network initialization: Configurator module 'configurator' not found (check the 'networkConfiguratorModule' parameter).
但在做某事之前,又是一个关于接入点的错误(找不到 wlan[0] 模块)。 有人可以帮助我了解如何配置此模型吗?
编辑 这是配置.ini文件
[General]
network = infrastructure
#cmdenv-output-file = omnetpp.log
#debug-on-errors = true
tkenv-plugin-path = ../../../etc/plugins
#record-eventlog = true
**.constraintAreaMinX = 0m
**.constraintAreaMinY = 0m
**.constraintAreaMinZ = 0m
**.constraintAreaMaxX = 600m
**.constraintAreaMaxY = 500m
**.constraintAreaMaxZ = 0m
**.mobility.typename = "StationaryMobility"
**.mobilityType = "StationaryMobility"
# access point
*.accessPoint.wlan[0].mac.address = "004444444444"
*.accessPoint.wlan[0].radio.channelNumber = 11
# host1 is associated with AP1 on channel 0
**.wirelessHost1.wlan[0].mgmt.accessPointAddress = "004444444444"
*.wirelessHost1.**.mgmtType = "Ieee80211MgmtSTASimplified"
# global data rates
**.wlan*.bitrate = 11Mbps
# application level: host1 pings host2
**.numPingApps = 1
*.wirelessHost1.pingApp[0].destAddr = "accessPoint"
*.wirelessHost1.pingApp[0].sendInterval = 10ms
但运行我得到的模拟
<!> Error in module (inet::ICMP) infrastructure.wirelessHost1.networkLayer.icmp (id=17) at event #4, t=0.008442657441: check_and_cast(): cannot cast (inet::GenericNetworkProtocolControlInfo*) to type 'inet::IPv4ControlInfo *'.
【问题讨论】:
标签: simulation simulator wireless omnet++