【发布时间】:2018-11-23 00:34:41
【问题描述】:
我对 OMNET++ 和 INET 比较陌生,想将我创建的用于测量无线指纹的子模块 fingerPrinter 连接到 wlan 门,但在运行时出现以下错误:
(omnetpp::cGate)NetworkA.hostA.wlan[1].upperLayerOut: connectTo(): Gate 已经连接
这是我的 .ned 文件:
import inet.node.inet.INetworkNode;
import inet.environment.common.PhysicalEnvironment;
import inet.networklayer.configurator.ipv4.IPv4NetworkConfigurator;
import inet.node.wireless.AccessPoint;
import inet.physicallayer.ieee80211.packetlevel.Ieee80211ScalarRadioMedium;
import inet.physicallayer.contract.packetlevel.IRadioMedium;
import inet.visualizer.contract.IIntegratedVisualizer;
import inet.node.inet.WirelessHost;
import inet.node.aodv.AODVRouter;
import inet.applications.udpapp.UDPBasicApp;
//import inet.physicallayer.common.bitlevel.SignalSampleModel;
simple FingerPrinter
{
gates:
input in;
output out;
}
module WHost extends AODVRouter
{
parameters:
@networkNode;
@labels(wireless-node);
submodules:
fingerPrinter: FingerPrinter {
@display("p=429,125");
}
// signal: SignalSampleModel;
connections:
//fingerPrinter.in <-- networkLayer.transportOut++;
//fingerPrinter.out --> networkLayer.transportIn++;
wlan[1].upperLayerOut --> fingerPrinter.in;
}
network NetworkA
{
parameters:
string hostType = default("AODVRouter");
string mediumType = default("Ieee80211Radio");
string pathLossType = default("TwoRayGroundReflection");
@display("bgb=100,100;bgg=100,1,grey95");
submodules:
physicalEnvironment: PhysicalEnvironment {
@display("p=110,0");
}
configurator: IPv4NetworkConfigurator {
@display("p=110,33.33");
}
radioMedium: Ieee80211ScalarRadioMedium {
@display("p=110,66.66");
}
visualizer: <default("IntegratedCanvasVisualizer")> like IIntegratedVisualizer if hasVisualizer() {
@display("p=110,100");
}
AP1: AccessPoint {
@display("p=0,0");
}
AP2: AccessPoint {
@display("p=100,0");
}
AP3: AccessPoint {
@display("p=0,100");
}
AP4: AccessPoint {
@display("p=100,100");
}
hostA: WHost {
@display("p=50,50");
}
}
有人可以帮忙吗?
【问题讨论】:
标签: omnet++