%description:
RadioMedium NeighborCache test based on Ping results.
The
NeighborCache_Grid.test
NeighborCache_NeighborList.test
NeighborCache_Off.test
NeighborCache_QuadTree.test
are same simulations, except the configured radiomedium.neighborcache (choosed in %extraargs).
When NeighborCache_Off.test is FAILED, then should replace ping outputs in %contains from simulation stdout
in all NeighborCache tests, and rerun these.
When NighborCache_Off test is OK, but some other NeighborCache test is FAILED, then you must check:
- NeighborCache_*.test files should be same except the %extraargs line.
- verify the used NeighborCache code in failed simulation.
%#--------------------------------------------------------------------------------------------------------------
%extraargs: -c NeighborList
%#--------------------------------------------------------------------------------------------------------------
%file: test.ned
import inet.common.lifecycle.LifecycleController;
import inet.common.scenario.ScenarioManager;
import inet.networklayer.configurator.ipv4.IPv4NetworkConfigurator;
import inet.networklayer.ipv4.RoutingTableRecorder;
import inet.node.aodv.AODVRouter;
import inet.physicallayer.idealradio.IdealRadioMedium;
network NeighborCacheTest
{
parameters:
int numHosts;
submodules:
radioMedium: IdealRadioMedium {
parameters:
@display("p=50,50");
}
configurator: IPv4NetworkConfigurator {
parameters:
config = xml("");
@display("p=50,100");
}
routingTableRecorder: RoutingTableRecorder {
parameters:
@display("p=50,150");
}
lifecycleController: LifecycleController {
parameters:
@display("p=50,200");
}
scenarioManager: ScenarioManager {
parameters:
script = default(xml(""));
@display("p=50,250");
}
host[numHosts]: AODVRouter {
parameters:
@display("i=device/pocketpc_s;r=,,#707070");
}
connections allowunconnected:
}
%#--------------------------------------------------------------------------------------------------------------
%inifile: omnetpp.ini
[General]
network = NeighborCacheTest
record-eventlog = true
num-rngs = 3
sim-time-limit = 60s
cmdenv-express-mode = true
cmdenv-status-frequency = 1000s
#omnetpp 5.0 - 5.1 compatibility:
eventlog-file = "${resultdir}/${configname}-${runnumber}.elog"
output-scalar-file = "${resultdir}/${configname}-${runnumber}.sca"
output-vector-file = "${resultdir}/${configname}-${runnumber}.vec"
snapshot-file = "${resultdir}/${configname}-${runnumber}.sna"
**.mobility.rng-0 = 1
**.wlan[*].mac.rng-0 = 2
ned-path = .;../../../../src;../../lib
# channel physical parameters
**.wlan[*].typename = "IdealWirelessNic"
**.wlan[*].bitrate = 2Mbps
**.wlan[*].mac.address = "auto"
**.wlan[*].mac.headerLength = 20B
**.wlan[*].radioType = "IdealRadio"
**.wlan[*].radio.transmitter.headerBitLength = 100b
**.wlan[*].radio.transmitter.communicationRange = 250m
**.wlan[*].radio.transmitter.interferenceRange = 0m
**.wlan[*].radio.transmitter.detectionRange = 0m
**.wlan[*].radio.receiver.ignoreInterference = true
*.numHosts = 20
# mobility
**.host[0..1].mobilityType = "StationaryMobility"
**.host[1].mobility.initialX = 600m
**.host[1].mobility.initialY = 600m
**.host[2..20].mobilityType = "LinearMobility"
**.host[2..20].mobility.speed = 8mps
**.mobility.constraintAreaMinZ = 0m
**.mobility.constraintAreaMaxZ = 0m
**.mobility.constraintAreaMinX = 0m
**.mobility.constraintAreaMinY = 0m
**.mobility.constraintAreaMaxX = 600m
**.mobility.constraintAreaMaxY = 600m
**.host[2..20].mobility.changeInterval = normal(5s, 0.1s)
**.host[2..20].mobility.changeAngleBy = normal(0deg, 30deg)
# ping app
*.host[0].numPingApps = 1
*.host[0].pingApp[0].startTime = uniform(1s,5s)
*.host[0].pingApp[0].printPing = true
*.host[0].pingApp[0].destAddr = "host[1](ipv4)"
# lifecycle
**.hasStatus = true
# AODV protocol settings
**.aodv.activeRouteTimeout = 3s
# neighbor cache settigns
**.neighborCache.refillPeriod = 1s
# radio medium
**.radioMedium.mediumLimitCache.communicationRange = 250m
**.radioMedium.rangeFilter = "communicationRange"
[Config NoCache]
[Config Grid]
**.radioMedium.neighborCacheType = "GridNeighborCache"
**.radioMedium.neighborCache.cellSizeX = 100m
**.radioMedium.neighborCache.cellSizeY = 100m
**.radioMedium.neighborCache.cellSizeZ = 100m
[Config NeighborList]
**.radioMedium.neighborCacheType = "NeighborListNeighborCache"
**.radioMedium.neighborCache.range = 250m
[Config QuadTree]
**.radioMedium.neighborCacheType = "QuadTreeNeighborCache"
**.radioMedium.neighborCache.maxNumOfPointsPerQuadrant = 2
%#--------------------------------------------------------------------------------------------------------------
%contains: stdout
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=0 ttl=28 time=830.477907313 msec (ping0)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=1 ttl=28 time=3.732928795 msec (ping1)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=2 ttl=28 time=3.732936181 msec (ping2)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=3 ttl=28 time=3.732948054 msec (ping3)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=4 ttl=28 time=3.732964401 msec (ping4)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=6 ttl=27 time=828.477322075 msec (ping6)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=7 ttl=27 time=4.665995575 msec (ping7)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=8 ttl=27 time=4.666112219 msec (ping8)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=9 ttl=27 time=4.666239182 msec (ping9)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=10 ttl=27 time=4.666376789 msec (ping10)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=11 ttl=27 time=4.666525285 msec (ping11)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=12 ttl=27 time=4.666684768 msec (ping12)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=13 ttl=27 time=4.666855165 msec (ping13)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=14 ttl=27 time=4.667036228 msec (ping14)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=15 ttl=27 time=4.667227536 msec (ping15)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=16 ttl=27 time=4.667428523 msec (ping16)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=18 ttl=28 time=342.820731461 msec (ping18)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=19 ttl=28 time=3.733414392 msec (ping19)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=20 ttl=28 time=3.733420031 msec (ping20)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=21 ttl=28 time=3.733429284 msec (ping21)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=22 ttl=28 time=3.733441837 msec (ping22)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=23 ttl=28 time=3.733457499 msec (ping23)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=25 ttl=27 time=1346.294293068 msec (ping25)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=26 ttl=27 time=346.761030782 msec (ping26)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=27 ttl=27 time=4.666105924 msec (ping27)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=28 ttl=27 time=4.66616123 msec (ping28)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=29 ttl=27 time=4.66623032 msec (ping29)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=31 ttl=28 time=1339.358890192 msec (ping31)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=32 ttl=28 time=339.825604861 msec (ping32)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=33 ttl=28 time=3.732977015 msec (ping33)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=34 ttl=28 time=3.732946663 msec (ping34)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=35 ttl=28 time=3.732919443 msec (ping35)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=36 ttl=28 time=3.732895496 msec (ping36)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=37 ttl=28 time=3.732875012 msec (ping37)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=38 ttl=28 time=3.732858253 msec (ping38)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=39 ttl=28 time=3.73284554 msec (ping39)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=41 ttl=28 time=350.317796204 msec (ping41)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=42 ttl=28 time=3.733861605 msec (ping42)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=43 ttl=28 time=3.733809116 msec (ping43)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=44 ttl=28 time=3.733760876 msec (ping44)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=45 ttl=28 time=3.73371676 msec (ping45)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=46 ttl=28 time=3.733676695 msec (ping46)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=48 ttl=28 time=346.782655109 msec (ping48)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=49 ttl=28 time=3.732708576 msec (ping49)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=51 ttl=28 time=826.453462341 msec (ping51)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=53 ttl=27 time=567.898037298 msec (ping53)
NeighborCacheTest.host[0].pingApp[0]: reply of 60 bytes from 145.236.0.2 icmp_seq=55 ttl=28 time=342.497844927 msec (ping55)
** Event #
%#--------------------------------------------------------------------------------------------------------------
%not-contains: stdout
-- check module destructor
%#--------------------------------------------------------------------------------------------------------------