在 OMNeT++/SimuLTE 中是否可以重新分配频段?

In OMNeT++/SimuLTE is it possible to reassign bands?

我已经为 OMNeT++SimuLTE 框架实现了支持 Device2Device 的 LTE 调度器。它需要重新分配资源块。在典型的 LTE 网络中,每个资源块最多分配给 1 个节点。随着D2D的出现,上行链路资源块可以重新分配给D2D用户。

模拟器知道资源块和频带。频带是传输频率的逻辑集合。如果numBands == numRBs那么每个band对应一个资源块。

所以为了尝试一下,我设置了 numRbs = 1 = numBands 并有两个节点。我的调度程序只是将第一个波段分配给第一个节点,然后尝试将同一波段重新分配给第二个节点。 SchedulingResult 告诉我应该在此处 TERMINATE - 这似乎根本不支持重新分配。

然而,两个节点都传输 UDP 数据包,如果我 运行 模拟到最后,我发现实际上两个节点都发送了相同数量的数据包。通过日志,我发现每第 5 轮调度(数字 5 可能特定于我的设置),第二个节点仍然获得 TERMINATE 答案,但无论如何都被授予资源块。这似乎发生在 eNodeB Main Loop 内。怎么,为什么,怎么回事?有人知道吗?

事实证明,带和资源块这两个概念之一已经过时,可能会在以后的版本中删除。框架的用户应该设置 numBands==numRBs! 资源块的数量是绝对的,所以这意味着每个频段将有一个可用的资源块。

请注意,目前不支持波段重新分配。尝试这样做将始终以 TERMINATE answer 结束,如问题中所述,因为有一项检查可确保未分配的资源块的数量 > 0,如果已分配频段,则不正确(因此链接到它的资源块)。