File: networks/baseStationNet/BaseStationNetwork.ned
A WLAN like base station controlled network
A network consisting of a base station and numClients clients. The base station is fixed and the clients move around. The base station periodically polls all reachable clients in a round robin manner
Author: Daniel Willkomm
The following diagram shows usage relationships between modules, networks and channels. Unresolved module (and channel) types are missing from the diagram. Click here to see the full picture.
If a module type shows up more than once, that means it has been defined in more than one NED file.
BaseStationHost | The BaseStationHost is a compound module that implements a test base station. The test base station contains the PollApplLayer which periodically polls all clients in the network. |
ClientHost | The ClientHost is a compound module that implements a very simple mobile client. It only consists of basic modules and the ClientApplLayer. |
ChannelControl | (unknown -- not in documented files) |
baseStationSim | example centralized base station network simulation for the Mobility Framework |
Name | Type | Description |
---|---|---|
playgroundSizeX | numeric const | x size of the area the nodes are in (in meters) |
playgroundSizeY | numeric const | y size of the area the nodes are in (in meters) |
numClients | numeric const | total number of clients in the network |
Name | Type | Description |
---|---|---|
baseStationHost.logName | string | TKEnv display name |
baseStationHost.blackboard.coreDebug | numeric const | debug switch for core framework |
baseStationHost.mobility.coreDebug | numeric const | debug switch for the core framework |
baseStationHost.mobility.x | numeric const | x coordinate of the nodes' position (-1 = random) |
baseStationHost.mobility.y | numeric const | y coordinate of the nodes' position (-1 = random) |
baseStationHost.appl.debug | bool | debug switch |
baseStationHost.appl.headerLength | numeric const | length of the application message header (in bits) |
baseStationHost.appl.pollTimeout | numeric const | timeout for poll messages |
baseStationHost.appl.broadcastInterval | numeric const | time between bradcast messages in seconds |
baseStationHost.arp.debug | bool | |
baseStationHost.net.debug | numeric const | debug switch for the core framework |
baseStationHost.net.headerLength | numeric const | length of the network packet header (in bits) |
baseStationHost.nic.mac.debug | bool | debug switch |
baseStationHost.nic.mac.headerLength | numeric const | level at which we consider medium busy |
baseStationHost.nic.mac.queueLength | numeric const | length of the MAC queue |
baseStationHost.nic.mac.bitrate | numeric const | bit rate in bit/s |
baseStationHost.nic.mac.defaultChannel | numeric const | default channel |
baseStationHost.nic.decider.coreDebug | bool | debug switch |
baseStationHost.nic.snrEval.coreDebug | bool | debug switch |
baseStationHost.nic.snrEval.headerLength | numeric const | |
baseStationHost.nic.radio.debug | bool | |
baseStationHost.nic.radio.swSleep | numeric const | time parameters, how long does it take to switch to sleep mode |
baseStationHost.nic.radio.swSend | numeric const | switch to send mode |
baseStationHost.nic.radio.swRecv | numeric const | switch to recv mode |
clientHost[*].logName | string | TKEnv display name |
clientHost[*].applLayer | string | application layer type |
clientHost[*].blackboard.coreDebug | numeric const | debug switch for core framework |
clientHost[*].mobility.coreDebug | bool | core debug switch |
clientHost[*].mobility.debug | bool | debug switch |
clientHost[*].mobility.speed | numeric const | spped of the host (in m/s) |
clientHost[*].mobility.updateInterval | numeric const | time interval to update the hosts position |
clientHost[*].mobility.x | numeric const | x starting point of the node (-1 = random) |
clientHost[*].mobility.y | numeric const | y starting point of the node (-1 = random) |
clientHost[*].appl.debug | bool | debug switch |
clientHost[*].appl.headerLength | numeric const | length of the application message header (in bits) |
clientHost[*].arp.debug | bool | |
clientHost[*].net.debug | numeric const | debug switch for the core framework |
clientHost[*].net.headerLength | numeric const | length of the network packet header (in bits) |
clientHost[*].nic.mac.debug | bool | debug switch |
clientHost[*].nic.mac.headerLength | numeric const | level at which we consider medium busy |
clientHost[*].nic.mac.queueLength | numeric const | length of the MAC queue |
clientHost[*].nic.mac.bitrate | numeric const | bit rate in bit/s |
clientHost[*].nic.mac.defaultChannel | numeric const | default channel |
clientHost[*].nic.decider.coreDebug | bool | debug switch |
clientHost[*].nic.snrEval.coreDebug | bool | debug switch |
clientHost[*].nic.snrEval.headerLength | numeric const | |
clientHost[*].nic.radio.debug | bool | |
clientHost[*].nic.radio.swSleep | numeric const | time parameters, how long does it take to switch to sleep mode |
clientHost[*].nic.radio.swSend | numeric const | switch to send mode |
clientHost[*].nic.radio.swRecv | numeric const | switch to recv mode |
module BaseStationNetwork parameters: playgroundSizeX : numeric const, // x size of the area the nodes are in (in meters) playgroundSizeY : numeric const, // y size of the area the nodes are in (in meters) numClients : numeric const; // total number of clients in the network submodules: channelcontrol: ChannelControl; parameters: playgroundSizeX = playgroundSizeX, playgroundSizeY = playgroundSizeY; display: "p=60,30;i=eye14"; baseStationHost: BaseStationHost; parameters: numClients = numClients; display: "50,50;i=pctower2"; clientHost: ClientHost[numClients]; display: "p=50,50;i=laptop"; connections nocheck: // all connections and gates are to be generated dynamically display: "p=10,10;b=$playgroundSizeX,$playgroundSizeY,rect;o=white"; endmodule