How to change an Omnet++5.6.2 and Inet-4.2.5 based WirelessHost into a passive monitor mode? I want to receive and collect all the beacon signals that send from WiFi Access Point Devices (without association and authentication process) to receive RSSI values.
The following is my ini file configuration, It contains the configuration of three Access Points and a Wireless Host:
'''
[General]
sim-time-limit = 400s
debug-on-errors = true
**.mac.promiscuous=true
# Wireless settings or # nic settings
*.*.wlan[*].bitrate = 54Mbps
*.accessPoint*.wlan[*].radio.transmitter.power = 2mW
*.accessPoint*.wlan[*].radio.transmitter.headerLength = 96b
*.accessPoint*.wlan[*].radio.transmitter.centerFrequency = 2.4GHz
*.accessPoint*.wlan[*].radio.receiver.sensitivity = -85dBm
*.accessPoint*.wlan[*].radio.receiver.snirThreshold = 4dB
# access point configuration
*.accessPoint*.wlan[*].mgmt.typename = "Ieee80211MgmtAp"
*.accessPoint1.wlan[0].address = "001111111111"
*.accessPoint2.wlan[0].address = "002222222222"
*.accessPoint3.wlan[0].address = "003333333333"
*.accessPoint*.wlan[*].mgmt.ssid = "alpha"
**.accessPoint*.wlan[*].mgmt.beaconInterval = 100ms
**.accessPoint*.wlan[*].mgmt.numAuthSteps = 2
*.accessPoint*.wlan[*].radio.displayCommunicationRange = true
#Host configurations
*.numHosts = 1
*.WirelessHosts[*].wlan[0].mgmt.typename = "ExtendedIeee80211MgmtSta"
*.WirelessHosts[*].wlan[0].radio.channelNumber = 0
*.WirelessHosts[*].wlan[*].agent.defaultSsid = "alpha"
*.WirelessHosts[*].wlan[*].agent.activeScan = false
*.WirelessHosts[*].wlan[*].agent.channelsToScan = ""
*.WirelessHosts[*].wlan[*].agent.probeDelay = 0.1s
*.WirelessHosts[*].wlan[*].agent.minChannelTime = 0.15s
*.WirelessHosts[*].wlan[*].agent.maxChannelTime = 0.3s
*.WirelessHosts[*].wlan[*].agent.startingTime = 0.00001s
*.WirelessHosts[*].wlan[*].agent.associationTimeout = 5s
*.WirelessHosts[*].wlan[*].agent.authenticationTimeout = 5s
'''
For your Info, the following code represents my Network:
'''
network My_Net { parameters: @display("bgb=600,600;bgg=100,10,grey95;bgu=cm"); int numHosts; submodules: visualizer: IntegratedVisualizer { @display("p=39.864,30.199999"); }
configurator: Ipv4NetworkConfigurator {
@display("p=578,50");
}
radioMedium: Ieee80211ScalarRadioMedium {
@display("p=30.199999,241.59999");
}
accessPoint1: AccessPoint {
@display("p=500,52;r=,,#707070");
}
accessPoint2: AccessPoint {
@display("p=40,123;r=,,#505050");
}
accessPoint3: AccessPoint {
@display("p=250,52;r=,,#505050");
}
WirelessHosts[numHosts]: WirelessHost {
@display("p=387.768,73.687996");
}
'''
The problems are:
how to configure the access points send the beacon independently (synchronized) with out waiting to each other?
and how to make the Wireless host to receive the beacon signals in a passive mode, It means without association and authentication process cause I just want receive the RSSI value from the beacon signal.
The Radio module records statistics for all frames that it receives, even those that are not addresses to it (so beacon frames from all the APs too). So you can configure a WirelessHost to not associate to any access points, but it'll still get the beacon frames. You need to configure which access point to associate to in the Agent module (Ieee80211AgentSta) of the host (set it so that it doesn't associate to any of them).
However, the Radio in the host needs to be on the same channel as the access points in order to receive the beacon frames. The channel is a parameter of Ieee80211Radio. The management module (Ieee80211MgmtSta, by default) and the agent module has parameters like how many channels to scan, if any.
By default, all access points and wireless hosts are on the same channel (I think channel 1).
However, the access points probably wait for each other because they are on the same channel, due to channel contention. So you need to put them to different (possibly non-overlapping) Wifi channels. But in this case, I don't think that the WirelessHost can receive all the beacon frames because it can only receive on one channel at a time. You might need to add more wireless interfaces, and set them to a different channel.
These might be useful:
https://inet.omnetpp.org/docs/showcases/wireless/multiradio/doc/index.html
https://inet.omnetpp.org/docs/showcases/wireless/handover/doc/index.html