如何解决通过Omnet++结果集合获取应用层消息字节长度总和
假设在具有 25 个节点的无线网络中,我们有一个场景,其中每个节点中的一些节点根据路由协议(例如 AODV)向其他一些节点发送消息。我们模拟这个网络。仿真完成后,如何通过Omnet++结果集合获取应用层消息字节长度的总和?对于每个节点,我们必须有两个度量,一个是发送消息字节长度的度量(例如 totalSentMessageByteLengths)和一个接收消息字节长度的度量(例如 totalReceivedMessageByteLengths)。如果发生重传,则接收方应累加一次,将不正确的消息字节长度相加,发送方应将正确的消息字节长度相加。如果一个节点有多个应用程序,则必须计算同一节点的所有应用程序生成的所有消息字节长度。 omnetpp.ini 中节点的实例代码:
*.hostA.numApps = 2
*.hostA.app[0].typename = "UdpBasicApp"
*.hostA.app[0].destAddresses = "hostB"
*.hostA.app[0].destPort = 5000
*.hostA.app[0].messageLength = 1000B
*.hostA.app[0].sendInterval = exponential(12ms)
*.hostA.app[0].packetName = "UDPData"
*.hostA.app[0].typename = "TcpBasicApp"
*.hostA.app[0].destAddresses = "hostC"
*.hostA.app[0].destPort = 5001
*.hostA.app[0].messageLength = 1024B
*.hostA.app[0].sendInterval = exponential(45ms)
*.hostA.app[0].packetName = "TCPData"
解决方法
几乎所有的应用程序模块都有一个 packetSent
或 packetReceived
统计信息来收集提到的数据。所以简而言之。在这些应用上开启规模统计收集。
**.app[*].*.scalar-recording = true
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。