【问题标题】:How to simulate process delay in NS-3/ndnSIM?如何在 NS-3/ndnSIM 中模拟进程延迟?
【发布时间】:2017-12-11 05:04:30
【问题描述】:

我想在发送兴趣包之前在消费者节点上添加一些处理延迟。而且我发现 Simulator::Schedule() 函数可以达到这个目的。但我不确定如何使用它,因为 ndnSIM 有自己的协议流程,如果我安排一个新事件,它可能会导致一些意想不到的结果。还是有其他方法可以在 NS-3 中的节点上插入延迟?

【问题讨论】:

    标签: ns-3 ndnsim


    【解决方案1】:

    AFAIK,引入处理延迟的方法是使用Simulator::Schedule()。 在您的示例中,您提到要延迟兴趣包的发送。您可以在某个(随机)时间之后安排它,而不是直接调用该方法,即。您的流程延迟。这不应该破坏模拟。

    【讨论】:

    • 我认为 Schedule() 的问题在于它只是延迟了事件,但节点在等待时仍然可以处理其他任务。而我真正的目的是模拟CPU周期的占用。我觉得模拟软件可能无法做到这一点。
    • 是的,您对此是正确的,但您的问题是关于添加“发送数据包之前的进程延迟”,这可以通过调度程序来实现。现在,如果您想“阻止”所有其他操作,那就另当别论了,我需要进行调查。但是,即使在真实系统中,您仍然可以在处理其他数据包的同时接收数据包。 CPU 没有 100% 阻塞,另外还有其他处理单元来处理某些任务。
    • 谢谢,很高兴有人与之讨论。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-30
    • 2015-03-13
    • 1970-01-01
    • 1970-01-01
    • 2017-03-25
    • 2021-05-26
    • 2021-03-21
    相关资源
    最近更新 更多