首页 > 解决方案 > NS3-如何在模拟运行期间修改点对点通道数据速率

问题描述

我是 NS3 的新手,正在查看 first.cc 教程。 https://www.nsnam.org/doxygen/first_8cc_source.html

在本教程中,使用点对点链接设置了两个节点。我有兴趣在模拟 run() 期间更改设备/通道的数据速率并分析延迟。例如,我想在模拟 3 秒左右将数据速率修改为 3Mbps。

我发现以下链接与我要问的问题相同,但似乎没有答案。 如何在 NS-3 中模拟期间更改两个节点之间的数据速率?

标签: c++ns-3

解决方案


我认为thenewjames 的评论是正确的。我还没有运行这个脚本,但这里有一个示例可以帮助您入门。

static void
DecreaseDataRate(PointToPointNetDevice *dev) {
    dev->SetDeviceAttribute ("DataRate", StringValue ("3Mbps"));
}

int
main(int argv, char* arg[]) {
// setup simulation ...
PointToPointHelper pointToPoint;
// rest of setup

Simulator::Schedule(Seconds(3), &DecreaseDataRate, &pointToPoint);
Simulation::Start();
}

推荐阅读