2016-08-24 60 views
2

我有100個主機的網絡設置,它們必須逐個進入網絡,直到所有的主機都加入24小時模擬時間(一個選項是每864秒加入一個)。定期在OMNeT中添加主機++

我有興趣通過鄰居發現協議來計算機器之間交換的多播消息。是否可以這樣做,而不需要更改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 

預先感謝您!

回答

0

不,不可能在不修改C++文件的情況下統計收到的IPv6NeighbourDiscovery消息的數量。