Omnet++ 令牌桶的omnet仿真

Omnet++ 令牌桶的omnet仿真,omnet++,Omnet++,我正在omnet++上开发一个模拟模型……基本上我的工作是开发与LTE相关的东西,但首先我需要开发一个简单的模型,从源中获取数据包并将其存储在队列中一段时间,然后将其发送到接收器 我开发了这个模型,它对我来说很好用 现在我需要在队列和接收器之间放置tokenbucketmeter…以处理突发并将被拒绝的数据包从token meter发送回队列..类似于第二个附加图像..我从OMNET的Simule包中获取了此tokenbucketmeter 当我模拟它时,它显示的错误如下 Quote: cann

我正在omnet++上开发一个模拟模型……基本上我的工作是开发与LTE相关的东西,但首先我需要开发一个简单的模型,从源中获取数据包并将其存储在队列中一段时间,然后将其发送到接收器

我开发了这个模型,它对我来说很好用

现在我需要在队列和接收器之间放置tokenbucketmeter…以处理突发并将被拒绝的数据包从token meter发送回队列..类似于第二个附加图像..我从OMNET的Simule包中获取了此tokenbucketmeter

当我模拟它时,它显示的错误如下

Quote: cannot cast (queueing::Job *)net.tokenBucketMeter.job-1 to type 'cPacket *' 
我没有得到问题的确切位置,可能是我使用的源正在创建作业,而tokenbucket meter只接受数据包。如果是这样,那么我应该使用什么类型的源


请你澄清一下好吗??非常感谢

我现在也在一个项目中使用OMNeT++。学习使用OMNeT++之前只接触过一些C99可能有点令人沮丧

通过检查您用作项目基础的演示项目-它看起来像
Job
cPacket
除了
cObject
之外,不共享任何有用的类型,所以我不会尝试这样进行转换

查看
/queueinglib
项目中的
passiveequeue.cc
处理作业-所有内容都作为
cMessage
传递,并使用内置转换进行转换:

cMessage msg (comes in from method signature)

Job *job = check_and_cast<Job *>(msg);
cMessage msg(来自方法签名)
Job*Job=检查\u和\u cast(msg);
要使用的cPackets是此链接中显示的继承层次结构中cMessage的子级:


我自己并没有使用
cPackets
,但考虑到协议的工作方式,这似乎是可能的,您将能够将消息转换为一个或多个数据包。

Ya这是正确的..cPacket是cMessage的派生类..但是omnet中有许多组件仅与Cpackets一起工作..因此,当我们尝试将这些组件与源连接时,我在从cMessage转换为cPacket..的类型转换方面面临困难生成cMessage他们生成typecasr错误..必须尝试从cMessage到cPacket的trypecasting..或者您知道任何可以生成cPacket的源吗?在演示项目中搜索表明,对于您需要的转换,存在与上述相同的库转换:
cPacket*myPacket=check_和_cast(msg)参见示例:samples\routing\node\L2Queue.cc行:82您有任何可以在问题中发布的示例代码吗?