Package: inet.tutorials.queueing
TelnetServerTraffic
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 |
|---|---|---|
| TelnetTutorialStep | network | (no description) |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=block/app |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| in | input | ||
| out | output |
Unassigned submodule parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| cloner.displayStringTextFormat | string | "processed %p pk (%l)" |
determines the text that is written on top of the submodule |
| multiplexer.displayStringTextFormat | string | "passed %p pk (%l)" |
determines the text that is written on top of the submodule |
| multiplexer.forwardServiceRegistration | bool | true | |
| multiplexer.forwardProtocolRegistration | bool | true | |
| enterTokenGenerator.displayStringTextFormat | string | "processed %p pk (%l)\ngenerated %t tk\nto %s" |
determines the text that is written on top of the submodule |
| enterTokenGenerator.storageModule | string | "^.responseServer" |
module path of the token storage where the tokens are generated via C++ method call |
| enterTokenGenerator.numTokensPerPacket | double | 1 |
number of tokens per consumed packet |
| enterTokenGenerator.numTokensPerBit | double | 0 |
number of tokens per consumed bit |
Source code
module TelnetServerTraffic { parameters: @display("i=block/app"); gates: input in; output out; submodules: cloner: PacketCloner { parameters: @display("p=300,225"); } responseProvider: <default("PassivePacketSource")> like IPassivePacketSource { parameters: @display("p=100,100"); } responseServer: <default("TokenBasedServer")> like IPacketServer { parameters: @display("p=100,225"); } multiplexer: PacketMultiplexer { parameters: @display("p=200,350"); } classifier: <default("PacketClassifier")> like IPacketClassifier { parameters: classifierClass = default("inet::queueing::PacketCharacterOrEnterClassifier"); @display("p=500,225"); } characterConsumer: <default("PassivePacketSink")> like IPassivePacketSink { parameters: @display("p=400,350"); } enterTokenGenerator: PacketBasedTokenGenerator { parameters: storageModule = default("^.responseServer"); @display("p=600,350"); } connections: in --> { @display("m=s"); } --> cloner.in; cloner.out++ --> classifier.in; cloner.out++ --> multiplexer.in++; responseProvider.out --> responseServer.in; responseServer.out --> multiplexer.in++; classifier.out++ --> characterConsumer.in; classifier.out++ --> enterTokenGenerator.in; multiplexer.out --> { @display("m=s"); } --> out; } //-------------------------------------------------File: tutorials/queueing/QueueingTutorial.ned