Package: inet.tutorials.queueing
ExampleNetworkTutorialStep
network(no description)
Usage diagram
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.
Properties
| Name | Value | Description |
|---|---|---|
| isNetwork |
Unassigned submodule parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| source.sourceApplication.displayStringTextFormat | string | "created %p pk (%l)" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| source.sourceApplication.packetNameFormat | string | "%a-%c" |
See directives in module documentation |
| source.sourceApplication.packetRepresentation | string | "byteCount" |
Determines the chunk of the packet data |
| source.sourceApplication.packetProtocol | string | "unknown" | |
| source.sourceApplication.packetLength | int | ||
| source.sourceApplication.packetData | int | -1 | |
| source.sourceApplication.attachCreationTimeTag | bool | true | |
| source.sourceApplication.attachIdentityTag | bool | true | |
| source.sourceApplication.attachDirectionTag | bool | true | |
| source.sourceApplication.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| source.sourceApplication.initialProductionOffset | double | -1s |
Initial duration before which packets are not produced. When negative, then produce packet in initialize() |
| source.sourceApplication.productionInterval | double |
Elapsed time between subsequent packets pushed to the connected packet consumer |
|
| source.sourceApplication.scheduleForAbsoluteTime | bool | true |
When a clock is used, "relative" means that setting the clock will not affect the simulation time of the event |
| source.destinationApplication.displayStringTextFormat | string | "received %p pk (%l)" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| source.destinationApplication.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| source.destinationApplication.initialConsumptionOffset | double | 0s |
Initial duration before which packets are not consumed |
| source.destinationApplication.consumptionInterval | double | 0s |
Elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time |
| source.destinationApplication.scheduleForAbsoluteTime | bool | true |
When a clock is used, "relative" means that setting the clock will not affect the simulation time of the event |
| source.interface.queue.displayStringTextFormat | string | "contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| source.interface.queue.packetCapacity | int | -1 |
Maximum number of packets in the queue, no limit by default |
| source.interface.queue.dataCapacity | int | -1b |
Maximum total length of packets in the queue, no limit by default |
| source.interface.queue.dropperClass | string | "" |
Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class |
| source.interface.queue.comparatorClass | string | "" |
Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class |
| source.interface.queue.bufferModule | string | "" |
Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default |
| source.interface.server.displayStringTextFormat | string | "served %p pk (%l)\n%s" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| source.interface.server.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| source.interface.server.serveSchedulingPriority | int | -1 |
Specifies the FES scheduling priority for the extra event that is pulling the packet, -1 means no extra event |
| source.interface.server.processingTime | double |
Determines additional processing time per packet |
|
| source.interface.server.processingBitrate | double | inf bps |
Determines additional processing time per bit |
| cable.aDelayer.displayStringTextFormat | string | "processed %p pk (%l)" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| cable.aDelayer.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| cable.aDelayer.schedulingPriority | int | 0 | |
| cable.aDelayer.scheduleZeroDelay | bool | true | |
| cable.aDelayer.delay | double |
Specifies delay per packet |
|
| cable.aDelayer.bitrate | double | inf bps |
Determines additional delay per bit |
| cable.bDelayer.displayStringTextFormat | string | "processed %p pk (%l)" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| cable.bDelayer.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| cable.bDelayer.schedulingPriority | int | 0 | |
| cable.bDelayer.scheduleZeroDelay | bool | true | |
| cable.bDelayer.delay | double |
Specifies delay per packet |
|
| cable.bDelayer.bitrate | double | inf bps |
Determines additional delay per bit |
| destination.sourceApplication.displayStringTextFormat | string | "created %p pk (%l)" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| destination.sourceApplication.packetNameFormat | string | "%a-%c" |
See directives in module documentation |
| destination.sourceApplication.packetRepresentation | string | "byteCount" |
Determines the chunk of the packet data |
| destination.sourceApplication.packetProtocol | string | "unknown" | |
| destination.sourceApplication.packetLength | int | ||
| destination.sourceApplication.packetData | int | -1 | |
| destination.sourceApplication.attachCreationTimeTag | bool | true | |
| destination.sourceApplication.attachIdentityTag | bool | true | |
| destination.sourceApplication.attachDirectionTag | bool | true | |
| destination.sourceApplication.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| destination.sourceApplication.initialProductionOffset | double | -1s |
Initial duration before which packets are not produced. When negative, then produce packet in initialize() |
| destination.sourceApplication.productionInterval | double |
Elapsed time between subsequent packets pushed to the connected packet consumer |
|
| destination.sourceApplication.scheduleForAbsoluteTime | bool | true |
When a clock is used, "relative" means that setting the clock will not affect the simulation time of the event |
| destination.destinationApplication.displayStringTextFormat | string | "received %p pk (%l)" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| destination.destinationApplication.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| destination.destinationApplication.initialConsumptionOffset | double | 0s |
Initial duration before which packets are not consumed |
| destination.destinationApplication.consumptionInterval | double | 0s |
Elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time |
| destination.destinationApplication.scheduleForAbsoluteTime | bool | true |
When a clock is used, "relative" means that setting the clock will not affect the simulation time of the event |
| destination.interface.queue.displayStringTextFormat | string | "contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| destination.interface.queue.packetCapacity | int | -1 |
Maximum number of packets in the queue, no limit by default |
| destination.interface.queue.dataCapacity | int | -1b |
Maximum total length of packets in the queue, no limit by default |
| destination.interface.queue.dropperClass | string | "" |
Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class |
| destination.interface.queue.comparatorClass | string | "" |
Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class |
| destination.interface.queue.bufferModule | string | "" |
Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default |
| destination.interface.server.displayStringTextFormat | string | "served %p pk (%l)\n%s" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| destination.interface.server.clockModule | string | "" |
Relative path of a module that implements IClock(1,2); optional |
| destination.interface.server.serveSchedulingPriority | int | -1 |
Specifies the FES scheduling priority for the extra event that is pulling the packet, -1 means no extra event |
| destination.interface.server.processingTime | double |
Determines additional processing time per packet |
|
| destination.interface.server.processingBitrate | double | inf bps |
Determines additional processing time per bit |
Source code
network ExampleNetworkTutorialStep { submodules: source: ExampleHost { @display("p=100,100"); } cable: ExampleCable { @display("p=200,100"); } destination: ExampleHost { @display("p=300,100"); } connections: source.lowerOut --> cable.aIn; cable.aOut --> destination.lowerIn; destination.lowerOut --> cable.bIn; cable.bOut --> source.lowerIn; } //-------------------------------------------------File: tutorials/queueing/QueueingTutorial.ned