2

我有一个 100 台主机的网络设置,它们必须一个接一个地进入网络,直到所有主机都加入了 24 小时的模拟时间(一种选择是每 864 秒加入一个)。

我有兴趣计算通过邻居发现协议在机器之间交换的多播消息。是否可以在不更改 IPv6NeighbourDiscovery.cc 源文件中的任何内容的情况下执行此操作?

这是我的 NED 文件:

package inet.examples.wireless.wiredandwirelesshostswithap;

import inet.networklayer.configurator.ipv6.FlatNetworkConfigurator6;
import inet.networklayer.icmpv6.IPv6NeighbourDiscovery;
import inet.node.ethernet.Eth100M;
import inet.node.ipv6.Router6;
import inet.node.xmipv6.WirelessHost6;
import inet.node.wireless.AccessPoint;
import inet.physicallayer.ieee80211.packetlevel.Ieee80211ScalarRadioMedium;


network WiredAndWirelessHostsWithAP
{
    parameters:
        int n;
        @display("bgb=503,434");
    submodules:
        wirelessHost[n]: WirelessHost6 {
            @display("p=58,88");
        }
        router6: Router6 {
            @display("p=412,88");
        }
        accessPoint: AccessPoint {
            @display("p=323,87");
        }
        configurator: FlatNetworkConfigurator6 {
            @display("p=323,165");
        }
        radioMedium: Ieee80211ScalarRadioMedium {
            @display("p=98,392");
        }
    connections:
        accessPoint.ethg++ <--> Eth100M <--> router6.ethg++;

}

和ini文件:

[General]
network = WiredAndWirelessHostsWithAP
sim-time-limit = 24h
tkenv-plugin-path = ../../../etc/plugins

# number of client computers
*.n = 100

**.*Host*.numUdpApps = 3

**.*Host*.udpApp[0].typename = "UDPEchoApp"
**.*Host*.udpApp[0].localPort = 1000

**.*Host*.udpApp[*].typename = "UDPBasicApp"
**.*Host*.udpApp[1..].destPort = 1000
**.*Host*.udpApp[1..].messageLength = 100B
**.*Host*.udpApp[1..].sendInterval = 1s
**.*Host*.udpApp[1..].stopTime = 300s

先感谢您!

4

1 回答 1

0

IPv6NeighbourDiscovery不,在不修改 C++ 文件的情况下无法计算收到的消息数。

于 2016-09-01T12:53:19.020 回答