为了实现 tcp/ip 模拟,我为每一层创建了数据包。
由于 omnet send 函数仅支持发送cMessage
对象,而我cMessage
使用.msg
定义进行子类化,所以我无法找到一种方法来通过门发送该数据包而不会丢失数据。
例如,对于我要添加的应用程序层destAddress
,packetLength
我创建了:
message AppPacket
{
int pktLength;
int destAddress;
}
现在,我在 omnet 中创建了.cc
类.h
来实现它:
class AppPacket : public cMessage { ... }
在我有了一个AppPacket
包含所有需要数据的新数据之后,我想将它发送到较低层(到传输层),但我不能,因为发送函数只发送cMessage
对象。
我能做些什么?我认为 Message 的全部意义在于帮助我们实现网络数据包。