Package: inet.queueing.scheduler
PriorityScheduler
simple moduleThis scheduler pulls packets from the first non-empty among its connected packet providers.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Used in compound modules
Name | Type | Description |
---|---|---|
CompoundPendingQueue | compound module | (no description) |
DiffservQueue | compound module |
This is an example queue, that can be used in interfaces of DS core and edge nodes to support the AFxy (RFC 2597) and EF (RFC 3246) PHBs. |
EthernetPreemptingMacLayer | compound module | (no description) |
Extends
Name | Type | Description |
---|---|---|
PacketSchedulerBase | simple module |
This is a base module for various packet scheduler modules. Derived modules must implement a single packet scheduler function which determines the index of the input gate for the pulled packet. |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
displayStringTextFormat | string | "scheduled %p pk (%l)" |
determines the text that is written on top of the submodule |
reverseOrder | bool | false |
Properties
Name | Value | Description |
---|---|---|
display | i=block/join | |
class | PriorityScheduler |
Gates
Name | Direction | Size | Description |
---|---|---|---|
in [ ] | input | ||
out | output |
Signals
Name | Type | Unit |
---|---|---|
packetPulled | inet::Packet |
Statistics
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
packetLengths | packet lengths | packetLength(packetPulled) | sum, histogram, vector | b | none |
dataRate | data rate | throughput(packetPulled) | vector | bps | linear |
packets | packets | packetPulled | count | pk |
Direct method calls (observed)
call to | function | info |
---|---|---|
EthernetCsmaMac | inet::EthernetCsmaMac::handleCanPullPacketChanged | handleCanPullPacketChanged |
EthernetMac | inet::EthernetMac::handleCanPullPacketChanged | handleCanPullPacketChanged |
EthernetFcsChecker | inet::EthernetFcsChecker::canPullSomePacket | canPullSomePacket |
Ppp | inet::Ppp::handleCanPullPacketChanged | handleCanPullPacketChanged |
PacketEmitter | inet::PacketEmitter::pullPacketEnd | pullPacketEnd |
PacketEmitter | inet::PacketEmitter::pullPacketStart | pullPacketStart |
PeriodicGate | inet::queueing::PeriodicGate::pullPacket | pullPacket |
DropTailQueue | inet::queueing::PacketQueue::pullPacket | pullPacket |
PacketQueue | inet::queueing::PacketQueue::pullPacket | pullPacket |
WrrScheduler | inet::queueing::WrrScheduler::pullPacket | pullPacket |
InstantServer | inet::queueing::InstantServer::handleCanPullPacketChanged | handleCanPullPacketChanged |
PreemptingServer | inet::queueing::PreemptingServer::handleCanPullPacketChanged | handleCanPullPacketChanged |
ActivePacketSink | inet::queueing::ActivePacketSink::handleCanPullPacketChanged | handleCanPullPacketChanged |
Called methods (observed)
function | info | call from |
---|---|---|
inet::queueing::PriorityScheduler::handleCanPullPacketChanged | handleCanPullPacketChanged | PacketEmitter, PeriodicGate, DropTailQueue, PacketQueue, WrrScheduler |
inet::queueing::PriorityScheduler::pullPacket | pullPacket | inet.examples.diffserv.onedomain.DSQueue1, EthernetQosQueue, Ieee8021qTimeAwareShaper, DiffservQueue, GatingPriorityQueue, PriorityQueue, ActivePacketSink, inet.tutorials.queueing.ExampleCompoundPriorityQueue |
inet::queueing::PriorityScheduler::pullPacketEnd | pullPacketEnd | PreemptingServer |
inet::queueing::PriorityScheduler::pullPacketStart | pullPacketStart | PreemptingServer |
Pull in messages (observed)
Pulled out messages (observed)
Source code
// // This scheduler pulls packets from the first non-empty among its connected // packet providers. // simple PriorityScheduler extends PacketSchedulerBase like IPacketScheduler { parameters: @class(PriorityScheduler); }File: src/inet/queueing/scheduler/PriorityScheduler.ned