0

我必须建模一个bittorrent网络,所以有许多节点相互连接。每个节点都有一个下载速度,比如 600KBps,和一个上传速度,比如 130KBps。问题是:如何在 omnetpp 中建模?在 NED 文件中,我以这种方式创建了网络。如果 A 和 B 是节点:

A.mygate$o++ --> {something} -->B.mygate$i++
B.mygate$o++ --> {something} -->A.mygate$i++

其中 mygate 是输入门,$i 和 $o 是输入和输出半通道。但是必须是速度,但是:如果我在第一行代码中设置了速度,这是A的上传速度,但也是B的下载速度。这很正常,因为如果我从慢速服务器下载我下载速度慢。如何在 Omnetpp 中模拟对等点的下载速度?我无法理解这。我是否应该说:“允许 k simultaneus 下载,直到我达到下载速度?” 或者这是一个不好的方法?有人可以建议我正确的方法吗,如果 omnetpp 中的内置模块已经存在?我已经阅读了手册,但有点混乱。感谢您的每一个回复。

4

1 回答 1

0

我建议看一下 OverSim,它是 INET 框架之上的对等网络模拟器,它是在 OMNeT++ 中模拟互联网相关协议的框架。

通常每个主机都应该在链路层有一个队列,并且连接的接口应该管理它们不会发出进一步的网络数据包,直到传输线路不空闲(这取决于线路上的数据速率和数据包的长度) )。一旦线路空闲,就可以在线路上发送下一个数据包。这就是数据速率受实际通道限制的方式。

如果您不想从头开始实现(没有理由这样做),请查看 INET 框架。您应该删除您的主机并将其 PPP 接口与您在问题中提出的非对称连接连接。StandardHost 中的 PPP 接口将为您进行排队,因此您只需添加一些生成流量的应用程序,您就可以设置好。

我仍然会看一下 OverSim,因为它在 INET 之上提供了更高级别的抽象(虽然我没有经验)

于 2013-01-31T19:37:04.747 回答