ThroughputClient

Package: inet.examples.wireless.throughput

ThroughputClient

compound module

(no description)

EtherAppClient Ieee80211Interface InterfaceTable StationaryMobility

Usage diagram

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Used in

Name Type Description
Throughput network (no description)

Properties

Name Value Description
display i=device/wifilaptop
networkNode

Gates

Name Direction Size Description
radioIn input

Unassigned submodule parameters

Name Type Default value Description
cli.interfaceTableModule string
cli.destAddress string ""

destination MAC address, or module path name of destination station; empty means off

cli.startTime double this.sendInterval

time of sending the first request

cli.stopTime double -1s

time of finishing sending, negative values mean forever

cli.localSAP int 0xf0

local service access point

cli.remoteSAP int 0xf1

remote service access point

cli.sendInterval double uniform(0s,1s)

interval between sending requests

cli.reqLength int 100B

length of request packets

cli.respLength int 1KiB

length of response packets

cli.stopOperationExtraTime double -1s

extra time after lifecycle stop operation finished

cli.stopOperationTimeout double 2s

timeout value for lifecycle stop operation

wlan.pcapRecorder.verbose bool true

whether to log packets on the module output

wlan.pcapRecorder.pcapFile string ""

the PCAP file to be written

wlan.pcapRecorder.fileFormat string "pcapng"
wlan.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

wlan.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

wlan.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

wlan.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

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.pcapRecorder.displayStringTextFormat string "rec: %n pks"
wlan.mgmt.macModule string

The path to the MAC module

interfaceTable.displayAddresses bool false

whether to display IP addresses on links

mobility.subjectModule string "^"

module path which determines the subject module, the motion of which this mobility model describes, the default value is the parent module

mobility.coordinateSystemModule string ""

module path of the geographic coordinate system module

mobility.displayStringTextFormat string "p: %p\nv: %v"

format string for the mobility module's display string text

mobility.updateDisplayString bool true

enables continuous update of the subject module's position via modifying its display string

mobility.constraintAreaMinX double -inf m

min x position of the constraint area, unconstrained by default (negative infinity)

mobility.constraintAreaMinY double -inf m

min y position of the constraint area, unconstrained by default (negative infinity)

mobility.constraintAreaMinZ double -inf m

min z position of the constraint area, unconstrained by default (negative infinity)

mobility.constraintAreaMaxX double inf m

max x position of the constraint area, unconstrained by default (positive infinity)

mobility.constraintAreaMaxY double inf m

max y position of the constraint area, unconstrained by default (positive infinity)

mobility.constraintAreaMaxZ double inf m

max z position of the constraint area, unconstrained by default (positive infinity)

mobility.initialX double uniform(this.constraintAreaMinX, this.constraintAreaMaxX)
mobility.initialY double uniform(this.constraintAreaMinY, this.constraintAreaMaxY)
mobility.initialZ double nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))
mobility.initialLatitude double nan deg
mobility.initialLongitude double nan deg
mobility.initialAltitude double 0m
mobility.initialHeading double 0deg
mobility.initialElevation double 0deg
mobility.initialBank double 0deg
mobility.initFromDisplayString bool true

enables one time initialization from the subject module's display string

mobility.updateFromDisplayString bool true

enables continuous update from the subject module's display string for dragging and rotating it

Source code

module ThroughputClient
{
    parameters:
        @display("i=device/wifilaptop");
        @networkNode();
        *.interfaceTableModule = "^.interfaceTable";
        wlan.radio.antenna.mobilityModule = default("^.^.^.mobility");
    gates:
        input radioIn @directIn;

    submodules:
        cli: EtherAppClient {
            parameters:
                interface = "wlan";
                @display("p=300,100");
        }
        wlan: Ieee80211Interface {
            parameters:
                @display("p=250,200;q=queue");
                mgmt.typename = "Ieee80211MgmtStaSimplified";
                agent.typename = "";
        }
        interfaceTable: InterfaceTable {
            parameters:
                @display("p=100,100;is=s");
        }
        mobility: StationaryMobility {
            parameters:
                @display("p=100,200;is=s");
        }
    connections allowunconnected:
        wlan.radioIn <-- radioIn;
        cli.out --> wlan.upperLayerIn;
}

File: examples/wireless/throughput/Throughput.ned