OMNET ++通过以太网或无线传输消息

时间:2018-03-19 15:17:20

标签: c++ omnet++

我是使用OMNET ++模拟器的新手。目前我想构建一个由两个或多个节点组成的网络,每个节点都有两个接口可以在其上发送消息(例如以太网和无线)。

我想自己编写节点行为。当消息到达主机时,我想用handleMessage(cMessage *msg)方法定义主机是否应该通过以太网或无线接口发送接收的消息。

在这种情况下,我可以从INET包中获取WirelessHost吗?如果是,我如何编程决定使用什么接口重新传输收到的消息?我遵循INET的无线教程,但他们只配置.ned.ini文件,但不配置行为编码的.cc文件。

在教程中使用了UdpBasicApp。如果我能像上面描述的那样编写自己的应用程序,那就太好了。

提前致谢!

1 个答案:

答案 0 :(得分:0)

右。您可以调整自己的节点,只需创建一个新节点(.h .ned .cc文件),即可导入和重用无线主机功能并添加/覆盖额外功能。 因此,新MyNode元素的自定义MyNode.cc文件可以是:

#include "MyNode.h"
#include <string.h>
#include <omnetpp.h>

void MyNode::initialize()
{
}

void MyNode::handleMessage(cMessage *msg)
{
 EV << "Received message, now applying new custom procedure \n";
 new_behaviour msg;
}

此处还可以帮助您创建新节点的完整示例,以便删除所有收到的数据包OMNET++ How to retain all functions in AODVRouting class but override sendAODVPacket function only?

干杯!