是否可以向同一个节点多次发送同一条消息?
Is it possible to sending same message multiple times to the same node?
我想模拟DOS攻击。所以,我想向特定节点多次发送相同的消息。
例如,当我尝试像这样循环执行时:
cMessage *msg = new cMessage("data");
cModule *targetNode = getParentModule()->getSubmodule(node[0]);
for(int i=0; i<5; i++){
sendDirect(msg, targetNode, "io");
}
我收到这个错误:
在 Omnet 中有什么方法可以做到这一点吗?
是的,但是每次您必须使用 dup()
创建一个 duplicate of the message。
所以你的代码可能看起来像:
cMessage *msg = new cMessage("data");
cModule *targetNode = getParentModule()->getSubmodule(node[0]);
for(int i=0; i<5; i++){
cMessage * copyMsg = msg->dup();
sendDirect(copyMsg, targetNode, "io");
}
delete msg; // remove original message (no longer needed)
我想模拟DOS攻击。所以,我想向特定节点多次发送相同的消息。
例如,当我尝试像这样循环执行时:
cMessage *msg = new cMessage("data");
cModule *targetNode = getParentModule()->getSubmodule(node[0]);
for(int i=0; i<5; i++){
sendDirect(msg, targetNode, "io");
}
我收到这个错误:
在 Omnet 中有什么方法可以做到这一点吗?
是的,但是每次您必须使用 dup()
创建一个 duplicate of the message。
所以你的代码可能看起来像:
cMessage *msg = new cMessage("data");
cModule *targetNode = getParentModule()->getSubmodule(node[0]);
for(int i=0; i<5; i++){
cMessage * copyMsg = msg->dup();
sendDirect(copyMsg, targetNode, "io");
}
delete msg; // remove original message (no longer needed)