【发布时间】:2015-10-09 22:31:35
【问题描述】:
下面是 .ned 文件
simple computer
{
parameters:
gates:
input in1;
output out1;
input in2;
output out2;
}
//
// TODO documentation
//
network Network
{
@display("bgb=538,302");
submodules:
A: computer {
@display("p=30,88");
}
B: computer {
@display("p=344,96");
}
C: computer {
@display("p=209,199");
}
connections:
A.out1 --> B.in1;
B.out1 --> A.in1;
A.out2 --> C.in1;
C.out1 --> A.in2;
C.out2 --> B.in2;
B.out2 --> C.in2;
}
以下是.cc源文件
#include <string.h>
#include <omnetpp.h>
#include <string>
class computer: public cSimpleModule
{
public:
virtual void initialize();
virtual void handleMessage(cMessage *msg);
};
//----------------------------------------------------------------------
Define_Module(computer);
void computer::initialize()
{
if (strcmp("A", getName()) == 0)
{
send(msg, "out1");
cMessage *copy = (cMessage *) msg->dup();
send(copy, "out2");
}
}
void computer::handleMessage(cMessage *msg)
{
}
现在我的问题是,在初始化函数中,节点 A 向 B 和 C 发送消息。之后,我想从节点 B、从节点 B 向节点 A 和 C 发送消息。同样,之后我想从节点发送消息节点 C 到 A 和 B(如距离矢量协议)我该怎么做?
此外,第二个问题是我如何同时从所有节点向相邻节点发送消息,即 A 向 B、C 发送消息; B 向 A,c 发送消息; C发送给A,B。全部,A B C 同时发送消息? 让我说得更简洁明了。 A向B发送消息如下
以下是.cc源文件
#include <string.h>
#include <omnetpp.h>
#include <string>
class computer: public cSimpleModule
{
public:
virtual void initialize();
virtual void handleMessage(cMessage *msg);
};
//----------------------------------------------------------------------
Define_Module(computer);
void computer::initialize()
{
if (strcmp("A", getName()) == 0)
{
send(msg, "out1");
}
}
handleMessage(cMessage *msg) { 现在如何将消息从 C 发送到 A }
A 到 B C 到 A?
【问题讨论】:
标签: omnet++