Package: inet.examples.wireless.ratecontrol
SinkClient
compound module(no description)
Usage diagram
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.
Used in
| Name | Type | Description |
|---|---|---|
| RateControlTest | network | (no description) |
Properties
| Name | Value | Description |
|---|---|---|
| networkNode | ||
| labels | node | |
| display | i=device/cellphone |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| radioIn | input |
Unassigned submodule parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| interfaceTable.displayStringTextFormat | string | "" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| interfaceTable.displayAddresses | bool | false |
Whether to display IP addresses on links |
| sink.displayStringTextFormat | string | "" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| sink.localSAP | int | 0xf1 | |
| sink.stopOperationExtraTime | double | -1s |
Extra time after lifecycle stop operation is finished |
| sink.stopOperationTimeout | double | 2s |
Timeout value for lifecycle stop operation |
| wlan.pcapRecorder.displayStringTextFormat | string | "rec: %n pks" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| wlan.pcapRecorder.verbose | bool | true |
Whether to log packets on the module output |
| wlan.pcapRecorder.recordEmptyPackets | bool | true |
Specifies if zero length packets are recorded or not |
| wlan.pcapRecorder.enableConvertingPackets | bool | true |
Specifies if converting packets to link type is allowed or not |
| wlan.pcapRecorder.pcapFile | string | "" |
The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap" |
| wlan.pcapRecorder.fileFormat | string | "pcapng" | |
| wlan.pcapRecorder.snaplen | int | 65535 |
Maximum number of bytes to record per packet |
| wlan.pcapRecorder.timePrecision | int | 6 |
Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format). |
| wlan.pcapRecorder.dumpBadFrames | bool | true |
Enable dump of frames with hasBitError |
| wlan.pcapRecorder.sendingSignalNames | string | "transmissionEnded" |
Space-separated list of outbound packet signals to subscribe to |
| wlan.pcapRecorder.receivingSignalNames | string | "receptionEnded" |
Space-separated list of inbound packet signals to subscribe to |
| wlan.pcapRecorder.dumpProtocols | string | "ethernetmac ppp ieee80211mac" |
Space-separated list of protocol names as defined in the Protocol class |
| wlan.pcapRecorder.packetFilter | object | "*" |
Which packets are considered, matches all packets by default |
| wlan.pcapRecorder.helpers | string | "" |
Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper" |
| wlan.pcapRecorder.alwaysFlush | bool | false |
Flush the pcapFile after each write to ensure that all packets are captured in case of a crash |
| wlan.mib.displayStringTextFormat | string | "" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| wlan.mgmt.macModule | string |
The path to the MAC module |
|
| mobility.displayStringTextFormat | string | "p: %p\nv: %v" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| mobility.subjectModule | string | "^" |
The module path that determines the subject module, the motion of which this mobility model describes. The default value is the parent module |
| mobility.coordinateSystemModule | string | "" |
The module path of the geographic coordinate system module |
| mobility.updateDisplayString | bool | true |
Enables continuous update of the subject module's position by modifying its display string |
| mobility.constraintAreaMinX | double | -inf m |
The minimum x position of the constraint area. It is unconstrained by default (negative infinity) |
| mobility.constraintAreaMinY | double | -inf m |
The minimum y position of the constraint area. It is unconstrained by default (negative infinity) |
| mobility.constraintAreaMinZ | double | -inf m |
The minimum z position of the constraint area. It is unconstrained by default (negative infinity) |
| mobility.constraintAreaMaxX | double | inf m |
The maximum x position of the constraint area. It is unconstrained by default (positive infinity) |
| mobility.constraintAreaMaxY | double | inf m |
The maximum y position of the constraint area. It is unconstrained by default (positive infinity) |
| mobility.constraintAreaMaxZ | double | inf m |
The maximum z position of the constraint area. It is unconstrained by default (positive infinity) |
| mobility.updateInterval | double | 0.1s |
The simulation time interval used to regularly signal mobility state changes and update the display |
| mobility.faceForward | bool | true | |
| mobility.startPos | double |
In range [0.0, 4.0): top left=0, top right=1, bottom right=2, bottom left=3 |
|
| mobility.speed | double |
Speed of the host |
Source code
module SinkClient { parameters: @networkNode(); @labels(node); @display("i=device/cellphone"); *.interfaceTableModule = default(absPath(".interfaceTable")); wlan.radio.antenna.mobilityModule = default("^.^.^.mobility"); gates: input radioIn @directIn; submodules: interfaceTable: InterfaceTable { @display("p=100,100;is=s"); } sink: EtherAppServer { parameters: @display("p=300,100"); } wlan: Ieee80211Interface { parameters: @display("p=250,200;q=queue"); mgmt.typename = "Ieee80211MgmtAdhoc"; agent.typename = ""; } mobility: RectangleMobility { parameters: @display("p=100,200;is=s"); } connections allowunconnected: radioIn --> { @display("m=s"); } --> wlan.radioIn; wlan.upperLayerOut --> sink.in; sink.out --> wlan.upperLayerIn; }File: examples/wireless/ratecontrol/RateControlTest.ned