AsynchronousShaper

Package: inet.queueing.shaper

AsynchronousShaper

compound module

Implements an asynchronous shaper. The queue sorts packets based on the transmission eligibility time (~EligibilityTimeTag) attached to each packet. The gate prevents packets from being transmitted earlier than the attached transmission eligibility time.

<b>See also:</b> ~EligibilityTimeMeter, ~EligibilityTimeFilter, ~EligibilityTimeQueue, ~EligibilityTimeGate

queue : like IPacketQueue

PacketQueue: Implements a configurable packet queue, which is suitable for use in MAC protocols, traffic...

IPacketQueue: Interface for packet queue modules.

Source:
queue: <default("PacketQueue")> like IPacketQueue {
    @display("p=100,150");
} gate : like IPacketGate

IPacketGate: Interface for a packet gate.

Source:
gate: <default("")> like IPacketGate {
    @display("p=300,150");
}

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends

Name Type Description
PacketShaper compound module

Combines a packet queue and a packet gate into a packet shaper module. The queue stores the packets sorted according to its ordering and the gate decides when the first packet can be pulled from the queue.

Properties

Name Value Description
display i=block/bucket

Gates

Name Direction Size Description
in input
out output

Source code

//
// Implements an asynchronous shaper. The queue sorts packets based
// on the transmission eligibility time (~EligibilityTimeTag) attached to each
// packet. The gate prevents packets from being transmitted earlier than the attached
// transmission eligibility time.
//
// @see ~EligibilityTimeMeter, ~EligibilityTimeFilter, ~EligibilityTimeQueue, ~EligibilityTimeGate
//
module AsynchronousShaper extends PacketShaper
{
    parameters:
        queue.typename = default("EligibilityTimeQueue");
        gate.typename = default("EligibilityTimeGate");
}
File: src/inet/queueing/shaper/AsynchronousShaper.ned