【问题标题】:Add queue model on processMessage method of channel在通道的 processMessage 方法上添加队列模型
【发布时间】:2019-11-09 12:08:06
【问题描述】:

我正在尝试在 processMessage 方法的通道上添加队列模型 (M/D/1),但是队列模型中的问题是我必须发送 cchaneel 类不支持的自我消息?那么如何使 processMessage 像 cSimpleModule 类一样工作(它允许向它自己发送 selfmessage?

【问题讨论】:

    标签: queue message-queue omnet++ inet


    【解决方案1】:

    您不应该在通道内对消息进行排队,就像在现实世界中一样,在传输过程中数据包不会在您的以太网电缆上排队。相反,发送节点的网络接口知道传输何时完成,并且网络接口本身将额外的消息排队,直到线路空闲。所以队列应该在网络接口卡(这是一个模块)中。请参阅执行此操作的路由示例:

    https://github.com/omnetpp/omnetpp/blob/master/samples/routing/node/L2Queue.cc

    【讨论】:

    • 非常感谢,如果我使用DropTailQueue和FIFOQueue等输出队列形式的Inet框架添加在mac和网络层之间呢?和你说的一样吗?
    • 是的。这正是 INET 中的网络接口也采用这种方式实现的原因。
    • 如果您认为这回答了您的问题,请“接受”它,以便其他用户也能从中受益。
    猜你喜欢
    • 2021-11-04
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-31
    • 2017-12-27
    相关资源
    最近更新 更多