IPacketServer

Package: inet.queueing.contract

module interface IPacketServer

Interface for packet server modules. A packet server is an active module which has one active input and one active output. Packets are pulled from the connected input module and pushed into the connected output module with an optional delay but without reordering.

Inheritance diagram

Implemented by

Name

Type

Description

InstantServer

simple module

Repeatedly pulls packets from the connected packet provider and pushes the packet into the connected packet consumer without delay.

OmittedPacketServer

compound module

Implements the given interface and can be used as an optional module that removes itself from the module hierarchy during initialization.

PacketServer

simple module

Repeatedly pulls packets from the connected packet provider and after a processing delay, it pushes the packet into the connected packet consumer. The processing delay is processingTime + packetLength / processingBitrate.

PreemptingServer

simple module

(no description)

TokenBasedServer

simple module

Repeatedly pulls packets from the connected packet provider and it pushes them into the connected packet consumer. The packets are processed in zero simulation time, and the process continues until the available number of tokens is not sufficient anymore.

Extends

Name

Type

Description

IActivePacketSink

module interface

Interface for active packet sink modules. An active packet sink, also called a collector, has one input that must be connected to a passive packet source module. The active packet sink is expected to pull packets from the connected passive packet source over time.

IActivePacketSource

module interface

Interface for active packet source modules. An active packet source, also called a producer, has one output that must be connected to a passive packet sink module. The active packet source is expected to push packets into the connected passive packet sink over time.

Properties

Name

Value

Description

display

i=block/server

omittedTypename

OmittedPacketServer

Source code

//
// Interface for packet server modules. A packet
// server is an active module which has one active input and one active output.
// Packets are pulled from the connected input module and pushed into the
// connected output module with an optional delay but without reordering.
//
moduleinterface IPacketServer extends IActivePacketSink, IActivePacketSource
{
    parameters:
        @omittedTypename(OmittedPacketServer);
        @display("i=block/server");
}

File: src/inet/queueing/contract/IPacketServer.ned