PeerService

Package: inet.protocolelement.service

compound module PeerService

(no description)

Usage diagram

Used in compound modules

Name

Type

Description

MacService

compound module

(no description)

Parameters

Name

Type

Default value

Description

numDefragmenter

int

0

Properties

Name

Value

Description

display

i=block/routing

Gates

Name

Direction

Size

Description

in

input

out

output

Unassigned submodule parameters

Name

Type

Default value

Description

multiplexer.displayStringTextFormat

string

“passed %p pk (%l)”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

multiplexer.forwardServiceRegistration

bool

true

multiplexer.forwardProtocolRegistration

bool

true

defragmenter.displayStringTextFormat

string

“processed {numProcessedPackets} pk ({processedTotalLength})”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

defragmenter.deleteSelf

bool

false

defragmenter.headerPosition

string

“front”

classifier.displayStringTextFormat

string

“classified %p pk (%l)”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

classifier.reverseOrder

bool

false

classifier.classifierClass

string

Determines the output queue of packets, the parameter must be the name of a C++ class which implements the IPacketClassifierFunction interface and is registered via Register_Class

classifier.submoduleName

string

classifier.moduleType

string

Source code

module PeerService
{
    parameters:
        int numDefragmenter = default(0);
        defragmenter[*].deleteSelf = true;
        @display("i=block/routing");
    gates:
        input in;
        output out;
    submodules:
        multiplexer: PacketMultiplexer {
            @display("p=150,100");
        }
        defragmenter[numDefragmenter]: FragmentNumberHeaderBasedDefragmenter {
            @display("p=150,200,row,100");
        }
        classifier: DynamicClassifier {
            @display("p=150,300");
        }
    connections:
        in --> classifier.in;
        for i=0..numDefragmenter-1 {
            classifier.out++ --> multiplexer.in++;
        }
        multiplexer.out --> out;
}

File: src/inet/protocolelement/service/MacService.ned